public function processGetAdvicesToDisplay()
 {
     $return = array('advices' => array());
     $id_tab = (int) Tools::getValue('id_tab');
     $advices = Advice::getValidatedByIdTab($id_tab);
     foreach ($advices as $advice) {
         $return['advices'][] = array('selector' => $advice->selector, 'html' => GamificationTools::parseMetaData($advice->html), 'location' => $advice->selector);
     }
     return $return;
 }
Example #2
0
    public function hookDisplayBackOfficeHeader()
    {
        //check if currently updatingcheck if module is currently processing update
        if ($this->isUpdating() || !Module::isEnabled($this->name)) {
            return false;
        }
        if (method_exists($this->context->controller, 'addJquery')) {
            $this->context->controller->addJquery();
            $this->context->controller->addCss($this->_path . 'views/css/gamification.css');
            //add css for advices
            $advices = Advice::getValidatedByIdTab($this->context->controller->id, true);
            $css_str = $js_str = '';
            foreach ($advices as $advice) {
                $css_str .= '<link href="' . Tools::getShopProtocol() . 'gamification.prestashop.com/css/advices/advice-' . _PS_VERSION_ . '_' . (int) $advice['id_ps_advice'] . '.css" rel="stylesheet" type="text/css" media="all" />';
                $js_str .= '"' . (int) $advice['id_ps_advice'] . '",';
            }
            if (version_compare(_PS_VERSION_, '1.6.0', '>=') === TRUE) {
                $this->context->controller->addJs($this->_path . 'views/js/gamification_bt.js');
            } else {
                $this->context->controller->addJs($this->_path . 'views/js/gamification.js');
            }
            $this->context->controller->addJqueryPlugin('fancybox');
            return $css_str . '<script>
				var ids_ps_advice = new Array(' . rtrim($js_str, ',') . ');
				var admin_gamification_ajax_url = \'' . $this->context->link->getAdminLink('AdminGamification') . '\';
				var current_id_tab = ' . (int) $this->context->controller->id . ';
			</script>';
        }
    }
 public function processGetAdvicesToDisplay($only_premium = false)
 {
     $return = array('advices' => array());
     $id_tab = (int) Tools::getValue('id_tab');
     $ids_ps_advice = Tools::getValue('ids_ps_advice');
     if ($only_premium) {
         $advices = Advice::getValidatedPremiumByIdTab($id_tab);
     } else {
         $advices = Advice::getValidatedByIdTab($id_tab);
     }
     if (is_array($ids_ps_advice)) {
         foreach ($advices as $advice) {
             if (is_array($ids_ps_advice) && in_array($advice['id_ps_advice'], $ids_ps_advice)) {
                 $return['advices'][] = array('selector' => $advice['selector'], 'html' => GamificationTools::parseMetaData($advice['html']), 'location' => $advice['location'], 'weight' => (int) $advice['weight']);
             }
         }
     }
     return $return;
 }