function validate() { $errors = array(); if (!$this->getDataString('name')) { $errors['name'] = _Ti('org_input_name') . _T('warning_field_mandatory'); } validate_update_keywords_request('org', $this->getDataInt('id_org')); if ($_SESSION['errors']) { $errors = array_merge($errors, $_SESSION['errors']); } // // Custom validation functions // $id_org = $this->getDataInt('id_org'); $fields = array('name' => 'OrgName', 'court_reg' => 'OrgCourtReg', 'tax_number' => 'OrgTaxNumber', 'stat_number' => 'OrgStatNumber'); foreach ($fields as $f => $func) { if (include_validator_exists($f)) { include_validator($f); $class = "LcmCustomValidate{$func}"; $data = $this->getDataString($f); $v = new $class(); if ($err = $v->validate($id_client, $data)) { $errors[$f] = _Ti('org_input_' . $f) . $err; } } } return $errors; }
function validate() { $errors = array(); // * Check for id_case if (!($this->getDataInt('id_case') > 0)) { $errors['id_case'] = "Internal error: No id_case found"; } // * Check for fu type if (!$this->getDataString('type')) { $errors['type'] = _Ti('fu_input_type') . _T('warning_field_mandatory'); } // * Check if fu type exists if (!get_kw_from_name('followups', $this->getDataString('type'))) { $errors['type'] = _Ti('fu_input_type') . "Unknown type"; } // TRAD // * Check start date $unix_date_start = strtotime($this->getDataString('date_start')); if ($unix_date_start < 0 || !checkdate_sql($this->getDataString('date_start'))) { $errors['date_start'] = _Ti('time_input_date_start') . 'Invalid start date.'; } // TRAD if (!is_numeric($this->getDataFloat('sumbilled', 0.0))) { $errors['sumbilled'] = _Ti('fu_input_sum_billed') . 'Incorrect format, must be 00000.00'; } // TRAD // * Check end date // [ML] This is probably very buggy, because I re-wrote parts of it // to make it LCM 0.7.0 compliant, but it's a hell of a mess! // And parts of this code should be in the constructor. global $prefs; if ($prefs['time_intervals'] == 'absolute') { if (isempty_datetime_from_array($_SESSION['form_data'], 'end', 'date_only')) { // Set to default empty date if all fields empty $this->data['date_end'] = '0000-00-00 00:00:00'; } elseif (!isset_datetime_from_array($_SESSION['form_data'], 'end', 'date_only')) { // Report error if some of the fields empty $this->data['date_end'] = get_datetime_from_array($_SESSION['form_data'], 'end', 'start', '', false); $errors['date_end'] = 'Partial end date!'; // TRAD } else { $this->data['date_end'] = get_datetime_from_array($_SESSION['form_data'], 'end', 'start', '', false); $unix_date_end = strtotime($this->getDataString('date_end')); if ($unix_date_end < 0 || !checkdate_sql($this->getDataString('date_end'))) { $errors['date_end'] = 'Invalid end date.'; } // TRAD } } else { $valid_interval = true; $unix_date_end = $unix_date_start; $_SESSION['form_data']['delta_days'] = trim($_SESSION['form_data']['delta_days']); $_SESSION['form_data']['delta_hours'] = trim($_SESSION['form_data']['delta_hours']); $_SESSION['form_data']['delta_minutes'] = trim($_SESSION['form_data']['delta_minutes']); if (is_numeric(_session('delta_days', 0)) && _session('delta_days', 0) >= 0) { $unix_date_end += _session('delta_days', 0) * 86400; } else { $valid_interval = false; } if (is_numeric(_session('delta_hours', 0)) && _session('delta_hours', 0) >= 0) { $unix_date_end += _session('delta_hours', 0) * 3600; } else { $valid_interval = false; } if (is_numeric(_session('delta_minutes', 0)) && _session('delta_minutes', 0) >= 0) { $unix_date_end += _session('delta_minutes', 0) * 60; } else { $valid_interval = false; } if ($valid_interval) { $this->data['date_end'] = date('Y-m-d H:i:s', $unix_date_end); } else { $errors['date_end'] = _Ti('time_input_length') . 'Invalid time interval.'; // TRAD $this->data['date_end'] = $_SESSION['form_data']['date_start']; } } // Description /* [ML] This was requested to be optional (MG, PDO) if ( !(strlen($this->data['description']) > 0) ) $errors['description'] = _Ti('fu_input_description') . _T('warning_field_mandatory'); */ validate_update_keywords_request('followup', $this->getDataInt('id_followup')); if ($_SESSION['errors']) { $errors = array_merge($errors, $_SESSION['errors']); } // // Custom validation functions // $id_case = $this->getDataInt('id_case'); $fields = array('description' => 'FollowupDescription'); foreach ($fields as $f => $func) { if (include_validator_exists($f)) { include_validator($f); $class = "LcmCustomValidate{$func}"; $data = $this->getDataString($f); $v = new $class(); if ($err = $v->validate($id_case, $data)) { $errors[$f] = _Ti('fu_input_' . $f) . $err; } } } return $errors; }
function validate() { $errors = array(); // * Title must be non-empty if (!$this->getDataString('title')) { $errors['title'] = _Ti('case_input_title') . _T('warning_field_mandatory'); } // * Date assignment must be a valid date if (!checkdate_sql($this->getDataString('date_assignment'))) { $errors['date_assignment'] = _Ti('case_input_date_assigned') . 'Invalid date.'; } // TRAD // * Depending on site policy, legal reason may be mandatory if (read_meta('case_legal_reason') == 'yes_mandatory' && !$this->getDataString('legal_reason')) { $errors['legal_reason'] = _Ti('case_input_legal_reason') . _T('warning_field_mandatory'); } // * Depending on site policy, alleged crime may be mandatory if (read_meta('case_alledged_crime') == 'yes_mandatory' && !$this->getDataString('alledged_crime')) { $errors['alledged_crime'] = _Ti('case_input_alledged_crime') . _T('warning_field_mandatory'); } // * TODO: Status must be a valid option (where do we have official list?) if (!$this->getDataString('status')) { $errors['status'] = _Ti('case_input_status') . _T('warning_field_mandatory'); } // * TODO: Stage must be a valid keyword if (!$this->getDataString('stage')) { $errors['stage'] = _Ti('case_input_stage') . _T('warning_field_mandatory'); } validate_update_keywords_request('case', $this->getDataInt('id_case')); validate_update_keywords_request('stage', $this->getDataInt('id_case'), $this->getDataInt('id_stage')); if ($_SESSION['errors']) { $errors = array_merge($errors, $_SESSION['errors']); } // // Custom validation functions // $id_case = $this->getDataInt('id_case'); $fields = array('title' => 'CaseTitle', 'legal_reason' => 'CaseLegalReason', 'alledged_crime' => 'CaseAllegedCrime', 'status' => 'CaseStatus', 'stage' => 'CaseStage'); foreach ($fields as $f => $func) { if (include_validator_exists($f)) { include_validator($f); $class = "LcmCustomValidate{$func}"; $data = $this->getDataString($f); $v = new $class(); if ($err = $v->validate($id_case, $data)) { $errors[$f] = _Ti('case_input_' . $f) . $err; } } } return $errors; }