/**
  * 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, 'ProjectCategories')) {
         return parent::paginate($arguments, $items_per_page, $current_page);
     } else {
         return ProjectCategories::instance()->paginate($arguments, $items_per_page, $current_page);
     }
     // if
 }
 /**
  * Delete specific category
  *
  * @access public
  * @param void
  * @return null
  */
 function delete_category()
 {
     $category = ProjectCategories::findById(get_id());
     if (!$category instanceof ProjectCategory) {
         flash_error(lang('category dnx'));
         $this->redirectTo('tickets', 'categories');
     }
     // if
     if (!$category->canDelete(logged_user())) {
         flash_error(lang('no access permissions'));
         $this->redirectToReferer(get_url('tickets', 'categories'));
     }
     // if
     try {
         DB::beginWork();
         $category->delete();
         ApplicationLogs::createLog($category, $category->getProject(), ApplicationLogs::ACTION_DELETE);
         DB::commit();
         flash_success(lang('success deleted category', $category->getName()));
     } catch (Exception $e) {
         DB::rollback();
         flash_error(lang('error delete category'));
     }
     // try
     $this->redirectTo('tickets', 'categories');
 }
 /**
  * Return owner user or company
  *
  * @access public
  * @param void
  * @return ApplicationDataObject
  */
 function getCategory()
 {
     if ($this->getCategoryId() > 0) {
         return ProjectCategories::findById($this->getCategoryId());
     } else {
         return null;
     }
     // if
 }
Exemple #4
0
 /**
 * Return all categories
 *
 * @param void
 * @return array
 */
 function getCategories() {
   if(is_null($this->categories)) {
     $this->categories = ProjectCategories::getProjectCategories($this);
   } // if
   return $this->categories;
 } // getCategories
 /**
  * Return manager instance
  *
  * @access protected
  * @param void
  * @return ProjectCategories
  */
 function manager()
 {
     if (!$this->manager instanceof ProjectCategories) {
         $this->manager = ProjectCategories::instance();
     }
     return $this->manager;
 }