Beispiel #1
0
 public function __construct($options = null)
 {
     // variable
     parent::__construct($options);
     $baseDir = $options['baseDir'];
     // name
     $name = new Zend_Form_Element_Text('EGI_Name');
     $name->setLabel($this->getView()->getCibleText('form_label_name'))->setRequired(true)->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty', true, array('messages' => array('isEmpty' => $this->getView()->getCibleText('validation_message_empty_field'))))->setAttrib('class', 'stdTextInput');
     $this->addElement($name);
     // description
     $description = new Zend_Form_Element_Textarea('EGI_Description');
     $description->setLabel($this->getView()->getCibleText('form_label_description'))->setRequired(true)->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty', true, array('messages' => array('isEmpty' => $this->getView()->getCibleText('validation_message_empty_field'))))->setAttrib('class', 'stdTextareaEdit');
     $this->addElement($description);
     //status
     $status = new Zend_Form_Element_Select('EG_Status');
     $status->setLabel($this->getView()->getCibleText('form_label_status'))->setAttrib('class', 'stdSelect');
     $status = Cible_FunctionsGeneral::fillStatusSelectBox($status, 'Extranet_Groups', 'EG_Status');
     $this->addElement($status);
     // Hidden GroupID
     $groupID = new Zend_Form_Element_Hidden('groupID');
     $groupID->removeDecorator('label');
     $groupID->removeDecorator('DtDdWrapper');
     if (isset($options['groupID'])) {
         $groupID->setValue($options['groupID']);
     }
     $this->addElement($groupID);
 }
Beispiel #2
0
 /**
  * Build a query to find all the retailers to display on web according filter
  *
  * @param array $params     Contains parameters that allow to build a query.
  * @param int   $retailerId Only required if we want to fetch data for a single retailer.
  * @param int   $langId     The language id.
  *
  * @return array
  */
 public function getRetailersDataByCities(array $params, $retailerId = null, $langId = null)
 {
     if (is_null($langId)) {
         $langId = Zend_Registry::get('languageID');
     }
     $filters = array('countryId' => array('table' => $this->countriesTable, 'joinOn' => $this->countriesTable . '.CI_CountryID = ' . $this->countryId, 'fields' => array('countryName' => $this->countriesTable . '.CI_Name'), 'langFilter' => ' AND ' . $this->countriesTable . '.CI_LanguageID = ' . $langId), 'stateId' => array('table' => $this->statesTable, 'joinOn' => $this->stateId . ' = SI_StateID', 'fields' => array('stateName' => $this->statesTable . '.SI_Name'), 'langFilter' => ' AND ' . $this->statesTable . '.SI_LanguageID = ' . $langId), 'cityId' => array('table' => $this->citiesTable, 'joinOn' => $this->cityId . ' = ' . $this->citiesTable . '.C_ID', 'fields' => array('cityName' => $this->citiesTable . '.C_Name'), 'langFilter' => ' AND ' . $this->citiesTable . '.CI_LanguageID = ' . $langId));
     $select = $this->getAll($langId, false);
     $select->join($this->_table, 'MP_GenericProfileMemberID=R_GenericProfileId', array('RetailerId' => 'MP_GenericProfileMemberID', 'CompanyName' => 'MP_CompanyName'));
     $select->join($this->adresseTable, 'AI_AddressId=R_AddressId AND AI_LanguageID = ' . $langId, array('Name' => 'AI_Name', 'AddressId' => 'AI_AddressId', 'FirstAddress' => 'AI_FirstAddress', 'SecondAddress' => 'AI_SecondAddress', 'FirstTel' => 'AI_FirstTel', 'FirstExt' => 'AI_FirstExt', 'SecondTel' => 'AI_SecondTel', 'SecondExt' => 'AI_SecondExt', 'Website' => 'AI_WebSite'));
     $select->join($this->adresseTableData, 'AI_AddressId=A_AddressId AND AI_LanguageID = ' . $langId, array('ZipCode' => 'A_ZipCode', 'Fax' => 'A_Fax', 'Email' => 'A_Email'));
     $tmpData = $filters[$params['field']];
     switch ($params['field']) {
         case 'countryId':
             $hasStates = Cible_FunctionsGeneral::getStateByCode($params['value'], null, $langId);
             if (count($hasStates) > 0) {
                 $select->joinLeft($this->statesTable, $this->stateId . ' = SI_StateID' . $filters['stateId']['langFilter'], array('stateName' => $this->statesTable . '.SI_Name'))->joinLeft($this->citiesTable, $this->cityId . ' = ' . $this->citiesTable . '.C_ID', array('cityName' => $this->citiesTable . '.C_Name'));
             }
             $select->joinLeft($tmpData['table'], $tmpData['joinOn'] . $tmpData['langFilter'], $tmpData['fields'])->distinct();
             break;
         case 'stateId':
             $select->joinLeft($this->citiesTable, $this->cityId . ' = ' . $this->citiesTable . '.C_ID', array('cityName' => $this->citiesTable . '.C_Name'))->joinLeft($tmpData['table'], $tmpData['joinOn'] . $tmpData['langFilter'], $tmpData['fields'])->distinct();
             break;
         case 'cityId':
             $select->joinLeft($this->statesTable, $this->stateId . ' = SI_StateID' . $filters['stateId']['langFilter'], array('stateName' => $this->statesTable . '.SI_Name'))->joinLeft($tmpData['table'], $tmpData['joinOn'], $tmpData['fields'])->distinct();
             break;
         default:
             break;
     }
     $select->where('MP_Status = 2')->where('R_Status = 2')->where($this->{$params}['field'] . ' = ?', $params['value'])->order($this->_orderField);
     if ($retailerId) {
         $select->where('MP_GenericProfileMemberID = ?', $retailerId);
     }
     $retailers = $this->_db->fetchAll($select);
     return $retailers;
 }
 public static function indexationSearch($searchParams)
 {
     Zend_Search_Lucene::setDefaultSearchField('contents');
     $directory = Zend_Registry::get('lucene_index');
     $index = new Zend_Search_Lucene($directory);
     $words = strtolower(Cible_FunctionsGeneral::removeAccents(Cible_FunctionsGeneral::html2text(utf8_decode($searchParams['words']))));
     $wordsArray = explode(' ', $words);
     if (count($wordsArray) > 1) {
         $query = new Zend_Search_Lucene_Search_Query_Phrase($wordsArray);
     } else {
         if (strlen($words) >= 3) {
             $pattern = new Zend_Search_Lucene_Index_Term("{$words}*");
             $query = new Zend_Search_Lucene_Search_Query_Wildcard($pattern);
         } else {
             $term = new Zend_Search_Lucene_Index_Term($words);
             $query = new Zend_Search_Lucene_Search_Query_Term($term);
         }
     }
     $hits = $index->find($query);
     //echo($query);
     $i = 0;
     $result = array();
     foreach ($hits as $hit) {
         $result[$i]['moduleID'] = $hit->moduleID;
         $result[$i]['pageID'] = $hit->pageID;
         $result[$i]['contentID'] = $hit->contentID;
         $result[$i]['languageID'] = $hit->languageID;
         $result[$i]['title'] = $hit->title;
         $result[$i]['text'] = $hit->text;
         $result[$i]['link'] = $hit->link;
         $i++;
     }
     return $result;
 }
Beispiel #4
0
 public function __construct($options = null)
 {
     $this->_disabledDefaultActions = true;
     parent::__construct($options);
     $countries = Cible_FunctionsGeneral::getCountries();
     $states = Cible_FunctionsGeneral::getStates();
 }
 /**
  * Get data and build the list for the options in select and choices.
  *
  * @param int $optionId Id of the response option.
  * @param int $langId Id of the language.
  *
  * @return string $html
  */
 public function getOptionsList($optionId, $langId, $value = null)
 {
     $this->_selectResponseOptions($optionId, $langId);
     $nbDefaultLine = count($this->_dataRespOpt);
     if ($nbDefaultLine == 0) {
         $this->_selectResponseOptions($optionId, Cible_Controller_Action::getDefaultEditLanguage());
     }
     if (count($this->_dataRespOpt) == 0 && $langId == Cible_Controller_Action::getDefaultEditLanguage()) {
         $languages = Cible_FunctionsGeneral::getAllLanguage();
         foreach ($languages as $key => $lang) {
             if ($lang['L_ID'] != $langId) {
                 $this->getOptionsList($optionId, $lang['L_ID']);
                 break;
             }
         }
     }
     if (count($this->_dataRespOpt)) {
         $this->_typeName = $this->_dataRespOpt[0]['FRO_Type'];
     }
     if ($this->_typeName == "select") {
         $html = $this->selectValuesList($nbDefaultLine);
     } else {
         $html = $this->choiceValuesList($nbDefaultLine);
     }
     return $html;
 }
