/** * Kontrolliert die Daten, welche aus dem Formular stammen. Sind die Daten fehlerhaft (leere oder ungültige Einträge) * gibt die Funktion false zurück und der Parameter $answer enthält die Fehlermeldungen. * Sind die Daten hingegen gut, enthält $answer ein Array mit den Daten aus dem Formular. * * @param array[ref] $answer Antwort-Array, wird als Referenz übergeben. Enthält die Daten oder Fehlertexte * @return boolean Erfolg(true) oder Fehler(false) */ private function _checkformdata(&$answer) { $answer = array(); $entry_vars = $this->_config_textes['Editor-Entry']; $error_vars = $this->_config_textes['Editor-Error']; $formcheck = new Formularcheck(); $post_vars = $this->_gpc['POST']; $val = array('m_name' => $post_vars['menu_name'], 'm_pos' => $post_vars['menu_position'], 'm_topid' => $post_vars['menu_topid'], 'm_modus' => $post_vars['menu_modus'], 'm_page' => $post_vars['menu_page']); $std = array('m_name' => $entry_vars['menu_name'], 'm_pos' => '', 'm_topid' => '', 'm_modus' => '', 'm_page' => ''); $err = array('m_name' => $error_vars['menu_name_error'], 'm_pos' => $error_vars['menu_position_error'], 'm_topid' => $error_vars['menu_topid_error'], 'm_modus' => $error_vars['menu_modus_error'], 'm_page' => $error_vars['menu_page_error']); $fmcheck_array = $formcheck->field_check_arr($val, $std); foreach ($fmcheck_array as $key => $value) { if ($value == false) { $answer[] = $err[$key]; } } if (key_exists('menu_display', $post_vars)) { $val['m_display'] = true; } else { $val['m_display'] = false; } /* weitere Tests durchführen */ if (!is_numeric($val['m_pos']) && !in_array($err['m_pos'], $answer)) { $answer[] = $err['m_pos']; } if (!is_numeric($val['m_topid']) && !in_array($err['m_topid'], $answer)) { $answer[] = $err['m_topid']; } if ($val['m_modus'] != 'pag' && $val['m_modus'] != 'mod' && !in_array($err['m_modus'], $answer)) { $answer[] = $err['m_modus']; } if (!is_numeric($val['m_page']) && !in_array($err['m_page'], $answer)) { $answer[] = $err['m_page']; } if (key_exists('ref_ID', $this->_gpc['GET']) && $val['m_topid'] == $this->_gpc['GET']['ref_ID']) { $answer[] = $error_vars['menu_topideqid_error']; } /* Keine Fehler gefunden -> Daten in $answer speichern */ if (empty($answer)) { $answer = $val; return true; } else { return false; } }
/** * Kontrolliert die Daten, welche aus dem Formular stammen. Sind die Daten fehlerhaft (leere oder ungültige Einträge) * gibt die Funktion false zurück und der Parameter $answer enthält die Fehlermeldungen. * Sind die Daten hingegen gut, enthält $answer ein Array mit den Daten aus dem Formular. * * @param array[ref] $answer Antwort-Array, wird als Referenz übergeben. Enthält die Daten oder Fehlertexte * @return boolean Erfolg(true) oder Fehler(false */ private function _checkformdata(&$answer) { $answer = array(); $entry_vars = $this->_config_textes['Editor-Entry']; $error_vars = $this->_config_textes['Editor-Error']; $formcheck = new Formularcheck(); $post_vars = $this->_gpc['POST']; $val = array('c_title' => $post_vars['content_title'], 'c_text' => $post_vars['content_text']); $std = array('c_title' => $entry_vars['content_title'], 'c_text' => $entry_vars['content_text']); $err = array('c_title' => $error_vars['content_title_error'], 'c_text' => $error_vars['content_text_error']); /* Menu-Einträge ignorieren? */ if (!key_exists('menu_ignore', $this->_gpc['POST'])) { $tmp['m_ignore'] = false; $val += array('m_name' => $post_vars['menu_name'], 'm_pos' => $post_vars['menu_position'], 'm_topid' => $post_vars['menu_topid']); $std += array('m_name' => $entry_vars['menu_name'], 'm_pos' => '', 'm_topid' => ''); $err += array('m_name' => $error_vars['menu_name_error'], 'm_pos' => $error_vars['menu_position_error'], 'm_topid' => $error_vars['menu_topid_error']); if (key_exists('menu_ID', $post_vars)) { $tmp['m_ID'] = (int) $post_vars['menu_ID']; if ($val['m_topid'] == $tmp['m_ID']) { $answer[] = $error_vars['menu_topideqid_error']; } } if (key_exists('menu_new', $post_vars)) { $tmp['m_new'] = $post_vars['menu_new']; } else { $tmp['m_new'] = false; } if (!is_numeric($val['m_pos'])) { $answer[] = $err['m_pos']; } if (!is_numeric($val['m_topid'])) { $answer[] = $err['m_topid']; } } else { $tmp['m_ignore'] = true; } if (key_exists('content_hide', $this->_gpc['POST'])) { $tmp['c_hide'] = true; } else { $tmp['c_hide'] = false; } if (key_exists('menu_display', $this->_gpc['POST'])) { $tmp['m_display'] = true; } else { $tmp['m_display'] = false; } $fmcheck_array = $formcheck->field_check_arr($val, $std); foreach ($fmcheck_array as $key => $value) { if ($value == false) { $answer[] = $err[$key]; } } /* Keine Fehler gefunden -> Daten in $answer speichern */ if (empty($answer)) { $answer = $val; $answer += $tmp; return true; } else { return false; } }
/** * Kontrolliert das Formular auf Standarteinträge, richtige Mailmuster und Captcha-Wort. * Ist alles ordnungsgemäss, wird true zurückgegeben, sonst false. Bei false finden sich die Mängel * in $answer. * * @param array[reference] $answer Antowrt * @return boolean Erfolg */ private function _check_form(&$answer) { $mail_textes = $this->_config_textes['Mail']; $error_textes = $this->_config_textes['Error']; /* Formularcheck vorbereiten */ $formcheck = new Formularcheck(); $val = array($this->_gpc['POST']['title'], $this->_gpc['POST']['content'], $this->_gpc['POST']['name'], $this->_gpc['POST']['email']); $std = array($mail_textes['entry_title'], $mail_textes['entry_content'], $mail_textes['entry_name'], $mail_textes['entry_email']); $err = array($error_textes['title_error'], $error_textes['content_error'], $error_textes['name_error'], $error_textes['email_error']); $rtn_arr = $formcheck->field_check_arr($val, $std); //Fehlerarray durchgehen foreach ($rtn_arr as $key => $value) { if ($value == false) { $answer[] = $err[$key]; } } //Email-Adresse auf Gültigkeit prüfen if ($this->_gpc['POST']['email'] != "" && $formcheck->mailcheck($this->_gpc['POST']['email']) > 0) { $answer[] = $error_textes['email_checkfailed']; } if (empty($answer)) { return true; } else { return false; } }