Bitte geben Sie einen Grund für die Verwarnung an
Der Grund erscheint unter dem Beitrag.Bei einer weiteren Verwarnung wird das Mitglied automatisch gesperrt.
Bei Plugin-Update Type von Config-Variable ändern
#1 Bei Plugin-Update Type von Config-Variable ändern
Hallo,
ich möchte bei meinem Plugin Vorlagen für Themenmarkierungen den Type einer Config-Variable von chars zu text ändern.
Offenbar kann der Type einer Config-Variable nicht nach dem Erstellen geändert werden. Da ich das Plugin bereits in den Plugin-Store gestellt habe möchte ich die manuellen Änderungen der Nutzer nicht ohne weiteres mit den Standardwerten überschreiben. Löschen und neu erstellen der Variable mit einem anderen Type ist also keine Option.
Eine Möglichkeit wäre, die alte Config-Variable vom Type chars zu belassen und eine neue Config-Variable vom Type text zu erstellen. Das Plugin würde in dem Fall weiterhin mit einer alten Variable ausgeliefert werden. Diese wird dann ignoriert, die Änderungen würden also erhalten bleiben.
Allerdings muss der Nutzer in dem Fall nach dem Update die eigenen Änderungen selbst in die neue Config-Variable kopieren. Ich habe keine JavaScript-Funktion zum Setzen einer Config-Variable (wie setConf) gefunden.
Gibt es eine Möglichkeit, den Type einer Config-Variable zu ändern, aber dabei die manuellen Änderungen der Nutzer zu behalten?
#2 RE: Bei Plugin-Update Type von Config-Variable ändern
Ich lösche die Variable und erstelle sie mit dem gleichen Name einfach neu mit dem richtigen Typ.
Die Admins müssen in den Einstellungen die Werte dann bein Update neu eingeben.
es ist leider nicht möglich im Plugin eine configVar zu beschreiben oder zu löschen. Es geht leider nur lesen.
Wenn das ginge, könnte man eine neue erstellen und die Daten aus der alten kopieren. Geht aber nicht.
Entweder umschreiben und die Admins müssen sie neu beschreiben oder doppelte und man verwendet die alte solange die neue leer ist.
Beui der neuen in die Beschreibung schreiben das beim nächsten Update die alte verschwindet und die Werte in die neue übertragen werden müssen.
Vielleicht hat der Support noch eine bessere Lösung
www.friends-of-xobor.de (621181 - Template kann wechsel bei Pluin Tests)
www.seniorenclub-sel-koeln.de (578865 - V6 Template)
Da gibt es leider keine schöne Möglichkeit.
Grundsätzlich ist das auch schlicht nicht immer möglich: Ein Text-Feld in ein Int-Feld zu ändern schlägt naturgemäß in den meisten Fällen fehl bzw dürfte zu unerwünschten Ergebnissen führen
Aber auch für die Fälle, bei denen es möglich wäre (z.B. Char zu Text) gibt es da aktuell keine einfache Möglichkeit.
Theoretisch kann man das über ein Action-Element lösen:
Nach dem Login eines Admins müsste man abfangen, ob die neue Config-Variable schon beschrieben wurde. Falls nicht nimmt man den Wert der alten Variable und bastelt sich den Post-Call selbst zusammen, der normalerweise beim Speichern der Plugin-Einstellungen gemacht würde. Ist nicht gerade schön, klappt aber ohne Probleme.
-edit-
Wo ich das gerade lese müsste das natürlich auch ohne action-Element in einem beliebigen Plugin-Element klappen.
#4 RE: Bei Plugin-Update Type von Config-Variable ändern
Zitat von Ingmar im Beitrag #3
Nach dem Login eines Admins müsste man abfangen, ob die neue Config-Variable schon beschrieben wurde. Falls nicht nimmt man den Wert der alten Variable und bastelt sich den Post-Call selbst zusammen, der normalerweise beim Speichern der Plugin-Einstellungen gemacht würde. Ist nicht gerade schön, klappt aber ohne Probleme.
Interessanter Ansatz. Allerdings erzeugt ein AJAX-Request folgenden Cross-Origin-Request-Fehler:
Zitat
Access to XMLHttpRequest at '<URL>/admin/?page=plugins&option=main&pluginid=threadmarkings&configplugin=true' from origin '<URL>' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
Allgemein tritt hier ein cross-origin request auf, da ich einen request von HTTP zu HTTPS schicke. Der cross-origin request wird sich also nicht vermeiden lassen.
No 'Access-Control-Allow-Origin' header is present on the requested resource klingt nach einem serverseitigem Fehler, also nicht von mir zu ändern. Ein entsprechender Access-Control-Allow-Origin Header, der Zugriffe von der HTTP-Domain erlaubt, müsste serverseitig geschickt werden - sofern das gewollt ist.
Ja, da hast du wohl recht - das klappt nur in Foren mit https.
Zitat von creator im Beitrag #4
Ein entsprechender Access-Control-Allow-Origin Header, der Zugriffe von der HTTP-Domain erlaubt, müsste serverseitig geschickt werden - sofern das gewollt ist.
Da muss ich mal in mich gehen, ob wir das wirklich wollen
#6 RE: Bei Plugin-Update Type von Config-Variable ändern
Anderer Ansatz wäre vielleicht, auch bei den config Variablen ein setConf zum getConf noch bereitzustellen.
www.friends-of-xobor.de (621181 - Template kann wechsel bei Pluin Tests)
www.seniorenclub-sel-koeln.de (578865 - V6 Template)
#7 RE: Bei Plugin-Update Type von Config-Variable ändern
Zitat von Ingmar im Beitrag #5
Da muss ich mal in mich gehen, ob wir das wirklich wollen
Ich wüsste nicht, was dagegen spricht
Ist aber natürlich nicht meine Entscheidung.
Zitat von Mike48 im Beitrag #6
Anderer Ansatz wäre vielleicht, auch bei den config Variablen ein setConf zum getConf noch bereitzustellen.
Das wäre natürlich noch besser, müsste allerdings erst in der Forensoftware implementiert werden.
Eine Alternative zu der AJAX-Variante wäre, die entsprechenden Werte direkt als Formular an den Admin-Bereich zu schicken. Damit der Nutzer davon nichts mitbekommt wird das Formular an einen versteckten iframe abgeschickt.
Hier ein Beispiel, wie das ungefähr aussehen könnte:
2
3
4
5
6
<iframe style="display:none;" name="submit-form"></iframe>
<form target="submit-form" action="/admin/?page=plugins&option=main&pluginid=threadmarkings&configplugin=true" method="POST">
<input name="text_marks" id="text_marks" value="test_marks_from_form">
<input name="chars_options" id="chars_options" value="test_options_from_form">
<input type="submit" name="edit_plugin_settings" id="edit_plugin_settings" value="Speichern">
</form>
Natürlich ist das noch unsauberer als die AJAX-Lösung, scheint aber wirklich zu funktionieren. Wäre diese Lösung denn überhaupt für den Plugin-Store zugelassen?
#8 RE: Bei Plugin-Update Type von Config-Variable ändern
@creator
Ich habe dein Plugin abgelehnt, da ich das grundsätzlich schwierig finde mit den aktuellen Möglichkeiten zum Config-Variablen-Update. Außerdem gibt es für das Plugin ganze 5 Installationen - da ist es denke ich gerechtfertigt, dass die 5 Admins einmal die Einstellungen übertragen / neu anlegen wenn du eine Variable änderst
Ich werde versuchen mit einem der nächsten Updates die Variablen-Typ-Änderung (dann zur Not mit typecast, wo es nicht eindeutig ist) zu erlauben.
Zitat von Ingmar im Beitrag #8
Ich habe dein Plugin abgelehnt, da ich das grundsätzlich schwierig finde mit den aktuellen Möglichkeiten zum Config-Variablen-Update.
Danke für die Rückmeldung. Muss beim nächsten Update die Versionsnummer erhöht werden oder kann ich weiterhin 0.002 verwenden?
Zitat von Ingmar im Beitrag #8
Außerdem gibt es für das Plugin ganze 5 Installationen - da ist es denke ich gerechtfertigt, dass die 5 Admins einmal die Einstellungen übertragen / neu anlegen wenn du eine Variable änderst wink]
Bin überrascht, dass es schon 5 Installation sind
Die Anzahl an Installation kann ich allerdings nicht selbst einsehen, oder?
Zitat von Ingmar im Beitrag #8
Ich werde versuchen mit einem der nächsten Updates die Variablen-Typ-Änderung (dann zur Not mit typecast, wo es nicht eindeutig ist) zu erlauben.
Klingt gut. Da gibt es dann in Zukunft eine sinnvolle Möglichkeit.
Zitat von creator im Beitrag #9
Die Anzahl an Installation kann ich allerdings nicht selbst einsehen, oder?
Ich glaube nicht, beim anderen Plugin sind es aktuell 10.
Zitat von creator im Beitrag #9
Muss beim nächsten Update die Versionsnummer erhöht werden oder kann ich weiterhin 0.002 verwenden?
Probier's aus, ich tippe du musst das erhöhen beim einreichen.
Man kann keine Version zwei mal veröffentlichten. Das muss man sogar wenn man es in den östlichen und den privaten Store schickt.
www.friends-of-xobor.de (621181 - Template kann wechsel bei Pluin Tests)
www.seniorenclub-sel-koeln.de (578865 - V6 Template)
#13 RE: Bei Plugin-Update Type von Config-Variable ändern
Danke fürs Freischalten @Ingmar
Allerdings ist der hochgeladene Screenshot vom Plugin leider nicht sichtbar und das Plugin lässt sich nicht kopieren, obwohl ich SourceCode freigeben angewählt habe.
Liegt das an einen Fehler von mir?
- Informationen
- Aktuelle News
- Forum Tutorials - Tipps und Anleitungen
- SEO / Werbung fürs Forum
- Verwaltung
- Extras
- Design
- Plugin(system)
- Eure Fragen zu Tutorials
- Forum Support
- Fragen und Antworten
- Pluginsystem
- Plugins
- Templates & Sprachen
- Bugreport
- Verbesserungsvorschläge
- Sponsoren gesucht
- Das neue Xobor Business-Template
- News und Updates
- Bugreport
- Allgemeines Feedback
- Verbesserungsvorschläge
- Sonstiges
- Kaffeeklatsch
- Lob & Kritik
- Verbesserungsvorschläge
- Allgemeine Fragen
- Fehlermeldungen
- Verbesserungsvorschläge Responsive Design
- Bugreport Responsive Design
- Archiv - Alter Betatest
- Responsive Design - Verbesserungsvorschläge
- Responsive Design - Bugreport
- Fragen zum neuen Template
- Neue Administration Beta Test
- Bugreport Neue Administration
- Allgemeines Fragen & Feedback
- Verbesserungsvorschläge zur neuen Administration
- Shoutbox
Ähnliche Themen
Jetzt anmelden!
Jetzt registrieren!
© 2017 Xobor | Forum-Software