Beispiel #6
0
 /**
  * Add a new section to the form
  *
  * @return void
  */
 public function addAction()
 {
     if ($this->view->aclIsAllowed($this->view->current_module, 'edit')) {
         $data = $this->_getAllParams();
         $data['FTI_Text'] = $data['FTI_Text'];
         if ($data['model'] != 'Form') {
             $dataObject = 'Form' . ucfirst($data['model']) . 'Object';
         } else {
             $dataObject = ucfirst($data['model']) . 'Object';
         }
         $oForm = new $dataObject();
         $initData = $oForm->getInitialData($data);
         if (count($initData) > 0) {
             $saved = $oForm->insert($data, $initData['lang']);
             $languages = Cible_FunctionsGeneral::getAllLanguage();
             foreach ($languages as $key => $lang) {
                 if ($lang['L_ID'] != $initData['lang']) {
                     $oForm->save($saved, $data, $lang['L_ID']);
                 }
             }
         } else {
             $saved = '0';
         }
         echo $saved;
     }
     exit;
 }
Beispiel #7
0
 public function __construct($options = null)
 {
     parent::__construct($options);
     // Title
     $title = new Zend_Form_Element_Text('NR_Title');
     $title->setLabel($this->getView()->getCibleText('form_label_title'))->setRequired(true)->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty', true, array('messages' => array('isEmpty' => $this->getView()->getCibleText('validation_message_empty_field'))))->setAttrib('class', 'stdTextInput');
     $this->addElement($title);
     // Date picker
     $datePicker = new Cible_Form_Element_DatePicker('NR_Date', array('jquery.params' => array('changeYear' => true, 'changeMonth' => true)));
     $datePicker->setLabel($this->getView()->getCibleText('form_extranet_newsletter_label_releaseDate'))->setRequired(true)->addValidator('NotEmpty', true, array('messages' => array('isEmpty' => $this->getView()->getCibleText('validation_message_empty_field'))))->addValidator('Date', true, array('messages' => array('dateNotYYYY-MM-DD' => $this->getView()->getCibleText('validation_message_invalid_date'), 'dateInvalid' => $this->getView()->getCibleText('validation_message_invalid_date'), 'dateFalseFormat' => $this->getView()->getCibleText('validation_message_invalid_date'))));
     $this->addElement($datePicker);
     // Language
     $language = new Zend_Form_Element_Select('NR_LanguageID');
     $language->setLabel($this->getView()->getCibleText('form_label_language'))->setAttrib('class', 'largeSelect');
     $languagesData = Cible_FunctionsGeneral::getAllLanguage();
     foreach ($languagesData as $languageData) {
         $language->addMultiOption($languageData['L_ID'], $languageData['L_Title']);
     }
     $this->addElement($language);
     // Category
     $category = new Zend_Form_Element_Select('NR_CategoryID');
     $category->setLabel($this->getView()->getCibleText('form_label_category'))->setAttrib('class', 'largeSelect');
     $categoriesData = $this->getView()->getAllNewsletterCategories();
     foreach ($categoriesData as $categoryData) {
         $category->addMultiOption($categoryData['C_ID'], $categoryData['CI_Title']);
     }
     $this->addElement($category);
     // Model
     $model = new Zend_Form_Element_Select('NR_ModelID');
     $model->setLabel($this->getView()->getCibleText('form_label_model'))->setAttrib('class', 'largeSelect');
     $modelsData = $this->getView()->getAllNewsletterModels();
     foreach ($modelsData as $modelData) {
         $model->addMultiOption($modelData['NMI_NewsletterModelID'], $modelData['NMI_Title']);
     }
     $this->addElement($model);
     //if($this->salutationDefaultText!=""){
     $intro = new Cible_Form_Element_Editor('NR_TextIntro', array('mode' => Cible_Form_Element_Editor::ADVANCED));
     $intro->setLabel($this->getView()->getCibleText('form_label_newsletter_text_intro'))->setAttrib('class', 'largeEditor');
     $this->addElement($intro);
     // show online
     $showOnline = new Zend_Form_Element_Checkbox('NR_Online');
     $showOnline->setLabel($this->getView()->getCibleText('form_label_showOnline'));
     $showOnline->setDecorators(array('ViewHelper', array('label', array('placement' => 'append')), array(array('row' => 'HtmlTag'), array('tag' => 'dd', 'class' => 'label_after_checkbox'))));
     $this->addElement($showOnline);
     // email
     //            $regexValidate = new Cible_Validate_Email();
     //            $regexValidate->setMessage($this->getView()->getCibleText('validation_message_emailAddressInvalid'), 'regexNotMatch');
     $email = new Zend_Form_Element_Text('NR_AdminEmail');
     $email->setLabel($this->getView()->getCibleText('newsletter_form_label_admin_email'))->addFilter('StripTags')->addFilter('StringTrim')->addFilter('StringToLower')->setAttrib('class', 'stdTextInput');
     /*$email->setDecorators(array(
           'ViewHelper',
           array('label', array('placement' => 'prepend')),
           array(array('row' => 'HtmlTag'), array('tag' => 'dd', 'class' => 'dd_form dd_email'))
       ));*/
     // $email->setAttrib('class', 'newsletter_form_element text_email');
     $this->addElement($email);
 }
 public function init()
 {
     parent::init();
     $this->view->language = Cible_FunctionsGeneral::getLanguageSuffix($this->_currentInterfaceLanguage);
     $this->view->headLink()->appendStylesheet($this->view->locateFile('newsletterStats.css'));
     $this->view->headScript()->appendFile($this->view->locateFile('jquery.dataTables.min.js', 'datatable'));
     $this->view->headScript()->appendFile($this->view->locateFile('dataTables.fourButtonNavigation.js', 'datatable/plugins'));
     $this->view->headScript()->appendFile($this->view->locateFile('statisticAction.js'));
     $this->nlObject = new NewsletterLog(array('moduleId' => $this->_moduleID));
 }
Beispiel #9
0
 public function __construct($options = null)
 {
     parent::__construct($options);
     $this->_currentEditLanguage = Zend_Registry::get('currentEditLanguage');
     $this->_labelCSS = Cible_FunctionsGeneral::getLanguageLabelColor($options);
     if (isset($options['addAction'])) {
         $this->_currentMode = 'add';
     }
     $lang = new Cible_Form_Element_LanguageSelector('langSelector', $this->_params, array('lang' => $this->_currentEditLanguage, 'mode' => $this->_currentMode));
     $lang->setValue($this->_currentEditLanguage)->removeDecorator('Label');
     $this->addElement($lang);
 }
Beispiel #10
0
 protected function add($blockID)
 {
     // add text
     $Languages = Cible_FunctionsGeneral::getAllLanguage();
     foreach ($Languages as $Lang) {
         $textData = new Text();
         $text = $textData->createRow();
         $text->TD_BlockID = $blockID;
         $text->TD_LanguageID = $Lang["L_ID"];
         $text->save();
     }
 }
