function hasObject($object)
 {
     return TemplateObjects::templateHasObject($this, $object);
 }
 /**
  * Delete this task lists
  *
  * @access public
  * @param boolean $delete_childs
  * @return boolean
  */
 function delete($delete_children = true)
 {
     if ($delete_children) {
         $children = $this->getSubTasks();
         foreach ($children as $child) {
             $child->delete(true);
         }
     }
     ProjectTaskDependencies::delete('( task_id = ' . $this->getId() . ' OR previous_task_id = ' . $this->getId() . ')');
     TemplateObjects::removeObjectFromTemplates($this);
     $task_list = $this->getParent();
     if ($task_list instanceof TemplateTask) {
         $task_list->detachTask($this);
     }
     return parent::delete();
 }
 /**
  * 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, 'TemplateObjects')) {
         return parent::paginate($arguments, $items_per_page, $current_page);
     } else {
         return TemplateObjects::instance()->paginate($arguments, $items_per_page, $current_page);
     }
     // if
 }
 /**
  * Return manager instance
  *
  * @access protected
  * @param void
  * @return TemplateObjects
  */
 function manager()
 {
     if (!$this->manager instanceof TemplateObjects) {
         $this->manager = TemplateObjects::instance();
     }
     return $this->manager;
 }
 /**
  * Removes this object from COTemplate objects
  *
  */
 function removeFromCOTemplates()
 {
     TemplateObjects::removeObjectFromTemplates($this);
 }
	/**
	 * Return manager instance
	 *
	 * @access protected
	 * @param void
	 * @return TemplateObjects
	 */
	function manager() {
		if(!($this->manager instanceof TemplateObjects)) $this->manager = TemplateObjects::instance();
		return $this->manager;
	} // manager