当前位置: 首页>>代码示例>>PHP>>正文


PHP Tinebase_Container::addContainer方法代码示例

本文整理汇总了PHP中Tinebase_Container::addContainer方法的典型用法代码示例。如果您正苦于以下问题:PHP Tinebase_Container::addContainer方法的具体用法?PHP Tinebase_Container::addContainer怎么用?PHP Tinebase_Container::addContainer使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Tinebase_Container的用法示例。


在下文中一共展示了Tinebase_Container::addContainer方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: create

 /**
  * add one record
  *
  * @param   Tinebase_Record_Interface $_record
  * @return  Tinebase_Record_Interface
  */
 public function create(Tinebase_Record_Interface $_record)
 {
     $this->_checkRight('create');
     $_record->account_grants = $this->_convertGrantsToRecordSet($_record->account_grants);
     Tinebase_Container::getInstance()->checkContainerOwner($_record);
     Tinebase_Timemachine_ModificationLog::setRecordMetaData($_record, 'create');
     $container = $this->_containerController->addContainer($_record, $_record->account_grants, TRUE);
     $container->account_grants = $this->_containerController->getGrantsOfContainer($container, TRUE);
     return $container;
 }
开发者ID:ingoratsdorf,项目名称:Tine-2.0-Open-Source-Groupware-and-CRM,代码行数:16,代码来源:Container.php

示例2: testAccountAnyoneDisabled

 public function testAccountAnyoneDisabled()
 {
     $container = new Tinebase_Model_Container(array('name' => 'tine20shared', 'type' => Tinebase_Model_Container::TYPE_SHARED, 'owner_id' => Tinebase_Core::getUser(), 'backend' => 'Sql', 'application_id' => Tinebase_Application::getInstance()->getApplicationByName('Addressbook')->getId()));
     $grants = new Tinebase_Record_RecordSet('Tinebase_Model_Grants', array(array('account_id' => '0', 'account_type' => Tinebase_Acl_Rights::ACCOUNT_TYPE_ANYONE, Tinebase_Model_Grants::GRANT_READ => true, Tinebase_Model_Grants::GRANT_EXPORT => true, Tinebase_Model_Grants::GRANT_SYNC => true)), TRUE);
     $sharedContainer = $this->_instance->addContainer($container, $grants);
     $readGrant = $this->_instance->hasGrant(Tinebase_Core::getUser(), $sharedContainer, Tinebase_Model_Grants::GRANT_READ);
     $this->assertTrue($readGrant);
     Tinebase_Config::getInstance()->set(Tinebase_Config::ANYONE_ACCOUNT_DISABLED, TRUE);
     Tinebase_Core::getCache()->clean();
     $readGrant = $this->_instance->resetClassCache('hasGrant')->hasGrant(Tinebase_Core::getUser(), $sharedContainer, Tinebase_Model_Grants::GRANT_READ);
     $this->assertFalse($readGrant);
 }
开发者ID:bitExpert,项目名称:Tine-2.0-Open-Source-Groupware-and-CRM,代码行数:12,代码来源:ContainerTest.php

示例3: testMoveContactToContainer

 /**
  * try to move a contact to another container and check content sequence
  */
 public function testMoveContactToContainer()
 {
     $sharedContainer = $this->_instance->addContainer(new Tinebase_Model_Container(array('name' => 'tine20shared', 'type' => Tinebase_Model_Container::TYPE_SHARED, 'owner_id' => Tinebase_Core::getUser(), 'backend' => 'Sql', 'application_id' => Tinebase_Application::getInstance()->getApplicationByName('Addressbook')->getId())));
     $initialContainer = $this->_instance->get($this->objects['initialContainer']);
     $contact = new Addressbook_Model_Contact(array('n_family' => 'Tester', 'container_id' => $sharedContainer->getId()));
     $contact = Addressbook_Controller_Contact::getInstance()->create($contact);
     $filter = array(array('field' => 'id', 'operator' => 'in', 'value' => array($contact->getId())));
     $containerJson = new Tinebase_Frontend_Json_Container();
     $result = $containerJson->moveRecordsToContainer($initialContainer->getId(), $filter, 'Addressbook', 'Contact');
     $this->assertEquals($contact->getId(), $result['results'][0]);
     $movedContact = Addressbook_Controller_Contact::getInstance()->get($contact->getId());
     $this->assertEquals($initialContainer->getId(), $movedContact->container_id, 'contact has not been moved');
     $contentSeqs = $this->_instance->getContentSequence(array($sharedContainer->getId(), $initialContainer->getId()));
     $this->assertEquals(2, $contentSeqs[$sharedContainer->getId()], 'content seq mismatch: ' . print_r($contentSeqs, TRUE));
     $this->assertEquals(1, $contentSeqs[$initialContainer->getId()], 'content seq mismatch: ' . print_r($contentSeqs, TRUE));
     // check container content
     $contentRecords = $this->_instance->getContentHistory($sharedContainer->getId());
     $this->assertEquals(2, count($contentRecords));
     $this->assertEquals($contact->getId(), $contentRecords->getFirstRecord()->record_id);
     $this->assertEquals(Tinebase_Model_ContainerContent::ACTION_CREATE, $contentRecords->getFirstRecord()->action);
 }
开发者ID:rodrigofns,项目名称:ExpressoLivre3,代码行数:24,代码来源:ContainerTest.php


注:本文中的Tinebase_Container::addContainer方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。