js-includes

  1. /WordPress_01/wp-content/themes/oceanwp/functions.php hat
     – ein Bereich für alle Seiten
     – ein Include für Einzelseiten:
    /WordPress_01/wp-content/themes/oceanwp/wpb_hook_javascript_inc.php
  2. lokales Verzeichnis enthält
    wpb_hook_javascript_inc.php als Verteiler für die Seiten. Hier muss id-Nummer aktualisiert werden, wenn neue Version kommt.
    und für die Einzelseiten:
    – wpb_js_home.inc.php mit js für Home
     – wpb_js_xxx mit js für alle and. Seiten 
  3. diese Inc-Dateien gehen am Server ins Verzeichnis /WordPress_01/wp-content/themes/oceanwp, weils darüber wohl nicht funktioniert

Menüs

Es gibt
(a) ein Hauptmenü für Home, Tplg, TA und System: aqs-e5
(b) ein Submenü für rtb, skp und shf: rtb-sub-e5 hat nur 3 Einträge extra

Slider-Knowhow

  1. AE Templates
    + erstellt einzelnes Elementor-Template
    + liefert dazu einen ShortCode ( = pro Slide)
    Lösungsweg:
    -> SA sammelt diese ShortCodes für Karusell
    + diese Kombi passt !!
     
  2. SA Sliders – SlideAnything
    + eigener Menü-Bereich
    + mehrere nebeneinander
       (Browser Device Width)
    + enorme Einstellmöglichkeiten
    + kann ShortCodes als Slides sammeln
    + per ShortCode auf Seite übernommen
    – Elementor geht als Content nicht
    + aber HTML und ShortCodes kann es aufnehmen
      
  3. Elementor Slider Hero (unbenutzt)
    + Item in der Elementor Widget-Liste
    + sammelt Elementor Content Templates
    – wenig Einstellbarkeit
    – keine 2 Slides nebeneinander
        
  4. Tabs responsive

alle: Edit-Modus erkennen

if (location.search.indexOf(‚elementor‘) > 0) EDIT_MODE = true;

if ( ! EDIT_MODE)  {  ….   }

aqs: Impressum-Tasten

inzwischen völlig normaler Aufruf der [PopBoxen, resp.] Elementor-Popups

aqs: Sicherung

Plugins – UpdraftPlus – Einstellungen

 – macht das manuell
 – Ziel:  Dropbox

 

buy-Doku aus Popups (aktuell)

 

senden rtb, ta, skp und shf:

1. alle

haben Form-Namen „pop-buchen“

2. die CSS-Klasse ist „pop-zur-buchung“ (ohne Bedeutung)

3. die Button-Id zur Unterscheidung ist
 – „pop_old_buchen_rtb“  – „pop_new_buchen_rtb“
 – „pop_old_buchen_ta14“  – „pop_new_buchen_ta14“
 – „pop_old_buchen_ta31“  – „pop_new_buchen_ta31“
 – „pop_old_buchen_ta365“  – „pop_new_buchen_ta365“
 – „pop_old_buchen_skp“  – „pop_new_buchen_skp“
 – „pop_old_buchen_shf“  – „pop_new_buchen_shf“

Input-Felder-ID: „pop_old_buchen_rtb_email“ / „pop_old_buchen_rtb_pin“, etc …

„actions after submit“ muss leer sein

js:  alles zusammen bearbeitet im Main-Bereich functions.php

 ===> geht in js nach „checklogin_1“
 – prüfen, ggf neu anlegen, ggf Fehler melden

PopBoxes: PayPal-Kauf (keine PopBoxes mehr)
=> Ersatz Popups von Elementor unter Templates

PopBoxes bieten Kauf an. Das js dazu liegt zentral für alle in wp_index_js.inc.php.
Gegenpart ist rcdc/../wp/plm-cdc-wp.php mit seinen incs (via Proxy).
plm-kontakt.doit.php muss nicht nach rcdc, das pp-ready.php (von PayPal gerufen) allerdings schon.

