Example #1
0
 /**
  * Returns field definition.
  *
  * @param bool $reload True to reload data from server. False to use the cached value (if present).
  * @return kyCustomFieldDefinition
  */
 public function getDefinition($reload = false)
 {
     if ($this->definition !== null && !$reload) {
         return $this->definition;
     }
     $this->definition = kyCustomFieldDefinition::getAll()->filterByName($this->getName())->first();
     return $this->definition;
 }
 /**
  * Returns field definition.
  *
  * @param bool $reload True to reload data from server. False to use the cached value (if present).
  * @return kyCustomFieldDefinition
  */
 public function getDefinition($reload = false)
 {
     if ($this->definition !== null && !$reload) {
         return $this->definition;
     }
     /** @noinspection PhpUndefinedMethodInspection */
     $this->definition = kyCustomFieldDefinition::getAll()->filterByName($this->getName())->first();
     return $this->definition;
 }
    $smarty->assign('_departmentFormURL', WHMCS_URL . 'submitticket.php?step=2');
    $templatefile = "selectdepartment";
} else {
    if ($_REQUEST['step'] == 2) {
        if (!empty($_POST['departmentid'])) {
            // get priorities of 'public' type only
            $_ticketPriorityContainer = kyTicketPriority::getAll()->filterByType(kyTicketPriority::TYPE_PUBLIC)->orderByDisplayOrder();
            $_ticketPriorities = [];
            foreach ($_ticketPriorityContainer as $_ticketPriorityObject) {
                $_ticketPriority['priorityid'] = $_ticketPriorityObject->getId();
                $_ticketPriority['title'] = $_ticketPriorityObject->getTitle();
                $_ticketPriorities[] = $_ticketPriority;
            }
            $smarty->assign('_ticketPriorities', $_ticketPriorities);
            //Get Ticket Custom fields
            $_customFieldObjectContainer = kyCustomFieldDefinition::getAll();
            $_customFields = [];
            foreach ($_customFieldObjectContainer as $_customFieldObject) {
                $_customFields[$_customFieldObject->getGroupId()][] = RenderCustomField($_customFieldObject, MODE_INSERT);
            }
            // Custom field groups
            $_customFieldGroupContainer = [];
            // fetch custom field groups based on selected department
            $_customFieldGroupObjectContainer = kyCustomFieldGroup::getAll(['departmentid' => $_POST['departmentid']])->filterByGroupType([kyCustomFieldGroup::GROUP_STAFFTICKET, kyCustomFieldGroup::GROUP_STAFFUSERTICKET, kyCustomFieldGroup::GROUP_USERTICKET]);
            foreach ($_customFieldGroupObjectContainer as $_customFieldGroupObject) {
                if (isset($_customFields[$_customFieldGroupObject->getId()])) {
                    $_customFieldGroup = [];
                    $_customFieldGroup['title'] = $_customFieldGroupObject->getTitle();
                    $_customFieldGroup['_fields'] = $_customFields[$_customFieldGroupObject->getId()];
                    $_customFieldGroupContainer[$_customFieldGroupObject->getId()] = $_customFieldGroup;
                }