Beispiel #11
0
 public function init()
 {
     parent::init();
     $this->view->assign('user', $this->view->auth());
     $session = new Cible_Sessions();
     // Defines the default interface language
     if ($this->_config->defaultInterfaceLanguage) {
         $this->_defaultInterfaceLanguage = $this->_config->defaultInterfaceLanguage;
     }
     // Check if the current interface language should be different than the default one
     $this->_currentInterfaceLanguage = !empty($session->languageID) ? $session->languageID : $this->_defaultInterfaceLanguage;
     if ($this->_getParam('setLang')) {
         $this->_currentInterfaceLanguage = Cible_FunctionsGeneral::getLanguageID($this->_getParam('setLang'));
     }
     // Registers the current interface language for future uses
     $this->_registry->set('languageID', $this->_currentInterfaceLanguage);
     $session->languageID = $this->_currentInterfaceLanguage;
     $suffix = Cible_FunctionsGeneral::getLanguageSuffix($this->_currentInterfaceLanguage);
     $this->_registry->set('languageSuffix', $suffix);
     // Defines the default edit language
     if ($this->_config->defaultEditLanguage) {
         $this->_currentEditLanguage = $this->_config->defaultEditLanguage;
     } else {
         $this->_currentEditLanguage = $this->_defaultEditLanguage;
     }
     $this->_currentEditLanguage = !empty($session->currentEditLanguage) ? $session->currentEditLanguage : $this->_currentEditLanguage;
     // Check if the current edit language should be different than the default one
     if ($this->_getParam('lang')) {
         $this->_currentEditLanguage = Cible_FunctionsGeneral::getLanguageID($this->_getParam('lang'));
     }
     // Registers the current edit language for future uses
     $this->_registry->set('currentEditLanguage', $this->_currentEditLanguage);
     $session->currentEditLanguage = $this->_currentEditLanguage;
     if (Cible_FunctionsGeneral::extranetLanguageIsAvailable($this->getCurrentInterfaceLanguage()) == 0) {
         $session = new Cible_Sessions();
         $this->_currentInterfaceLanguage = $this->_config->defaultInterfaceLanguage;
         // Registers the current interface language for future uses
         $this->_registry->set('languageID', $this->_currentInterfaceLanguage);
         $session->languageID = $this->_currentInterfaceLanguage;
         $suffix = Cible_FunctionsGeneral::getLanguageSuffix($this->_currentInterfaceLanguage);
         $this->_registry->set('languageSuffix', $suffix);
     }
     $hasProfile = false;
     $hasVideos = true;
     $modProfile = Cible_FunctionsModules::modulesProfile();
     if (count($modProfile) > 0) {
         $hasProfile = true;
     }
     $this->view->assign('hasProfile', $hasProfile);
     $this->view->assign('hasVideos', $hasVideos);
 }
Beispiel #12
0
 /**
  * Fetch items data for the product and build the rendering.
  *
  * @param int $id     Product id
  * @param int $langId 
  *
  * @return string
  */
 public function getAssociatedItems($id, $langId)
 {
     (string) ($html = "");
     $listArray = array();
     $select = $this->getAll($langId, false);
     $select->where($this->_constraint . ' = ?', $id)->order('II_Name');
     $data = $this->_db->fetchAll($select);
     $TITLE = 'Items(associez les items aux produits dans la GESTION DES ITEMS)';
     foreach ($data as $key => $item) {
         $listArray[$key][] = $item['II_Name'];
     }
     $html = Cible_FunctionsGeneral::generateHTMLTable($TITLE, array(array('Title' => '')), $listArray);
     return $html;
 }
Beispiel #13
0
 public function detailsAction()
 {
     if (!empty($_SERVER['HTTP_REFERER'])) {
         $this->view->assign('pagePrecedente', $_SERVER['HTTP_REFERER']);
     } else {
         $this->view->assign('pagePrecedente', '');
     }
     $titleUrl = Cible_FunctionsGeneral::getTitleFromPath($this->_request->getPathInfo());
     $id = 0;
     $events = new EventsCollection();
     if ($titleUrl != "") {
         $id = $events->getIdByName($titleUrl);
     }
     $this->view->assign('events', $events->getDetails($id));
 }
Beispiel #14
0
 public function __construct($options = null)
 {
     parent::__construct($options);
     if (!$this->_disabledLangSwitcher) {
         $this->_currentEditLanguage = Zend_Registry::get('currentEditLanguage');
         $this->_labelCSS = Cible_FunctionsGeneral::getLanguageLabelColor($options);
         if (isset($options['addAction'])) {
             $this->_currentMode = 'add';
         }
         $lang = new Cible_Form_Element_LanguageSelector('langSelector', $this->_params, array('lang' => $this->_currentEditLanguage, 'mode' => $this->_currentMode));
         $lang->setValue($this->_currentEditLanguage)->setDecorators(array('ViewHelper'));
         if (!$this->_disabledDefaultActions) {
             $this->addActionButton($lang);
         }
     }
 }
Beispiel #15
0
 private function _editAccountAdmin()
 {
     $states = Cible_FunctionsGeneral::getStatesByCountry($addressFact['A_CountryId']);
     foreach ($states as $value) {
         $tmpStates[$value['ID']] = $value['Name'];
     }
     $this->_view->assign('data', $this->_data['notifyAdmin']);
     $this->_view->assign('form', $this->_data['form']);
     $this->_view->assign('states', $tmpStates);
     $changesList = $this->_view->render('index/changesList.phtml');
     $this->_message = str_replace('##TABLE##', $changesList, $this->_message);
     foreach ($this->_data as $key => $value) {
         $search = '##' . $key . '##';
         $this->_message = str_replace($search, $value, $this->_message);
     }
 }
Beispiel #16
0
 public function ajaxStatesAction()
 {
     $filter = 0;
     if ($this->_isXmlHttpRequest) {
         $this->getHelper('viewRenderer')->setNoRender();
         $countryId = $this->_getParam('countryId');
         $languageId = $this->_getParam('langId');
         $filter = $this->_getParam('filter');
         $states = Cible_FunctionsGeneral::getStateByCode($countryId, null, $languageId);
         if (is_array($states)) {
             foreach ($states as $id => $data) {
                 $statesData[$id]['id'] = $data['id'];
                 $statesData[$id]['name'] = $data['name'];
             }
         }
         echo json_encode($statesData);
     }
 }
Beispiel #17
0
 public function detailsAction()
 {
     $_blockID = $this->_request->getParam('BlockID');
     $news = new NewsCollection($_blockID);
     $id = 0;
     $titleUrl = Cible_FunctionsGeneral::getTitleFromPath($this->_request->getPathInfo());
     if ($titleUrl != "") {
         $id = $news->getIdByName($titleUrl);
     }
     $listall_page = Cible_FunctionsCategories::getPagePerCategoryView($news->getBlockParam('1'), 'listall');
     $this->view->assign('params', $news->getBlockParams());
     $this->view->assign('news', $news->getDetails($id));
     if (!empty($_SERVER['HTTP_REFERER'])) {
         $this->view->assign('pagePrecedente', $_SERVER['HTTP_REFERER']);
     } else {
         $this->view->assign('pagePrecedente', '');
     }
     $this->view->assign('listall_page', $listall_page);
 }
