Seite 1 von 1
JS alerts an diversen Stellen
Verfasst: 11. Feb 2011, 09:57
von Jochen
Hi,
sollten die JS alerts nich auch auf colorbox umgestellt werden? Noch sind nämlich ein paar drin:
Code: Alles auswählen
adm_program
administration
members
members_new.php
34: alert("'.$g_l10n->get('SYS_FIELDS_EMPTY').'");
roles
roles_new.php
188: alert("'.$g_l10n->get('ROL_SAVE_ROLES').'");
modules
ecards
ecard.js (3 matches)
125: alert(error_message);
280: alert(ecardJS.ajaxExecution_ErrorText.replace('[ERROR]',"\n\tResponse text: "+xhr.responseText+"\n\tAjax options: "+ajaxOptions+"\n\tTrown error: "+thrownError));
466: alert( this.messageTooLong.replace("[MAX]",this.max_ecardTextLength) );
lists
members.php (4 matches)
163: alert("'.$g_l10n->get('LST_MUST_HAVE_WEBMASTER').'");
191: alert("'.$g_l10n->get('SYS_ROLE_MAX_MEMBERS', $role->getValue('rol_name')).'");
195: alert("'.$g_l10n->get('SYS_NO_RIGHTS').'");
199: alert("'.$g_l10n->get('SYS_INVALID_PAGE_VIEW').'");
mylist.php
118: alert("'.$g_l10n->get('LST_NO_MORE_COLUMN').'");
profile
profile.js
115: alert(this.changeRoleDates_ErrorText);
system
js
form.js
143: alert('Error: Form elements must not be named "submit".');
Werde leider noch nicht ganz schlau wie Fasse das gemacht hat.

Verfasst: 11. Feb 2011, 15:13
von matzman2000
Hi Jochen,
Du kannst die Colorbox aus JavaScript eigentlich immer mit:
aufrufen.
Ich habes es mal am Beispiel der roles_new.php nachgestellt. Ersetze die Zeile 188
durch
Code: Alles auswählen
jQuery().colorbox({href:"'.$g_root_path.'/adm_program/system/msg_window.php?message_id=ROL_SAVE_ROLES", open:true, iframe:true, width:350, height:150});
Das sollte den gewünschten Effekt bringen. Ich kann das gerne an den von Dir selektierten Stellen einbauen, jedoch vermutlich erst am Sonntag...
Gruss,
Matze
Verfasst: 11. Feb 2011, 16:42
von Jochen
Hi Matze,
so in etwa hatte ich mir das vorgestellt. Mit einem OK-Button wie bei alert fände ichs noch besser. Wenn niemand was dagegen hat kannst Du es gerne einbauen, sobald Du die Zeit findest.
UPDATE: Vielleicht wäre es clever eine eigene alert Funkton zentral zu hinterlegen. Das macht den Aufruf in Zukunft deutlich einfacher.
Schönes Wochenende
Gruß Jochen
Verfasst: 14. Feb 2011, 21:00
von matzman2000
So, ist jetzt eingebaut. Ich dokumentiere das noch im Wiki.
Ich habe es nicht an allen stellen testen können, aber alles was ich gesehen habe lief einwandfrei.
Ich habe es in die common.js als Funktion mit untergebracht, die Syntax lautet sinngemäss:
Code: Alles auswählen
jQueryAlert("Systemtext aus Languagefile", "Optinale Variable 1 für Languagefile", "Optinale Variable 2 für Languagefile", "Breite", "Höhe")
// Erforderlich ist nur der Systemtext, Breite wird per default auf 350px gesetzt, Höhe auf 175px)
Und so siehts dann zB bei den Rollen aus:

