本文整理匯總了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');
}
}
}
示例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'));
}
}