Beispiel #18
0
 public function __construct($options = null)
 {
     parent::__construct($options);
     $labelCSS = Cible_FunctionsGeneral::getLanguageLabelColor($options);
     $imageSrc = $options['imageSrc'];
     $dataId = $options['dataId'];
     $imgField = $options['imgField'];
     $isNewImage = $options['isNewImage'];
     $moduleName = $options['moduleName'];
     if ($dataId == '') {
         $pathTmp = "../../../../../data/images/" . $moduleName . "/tmp";
     } else {
         $pathTmp = "../../../../../data/images/" . $moduleName . "/" . $dataId . "/tmp";
     }
     // hidden specify if new image for the news
     //        $newImage = new Zend_Form_Element_Hidden('isNewImage', array('value' => $isNewImage));
     //        $newImage->removeDecorator('Label');
     //        $this->addElement($newImage);
     // Value of the reference
     $value = new Zend_Form_Element_Text('RI_Value');
     $value->setLabel($this->getView()->getCibleText('form_reference_value_label'))->setRequired(true)->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty', true, array('messages' => array('isEmpty' => $this->getView()->getCibleText('validation_message_empty_field'))))->setDecorators(array('ViewHelper', array('label', array('placement' => 'prepend')), array('Errors', array('placement' => 'append')), array(array('row' => 'HtmlTag'), array('tag' => 'dd', 'class' => 'form_title_inline', 'id' => 'title'))))->setAttrib('class', 'stdTextInput');
     $label = $value->getDecorator('Label');
     $label->setOption('class', $this->_labelCSS);
     $this->addElement($value);
     // List of Type
     $type = new Zend_Form_Element_Select('R_TypeRef');
     $type->setLabel($this->getView()->getCibleText('form_reference_type_label'))->setRequired(true)->addValidator('NotEmpty', true, array('messages' => array('isEmpty' => $this->getView()->getCibleText('validation_message_empty_field'))))->setAttrib('class', 'stdSelect')->setDecorators(array('ViewHelper', array('label', array('placement' => 'prepend')), array('Errors', array('placement' => 'append')), array(array('row' => 'HtmlTag'), array('tag' => 'dd', 'class' => 'form_title_inline', 'id' => 'title'))));
     $oRef = new ReferencesObject();
     $enums = $oRef->getEnum('R_TypeRef');
     $multiOptions = array();
     foreach ($enums as $enum) {
         $multiOptions[$enum] = $this->getView()->getCibleText('form_enum_' . $enum);
     }
     $type->addMultiOptions($multiOptions);
     $this->addElement($type);
     // Value of the reference
     $seq = new Zend_Form_Element_Text('RI_Seq');
     $seq->setLabel($this->getView()->getCibleText('form_reference_seq_label'))->setRequired(true)->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty', true, array('messages' => array('isEmpty' => $this->getView()->getCibleText('validation_message_empty_field'))))->setDecorators(array('ViewHelper', array('label', array('placement' => 'prepend')), array('Errors', array('placement' => 'append')), array(array('row' => 'HtmlTag'), array('tag' => 'dd', 'class' => 'form_title_inline', 'id' => 'title'))))->setAttrib('class', 'stdTextInput');
     $label = $seq->getDecorator('Label');
     $label->setOption('class', $this->_labelCSS);
     $this->addElement($seq);
 }
Beispiel #19
0
 public function __construct($options = null)
 {
     $baseDir = $options['baseDir'];
     $pageID = $options['pageID'];
     parent::__construct($options);
     /****************************************/
     // PARAMETERS
     /****************************************/
     // display news date (Parameter #1)
     $category = new Zend_Form_Element_Select('Param1');
     $category->setLabel($this->_view->getCibleText('form_select_option_rss_choose_category'))->setOrder(3);
     $categories = Cible_FunctionsGeneral::getRssCategories();
     foreach ($categories as $cat) {
         $category->addMultiOption($cat['C_ID'], $cat['CI_Title']);
     }
     $this->addElement($category);
     $this->removeDisplayGroup('parameters');
     $this->addDisplayGroup(array('Param999', 'Param1'), 'parameters');
     $parameters = $this->getDisplayGroup('parameters');
 }
Beispiel #20
0
 public function __construct($options = null)
 {
     parent::__construct($options);
     $labelCSS = Cible_FunctionsGeneral::getLanguageLabelColor($options);
     $imageSrc = $options['imageSrc'];
     $dataId = $options['dataId'];
     $imgField = $options['imgField'];
     $isNewImage = $options['isNewImage'];
     $moduleName = $options['moduleName'];
     if ($dataId == '') {
         $pathTmp = "../../../../../data/images/" . $moduleName . "/tmp";
     } else {
         $pathTmp = "../../../../../data/images/" . $moduleName . "/" . $dataId . "/tmp";
     }
     // Name of the group of banner
     $valueName = new Zend_Form_Element_Text('BG_Name');
     $valueName->setLabel($this->getView()->getCibleText('form_banner_name_label'))->setRequired(true)->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty', true, array('messages' => array('isEmpty' => $this->getView()->getCibleText('validation_message_empty_field'))))->setDecorators(array('ViewHelper', array('label', array('placement' => 'prepend')), array('Errors', array('placement' => 'append')), array(array('row' => 'HtmlTag'), array('tag' => 'dd', 'class' => 'form_title_inline', 'id' => 'title'))))->setAttrib('class', 'stdTextInput');
     $label = $valueName->getDecorator('Label');
     $label->setOption('class', $this->_labelCSS);
     $this->addElement($valueName);
 }
 function editAction()
 {
     // page title
     $this->view->title = $this->view->getCibleText('label_static_text_edition');
     // get param
     $identifierID = $this->_getParam('identifierID');
     $order = $this->_getParam('order');
     $tablePage = $this->_getParam('tablePage');
     $search = $this->_getParam('search');
     $paramsArray = array("order" => $order, "tablePage" => $tablePage, "search" => $search);
     // get static text data
     $staticTextData = Cible_FunctionsGeneral::getClientStaticText($identifierID, $this->_currentEditLanguage);
     /********** ACTIONS ***********/
     $returnLink = $this->view->url(array('controller' => 'static-texts', 'action' => 'index', 'identifierID' => null));
     $form = new FormStaticTexts(array('baseDir' => $this->view->baseUrl(), 'cancelUrl' => "{$returnLink}", 'identifierID' => $identifierID));
     $this->view->assign('identifierID', $identifierID);
     $this->view->assign('form', $form);
     if (!$this->_request->isPost()) {
         $form->populate($staticTextData->toArray());
     } else {
         $formData = $this->_request->getPost();
         if ($form->isValid($formData)) {
             $staticTextData['ST_Value'] = $form->getValue('ST_Value');
             /*$staticTextData['EU_FName']       = $form->getValue('EU_FName');
               $staticTextData['EU_Email']       = $form->getValue('EU_Email');
               $staticTextData['EU_Username']    = $form->getValue('EU_Username');*/
             // Sauvegarde des nouvelles données
             $staticTextData->save();
             // Sauvegarde de la cache
             $tag = 'client';
             if (in_array($tag, array('cible', 'client'))) {
                 $cache = Zend_Registry::get('cache');
                 $cache->clean(Zend_Cache::CLEANING_MODE_MATCHING_TAG, array($tag));
                 //$this->_redirect( 'cache' );
             }
             header("location:" . $returnLink);
         }
     }
 }
Beispiel #22
0
 protected function generateList($tree, $level = 1)
 {
     $content = '';
     foreach ($tree as $object) {
         $link = !empty($object['Link']) ? $object['Link'] : 'javascript:void(0);';
         $tmp = '';
         $title = $this->_stripHtml ? Cible_FunctionsGeneral::html2text($object['Title']) : $object['Title'];
         $tmp .= "<a id='menuTitle_{$object['ID']}' href='{$link}'>{$title}</a>";
         if (!empty($object['child'])) {
             $tmp .= "<ul class='{$this->_class}'>";
             $tmp .= $this->generateList($object['child'], $level + 1);
             $tmp .= '</ul>';
         }
         $attr['liClass'] = !empty($this->_customLiClass) ? $this->_customLiClass : '';
         if ($object['Placeholder'] == 2 && $level > 1) {
             $this->_showActions = false;
         } else {
             $this->_showActions = true;
         }
         $content .= str_replace(array('%OBJECT_ID%', '%LI_CLASS%'), array($object['ID'], $attr['liClass']), $this->_li_template) . $tmp . $this->showActions($object['ID']) . "</li>";
     }
     return $content;
 }
Beispiel #23
0
 function deleteMenuAction()
 {
     $this->view->assign('isXmlHttpRequest', $this->_isXmlHttpRequest);
     $this->view->assign('success', false);
     $_itemId = (int) $this->_request->getParam('itemID');
     $_menuId = (int) $this->_request->getParam('menuID');
     $this->disableView();
     if ($this->_request->isPost()) {
         $delete = isset($_POST['delete']);
         if ($delete) {
             $menuObject = new MenuObject($_menuId);
             $menuObject->deleteItem($_itemId);
             $dir = $this->_imgMenuFolder . $_itemId;
             Cible_FunctionsGeneral::delFolder($dir);
         }
     }
 }
