Example #1
0
 /**
  * Gets the object value at a specific date
  *
  * @param CMbObject $object The object to get the value of
  * @param datetime  $date   The date
  * @param string    $field  Field name
  *
  * @return mixed
  */
 static function getObjectValueAtDate(CMbObject $object, $date, $field)
 {
     $where = array("object_class" => "= '{$object->_class}'", "object_id" => "= '{$object->_id}'", "type" => "IN('store', 'merge')", "extra IS NOT NULL AND extra != '[]'");
     if ($date) {
         $where["date"] = ">= '{$date}'";
     }
     $where[] = "\n      fields LIKE '{$field}' OR \n      fields LIKE '{$field} %' OR \n      fields LIKE '% {$field}' OR \n      fields LIKE '% {$field} %'";
     $user_log = new self();
     $user_log->loadObject($where, "date ASC");
     if ($user_log->_id) {
         $user_log->getOldValues();
     }
     return CValue::read($user_log->_old_values, $field, $object->{$field});
 }