Datenschutzerklärung link

  • Hello Joomla Freunde


    Auf meinen Produktivsystem ist jo. 3.9.0 installiert

    auf dem Testsystem ist jo 3.9.2 installiert

    mit 3.9.1 hatte ich den selben Fehler


    wenn man auf das Kontaktformular geht und den Datenschutzhinweis anklickt

    öffnet sich ein Fenster in dem man den Datenschutz scrollen kann nach der Version 3.9.0 wird

    das ganze Fenster aus-geschwärzt und der Scrollbalken geht nicht mehr


    verwende php 7.2.14


    https://www.weinvierterl.at/kontakt ver 3.9.0

    https://www.weinvierterl.at/test/kontakt ver 3.9.2


    danke im voraus


    lg Rainer



  • Ja.... das ist leider so. Funktioniert mit Protostar einwandfrei. Bei manchen Templates gibt es eine Fix-Möglichkeit und bei wieder anderen Templates gibt es weitere Probleme. Leider gehen die Template-Anbieter auf diese Problematik nicht ein.


    Empfehlung: Nutze die alte Methode, siehe hier: Wie erstelle ich eine Datenschutz-Checkbox inklusive Link zum Datenschutzhinweis im Joomla Standard-Kontaktformular


    Den Link im Text kannst du dann zusätzlich mit der "JCE Mediabox" verknüpfen, sofern diese installiert ist. Optisch dann also sehr ähnlich, nur mit dem Unterschied, dass es mit nahezu jedem Template funktioniert.


    Oder poste einfach mal die contact_form.php aus dem html-Ordner (Overrides) des verwendeten Template. Musst da unter /com_contact/ suchen. Vielleicht lässt sich das bei dir noch einfach beheben.

  • Hello JoomlaWunder


    Habe jetzt ein Overrides contact angelegt

    was mich wundert bei der version 3.9.0 geht es ja


    poste mal die default_from.php


    danke für die Hilfe

    lg rainer


    <?php

    /**

    * @package Joomla.Site

    * @subpackage com_contact

    *

    * @copyright Copyright (C) 2005 - 2019 Open Source Matters, Inc. All rights reserved.

    * @license GNU General Public License version 2 or later; see LICENSE.txt

    */


    defined('_JEXEC') or die;


    JHtml::_('behavior.keepalive');

    JHtml::_('behavior.formvalidator');


    ?>

    <div class="contact-form">

    <form id="contact-form" action="<?php echo JRoute::_('index.php'); ?>" method="post" class="form-validate form-horizontal well">

    <?php foreach ($this->form->getFieldsets() as $fieldset) : ?>

    <?php if ($fieldset->name === 'captcha' && !$this->captchaEnabled) : ?>

    <?php continue; ?>

    <?php endif; ?>

    <?php $fields = $this->form->getFieldset($fieldset->name); ?>

    <?php if (count($fields)) : ?>

    <fieldset>

    <?php if (isset($fieldset->label) && ($legend = trim(JText::_($fieldset->label))) !== '') : ?>

    <legend><?php echo $legend; ?></legend>

    <?php endif; ?>

    <?php foreach ($fields as $field) : ?>

    <?php echo $field->renderField(); ?>

    <?php endforeach; ?>

    </fieldset>

    <?php endif; ?>

    <?php endforeach; ?>

    <div class="control-group">

    <div class="controls">

    <button class="btn btn-primary validate" type="submit"><?php echo JText::_('COM_CONTACT_CONTACT_SEND'); ?></button>

    <input type="hidden" name="option" value="com_contact" />

    <input type="hidden" name="task" value="contact.submit" />

    <input type="hidden" name="return" value="<?php echo $this->return_page; ?>" />

    <input type="hidden" name="id" value="<?php echo $this->contact->slug; ?>" />

    <?php echo JHtml::_('form.token'); ?>

    </div>

    </div>

    </form>

    </div>

  • Hallo Rainer,


    Was meinst Du mit Du hast ein Override angelegt?


    JoomlaWunder wollte die default_form.php aus dem html Ordner Deines Templates.

    Oder ist obige eh vom Override des Templates?


    Beziehe mich da auf:

    PHP
    <?php foreach ($fields as $field) : ?>
    
    <?php echo $field->renderField(); ?>

    von hier: https://github.com/joomla/joomla-cms/issues/23199

    siehe dort u.a. Hinweis von Re:Later.


    Mehr weiß ich dazu jetzt leider auch nicht & liege da völlig falsch. Hmm.


    Liebe Grüße

    Christine

  • Hello Christine


    meinem Templates verwendet die contact_form.php nicht

    deshalb erstellte ich im html Ordner ein Override meintemplates/html/com_contact/contact

    und postete die default_form.php

    mir wäre es lieber wenn man das über die default_form.php lösen könnte

    ansonsten würde ich Plan B nehmen


    lg Rainer

  • Korrekt! Bei Joomla 3.9.0 ging es noch. Durch die "Weiterentwicklung" in Verbindung mit manchen Templates nun nicht mehr....


    Ich hatte vermutet, dass dein Template bereits eine Override-Datei enthält, in der sich das zumindest teilweise fixen lässt.

    Das bringt in deinem Fall aber nichts, weshalb du diese extra angelegte Override-Datei auch wieder entfernen kannst.


    Es gibt noch weitere Ansätze..... würde dir aber in jedem Fall empfehlen, Plan B anzuwenden. Habe ich selber auf allen meiner Problem-Webseiten durchgeführt.

  • Es liegt nicht am Override, sondern daran, wie diese Modal-Fenster in Joomla! dargestellt werden. Das ist schon seit Ewigkeiten kaputt und bisher gibt es leider keine ordentliche Lösung, die nicht nur an Symptomen herumdoktert, sondern die Ursache behebt. Vielleicht wird das in 4.0 mal was, wenn es bei https://github.com/joomla/joomla-cms/issues/22044 vorangeht.


    Technischer Hintergrund: Sowohl das Modal-Fenster, als auch der schwarze Hintergrund werden mit `position:fixed` eingefügt, leider jedoch an unterschiedlichen Stellen. Der Hintergrund wird am Ende des HTML-Quelltexts eingefügt, sodass er außer dem body kein Elternelement hat. Das Modal wird an der Stelle eingefügt, an der es verwendet wird. Hier also im Formular. Wenn das jetzt aber ein relativ/absolut/fixed/sticky/sonstwie nicht static positioniertes Elternelement hat, das hinter dem Hintergrund liegt, kann das Modal technisch nicht davor liegen, da dann alle Elemente innerhalb des Elternelements dahinter liegen.


    In deinem konkreten Fall kannst du probieren, ob etwas kaputtgeht, wenn du diese beiden position:relative-Zeilen im CSS deines Templates auskommentierst:


    Code: layout.css
    fieldset {
      padding: 10px 0px;
      position: relative;
      margin: 10px 0px 10px 0px;
    }
    Code: layout.css
    #content-handler {
      margin: -8% 20px 0px 20px;
      z-index: 1;
      position: relative;
      border-radius: 7px;
      -moz-border-radius: 7px;
    }

    Alternativ kannst du in einer eigenen CSS-Datei folgende Regel hinterlegen:

    Code
    #content-handler, fieldset {
      position: static;
    }
  • Hallo Harmageddon,

    Es liegt nicht am Override, sondern daran, wie diese Modal-Fenster in Joomla! dargestellt werden.

    ja, das haben wir gemerkt :) Deswegen meine Nachfrage, weil ich diese Zeilen (Code) ja in der geposteten default_form.php gesehen habe.


    Dein Alternativ Code funktioniert tadellos.


    OT oder auch nicht: Gestern angesagt, heute schon in Amt & (H)Würden :)


    Liebe Grüße

    Christine

  • Hallo Harmageddon,


    kannste bitte hier mal schauen: Kontaktformular Datenschutz,Fehlermeldung und Optik im puritty III


    Habe versucht, aus obigem #7 da ev. Codes im obigem Fall, zu überprüfen.


    Bei: fieldset habe ich kein: position: relative; gesehen. Habe auch diesen Alternativcode temporär reingegeben. So ala: nutzt nichts, schadet es auch nix :)


    Allerdings habe ich folgendes gesehen:

    .modul-backdrop {

    position: fixed;

    }

    Da ist dann das Fenster zwar nicht mehr geschwärzt, aber auf Klick: keine Reaktion.


    Beginnend mit obigem issue, welcher auf etliche andere wieder verweist ....


    Liebe Grüße
    Christine