mod-quiz MDL-16706 Eliminated inline scripts to use PAGE methods
authorsamhemelryk <samhemelryk>
Thu, 2 Jul 2009 06:46:47 +0000 (06:46 +0000)
committersamhemelryk <samhemelryk>
Thu, 2 Jul 2009 06:46:47 +0000 (06:46 +0000)
mod/quiz/accessrules.php
mod/quiz/quiz.js

index 3a548d6c57e61dd38ba4f1617269c5083f5bcf6a..9f31e62d80126b01ca778fd873f00eca9d985054 100644 (file)
@@ -691,7 +691,7 @@ class securewindow_access_rule extends quiz_access_rule_base {
      * a JavaScript altert before the button submits.
      */
     public function print_start_attempt_button($buttontext, $strconfirmstartattempt) {
-        global $CFG, $SESSION;
+        global $CFG, $SESSION, $PAGE;
 
         $attempturl = $this->_quizobj->start_attempt_url() . '?cmid=' . $this->_quizobj->get_cmid() .
                 '&sesskey=' . sesskey();
@@ -709,9 +709,8 @@ class securewindow_access_rule extends quiz_access_rule_base {
         echo "window.open('$attempturl', '$window', '$this->windowoptions');", '" />';
 
     /// JavaScript to reveal the button.
-        echo '<script type="text/javascript">' . "\n";
-        echo "document.getElementById('quizstartbutton').style.cssText = '';\n";
-        echo "</script>\n";
+        echo $PAGE->requires->js('mod/quiz/quiz.js')->asap();
+        echo $PAGE->requires->js_function_call('reveal_start_button')->asap();
 
     /// A noscript tag to explains that this quiz only works with JavaScript enabled.
         echo '<noscript>';
index 5d7b3f8883d3aa2295cae337a34c06961052f85b..97cf4eeb68b9564375378bb62700865e448a553d 100644 (file)
@@ -220,4 +220,8 @@ quiz_secure_window = {
             }
         }
     }
-};
\ No newline at end of file
+};
+
+function reveal_start_button() {
+    document.getElementById('quizstartbutton').style.cssText = '';
+}
\ No newline at end of file