it-swarm.com.de

Cookie-Gesetz und Folcomedia - Cookies Alarm

Ich benutze Joomla! 3.3.6 und Folcomedia - Cookies-Benachrichtigungs-Plugin.

Es ist ein großartiges Plugin, aber in Italien gibt es jetzt eine sehr strenge Gesetzgebung. Praktisch ist die Aktivierung von Cookies von Drittanbietern (fast alle!) NICHT ohne Zustimmung gestattet. Also habe ich noch einige Änderungen hinzugefügt, die Anzeigen und soziale Module blockieren, wenn das Cookie Folcomedia beispielsweise nicht vorhanden ist. und Hinzufügen einer Seitenaktualisierung, wenn der Navigator dies akzeptiert, um alle fehlenden Module zu laden.

Das ist schon gut, aber es ist mehr als eine Woche und ich versuche, die Vereinbarung zu integrieren, um die Seite zu scrollen. Ich bin kein Experte, aber wenn ich es mit einer PHP-Testseite versuche, funktioniert es, aber es hat keine Auswirkung im Plugin.

Also, die erste Frage, in meiner Website laden diese jQuery, sind sie ausreichend?

js/jquery.min.js js/jquery-noconflict.js js/jquery-migrate.min.js js/jquery.cycle.all.js js/jquery.simplemodal.js

Wenn das Cookie nicht existiert, lädt das Plugin dieses Banner (unten oder oben auf der Seite).

if ($type_affichage == 1) { $function_close = 'onclick="CloseCadreAlertCookie(); javascript:ssxl(\'LINK=Consenso%20Cookie\'); window.location.reload(true)"'; } 

        $text_btn_more = '<div class="'. $meme_ligne .' '.$span.' col-sm-6 btn_readmore" style="margin:5px 0;text-align:'.$position_btn_more.'"><a style="'.$couleur_btn_more_style.'color:'.$couleur_texte_btn_more.'" class="btn '.$couleur_btn_more.' '.$taille_btn_more.' read_more" href="'.JRoute::_("index.php?Itemid=".$link_readmore_menu).'#'.$ancre_link_readmore_menu.'">'.$texte_readmore.'</a></div>';
        $text_btn_more_poup = '<div class="'.$span.' col-sm-6 btn_readmore" style="margin:5px 0;text-align:'.$position_btn_more.'"><a style="'.$couleur_btn_more_style.'color:'.$couleur_texte_btn_more.'" class="btn '.$couleur_btn_more.' '.$taille_btn_more.' read_more" onclick="jQuery.magnificPopup.close();" href="'.JRoute::_("index.php?Itemid=".$link_readmore_menu).'#'.$ancre_link_readmore_menu.'">'.$texte_readmore.'</a></div>';
        $text_btn_close = '<div class="'.$meme_ligne.' '.$span.' col-sm-6 btn_close" style="margin:5px 0;text-align:'.$position_btn_close.'"><button '.$function_close.' style="'.$couleur_btn_close_style.'color:'.$couleur_texte_btn_close.'" class="btn '.$couleur_btn_close.' '.$taille_btn_close.' popup-modal-dismiss">'.$texte_close.'</button></div>';

        $text_out ='<div id="cadre_alert_cookies" style="opacity:'.$opacity.';text-align:'.$position_contenu.';'.$position_fixe_cookie.' margin:'.$marge_ext.'px;">';
        $text_out .='<div style="display: inline-block;width: 100%;margin:auto;max-width:'.$taille_cadre.';background-color: '.$fond_couleur.';'.$css_bordure.'">';
        $text_out .='<div style="display: inline-block;padding:'.$marge_int.'px;color: '.$texte_couleur.'"><div class="cadre_texte '.$meme_ligne.'">'.$texte.'</div>';
        $text_out .='<div class="cadre_bouton '.$meme_ligne.'">';

Und dieses Skript in Seite:

if ($type_affichage == 1) {

            $script = '<script type="text/javascript">';
            $script .='var name = "fmalertcookies" + "=";';
            $script .='var ca = document.cookie.split(";");';               
            $script .='for(var i=0; i<ca.length; i++) {';
            $script .='var c = ca[i];';
            $script .='while (c.charAt(0)==" ") c = c.substring(1);';       
            $script .='if (c.indexOf(name) == 0){ document.getElementById("cadre_alert_cookies").style.display="none";}';
            $script .='}';          
            $script .='var d = new Date();';
            $script .='d.setTime(d.getTime() + ('.$duree_cookie.'*(24*60*60*1000)));';
            $script .='var expires_cookie = "expires="+d.toUTCString();';
            $script .="function CloseCadreAlertCookie(){document.getElementById('cadre_alert_cookies').style.display='none'; document.cookie='fmalertcookies=true; '+expires_cookie+'; path=/'}";
            $script .="</script>";

            // Position Haut
            if ($position == 0) {
                $buffer = preg_replace('/<body(.*?)>/i', '<body$1>'.$text_out.$script, $buffer);
            }
            // Position Bas
            elseif ($position == 1) {

                $parts = explode('</body>', $buffer);   
                if (sizeof($parts)<2) {
                    return; // il n'y a pas </body> dans la page
                }

                $parts[sizeof($parts)-2] .= $text_out.$script;
                $buffer = implode('</body>', $parts);                           
            }
        }

Haben Sie Vorschläge zur Ergänzung des Abschlussdivs und zum Setzen des Cookies zum Scrollen der Seite? Vielen Dank.

Ich weiß nicht, ob ich alle notwendigen Informationen gegeben habe ...

4
Elisa74

Sie sollten jQuery aus einem einfachen Grund nicht von Google laden. Es besteht eine Wahrscheinlichkeit von fast 90%, dass es vom System geladen wird (daher sollten Sie es besser vom System wie folgt anfordern: JHTML::_('jquery.framework')), sodass Sie sowohl Bandbreite als auch Leistung verlieren. Nicht zu vergessen mögliche Konflikte. Wenn das Skript, das Sie erstellt haben, nicht auf der Joomla-Seite funktioniert, besteht bereits eine große Wahrscheinlichkeit, dass Sie Konflikte/Fehler im Java Skript haben. Verwenden Sie einen Debugger.

2
Artur Stępień