/** * Creates request for files * * @param query RM_Db_Query Optional query * @param aliases hash Optional aliases * @param factory RM_Store_iFactory Optional factory * @return RM_Store_iRequest<RM_ObjectFs_Entity> */ public function requestFiles(RM_Db_Query $query = NULL, array $extraAliases = array(), RM_Store_iFactory $factory = NULL) { if ($query) { return $this->_fileStorage->request($query, $extraAliases, $factory); } list($query, $binds) = $this->createFilesQuery('file', $extraAliases, array('permissions' => array('ri' => 'OFS-READ-INFO'))); $request = $this->_fileStorage->request($query, $extraAliases, $factory); return call_user_func_array(array($request, 'filter'), array_merge(array('file_access_ri = ?'), $binds, array(PERM_ALLOW))); }
public function getDecoratedColumsList(RM_List_Object $object, RM_Account_iUser $user) { $query = M('Db')->createQuery($this->_tables['column'] . ' as c')->what('c.*, uc.user_id, uc.visible as d_visible, uc.ord_id as d_ord_id')->join('c', 'LEFT JOIN ' . $this->_tables['user_column'] . ' uc ON uc.user_id = ? AND uc.column_id=c.id', $user->id())->where('c.list_id = ? ', $object->id()); $extraAliases = array('user_id' => 'uc.user_id', 'ord_id' => 'if(uc.ord_id is null, c.ord_id, uc.ord_id)', 'visible' => 'if(ifnull(c.visible,0)=0,0,if(uc.visible is null, c.visible, uc.visible))'); return $this->_column->request($query, $extraAliases, M('List')->getDecoratorFactory()); }
/** * Retrievs a list of objects which depends on the given object. * * @param RM_Memento_Object $object * @return RM_Store_iRequest<RM_Memento_Object> */ public function getDependedList(RM_Memento_Object $object) { $query = M('Db')->createQuery($this->_tables['dep'] . ' dep')->what('s.*')->join('dep', 'LEFT JOIN ' . $this->_tables['store'] . ' s on dep.slave_id=s.id')->where('dep.master_id=?', $object->id()); return $this->_storage->request($query, qw2('cdate>dep.cdate pos>dep.pos')); }