/** * 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 }
function getUsersSharing($objectid, $manager) { return SharedObjects::findAll(array('conditions' => "`object_id` = " . $objectid . " AND `object_manager` = '" . $manager . "'")); }