Beispiel #24
0
 public function addResponseOptionAction()
 {
     $data = $this->_getAllParams();
     if ($data['model'] != 'Form') {
         $dataObject = 'Form' . ucfirst($data['model']) . 'Object';
     } else {
         $dataObject = ucfirst($data['model']) . 'Object';
     }
     $oForm = new $dataObject();
     $initData = $oForm->getInitialData($data);
     $saved = $oForm->insert($data, $initData['lang']);
     $languages = Cible_FunctionsGeneral::getAllLanguage();
     foreach ($languages as $key => $lang) {
         if ($lang['L_ID'] != $initData['lang']) {
             $oForm->save($saved, $data, $lang['L_ID']);
         }
     }
     echo $saved;
     exit;
 }
Beispiel #25
0
 private function autogenerateMenuItemFromPageId($itemId, $parentId, $recursive = false)
 {
     $pageObject = new Pages();
     $select = $pageObject->select()->setIntegrityCheck(false)->from('Pages')->joinInner('PagesIndex', 'PI_PageID = P_ID')->where('PI_LanguageID = ?', Zend_Registry::get('languageID'))->where('P_ParentID = ?', $parentId)->order('P_Position');
     $pages = $pageObject->fetchAll($select)->toArray();
     foreach ($pages as $item) {
         $page_id = $item['P_ID'];
         $position = $this->_db->fetchCol("SELECT count(*) FROM MenuItemData WHERE MID_ParentID = '{$itemId}' AND MID_MenuID = '{$this->_id}'");
         $position = $position[0];
         $langs = Cible_FunctionsGeneral::getAllLanguage();
         foreach ($langs as $lang) {
             $page_details = Cible_FunctionsPages::getPageDetails($page_id, $lang['L_ID']);
             $page_title = !empty($page_details['PI_PageTitle']) ? $page_details['PI_PageTitle'] : null;
             if ($page_title != null) {
                 $found_status = $this->autogenerate_checkIfAlreadyExists($itemId, $page_id, $lang['L_ID']);
                 if (!$found_status['data']) {
                     $menuData = new MenuItem();
                     $_data = $menuData->createRow();
                     $_data->setFromArray(array('MID_MenuID' => $this->_id, 'MID_ParentID' => $itemId, 'MID_Position' => $position));
                     $_data->save();
                     $_dataId = $this->_db->lastInsertId();
                     $menuIndex = new MenuItemIndex();
                     $_index = $menuIndex->createRow();
                     $_index->setFromArray(array('MII_LanguageID' => $item['PI_LanguageID'], 'MII_MenuItemDataID' => $_dataId, 'MII_Title' => $page_title, 'MII_Link' => '', 'MII_PageID' => $page_id));
                     $_index->save();
                 } else {
                     if ($found_status['data'] && !$found_status['lang']) {
                         $_dataId = $found_status['dataID'];
                         $menuIndex = new MenuItemIndex();
                         $_index = $menuIndex->createRow();
                         $_index->setFromArray(array('MII_LanguageID' => $lang['L_ID'], 'MII_MenuItemDataID' => $_dataId, 'MII_Title' => $page_title, 'MII_Link' => '', 'MII_PageID' => $page_id));
                         $_index->save();
                     }
                 }
             }
         }
         if ($_dataId != -1 && $recursive) {
             $this->autogenerateMenuItemFromPageId($_dataId, $page_id, $recursive);
         }
     }
 }
 public function listSubCatAction()
 {
     // web page title
     $this->view->title = "Sous-catégories";
     if ($this->view->aclIsAllowed($this->_moduleTitle, 'edit', true)) {
         $tables = array('Catalog_CategoriesData' => array('CC_ID'), 'Catalog_CategoriesIndex' => array('CCI_CategoryID', 'CCI_Name'), 'Catalog_SousCategoriesData' => array('SC_ID', 'SC_CategoryID'), 'Catalog_SousCategoriesIndex' => array('SCI_SousCategoryID', 'SCI_LanguageID', 'SCI_Name'));
         $field_list = array('SC_ID' => array('width' => '50px'), 'SCI_Name' => array('width' => '150px'), 'CCI_Name' => array('width' => '150px'));
         $this->view->params = $this->_getAllParams();
         $pageID = $this->_getParam('pageID');
         $lang = $this->_getParam('lang');
         if (!$lang) {
             $this->_registry->currentEditLanguage = $this->_defaultEditLanguage;
             $langId = $this->_defaultEditLanguage;
         } else {
             $langId = Cible_FunctionsGeneral::getLanguageID($lang);
             $this->_registry->currentEditLanguage = $langId;
         }
         $oSubCategories = new SubCategoriesObject();
         $select = $oSubCategories->getAll($langId, false);
         $select->joinLeft('Catalog_CategoriesData', 'CC_ID = SC_CategoryID');
         $select->joinLeft('BannerGroup', 'BG_ID = SC_BannerGroupID');
         $select->joinLeft('Catalog_CategoriesIndex', 'CC_ID = CCI_CategoryID AND CCI_LanguageID = "' . $langId . '"');
         $commands = array();
         if ($langId == $this->_defaultEditLanguage) {
             $commands = array($this->view->link($this->view->url(array('controller' => $this->_name, 'action' => 'add')), $this->view->getCibleText('button_add_news'), array('class' => 'action_submit add')));
         }
         $options = array('commands' => $commands, 'disable-export-to-excel' => 'true', 'action_panel' => array('width' => '50', 'actions' => array('edit' => array('label' => $this->view->getCibleText('button_edit'), 'url' => $this->view->baseUrl() . "/" . $this->_moduleTitle . "/" . $this->_name . "/edit/" . $this->_paramId . "/%ID%", 'findReplace' => array('search' => '%ID%', 'replace' => 'SC_ID')), 'delete' => array('label' => $this->view->getCibleText('button_delete'), 'url' => $this->view->baseUrl() . "/" . $this->_moduleTitle . "/" . $this->_name . "/delete/" . $this->_paramId . "/%ID%/" . $pageID, 'findReplace' => array('search' => '%ID%', 'replace' => 'SC_ID')))));
         $mylist = new Cible_Paginator($select, $tables, $field_list, $options);
         $this->view->assign('mylist', $mylist);
     }
 }
