67a87e7d |
1 | <?php |
2 | |
3 | require_once(dirname(dirname(__FILE__)) . '/config.php'); |
4 | require_once($CFG->libdir . '/portfoliolib.php'); |
5 | |
6 | $config = optional_param('config', 0, PARAM_INT); |
7 | $hide = optional_param('hide', 0, PARAM_INT); |
8 | |
9 | $course = optional_param('course', SITEID, PARAM_INT); |
10 | |
11 | if (! $course = $DB->get_record("course", array("id"=>$course))) { |
12 | print_error('invalidcourseid'); |
13 | } |
14 | |
15 | $user = $USER; |
16 | $fullname = fullname($user); |
17 | $strportfolios = get_string('portfolios', 'portfolio'); |
18 | $configstr = get_string('manageyourportfolios', 'portfolio'); |
19 | $namestr = get_string('name'); |
20 | $pluginstr = get_string('plugin', 'portfolio'); |
21 | $baseurl = $CFG->wwwroot . '/user/portfolio.php'; |
22 | |
23 | $display = true; // set this to false in the conditions to stop processing |
24 | |
25 | require_login($course, false); |
26 | |
27 | $navlinks[] = array('name' => $fullname, 'link' => $CFG->wwwroot . '/user/view.php?id=' . $user->id, 'type' => 'misc'); |
28 | $navlinks[] = array('name' => $strportfolios, 'link' => null, 'type' => 'misc'); |
29 | |
30 | $navigation = build_navigation($navlinks); |
31 | |
32 | print_header("$course->fullname: $fullname: $strportfolios", $course->fullname, |
33 | $navigation, "", "", true, " ", navmenu($course)); |
34 | |
35 | $currenttab = 'portfolios'; |
36 | $showroles = 1; |
37 | include('tabs.php'); |
38 | |
39 | if (!empty($config)) { |
40 | $instance = portfolio_instance($config); |
41 | $mform = new portfolio_user_form('', array('instance' => $instance, 'userid' => $user->id)); |
42 | if ($mform->is_cancelled()){ |
43 | redirect($baseurl); |
44 | exit; |
45 | } else if ($fromform = $mform->get_data()){ |
46 | if (!confirm_sesskey()) { |
47 | print_error('confirmsesskeybad', '', $baseurl); |
48 | } |
49 | //this branch is where you process validated data. |
50 | $success = $instance->set_user_config($fromform, $USER->id); |
51 | //$success = $success && $instance->save(); |
52 | if ($success) { |
53 | redirect($baseurl, get_string('instancesaved', 'portfolio'), 3); |
54 | } else { |
55 | print_error('instancenotsaved', 'portfolio', $baseurl); |
56 | } |
57 | exit; |
58 | } else { |
59 | print_heading(get_string('configplugin', 'portfolio')); |
60 | print_simple_box_start(); |
61 | $mform->display(); |
62 | print_simple_box_end(); |
63 | $display = false; |
64 | } |
65 | |
66 | } else if (!empty($hide)) { |
67 | $instance = portfolio_instance($hide); |
68 | $instance->set_user_config(array('visible' => !$instance->get_user_config('visible', $USER->id)), $USER->id); |
69 | } |
70 | |
71 | if ($display) { |
72 | print_heading($configstr); |
73 | print_simple_box_start(); |
74 | |
75 | if (!$instances = portfolio_instances(true, false)) { |
76 | print_error('noinstances', 'portfolio', $CFG->wwwroot . '/user/view.php'); |
77 | } |
78 | |
79 | $table = new StdClass; |
80 | $table->head = array($namestr, $pluginstr, ''); |
81 | $table->data = array(); |
82 | |
83 | foreach ($instances as $i) { |
84 | $visible = $i->get_user_config('visible', $USER->id); |
85 | $table->data[] = array($i->get('name'), $i->get('plugin'), |
86 | ($i->has_user_config()) |
87 | ? '<a href="' . $baseurl . '?config=' . $i->get('id') . '"><img src="' . $CFG->pixpath . '/t/edit.gif" alt="' . get_string('configure') . '" /></a>' : '') . |
88 | ' <a href="' . $baseurl . '?hide=' . $i->get('id') . '"><img src="' . $CFG->pixpath . '/t/' . (($visible) ? 'hide' : 'show') . '.gif" alt="' . get_string($visible ? 'hide' : 'show') . '" /></a><br />' |
89 | ); |
90 | } |
91 | |
92 | print_table($table); |
93 | } |
94 | print_footer(); |
95 | |
96 | ?> |