本文整理匯總了PHP中Tinebase_Record_RecordSet::add方法的典型用法代碼示例。如果您正苦於以下問題:PHP Tinebase_Record_RecordSet::add方法的具體用法?PHP Tinebase_Record_RecordSet::add怎麽用?PHP Tinebase_Record_RecordSet::add使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Tinebase_Record_RecordSet
的用法示例。
在下文中一共展示了Tinebase_Record_RecordSet::add方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: _createDependentRecords
/**
* creates dependent records after creating the parent record
*
* @param Tinebase_Record_Interface $_createdRecord
* @param Tinebase_Record_Interface $_record
* @param string $_property
* @param array $_fieldConfig
*/
protected function _createDependentRecords(Tinebase_Record_Interface $_createdRecord, Tinebase_Record_Interface $_record, $_property, $_fieldConfig)
{
if (!(isset($_fieldConfig['dependentRecords']) || array_key_exists('dependentRecords', $_fieldConfig)) || !$_fieldConfig['dependentRecords']) {
return;
}
if ($_record->has($_property) && $_record->{$_property}) {
$recordClassName = $_fieldConfig['recordClassName'];
$new = new Tinebase_Record_RecordSet($recordClassName);
$ccn = $_fieldConfig['controllerClassName'];
$controller = $ccn::getInstance();
// legacy - should be already done in frontend json - remove if all record properties are record sets before getting to controller
if (is_array($_record->{$_property})) {
$rs = new Tinebase_Record_RecordSet($recordClassName);
foreach ($_record->{$_property} as $recordArray) {
$rec = new $recordClassName(array(), true);
$rec->setFromJsonInUsersTimezone($recordArray);
if (strlen($rec->getId()) < 40) {
$rec->{$rec->getIdProperty()} = Tinebase_Record_Abstract::generateUID();
}
$rs->addRecord($rec);
}
$_record->{$_property} = $rs;
} else {
foreach ($_record->{$_property} as $rec) {
if (strlen($rec->getId()) < 40) {
$rec->{$rec->getIdProperty()} = Tinebase_Record_Abstract::generateUID();
}
}
}
// legacy end
if (Tinebase_Core::isLogLevel(Zend_Log::INFO)) {
Tinebase_Core::getLogger()->info(__METHOD__ . '::' . __LINE__ . ' Creating ' . $_record->{$_property}->count() . ' dependent records on property ' . $_property . ' for ' . $this->_applicationName . ' ' . $this->_modelName);
}
foreach ($_record->{$_property} as $record) {
$record->{$_fieldConfig['refIdField']} = $_createdRecord->getId();
if (!$record->getId() || strlen($record->getId()) != 40) {
$record->{$record->getIdProperty()} = NULL;
}
$new->add($controller->create($record));
}
$_createdRecord->{$_property} = $new->toArray();
}
}