123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128 |
- <?php
- // This file is part of Moodle - http://moodle.org/
- //
- // Moodle is free software: you can redistribute it and/or modify
- // it under the terms of the GNU General Public License as published by
- // the Free Software Foundation, either version 3 of the License, or
- // (at your option) any later version.
- //
- // Moodle is distributed in the hope that it will be useful,
- // but WITHOUT ANY WARRANTY; without even the implied warranty of
- // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- // GNU General Public License for more details.
- //
- // You should have received a copy of the GNU General Public License
- // along with Moodle. If not, see <http://www.gnu.org/licenses/>.
- /**
- * This file is part of the User section Moodle
- *
- * @copyright 1999 Martin Dougiamas http://dougiamas.com
- * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
- * @package core_user
- */
- require_once(__DIR__ . '/../config.php');
- if (empty($CFG->enableportfolios)) {
- print_error('disabled', 'portfolio');
- }
- require_once($CFG->libdir . '/portfoliolib.php');
- require_once($CFG->libdir . '/portfolio/forms.php');
- $config = optional_param('config', 0, PARAM_INT);
- $hide = optional_param('hide', 0, PARAM_INT);
- $courseid = optional_param('courseid', SITEID, PARAM_INT);
- $url = new moodle_url('/user/portfolio.php', array('courseid' => $courseid));
- if ($config !== 0) {
- $url->param('config', $config);
- }
- if (! $course = $DB->get_record("course", array("id" => $courseid))) {
- print_error('invalidcourseid');
- }
- $user = $USER;
- $fullname = fullname($user);
- $strportfolios = get_string('portfolios', 'portfolio');
- $configstr = get_string('manageyourportfolios', 'portfolio');
- $namestr = get_string('name');
- $pluginstr = get_string('plugin', 'portfolio');
- $baseurl = $CFG->wwwroot . '/user/portfolio.php';
- $introstr = get_string('intro', 'portfolio');
- $showhide = get_string('showhide', 'portfolio');
- $display = true; // Set this to false in the conditions to stop processing.
- require_login($course, false);
- $PAGE->set_url($url);
- $PAGE->set_context(context_user::instance($user->id));
- $PAGE->set_title($configstr);
- $PAGE->set_heading($fullname);
- $PAGE->set_pagelayout('admin');
- echo $OUTPUT->header();
- $showroles = 1;
- if (!empty($config)) {
- navigation_node::override_active_url(new moodle_url('/user/portfolio.php', array('courseid' => $courseid)));
- $instance = portfolio_instance($config);
- $mform = new portfolio_user_form('', array('instance' => $instance, 'userid' => $user->id));
- if ($mform->is_cancelled()) {
- redirect($baseurl);
- exit;
- } else if ($fromform = $mform->get_data()) {
- if (!confirm_sesskey()) {
- print_error('confirmsesskeybad', '', $baseurl);
- }
- // This branch is where you process validated data.
- $instance->set_user_config($fromform, $USER->id);
- core_plugin_manager::reset_caches();
- redirect($baseurl, get_string('instancesaved', 'portfolio'), 3);
- exit;
- } else {
- echo $OUTPUT->heading(get_string('configplugin', 'portfolio'));
- echo $OUTPUT->box_start();
- $mform->display();
- echo $OUTPUT->box_end();
- $display = false;
- }
- } else if (!empty($hide)) {
- $instance = portfolio_instance($hide);
- $instance->set_user_config(array('visible' => !$instance->get_user_config('visible', $USER->id)), $USER->id);
- core_plugin_manager::reset_caches();
- }
- if ($display) {
- echo $OUTPUT->heading($configstr);
- echo $OUTPUT->box_start();
- echo html_writer::tag('p', $introstr);
- if (!$instances = portfolio_instances(true, false)) {
- print_error('noinstances', 'portfolio', $CFG->wwwroot . '/user/view.php');
- }
- $table = new html_table();
- $table->head = array($namestr, $pluginstr, $showhide);
- $table->data = array();
- foreach ($instances as $i) {
- $visible = $i->get_user_config('visible', $USER->id);
- $table->data[] = array($i->get('name'), $i->get('plugin'),
- ($i->has_user_config()
- ? '<a href="' . $baseurl . '?config=' . $i->get('id') . '"><img src="' . $OUTPUT->pix_url('t/edit') . '" alt="' . get_string('configure') . '" /></a>' : '') .
- ' <a href="' . $baseurl . '?hide=' . $i->get('id') . '"><img src="' . $OUTPUT->pix_url('t/' . (($visible) ? 'hide' : 'show')) . '" alt="' . get_string($visible ? 'hide' : 'show') . '" /></a><br />'
- );
- }
- echo html_writer::table($table);
- echo $OUTPUT->box_end();
- }
- echo $OUTPUT->footer();
|