[ Index ]

PHP Cross Reference of Unnamed Project

title

Body

[close]

/mod/quiz/yui/build/moodle-mod_quiz-questionchooser/ -> moodle-mod_quiz-questionchooser-debug.js (source)

   1  YUI.add('moodle-mod_quiz-questionchooser', function (Y, NAME) {
   2  
   3  var CSS = {
   4      ADDNEWQUESTIONBUTTONS: 'ul.menu a.addquestion',
   5      CREATENEWQUESTION: 'div.createnewquestion',
   6      CHOOSERDIALOGUE: 'div.chooserdialogue',
   7      CHOOSERHEADER: 'div.choosertitle'
   8  };
   9  
  10  /**
  11   * The questionchooser class  is responsible for instantiating and displaying the question chooser
  12   * when viewing a quiz in editing mode.
  13   *
  14   * @class questionchooser
  15   * @constructor
  16   * @protected
  17   * @extends M.core.chooserdialogue
  18   */
  19  var QUESTIONCHOOSER = function() {
  20      QUESTIONCHOOSER.superclass.constructor.apply(this, arguments);
  21  };
  22  
  23  Y.extend(QUESTIONCHOOSER, M.core.chooserdialogue, {
  24      initializer: function() {
  25          Y.one('body').delegate('click', this.display_dialogue, CSS.ADDNEWQUESTIONBUTTONS, this);
  26      },
  27  
  28      display_dialogue: function(e) {
  29          e.preventDefault();
  30          var dialogue = Y.one(CSS.CREATENEWQUESTION + ' ' + CSS.CHOOSERDIALOGUE),
  31              header = Y.one(CSS.CREATENEWQUESTION + ' ' + CSS.CHOOSERHEADER);
  32  
  33          if (this.container === null) {
  34              // Setup the dialogue, and then prepare the chooser if it's not already been set up.
  35              this.setup_chooser_dialogue(dialogue, header, {});
  36              this.prepare_chooser();
  37          }
  38  
  39          // Update all of the hidden fields within the questionbank form.
  40          var parameters = Y.QueryString.parse(e.currentTarget.get('search').substring(1));
  41          var form = this.container.one('form');
  42          this.parameters_to_hidden_input(parameters, form, 'returnurl');
  43          this.parameters_to_hidden_input(parameters, form, 'cmid');
  44          this.parameters_to_hidden_input(parameters, form, 'category');
  45          this.parameters_to_hidden_input(parameters, form, 'addonpage');
  46          this.parameters_to_hidden_input(parameters, form, 'appendqnumstring');
  47  
  48          // Display the chooser dialogue.
  49          this.display_chooser(e);
  50      },
  51  
  52      parameters_to_hidden_input: function(parameters, form, name) {
  53          var value;
  54          if (parameters.hasOwnProperty(name)) {
  55              value = parameters[name];
  56          } else {
  57              value = '';
  58          }
  59          var input = form.one('input[name=' + name + ']');
  60          if (!input) {
  61              input = form.appendChild('<input type="hidden">');
  62              input.set('name', name);
  63          }
  64          input.set('value', value);
  65      }
  66  }, {
  67      NAME: 'mod_quiz-questionchooser'
  68  });
  69  
  70  M.mod_quiz = M.mod_quiz || {};
  71  M.mod_quiz.init_questionchooser = function() {
  72      M.mod_quiz.question_chooser = new QUESTIONCHOOSER({});
  73      return M.mod_quiz.question_chooser;
  74  };
  75  
  76  
  77  }, '@VERSION@', {"requires": ["moodle-core-chooserdialogue", "moodle-mod_quiz-util", "querystring-parse"]});


Generated: Thu Aug 11 10:00:09 2016 Cross-referenced by PHPXref 0.7.1