Beispiel #27
0
 public function deleteAction()
 {
     // web page title
     $this->view->title = "Suppression d'une galerie";
     //if ($this->view->aclIsAllowed('gallery','manage',true)){
     // variables
     $this->view->assign('isXmlHttpRequest', $this->_isXmlHttpRequest);
     $this->view->assign('success', false);
     $pageID = (int) $this->_getParam('pageID');
     $blockID = (int) $this->_getParam('blockID');
     $galleryID = (int) $this->_getParam('galleryID');
     if ($blockID != '') {
         $return = "/gallery/index/list/blockID/{$blockID}/pageID/{$pageID}";
     } elseif ($this->_categoryID) {
         $return = "/gallery/index/list/catID/{$this->_categoryID}";
     } else {
         $return = "/gallery/index/list/";
     }
     $this->view->return = $this->view->baseUrl() . $return;
     $galleryObject = new GalleryObject();
     $galleryDataIndex = $galleryObject->populate($galleryID, $this->_defaultEditLanguage);
     if (!$galleryDataIndex) {
         if ($this->_request->isPost()) {
             $this->view->assign('success', true);
         }
         $this->view->assign('deleted', true);
         $this->view->assign('galleryID', $galleryID);
     } else {
         $this->view->assign('deleted', false);
         $this->view->gallery = $galleryDataIndex;
         if ($this->_request->isPost()) {
             $formData = $this->_request->getPost();
             if ($galleryDataIndex) {
                 $gallerySelect = new GalleriesIndex();
                 $select = $gallerySelect->select()->where('GI_GalleryID = ?', $galleryID);
                 $galleryData = $gallerySelect->fetchAll($select);
                 foreach ($galleryData as $gallery) {
                     $indexData['moduleID'] = $this->_moduleID;
                     $indexData['contentID'] = $galleryID;
                     $indexData['languageID'] = $gallery['GI_LanguageID'];
                     $indexData['action'] = 'delete';
                     Cible_FunctionsIndexation::indexation($indexData);
                     $imageSelect = new GalleriesImages();
                     $select = $imageSelect->select()->setIntegrityCheck(false)->from('Galleries_Images')->where('GI_GalleryID = ?', $galleryID)->join('ImagesIndex', 'II_ImageID = GI_ImageID')->where('II_LanguageID = ?', $gallery['GI_LanguageID']);
                     $imageData = $imageSelect->fetchAll($select)->toArray();
                     $cpt = count($imageData);
                     for ($i = 0; $i < $cpt; $i++) {
                         $indexData['moduleID'] = $this->_moduleID;
                         $indexData['contentID'] = $imageData[$i]['II_ImageID'];
                         $indexData['languageID'] = $imageData[$i]['II_LanguageID'];
                         $indexData['action'] = 'delete';
                         Cible_FunctionsIndexation::indexation($indexData);
                     }
                 }
                 //delete all images associated with the gallery
                 $galleryImagesSelect = new GalleriesImages();
                 $select = $galleryImagesSelect->select()->where('GI_GalleryID = ?', $galleryID);
                 $galleryImagesData = $galleryImagesSelect->fetchAll($select);
                 foreach ($galleryImagesData as $galleryImages) {
                     $imageDelete = new Images();
                     $where = "I_ID = " . $galleryImages['GI_ImageID'];
                     $imageDelete->delete($where);
                     $imageIndexDelete = new ImagesIndex();
                     $where = "II_ImageID = " . $galleryImages['GI_ImageID'];
                     $imageIndexDelete->delete($where);
                 }
                 $galleryImagesDelete = new GalleriesImages();
                 $where = "GI_GalleryID = " . $galleryID;
                 $galleryImagesDelete->delete($where);
                 $galleryObject->delete($galleryID);
                 /*
                  //delete the gallery
                  $galleryDelete = new Galleries();
                  $where = 'G_ID = ' .  $galleryID;
                  $galleryDelete->delete($where);
                 
                  $galleryIndexDelete = new GalleriesIndex();
                  $where = 'GI_GalleryID = ' .  $galleryID;
                  $galleryIndexDelete->delete($where);
                 */
                 //delete the gallery folder
                 Cible_FunctionsGeneral::delFolder("../../{$this->_config->document_root}/data/images/gallery/" . $galleryID);
                 if (!$this->_isXmlHttpRequest) {
                     if ($blockID != '') {
                         $this->_redirect("/gallery/index/list/blockID/{$blockID}/pageID/{$pageID}");
                     } elseif ($this->_categoryID) {
                         $this->_redirect("/gallery/index/list/catID/{$this->_categoryID}");
                     } else {
                         $this->_redirect("/gallery/index/list/");
                     }
                 } else {
                     $buttonAction = $formData['buttonAction'];
                     $this->view->assign('success', true);
                     $this->view->assign('buttonAction', $buttonAction);
                     $this->view->assign('galleryID', $galleryID);
                     $this->view->assign('deleted', true);
                 }
             }
         }
     }
     //}
 }
Beispiel #28
0
 public function deleteAction()
 {
     // variables
     $pageID = (int) $this->_getParam('pageID');
     $blockID = (int) $this->_getParam('blockID');
     $eventID = (int) $this->_getParam('eventID');
     $this->view->return = $this->view->baseUrl() . "/events/index/list/blockID/{$blockID}/pageID/{$pageID}";
     $eventsObject = new EventsObject();
     if (Cible_ACL::hasAccess($pageID)) {
         if ($this->_request->isPost()) {
             $del = $this->_request->getPost('delete');
             if ($del && $eventID > 0) {
                 $eventsObject->delete($eventID);
                 $indexData['moduleID'] = $this->_moduleID;
                 $indexData['contentID'] = $eventID;
                 $indexData['languageID'] = Zend_Registry::get("currentEditLanguage");
                 $indexData['action'] = 'delete';
                 Cible_FunctionsIndexation::indexation($indexData);
                 Cible_FunctionsGeneral::delFolder("../../{$this->_config->document_root}/data/images/event/" . $eventID);
             }
             if (!empty($pageID)) {
                 $this->_redirect("/events/index/list/blockID/{$blockID}/pageID/{$pageID}");
             } else {
                 $this->_redirect("/events/index/list-all/");
             }
         } else {
             if ($eventID > 0) {
                 // get event details
                 $this->view->event = $eventsObject->populate($eventID, Zend_Registry::get('currentEditLanguage'));
             }
         }
     }
 }
Beispiel #29
0
 /**
  * Controller action to manage the details of the cart.
  * Update/delete items or load the list.
  *
  * @return void
  */
 public function cartdetailsAction()
 {
     $account = Cible_FunctionsGeneral::getAuthentication();
     if (!$account) {
         $this->_redirect(Cible_FunctionsPages::getPageNameByID(1, Zend_Registry::get('languageID')));
     }
     $productData = array();
     $cart = new Cart();
     if ($this->_isXmlHttpRequest) {
         $this->disableLayout();
         $this->disableView();
         $action = $this->_getParam('do');
         $productId = $this->_getParam('pId');
         $itemId = $this->_getParam('itemId');
         $quantity = $this->_getParam('quantity');
         $size = $this->_getParam('size');
         $category = $this->_getParam('category');
         $disable = $this->_getParam('disable');
         $cartId = $this->_getParam('cartItemsId');
         if ($action == 'update' && !empty($productId)) {
             if (!empty($size)) {
                 $cart->updateItem($productId, -1, array('CI_TailleID' => $size, 'CI_ItemID' => $itemId, 'CI_CartItemsID' => $cartId));
             } elseif (!empty($category)) {
                 $cart->updateItem($productId, -1, array('CI_CatTailleID' => $category, 'CI_ItemID' => $itemId, 'CI_CartItemsID' => $cartId));
             } else {
                 $oItem = new ItemsObject();
                 $oItem->setId($itemId);
                 $amount = $oItem->getPrice($quantity);
                 $cart->updateItem($productId, $quantity, array('CI_ItemID' => $itemId, 'CI_Total' => $amount, 'CI_CartItemsID' => $cartId));
             }
             echo 'updated';
         } elseif ($action == 'delete' && !empty($productId)) {
             if ($itemId && $cartId) {
                 $cart->updateItem($productId, 0, array('CI_ItemID' => $itemId, 'CI_CartItemsID' => $cartId));
                 echo 'deletedRow';
             } else {
                 $cart->updateItem($productId);
                 echo 'deleted';
             }
         } elseif ($action == 'disable' && !empty($productId)) {
             $cart->updateItem($productId, -1, array('CI_IsToSend' => $disable, 'CI_ItemID' => $itemId));
         } elseif ($action == 'addSize' && !empty($productId)) {
             $lastId = $cart->addSize(array('CI_ID' => $productId, 'CI_Quantity' => 1, 'CI_CatTailleID' => $category, 'CI_ItemID' => $itemId));
         } elseif ($action == 'getSizes' && !empty($category)) {
             $oSize = new TailleObject();
             $langId = $this->_getParam('langId');
             $size = $oSize->getDataByCategoryTailleId($category, $langId);
             echo json_encode($size);
             exit;
         }
     } else {
         $url = $this->view->absolute_web_root . $this->getRequest()->getPathInfo();
         $exclude = preg_match('/resume-order/', $url);
         if (!$exclude) {
             Cible_View_Helper_LastVisited::saveThis($url);
         }
         $urlBack = '';
         $urlNextStep = '';
         $urls = Cible_View_Helper_LastVisited::getLastVisited();
         if (count($urls) > 1) {
             $urlBack = $urls[1];
         }
         $account = Cible_FunctionsGeneral::getAuthentication();
         $profile = new MemberProfile();
         $memberData = $profile->findMember(array('email' => $account['email']));
         $memberData = $profile->addTaxRate($memberData);
         //            if ($memberData['validatedEmail'] == '')
         //                $this->view->assign('valide', true);
         //            else
         //                $this->view->assign('valide', false);
         $cartData = $cart->getAllIds();
         $allIds = $cartData['cartId'];
         if (count($allIds)) {
             $urlNextStep = $this->view->baseUrl() . '/' . Cible_FunctionsPages::getPageNameByID($this->_orderPageId, Zend_Registry::get('languageID')) . '/auth-order/';
         }
         $this->view->assign('itemCount', count($allIds));
         $this->view->assign('cartTotal', $cart->getTotalItem());
         $oProduct = new ProductsCollection();
         //            $orderPageId = Cible_FunctionsCategories::getPagePerCategoryView(0, 'order', 17);
         $resume = false;
         if ($this->_registry->pageID == $this->_orderPageId) {
             $resume = true;
         }
         foreach ($allIds as $key => $id) {
             $itemId = $cartData['itemId'][$key];
             $prodId = $cartData['prodId'][$key];
             $productData[$id] = $oProduct->getDetails($prodId, $itemId, $resume);
             $cartDetails = $cart->getItem($id, $itemId);
             if ($resume) {
                 $renderItem = $cart->renderResume($cartDetails, $itemId);
             } else {
                 $renderItem = $cart->renderCartLine($cartDetails, $itemId);
             }
             $productData[$id]['items']['render'] = $renderItem;
             $productData[$id]['cart']['disable'] = $cartDetails['Disable'];
             $productData[$id]['cart']['promoId'] = $cartDetails['PromoId'];
         }
         $hasBonus = $oProduct->getBonus();
         $orderParams = Cible_FunctionsGeneral::getParameters();
         $parameters = array('nbPoint' => 0, 'taxeProv' => $memberData['taxProv'], 'taxeCode' => $memberData['taxCode'], 'tpsFee' => $orderParams['CP_ShippingFees'], 'limitTpsFee' => $orderParams['CP_ShippingFeesLimit'], 'CODFees' => $orderParams['CP_MontantFraisCOD'], 'noProvTax' => $memberData['noProvTax'], 'noFedTax' => $memberData['noFedTax']);
         if ($memberData['taxCode'] == 'QC') {
             $parameters['taxeFed'] = $orderParams['CP_TauxTaxeFed'];
         }
         if ($hasBonus) {
             $parameters['nbPoint'] = $orderParams['CP_BonusPointDollar'];
         }
         $this->view->assign('productData', $productData);
         $this->view->assign('urlBack', $urlBack);
         $this->view->assign('nextStep', $urlNextStep);
         $this->view->assign('step', 1);
         $this->view->assign('hasBonus', $oProduct->getBonus());
         $this->view->assign('parameters', $parameters);
         if ($this->_registry->pageID == $this->_orderPageId) {
             $this->renderScript('index/cart-summary.phtml');
         } else {
             $this->renderScript('index/cart-details.phtml');
         }
     }
 }
