/**
  * Return manager instance
  *
  * @access protected
  * @param void
  * @return SharedObjects
  */
 function manager()
 {
     if (!$this->manager instanceof SharedObjects) {
         $this->manager = SharedObjects::instance();
     }
     return $this->manager;
 }
 function saveSharedObject($object, $user)
 {
     $ou = SharedObjects::findOne(array('conditions' => "object_id = " . $object->getId() . " AND object_manager = '" . $object->getObjectManagerName() . "' AND user_id = " . $user->getId()));
     if (!$ou) {
         try {
             DB::beginWork();
             $ou = new SharedObject();
             $ou->setObjectId($object->getId());
             $ou->setObjectManager($object->getObjectManagerName());
             $ou->setUserId($user->getId());
             $ou->setCreatedOn(DateTimeValueLib::now());
             $ou->setCreatedById(logged_user()->getId());
             $ou->save();
             DB::commit();
         } catch (Exception $e) {
             DB::rollback();
             flash_error($e->getMessage());
             ajx_current("empty");
         }
     }
 }
 function clearShared()
 {
     return SharedObjects::delete(array("`object_manager` = ? AND `object_id` = ?", $this->getObjectManagerName(), $this->getId()));
 }
 /**
  * This function will return paginated result. Result is an array where first element is 
  * array of returned object and second populated pagination object that can be used for 
  * obtaining and rendering pagination data using various helpers.
  * 
  * Items and pagination array vars are indexed with 0 for items and 1 for pagination
  * because you can't use associative indexing with list() construct
  *
  * @access public
  * @param array $arguments Query argumens (@see find()) Limit and offset are ignored!
  * @param integer $items_per_page Number of items per page
  * @param integer $current_page Current page number
  * @return array
  */
 function paginate($arguments = null, $items_per_page = 10, $current_page = 1)
 {
     if (isset($this) && instance_of($this, 'SharedObjects')) {
         return parent::paginate($arguments, $items_per_page, $current_page);
     } else {
         return SharedObjects::instance()->paginate($arguments, $items_per_page, $current_page);
     }
     // if
 }
Ejemplo n.º 5
0
 function getUsersSharing($objectid, $manager)
 {
     return SharedObjects::findAll(array('conditions' => "`object_id` = " . $objectid . " AND `object_manager` = '" . $manager . "'"));
 }