(pp_1)
Login-Formulare (old/new) landen im js bei ’submit‘, „[name=’pop-buchen‘]“

(pp_2)
do: ‚login_wp‘ (oceanwp/plm-cdc-wp.proxy.php – rcdc.aqss.de/wp/..) prüft die eingegebenen eMail/Pin  und liefert { pin?, email?, newok, userid }. Ok schaltet $(‚.buch-phase_2‘).show() mit Buchen-Button.

(pp_3)
Buchen-Taste landet bei ‚click‘, „.pop-buchen_buynow“ und buynow(anr).

(pp_4)
buynow() veranlasst do: ‚getppcall‘ (oceanwp/plm-cdc-wp.proxy.php – rcdc.aqss.de/wp/..). getppcall meldet bei PayPal an.
Antwort liefert url zu Paypal und wenn  ppurls[’status‘] != ’nopaypal‘ (ok), …

(pp_5)
… öffnet das extra Paypal-Fenster und wartet …

(pp_6)
… via polling über pppollWp(), mit Hilfe von do: ‚readpppoll‘ (oceanwp/plm-cdc-wp.proxy.php – rcdc.aqss.de/wp/..). Weiter bei (pp_12).

(pp_7)
Paypal antwortet an pp-ready.php/?u=$u&anr=$anr$wzlid&c=ppok oder c=ppnok, das bei Fehler Polltoken „Fehler“ schreibt und …

(pp_8)
… bei Erfolg do=setppcomplete (oceanwp/plm-cdc-wp.proxy.php – rcdc.aqss.de/wp/..) ruft.

(pp_9)
do=setppcomplete holt mit ‚GetExpressCheckoutDetails‘ Details bei PayPal, und schließt

(pp_10)
mit ‚DoExpressCheckoutPayment‘ bei PayPal den Kauf ab. Dann schaltet es die Lizenz schickt uns eMails. Es antwortet {ok, nok} an pp-reay.php (pp_8), das dann bei

(pp_11)
den Polltoken entsprechend setzt.

(pp_12)
Polling in js pppollWp() nach (pp_6) bekommt Polltoken als Antwort {nul, fehlgeschlagen, nok, ok}, beendet polling und schaltet auf  Antwortfenster $(‚.buch-phase_3‘).show();

home: Share-Einblendung

Website, mit https://www.aquasirius.eu&hp=scveho308vciiikoi gerufen, tauscht Startbild-Einblendung aus. Das macht js in wpb_js_home.inc.php im oceanwp-child-Verzeichnis.
Ein iFrame aus rdcd/wp-eu (!) wird eingeblendet via index-01-hp-extern.frame.proxy.php (oceanwp-child) originär aus index-01-hp-extern.frame.php (rcdc/aqs-eu).
Der Button „neu hier“ wird via §btnurl§ im iFrame mit scurl (db: aqs___scurl) aus db aqs_tplge gespeist, um mit vorlid=xxx auf die Kunden-Website-Tplg zu springen.
Der Button „habe Pläne“ muss in js umschalten auf Abfrage der Login-EMail. Dann ….

  1. ?hp=share wird von js (wpb_js_home.inc.php) erkannt und
     – öffnet hp-Variante des 1. Blocks
     – zeigt iFrame mit der Tour
     – regelt die Weitergabe-Buttons
  2. iFrame kommt originär von https://rcdc.aqss.de/aqs-eu/index-01-hp-extern.frame.php?hp= und würde auch gehen, aber wir können wegen Cross-Domain da keine Fromname und url auslesen.
  3. also geht es über Proxy http://aqs.aquasirius.eu/wp-content/themes/oceanwp-child/index-01-hp-extern.frame.proxy.php?hp=…, das unter oceanwp-child liegt und dort auch aqs-toern-api.proxy.php braucht.

Anmeldung (pp_1): Abläufe

Im Anmelde-Formular wird ohne Haken zunächst do: ‚login_wp‘ gerufen, das nichts anlegt, aber User/Pin überprüft und rückmeldet.

