Exemple #1
0
 /**
  * Ajoute un élément au panier
  * @access private
  * @param $values
  * @param $session_key
  */
 private function add_item_cart($values, $session_key)
 {
     if (is_array($values)) {
         $attr = null;
         //récupération des valeurs postes pour insertion et récupération DB
         $idcatalog = $values['idcatalog'];
         $quantity = $values['product_quantity'];
         $current_price = $values['product_price'];
         $attr = isset($values['attr']) ? $values['attr'] : null;
         $lang = frontend_db_lang::s_id_current_lang(frontend_model_template::current_Language());
         //récupération des donnée panier en fonction le clé de session
         $data_cart = parent::s_cart_session($session_key);
         if ($data_cart == null) {
             parent::i_cart_session($lang['idlang'], $session_key);
             $data_cart = parent::s_cart_session($session_key);
         }
         $id_cart = $data_cart['id_cart'];
         //Vérifie si l'item est déjà dans le panier
         $v_item = parent::s_cart_item_catalog($id_cart, $idcatalog);
         if ($v_item['idcatalog'] == null) {
             $this->add_new_item($id_cart, $idcatalog, $quantity, $current_price);
         } else {
             $exist = true;
             if (!empty($this->activeMods)) {
                 foreach ($this->activeMods as $name => $mod) {
                     if (method_exists($mod, 'exist_item')) {
                         $exist = $mod->exist_item($v_item['id_item'], $_POST);
                     }
                 }
             }
             if ($exist) {
                 parent::u_cart_item_qty($v_item['id_item'], $v_item['quantity_items'] + $quantity);
             } else {
                 $this->add_new_item($id_cart, $idcatalog, $quantity, $current_price);
             }
         }
         //Mise à jour du calcul d'items dans le panier
         $count_items = parent::count_cart_items($id_cart);
         parent::u_cart_items($id_cart, $count_items['total']);
     }
 }
Exemple #2
0
 /**
  * 
  * Selection de la langue dans la base de donnée
  * @param $codelang
  */
 protected function db_select_lang($iso)
 {
     foreach (frontend_db_lang::s_id_current_lang($iso) as $lang) {
         return $lang['iso'];
     }
 }