packages/fff: Add package fff-web-l3config #12
No reviewers
Labels
No Label
RFC
RFT
WIP
blocked
bsp
bug
build/scripts/tools
duplicate
feature
fixed
layer3
mantis
more details required
needs changes
node
packages/fff
rejected
security
trivial
upstream
No Milestone
No Assignees
3 Participants
Notifications
Due Date
No due date set.
Depends on
#2 fff-layer3: Add script to load vlan defaults
freifunk-franken/firmware
Reference: freifunk-franken/firmware#12
Loading…
Reference in New Issue
No description provided.
Delete Branch "ChristianD/firmware:l3configweb"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
With this package the layer3 configuration can make and change in the webui.
All function from configuregateway can use with the buttons.
This patch can only be applied after:
fff-layer3: Add script to load vlan defaults
fff-layer3: Make it easier to keep the settings in testmode
Signed-off-by: Christian Dresel freifunk@dresel.systems
Ich bin sehr offen für sprachliche Verbesserungsvorschläge. Das ist allgemein nicht ganz einfach da passende Texte (und auch Button Beschriftungen) zu finden. Wer hier gute Vorschläge hat unbedingt sagen.
Ein paar Whitespace-Remarks für den Anfang.
@ -0,0 +39,4 @@
$(eval $(call BuildPackage,fff-l3webconfig))
Leere Zeilen am Ende können weg.
@ -0,0 +1,82 @@
#!/usr/bin/haserl
Eine Leerzeile reicht.
@ -0,0 +59,4 @@
</table>
</fieldset>
Eine Leerzeile reicht.
@ -0,0 +79,4 @@
</table>
<%in /www/include/footer %>
Leerzeile am Ende der Datei kann weg.
Zur Info wer selbst bauen will:
Ich hab vergessen das package irgendwo zu selektieren, nachdem alle Abhängigkeiten aus der commitmsg und dieses Patch angewahnt wurden, muss noch:
src/packages/fff/fff/variant-layer3.mk
bearbeitet werden und zwar:
DEPENDS:=+fff-base +fff-gateway
ersetzen durch
DEPENDS:=+fff-base +fff-gateway +fff-l3webconfig
Und danach
touch src/packages/fff/fff/Makefile
wenn man nur per
./buildscript build
bauen will.@ -0,0 +12,4 @@
CATEGORY:=Freifunk
TITLE:= Freifunk-Franken layer3 config webui
URL:=http://www.freifunk-franken.de
DEPENDS:=+uhttpd \
Tatsächlich hast du hier eine Dependency auf fff-web. Dafür kann uhttp dann raus.
Abgesehen davon würde ich persönlich überlegen, ob wir für die Dependencies die folgende neue Syntax verwenden:
Dann haben wir nicht mehr das Problem, das wir spaces und tabs mischen müssen, und es sieht trotzdem einigermaßen aus.
Und warum macht dieses Kack-gitea immer spaces, wenn ich tabs verwende ...
@ -0,0 +10,4 @@
define Package/fff-l3webconfig
SECTION:=base
CATEGORY:=Freifunk
TITLE:= Freifunk-Franken layer3 config webui
Bitte hier das Leerzeichen nach dem "=" wegmachen
Ich würde generell überlegen, ob man den Namen Richtung fff-web-l3, fff-web-layer3 oder fff-web-l3config anpasst. Dann hätte man irgendwann eine Gruppe von 'fff-web-*' Paketen, die sich auch optisch als Gruppe absetzen.
@adschm
Da ich fast damit rechne das da noch mehr Pakete kommen bin ich da ganz bei dir. Wir müssen uns jetzt nur einig werden wie genau.
Mein Vorschlag:
fff-web-l3config
Begründung:
Die ersten 2 sind zu allgemein, config beschreibt dafür sehr gut was das Paket tut.
Damit kann ich gut leben. Ich würde vorschlagen, das bis auf Weiteres dann zu verwenden. Mit dem PR updaten kannst du ja ggf. noch warten, bis wir auch wissen, wo die Dependency dann hinmuss (i.e. was bei #14 rauskommt).
@adschm
Wunderbar.
Ja ich warte noch, hier wird vermutlich sowieso noch einiges überarbeitet. Ich freue mich jederzeit über weitere Kommentare von weiteren Personen vor allem über die Texte.
79f65a0fb7
to5b0b3ff876
5b0b3ff876
to83b23ff316
83b23ff316
tob8c1d5baa7
Um nicht ganz die übersicht zu verlieren hab ich hier mal alles überarbeitet was als Anmerkung da war und kleine Verbesserungen noch eingebaut:
Ich habe jetzt die fff-layer3 packages gemergt. Dementsprechend müsste man
@ -0,0 +14,4 @@
URL:=http://www.freifunk-franken.de
DEPENDS:= \
+fff-web \
+fff-gateway
Da du das eh nochmal änderst, würde ich gleich alphabetisch sortieren...
@ -0,0 +19,4 @@
define Package/fff-web-l3config/description
With this package a layer 3 Router can configure
with the webui
"Configure a layer3 router via a web UI"
@ -0,0 +10,4 @@
<textarea name="status" rows="7" cols="100" readonly>
<%
# write
if [ "$REQUEST_METHOD" = "POST" ] && [ "${POST_writeconfig}" ] ; then
Ich persönlich hab da immer lieber ein "-n" anstatt direkt die Variable als bool zu prüfen. Praktisch sollte es aber egal sein. Ein paar weitere Fälle darunter.
https://git.freifunk-franken.de/freifunk-franken/firmware/src/branch/master/src/packages/fff/fff-web/files/www/ssl/cgi-bin/settings.html#L5
Ich hab mir das von hier geklaut, so ist es wenigstens überall im WebUI gleich
Ich meine nicht
[ "$REQUEST_METHOD" = "POST" ]
, das ist ein Vergleich und okay.Ich meine
[ "${POST_writeconfig}" ]
, wo der string aus der Variable direkt gegen bool geprüft wird.ah ok, ja ist vielleicht schöner, habs mal überarbeitet
b8c1d5baa7
toe9058eade6
rebased und Anmerkungen überarbeitet
Add package fff-l3webconfigto Add package fff-web-layer3e9058eade6
toc53d49c491
c53d49c491
to8af0f531bd
Add package fff-web-layer3to Add package fff-web-l3config8af0f531bd
to91a1fac74a
"packages/fff:" prefix für den Titel wäre schön.
@ -0,0 +27,4 @@
define Build/Configure
# nothing
endef
Prepare und Configure können weg.
@ -0,0 +3,4 @@
PKG_NAME:=fff-web-l3config
PKG_RELEASE:=1
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)
PKG_BUILD_DIR kann weg, siehe #25
91a1fac74a
to932190a0bb
932190a0bb
to973a5a298f
Add package fff-web-l3configto packages/fff: Add package fff-web-l3configNun, was soll ich sagen.. Noch sehr krude, aber vermutlich weit besser als nix.
Ich hab noch jede Menge Anmerkungen zum Layout der Seite, aber das kann ich später auch mal selbst fixen.
Ansonsten hab ich noch funktionale Änderungswünsche inline kommentiert.
Danke fürs bauen. Ich hoffe, dass das tatsächlich Leuten hilft.
@ -0,0 +1 @@
l3settings,Layer 3
wir haben überall den Link komplett ausgeschrieben, daher würde ich auch hier 'layer3' statt 'l3settings' bevorzugen.
Wenn noch weitere Layer-3 Seiten geplant sind, dann sollte etwas in der Art l3settings/l3config beibehalten werden und stattdessen der Name der Seite ("Layer 3") angepasst werden.
@ -0,0 +7,4 @@
<fieldset style="min-height: 7em;" class="smallinput">
<legend>Status</legend>
<table><tr><td>
<textarea name="status" rows="7" cols="100" readonly>
Die Einrückung in dieser Datei hat noch Verbesserungspotential.
@ -0,0 +16,4 @@
fi
if [ -n "${POST_loadconfig}" ] ; then
yes | configure-layer3 -c
configure ist ein Schritt, der im WebUI einzeln nur wenig Sinn ergibt. Ich würde das configure stattdessen eher mit in die "testen" und "anwenden" Aktionen packen, so dass es für den Nutzer nur noch zwei Möglichkeiten gibt. Wenn configure-layer3 einen Exitstatus != 0 hat, dann abbrechen und Fehler anzeigen.
@ -0,0 +59,4 @@
</p>
</td>
<td>
* Erstelle zuerst unten eine Konfiguration und speichere diese ab</br>
Passiv verwenden. "Zuerst muss eine Konfiguration [..]"
@ -0,0 +62,4 @@
* Erstelle zuerst unten eine Konfiguration und speichere diese ab</br>
* Klicke danach auf 'Router konfigurieren' um diese Konfiguration in die Routereinstellungen zu schreiben</br>
* Danach kannst du mit Konfiguration testen, die Konfiguration testen. Sollte alles funktionieren musst du diesen Test mit Test beenden beenden ansonsten werden nach 200 Sekunden die Einstellungen zurüruck gesetzt. Sollte die Konfiguration fehlerhaft sein, warte einfach 200 Sekunden und du kommst auf den alten Weg wieder auf das Gerät. Ein manueller Neustart setzt auch die komplette Konfiguriation züruck</br>
* Wenn die Einstellungen funktionieren klicke auf Konfiguration übernehmen, erst dann ist die Konfiguration auch rebootfest.</br>
Bitte HTML Aufzählungen (ul/li) verwenden.
Noch besser: Als eigenen Block umsetzen.
@ -0,0 +76,4 @@
<table style="width: 100%;">
<tr><td>
<fieldset style="min-height: 13em;">
<legend>Konfigurationsdatei</legend>
Ein Verweis auf den Dateipfad wäre hier vermutlich nicht schlecht, dann weiß man was man da editiert.
@ -0,0 +80,4 @@
<textarea name="l3config" rows="25" cols="100"><% echo "$l3config" %></textarea>
</fieldset>
<p><input type="submit" name="writeconfig" value="Konfigurationdatei speichern" style="margin-top: 5px; margin-left: 3px;" />
<input type="submit" onclick="return confirm('Achtung: Es werden alle VLAN Einstellungen zurück gesetzt und die Standarteinstellungen gelanden. Willst du dies wirklich?')" name="loadvlandefault" value="VLAN default laden" style="margin-top: 5px; margin-left: 3px;" /></p>
Typo: Standard
Ich würde das ganze "Auf Standard(einstellungen) zurücksetzen" oder "Standardkonfiguration laden" nennen.
Die Buttons mit in das fieldset der Konfigurationsdatei.
Das Ding hat neben den genannten Probleme noch einige weitere z.b. u.U. kaputte Zeilenumbrücke. Aktuell fehlt mir auch die Zeit das weiter zu verfolgen, daher mache ich hier erstmal zu
ich find keinen Knopf zum zumachen, vielleicht kann das jemand anders tun?
Pull request closed