Zusätzlich danach (und mit Haken sofort) wird in der function do_pp_1b() das do: ‚getwhois-anrs‘ gerufen, das ggf den User neu anlegt, ihm dazu in der Tplg den Demoplan gibt und in anrlist alle Infos für die Angebots-Tasten (offer) liefert.

Die restlichen Lizenzen werden nach dem Kauf in getppcall gesetzt und dort wird ggf auch die TAsmart-Demo vor dem TAsmart-Kauf angelegt.

Demo-Plan: aqs32384.

Frage: Das rtb wird an den Demo-Plan gehängt, oder ?

home: Produkt-Einblendung oben

Unsichtbar-Machung
passiert im Custom-css mit
selector {
  display: none ;  /* block */

Die unischtbaren Blöcke muss man ggf mit Navigator suchen und im Custom-css „none“ auf „block“ umschreiben, damit man darin arbeiten kann.

Einblendungs-Automat
Jeder Datenblock hat class: „home-prod-tplg“, „home-prod-ta“, etc
js schreibt diesen beim Überfahren des Feldes in den html-Code-Block mit class „home-prod“. Der Rahmen im Zielblock ist dort im Custom css eingestellt:

selector {
border: 2px solid #097da8; border-radius:12px; background-color:white; padding:12px; }

TAsmart-Demo-iFrame

((iframe src=“https://www.tasmart.de/?u=21123360&c=hk“ frameborder=0 width=100%; height=720px></iframe))

https://xb.aqss.de/?u=21123360&c=aqsweb

Vorlagen: vorlagen__demo
User: ***demo***

User-Varianten:
Abfrage nur auf „***demo“, so dass Namen wie „***demo-2***“ und „***demo-3*** gut möglich sind.

TA-Anpassungen:
 > Demo-Fenster sollen hier nicht stören
 > startet direkt mit der Simulation
 > Warnschild: „hier kein GPS => QR“ kommt aus Aufruf-Parameter
 > Konto bietet Neuanmeldung und Vollbetrieb (Warnschild bleibt)
 > anmelden mit 1. Tplg mit Demo-Vorlage und 2. TAsmart Demo anlegen
 > rotcode aktivieren
 > tracelog verschleiern

tplg: wzlid-Links

21120427 66tplg: vorlagen___aqs-Elbe _aqs27779 _aqs27780 _aqs27782 _aqs27783
21120426 66tplg: vorlagen___aqs-berlin _aqs27776 _aqs27777 _aqs27778 _aqs32749
21120670 66tplg: vorlagen___aqs-Dahme _aqs28152 _aqs28154 _aqs32750 _aqs32751
21120433 66tplg: vorlagen___aqs-mueritz _aqs27798 _aqs27799 _aqs28156 _aqs28158 _aqs28160
21120672 66tplg: vorlagen___aqs-rheinsberg _aqs28162 _aqs28164 _aqs28172 _aqs28173
21120675 66tplg: vorlagen___aqs-ruppin _aqs28175 _aqs28178 _aqs28179
21120676 66tplg: vorlagen___aqs-elde _aqs28180 _aqs28183 _aqs32752
21120479 66tplg: vorlagen___aqs-Peene _aqs27860 _aqs27861 _aqs27862 _aqs27863 _aqs27864 _aqs27865
21120677 66tplg: vorlagen___aqs-finow _aqs28185 _aqs28186 _aqs32765
21120680 66tplg: vorlagen___aqs-rhein _aqs28194 _aqs28196 _aqs28197 _aqs32770
21120480 66tplg: vorlagen___aqs-mosel _aqs27866 _aqs27867 _aqs27869
21123541 66tplg: vorlagen___aqs-weser _aqs32772 _aqs32773 _aqs32775
21120678 66tplg: vorlagen___aqs-donau _aqs28187 _aqs28189 _aqs28190
21123539 66tplg: vorlagen___aqs-main _aqs32766 _aqs32769

Menü schließen