/** * function to get data history display text * @param object $obj * @param boolean $link * @param boolean $user_history * @return array $ret_array */ public function get_data_history_display_text($obj, $link = false, $user_history = false) { $row1 = '<strong>' . $obj->firstname . ' ' . $obj->lastname . '</strong> ' . _('on ') . '<i>' . i18nDate::i18n_long_time(TimeZoneUtil::convert_to_user_timezone($obj->date_modified, true)) . '</i>'; switch ($obj->action) { case 'add': if ($user_history === true) { $row2 = _('Added') . ' ' . CommonUtils::get_module_name_as_text($obj->idmodule); } else { $row2 = _('Added the record'); } break; case 'delete': if ($user_history === true) { $row2 = _('Deleted') . ' ' . CommonUtils::get_module_name_as_text($obj->idmodule); } else { $row2 = _('Deleted the record'); } break; case 'edit': if ($user_history === true) { $row2 = _('Updated') . ' ' . CommonUtils::get_module_name_as_text($obj->idmodule); } else { $row2 = _('Updated the record'); } break; case 'value_changes': $do_crm_fields = new CRMFields(); $do_crm_fields->getId($obj->idfields); if ($do_crm_fields->getNumRows() > 0) { $field_label = $do_crm_fields->field_label; $old_value = $obj->old_value; $new_value = $obj->new_value; if ($do_crm_fields->field_type == 9) { $old_value = FieldType9::display_value($old_value); $new_value = FieldType9::display_value($new_value); } if ($user_history === true) { $row2 = _('Changed value in') . ' ' . CommonUtils::get_module_name_as_text($obj->idmodule) . ' , ' . $field_label . ' :: ' . $old_value . ' >>> ' . $new_value; } else { $row2 = _('Changed') . ' ' . $field_label . ' :: ' . $old_value . ' >>> ' . $new_value; } } $do_crm_fields->free(); break; } if ($obj->user_avatar != '') { $avatar_path = $GLOBALS['AVATAR_DISPLAY_PATH']; $thumb = $avatar_path . '/ths_' . $obj->user_avatar . '.' . $obj->file_extension; } if ($link === true) { $detail_url = NavigationControl::getNavigationLink($_SESSION["do_module"]->modules_full_details[$obj->idmodule]["name"], "detail", $obj->id_referrer); $row2 .= ' <a href="' . $GLOBALS['SITE_URL'] . $detail_url . '">' . $GLOBALS['SITE_URL'] . $detail_url . '</a>'; } $ret_array = array("avatar" => $thumb, "row1" => $row1, "row2" => $row2); return $ret_array; }
/** * parse the date filter for the query * @param integer $idreport * @param array $data * @return string */ public function get_parsed_date_filter($idreport, $data = array()) { $date_where = ''; if (count($data) > 0) { $filter_type = $data["filter_type"]; $do_fields = new CRMFields(); $do_fields->getId((int) $data["idfield"]); $where_field = $do_fields->table_name . '.' . $do_fields->field_name; if ($data["start_date"] != '') { $start_date = FieldType9::convert_before_save($data["start_date"]); } if ($data["end_date"] != '') { $end_date = FieldType9::convert_before_save($data["end_date"]); } } else { $qry = $this->get_saved_date_filter(); $this->query($qry, array($idreport)); if ($this->getNumRows() > 0) { $this->next(); $filter_type = $this->filter_type; $field_name = $this->field_name; $where_field = $this->table_name . '.' . $field_name; if ($this->start_date != '' && $this->start_date != '0000-00-00') { $start_date = $this->start_date; } if ($this->end_date != '' && $this->end_date != '0000-00-00') { $end_date = $this->end_date; } } } if ($filter_type > 0) { switch ($filter_type) { case '1': if ($start_date != '' && $start_date != '0000-00-00' && $end_date != '' && $end_date != '0000-00-00') { $date_where = " AND " . $where_field . " between '" . $start_date . "' AND '" . $end_date . "'"; } break; case '2': $date_range = CommonUtils::get_year_date_range('previous'); $date_where = " AND " . $where_field . " between '" . $date_range["start"] . "' AND '" . $date_range["end"] . "'"; break; case '3': $date_range = CommonUtils::get_year_date_range('current'); $date_where = " AND " . $where_field . " between '" . $date_range["start"] . "' AND '" . $date_range["end"] . "'"; break; case '4': $date_range = CommonUtils::get_year_date_range('next'); $date_where = " AND " . $where_field . " between '" . $date_range["start"] . "' AND '" . $date_range["end"] . "'"; break; case '5': $date_range = CommonUtils::get_quarter_date_range('previous'); $date_where = " AND " . $where_field . " between '" . $date_range["start"] . "' AND '" . $date_range["end"] . "'"; break; case '6': $date_range = CommonUtils::get_quarter_date_range('current'); $date_where = " AND " . $where_field . " between '" . $date_range["start"] . "' AND '" . $date_range["end"] . "'"; break; case '7': $date_range = CommonUtils::get_quarter_date_range('next'); $date_where = " AND " . $where_field . " between '" . $date_range["start"] . "' AND '" . $date_range["end"] . "'"; break; case '8': $date_where = " AND " . $where_field . " between concat(date_sub(curdate(),interval 1 day),' 00:00:00') and concat(date_sub(curdate(),interval 1 day),' 23:59:59')"; break; case '9': $date_where = " AND " . $where_field . " between concat(curdate(),' 00:00:00') and concat(curdate(),' 23:59:59')"; break; case '10': $date_where = " AND " . $where_field . " between concat(date_add(curdate(),interval 1 day),' 00:00:00') and concat(date_add(curdate(),interval 1 day),' 23:59:59')"; break; case '11': $date_range = CommonUtils::get_week_date_range('previous'); $date_where = " AND " . $where_field . " between '" . $date_range["start"] . "' AND '" . $date_range["end"] . "'"; break; case '12': $date_range = CommonUtils::get_week_date_range('current'); $date_where = " AND " . $where_field . " between '" . $date_range["start"] . "' AND '" . $date_range["end"] . "'"; break; case '13': $date_range = CommonUtils::get_week_date_range('next'); $date_where = " AND " . $where_field . " between '" . $date_range["start"] . "' AND '" . $date_range["end"] . "'"; break; case '14': $date_range = CommonUtils::get_month_date_range('previous'); $date_where = " AND " . $where_field . " between '" . $date_range["start"] . "' AND '" . $date_range["end"] . "'"; break; case '15': $date_range = CommonUtils::get_month_date_range('current'); $date_where = " AND " . $where_field . " between '" . $date_range["start"] . "' AND '" . $date_range["end"] . "'"; break; case '16': $date_range = CommonUtils::get_month_date_range('next'); $date_where = " AND " . $where_field . " between '" . $date_range["start"] . "' AND '" . $date_range["end"] . "'"; break; case '17': $date_where = " AND " . $where_field . " between date_sub(curdate(),interval 7 day) and date_sub(curdate(),interval 1 day)"; break; case '18': $date_where = " AND " . $where_field . " between date_sub(curdate(),interval 30 day) and date_sub(curdate(),interval 1 day)"; break; case '19': $date_where = " AND " . $where_field . " between date_sub(curdate(),interval 60 day) and date_sub(curdate(),interval 1 day)"; break; case '20': $date_where = " AND " . $where_field . " between date_sub(curdate(),interval 90 day) and date_sub(curdate(),interval 1 day)"; break; case '21': $date_where = " AND " . $where_field . " between date_add(curdate(),interval 1 day) and date_add(curdate(),interval 7 day)"; break; case '22': $date_where = " AND " . $where_field . " between date_add(curdate(),interval 1 day) and date_add(curdate(),interval 30 day)"; break; case '23': $date_where = " AND " . $where_field . " between date_add(curdate(),interval 1 day) and date_add(curdate(),interval 60 day)"; break; case '24': $date_where = " AND " . $where_field . " between date_add(curdate(),interval 1 day) and date_add(curdate(),interval 90 day)"; break; } } return $date_where; }