Neues Modul: GBFilePicker

Hilfe zu Modulen und Tags
NaN

Re: Neues Modul: GBFilePicker

Post by NaN »

Könnte das daran liegen, dass Buttons eigentlich kein href-Attribut haben dürfen?

Hast Du mal probiert die Adresse die der Button öffnen will, selber in einem neuen Fenster zu laden?

Ich habe da außerdem vermutlich eine ganz schlechte Idee gehabt, um auch Fehlermeldungen des Servers im Filepicker ausgeben zu können. Es gibt bei jQuery die Möglichkeit, einen Error Handler anzugeben für den Fall, dass die AJAX Anfrage nicht erfolgreich war. Ich Idiot lasse in diesem Error Handler dieselbe AJAX Anfrage einfach nocheinmal ausführen, nur nicht als XML... selten dämlich oder? Das habe ich gemacht, um auch dann etwas ausgeben zu können, wenn das Resultat kein XML Objekt ist. Also für ganz fatale serverseitige Fehler, die mir dann die XML Ausgabe des Moduls versauen. Wenn es aber nun aus irgendeinem anderen Grund die Anfrage nicht starten kann, dann endet das Ganze in einer Endlosschleife.

Wenn das bei Dir der Fall sein sollte, dann frage ich mich, wieso.
Lade die Datei unter dem Link nochmal runter. Ich habe das Javascript so abgeändert, dass es in diesem Falle eine Alert-Box mit einer Fehlermeldung ausgibt.

Andere Frage: Nutzt Du SubDomains für Javascripts?
AJAX Anfragen (zumindest die via jQuery.get() ) können nur an dieselbe Domain gesendet werden von denen auch das Javascript geladen wird.
(Same Origin Policy - aus Sicherheitsgründen)
Eventuell liegt ja hier der Hund begraben.

(Ich finde den Fehler heute noch. Und wenn ich die ganze Nacht daran arbeiten muss...)
Last edited by NaN on Thu Sep 09, 2010 9:56 am, edited 1 time in total.
nicmare
Power Poster
Power Poster
Posts: 1150
Joined: Sat Aug 25, 2007 9:55 am

Re: Neues Modul: GBFilePicker

Post by nicmare »

dein link funzt net.
aber in dem beispielfilepicker unter erweiterungen wird ja dieser link geladen:
moduleinterface.php?mact=GBFilePicker,m1_,fileBrowser,0&sp_=fbd16faa&m1_name=GBFilePicker_image_filepicker&m1_disable_theme=1&m1_subdir=images

Wenn ich den auch manuell im content öffne, wird mir das gleiche ergebnis (xml) geladen.
nockenfell
Power Poster
Power Poster
Posts: 751
Joined: Fri Sep 12, 2008 2:34 pm

Re: Neues Modul: GBFilePicker

Post by nockenfell »

Ich habe mal die Version von dir installiert. Damit bekomme ich folgende Messagebox:;

Error: could not send AJAX request or server response is no XML data. For error checking please check this adresse manually: undefinied

Wenn ich den Link direkt öffne, bekomme ich kurz eine Fehlermeldung und danach wieder das Login-Formular des Backends

Edit: Hab vergessen in der URL die & durch ein & zu ersetzen. Danach bekomme ich das XML.
Last edited by nockenfell on Wed Sep 08, 2010 6:10 pm, edited 1 time in total.
[this message is written with 100% recycled bits]
NaN

Re: Neues Modul: GBFilePicker

Post by NaN »

Dieses dropbox... ::)
Jetzt sollte es gehen.

Also sowohl im Beispiel als auch im Inhalt werden die gleichen XML Resultate gezeigt?
Ohne Fehler?
Hm.
Mich verwirrt nur die Tatsache, dass das Javascript offenbar geladen und problemlos ausgeführt wird. Nur verstehe ich nicht, wieso der Button, der ja nichts weiter macht als jQuery.get(this.href) auszuführen, dazu führt, dass die Seite - fehlerhaft - neu geladen wird.
So viel habe ich am FilePicker im Vergelcieh zu AdvancedContent nicht geändert.
Was mich aber noch mehr verwirrt, ist, dass es bei mir - zumindest lokal, online habe ich es noch nicht getestet - funktioniert.

