本文整理汇总了PHP中Vtiger_Relation_Model::getAllRelations方法的典型用法代码示例。如果您正苦于以下问题:PHP Vtiger_Relation_Model::getAllRelations方法的具体用法?PHP Vtiger_Relation_Model::getAllRelations怎么用?PHP Vtiger_Relation_Model::getAllRelations使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Vtiger_Relation_Model
的用法示例。
在下文中一共展示了Vtiger_Relation_Model::getAllRelations方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: process
public function process(Vtiger_Request $request)
{
$relationInfo = $request->get('related_info');
$updatedRelatedList = $relationInfo['updated'];
$deletedRelatedList = $relationInfo['deleted'];
if (empty($updatedRelatedList)) {
$updatedRelatedList = array();
}
if (empty($deletedRelatedList)) {
$deletedRelatedList = array();
}
$sourceModule = $request->get('sourceModule');
$moduleModel = Vtiger_Module_Model::getInstance($sourceModule, false);
$relationModulesList = Vtiger_Relation_Model::getAllRelations($moduleModel, false);
$sequenceList = array();
foreach ($relationModulesList as $relationModuleModel) {
$sequenceList[] = $relationModuleModel->get('sequence');
}
//To sort sequence in ascending order
sort($sequenceList);
$relationUpdateDetail = array();
$index = 0;
foreach ($updatedRelatedList as $relatedId) {
$relationUpdateDetail[] = array('relation_id' => $relatedId, 'sequence' => $sequenceList[$index++], 'presence' => 0);
}
foreach ($deletedRelatedList as $relatedId) {
$relationUpdateDetail[] = array('relation_id' => $relatedId, 'sequence' => $sequenceList[$index++], 'presence' => 1);
}
$response = new Vtiger_Response();
try {
$response->setResult(array('success' => true));
Vtiger_Relation_Model::updateRelationSequenceAndPresence($relationUpdateDetail, $moduleModel->getId());
} catch (Exception $e) {
$response->setError($e->getCode(), $e->getMessage());
}
$response->emit();
}
示例2: getRelations
/**
* Function returns all the relation models
* @return <Array of Vtiger_Relation_Model>
*/
public function getRelations()
{
if (empty($this->relations)) {
return Vtiger_Relation_Model::getAllRelations($this);
}
return $this->relations;
}
示例3: getRelations
public function getRelations()
{
if ($this->relations === null) {
$this->relations = Vtiger_Relation_Model::getAllRelations($this, false);
}
// Contacts relation-tab is turned into custom block on DetailView.
if ($this->getName() == 'Calendar') {
$contactsIndex = false;
foreach ($this->relations as $index => $model) {
if ($model->getRelationModuleName() == 'Contacts') {
$contactsIndex = $index;
break;
}
}
if ($contactsIndex !== false) {
array_splice($this->relations, $contactsIndex, 1);
}
}
return $this->relations;
}