Beispiel #1
0
 /**
  * Return error message
  *
  * @param   mixed 	$fields Form array or boolean
  * @param   string 	$title Dialog title
  * @param   boolean     $session If true save message in a session var
  * @return  void
  */
 public function notice($fields, $title = '_form_not_valid', $session = false)
 {
     $dict = new X4Dict_model(X4Route_core::$folder, X4Route_core::$lang);
     $error = $dict->get_word($title, 'form');
     $fields = X4Utils_helper::normalize_form($fields);
     foreach ($fields as $i) {
         if (isset($i['error'])) {
             foreach ($i['error'] as $ii) {
                 // set the available label
                 $label = is_null($i['label']) && isset($i['alabel']) || isset($i['alabel']) ? $i['alabel'] : $i['label'];
                 // for related fields
                 if (isset($i['related'][$i['name']])) {
                     $src = array('XXXRELATEDXXX');
                     $rpl = array();
                     $related = $i['related'][$i['name']];
                     if (isset($fields[$related])) {
                         // if is a related field
                         $rpl[] = is_null($fields[$related]['label']) && isset($fields[$related]['alabel']) || isset($fields[$related]['alabel']) ? $fields[$related]['alabel'] : $fields[$related]['label'];
                     } else {
                         // if is a related value
                         $rpl[] = $related;
                     }
                     if (isset($i['relatedvalue'][$i['name']])) {
                         $src[] = 'XXXVALUEXXX';
                         $rpl[] = $i['relatedvalue'][$i['name']];
                     }
                     $error .= '<br /><u>' . $label . '</u> ' . str_replace($src, $rpl, $dict->get_word($ii, 'form'));
                 } else {
                     $error .= '<br /><u>' . $label . '</u> ' . $dict->get_word($ii, 'form');
                 }
             }
         }
     }
     if ($session) {
         $_SESSION['msg'] = $error;
     } else {
         // set message
         $msg = AdmUtils_helper::set_msg(false, $error, $error);
         $this->response($msg);
     }
 }