]> git.mjollnir.org Git - moodle.git/commitdiff
ajaxlib MDL-19077 required_js_code::now, for those cases when you really want inline...
authortjhunt <tjhunt>
Thu, 23 Jul 2009 05:55:03 +0000 (05:55 +0000)
committertjhunt <tjhunt>
Thu, 23 Jul 2009 05:55:03 +0000 (05:55 +0000)
Both quiz and lesson need this.

lib/ajax/ajaxlib.php

index 2d6be33b3afeb550041984bbe64f9b2eadd2dac1..6e85b521fcc2242fabe65d8f4ada0a30c547caf7 100644 (file)
@@ -889,17 +889,28 @@ abstract class required_js_code extends requirement_base {
      *     echo $PAGE->requires->js(...)->asap();
      * </pre>
      *
-     * @return string The HTML required to include this JavaScript file. The caller
+     * @return string The HTML for the script tag. The caller
      * is responsible for outputting this HTML promptly.
      */
     public function asap() {
-        if ($this->is_done()) {
-            return;
-        }
-        if (!$this->manager->is_head_done()) {
+        if ($this->manager->is_head_done()) {
+            return $this->now();
+        } else {
             $this->in_head();
             return '';
         }
+    }
+
+    /**
+     * Return the required JavaScript immediately, so it can be included in some
+     * HTML that is being built.
+     * @return string The HTML for the script tag. The caller
+     * is responsible for making sure it is output.
+     */
+    public function now() {
+        if ($this->is_done()) {
+            return '';
+        }
         $js = $this->get_js_code();
         $output = ajax_generate_script_tag($js);
         $this->mark_done();