. /** * Workshop development toolkit * * Provides some tools that may be useful during the workshop development * and debugging. This is not intended for productive enviroments. * * @package mod-workshop * @copyright 2009 David Mudrak * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ require_once(dirname(dirname(dirname(__FILE__))).'/config.php'); require_once(dirname(__FILE__).'/lib.php'); require_once(dirname(__FILE__).'/locallib.php'); $cmid = required_param('cmid', PARAM_INT); // course module id $tool = optional_param('tool', 'menu', PARAM_ALPHA); // toolkit action //debugging('', DEBUG_DEVELOPER) || die('For development purposes only'); //has_capability('moodle/site:config', get_system_context()) || die('You are not allowed to run this'); $cm = get_coursemodule_from_id('workshop', $cmid, 0, false, MUST_EXIST); $course = $DB->get_record('course', array('id' => $cm->course), '*', MUST_EXIST); $workshop = $DB->get_record('workshop', array('id' => $cm->instance), '*', MUST_EXIST); $workshop = new workshop($workshop, $cm, $course); // wrap the record with a full API require_login($course, false, $cm); $PAGE->set_url('mod/workshop/develtools.php', array('cmid' => $cm->id)); $PAGE->set_title($workshop->name); $PAGE->set_heading($course->fullname); $PAGE->set_button($OUTPUT->update_module_button($cm->id, 'workshop')); $PAGE->navbar->add('Development tools'); if ($tool == 'mksubmissions') { $authors = $workshop->get_potential_authors(false); $authorswithsubmission = $workshop->get_potential_authors(true); $authors = array_diff_key($authors, $authorswithsubmission); echo $OUTPUT->header(); $c = 0; // counter foreach ($authors as $authorid => $author) { $timenow = time() - rand(0, 60 * 60 * 24 * 7); // submitted sometimes during last week $submission = new stdClass(); $submission->workshopid = $workshop->id; $submission->example = 0; $submission->authorid = $authorid; $submission->timecreated = $timenow; $submission->timemodified = $timenow; $submission->title = $author->firstname . '\'s submission'; $submission->content = "

Pellentesque habitant morbi tristique " . "senectus et netus et malesuada fames ac " . "turpis egestas. Sed posuere volutpat nunc " . "semper ultricies! Aenean elementum metus in " . "lorem volutpat eu volutpat neque vulputate? " . "Pellentesque sit amet sem leo. In hac " . "habitasse platea dictumst. Proin quis " . "accumsan elit. Nulla quis libero ac nunc " . "elementum commodo at et sem. Vestibulum " . "eget euismod felis. Lorem ipsum dolor sit " . "amet, consectetur adipiscing elit. Aliquam " . "id tellus vel velit aliquet volutpat at " . "quis arcu. Nulla laoreet tincidunt sodales. " . "Suspendisse potenti. Curabitur sagittis " . "arcu nec erat aliquet imperdiet. Aenean at " . "mi ut est molestie posuere a vitae mauris.

"; $submission->contentformat = FORMAT_HTML; $submission->contenttrust = 0; $submission->id = $DB->insert_record('workshop_submissions', $submission); echo "
Added submission by " . fullname($author) . "
\n"; $c++; } if ($c == 0) { echo "
No submission added
\n"; } echo $OUTPUT->continue_button($PAGE->url->out()); echo $OUTPUT->footer(); exit; } if ($tool == 'mkassessments') { $sql = 'UPDATE {workshop_assessments} SET grade = 100*RANDOM() WHERE submissionid IN (SELECT id FROM {workshop_submissions} WHERE workshopid = :workshopid)'; $params['workshopid'] = $workshop->id; $DB->execute($sql, $params); echo $OUTPUT->header(); echo $OUTPUT->heading('Submissions graded'); echo $OUTPUT->continue_button($PAGE->url->out()); echo $OUTPUT->footer(); exit; } // no known $tool selected echo $OUTPUT->header(); $currenttab = 'develtools'; include(dirname(__FILE__) . '/tabs.php'); echo $OUTPUT->heading('Workshop development tools', 1); echo ''; echo $OUTPUT->footer();