jm_landingpage

Ein CMSimple Support Forum für deutsch sprechende Nutzer und Entwickler
mhz
Posts: 629
Joined: Tue Jun 25, 2013 8:46 pm
Location: Heusenstamm, Hessen
Contact:

jm_landingpage

Post by mhz » Wed Aug 16, 2017 8:24 pm

Hallo zusammen,
habe gerade versucht, unter XH 1.70 und PHP_7.1.2 das Plugin jm_landingpage ans Laufen zu bringen, was leider fehlschlägt.
Dabei bin ich in der Jquery – Konfiguration darauf gestoßen, dass bei mir Core 1.12.4 eingestellt ist. Es gibt aber auch noch die höheren Einstellungen 1 2.2.4, 3.1.1, 3.2.1
Bei Migrate ist Version jquery-migrate-1.4.1.min.js eingestellt, es gibt aber auch noch jquery-migrate-3.0.0.min.js
Soll ich diese voreingestellten Versionen behalten?
Danke schon mal für eure Antworten.
Michael Zajusch (mhz)-- Mein Tutorial für CMSimple_XH. Früher

cmb
Posts: 13395
Joined: Tue Jun 21, 2011 11:04 am
Location: Mü-Sa, RLP, DE
Contact:

Re: jm_landingpage

Post by cmb » Wed Aug 16, 2017 10:12 pm

mhz wrote:Dabei bin ich in der Jquery – Konfiguration darauf gestoßen, dass bei mir Core 1.12.4 eingestellt ist. Es gibt aber auch noch die höheren Einstellungen 1 2.2.4, 3.1.1, 3.2.1
Bei Migrate ist Version jquery-migrate-1.4.1.min.js eingestellt, es gibt aber auch noch jquery-migrate-3.0.0.min.js
Soll ich diese voreingestellten Versionen behalten?
Bei jQuery muss man v.a. die Hauptversionen unterscheiden. Version 1 unterstützt IE 6+, Version 2 und 3 nur IE 9+. Wem also Benutzer von IE 8 und älter "egal" sind, sollte Version 2 oder 3 wählen. Allerdings kann es natürlich sein, dass auf der Website jQuery-Plugins verwendet werden, die nur mit bestimmten Versionen harmonieren. Hier hilft im Zweifel nur ausprobieren, welche jQuery-Version die geeignete ist.

Um solche Inkompatibilitäten zu minimieren (und beim Entwickeln/Debuggen zu helfen), wurde das Migrate-Plugin entwickelt. Da es vergleichsweise wenig Resourcen verbraucht, bietet es sich an dieses im Zweifel zu aktivieren. Dabei ist aber unbedingt darauf zu achten, dass die Haupt-Version von jQuery und dem Migrate-Plugin übereinstimmt (also jQuery 1.12.4 mit Migrate 1.4.1, oder jQuery 3.2.1 mit Migrate 3.0.0; welche Migrate-Version für jQuery 2 genutzt werden kann/sollte, weiß ich nicht).

Darüber hinaus ist zu beachten, dass jQuery 3 wohl die Version ist, die am besten gepflegt wird. Daher bietet es sich an diese zu wählen, falls halt alle Plugins zumindest mit Migrate-Plugin mitspielen. Und ja, IE 8 Nutzer haben dann halt oft die A-Karte gezogen, weil zu selten Progressive Enhancement implementiert wird (was jQuery allerdings auch nicht gerade unterstützt – im Gegenteil), aber damit kann man heutzutage vielleicht gut leben (und letztlich wäre es für fast alle besser, wenn diese User updaten oder auf einen anderen Browser wechseln würden).
Christoph M. Becker – Plugins for CMSimple_XH

mhz
Posts: 629
Joined: Tue Jun 25, 2013 8:46 pm
Location: Heusenstamm, Hessen
Contact:

Re: jm_landingpage

Post by mhz » Thu Aug 17, 2017 4:42 am

Das Plugin jm_landingpage funktioniert!
Leider funktioniert auch hier die Admin-Edition nicht.
Michael Zajusch (mhz)-- Mein Tutorial für CMSimple_XH. Früher

