Example #1
0
 /**
  * Extension of the Abstract Record to delete an item.
  *
  * @return void
  */
 public function delete()
 {
     $moduleId = Phprojekt_Module::getId($this->getModelName());
     $this->deleteUploadFiles();
     $this->_history->saveFields($this, 'delete');
     $this->_search->deleteObjectItem($this);
     $this->_rights->saveRights($moduleId, $this->id, array());
     parent::delete();
 }
Example #2
0
 /**
  * Prevent delete modules from the Frontend.
  * For delete modules use safeDelete.
  *
  * @return void
  */
 public function delete()
 {
     // Delete all the project-module relations
     $project = new Project_Models_ProjectModulePermissions();
     $project->deleteModuleRelation($this->id);
     // Delete all the role-module relations
     $role = new Phprojekt_Role_RoleModulePermissions();
     $role->deleteModuleRelation($this->id);
     // Delete the items and tags
     $tag = new Phprojekt_Tags();
     $model = Phprojekt_Loader::getModel($this->name, $this->name);
     if ($model instanceof Phprojekt_ActiveRecord_Abstract) {
         $results = $model->fetchAll();
         if (is_array($results)) {
             foreach ($results as $record) {
                 $tag->deleteTagsForModuleItem($this->id, $record->id);
                 // @todo: Improve the delete routine for modules with a lot of entries.
                 $record->delete();
             }
         }
     }
     // Delete Files
     $this->_deleteFolder(PHPR_USER_CORE_PATH . $this->name);
     // Delete module entry
     parent::delete();
 }
Example #3
0
 /**
  * Delete a role and all his relations.
  * It prevents deletion of role 1 -admin role-.
  *
  * @return void
  */
 public function delete()
 {
     if ($this->id > 1) {
         parent::delete();
     }
 }
Example #4
0
 /**
  * Delete only the own records
  *
  * @return boolean
  */
 public function delete()
 {
     if ($this->ownerId == Phprojekt_Auth::getUserId()) {
         return parent::delete();
     } else {
         return false;
     }
 }
Example #5
0
 /**
  * Prevent delete modules from the Frontend.
  * For delete modules use safeDelete.
  *
  * @return void
  */
 public function delete()
 {
     // Delete all the project-module relations
     $project = Phprojekt_Loader::getModel('Project', 'ProjectModulePermissions');
     $project->deleteModuleRelation($this->id);
     // Delete all the role-module relations
     $role = Phprojekt_Loader::getLibraryClass('Phprojekt_Role_RoleModulePermissions');
     $role->deleteModuleRelation($this->id);
     // Delete the items and tags
     $tag = Phprojekt_Tags::getInstance();
     $model = Phprojekt_Loader::getModel($this->name, $this->name);
     $results = $model->fetchAll();
     foreach ($results as $record) {
         $tag->deleteTagsByItem($this->id, $record->id);
         $record->delete();
     }
     // Delete Files
     $this->_deleteFolder(PHPR_CORE_PATH . DIRECTORY_SEPARATOR . $this->name);
     // Delete module entry
     parent::delete();
 }