Activated strict SQL mode, minor SQL injection fix, fixed _vl() debug helper.
[fa-stable.git] / includes / db / class.reflines_db.inc
index 47976504a550f29cbbaa7f5db4f4bf7993221d5c..277ebe74dbe2f8dce456f6fc8d0adf9510d9bfff 100644 (file)
@@ -17,13 +17,13 @@ include_once 'class.data_set.inc';
 **/
 
 class reflines_db extends data_set {
-       function reflines_db()
+       function __construct()
        {
                $this->set_validator('prefix:ui:_check_prefix', _("This prefix conflicts with another one already defined. Prefix have to be unambigous."));
                $this->set_validator('prefix:ui:_check_template', _("Invalid template format."));
                $this->set_validator('trans_type:ui:required', _("Transaction type cannot be empty."));
                $this->set_validator('pattern:ui:required', _("Next reference cannot be empty."));
-               $this->data_set('reflines', 
+               parent::__construct('reflines', 
                        array('trans_type', 'prefix', 'description', 'default', 'pattern', 'id', 'inactive'), 
                        'id');
        }
@@ -153,7 +153,7 @@ class reflines_db extends data_set {
        function find_refline_id($reference, $type, $fallback=true)
        {
                $sql = "SELECT * FROM ".TB_PREF."reflines WHERE trans_type=".db_escape($type)
-                       ." AND CHAR_LENGTH(`prefix`) AND LEFT('$reference', CHAR_LENGTH(`prefix`)) = `prefix`";
+                       ." AND CHAR_LENGTH(`prefix`) AND LEFT(".db_escape($reference).", CHAR_LENGTH(`prefix`)) = `prefix`";
                if ($fallback)  // if not found return refline with empty prefix
                        $sql .= " UNION SELECT * FROM ".TB_PREF."reflines WHERE trans_type=".db_escape($type)." AND `prefix`=''";
                $ret = db_query($sql, "cannot check reference line id");