Verfasst: 14. Feb 2011, 21:52
von Jochen
Hi,
habs mir gerade mal angeschaut. Gefällt mir schon gut. Eine falsche TextId hab ich ausgetauscht.
Leider scheint das mit der Variable nicht zu funktionieren.
Beispiel members.php Zeile 191, wenn die maximale Mitgliederzahl überschritten würde.
Gruß Jochen
Verfasst: 15. Feb 2011, 09:25
von matzman2000
Jochen hat geschrieben:Leider scheint das mit der Variable nicht zu funktionieren.
Hi Jochen,
da habe ich eine alte Version eingecheckt...
In der common.js fehlt bei der Übergabe der Variablen noch jeweils ein "=".
Code: Alles auswählen
urlparameter = urlparameter + "&message_var1=" + messageVAR1;
Check ich heute abend ein, dann sollte es richtig funktionieren.
Gruss,
Matze
Verfasst: 15. Feb 2011, 09:50
von matzman2000
Verfasst: 15. Feb 2011, 09:59
von Jochen
Hi Matze,
da kann ich Dich ja direkt weiter mit Hinweisen versorgen
- Innerhalb der Colorbox scheint irgendwie das CSS nicht gülitig zu sein.
- Außerdem wäre es glaube ich gut es optisch analog zur Löschabfrage zu halten. Also etwa so:
Code: Alles auswählen
echo '
<div class="formLayout" id="message_window">
<div class="formHead">'.$g_l10n->get('SYS_NOTE').'</div>';
// Ausgabe der Meldung
echo '<div class="formBody">'.$display_message.'</div>';
// Html des Modules ausgeben
echo '
<div style="position: relative; top: 5px">
<button id="btnDelete" type="button"
onclick="parent.$.colorbox.close()"><img src="'. THEME_PATH. '/icons/ok.png" alt="'.$g_l10n->get('SYS_OK').'" /> '.$g_l10n->get('SYS_OK').'</button>
</div>
<div>';
- Die Größenangabe sollten wir glaube ich besser der jQuery Automatik überlassen, wer weiß wieviel Platz andere Sprachen da brauchen.
Gruß Jochen
Verfasst: 15. Feb 2011, 10:36
von matzman2000
Hi Jochen,
warum das CSS nicht gültig ist, lässt sich auf den ersten Blick nicht sagen. Da muss ich mal schauen.
Den Hinweistext kann ich gerne noch mit einarbeiten, schien mir bei einer Alert-Box nicht wirklich brauchbar zu sein...
Die Grössenangaben allerdings müssen erhalten bleiben, weil die Colorbox beim Direktaufruf sonst als Breite/Höhe jeweils "0" annimmt. Sonst müsste man einen festen Rahmen im Anzeigefenster definieren, aber auch da bleibt dann wieder die Frage "Welche Grösse?"
Gruss,
matze
Verfasst: 16. Feb 2011, 22:34
von matzman2000
So ist jetzt eingecheckt, ich habe das jetzt als Hinweis-Fenster wie vorgeschlagen umgesetzt. Es fehlte der Verweis auf die CSS Datei (wird ja in einem eigenständigen Fenster geladen, daher wird die nicht durchgereicht).
Wenn keiner mehr Anmerkungen hat ist es für mich erledigt.
Verfasst: 17. Feb 2011, 12:45
von Jochen
Hi,
sehr schön. Ich war lediglich so frei die Defaultgröße etwas rauf zu setzten. Mit der Überschrift und dem OK-Button, passten jetzt auch sehr kleine Texte nicht mehr.
Gruß Jochen
Verfasst: 18. Feb 2011, 11:35
von Jochen
Hi,
muss das Thema doch noch mal öffnen. Weil mir noch zwei Sachen aufgefallen sind.
In der jquery_alert Funktion bekommen wir den Hintergrund angezeigt im msg_window nicht.
Darüber hab ich mir die Funktion mal angeschaut und gesehen, dass das msg_window nicht in einem iframe geladen wird, somit ist auch ein reload der css Datei nicht notwendig. Nachgestellt bekommen hab ichs leider noch nicht.
Gruß Jochen
Verfasst: 30. Mär 2011, 18:39
von prami
Hallo
Bin noch Neuling in Admidio und lese mir halt einiges durch.
Dabei ist mir aufgefallen, das unter
http://www.admidio.org/dokuwiki/doku.ph ... t_colorbox
2 Variablen benutzt werden können.
Unter
http://www.admidio.org/dokuwiki/doku.ph ... nweistexte
beliebig viele Variablen
Unter
http://www.admidio.org/dokuwiki/doku.ph ... rachigkeit
steht "Momentan können 4 Platzhalter pro Text ..."
Wäre hier nicht ein "allignment" sinnvoll ?
Btw: Ich habe kein Problem damit, wie gesagt es ist mir nur aufgefallen.
Viele Grüsse und weiterhin viel Spass bei der Entwicklung

Wolfgang
Verfasst: 30. Mär 2011, 22:04
von matzman2000
Hallo Wolfgang,
das sind aber verschiedene Stellen bzw. verscheidene Nutzungshintergründe:
- JS Alert wird i.d.R. nur an sehr wenigen Stellen benötigt und soll keine umfassenden Texte (= Variablen) umfassen.
- Message Texte können aus verschiedenen Textbausteinen bestehen und ebnötigen damit n Variablen.
- Mehrsprachigkeit ist von Fasse auf 4 Variablen limitiert, die reichen bislang vollkommen aus.
Gruss,
Matze
