LUAC = luac
LUAC_OPTIONS = -s
-FILES = ffluci/debug.lua ffluci/view/*.htm ffluci/view/cbi/*.htm
+FILES = ffluci/debug.lua ffluci/view/*.htm ffluci/view/cbi/*.htm ffluci/i18n/*
CFILES = ffluci/util.lua ffluci/http.lua ffluci/fs.lua \
ffluci/sys.lua ffluci/model/uci.lua ffluci/model/ipkg.lua \
-uci_add = "Add entry"
-uci_del = "Remove entry"
-uci_save = "Save configuration"
-uci_reset = "Reset form"
\ No newline at end of file
+cbi_add = "Add entry"
+cbi_del = "Remove entry"
+cbi_invalid = "Error: Invalid input value"
+cbi_addopt = "-- Field --"
\ No newline at end of file
--- /dev/null
+add = "Add"
+save = "Save"
+reset = "Reset"
+
+load = "Load"
+webif = "Webinterface"
+public = "Public"
+admin = "Administration"
+apply = "Apply"
+changes = "Changes"
+revert = "Revert"
+
+index = "Overview"
+system = "System"
+services = "Services"
+network = "Network"
+wifi = "Wifi"
+status = "Status"
+statistic = "Statistic"
+
+config = "Configuration"
+path = "Path"
\ No newline at end of file
-- Menu definition extra scope
scope = {
- translate = ffluci.i18n.translate
+ translate = ffluci.i18n.translate,
+ loadtrans = ffluci.i18n.loadc
}
-- Local menu database
<div>
<script type="text/javascript" src="<%=media%>/cbi.js"></script>
<input type="hidden" name="cbi.submit" value="1" />
- <input type="submit" value="<%:cbi_save Speichern%>" class="hidden" />
+ <input type="submit" value="<%:save Speichern%>" class="hidden" />
</div>
<div class="cbi-section" id="cbi-<%=self.config%>-<%=self.section%>">
<h2><%=self.title%></h2>
<div class="cbi-section-descr"><%=self.description%></div>
- <input type="submit" name="cbi.cns.<%=self.config%>.<%=self.section%>" value="<%:cbi_cns Eintrag anlegen%>" />
+ <input type="submit" name="cbi.cns.<%=self.config%>.<%=self.section%>" value="<%:cbi_add Eintrag anlegen%>" />
</div>
<% end %>
<div><%:config Konfiguration%>
<ul>
<% if ucic then %>
- <li><a href="<%=controller%>/admin/uci/changes"><%:changes Änderungen:%> <%=ucic%></a></li>
+ <li><a href="<%=controller%>/admin/uci/changes"><%:changes Änderungen%>: <%=ucic%></a></li>
<li><a href="<%=controller%>/admin/uci/apply"><%:apply Anwenden%></a></li>
<li><a href="<%=controller%>/admin/uci/revert"><%:revert Verwerfen%></a></li>
<% else %>
- <li><%:changes Änderungen: %> 0</li>
+ <li><%:changes Änderungen%>: 0</li>
<% end %>
</ul>
</div>
--- /dev/null
+contact = "Contact"
+luci = "User Interface"
+
+hello = "Hello!"
+admin1 = "This is the administration area of FFLuCI."
+admin2 = "FFLuCI is a free, flexible, and user friendly graphical interface for configuring OpenWRT Kamikaze."
+admin3 = "On the following pages you can adjust all important settings of your router."
+admin4 = "You will find a navigation leading to the different configuration pages on the left side."
+admin5 = [[As we are always want to improve this interface we are looking forward
+to your feedback and suggestions.]]
+admin6 = "And now have fun with your router!"
+team = "The FFLuCI Team"
+
+contact1 = [[This information will be available on the public contact page.
+As stated in the Picopeering Agreement you should at least enter your e-mail address.
+To display your router on any topography map, please enter your geographical coordinates or at least
+your street and house number in the location field.]]
+nickname = "Nickname"
+mail1 = "This field is essential!"
+phone = "Phone"
+location = "Location"
+coord = "Coordinates"
+coord1 = "Latitude;Longitude (e.g. 51.5;12.9)"
+note = "Note"
+
+luci1 = "Here you can customize the settings and the functionality of FFLuCI."
+language = "Language"
+general = "General"
+catpriv = "Category Privileges"
+catpriv1 = [[To secure FFLuCI even further the user and group privileges of
+each category can be decreased. Therefore an attacker cannot takeover the whole system
+when a security exploit for any publicly available page is found.]]
+ucicommit = "Post-commit actions"
+ucicommit1 = [[These commands will be executed automatically when a given UCI configuration is committed allowing
+changes to be applied instantly.]]
+keepflash = "Files to be kept when flashing a new firmware"
+keepflash1 = "When flashing a new firmware with FFLuCI these files will be added to the new firmware installation."
\ No newline at end of file
--- /dev/null
+uci_applied = "The following changes were applied"
+uci_reverted = "The following changes were reverted"
\ No newline at end of file
-- Todo: Translate
-m = Map("luci", "Kontakt", [[Diese Daten sind auf der öffentlichen Kontaktseite
-sichtbar. Bitte gib an, wie man dich am besten kontaktieren kann. Diese Informationen sollten
-nach der Picopeering Vereinbarung mindestens deine E-Mail-Adresse enthalten.
+m = Map("luci", translate("contact", "Kontakt"), translate("contact1", [[Diese Daten sind
+auf der öffentlichen Kontaktseite sichtbar. Bitte gib an, wie man dich am besten kontaktieren kann.
+Diese Informationen sollten nach der Picopeering Vereinbarung mindestens deine E-Mail-Adresse enthalten.
Damit dein Knoten durch Topographieprogramme erfasst werden kann, gib bitte deine Geokoordinaten oder
-zumindest deine Straße und Hausnummer unter Standort an.]])
+zumindest deine Straße und Hausnummer unter Standort an.]]))
c = m:section(NamedSection, "contact")
-c:option(Value, "nickname", "Pseudonym")
-c:option(Value, "name", "Name")
-c:option(Value, "mail", "E-Mail", "Bitte unbedingt angeben!")
-c:option(Value, "phone", "Telefon")
-c:option(Value, "location", "Standort")
-c:option(Value, "geo", "Koordinaten", "Bitte als Breite;Länge (z.B: 51.5;12.9) angeben")
-c:option(Value, "note", "Notiz")
+c:option(Value, "nickname", translate("nickname", "Pseudonym"))
+c:option(Value, "name", translate("name", "Name"))
+c:option(Value, "mail", translate("mail", "E-Mail"), translate("mail1", "Bitte unbedingt angeben!"))
+c:option(Value, "phone", translate("phone", "Telefon"))
+c:option(Value, "location", translate("location", "Standort"))
+c:option(Value, "geo", translate("coord", "Koordinaten"), translate("coord1", "Bitte als Breite;Länge (z.B: 51.5;12.9) angeben"))
+c:option(Value, "note", translate("note", "Notiz"))
return m
\ No newline at end of file
-- ToDo: Translate
require("ffluci.config")
-m = Map("luci", "Oberfläche", "Hier können Eigenschaften und die Funktionalität der Oberfläche angepasst werden.")
+m = Map("luci", translate("luci", "Oberfläche"), translate("luci1",
+ "Hier können Eigenschaften und die Funktionalität der Oberfläche angepasst werden."))
-c = m:section(NamedSection, "main", "core", "Allgemein")
+c = m:section(NamedSection, "main", "core", translate("general", "Allgemein"))
-l = c:option(ListValue, "lang", "Sprache")
+l = c:option(ListValue, "lang", translate("language", "Sprache"))
for k, v in pairs(ffluci.config.languages) do
if k:sub(1, 1) ~= "." then
l:value(k, v)
end
end
-t = c:option(ListValue, "mediaurlbase", "Design")
+t = c:option(ListValue, "mediaurlbase", translate("design", "Design"))
for k, v in pairs(ffluci.config.themes) do
if k:sub(1, 1) ~= "." then
t:value(v, k)
end
end
-p = m:section(NamedSection, "category_privileges", "core", "Kategorieprivilegien", [[Zur
-zusätzlichen Sicherung der Oberfläche gegen Angreifer, können hier die Ausführungsrechte
-der Seiten für einzelne Kategorien reduziert werden. So können z.B. Sicherheitslücken im
-ungeschützten Bereich der Oberfläche nicht mehr zur Übernahme des Routers genutzt werden.]])
+p = m:section(NamedSection, "category_privileges", "core", translate("catpriv", "Kategorieprivilegien"),
+ translate("catpriv1", [[Zur zusätzlichen Sicherung der Oberfläche gegen Angreifer, können hier die
+Ausführungsrechte der Seiten für einzelne Kategorien reduziert werden. So können z.B. Sicherheitslücken im
+ungeschützten Bereich der Oberfläche nicht mehr zur Übernahme des Routers genutzt werden.]]))
p.dynamic = true
-u = m:section(NamedSection, "uci_oncommit", "event", "UCI-Befehle beim Anwenden", [[Beim Anwenden
+u = m:section(NamedSection, "uci_oncommit", "event", translate("ucicommit", "UCI-Befehle beim Anwenden"),
+ translate("ucicommit1", [[Beim Anwenden
der Konfiguration aus der Oberflächliche heraus können automatisch die relevanten Dienste neugestart werden,
-sodass Änderungen sofort nach dem Anwenden aktiv werden und der Router nicht erst neugestartet werden muss-]])
+sodass Änderungen sofort nach dem Anwenden aktiv werden und der Router nicht erst neugestartet werden muss.]]))
u.dynamic = true
-f = m:section(NamedSection, "flash_keep", "extern", "Zu übernehmende Dateien bei Firmwareupgrade", [[Die folgenden
-Dateien und Verzeichnisse werden beim Aktualisieren der Firmware über die Oberfläche automatisch in die neue Firmware
-übernommen.]])
+f = m:section(NamedSection, "flash_keep", "extern", translate("keepflash", "Zu übernehmende Dateien bei Firmwareupgrade"),
+ translate("keepflash1", [[Die folgenden Dateien und Verzeichnisse werden beim Aktualisieren der Firmware
+über die Oberfläche automatisch in die neue Firmware übernommen.]]))
f.dynamic = true
return m
\ No newline at end of file
<%+header%>
<h1><%:config Konfiguration%></h1>
-<p><%:uci_applied Die folgenden Änderungen wurden übernommen:%></p>
+<p><%:uci_applied Die folgenden Änderungen wurden übernommen%>:</p>
<code><%=(changes or "-")%>
<%=output%></code>
<%+footer%>
\ No newline at end of file
<%+header%>
<h1><%:config Konfiguration%></h1>
-<p><%:uci_reverted Die folgenden Änderungen wurden verworfen:%></p>
+<p><%:uci_reverted Die folgenden Änderungen wurden verworfen%>:</p>
<code><%=(changes or "-")%></code>
<%+footer%>
\ No newline at end of file