lck
Posts: 2056
Joined: Wed Mar 23, 2011 11:43 am
Contact:

Re: jm_landingpage

Post by lck » Thu Aug 17, 2017 9:45 am

mhz wrote:Leider funktioniert auch hier die Admin-Edition nicht.
So funktioniert es bei mir. Ersetze in admin.php Zeile 16

Code: Select all

if($jm_landingpage){ 
durch

Code: Select all

if (function_exists('XH_wantsPluginAdministration') && XH_wantsPluginAdministration('jm_landingpage')) { 
Leider gibt es im Debug-Modus noch folgende Meldungen, die sollten aber harmlos sein(? Christoph).
XH-DEPRECATED: Function initvar() is deprecated
D:\xampp\htdocs\cmsimplexh170\plugins\jm_landingpage\admin.php:15

NOTICE: Undefined index: jm_landingpage
D:\xampp\htdocs\cmsimplexh170\cmsimple\classes\PluginConfig.php:84
BTW: Die Plugins von maeg gibt es anscheinend auch nicht mehr zum download.
Da müsste das Wiki angepasst werden, Hartmut.
„Bevor du den Pfeil der Wahrheit abschießt, tauche die Spitze in Honig!“   👉 Ludwig's XH-Templates for MultiPage & OnePage

mhz
Posts: 629
Joined: Tue Jun 25, 2013 8:46 pm
Location: Heusenstamm, Hessen
Contact:

Re: jm_landingpage

Post by mhz » Thu Aug 17, 2017 10:17 am

Danke,
werd ich nahher mal entsprechend ändern, lck.
XH-DEPRECATED: Function initvar() is deprecated
ist bei mir im debug-Modus öfter vorhanden und ist harmlos bzw. scheint keine negativen Auswirkungen zu haben.
Michael Zajusch (mhz)-- Mein Tutorial für CMSimple_XH. Früher

cmb
Posts: 13395
Joined: Tue Jun 21, 2011 11:04 am
Location: Mü-Sa, RLP, DE
Contact:

Re: jm_landingpage

Post by cmb » Thu Aug 17, 2017 10:45 am

lck wrote:
XH-DEPRECATED: Function initvar() is deprecated
D:\xampp\htdocs\cmsimplexh170\plugins\jm_landingpage\admin.php:15

NOTICE: Undefined index: jm_landingpage
D:\xampp\htdocs\cmsimplexh170\cmsimple\classes\PluginConfig.php:84
XH-DEPRECATED ist immer harmlos, kann aber in einer folgenden Version echte Probleme machen (wenn eben die Funktionalität tatsächlich entfernt wurde). In diesem Fall kann die Zeile mit dem initvar('jm_landingpage') einfach entfernt werden.

Die Notice ist ganz interessant. Letztlich wird sie dadurch ausgelöst, dass in index.php $plugin_cf['jm_landingpage'] verwendet wird, obwohl es gar keine Pluginkonfiguration gibt. Man kann also einfach diese Zeile entfernen, und gut ist. Sauberer wäre es aber wohl, wenn cmsimple/classes/PluginConfig.php so angepasst wird, dass solche Fälle berücksichtigt werden.
lck wrote:Die Plugins von maeg gibt es anscheinend auch nicht mehr zum download.
Na ja, die gesamte Website sieht nicht so aus wie sie sollte. Ich frage mal bei maeg nach.
Christoph M. Becker – Plugins for CMSimple_XH

Hartmut
Posts: 536
Joined: Sat Nov 05, 2011 6:13 pm
Location: Butzbach, Deutschland
Contact:

Re: jm_landingpage

Post by Hartmut » Thu Aug 17, 2017 11:05 am

cmb wrote:
mhz wrote:Dabei bin ich in der Jquery – Konfiguration darauf gestoßen, dass bei mir Core 1.12.4 eingestellt ist. Es gibt aber auch noch die höheren Einstellungen 1 2.2.4, 3.1.1, 3.2.1
Bei Migrate ist Version jquery-migrate-1.4.1.min.js eingestellt, es gibt aber auch noch jquery-migrate-3.0.0.min.js
Soll ich diese voreingestellten Versionen behalten?
Bei jQuery muss man v.a. die Hauptversionen unterscheiden. Version 1 unterstützt IE 6+, Version 2 und 3 nur IE 9+. Wem also Benutzer von IE 8 und älter "egal" sind, sollte Version 2 oder 3 wählen. Allerdings kann es natürlich sein, dass auf der Website jQuery-Plugins verwendet werden, die nur mit bestimmten Versionen harmonieren. Hier hilft im Zweifel nur ausprobieren, welche jQuery-Version die geeignete ist.

Um solche Inkompatibilitäten zu minimieren ...
... Browser wechseln würden).
ich habe die Anmerkungen zum jQuery Plugin in die CMSimple_XH 1.7 Dokumentation aufgenommen, da zu diesem Thema gelegentlich nachgefragt wird und es in der Doku so genau auch nicht gestanden hat.

Viele Grüße
Hartmut

cmb
Posts: 13395
Joined: Tue Jun 21, 2011 11:04 am
Location: Mü-Sa, RLP, DE
Contact:

Re: jm_landingpage

Post by cmb » Thu Aug 17, 2017 11:19 am

cmb wrote:Ich frage mal bei maeg nach.
Und er hat prompt geantwortet, dass er sich alsbald darum kümmern wird. :) Also keine Notwendigkeit, etwas an der Doku zu ändern.
Christoph M. Becker – Plugins for CMSimple_XH

