當前位置: 首頁>>代碼示例>>PHP>>正文


PHP Tools::atkTriggerError方法代碼示例

本文整理匯總了PHP中Sintattica\Atk\Core\Tools::atkTriggerError方法的典型用法代碼示例。如果您正苦於以下問題:PHP Tools::atkTriggerError方法的具體用法?PHP Tools::atkTriggerError怎麽用?PHP Tools::atkTriggerError使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在Sintattica\Atk\Core\Tools的用法示例。


在下文中一共展示了Tools::atkTriggerError方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: validateUniqueFieldSets

 /**
  * Check unique field combinations.
  * The function is called by the validate() method automatically. It is
  * not necessary to call this manually in a validation process.
  * Errors that are found are stored in the $record parameter.
  *
  * @param array $record The record to validate
  */
 public function validateUniqueFieldSets(&$record)
 {
     $db = $this->m_nodeObj->getDb();
     foreach ($this->m_nodeObj->m_uniqueFieldSets as $uniqueFieldSet) {
         $query = $db->createQuery();
         $query->addField('*');
         $query->addTable($this->m_nodeObj->m_table);
         $attribs = [];
         foreach ($uniqueFieldSet as $field) {
             $attrib = $this->m_nodeObj->m_attribList[$field];
             if ($attrib) {
                 $attribs[] = $attrib;
                 if (method_exists($attrib, 'createDestination') && isset($attrib->m_refKey) && is_array($attrib->m_refKey) && count($attrib->m_refKey) > 1) {
                     $attrib->createDestination();
                     foreach ($attrib->m_refKey as $refkey) {
                         $query->addCondition($query->quoteField($refkey) . " = '" . $db->escapeSQL($record[$attrib->fieldName()][$refkey]) . "'");
                     }
                 } else {
                     if (!$attrib->isNotNullInDb() && $attrib->isEmpty($record)) {
                         $query->addCondition($query->quoteField($field) . ' IS NULL');
                     } else {
                         $query->addCondition($query->quoteField($field) . " = '" . $attrib->value2db($record) . "'");
                     }
                 }
             } else {
                 Tools::atkerror("Field {$field} is mentioned in uniquefieldset but does not exist in " . $this->m_nodeObj->atkNodeUri());
             }
         }
         if ($this->m_mode != 'add') {
             $query->addCondition('NOT (' . $this->m_nodeObj->primaryKey($record) . ')');
         }
         if (count($db->getRows($query->buildSelect())) > 0) {
             Tools::atkTriggerError($record, $attribs, 'error_uniquefieldset');
         }
     }
 }
開發者ID:sintattica,項目名稱:atk,代碼行數:44,代碼來源:NodeValidator.php

示例2: validate

 /**
  * Checks if the file has a valid filetype.
  *
  * Note that obligatory and unique fields are checked by the
  * atkNodeValidator, and not by the validate() method itself.
  *
  * @param array $record The record that holds the value for this
  *                       attribute. If an error occurs, the error will
  *                       be stored in the 'atkerror' field of the record.
  * @param string $mode The mode for which should be validated ("add" or
  *                       "update")
  */
 public function validate(&$record, $mode)
 {
     parent::validate($record, $mode);
     $this->isAllowedFileType($record);
     $error = $record[$this->fieldName()]['error'];
     if ($error > 0) {
         $error_text = $this->fetchFileErrorType($error);
         Tools::atkTriggerError($record, $this, $error_text, Tools::atktext($error_text, 'atk'));
     }
 }
開發者ID:sintattica,項目名稱:atk,代碼行數:22,代碼來源:FileAttribute.php


注:本文中的Sintattica\Atk\Core\Tools::atkTriggerError方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。