예제 #1
0
 /**
  * Return list of the "Button" widgets
  *
  * @return array
  */
 protected function getFormButtons()
 {
     $result = parent::getFormButtons();
     if ($this->getModule() && 'CDev\\Bestsellers' == $this->getModule()->getActualName()) {
         $result['sales_calculation'] = new \XLite\View\Button\Link(array(\XLite\View\Button\AButton::PARAM_LABEL => 'Sales calculation', \XLite\View\Button\Link::PARAM_LOCATION => $this->buildURL('sales_calculation', 'sales', array(\XLite::FORM_ID => \XLite::getFormId())), \XLite\View\Button\AButton::PARAM_STYLE => 'action always-enabled'));
     }
     return $result;
 }
예제 #2
0
 /**
  * getDefaultFieldValue
  *
  * @param string $name Field name
  *
  * @return mixed
  */
 public function getDefaultFieldValue($name)
 {
     $value = parent::getDefaultFieldValue($name);
     switch ($name) {
         case 'added':
         case 'last_login':
             if (0 < $value) {
                 $value = date('r', $value);
             } else {
                 $value = 'never';
             }
             break;
         case 'referer':
             $value = $value ?: 'unknown';
             break;
         case 'orders_count':
             if ($value) {
                 $url = $this->buildURL('order_list', 'searchByCustomer', array('profileId' => $this->getModelObject()->getProfileId(), \XLite::FORM_ID => \XLite::getFormId()));
                 $value = '<a href="' . $url . '">' . $value . '</a>';
             } else {
                 $value = 'n/a';
             }
             break;
         case 'language':
             $lng = $value ? \XLite\Core\Database::getRepo('XLite\\Model\\Language')->findOneByCode($value) : null;
             $value = isset($lng) ? $lng->getName() : $value;
             break;
         case 'pending_membership_id':
             $value = 0 < $value ? $this->getModelObject()->getPendingMembership()->getName() : static::t('none');
             break;
         case 'roles':
             if ($this->getModelObject() && \XLite\Core\Auth::getInstance()->isPermissionAllowed(\XLite\Model\Role\Permission::ROOT_ACCESS) && \XLite\Core\Auth::getInstance()->getProfile()->getProfileId() == $this->getModelObject()->getProfileId()) {
                 if ($value) {
                     $roles = array();
                     /** @var \XLite\Model\Role $role */
                     foreach ($value as $role) {
                         $roles[] = $role->getPublicName();
                     }
                     $value = implode(', ', $roles);
                 }
             }
             break;
         case 'forceChangePassword':
             $value = $this->isRegisterMode() ? true : $this->getModelObject()->getForceChangePassword();
             break;
         default:
     }
     return $value;
 }
예제 #3
0
 /**
  * Return URL parameters to use in AJAX popup
  *
  * @return array
  */
 protected function prepareURLParams()
 {
     return array('target' => 'addon_install', 'action' => 'select_installation_type', \XLite::FORM_ID => \XLite::getFormId(true), 'widget' => '\\XLite\\View\\ModulesManager\\InstallationType', 'moduleIds' => $this->getModuleIds());
 }
예제 #4
0
 protected function getXliteFormIDText()
 {
     static $formId = null;
     if (!isset($formId)) {
         $formId = \XLite::getFormId();
     }
     return $formId;
 }
예제 #5
0
 /**
  * Compose URL from target, action and additional params
  *
  * @param string  $target      Page identifier OPTIONAL
  * @param string  $action      Action to perform OPTIONAL
  * @param array   $params      Additional params OPTIONAL
  * @param boolean $forceCuFlag Force flag - use Clean URL OPTIONAL
  *
  * @return string
  */
 public function buildURL($target = '', $action = '', array $params = array(), $forceCuFlag = null)
 {
     if ('' !== $target && ('' !== $action || isset($params['action']) && '' !== $params['action'])) {
         $class = \XLite\Core\Converter::getControllerClass($target);
         $paramAction = isset($params['action']) ? $params['action'] : $action;
         if ($class && $class::needFormId() && !in_array($paramAction, $class::defineFreeFormIdActions())) {
             $params[\XLite::FORM_ID] = \XLite::getFormId(empty($params['static_form_id']));
         }
     }
     return \XLite\Core\Converter::buildURL($target, $action, $params, null, false, $forceCuFlag);
 }
예제 #6
0
 /**
  * Save search conditions
  *
  * @return void
  */
 protected function doActionUpdate()
 {
     $select = array();
     foreach ((array) \XLite\Core\Request::getInstance()->select as $key => $value) {
         $select[] = 'select[]=' . $key;
     }
     $this->setHardRedirect();
     $this->setReturnURL(\XLite\Core\Request::getInstance()->{\XLite\View\Button\PopupProductSelector::PARAM_REDIRECT_URL} . '&' . implode('&', $select) . '&' . \XLite::FORM_ID . '=' . \XLite::getFormId(true));
 }
예제 #7
0
파일: AForm.php 프로젝트: kirkbauer2/kirkxc
 /**
  * Return list of additional params
  *
  * @return array
  */
 protected function getFormParams()
 {
     $params = array_merge($this->getCommonFormParams(), $this->getParam(self::PARAM_FORM_PARAMS));
     if ($this->hasFormId()) {
         $params[\XLite::FORM_ID] = \XLite::getFormId();
     }
     if ('post' === $this->getParam(self::PARAM_FORM_METHOD)) {
         $this->setReturnURLParam($params);
     }
     return $params;
 }
예제 #8
0
 /**
  * Return field value
  *
  * @return mixed
  */
 public function getValue()
 {
     return \XLite::getFormId();
 }