Bei den Javascript Fehlermeldungen gibt es nur eine einzige, die sich auf das Modul bezieht. Und die kann ich nicht nachvollziehen: GBFP is not defined.
Wenn GBFP nicht definiert ist, wer versucht dann auf GBFP zuzugriefen, wenn nicht eine Funktion aus dem Objekt GBFP selbst bzw. eine Zeile am Ende des Javascripts in dem GBPF eindeutig als erstes als GBFP = new Object(); definiert wird ???
nicmare
Power Poster
Power Poster
Posts: 1150
Joined: Sat Aug 25, 2007 9:55 am

Re: Neues Modul: GBFilePicker

Post by nicmare »

jetzt kommt nen alert nach dem abdunkeln:

Code: Select all

Error: could not send AJAX request or server response is no XML data. For error checking please check this address manually: undefined
NaN

Re: Neues Modul: GBFilePicker

Post by NaN »

nockenfell wrote:
please check this adresse manually: undefinied
Was merwürdig ist, da genau eine Zeile vorher href mit

Code: Select all


var href = jQuery('#'+GBFP.triggerId).attr('href');

eindeutig definiert sein sollte.
Also entweder mag Euer Browser keine Attribute von Objekten auslesen, die sie garnicht haben dürfen, oder es liegt an dem "var" mit dem die Variable definiert wird, sodass sie in der callback funktion nicht verfügbar ist.
(Sollte ich statt der Buttons vielleicht doch lieber Links nehmen? Aber dann geht das "disabled" nicht, wärend das Javascript noch lädt.)
nockenfell wrote:
Wenn ich den Link direkt öffne, bekomme ich kurz eine Fehlermeldung und danach wieder das Login-Formular des Backends

Edit: Hab vergessen in der URL die & durch ein & zu ersetzen. Danach bekomme ich das XML.
Aha, damit kann ich schon etwas mehr anfangen, denn die & s in der URL können bei AJAX zu Problemen führen (war zumindest beim FEUMailer so; da musste ich mit str_replace die & s wieder in & ändern.).
nicmare
Power Poster
Power Poster
Posts: 1150
Joined: Sat Aug 25, 2007 9:55 am

Re: Neues Modul: GBFilePicker

Post by nicmare »

du kannst normale links "disablen":

Code: Select all

$("a.button").click(function(e){
e.preventDefault();
$(this).addClass("disabled");
deinefunktion();
});
NaN

Re: Neues Modul: GBFilePicker

Post by NaN »

nicmare wrote:
jetzt kommt nen alert nach dem abdunkeln:
Okay, dann scheint also etwas mit AJAX und URL nicht mehr ganz zu stimmen.
Dann habe ich zumindest schonmal einen Ansatz.

Danke für Eure Geduld :)


du kannst normale links "disablen":
Danke, kannte ich noch nicht.
Werde ich mal probieren.

Edit:
Ich Trottel! Wozu und vor allem wie soll ich denn Links mit jQuery "disablen", wenn ich sie nur deshalb "disablen" will, weil jQuery noch garnicht geladen ist? ;D


Links lassen sich auch besser stylen.
Edit: also bleibts doch erstmal bei den Buttons

Mal sehen ob es nicht besser ist, die URL gleich mit einem onclick zu übergeben anstelle mit jQuery den Buttons/Links eine Funktion zuzuweisen.
Last edited by NaN on Wed Sep 08, 2010 11:14 pm, edited 1 time in total.
nicmare
Power Poster
Power Poster
Posts: 1150
Joined: Sat Aug 25, 2007 9:55 am

Re: Neues Modul: GBFilePicker

Post by nicmare »

du solltest es trotzdem probieren. brauche ich ständig :D (das verhindert nämlich auch bei internen funktionen dass die seite immer nach oben springt wenn du nur href="#" angibst)
NaN

