Index: moodle/mod/lamslesson/db/install.xml =================================================================== diff -u -rde0123e92410e972ef17ff6f4c252cfa3fc2cd85 -r80acd159361b65ce02deaae0f5d232f6c3d31f3f --- moodle/mod/lamslesson/db/install.xml (.../install.xml) (revision de0123e92410e972ef17ff6f4c252cfa3fc2cd85) +++ moodle/mod/lamslesson/db/install.xml (.../install.xml) (revision 80acd159361b65ce02deaae0f5d232f6c3d31f3f) @@ -15,7 +15,8 @@ - + + Index: moodle/mod/lamslesson/lang/en/lamslesson.php =================================================================== diff -u -rde0123e92410e972ef17ff6f4c252cfa3fc2cd85 -r80acd159361b65ce02deaae0f5d232f6c3d31f3f --- moodle/mod/lamslesson/lang/en/lamslesson.php (.../lamslesson.php) (revision de0123e92410e972ef17ff6f4c252cfa3fc2cd85) +++ moodle/mod/lamslesson/lang/en/lamslesson.php (.../lamslesson.php) (revision 80acd159361b65ce02deaae0f5d232f6c3d31f3f) @@ -40,6 +40,7 @@ $string['pluginadministration'] = 'LAMS Lesson administration'; $string['pluginname'] = 'LAMS Lesson'; $string['selectsequence'] = 'Select sequence'; +$string['displaydesign'] = 'Display image design?'; $string['availablesequences'] = 'Sequences'; $string['openauthor'] = 'Author new LAMS lessons'; Index: moodle/mod/lamslesson/lib.php =================================================================== diff -u -r4b0e8db9f2b4f097606ba7dda5ea0c6f61094f45 -r80acd159361b65ce02deaae0f5d232f6c3d31f3f --- moodle/mod/lamslesson/lib.php (.../lib.php) (revision 4b0e8db9f2b4f097606ba7dda5ea0c6f61094f45) +++ moodle/mod/lamslesson/lib.php (.../lib.php) (revision 80acd159361b65ce02deaae0f5d232f6c3d31f3f) @@ -58,6 +58,7 @@ define('LAMSLESSON_PARAM_PROGRESS_METHOD', 'studentProgress'); define('LAMSLESSON_PARAM_CUSTOM_CSV', 'customCSV'); define('LAMSLESSON_LD_SERVICE', '/services/xml/LearningDesignRepository'); +define('LAMSLESSON_LD_SERVICE_SVG', '/services/LearningDesignSVG'); define('LAMSLESSON_LESSON_MANAGER', '/services/xml/LessonManager'); define('LAMSLESSON_POPUP_OPTIONS', 'location=0,toolbar=0,menubar=0,statusbar=0,width=996,height=700,resizable'); define('LAMSLESSON_OUTPUT_METHOD', 'toolOutputsUser'); @@ -67,8 +68,6 @@ * global as this file can be included inside a function scope. However, using the global variables * at the module level is not a recommended. */ -//global $NEWMODULE_GLOBAL_VARIABLE; -//$NEWMODULE_QUESTION_OF = array('Life', 'Universe', 'Everything'); /** * Given an object containing all the necessary data, @@ -114,6 +113,11 @@ lamslesson_add_lesson($lamslesson); } + // if the displaydesign setting is unchecked with make sure we do that + if (isset($originallamslesson->displaydesign) && !isset($lamslesson->displaydesign)) { + $lamslesson->displaydesign = 0; + } + return $DB->update_record('lamslesson', $lamslesson); } @@ -258,7 +262,35 @@ } + /** + * Get design images + * + * + */ +function lamslesson_get_design_image($username,$courseid,$coursename,$coursecreatedate,$country,$lang,$ldid,$format) { + global $CFG,$USER; + // append month/year to course name + $coursename = $coursename.' '.date('n/Y', $coursecreatedate); + + // generate hash + $datetime = date('F d,Y g:i a'); + $datetime_encoded = urlencode($datetime); + $rawstring = trim($datetime).trim($username).trim($CFG->lamslesson_serverid).trim($CFG->lamslesson_serverkey); + $hashvalue = sha1(strtolower($rawstring)); + + + // Put together REST URL + $request = "$CFG->lamslesson_serverurl".LAMSLESSON_LD_SERVICE_SVG."?serverId=" . $CFG->lamslesson_serverid . "&datetime=" . $datetime_encoded . "&hashValue=" . $hashvalue . "&username=" . $username . "&courseId=" . $courseid . "&courseName=" . urlencode($coursename) . "&mode=2&country=" . $country . "&lang=" . $lang . "&ldId=" . $ldid . "&svgFormat=" . $format; + + return $request; +# $image_url = @file_get_contents($request); +# return $image_url; + +} + + +/** * Get sequences(learning designs) for the user in lamslesson using the REST interface * * @param string $username The username of the user. Set this to "" if you would just like to get sequences for the currently logged in user. @@ -385,7 +417,7 @@ $form->lesson_id = lamslesson_get_lesson( $USER->username, $form->sequence_id, $form->course, $form->name, $form->intro, 'start', - $locale['country'], $locale['lang'], $form->customCSV + $locale['country'], $locale['lang'], $form->customCSV, $form->displaydesign ); if (!isset($form->lesson_id) || $form->lesson_id <= 0) { @@ -489,7 +521,7 @@ * @param string $lang The Language's ISO code * @return int lesson id */ -function lamslesson_get_lesson($username,$ldid,$courseid,$title,$desc,$method,$country,$lang,$customcsv='') { +function lamslesson_get_lesson($username,$ldid,$courseid,$title,$desc,$method,$country,$lang,$customcsv='',$displaydesign) { global $CFG, $USER; if (!isset($CFG->lamslesson_serverid, $CFG->lamslesson_serverkey) || $CFG->lamslesson_serverid == "") { Index: moodle/mod/lamslesson/mod_form.php =================================================================== diff -u -ra733c53bd59dbf3668ce1cd71489b1cced6b3e55 -r80acd159361b65ce02deaae0f5d232f6c3d31f3f --- moodle/mod/lamslesson/mod_form.php (.../mod_form.php) (revision a733c53bd59dbf3668ce1cd71489b1cced6b3e55) +++ moodle/mod/lamslesson/mod_form.php (.../mod_form.php) (revision 80acd159361b65ce02deaae0f5d232f6c3d31f3f) @@ -141,7 +141,8 @@ XXX; } - + +// $mform->addElement('',''); $mform->addElement('hidden', 'sequence_id'); $mform->setType('sequence_id', PARAM_INT); @@ -210,7 +211,8 @@ $mform->addElement('header', 'selectsequence', get_string('selectsequence', 'lamslesson')); $mform->addElement('static', 'sequencemessage', '', $html); - + $mform->addElement('checkbox', 'displaydesign', get_string('displaydesign', 'lamslesson')); +// $mform->setAdvanced('displaydesign'); //------------------------------------------------------------------------------- $this->standard_grading_coursemodule_elements(); Index: moodle/mod/lamslesson/styles.css =================================================================== diff -u -rc04ae82310a4ce21cfd1988bf7362cebf6779f5b -r80acd159361b65ce02deaae0f5d232f6c3d31f3f --- moodle/mod/lamslesson/styles.css (.../styles.css) (revision c04ae82310a4ce21cfd1988bf7362cebf6779f5b) +++ moodle/mod/lamslesson/styles.css (.../styles.css) (revision 80acd159361b65ce02deaae0f5d232f6c3d31f3f) @@ -1,6 +1,7 @@ /** General Styles **/ .path-mod-lamslesson .smalltext {text-align:right;font-size: 0.75em;} .path-mod-lamslesson .centerlink {text-align:center;padding-top: 15px; padding-bottom:5px;} +.path-mod-lamslesson .centerimage { display: block; margin-left: auto; margin-right: auto; } .path-mod-lamslesson .progress-header {text-align:center;font-weight: bold;padding-top: 5px; padding-bottom:5px;} .path-mod-lamslesson .super {position:relative;bottom:0.5em;color:red;font-size:0.8em;} .path-mod-lamslesson .note {border:solid 1px #DEDEDE;background:#FFFFCC url([[pix:t/stop]]) 8px 16px no-repeat;color:#222222;padding:10px;text-align:center;} Index: moodle/mod/lamslesson/view.php =================================================================== diff -u -r4b0e8db9f2b4f097606ba7dda5ea0c6f61094f45 -r80acd159361b65ce02deaae0f5d232f6c3d31f3f --- moodle/mod/lamslesson/view.php (.../view.php) (revision 4b0e8db9f2b4f097606ba7dda5ea0c6f61094f45) +++ moodle/mod/lamslesson/view.php (.../view.php) (revision 80acd159361b65ce02deaae0f5d232f6c3d31f3f) @@ -66,15 +66,12 @@ // Log the lamslesson view. add_to_log($course->id, "lamslesson", "view lamslesson", "view.php?id=$cm->id", "$lamslesson->id", $cm->id); -// Get raw data - -//$lessons = $DB->get_records('lamslesson', 'id', $cm->instance); - - // Check capabilities $canparticipate = has_capability('mod/lamslesson:participate', $context); + + // Output starts here echo $OUTPUT->header(); @@ -85,6 +82,14 @@ echo format_module_intro('lamslesson', $lamslesson, $cm->id); echo '

'; echo '
'; + +if ($lamslesson->displaydesign) { + // Get design image + // For now we always will get this as PNG rather than SVG + $design_image = lamslesson_get_design_image($USER->username,$course->id,$course->shortname,$COURSE->timecreated,"au","en",$lamslesson->sequence_id,"2"); + echo '
'; +} + echo '
' . get_string('lastmodified', 'lamslesson') . ": " . userdate($lamslesson->timemodified) .'
'; echo $OUTPUT->box_end(); @@ -104,8 +109,6 @@ echo $OUTPUT->action_link($monitorurl, get_string('openmonitor', 'lamslesson'), new popup_action('click', $monitorurl, '', array('height' => 600, 'width' => 996))); echo ''; echo ''; - - } echo $OUTPUT->box_end();