Beispiel #30
0
 public function editAction()
 {
     /*         * ********************************* */
     // variable
     $webAddr = array();
     $addressFields = array();
     $memberID = $this->_request->getParam('ID');
     $baseDir = $this->view->baseUrl();
     $billAddr = array();
     $shipAddr = array();
     $current_state = '';
     $currentCity = '';
     $returnModule = $this->_request->getParam('returnModule');
     $returnAction = $this->_request->getParam('returnAction');
     if ($returnModule != '' && $returnAction != '') {
         $cancelUrl = $this->view->url(array('module' => $returnModule, 'action' => $returnAction, 'ID' => null, 'returnModule' => null, 'returnAction' => null));
     } else {
         $cancelUrl = $this->view->url(array('action' => 'list', 'ID' => null));
     }
     $this->view->assign('memberID', $memberID);
     /*         * ********************************* */
     // newsletter categories
     $newsletterProfil = new NewsletterProfile();
     $newsletterMemberDetails = $newsletterProfil->getMemberDetails($memberID);
     //$this->view->assign('newsletterMemberDetails',$newsletterMemberDetails);
     $newsletterCategories = $this->view->GetAllNewsletterCategories();
     $newsletterCategories = $newsletterCategories->toArray();
     if (is_array($newsletterMemberDetails) && array_key_exists('newsletter_categories', $newsletterMemberDetails) && $newsletterMemberDetails['newsletter_categories'] != "") {
         $memberNewsletterCategories = $newsletterMemberDetails['newsletter_categories'];
         $memberNewsletterCategories = explode(',', $memberNewsletterCategories);
         $memberCat = array();
         foreach ($memberNewsletterCategories as $memberCategory) {
             $memberCat["chkNewsletter{$memberCategory}"] = 1;
         }
     } else {
         $memberCat = array();
     }
     $this->view->assign('memberNewsletterCategories', $memberCat);
     $this->view->assign('newsletterCategories', $newsletterCategories);
     // Form
     $form = new FormProfile(array('baseDir' => $baseDir, 'cancelUrl' => $cancelUrl, 'langId' => $this->_defaultInterfaceLanguage, 'mode' => 'edit'));
     $this->view->assign('form', $form);
     $genericProfil = new GenericProfile();
     $genericMemberDetails = $genericProfil->getMemberDetails($memberID);
     $this->view->assign('genericMemberDetails', $genericMemberDetails);
     $membersProfil = new MemberProfile();
     $lang = $this->_defaultInterfaceLanguage;
     $membersDetails = $membersProfil->getMemberDetails($memberID);
     //Retailers data
     if ($form->getSubForm('membersForm')) {
         //            $oRetailers = new RetailersObject();
         $oAddress = new AddressObject();
         //            $retailerData = $oRetailers->getAll(null, true, $memberID);
         //            if (count($retailerData))
         //                $retailerAddr = $oAddress->getAll(null, true, $retailerData[0]['R_AddressId']);
         if (!empty($membersDetails['addrBill'])) {
             $billAddr = $oAddress->populate($membersDetails['addrBill'], $lang);
         }
         if (!empty($membersDetails['addrShip'])) {
             $shipAddr = $oAddress->populate($membersDetails['addrShip'], $lang);
         }
         //            $oRetailer = new RetailersObject();
         //            $onWeb = $oRetailer->getRetailerInfos($membersDetails['member_id'], $lang);
         //            if ($onWeb && !empty($onWeb['R_AddressId']))
         //            {
         //                $webAddrFr = $oAddress->populate($onWeb['R_AddressId'], 1);
         //                $webAddrEn = $oAddress->populate($onWeb['R_AddressId'], 2);
         //                $webAddr['isDistributeur-1'] = $onWeb['R_Status'];
         //                $form->getSubForm('retailerForm')->getElement('isDistributeur')->setValue($onWeb['R_Status']);
         //            }
         if (!empty($billAddr)) {
             $membersDetails['addressFact'] = $billAddr;
             //                $membersDetails['AI_FirstTel'] = $billAddr['AI_FirstTel'];
             //                $membersDetails['AI_SecondTel'] = $billAddr['AI_SecondTel'];
             //                $membersDetails['A_Fax'] = $billAddr['A_Fax'];
         }
         if (isset($shipAddr['A_Duplicate']) && !$shipAddr['A_Duplicate']) {
             $shipAddr['duplicate'] = 0;
         }
         if (!empty($shipAddr)) {
             $membersDetails['addressShipping'] = $shipAddr;
         }
         //            $membersDetails['retailerForm']    = $webAddrFr;
         //            $membersDetails['retailerFormEn']  = $webAddrEn;
         $memberForm = $form->getSubForm('membersForm');
         $stateBill = $memberForm->getSubForm('addressFact')->getElement('A_StateId');
         $stateShip = $memberForm->getSubForm('addressShipping')->getElement('A_StateId');
         $countries = Cible_FunctionsGeneral::getCountries();
         if (count($webAddr) > 0) {
             $membersDetails['AI_WebSite'] = $billAddr['AI_WebSite'];
             $current_state = $billAddr['A_StateId'] . $this->_separ . $shipAddr['A_StateId'] . $this->_separ . $webAddrFr['A_StateId'] . $this->_separ;
             $currentCity = $billAddr['A_CityId'] . $this->_separ . $shipAddr['A_CityId'] . $this->_separ . $webAddrFr['A_CityId'] . $this->_separ;
         } elseif (!empty($billAddr) && !empty($shipAddr)) {
             $current_state = $billAddr['A_StateId'] . $this->_separ . $shipAddr['A_StateId'] . $this->_separ;
             $currentCity = $billAddr['A_CityId'] . $this->_separ . $shipAddr['A_CityId'] . $this->_separ;
         }
     }
     if ($this->_request->isPost()) {
         $data = $this->_request->getPost();
         $currentCity = $data['retailerForm']['A_CityId'];
         $current_state = $data['membersForm']['addressFact']['A_StateId'] . $this->_separ;
         $current_state .= $data['membersForm']['addressShipping']['A_StateId'] . $this->_separ;
         $current_state .= $data['retailerForm']['A_StateId'];
         //            ksort($data);
         //            $tmpPostAddr   = $this->_statesCitiesList($data, $form);
         //            $currentCity   = substr($tmpPostAddr['currentCity'], 0, strlen($tmpPostAddr['currentCity'])-1);
         //            $current_state = substr($tmpPostAddr['currentState'], 0, strlen($tmpPostAddr['currentState'])-1);
     }
     $this->view->assign('selectedCity', $currentCity);
     $this->view->assign('selectedState', $current_state);
     $addressFields = array_unique($addressFields);
     //            if( $memberForm->getElement("isRetailer")->isChecked() ) {
     //                $this->view->headStyle()->appendStyle('dd.validatedBy { display: none }');
     //            }
     if ($this->_request->isPost()) {
         $formData = $this->_request->getPost();
         if ($form->getSubForm('membersForm')) {
             $oAddress = new AddressObject();
             // Get the addresses data to insert
             $addressFact = $formData['membersForm']['addressFact'];
             $addressShipping = $formData['membersForm']['addressShipping'];
             //                $addressRetailer   = $formData['retailerForm'];
             //                $addressRetailerEn = $formData['retailerFormEn'];
             //Remove data form form if the shipping address is the same as bill
             if ($addressShipping['duplicate'] == 1) {
                 $subFormShip = $form->getSubForm('addressShipping');
                 foreach ($subFormShip as $key => $value) {
                     $value->clearValidators()->setRequired(false);
                 }
                 unset($formData['addressShipping']);
             }
             //If customer doesn't want to add data on website, set to false the field name
             //                if ($addressRetailer['isDistributeur'] == 1)
             //                {
             //                    $form->getSubForm('retailerForm')->getElement('AI_Name')->clearValidators()->setRequired(false);
             //                    $form->getSubForm('retailerFormEn')->getElement('AI_Name')->clearValidators()->setRequired(false);
             //                }
             //                $form->removeSubForm('addressShipping');
         }
         if ($form->isValid($formData)) {
             if (array_key_exists('genericForm', $formData)) {
                 $genericForm = $formData['genericForm'];
                 $genericProfil = new GenericProfile();
                 $langId = $genericForm['language'];
                 $members = $genericProfil->findMembers(array('email' => $genericForm['email']));
                 if (count($members) == 1 and $members[0]['member_id'] == $memberID or count($members) == 0) {
                     $genericProfil->updateMember($memberID, $genericForm);
                 } else {
                     $form->getSubForm('genericForm')->getElement('email')->addError($this->view->getCibleText('validation_message_used_email'));
                     $cancelUrl = '';
                 }
             }
             if (array_key_exists('newsletterForm', $formData)) {
                 $newsletterForm = $formData['newsletterForm'];
                 $newsletterProfile = new NewsletterProfile();
                 $cat = "";
                 foreach ($newsletterForm as $item => $val) {
                     if ($val == 1) {
                         if ($cat == "") {
                             $cat = str_replace('chkNewsletter', '', $item);
                         } else {
                             $cat .= "," . str_replace('chkNewsletter', '', $item);
                         }
                     }
                 }
                 $newsletterProfile->updateMember($memberID, array('newsletter_categories' => $cat));
             }
             if (array_key_exists('membersForm', $formData)) {
                 $membersForm = $formData['membersForm'];
                 $langId = $this->_defaultInterfaceLanguage;
                 if (!empty($membersForm['password'])) {
                     $membersForm['password'] = md5($membersForm['password']);
                 } else {
                     $membersForm['password'] = $membersDetails['password'];
                 }
                 $memberProfil = new MemberProfile();
                 //get the last data to merge in the billing address
                 //                    $addressFact['A_Fax'] = $membersForm['A_Fax'];
                 //                    $addressFact['AI_FirstTel'] = $membersForm['AI_FirstTel'];
                 //                    $addressFact['AI_SecondTel'] = $membersForm['AI_SecondTel'];
                 //                    $addressFact['AI_WebSite'] = $membersForm['AI_WebSite'];
                 if (empty($billAddr['A_AddressId'])) {
                     $billAddr['A_AddressId'] = $oAddress->insert($addressFact, $langId);
                     $membersForm['addressFact']['addrBill'] = $billAddr['A_AddressId'];
                     $membersForm['addrBill'] = $billAddr['A_AddressId'];
                 } else {
                     $oAddress->save($billAddr['A_AddressId'], $addressFact, $langId);
                 }
                 if ($addressShipping['duplicate'] == 1) {
                     $addressFact['A_Duplicate'] = $billAddr['A_AddressId'];
                     if (empty($shipAddr['A_AddressId'])) {
                         $shipAddrId = $oAddress->insert($addressFact, $langId);
                         $membersForm['addressShipping']['addrShip'] = $shipAddrId;
                         $membersForm['addrShip'] = $shipAddrId;
                     } else {
                         $oAddress->save($shipAddr['A_AddressId'], $addressFact, $langId);
                     }
                 } else {
                     $addressShipping['A_Duplicate'] = 0;
                     if (empty($shipAddr['A_AddressId'])) {
                         $shipAddrId = $oAddress->insert($addressShipping, $langId);
                         $membersForm['addressShipping']['addrShip'] = $shipAddrId;
                         $membersForm['addrShip'] = $shipAddrId;
                     } else {
                         $oAddress->save($shipAddr['A_AddressId'], $addressShipping, $langId);
                     }
                 }
                 $memberProfil->updateMember($memberID, $membersForm);
                 //If customer doesn't want to add data on website, set to false the field name
                 //                    switch ($addressRetailer['isDistributeur'])
                 //                    {
                 //                        case 1:
                 //                            if (!empty($onWeb))
                 //                            {
                 //                                $retailerData = array(
                 //                                    'R_Status' => $addressRetailer['isDistributeur']);
                 //                                $oRetailer->save($onWeb['R_ID'], $retailerData, $langId);
                 //                            }
                 //                            break;
                 //                        case 2:
                 //                            if (!empty($webAddrFr))
                 //                            {
                 //                                $retailerData = array(
                 //                                    'R_Status' => $addressRetailer['isDistributeur']);
                 //                                $oAddress->save($webAddrFr['A_AddressId'], $addressRetailer, 1);
                 //                                $oAddress->save($webAddrFr['A_AddressId'], $addressRetailerEn, 2);
                 //                                $oRetailer->save($onWeb['R_ID'], $retailerData, $langId);
                 //                            }
                 //                            else
                 //                            {
                 //                                $addressId = $oAddress->insert($addressRetailer, 1);
                 //                                $oAddress->save($addressId, $addressRetailerEn, 2);
                 //                                $retailerData = array(
                 //                                    'R_GenericProfileId' => $memberID,
                 //                                    'R_AddressId' => $addressId,
                 //                                    'R_Status' => $addressRetailer['isDistributeur']
                 //                                );
                 //                                $oRetailer->insert($retailerData, $langId);
                 //                            }
                 //                            break;
                 //                        default:
                 //                            break;
                 //                    }
             }
             if ($cancelUrl != '') {
                 $this->_redirect(str_replace($baseDir, '', $cancelUrl));
             }
         }
     } else {
         $this->view->assign('membersDetails', $membersDetails);
         if ($genericMemberDetails) {
             $form->populate($genericMemberDetails);
         }
         if ($newsletterMemberDetails) {
             $form->populate($newsletterMemberDetails);
         }
         if ($membersDetails) {
             $form->populate($membersDetails);
         }
         if ($memberCat) {
             $form->populate($memberCat);
         }
         //                if( $form->getSubForm('membersForm')->getElement("isRetailer")->isChecked() ) {
         //                    $this->view->headStyle()->appendStyle('dd.validatedBy { display: none }');
         //                }
         $this->view->assign('form', $form);
     }
 }