]> git.mjollnir.org Git - moodle.git/commitdiff
tag MDL-16704 Fixed autocomplete of tags by reorganising the div nesting and upgradin...
authorsamhemelryk <samhemelryk>
Thu, 22 Oct 2009 05:55:00 +0000 (05:55 +0000)
committersamhemelryk <samhemelryk>
Thu, 22 Oct 2009 05:55:00 +0000 (05:55 +0000)
tag/edit_form.php
tag/tag.js

index 5aaec36198e7dc44bb987063ccd71c3bc2a522a9..8e781a580d09c63269d0617284ce78db16a2c9dc 100644 (file)
@@ -1,4 +1,4 @@
-<?php  // $Id$
+<?php
 
 require_once($CFG->dirroot.'/lib/formslib.php');
 
@@ -31,8 +31,8 @@ class tag_edit_form extends moodleform {
         $mform->addElement('html', '<br/><div id="relatedtags-autocomplete-container">');
         $mform->addElement('textarea', 'relatedtags', get_string('relatedtags','tag'), 'cols="50" rows="3"');
         $mform->setType('relatedtags', PARAM_TAGLIST);
-        $mform->addElement('html', '</div>');
         $mform->addElement('html', '<div id="relatedtags-autocomplete"></div>');
+        $mform->addElement('html', '</div>');
 
         $this->add_action_buttons(false, get_string('updatetag', 'tag'));
 
index 6aff427421c463c339d10a57d9634c62875eb228..0031dce0e1c5608436e45ec6e106f81be30644c1 100644 (file)
@@ -2,21 +2,31 @@ var coursetagdivs = null;
 var coursetag_tags = new Array();
 
 function init_tag_autocomplete() {
-    // An XHR DataSource
-    var myServer = "./tag_autocomplete.php";
-    var myDataSource = new YAHOO.widget.DS_XHR(myServer, ["\n", "\t"]);
-    myDataSource.responseType = YAHOO.widget.DS_XHR.TYPE_FLAT;
+
+    var myDataSource = new YAHOO.util.XHRDataSource("./tag_autocomplete.php");
+    myDataSource.responseType = YAHOO.util.XHRDataSource.TYPE_TEXT;
+    myDataSource.responseSchema = {
+        recordDelim: "\n",
+        fieldDelim: "\t"
+    };
     myDataSource.maxCacheEntries = 60;
-    myDataSource.queryMatchSubset = true;
+    myDataSource.minQueryLength = 3;
 
-    var myAutoComp = new YAHOO.widget.AutoComplete("id_relatedtags","relatedtags-autocomplete", myDataSource);
-    myAutoComp.delimChar = ",";
-    myAutoComp.maxResultsDisplayed = 20;
-    myAutoComp.minQueryLength = 2;
+    // Instantiate the AutoComplete
+    var myAutoComp = new YAHOO.widget.AutoComplete("id_relatedtags", "relatedtags-autocomplete", myDataSource);
+    document.getElementById('id_relatedtags').style.width = '30%';
     myAutoComp.allowBrowserAutocomplete = false;
-    myAutoComp.formatResult = function(aResultItem, sQuery) {
-        return aResultItem[1];
-    }
+    myAutoComp.maxResultsDisplayed = 20;
+    myAutoComp.delimChar = [","," "]; 
+    myAutoComp.formatResult = function(oResultData, sQuery, sResultMatch) {
+        return (sResultMatch);
+    };
+
+    return {
+        myDataSource: myDataSource,
+        myAutoComp: myAutoComp
+    };
+
 }
 
 function ctags_checkinput(val) {