getIdentity(); if ($user->customisation) { $this->view->assign('preferences', $user->customisation); } } /** * Affichage des éléments de sélection avec leur valeurs */ public function criteresAction() { $request = $this->getRequest(); if ( $request->isXmlHttpRequest() ) { $this->_helper->layout()->disableLayout(); } //Informations utilisateur $auth = Zend_Auth::getInstance(); $user = $auth->getIdentity(); $fields = new Scores_Ciblage_FieldList(); $sessionValue = new Scores_Ciblage_Session($fields); //Nombre d'unités $total = $request->getParam('total'); if ( $total !== null ) { $this->view->dataCount = number_format($total, 0, '', ' '); } else { //@todo : total quand aucune sélection $this->view->dataCount = number_format($sessionValue->getCountTotal(), 0, '', ' '); } $insee = $request->getParam('insee'); if ( $insee !== null ) { $this->view->dataInsee = number_format($insee, 0, '', ' '); } else { if ( $user->preferences['interface']['insee'] == 1 ) { $insee = number_format($sessionValue->getCountInsee(), 0, '', ' '); } else { $insee = null; } } //Construction affichage des critères $infosCriteres = array(); $allFields = $fields->getItems(true); foreach ( $allFields as $key => $params ) { $valueSelected = $sessionValue->getSelectedValue($key); if ( $valueSelected !== null ) { $resultLabel = $sessionValue->resumeLabel($key); $infosCriteres[$key] = array( 'label' => $params['label'], 'in' => $resultLabel['in'], 'ex' => $resultLabel['ex'], ); } } Zend_Registry::get('firebug')->info($infosCriteres); $this->view->infos = $infosCriteres; } public function criterelistAction() { $this->_helper->layout()->disableLayout(); $request = $this->getRequest(); $key = $request->getParam('key'); $fields = new Scores_Ciblage_FieldList(); $sessionValue = new Scores_Ciblage_Session($fields); $values = $sessionValue->getSelectedValue($key); $inLabels = array(); if (count($values['in'])>0) { foreach ($values['in'] as $value) { $inLabels[$value] = $fields->labelValueDetail($key, $value); } } $exLabels = array(); if (count($values['ex'])>0) { foreach ($values['ex'] as $value) { $exLabels[$value] = $fields->labelValueDetail($key, $value); } } Zend_Registry::get('firebug')->info('LABEL'); Zend_Registry::get('firebug')->info($inLabels); $this->view->critereName = $key; $this->view->inLabels = $inLabels; $this->view->exLabels = $exLabels; } public function removeAction() { $this->_helper->layout()->disableLayout(); $request = $this->getRequest(); $nameCritereToDelete = $request->getParam('critere'); $posInList = $request->getParam('in', false); $posExList = $request->getParam('ex', false); $sessionValue = new Scores_Ciblage_Session(); if ($posInList!==false) { $sessionValue->unsetSelectedValue($nameCritereToDelete, $posInList); } elseif ($posExList!==false) { $sessionValue->unsetSelectedValue($nameCritereToDelete, $posInList, true); } else { $sessionValue->unsetSelected($nameCritereToDelete); } $auth = Zend_Auth::getInstance(); $user = $auth->getIdentity(); //Comptage $ciblage = new Scores_Ciblage_Engine($sessionValue->getSelectedValues(), $user->globalRNCS); $total = $ciblage->execute(); $sessionValue->setCountTotal($total); if ($user->preferences['interface']['insee']==1) { $insee = $ciblage->calculRedevanceInsee(); } else { $insee = null; } $sessionValue->setCountInsee($insee); $sessionValue->setCritereSession(); $this->_redirect('/'); } }