MDL-21437 data - latlong, menu, radiobutton, text, textarea, url
authorEloy Lafuente <stronk7@moodle.org>
Wed, 17 Nov 2010 19:27:47 +0000 (19:27 +0000)
committerEloy Lafuente <stronk7@moodle.org>
Wed, 17 Nov 2010 19:27:47 +0000 (19:27 +0000)
mod/data/field/latlong/field.class.php
mod/data/field/menu/field.class.php
mod/data/field/radiobutton/field.class.php
mod/data/field/text/field.class.php
mod/data/field/textarea/field.class.php
mod/data/field/url/field.class.php

index cba83f9..83dd50c 100755 (executable)
@@ -90,15 +90,20 @@ class data_field_latlong extends data_field_base {
     }
 
     function generate_sql($tablealias, $value) {
+        global $DB;
+
         static $i=0;
         $i++;
         $name1 = "df_latlong1_$i";
         $name2 = "df_latlong2_$i";
+        $varcharlat = $DB->sql_compare_text("{$tablealias}.content");
+        $varcharlong= $DB->sql_compare_text("{$tablealias}.content1");
+
 
         $latlong[0] = '';
         $latlong[1] = '';
         $latlong = explode (',', $value, 2);
-        return array(" ({$tablealias}.fieldid = {$this->field->id} AND {$tablealias}.content = :$name1 AND {$tablealias}.content1 = :$name2) ",
+        return array(" ({$tablealias}.fieldid = {$this->field->id} AND $varcharlat = :$name1 AND $varcharlong = :$name2) ",
                      array($name1=>$latlong[0], $name2=>$latlong[1]));
     }
 
index 97a5bf4..6a948a1 100755 (executable)
@@ -94,10 +94,14 @@ class data_field_menu extends data_field_base {
      }
 
     function generate_sql($tablealias, $value) {
+        global $DB;
+
         static $i=0;
         $i++;
         $name = "df_menu_$i";
-        return array(" ({$tablealias}.fieldid = {$this->field->id} AND {$tablealias}.content = :$name) ", array($name=>$value));
+        $varcharcontent = $DB->sql_compare_text("{$tablealias}.content", 255);
+
+        return array(" ({$tablealias}.fieldid = {$this->field->id} AND $varcharcontent = :$name) ", array($name=>$value));
     }
 
 }
index e2a38d3..5396b2d 100755 (executable)
@@ -86,10 +86,14 @@ class data_field_radiobutton extends data_field_base {
     }
 
     function generate_sql($tablealias, $value) {
+        global $DB;
+
         static $i=0;
         $i++;
-        $name = "df_number_$i";
-        return array(" ({$tablealias}.fieldid = {$this->field->id} AND {$tablealias}.content = :$name) ", array($name=>$value));
+        $name = "df_radiobutton_$i";
+        $varcharcontent = $DB->sql_compare_text("{$tablealias}.content", 255);
+
+        return array(" ({$tablealias}.fieldid = {$this->field->id} AND $varcharcontent = :$name) ", array($name=>$value));
     }
 
 }
index 9210e18..36c391a 100755 (executable)
@@ -39,7 +39,7 @@ class data_field_text extends data_field_base {
 
         static $i=0;
         $i++;
-        $name = "df_picture_$i";
+        $name = "df_text_$i";
         return array(" ({$tablealias}.fieldid = {$this->field->id} AND ".$DB->sql_like("{$tablealias}.content", ":$name", false).") ", array($name=>"%$value%"));
     }
 
index 5a39cbc..6f2db0c 100755 (executable)
@@ -94,7 +94,7 @@ class data_field_textarea extends data_field_base {
 
         static $i=0;
         $i++;
-        $name = "df_picture_$i";
+        $name = "df_textarea_$i";
         return array(" ({$tablealias}.fieldid = {$this->field->id} AND ".$DB->sql_like("{$tablealias}.content", ":$name", false).") ", array($name=>"%$value%"));
     }
 
index b4e7683..b22e4f8 100755 (executable)
@@ -84,7 +84,7 @@ class data_field_url extends data_field_base {
 
         static $i=0;
         $i++;
-        $name = "df_picture_$i";
+        $name = "df_url_$i";
         return array(" ({$tablealias}.fieldid = {$this->field->id} AND ".$DB->sql_like("{$tablealias}.content", ":$name", false).") ", array($name=>"%$value%"));
     }