Re: Neues Modul: GBFilePicker

Post by NaN »

Gut zu wissen.
Bringt mir aber im Moment nicht viel. Mir geht es eigentlich nur darum, dass der User sieht "Hier kann ich noch nicht klicken". Wenn ich das mit Links mache, die aber nur via CSS als "disabled" formatiert sind, dann kann man sie aber trotzdem anklicken. Da die Funktion die sie ausführen sollen evtl. noch nicht existiert, gibt es einen Javascript Fehler. Dadurch wird kein false zurückgeliefert und die Default-Aktion des Links ausgeführt. Was bedeutet, dass der Browser eine neue Seite lädt. Vielleicht kann man das auch irgendwie anders machen, aber ich denke einfache Buttons tun keinem weh und machen hier auch am wenigsten Arbeit.

Habe gerade wieder eine neue Version hochgeladen.
Hab in den URLs & mit & ersetzt und noch ein paar kleine Schönheitsfehler ausgebügelt. Ich kann aber nicht sagen, ob der Fehler damit behoben ist, da ich ihn ja leider nicht live erlebe.
nicmare
Power Poster
Power Poster
Posts: 1150
Joined: Sat Aug 25, 2007 9:55 am

Re: Neues Modul: GBFilePicker

Post by nicmare »

man kann mit links wunderbar arbeiten. meine erste methode ist das gleiche wie

Code: Select all

$("a.button").click(function(){
$(this).addClass("disabled");
return false
});
wobei preventDefault wohl irgendwie kompatibler ist. aber gut…jeder wie er es am besten kann :-)

link zur neuen version?
NaN

Re: Neues Modul: GBFilePicker

Post by NaN »

Du hast ja recht, aber ... laut Deinem Beispiel wird der Link erst dann "inaktiv" wenn man darauf klickt. Das ist aber nicht das was ich erreichen möchte. Mir geht es nicht darum zu verhindern, dass die Links vom Browser ausgeführt werden. Das kriege ich auch mit einem onclick="return false;" hin. Außerdem kann ich Deinen Code nicht ohne jQuery verwenden. Da zu diesem Zeitpunkt aber noch nicht feststeht, ob jQuery überhaupt geladen wurde, kann ich nicht mit jQuery die Links deaktivieren. Im Normalfall gibt es jQuery da noch nicht. Und nur solange das der Fall ist, sollen die Buttons / Links deaktiviert sein. Sobald jQuery da ist, sollen sie ja aktiv sein. Und das mache ich mit

Code: Select all


$('.GBFP_disabled').removeAttr('disabled').removeClass('disabled');

Ich will es also genau umgekehrt machen ;)
Und es ist mir einfach zu kompliziert, wenn ich erstmal alle Links mit onclick="return false" ausgebe und dann erst, wenn jQuery dann da ist den Links noch irgendwelche anderen Funktionen zuweise.
nicmare
Power Poster
Power Poster
Posts: 1150
Joined: Sat Aug 25, 2007 9:55 am

Re: Neues Modul: GBFilePicker

Post by nicmare »

okok :D
auf jeden fall bin ich schon megaheiß auf nen final release. denn das ist nen richtig cooles modul!
NaN

Re: Neues Modul: GBFilePicker

Post by NaN »

nicmare wrote:
link zur neuen version?
Forge, Dropbox oder SVN

Hab die Links erst vor paar Sekunden aktualisiert ;)

Ich freu mich auch schon wenn das Modul fertig ist. Vor allem weil ich mich dann wieder anderen Dingen widmen kann (AdvancedContent z.B. Da warten noch so viele Ideen in diversen Schubläden... )
NaN

Re: Neues Modul: GBFilePicker

Post by NaN »

Sorry, falsches Archiv ... ::)
Jetzt sollte es gehen.
Ich brauch 'ne Pause.
Ich mach grad nur noch Blödsinn...
Locked

Return to “Module und Tags”