/** * Delete project and all realted data * * @param void * @return null */ function delete() { db_begin_work(); $delete = parent::delete(); if ($delete && !is_error($delete)) { ProjectObjects::deleteByProject($this); ProjectUsers::deleteByProject($this); PinnedProjects::deleteByProject($this); search_index_remove($this->getId(), 'Project'); clean_project_permissions_cache($this); event_trigger('on_project_deleted', array($this)); db_commit(); } else { db_rollback(); } // if return $delete; }