예제 #1
0
 /**
  * Delete this object and reset all relationship. This function will not delete any of related objec
  *
  * @access public
  * @param void
  * @return boolean
  */
 function delete()
 {
     // permanently delete objects set as template (were created specifically for this template)
     $objs = $this->getObjects();
     foreach ($objs as $o) {
         if ($o->isTemplate()) {
             $o->delete();
         }
     }
     $this->removeObjects();
     TemplateParameters::deleteParametersByTemplate($this->getId());
     TemplateObjectProperties::deletePropertiesByTemplate($this->getId());
     parent::delete();
 }
 /**
  * Return manager instance
  *
  * @access protected
  * @param void
  * @return TemplateParameters
  */
 function manager()
 {
     if (!$this->manager instanceof TemplateParameters) {
         $this->manager = TemplateParameters::instance();
     }
     return $this->manager;
 }
 /**
  * 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, 'TemplateParameters')) {
         return parent::paginate($arguments, $items_per_page, $current_page);
     } else {
         return TemplateParameters::instance()->paginate($arguments, $items_per_page, $current_page);
     }
     // if
 }
 function instantiate_parameters()
 {
     if (is_array(array_var($_POST, 'parameterValues'))) {
         ajx_current("back");
         $this->instantiate();
     } else {
         $id = get_id();
         $parameters = TemplateParameters::getParametersByTemplate($id);
         $params = array();
         foreach ($parameters as $parameter) {
             $params[] = array('name' => $parameter->getName(), 'type' => $parameter->getType());
         }
         tpl_assign('id', $id);
         tpl_assign('parameters', $params);
     }
 }
 function instantiate_parameters()
 {
     if (is_array(array_var($_POST, 'parameterValues'))) {
         ajx_current("back");
         $ret = null;
         Hook::fire('before_instantiate_paramters', array_var($_POST, 'parameterValues'), $ret);
         $this->instantiate();
     } else {
         $id = get_id();
         $member_id = get_id('member_id');
         $parameters = TemplateParameters::getParametersByTemplate($id);
         $params = array();
         foreach ($parameters as $parameter) {
             $params[] = array('name' => $parameter->getName(), 'type' => $parameter->getType(), 'default_value' => $parameter->getDefaultValue());
         }
         tpl_assign('id', $id);
         tpl_assign('member_id', $member_id);
         tpl_assign('parameters', $params);
     }
 }
	/**
	 * Return manager instance
	 *
	 * @access protected
	 * @param void
	 * @return TemplateParameters
	 */
	function manager() {
		if(!($this->manager instanceof TemplateParameters)) $this->manager = TemplateParameters::instance();
		return $this->manager;
	} // manager