lck
Posts: 2056
Joined: Wed Mar 23, 2011 11:43 am
Contact:

Re: jm_landingpage

Post by lck » Thu Aug 17, 2017 11:28 am

cmb wrote:Und er hat prompt geantwortet, dass er sich alsbald darum kümmern wird.
Super!

Mit den von dir oben genannten Änderungen läuft das Plugin jetzt auch ohne Meldungen, danke.
„Bevor du den Pfeil der Wahrheit abschießt, tauche die Spitze in Honig!“   👉 Ludwig's XH-Templates for MultiPage & OnePage

oldnema
Posts: 265
Joined: Wed Jan 21, 2009 5:15 pm
Location: Czech Republic
Contact:

Re: jm_landingpage

Post by oldnema » Mon Aug 21, 2017 8:26 pm

TIP: Modifying jm_landing page, automatically closing the window after the selected time, and hiding the window if the content of the newsbox is empty.
Edit index.php as follows:

Code: Select all

<?php
//*** mod by tata
// utf8-marker: äöüß
// Mods:
// *** Tata – hide the pop-up if there is no message for the landingpage
// +++ Oldnema – set the time for automatic pop-up’s fading


if (!defined('CMSIMPLE_XH_VERSION')) {
    header('HTTP/1.0 403 Forbidden');
    exit;
}

function jm_landingpage() {
    global $hjs, $pth, $plugin_cf, $plugin_tx;

    $pcf = $plugin_cf['jm_landingpage']['name']; //*** added config variable
    $ptx = $plugin_tx['jm_landingpage'];
//*** test if the page has any content excl. heading   
        $test =  strip_tags(newsbox($plugin_cf['jm_landingpage']['name']));
        $test = str_replace(array(" ", "\r","\n", " "), '', $test);
//*** if there is any content, show the page content in newsbox
            if(strlen($test) > 0){
	
    $o = ' <script src="'.$pth['folder']['plugins'].'jm_landingpage/jm_landingpage.js"></script>
	      <div id="fade_out"><div id="page-space"></div>                
            <div id="page-consent">
                <div id="page-inner">
				   <div id="page-text">'.newsbox($plugin_cf['jm_landingpage']['name']).' </div>
                    <button id="accept1">'.$ptx['button'].'</button>
             </div>';
    return $o;
	}else{
//*** if the page is empty, hide the newsbox
    $o = '';
    } 
}

?>
<!-- //+++ -->
<script type="text/javascript">
setTimeout("document.getElementById('fade_out').style.display = 'none'",10000); 
//***  fading out: 10000 = 10 sec.
</script>
Nobody knows how much time he has left ...
http://oldnema.compsys.cz/en/?Demo_templates

Post Reply