/** * Adds an object to the instance pool. * * Propel keeps cached copies of objects in an instance pool when they are retrieved * from the database. In some cases -- especially when you override doSelect*() * methods in your stub classes -- you may need to explicitly add objects * to the cache in order to ensure that the same objects are always returned by doSelect*() * and retrieveByPK*() calls. * * @param DirectoryPermission $value A DirectoryPermission object. * @param string $key (optional) key to use for instance map (for performance boost if key was already calculated externally). */ public static function addInstanceToPool(DirectoryPermission $obj, $key = null) { if (Propel::isInstancePoolingEnabled()) { if ($key === null) { $key = serialize(array((string) $obj->getId(), (string) $obj->getGroupId())); } // if key === null self::$instances[$key] = $obj; } }
/** * Exclude object from result * * @param DirectoryPermission $directoryPermission Object to remove from the list of results * * @return DirectoryPermissionQuery The current query, for fluid interface */ public function prune($directoryPermission = null) { if ($directoryPermission) { $this->addCond('pruneCond0', $this->getAliasedColName(DirectoryPermissionPeer::ID), $directoryPermission->getId(), Criteria::NOT_EQUAL); $this->addCond('pruneCond1', $this->getAliasedColName(DirectoryPermissionPeer::GROUP_ID), $directoryPermission->getGroupId(), Criteria::NOT_EQUAL); $this->combine(array('pruneCond0', 'pruneCond1'), Criteria::LOGICAL_OR); } return $this; }
public function save() { if (Flash::noErrors()) { $this->sFilePath = self::normalize($_POST['file_path']); if ($_POST['file_path_old'] == self::NEW_DIR_IDENTIFIER) { mkdir("{$this->sWebdavBaseDirPath}/{$this->sFilePath}"); } else { if ($this->sFilePath !== $_POST['file_path_old']) { rename($this->sWebdavBaseDirPath . "/" . $_POST['file_path_old'], "{$this->sWebdavBaseDirPath}/{$this->sFilePath}"); } } // delete all old groups foreach (DirectoryPermissionPeer::getPermissionsByFileName($this->sFilePath) as $oPermission) { $oPermission->delete(); } if (isset($_POST['group_ids'])) { foreach ($_POST['group_ids'] as $sGroupId) { $oDirectoryPermisson = new DirectoryPermission(); $oDirectoryPermisson->setFileName($this->sFilePath); $oDirectoryPermisson->setGroupId($sGroupId); $oDirectoryPermisson->setCreatedBy(Session::getSession()->getUserId()); $oDirectoryPermisson->setCreatedAt(date('c')); $oDirectoryPermisson->save(); } } LinkUtil::redirect($this->link($this->sFilePath)); } }