Hallo zusammen,
kann mir jemand sagen, welche bedeutung die TS Variable "js.mandatorydivclass" in Powermail 1.6.0 hat? In den älteren Versionen konnte man darüber die div-class der Fehlermeldungen einstellen, welche bei der JS Validierung angezeigt werden.
In Powermail 1.6.0 hat sich bzgl. Feldvalidierung ja einiges geändert (jquery-Validierung), und die Fehlermeldungen haben nun alle die CSS Klasse "error".
Das würde ja bedeuten, dass ich nach einem Update auf Powermail 1.6.0 in jeder Installation das CSS anpassen müsste, damit die Fehlermeldungen der Validierung wieder korrekt bzw. wie vorher angezeigt werden.
Sehe ich das richtig so, oder habe ich irgendwas übersehen in der Doku?
Gruß
derhansen
Ja, bei mir auch.
Die JS-Validierung findet nicht statt, die input-Klassen fehlen, die js-Files werden nicht eingebunden.
das sollte doch nun mit jquery laufen in 1.6.0? Oder habe ich hier etwas missverstanden?...bei mir geht da nix.
wozu denn diese .js files?...die gibt es leider nicht!
Check if the 4 js files are correctly implemented in the HTML HEAD area:
<script src="typo3conf/ext/powermail/js/mandatoryjs/lib/prototype.js" type="text/javascript"></script>
<script src="typo3conf/ext/powermail/js/mandatoryjs/src/effects.js" type="text/javascript"></script>
<script src="typo3conf/ext/powermail/js/mandatoryjs/fabtabulous.js" type="text/javascript"></script>
<script src="validation/fachgebiete/typo3-extensions/powermail.html" type="text/javascript"></script>
Die Validierung wurde mit der 1.6 auf jQuery umgestellt.
Ich musste meine HTML-Templates überarbeitet. Was ich weiß ist, dass dem Feld bei dem ein Fehler auftritt der Klasse invalid per JS zugewiesen wird. Daraus lässt sich dann folgende Darstellung für das fehlerhafte Feld per CSS einstellen:
font:weight:bold;
border:2px solid red;
background-image:url(pfad/zum/error-icon);
background-position:98% center;
Allerdings wird der Text zur Fehlermeldung jetzt per JS am Ende mit einem DIV und einer Klasse "error" absolut positioniert (bevor der body-Tag geschlossen wird). Es wird zwar versucht die exakte Position mittels left und top zu ermitteln, aber das sieht grauenvoll aus.
Ich habe heute und gestern versucht heraus zu bekommen, an welcher Stelle der DIV-Tag für die Fehlermeldung zusammengebaut wird.
Ein Hinweis fand ich hier:
#103895.
Leider fand ich in der powermail_frontend.js nicht den jquery-validator. Oder habe ich da was missverstanden?
gruß,
flashsilver
Ich bin es nochmal. lso folgende Notlösung habe ich, allerdings wird Sie beim nächsten Update von powermail weder verworfen, da ich in der /static/pi1/setup.txt an folgender Stelle eine Änderung durchgeführt habe:
lib.powermailjs = COA
lib.powermailjs {
// use closure to avoid conflicts with other js frameworks
wrap = (function($){|})(jQuery);
10 = TEXT
10 {
wrap = var powermail_customValidatorConfiguration = {|};
value (
position: 'bottom left',
offset: [0, 0],
message: '<div><em/></div>'
)
}
...
}
Ich habe in der Zeile 442 position: 'top right', offset: [-5,-20] => position: 'bottom left', offset: [0, 0] geändert. Somit rutscht die FEhlermeldung wieder unter das Feld mit dem Fehler. Jetzt muss nur noch per CSS Platz geschaft werden, in dem man
margin-bottom:20px
der invalid-Klasse zuweist.
Hat jemand eine Idee wie ich es Update-sicher machen kann #paralyzed#?
flashsilver
Hallo,
ich denke flashsilver wird schon eine Lösung gefunden haben. Aber für alle die auch eine Lösung suchen die auch nach einem Update bestehen bleibt. Die lib.powermailjs wird am Ende in die page.jsFooterInline.10 kopiert.
Meine Lösung also:
[userFunc = user_powermailOnCurrentPage] && [userFunc = user_powermailCheckT3jquery(false)]
page.jsFooterInline.10 {
10 {
value (
position: 'top right',
offset: [0, 0],
message: '<div><em/></div>'
)
}
}
[end]
Einfach in das Setup kopieren und anpassen. Vielleicht nicht die sauberste Lösung aber sicher bei Updates.
Gruß,
Chris