tbrehm
2012-04-12 ee260d725ffeabfe93305d44887d0b4b6086c436
Extended datalogUpdate and datalogInsert function in mysql library so that insert_data and update_data arguments can be passed as array too.
1 files modified
24 ■■■■■ changed files
interface/lib/classes/db_mysql.inc.php 24 ●●●●● patch | view | raw | blame | history
interface/lib/classes/db_mysql.inc.php
@@ -287,8 +287,20 @@
    public function datalogInsert($tablename, $insert_data, $index_field) {
      global $app;
      if(is_array($insert_data)) {
            $key_str = '';
            $val_str = '';
            foreach($insert_data as $key => $val) {
                $key_str .= "`".$key ."`,";
                $val_str .= "'".$this->quote($val)."',";
            }
            $insert_data_str = '('.$key_str.') VALUES ('.$val_str.')';
        } else {
            $insert_data_str = $insert_data;
        }
      $old_rec = array();
      $this->query("INSERT INTO $tablename $insert_data");
      $this->query("INSERT INTO $tablename $insert_data_str");
      $index_value = $this->insertID();
      $new_rec = $this->queryOneRecord("SELECT * FROM $tablename WHERE $index_field = '$index_value'");
      $this->datalogSave($tablename, 'INSERT', $index_field, $index_value, $old_rec, $new_rec);
@@ -305,6 +317,16 @@
      } else {
        $old_rec = $this->queryOneRecord("SELECT * FROM $tablename WHERE $index_field = '$index_value'");
      }
      if(is_array($update_data)) {
            $update_data_str = '';
            foreach($update_data as $key => $val) {
                $update_data_str .= "`".$key ."` = '".$this->quote($val)."',";
            }
        } else {
            $update_data_str = $update_data;
        }
      $this->query("UPDATE $tablename SET $update_data WHERE $index_field = '$index_value'");
      $new_rec = $this->queryOneRecord("SELECT * FROM $tablename WHERE $index_field = '$index_value'");
      $this->datalogSave($tablename, 'UPDATE', $index_field, $index_value, $old_rec, $new_rec);