summaryrefslogtreecommitdiffhomepage
path: root/modules/luci-mod-freifunk
diff options
context:
space:
mode:
authorJo-Philipp Wich <jow@openwrt.org>2014-12-03 15:17:05 +0100
committerJo-Philipp Wich <jow@openwrt.org>2015-01-08 16:26:20 +0100
commit1bb4822dca6113f73e3bc89e2acf15935e6f8e92 (patch)
tree35e16f100466e4e00657199b38bb3d87d52bf73f /modules/luci-mod-freifunk
parent9edd0e46c3f880727738ce8ca6ff1c8b85f99ef4 (diff)
Rework LuCI build system
* Rename subdirectories to their repective OpenWrt package names * Make each LuCI module its own standalone package * Deploy a shared luci.mk which is used by each module Makefile Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
Diffstat (limited to 'modules/luci-mod-freifunk')
-rw-r--r--modules/luci-mod-freifunk/Makefile15
-rw-r--r--modules/luci-mod-freifunk/htdocs/luci-static/flashing.html84
-rw-r--r--modules/luci-mod-freifunk/htdocs/luci-static/resources/OSMLatLon.htm20
-rw-r--r--modules/luci-mod-freifunk/htdocs/luci-static/resources/flashing.gifbin0 -> 4261 bytes
-rw-r--r--modules/luci-mod-freifunk/htdocs/luci-static/resources/freifunk-map/hna.gifbin0 -> 209 bytes
-rw-r--r--modules/luci-mod-freifunk/htdocs/luci-static/resources/freifunk-map/node.gifbin0 -> 209 bytes
-rw-r--r--modules/luci-mod-freifunk/htdocs/luci-static/resources/osm.js130
-rw-r--r--modules/luci-mod-freifunk/luasrc/controller/freifunk/freifunk.lua202
-rw-r--r--modules/luci-mod-freifunk/luasrc/controller/freifunk/remote_update.lua62
-rw-r--r--modules/luci-mod-freifunk/luasrc/model/cbi/freifunk/basics.lua104
-rw-r--r--modules/luci-mod-freifunk/luasrc/model/cbi/freifunk/contact.lua25
-rw-r--r--modules/luci-mod-freifunk/luasrc/model/cbi/freifunk/profile.lua83
-rw-r--r--modules/luci-mod-freifunk/luasrc/model/cbi/freifunk/profile_expert.lua41
-rw-r--r--modules/luci-mod-freifunk/luasrc/model/cbi/freifunk/user_index.lua30
-rw-r--r--modules/luci-mod-freifunk/luasrc/view/cbi/osmll_value.htm55
-rw-r--r--modules/luci-mod-freifunk/luasrc/view/freifunk-map/frame.htm29
-rw-r--r--modules/luci-mod-freifunk/luasrc/view/freifunk-map/map.htm118
-rw-r--r--modules/luci-mod-freifunk/luasrc/view/freifunk/adminindex.htm51
-rw-r--r--modules/luci-mod-freifunk/luasrc/view/freifunk/contact.htm70
-rw-r--r--modules/luci-mod-freifunk/luasrc/view/freifunk/index.htm92
-rw-r--r--modules/luci-mod-freifunk/luasrc/view/freifunk/profile_error.htm11
-rw-r--r--modules/luci-mod-freifunk/luasrc/view/freifunk/public_status.htm372
-rw-r--r--modules/luci-mod-freifunk/luasrc/view/freifunk/remote_update.htm59
-rw-r--r--modules/luci-mod-freifunk/po/ca/freifunk.po407
-rw-r--r--modules/luci-mod-freifunk/po/cs/freifunk.po404
-rw-r--r--modules/luci-mod-freifunk/po/de/freifunk.po447
-rw-r--r--modules/luci-mod-freifunk/po/el/freifunk.po407
-rw-r--r--modules/luci-mod-freifunk/po/en/freifunk.po400
-rw-r--r--modules/luci-mod-freifunk/po/es/freifunk.po417
-rw-r--r--modules/luci-mod-freifunk/po/fr/freifunk.po395
-rw-r--r--modules/luci-mod-freifunk/po/he/freifunk.po394
-rw-r--r--modules/luci-mod-freifunk/po/hu/freifunk.po392
-rw-r--r--modules/luci-mod-freifunk/po/it/freifunk.po422
-rw-r--r--modules/luci-mod-freifunk/po/ja/freifunk.po395
-rw-r--r--modules/luci-mod-freifunk/po/ms/freifunk.po391
-rw-r--r--modules/luci-mod-freifunk/po/no/freifunk.po430
-rw-r--r--modules/luci-mod-freifunk/po/pl/freifunk.po422
-rw-r--r--modules/luci-mod-freifunk/po/pt-br/freifunk.po447
-rw-r--r--modules/luci-mod-freifunk/po/pt/freifunk.po401
-rw-r--r--modules/luci-mod-freifunk/po/ro/freifunk.po395
-rw-r--r--modules/luci-mod-freifunk/po/ru/freifunk.po451
-rw-r--r--modules/luci-mod-freifunk/po/sk/freifunk.po391
-rw-r--r--modules/luci-mod-freifunk/po/sv/freifunk.po392
-rw-r--r--modules/luci-mod-freifunk/po/tr/freifunk.po392
-rw-r--r--modules/luci-mod-freifunk/po/uk/freifunk.po393
-rw-r--r--modules/luci-mod-freifunk/po/vi/freifunk.po398
-rw-r--r--modules/luci-mod-freifunk/po/zh-cn/freifunk.po403
-rw-r--r--modules/luci-mod-freifunk/po/zh-tw/freifunk.po390
48 files changed, 11829 insertions, 0 deletions
diff --git a/modules/luci-mod-freifunk/Makefile b/modules/luci-mod-freifunk/Makefile
new file mode 100644
index 000000000..550db1df1
--- /dev/null
+++ b/modules/luci-mod-freifunk/Makefile
@@ -0,0 +1,15 @@
+#
+# Copyright (C) 2008-2014 The LuCI Team <luci@lists.subsignal.org>
+#
+# This is free software, licensed under the Apache License, Version 2.0 .
+#
+
+include $(TOPDIR)/rules.mk
+
+LUCI_TITLE:=LuCI Freifunk module
+LUCI_DEPENDS:=+luci-mod-admin-full +luci-lib-json +freifunk-firewall +freifunk-common
+
+include ../../luci.mk
+
+# call BuildPackage - OpenWrt buildroot signature
+
diff --git a/modules/luci-mod-freifunk/htdocs/luci-static/flashing.html b/modules/luci-mod-freifunk/htdocs/luci-static/flashing.html
new file mode 100644
index 000000000..43e51236d
--- /dev/null
+++ b/modules/luci-mod-freifunk/htdocs/luci-static/flashing.html
@@ -0,0 +1,84 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html lang="en" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
+ <title>LuCI - System Upgrade</title>
+
+ <style type="text/css">
+ body {
+ background-color: #CCCCCC;
+ font-family: sans-serif;
+ font-size: 90%;
+ padding-left: 50%;
+ padding-top: 100px;
+ }
+
+ h2 {
+ font-size: 110%;
+ margin: 5px 5px 0.5em 5px;
+ border-bottom: 1px dotted #0066CC;
+ color: #0066CC;
+ }
+
+ p {
+ font-size: 95%;
+ margin: 15px 15px 0.5em 15px;
+ }
+
+ div {
+ background-color: #F7F7F7;
+ border: 1px dotted #000000;
+ width: 600px;
+ height: 150px;
+ margin-left: -300px;
+ }
+
+ em {
+ color: #555555;
+ }
+ </style>
+
+ <script type="text/javascript"><!--
+ var time_remaining = 60 * 25;
+ var interval = window.setInterval(function() {
+ if( time_remaining <= 0 )
+ {
+ window.clearInterval(interval);
+ location.href = 'http://' + location.hostname + '/';
+ }
+ else
+ {
+ var minutes = Math.floor(time_remaining / 60);
+ var seconds = time_remaining % 60;
+ var label = document.getElementById('time_remaining');
+
+ if( label )
+ {
+ label.innerHTML =
+ ( minutes > 0 ? minutes + 'm ' : '' ) +
+ seconds + 's';
+ }
+ }
+
+ time_remaining = time_remaining - 1;
+ }, 1000);
+ --></script>
+</head>
+
+<body class="lang_en">
+ <div>
+ <h2>Performing Upgrade</h2>
+
+ <p>
+ The System is flashing now. The procedure can take up to 25 minutes,
+ please be patient and wait until this page reloads itself.
+
+ <br /><img src="resources/flashing.gif" style="vertical-align:middle; margin:10px" />
+
+ <em>Remaining time (estimated): <span id="time_remaining">unknown</span></em>
+ </p>
+ </div>
+</body>
+
+</html>
diff --git a/modules/luci-mod-freifunk/htdocs/luci-static/resources/OSMLatLon.htm b/modules/luci-mod-freifunk/htdocs/luci-static/resources/OSMLatLon.htm
new file mode 100644
index 000000000..18be30be3
--- /dev/null
+++ b/modules/luci-mod-freifunk/htdocs/luci-static/resources/OSMLatLon.htm
@@ -0,0 +1,20 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+
+<head>
+ <title>OpenStreetMap</title>
+ <script type="text/javascript" src="http://www.openlayers.org/api/OpenLayers.js"></script>
+ <script type="text/javascript" src="http://www.openstreetmap.org/openlayers/OpenStreetMap.js"></script>
+ <script type="text/javascript" src="osm.js"></script>
+</head>
+<body onload="init();drawmap();" style="padding:0px; margin:0px">
+ <div id="map"></div>
+ <div style="position:absolute; bottom:0%; width:100%; background:url('cbi/black_60.png'); font-size:10px; color:#fff;z-index:1000">
+ Map by <a href="http://www.openstreetmap.org" title="www.openstreetmap.org" style="color:#fff;" >openstreetmap.org</a>, License CC-BY-SA
+ &#160;&#160;&#160;&#160;
+ <span id="osm">
+ Latitude: <input id="osmlat" name="osmlat" type="text" size="20" style="font-size:10px;">
+ Longitude: <input id="osmlon" name="osmlon" type="text" size="20" style="font-size:10px;">
+ </span>
+ </div>
+
+</body>
diff --git a/modules/luci-mod-freifunk/htdocs/luci-static/resources/flashing.gif b/modules/luci-mod-freifunk/htdocs/luci-static/resources/flashing.gif
new file mode 100644
index 000000000..e207fc56a
--- /dev/null
+++ b/modules/luci-mod-freifunk/htdocs/luci-static/resources/flashing.gif
Binary files differ
diff --git a/modules/luci-mod-freifunk/htdocs/luci-static/resources/freifunk-map/hna.gif b/modules/luci-mod-freifunk/htdocs/luci-static/resources/freifunk-map/hna.gif
new file mode 100644
index 000000000..818780d15
--- /dev/null
+++ b/modules/luci-mod-freifunk/htdocs/luci-static/resources/freifunk-map/hna.gif
Binary files differ
diff --git a/modules/luci-mod-freifunk/htdocs/luci-static/resources/freifunk-map/node.gif b/modules/luci-mod-freifunk/htdocs/luci-static/resources/freifunk-map/node.gif
new file mode 100644
index 000000000..f64ab162a
--- /dev/null
+++ b/modules/luci-mod-freifunk/htdocs/luci-static/resources/freifunk-map/node.gif
Binary files differ
diff --git a/modules/luci-mod-freifunk/htdocs/luci-static/resources/osm.js b/modules/luci-mod-freifunk/htdocs/luci-static/resources/osm.js
new file mode 100644
index 000000000..cae0cd66f
--- /dev/null
+++ b/modules/luci-mod-freifunk/htdocs/luci-static/resources/osm.js
@@ -0,0 +1,130 @@
+var map;
+var layer_mapnik;
+var layer_tah;
+var layer_markers;
+var PI = Math.PI;
+var latfield = '';
+var lonfield = '';
+var latfield_id='';
+var lonfield_id='';
+var centerlon = 10;
+var centerlat = 52;
+var zoom = 6;
+
+function lon2merc(lon) {
+ return 20037508.34 * lon / 180;
+}
+
+function lat2merc(lat) {
+ lat = Math.log(Math.tan( (90 + lat) * PI / 360)) / PI;
+ return 20037508.34 * lat;
+}
+
+function merc2lon(lon) {
+ return lon*180/20037508.34;
+};
+
+function merc2lat(lat) {
+ return Math.atan(Math.exp(lat*PI/20037508.34))*360/PI-90;
+};
+
+OpenLayers.Control.Click = OpenLayers.Class(OpenLayers.Control, {
+ defaultHandlerOptions: {
+ 'single': true,
+ 'double': false,
+ 'pixelTolerance': 0,
+ 'stopSingle': false,
+ 'stopDouble': false
+ },
+
+ initialize: function(options) {
+ this.handlerOptions = OpenLayers.Util.extend(
+ {}, this.defaultHandlerOptions
+ );
+ OpenLayers.Control.prototype.initialize.apply(
+ this, arguments
+ );
+ this.handler = new OpenLayers.Handler.Click(
+ this, {
+ 'click': this.trigger
+ }, this.handlerOptions
+ );
+ },
+
+ trigger: function(e) {
+ var lonlat = map.getLonLatFromViewPortPx(e.xy);
+ lat=merc2lat(lonlat.lat);
+ lon=merc2lon(lonlat.lon);
+ if(parent.document.getElementById(latfield_id)==null){
+ latfield=document.getElementById('osmlat');
+ }else{
+ latfield=parent.document.getElementById(latfield_id);
+ }
+ if(parent.document.getElementById(lonfield_id)==null){
+ lonfield=document.getElementById('osmlon');
+ }else{
+ lonfield=parent.document.getElementById(lonfield_id);
+ }
+ latfield.value = lat;
+ lonfield.value = lon;
+ }
+});
+
+function init(){
+ var field = window.name.substring(0, window.name.lastIndexOf("."));
+ if(parent.document.getElementById(field+".latfield")!=null){
+ latfield_id = parent.document.getElementById(field+".latfield").value;
+ document.getElementById('osm').style.display="none";
+ }
+ if(parent.document.getElementById(field+".lonfield")!=null){
+ lonfield_id = parent.document.getElementById(field+".lonfield").value;
+ }
+ if(parent.document.getElementById(field+".centerlat")!=null){
+ centerlat =parseFloat(parent.document.getElementById(field+".centerlat").value);
+ }
+ if(parent.document.getElementById(field+".centerlon")!=null){
+ centerlon = parseFloat(parent.document.getElementById(field+".centerlon").value);
+ }
+ if(parent.document.getElementById(field+".zoom")!=null){
+ zoom = parseFloat(parent.document.getElementById(field+".zoom").value);
+ }
+}
+
+function drawmap() {
+ OpenLayers.Lang.setCode('de');
+ mapdiv=document.getElementById('map');
+ mapdiv.style.height=window.innerHeight+"px";
+ mapdiv.style.width=window.innerWidth+"px";
+ map = new OpenLayers.Map('map', {
+ projection: new OpenLayers.Projection("EPSG:900913"),
+ displayProjection: new OpenLayers.Projection("EPSG:4326"),
+ controls: [
+ new OpenLayers.Control.Navigation(),
+ new OpenLayers.Control.PanZoomBar()],
+ maxExtent:
+ new OpenLayers.Bounds(-20037508.34,-20037508.34, 20037508.34, 20037508.34),
+ numZoomLevels: 18,
+ maxResolution: 156543,
+ units: 'meters'
+ });
+
+ layer_mapnik = new OpenLayers.Layer.OSM.Mapnik("Mapnik");
+
+ map.addLayers([layer_mapnik]);
+ var y =lat2merc(centerlat);
+ var x =lon2merc(centerlon);
+ map.setCenter(new OpenLayers.LonLat(x, y), zoom);
+
+ // Check for geolocation support
+ if(navigator.geolocation){
+ navigator.geolocation.getCurrentPosition(function(position){
+ var y =lat2merc(position.coords.latitude);
+ var x =lon2merc(position.coords.longitude);
+ map.setCenter(new OpenLayers.LonLat(x, y), '17');
+ });
+ }
+
+ var click = new OpenLayers.Control.Click();
+ map.addControl(click);
+ click.activate();
+}
diff --git a/modules/luci-mod-freifunk/luasrc/controller/freifunk/freifunk.lua b/modules/luci-mod-freifunk/luasrc/controller/freifunk/freifunk.lua
new file mode 100644
index 000000000..d4606e750
--- /dev/null
+++ b/modules/luci-mod-freifunk/luasrc/controller/freifunk/freifunk.lua
@@ -0,0 +1,202 @@
+--[[
+LuCI - Lua Configuration Interface
+
+Copyright 2008 Steven Barth <steven@midlink.org>
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+$Id$
+]]--
+
+module("luci.controller.freifunk.freifunk", package.seeall)
+
+function index()
+ local uci = require "luci.model.uci".cursor()
+ local page
+
+ -- Frontend
+ page = node()
+ page.lock = true
+ page.target = alias("freifunk")
+ page.subindex = true
+ page.index = false
+
+ page = node("freifunk")
+ page.title = _("Freifunk")
+ page.target = alias("freifunk", "index")
+ page.order = 5
+ page.setuser = "nobody"
+ page.setgroup = "nogroup"
+ page.i18n = "freifunk"
+ page.index = true
+
+ page = node("freifunk", "index")
+ page.target = template("freifunk/index")
+ page.title = _("Overview")
+ page.order = 10
+ page.indexignore = true
+
+ page = node("freifunk", "contact")
+ page.target = template("freifunk/contact")
+ page.title = _("Contact")
+ page.order = 15
+
+ page = node("freifunk", "status")
+ page.target = template("freifunk/public_status")
+ page.title = _("Status")
+ page.order = 20
+ page.i18n = "base"
+ page.setuser = false
+ page.setgroup = false
+
+ entry({"freifunk", "status.json"}, call("jsonstatus"))
+ entry({"freifunk", "status", "zeroes"}, call("zeroes"), "Testdownload")
+
+ if nixio.fs.access("/usr/sbin/luci-splash") then
+ assign({"freifunk", "status", "splash"}, {"splash", "publicstatus"}, _("Splash"), 40)
+ end
+
+ page = assign({"freifunk", "olsr"}, {"admin", "status", "olsr"}, _("OLSR"), 30)
+ page.setuser = false
+ page.setgroup = false
+
+ if nixio.fs.access("/etc/config/luci_statistics") then
+ assign({"freifunk", "graph"}, {"admin", "statistics", "graph"}, _("Statistics"), 40)
+ end
+
+ -- backend
+ assign({"mini", "freifunk"}, {"admin", "freifunk"}, _("Freifunk"), 5)
+ entry({"admin", "freifunk"}, alias("admin", "freifunk", "index"), _("Freifunk"), 5)
+
+ page = node("admin", "freifunk")
+ page.target = template("freifunk/adminindex")
+ page.title = _("Freifunk")
+ page.order = 5
+
+ page = node("admin", "freifunk", "basics")
+ page.target = cbi("freifunk/basics")
+ page.title = _("Basic Settings")
+ page.order = 5
+
+ page = node("admin", "freifunk", "basics", "profile")
+ page.target = cbi("freifunk/profile")
+ page.title = _("Profile")
+ page.order = 10
+
+ page = node("admin", "freifunk", "basics", "profile_expert")
+ page.target = cbi("freifunk/profile_expert")
+ page.title = _("Profile (Expert)")
+ page.order = 20
+
+ page = node("admin", "freifunk", "Index-Page")
+ page.target = cbi("freifunk/user_index")
+ page.title = _("Index Page")
+ page.order = 50
+
+ page = node("admin", "freifunk", "contact")
+ page.target = cbi("freifunk/contact")
+ page.title = _("Contact")
+ page.order = 15
+
+ entry({"freifunk", "map"}, template("freifunk-map/frame"), _("Map"), 50)
+ entry({"freifunk", "map", "content"}, template("freifunk-map/map"), nil, 51)
+ entry({"admin", "freifunk", "profile_error"}, template("freifunk/profile_error"))
+end
+
+function zeroes()
+ local string = require "string"
+ local http = require "luci.http"
+ local zeroes = string.rep(string.char(0), 8192)
+ local cnt = 0
+ local lim = 1024 * 1024 * 1024
+
+ http.prepare_content("application/x-many-zeroes")
+
+ while cnt < lim do
+ http.write(zeroes)
+ cnt = cnt + #zeroes
+ end
+end
+
+function jsonstatus()
+ local root = {}
+ local sys = require "luci.sys"
+ local uci = require "luci.model.uci"
+ local util = require "luci.util"
+ local http = require "luci.http"
+ local json = require "luci.json"
+ local ltn12 = require "luci.ltn12"
+ local version = require "luci.version"
+ local webadmin = require "luci.tools.webadmin"
+
+ local cursor = uci.cursor_state()
+
+ local ffzone = webadmin.firewall_find_zone("freifunk")
+ local ffznet = ffzone and cursor:get("firewall", ffzone, "network")
+ local ffwifs = ffznet and util.split(ffznet, " ") or {}
+
+
+ root.protocol = 1
+
+ root.system = {
+ uptime = {sys.uptime()},
+ loadavg = {sys.loadavg()},
+ sysinfo = {sys.sysinfo()},
+ hostname = sys.hostname()
+ }
+
+ root.firmware = {
+ luciname=version.luciname,
+ luciversion=version.luciversion,
+ distname=version.distname,
+ distversion=version.distversion
+ }
+
+ root.freifunk = {}
+ cursor:foreach("freifunk", "public", function(s)
+ root.freifunk[s[".name"]] = s
+ end)
+
+ cursor:foreach("system", "system", function(s)
+ root.geo = {
+ latitude = s.latitude,
+ longitude = s.longitude
+ }
+ end)
+
+ root.network = {}
+ root.wireless = {devices = {}, interfaces = {}, status = {}}
+ local wifs = root.wireless.interfaces
+ local netdata = luci.sys.net.deviceinfo() or {}
+
+ for _, vif in ipairs(ffwifs) do
+ root.network[vif] = cursor:get_all("network", vif)
+ root.wireless.devices[vif] = cursor:get_all("wireless", vif)
+ cursor:foreach("wireless", "wifi-iface", function(s)
+ if s.device == vif and s.network == vif then
+ wifs[#wifs+1] = s
+ if s.ifname then
+ local iwinfo = luci.sys.wifi.getiwinfo(s.ifname)
+ if iwinfo then
+ root.wireless.status[s.ifname] = { }
+
+ local _, f
+ for _, f in ipairs({
+ "channel", "txpower", "bitrate", "signal", "noise",
+ "quality", "quality_max", "mode", "ssid", "bssid", "encryption", "ifname"
+ }) do
+ root.wireless.status[s.ifname][f] = iwinfo[f]
+ end
+ end
+ end
+ end
+ end)
+ end
+
+ http.prepare_content("application/json")
+ ltn12.pump.all(json.Encoder(root):source(), http.write)
+end
diff --git a/modules/luci-mod-freifunk/luasrc/controller/freifunk/remote_update.lua b/modules/luci-mod-freifunk/luasrc/controller/freifunk/remote_update.lua
new file mode 100644
index 000000000..cc8dd142d
--- /dev/null
+++ b/modules/luci-mod-freifunk/luasrc/controller/freifunk/remote_update.lua
@@ -0,0 +1,62 @@
+--[[
+LuCI - Lua Configuration Interface
+
+Copyright 2009 Jo-Philipp Wich <xm@subsignal.org>
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+]]--
+
+module("luci.controller.freifunk.remote_update", package.seeall)
+
+function index()
+ if not nixio.fs.access("/usr/sbin/remote-update") then
+ return
+ end
+
+ entry({"admin", "system", "remote_update"}, call("act_remote_update"),
+ _("Freifunk Remote Update"), 90)
+end
+
+function act_remote_update()
+ if luci.http.formvalue("flash") == "1" then
+ if luci.http.formvalue("confirm") == "1" then
+ local nobackup = ( luci.http.formvalue("keepcfg") ~= "1" )
+ local noverify = ( luci.http.formvalue("verify") ~= "1" )
+
+ luci.http.redirect("/luci-static/flashing.html")
+
+ os.execute("start-stop-daemon -S -b -x /usr/sbin/remote-update -- %s%s-s 5 -y" % {
+ noverify and "-v " or "",
+ nobackup and "-n " or ""
+ })
+ else
+ luci.template.render("freifunk/remote_update", {confirm=1})
+ end
+ else
+ local fd = io.popen("remote-update -c")
+ local update = { }
+
+ if fd then
+ while true do
+ local ln=fd:read("*l")
+
+ if not ln then break
+ elseif ln:find("Local: ") then update.locvar = ln:match("Local: (%d+)")
+ elseif ln:find("Remote: ") then update.remver = ln:match("Remote: (%d+)")
+ elseif ln == "--" then update.info = ""
+ elseif update.info ~= nil then
+ update.info = update.info .. ln .. "\n"
+ end
+ end
+
+ fd:close()
+ end
+
+ luci.template.render("freifunk/remote_update", {update=update})
+ end
+end
diff --git a/modules/luci-mod-freifunk/luasrc/model/cbi/freifunk/basics.lua b/modules/luci-mod-freifunk/luasrc/model/cbi/freifunk/basics.lua
new file mode 100644
index 000000000..8987b1cb4
--- /dev/null
+++ b/modules/luci-mod-freifunk/luasrc/model/cbi/freifunk/basics.lua
@@ -0,0 +1,104 @@
+--[[
+LuCI - Lua Configuration Interface
+
+Copyright 2008 Steven Barth <steven@midlink.org>
+Copyright 2011 Manuel Munz <freifunk at somakoma de>
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+]]
+
+local fs = require "luci.fs"
+local util = require "luci.util"
+local uci = require "luci.model.uci".cursor()
+local profiles = "/etc/config/profile_"
+
+m = Map("freifunk", translate ("Community"))
+c = m:section(NamedSection, "community", "public", nil, translate("These are the basic settings for your local wireless community. These settings define the default values for the wizard and DO NOT affect the actual configuration of the router."))
+
+community = c:option(ListValue, "name", translate ("Community"))
+community.rmempty = false
+
+local list = { }
+local list = fs.glob(profiles .. "*")
+
+for k,v in ipairs(list) do
+ local name = uci:get_first(v, "community", "name") or "?"
+ local n = string.gsub(v, profiles, "")
+ community:value(n, name)
+end
+
+
+n = Map("system", translate("Basic system settings"))
+function n.on_after_commit(self)
+ luci.http.redirect(luci.dispatcher.build_url("admin", "freifunk", "basics"))
+end
+
+b = n:section(TypedSection, "system")
+b.anonymous = true
+
+hn = b:option(Value, "hostname", translate("Hostname"))
+hn.rmempty = false
+hn.datatype = "hostname"
+
+loc = b:option(Value, "location", translate("Location"))
+loc.rmempty = false
+loc.datatype = "minlength(1)"
+
+lat = b:option(Value, "latitude", translate("Latitude"), translate("e.g.") .. " 48.12345")
+lat.datatype = "float"
+lat.rmempty = false
+
+lon = b:option(Value, "longitude", translate("Longitude"), translate("e.g.") .. " 10.12345")
+lon.datatype = "float"
+lon.rmempty = false
+
+--[[
+Opens an OpenStreetMap iframe or popup
+Makes use of resources/OSMLatLon.htm and htdocs/resources/osm.js
+]]--
+
+local class = util.class
+local ff = uci:get("freifunk", "community", "name") or ""
+local co = "profile_" .. ff
+
+local deflat = uci:get_first("system", "system", "latitude") or uci:get_first(co, "community", "latitude") or 52
+local deflon = uci:get_first("system", "system", "longitude") or uci:get_first(co, "community", "longitude") or 10
+local zoom = 12
+if ( deflat == 52 and deflon == 10 ) then
+ zoom = 4
+end
+
+OpenStreetMapLonLat = luci.util.class(AbstractValue)
+
+function OpenStreetMapLonLat.__init__(self, ...)
+ AbstractValue.__init__(self, ...)
+ self.template = "cbi/osmll_value"
+ self.latfield = nil
+ self.lonfield = nil
+ self.centerlat = ""
+ self.centerlon = ""
+ self.zoom = "0"
+ self.width = "100%" --popups will ignore the %-symbol, "100%" is interpreted as "100"
+ self.height = "600"
+ self.popup = false
+ self.displaytext="OpenStreetMap" --text on button, that loads and displays the OSMap
+ self.hidetext="X" -- text on button, that hides OSMap
+end
+
+ osm = b:option(OpenStreetMapLonLat, "latlon", translate("Find your coordinates with OpenStreetMap"), translate("Select your location with a mouse click on the map. The map will only show up if you are connected to the Internet."))
+ osm.latfield = "latitude"
+ osm.lonfield = "longitude"
+ osm.centerlat = uci:get_first("system", "system", "latitude") or deflat
+ osm.centerlon = uci:get_first("system", "system", "longitude") or deflon
+ osm.zoom = zoom
+ osm.width = "100%"
+ osm.height = "600"
+ osm.popup = false
+ osm.displaytext=translate("Show OpenStreetMap")
+ osm.hidetext=translate("Hide OpenStreetMap")
+
+return m, n
diff --git a/modules/luci-mod-freifunk/luasrc/model/cbi/freifunk/contact.lua b/modules/luci-mod-freifunk/luasrc/model/cbi/freifunk/contact.lua
new file mode 100644
index 000000000..30e94a3e9
--- /dev/null
+++ b/modules/luci-mod-freifunk/luasrc/model/cbi/freifunk/contact.lua
@@ -0,0 +1,25 @@
+--[[
+LuCI - Lua Configuration Interface
+
+Copyright 2008 Steven Barth <steven@midlink.org>
+Copyright 2011 Manuel Munz <freifunk at somakoma dot de>
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+]]--
+
+m = Map("freifunk", translate("Contact"), translate("Please fill in your contact details below."))
+
+c = m:section(NamedSection, "contact", "public", "")
+
+c:option(Value, "nickname", translate("Nickname"))
+c:option(Value, "name", translate("Realname"))
+c:option(DynamicList, "homepage", translate("Homepage"))
+c:option(Value, "mail", translate("E-Mail"))
+c:option(Value, "phone", translate("Phone"))
+c:option(TextValue, "note", translate("Notice")).rows = 10
+
+return m
diff --git a/modules/luci-mod-freifunk/luasrc/model/cbi/freifunk/profile.lua b/modules/luci-mod-freifunk/luasrc/model/cbi/freifunk/profile.lua
new file mode 100644
index 000000000..c9bd23ed6
--- /dev/null
+++ b/modules/luci-mod-freifunk/luasrc/model/cbi/freifunk/profile.lua
@@ -0,0 +1,83 @@
+--[[
+LuCI - Lua Configuration Interface
+
+Copyright 2011-2012 Manuel Munz <freifunk at somakoma dot de>
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ httc://www.apache.org/licenses/LICENSE-2.0
+]]--
+
+local uci = require "luci.model.uci".cursor()
+local ipkg = require "luci.model.ipkg"
+local community = uci:get("freifunk", "community", "name")
+
+if community == nil then
+ luci.http.redirect(luci.dispatcher.build_url("admin", "freifunk", "profile_error"))
+ return
+else
+ community = "profile_" .. community
+ m = Map(community, translate("Community settings"), translate("These are the settings of your local community."))
+ c = m:section(NamedSection, "profile", "community")
+
+ local name = c:option(Value, "name", "Name")
+ name.rmempty = false
+
+ local homepage = c:option(Value, "homepage", translate("Homepage"))
+
+ local cc = c:option(Value, "country", translate("Country code"))
+ function cc.cfgvalue(self, section)
+ return uci:get(community, "wifi_device", "country")
+ end
+ function cc.write(self, sec, value)
+ if value then
+ uci:set(community, "wifi_device", "country", value)
+ uci:save(community)
+ end
+ end
+
+ local ssid = c:option(Value, "ssid", translate("ESSID"))
+ ssid.rmempty = false
+
+ local prefix = c:option(Value, "mesh_network", translate("Mesh prefix"))
+ prefix.datatype = "ip4addr"
+ prefix.rmempty = false
+
+ local splash_net = c:option(Value, "splash_network", translate("Network for client DHCP addresses"))
+ splash_net.datatype = "ip4addr"
+ splash_net.rmempty = false
+
+ local splash_prefix = c:option(Value, "splash_prefix", translate("Client network size"))
+ splash_prefix.datatype = "range(0,32)"
+ splash_prefix.rmempty = false
+
+ local ipv6 = c:option(Flag, "ipv6", translate("Enable IPv6"))
+ ipv6.rmempty = true
+
+ local ipv6_config = c:option(ListValue, "ipv6_config", translate("IPv6 Config"))
+ ipv6_config:depends("ipv6", 1)
+ ipv6_config:value("static")
+ if ipkg.installed ("auto-ipv6-ib") then
+ ipv6_config:value("auto-ipv6-random")
+ ipv6_config:value("auto-ipv6-fromv4")
+ end
+ ipv6_config.rmempty = true
+
+ local ipv6_prefix = c:option(Value, "ipv6_prefix", translate("IPv6 Prefix"), translate("IPv6 network in CIDR notation."))
+ ipv6_prefix:depends("ipv6", 1)
+ ipv6_prefix.datatype = "ip6addr"
+ ipv6_prefix.rmempty = true
+
+ local vap = c:option(Flag, "vap", translate("VAP"), translate("Enable a virtual access point (VAP) by default if possible."))
+ vap.rmempty = true
+
+ local lat = c:option(Value, "latitude", translate("Latitude"))
+ lat.datatype = "range(-180, 180)"
+ lat.rmempty = false
+
+ local lon = c:option(Value, "longitude", translate("Longitude"))
+ lon.rmempty = false
+ return m
+end
diff --git a/modules/luci-mod-freifunk/luasrc/model/cbi/freifunk/profile_expert.lua b/modules/luci-mod-freifunk/luasrc/model/cbi/freifunk/profile_expert.lua
new file mode 100644
index 000000000..0d890e1df
--- /dev/null
+++ b/modules/luci-mod-freifunk/luasrc/model/cbi/freifunk/profile_expert.lua
@@ -0,0 +1,41 @@
+--[[
+LuCI - Lua Configuration Interface
+
+Copyright 2011 Manuel Munz <freifunk at somakoma dot de>
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ httc://www.apache.org/licenses/LICENSE-2.0
+]]--
+
+local fs = require "nixio.fs"
+local uci = require "luci.model.uci".cursor()
+local community = uci:get("freifunk", "community", "name")
+
+if community == nil then
+ luci.http.redirect(luci.dispatcher.build_url("admin", "freifunk", "profile_error"))
+ return
+else
+ community = "/etc/config/profile_" .. community
+ f = SimpleForm("community", translate("Community profile"), translate("You can manually edit the selected community profile here."))
+
+ t = f:field(TextValue, "cop")
+ t.rmempty = true
+ t.rows = 30
+ function t.cfgvalue()
+ return fs.readfile(community) or ""
+ end
+
+ function f.handle(self, state, data)
+ if state == FORM_VALID then
+ if data.cop then
+ fs.writefile(community, data.cop:gsub("\r\n", "\n"))
+ end
+ end
+ return true
+ end
+ return f
+end
+
diff --git a/modules/luci-mod-freifunk/luasrc/model/cbi/freifunk/user_index.lua b/modules/luci-mod-freifunk/luasrc/model/cbi/freifunk/user_index.lua
new file mode 100644
index 000000000..fe1d8fe7e
--- /dev/null
+++ b/modules/luci-mod-freifunk/luasrc/model/cbi/freifunk/user_index.lua
@@ -0,0 +1,30 @@
+local fs = require "nixio.fs"
+local file = "/www/luci-static/index_user.html"
+
+m = Map("freifunk", translate("Edit index page"), translate("You can display additional content on the public index page by inserting valid XHTML in the form below.<br />Headlines should be enclosed between &lt;h2&gt; and &lt;/h2&gt;."))
+
+s = m:section(NamedSection, "community", "public", "")
+s.anonymous = true
+
+di = s:option(Flag, "DefaultText", translate("Disable default content"), translate("If selected then the default content element is not shown."))
+di.enabled = "disabled"
+di.disabled = "enabled"
+di.rmempty = false
+
+t = s:option(TextValue, "_text")
+t.rmempty = true
+t.rows = 20
+
+function t.cfgvalue()
+ return fs.readfile(file) or ""
+end
+
+function t.write(self, section, value)
+ return fs.writefile(file, value)
+end
+
+function t.remove(self, section)
+ return fs.unlink(file)
+end
+
+return m
diff --git a/modules/luci-mod-freifunk/luasrc/view/cbi/osmll_value.htm b/modules/luci-mod-freifunk/luasrc/view/cbi/osmll_value.htm
new file mode 100644
index 000000000..78b4dff91
--- /dev/null
+++ b/modules/luci-mod-freifunk/luasrc/view/cbi/osmll_value.htm
@@ -0,0 +1,55 @@
+<%#
+cc-by-sa Andreas Pittrich <andreas.pittrich@web.de>
+in behalf of the german pirate party (Piratenpartei)
+www.piratenpartei.de
+
+$Id$
+
+-%>
+<%+cbi/valueheader%>
+
+ <% if self:cfgvalue(section) ~= false then %>
+ <% if self.latfield and self.lonfield then %>
+ <input type="hidden" <%= attr("value", string.format('cbid.%s.%s.%s', self.config, section, self.latfield))..attr("id", cbid..".latfield")..attr("name", cbid..".latfield")%>/>
+ <input type="hidden" <%= attr("value", string.format('cbid.%s.%s.%s', self.config, section, self.lonfield))..attr("id", cbid..".lonfield")..attr("name", cbid..".lonfield")%>/>
+ <% end %>
+ <input type="hidden" <%= attr("value", self.centerlat)..attr("id", cbid..".centerlat")..attr("name", cbid..".centerlat")%>/>
+ <input type="hidden" <%= attr("value", self.centerlon)..attr("id", cbid..".centerlon")..attr("name", cbid..".centerlon")%>/>
+ <input type="hidden" <%= attr("value", self.zoom)..attr("id", cbid..".zoom")..attr("name", cbid..".zoom")%>/>
+ <% end %>
+
+ <% if self.popup then %>
+ <input class="cbi-button cbi-input-button" type="button"<%= attr("name", cbid..".button")..attr("id", cbid..".button")..attr("value", self.displaytext)%>
+ onclick="
+ popup=window.open('/luci-static/resources/OSMLatLon.htm', '<%=cbid%>.window', 'innerWidth=<%=self.width%>, innerHeight=<%=self.height%>, location=no, menubar=no, scrollbars=no, status=no, toolbar=no');
+ popup.focus();
+ "
+ />
+ </div>
+ <div>
+ <% else %>
+ <input class="cbi-button cbi-input-button" type="button"<%= attr("name", cbid..".displayosm")..attr("id", cbid..".displayosm")..attr("value", self.displaytext)%>
+ onclick="
+ document.getElementById('<%=cbid..".hideosm"%>').style.display='inline';
+ document.getElementById('<%=cbid..".displayosm"%>').style.display='none';
+ for(var i = 0; Math.min(i, window.frames.length)!=window.frames.lengths; i++){
+ if(frames[i].name=='<%=cbid..".iframe"%>'){
+ document.getElementById('<%=cbid..".iframediv"%>').style.display='block';
+ frames[i].location.href='/luci-static/resources/OSMLatLon.htm';
+ }
+ }
+ "
+ />
+ <input class="cbi-button cbi-input-button" style="display:none" type="button"<%= attr("name", cbid..".hideosm")..attr("id", cbid..".hideosm")..attr("value", self.hidetext)%>
+ onclick="
+ document.getElementById('<%=cbid..".displayosm"%>').style.display='inline';
+ document.getElementById('<%=cbid..".hideosm"%>').style.display='none';
+ document.getElementById('<%=cbid..".iframediv"%>').style.display='none';
+ "
+ />
+ </div>
+ <div class="cbi-value-osmiframesection" id="<%=cbid..".iframediv"%>" style="display:none">
+ <iframe src="" <%= attr("id", cbid..".iframe")..attr("name", cbid..".iframe")..attr("width", self.width)..attr("height", self.height)%> frameborder="0" scrolling="no"></iframe>
+ <%end%>
+
+<%+cbi/valuefooter%>
diff --git a/modules/luci-mod-freifunk/luasrc/view/freifunk-map/frame.htm b/modules/luci-mod-freifunk/luasrc/view/freifunk-map/frame.htm
new file mode 100644
index 000000000..b2e168363
--- /dev/null
+++ b/modules/luci-mod-freifunk/luasrc/view/freifunk-map/frame.htm
@@ -0,0 +1,29 @@
+<%+header%>
+
+<%
+ local has_latlon = false
+ local uci = require "luci.model.uci".cursor()
+ uci:foreach("olsrd", "LoadPlugin", function(s)
+ if s.library == "olsrd_nameservice.so.0.3" and s.latlon_file then
+ has_latlon = true
+ end
+ end)
+%>
+
+<% if has_latlon then %>
+ <iframe style="width:100%; height:640px; border:none" src="<%=luci.dispatcher.build_url("freifunk/map/content")%>"></iframe>
+ <h3><%:Legend%>:</h3>
+ <ul>
+ <li><strong><span style="color:#00cc00"><%:Green%></span></strong>:<%:Very good (ETX < 2)%></li>
+ <li><strong><span style="color:#ffcb05"><%:Yellow%></span></strong>:<%:Good (2 < ETX < 4)%></li>
+ <li><strong><span style="color:#ff6600"><%:Orange%></span></strong>:<%:Still usable (4 < ETX < 10)%></li>
+ <li><strong><span style="color:#bb3333"><%:Red%></span></strong>:<%:Bad (ETX > 10)%></li>
+ </ul>
+
+<% else %>
+ <h2><%:Map Error%></h2>
+ <p><%_The OLSRd service is not configured to capture position data from the network.<br />
+ Please make sure that the nameservice plugin is properly configured and that the <em>latlon_file</em> option is enabled.%></p>
+<% end %>
+<%+footer%>
+
diff --git a/modules/luci-mod-freifunk/luasrc/view/freifunk-map/map.htm b/modules/luci-mod-freifunk/luasrc/view/freifunk-map/map.htm
new file mode 100644
index 000000000..c3951f9c6
--- /dev/null
+++ b/modules/luci-mod-freifunk/luasrc/view/freifunk-map/map.htm
@@ -0,0 +1,118 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+ <head>
+ <title>Map</title>
+ </head>
+
+ <body style="margin:0">
+ <script src="//dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=6.1&s=1" type="text/javascript"></script>
+ <script type="text/javascript">
+ var alias = new Array;
+ var points = new Array;
+ var unkpos = new Array;
+ var lineid = 0;
+ onload=new Function("if(null!=window.ffmapinit)ffmapinit();");
+
+ function Mid(mainip,aliasip)
+ {
+ alias[aliasip]=mainip;
+ }
+
+ function Node(mainip,lat,lon,ishna,hnaip,name)
+ {
+ points[mainip] = new VELatLong(lat, lon);
+ map.AddPushpin(new VEPushpin(mainip, points[mainip],
+ '<%=luci.config.main.resourcebase%>/freifunk-map/'+(ishna?'hna':'node')+'.gif', 'Node:'+name,
+ '<br><img src="<%=luci.config.main.resourcebase%>/freifunk-map/'+(ishna?'hna':'node')+'.gif">'+
+ '<br>IP:'+mainip+'<br>DefGW:'+hnaip));
+ }
+
+ function Self(mainip,lat,lon,ishna,hnaip,name)
+ {
+ //map.SetDashboardSize(VEDashboardSize.Small);
+ map.LoadMap(new VELatLong(lat, lon), 15, VEMapStyle.Hybrid);
+ map.SetScaleBarDistanceUnit(VEDistanceUnit.Kilometers);
+ map.ShowMiniMap(14, 474);
+ Node(mainip,lat,lon,ishna,hnaip,name);
+ }
+
+ function Link(fromip,toip,lq,nlq,etx)
+ {
+ if (0==lineid && null!=window.ffmapstatic) ffmapstatic();
+ if (null != alias[toip]) toip = alias[toip];
+ if (null != alias[fromip]) fromip = alias[fromip];
+ if (null != points[fromip] && null != points[toip])
+ {
+ var color;
+ var red = 240;
+ var green = 0;
+ var blue = 0;
+ var w = 1
+
+ if (etx < 100) {red=252;green=102;blue=0;w=2};
+ if (etx < 10) {red=255;green=203;blue=5;w=3};
+ if (etx < 4) {red=240;green=255;blue=0;w=4};
+ if (etx < 2) {red=0;green=204;blue=0;w=5};
+ if (etx < 1) {red=80;green=0;blue=0;w=1};
+
+ map.AddPolyline(new VEPolyline('id'+lineid, [points[fromip], points[toip]],
+ new VEColor(red, green, blue, 0.5), w));
+
+
+ }
+ else
+ {
+ if (null == points[toip]) unkpos[toip] = '';
+ if (null == points[fromip]) unkpos[fromip] = '';
+ }
+ lineid++;
+ }
+
+ function PLink(fromip,toip,lq,nlq,etx,lata,lona,ishnaa,latb,lonb,ishnab)
+ {
+ Link(fromip,toip,lq,nlq,etx);
+ }
+
+ function ffmapinit()
+ {
+ if(null!=window.map)map.Dispose();
+
+ var INFINITE = 99.99;
+
+ map = new VEMap('ffmap');
+ <%
+ local fd
+ local uci = require "luci.model.uci".cursor()
+
+ uci:foreach("olsrd", "LoadPlugin", function(s)
+ if s.library == "olsrd_nameservice.so.0.3" and s.latlon_file then
+ fd = io.open(s.latlon_file)
+ end
+ end)
+
+ if fd then
+ local data = fd:read("*a")
+ fd:close()
+
+ if data then
+ local line
+ for line in data:gmatch("[^\n]+") do
+ if line:match(";$") then
+ write(line .. "\n")
+ else
+ break
+ end
+ end
+ end
+ end
+ %>
+ }
+
+ function ffgoto(ip)
+ {
+ map.SetCenter(points[ip]);
+ }
+ </script>
+ <div id="ffmap" style="position:relative; width:100%; height:640px;"></div>
+ </body>
+</html>
diff --git a/modules/luci-mod-freifunk/luasrc/view/freifunk/adminindex.htm b/modules/luci-mod-freifunk/luasrc/view/freifunk/adminindex.htm
new file mode 100644
index 000000000..e0252ba89
--- /dev/null
+++ b/modules/luci-mod-freifunk/luasrc/view/freifunk/adminindex.htm
@@ -0,0 +1,51 @@
+<%+header%>
+<%
+local uci = require "luci.model.uci".cursor()
+local contact = uci:get_all("freifunk", "contact")
+local contacturl = luci.dispatcher.build_url(luci.dispatcher.context.path[1], "freifunk", "contact")
+local hostname = uci:get_first ("system", "system", "hostname")
+local latitude = uci:get_first ("system", "system", "latitude")
+local longitude = uci:get_first ("system", "system", "longitude")
+local location = uci:get_first ("system", "system", "location")
+local basicsurl = luci.dispatcher.build_url(luci.dispatcher.context.path[1], "freifunk", "basics")
+local nickname, name, mail
+if not contact then
+ nickname, name, mail = ""
+else
+ nickname = contact.nickname
+ name = contact.name
+ mail = contact.mail
+end
+
+%>
+
+<h2><%:Freifunk Overview%></h2>
+
+<%:These pages will assist you in setting up your router for Freifunk or similar wireless community networks.%>
+<p />
+
+<% if not (hostname and latitude and longitude and location) then%>
+<div class="error">
+ <%:Basic settings are incomplete. Please go to%> <a href='<%=basicsurl%>'><%:Basic settings%></a> <%:and fill out all required fields.%>
+</div>
+<%end%>
+<p />
+
+<% if not (nickname and name and mail) then%>
+<div class="error">
+ <%:Contact information is incomplete. Please go to%> <a href='<%=contacturl%>'><%:Contact%></a> <%:and fill out all required fields.%>
+ <p />
+</div>
+<%end%>
+
+<% uci:foreach("wireless", "wifi-device", function(section)
+ local device = section[".name"]
+ local url = luci.dispatcher.build_url(luci.dispatcher.context.path[1], "network", "wireless")
+ if section.diversity ~= "0" and section.disabled ~= "1" and section.type ~= "mac80211" then
+ print('<div class="error">' .. translate("Diversity is enabled for device") .. ' <b>' .. section[".name"] .. '</b>. '
+ .. translate("Go to") .. ' <a href="' .. url .. '">' .. translate("wireless settings") .. '</a> ' ..
+ translate("to disable it.") .. '</div><p />')
+ end
+end) %>
+
+<%+footer%>
diff --git a/modules/luci-mod-freifunk/luasrc/view/freifunk/contact.htm b/modules/luci-mod-freifunk/luasrc/view/freifunk/contact.htm
new file mode 100644
index 000000000..2d79ccd40
--- /dev/null
+++ b/modules/luci-mod-freifunk/luasrc/view/freifunk/contact.htm
@@ -0,0 +1,70 @@
+<%#
+LuCI - Lua Configuration Interface
+Copyright 2008 Steven Barth <steven@midlink.org>
+Copyright 2008 Jo-Philipp Wich <xm@leipzig.freifunk.net>
+Copyright 2011 Manuel Munz <freifunk at somakoma dot de>
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+-%>
+
+<%+header%>
+
+<%
+local uci = require "luci.model.uci".cursor()
+local contact = uci:get_all("freifunk", "contact")
+local nickname, name, mail, phone, location, note
+local lon = uci:get_first("system", "system", "longitude")
+local lat = uci:get_first("system", "system", "latitude")
+
+if not contact then
+ nickname, name, homepage, mail, phone, location, note = ""
+else
+ nickname = contact.nickname or ""
+ name = contact.name or ""
+ homepage = contact.homepage or {}
+ mail = contact.mail or ""
+ phone = contact.phone or ""
+ location = uci:get_first("system", "system", "location") or contact.location
+ note = contact.note or ""
+end
+%>
+
+<h2><a id="content" name="content"><%:Contact%></a></h2>
+
+<fieldset xmlns="http://www.w3.org/1999/xhtml" class="cbi-section">
+<legend><%:Operator%></legend>
+ <table cellspacing="10" width="100%" style="text-align:left">
+ <tr><th width="33%"><%:Nickname%>:</th><td><%=nickname%></td></tr>
+ <tr><th width="33%"><%:Realname%>:</th><td><%=name%></td></tr>
+ <tr><th width="33%"><%:Homepage%>:</th><td>
+ <% for k, v in ipairs(homepage) do %>
+ <a href="<%=v%>"><%=v%></a><br />
+ <% end %>
+ </td></tr>
+ <tr><th width="33%"><%:E-Mail%>:</th><td><a href="mailto:<%=mail%>"><%=mail%></a></td></tr>
+ <tr><th width="33%"><%:Phone%>:</th><td><%=phone%></td></tr>
+ </table>
+</fieldset>
+
+<fieldset xmlns="http://www.w3.org/1999/xhtml" class="cbi-section">
+<legend><%:Location%></legend>
+ <table cellspacing="10" width="100%" style="text-align:left">
+ <tr><th width="33%"><%:Location%>:</th><td><%=location%></td></tr>
+ <tr><th width="33%"><%:Coordinates%>:</th><td><%=lat%> <%=lon%> (<a href="<%=pcdata(luci.dispatcher.build_url("freifunk/map"))%>"><%:Show on map%>)</a></td></tr>
+ </table>
+</fieldset>
+
+<% if note then %>
+<fieldset xmlns="http://www.w3.org/1999/xhtml" class="cbi-section">
+<legend><%:Notice%></legend>
+ <table cellspacing="10" width="100%" style="text-align:left">
+ <tr><td><%=note%></td></tr>
+ </table>
+</fieldset>
+<%end%>
+
+<%+footer%>
diff --git a/modules/luci-mod-freifunk/luasrc/view/freifunk/index.htm b/modules/luci-mod-freifunk/luasrc/view/freifunk/index.htm
new file mode 100644
index 000000000..0fcec4597
--- /dev/null
+++ b/modules/luci-mod-freifunk/luasrc/view/freifunk/index.htm
@@ -0,0 +1,92 @@
+<%#
+LuCI - Lua Configuration Interface
+Copyright 2008 Steven Barth <steven@midlink.org>
+Copyright 2008 Jo-Philipp Wich <xm@leipzig.freifunk.net>
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+$Id$
+
+-%>
+<%+header%>
+<%
+local uci = require "luci.model.uci".cursor()
+local tpl = require "luci.template"
+local fs = require "luci.fs"
+local ff = {}
+local ff = uci:get_all("freifunk")
+
+if not ff or not ff.community.name then
+ community = "Freifunk"
+ DefaultText = ""
+ nickname = "No Nickname set"
+else
+ community = ff.community.name
+ DefaultText = ff.community.DefaultText
+ nickname = ff.contact.nickname
+end
+
+local co = "profile_" .. community
+--local community = uci:get_first(co, "community", "name") or "Freifunk"
+local url = uci:get_first(co, "community", "homepage") or "http://www.freifunk.net"
+
+
+local usertext = fs.readfile("/www/luci-static/index_user.html")
+
+if DefaultText ~= "disabled" then
+
+ defaulttext = '<h2><a id="content" name="content">'..
+ (translate("Hello and welcome in the network of"))..
+ ' '..
+ (community or "Freifunk Deutschland")..
+ '!</a></h2><p>'..
+ translate("We are an initiative to establish a free, independent and open wireless mesh network.")..
+ '<br />'..
+ translate("This is the access point")..
+ ' '..
+ luci.sys.hostname()..
+ '. '..
+ translate("It is operated by")..
+ ' <a href="'..
+ luci.dispatcher.build_url("freifunk", "contact")..
+ '">'..
+ (nickname or translate("Please set your contact information"))..
+ '</a>.</p><p>'..
+ translate("You can find further information about the global Freifunk initiative at")..
+ ' <a href="http://freifunk.net">Freifunk.net</a>.<br />'..
+ translate("If you are interested in our project then contact the local community")..
+ ' <a href="'..url..'">'..community..'</a>.</p><p><strong>'..
+ translate("Notice")..
+ '</strong>: '..
+ translate("Internet access depends on technical and organisational conditions and may or may not work for you.")..
+ '</p>'
+end
+%>
+
+<%=defaulttext%>
+<%=usertext%>
+
+<%
+-- add custom widgets from view/freifunk/widgets
+local widgets = {}
+local dir = "/usr/lib/lua/luci/view/freifunk/widgets"
+
+uci:foreach("freifunk-widgets", "widget",
+ function(s)
+ if s.enabled == "1" then
+ table.insert(widgets, s)
+ end
+ end)
+
+for k, v in ipairs(widgets) do
+ if v['template'] and fs.access(dir .. "/" .. v['template'] .. "/main.htm") then
+ tpl.render("freifunk/widgets/" .. v['template'] .. "/main", { data = v })
+ end
+end
+
+%>
+<%+footer%>
diff --git a/modules/luci-mod-freifunk/luasrc/view/freifunk/profile_error.htm b/modules/luci-mod-freifunk/luasrc/view/freifunk/profile_error.htm
new file mode 100644
index 000000000..984fa0acf
--- /dev/null
+++ b/modules/luci-mod-freifunk/luasrc/view/freifunk/profile_error.htm
@@ -0,0 +1,11 @@
+<%+header%>
+
+<%
+local profileurl = luci.dispatcher.build_url(luci.dispatcher.context.path[1], "freifunk", "basics")
+%>
+
+<h2><%:Error%></h2>
+<%:You need to select a profile before you can edit it. To select a profile go to%> <a href='<%=profileurl%>'><%:Basic settings%></a>.
+<p/>
+
+<%+footer%>
diff --git a/modules/luci-mod-freifunk/luasrc/view/freifunk/public_status.htm b/modules/luci-mod-freifunk/luasrc/view/freifunk/public_status.htm
new file mode 100644
index 000000000..10bd849d7
--- /dev/null
+++ b/modules/luci-mod-freifunk/luasrc/view/freifunk/public_status.htm
@@ -0,0 +1,372 @@
+<%
+local sys = require "luci.sys"
+local twa = require "luci.tools.webadmin"
+
+-- System
+local model, system, memtotal, memcached, membuffers, memfree, bogomips = sys.sysinfo()
+local uptime = twa.date_format(tonumber(sys.uptime()))
+local time = os.date("%a, %d %b %Y, %H:%M:%S")
+local load1, load5, load15 = sys.loadavg()
+local load = string.format("%.2f, %.2f, %.2f", load1, load5, load15)
+
+local mem = string.format(
+ "%.2f MB (%.2f %s, %.2f %s, %.2f %s, %.2f %s)",
+ tonumber(memtotal) / 1024,
+ tonumber(memtotal - memfree) / 1024,
+ tostring(i18n.translate("used")),
+ memfree / 1024,
+ tostring(i18n.translate("free")),
+ memcached / 1024,
+ tostring(i18n.translate("cached")),
+ membuffers / 1024,
+ tostring(i18n.translate("buffered"))
+)
+
+-- update interval
+local bogomips = bogomips or 100
+local interval = 10
+if bogomips > 350 then
+ interval = 5
+end
+
+-- wireless
+local ntm = require "luci.model.network".init()
+local devices = ntm:get_wifidevs()
+local netlist = { }
+local netdevs = { }
+local dev
+for _, dev in ipairs(devices) do
+ local net
+ for _, net in ipairs(dev:get_wifinets()) do
+ netlist[#netlist+1] = net:ifname()
+ netdevs[net:ifname()] = dev:name()
+ end
+end
+local has_iwinfo = pcall(require, "iwinfo")
+
+-- Routes
+local defroutev4 = sys.net.defaultroute()
+local defroutev6 = sys.net.defaultroute6()
+
+if defroutev4 then
+ defroutev4.dest = defroutev4.dest:string()
+ defroutev4.gateway = defroutev4.gateway:string()
+else
+ -- probably policy routing activated, try olsr-default table
+ local dr4 = sys.exec("ip r s t olsr-default")
+ if dr4 then
+ defroutev4 = { }
+ defroutev4.dest, defroutev4.gateway, defroutev4.device, defroutev4.metric = dr4:match("^(%w+) via (%d+.%d+.%d+.%d+) dev ([%w-]+) +metric (%d+)")
+ end
+end
+
+if defroutev6 then
+ defroutev6.dest = defroutev6.dest:string()
+ defroutev6.nexthop = defroutev6.nexthop:string()
+end
+
+if luci.http.formvalue("status") == "1" then
+ local rv = { }
+ for dev in pairs(netdevs) do
+ local j = { id = dev }
+ local iw = luci.sys.wifi.getiwinfo(dev)
+ if iw then
+ local f
+ for _, f in ipairs({
+ "channel", "txpower", "bitrate", "signal", "noise",
+ "quality", "quality_max", "mode", "ssid", "bssid", "encryption", "ifname"
+ }) do
+ j[f] = iw[f]
+ end
+ end
+ rv[#rv+1] = j
+ end
+
+ if defroutev6 then
+ def6 = {
+ gateway = defroutev6.nexthop,
+ dest = defroutev6.dest,
+ dev = defroutev6.device,
+ metr = defroutev6.metric
+ }
+ end
+
+ if defroutev4 then
+ def4 = {
+ gateway = defroutev4.gateway,
+ dest = defroutev4.dest,
+ dev = defroutev4.device,
+ metr = defroutev4.metric
+ }
+ end
+
+ rv[#rv+1] = {
+ time = time,
+ uptime = uptime,
+ load = load,
+ mem = mem,
+ defroutev4 = def4,
+ defroutev6 = def6
+ }
+
+ luci.http.prepare_content("application/json")
+ luci.http.write_json(rv)
+ return
+end
+-%>
+
+<%+header%>
+
+<script type="text/javascript" src="<%=resource%>/cbi.js"></script>
+
+<script type="text/javascript">//<![CDATA[
+ XHR.poll(<%=interval%> , '<%=REQUEST_URI%>', { status: 1 },
+ function(x, st)
+ {
+ if (st)
+ {
+ for( var i = 0; i < st.length; i++ )
+ {
+ var iw = st[i];
+ var is_assoc = (iw.bssid && iw.channel);
+ var p = (100 / iw.quality_max * iw.quality);
+ var q = is_assoc ? p : -1;
+
+ var icon;
+ if (q < 0)
+ icon = "<%=resource%>/icons/signal-none.png";
+ else if (q == 0)
+ icon = "<%=resource%>/icons/signal-0.png";
+ else if (q < 25)
+ icon = "<%=resource%>/icons/signal-0-25.png";
+ else if (q < 50)
+ icon = "<%=resource%>/icons/signal-25-50.png";
+ else if (q < 75)
+ icon = "<%=resource%>/icons/signal-50-75.png";
+ else
+ icon = "<%=resource%>/icons/signal-75-100.png";
+
+ var power = document.getElementById(iw.id + '-txpower');
+ if (power)
+ power.innerHTML = String.format('%s dbm', iw.txpower);
+
+ var signal = document.getElementById(iw.id + '-signal');
+ if (signal)
+ signal.innerHTML = String.format(
+ '<img src="%s" title="Signal: %s db / Noise: %s db" alt="Signal Quality" />',
+ icon, iw.signal, iw.noise
+ );
+
+ var bitrate = document.getElementById(iw.id + '-bitrate');
+ if (bitrate)
+ bitrate.innerHTML = String.format('%s Mb/s', iw.bitrate ? iw.bitrate / 1000 : '?');
+
+ var ssid = document.getElementById(iw.id + '-ssid');
+ if (ssid)
+ ssid.innerHTML = iw.ssid;
+
+ var bssid = document.getElementById(iw.id + '-bssid');
+ if (bssid)
+ bssid.innerHTML = iw.bssid;
+
+ var channel = document.getElementById(iw.id + '-channel');
+ if (channel)
+ channel.innerHTML = iw.channel;
+
+ var mode = document.getElementById(iw.id + '-mode');
+ if (mode)
+ mode.innerHTML = iw.mode;
+ }
+
+ i = st.length - 1
+ var u
+
+ if (u = document.getElementById('dynuptime'))
+ u.innerHTML = st[i].uptime;
+
+ if (u = document.getElementById('dynload'))
+ u.innerHTML = st[i].load;
+
+ if (u = document.getElementById('dynmem'))
+ u.innerHTML = st[i].mem;
+
+ if (u = document.getElementById('dyntime'))
+ u.innerHTML = st[i].time;
+
+ if (st[i].defroutev4)
+ {
+ if (u = document.getElementById('v4dst'))
+ u.innerHTML = st[i].defroutev4.dest;
+
+ if (u = document.getElementById('v4gw'))
+ u.innerHTML = st[i].defroutev4.gateway;
+
+ if (u = document.getElementById('v4dev'))
+ u.innerHTML = st[i].defroutev4.dev;
+
+ if (u = document.getElementById('v4metr'))
+ u.innerHTML = st[i].defroutev4.metr;
+ }
+
+ if (st[i].defroutev6)
+ {
+ if (u = document.getElementById('v6dst'))
+ u.innerHTML = st[i].defroutev6.dest;
+
+ if (u = document.getElementById('v6gw'))
+ u.innerHTML = st[i].defroutev6.gateway;
+
+ if (u = document.getElementById('v6dev'))
+ u.innerHTML = st[i].defroutev6.dev;
+
+ if (u = document.getElementById('v6metr'))
+ u.innerHTML = st[i].defroutev6.metr;
+ }
+ }
+ }
+ );
+//]]></script>
+
+<div class="cbi-map">
+ <h2><%:System%></h2>
+ <div class="cbi-section-node">
+ <div class="cbi-value"><label class="cbi-value-title"><%:System%></label><div class="cbi-value-field"><%=system%></div></div>
+ <div class="cbi-value"><label class="cbi-value-title"><%:Processor%></label><div class="cbi-value-field"><%=model%></div></div>
+ <div class="cbi-value"><label class="cbi-value-title"><%:Load%></label><div class="cbi-value-field" id="dynload"><%=load%></div></div>
+ <div class="cbi-value"><label class="cbi-value-title"><%:Memory%></label><div class="cbi-value-field" id="dynmem"><%=mem%></div></div>
+ <div class="cbi-value"><label class="cbi-value-title"><%:Local Time%></label><div class="cbi-value-field" id="dyntime"><%=time%></div></div>
+ <div class="cbi-value"><label class="cbi-value-title"><%:Uptime%></label><div class="cbi-value-field" id="dynuptime"><%=uptime%></div></div>
+ </div>
+</div>
+
+<% if devices[1] then %>
+
+<div class="cbi-map">
+ <h2><%:Wireless Overview%></h2>
+
+ <% if not has_iwinfo then %>
+ <div class="errorbox">
+ <strong><%:Package libiwinfo required!%></strong><br />
+ <%_The <em>libiwinfo</em> package is not installed. You must install this component for working wireless configuration!%>
+ </div>
+ <% end %>
+
+ <div class="cbi-section">
+ <div class="cbi-section-node">
+ <table class="cbi-section-table">
+ <tr class="cbi-section-table-titles">
+ <th class="cbi-section-table-cell"><%:Signal%></th>
+ <th class="cbi-section-table-cell"><%:Bitrate%></th>
+ <th class="cbi-section-table-cell"><%:SSID%></th>
+ <th class="cbi-section-table-cell"><%:BSSID%></th>
+ <th class="cbi-section-table-cell"><%:Channel%></th>
+ <th class="cbi-section-table-cell"><%:Mode%></th>
+ <th class="cbi-section-table-cell"><%:TX%>-<%:Power%></th>
+ <th class="cbi-section-table-cell"><%:Interface%></th>
+ </tr>
+ <%
+ for _, dev in ipairs(devices) do
+ local net
+ for _, net in ipairs(dev:get_wifinets()) do
+ netlist[#netlist+1] = net:ifname()
+ netdevs[net:ifname()] = dev:name()
+
+ if net.iwdata.device then
+ local signal = net.iwinfo.signal or "N/A"
+ local noise = net.iwinfo.noise or "N/A"
+ local q = net.iwinfo.quality or "0"
+ local qmax = net.iwinfo.quality_max or "100"
+ local qperc = q / qmax * 100
+
+ if qperc == 0 then
+ icon = "signal-none.png"
+ elseif qperc < 26 then
+ icon = "signal-0-25.png"
+ elseif qperc < 51 then
+ icon = "signal-25-50.png"
+ elseif qperc < 76 then
+ icon = "signal-50-75.png"
+ elseif qperc < 100 then
+ icon = "signal-75-100.png"
+ else
+ icon = "signal-0.png"
+ end
+
+ signal_string = "<img src='"..resource.."/icons/"..icon.."' title='Signal: "..signal.." db / Noise: "..noise.." db' alt='Signal Quality'></img>"
+
+ local ssid = net.iwinfo.ssid or "N/A"
+ local bssid = net.iwinfo.bssid or "N/A"
+ local chan = net.iwinfo.channel or "N/A"
+ local mode = net.iwinfo.mode or "N/A"
+ local txpwr = net.iwinfo.txpower or "N/A"
+ if txpwr ~= "N/A" then
+ txpwr = txpwr.." dbm"
+ end
+ local bitrate = net.iwinfo.bitrate or "N/A"
+ if bitrate ~= "N/A" then
+ bitrate = ( bitrate / 1000 ).."Mb/s"
+ end
+ local interface = net.iwdata.ifname or "N/A"
+ %>
+ <tr class="cbi-section-table-row cbi-rowstyle-1">
+ <td class="cbi-value-field" id="<%=net:ifname()%>-signal"><%=signal_string%></td>
+ <td class="cbi-value-field" id="<%=net:ifname()%>-bitrate"><%=bitrate%></td>
+ <td class="cbi-value-field" id="<%=net:ifname()%>-ssid"><%=ssid%></td>
+ <td class="cbi-value-field" id="<%=net:ifname()%>-bssid"><%=bssid%></td>
+ <td class="cbi-value-field" id="<%=net:ifname()%>-channel"><%=chan%></td>
+ <td class="cbi-value-field" id="<%=net:ifname()%>-mode"><%=mode%></td>
+ <td class="cbi-value-field" id="<%=net:ifname()%>-txpower"><%=txpwr%></td>
+ <td class="cbi-value-field"><%=interface%></td>
+ </tr>
+ <% end
+ end
+ end %>
+ </table>
+ </div>
+ </div>
+</div>
+<% end %>
+
+<div class="cbi-map">
+ <h2><%:Default routes%></h2>
+ <div class="cbi-section">
+ <div class="cbi-section-node">
+
+<% if not defroutev4 and not defroutev6 then %>
+ <%:No default routes known.%>
+<%else%>
+ <table class="cbi-section-table">
+ <tr class="cbi-section-table-titles">
+ <th class="cbi-section-table-cell"><%:Network%></th>
+ <th class="cbi-section-table-cell"><%:Interface%></th>
+ <th class="cbi-section-table-cell"><%:Gateway%></th>
+ <th class="cbi-section-table-cell"><%:Metric%></th>
+ </tr>
+
+ <% if defroutev4 then %>
+
+ <tr class="cbi-section-table-row cbi-rowstyle-1">
+ <td class="cbi-value-field" id="v4dst"><%=defroutev4.dest%></td>
+ <td class="cbi-value-field" id="v4dev"><%=defroutev4.device%></td>
+ <td class="cbi-value-field" id="v4gw"><%=defroutev4.gateway%></td>
+ <td class="cbi-value-field" id="v4metr"><%=defroutev4.metric%></td>
+ </tr>
+
+ <% end
+ if defroutev6 then %>
+
+ <tr class="cbi-section-table-row cbi-rowstyle-2">
+ <td class="cbi-value-field" id="v6dst"><%=defroutev6.dest%></td>
+ <td class="cbi-value-field" id="v6dev"><%=defroutev6.device%></td>
+ <td class="cbi-value-field" id="v6gw"><%=defroutev6.nexthop%></td>
+ <td class="cbi-value-field" id="v6metr"><%=defroutev6.metric%></td>
+ </tr>
+
+ <% end %>
+
+ </table>
+<% end %>
+ </div>
+ </div>
+</div>
+<%+footer%>
diff --git a/modules/luci-mod-freifunk/luasrc/view/freifunk/remote_update.htm b/modules/luci-mod-freifunk/luasrc/view/freifunk/remote_update.htm
new file mode 100644
index 000000000..092ec4714
--- /dev/null
+++ b/modules/luci-mod-freifunk/luasrc/view/freifunk/remote_update.htm
@@ -0,0 +1,59 @@
+<%#
+LuCI - Lua Configuration Interface
+Copyright 2008 Steven Barth <steven@midlink.org>
+Copyright 2008 Jo-Philipp Wich <xm@leipzig.freifunk.net>
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+$Id: contact.htm 3529 2008-10-07 13:10:24Z jow $
+
+-%>
+<%+header%>
+
+<h2><%:Freifunk Remote Update%></h2>
+
+<p><%:Check for new firmware versions and perform automatic updates.%></p>
+
+<% if update then %>
+
+ <% if update.info then %>
+ <strong><%:Update available!%></strong>
+ <br /><br />
+ <pre><%=update.info%></pre><br />
+ <% else %>
+ <strong><%:The installed firmware is the most recent version.%></strong>
+ <br /><br />
+ <% end %>
+
+ <p>
+ <form method="post" action="" class="inline">
+ <input type="hidden" name="flash" value="1" />
+ <input type="submit" class="cbi-button cbi-button-apply" value="<%:Start Upgrade%>" />
+ </form>
+ </p>
+
+<% elseif confirm then %>
+
+ <strong><%:Update Settings%></strong>
+ <br /><br />
+
+ <p><form method="post" action="" class="inline">
+ <input type="hidden" name="flash" value="1" />
+ <input type="hidden" name="confirm" value="1" />
+
+ <input type="checkbox" class="cbi-input-checkbox" name="keepcfg" value="1" checked="checked" id="cb_keepcfg" />
+ <label for="cb_keepcfg"><%:Keep configuration%></label><br />
+
+ <input type="checkbox" class="cbi-input-checkbox" name="verify" value="1" checked="checked" id="cb_verify" />
+ <label for="cb_verify"><%:Verify downloaded images%></label><br /><br />
+
+ <input type="submit" class="cbi-button cbi-button-apply" value="<%:Confirm Upgrade%>" />
+ </form></p>
+
+<% end %>
+
+<%+footer%>
diff --git a/modules/luci-mod-freifunk/po/ca/freifunk.po b/modules/luci-mod-freifunk/po/ca/freifunk.po
new file mode 100644
index 000000000..338c68828
--- /dev/null
+++ b/modules/luci-mod-freifunk/po/ca/freifunk.po
@@ -0,0 +1,407 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2009-06-10 03:40+0200\n"
+"PO-Revision-Date: 2014-07-18 00:15+0200\n"
+"Last-Translator: Alex <alexhenrie24@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: ca\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 2.0.6\n"
+
+msgid "BSSID"
+msgstr "BSSID"
+
+msgid "Bad (ETX > 10)"
+msgstr "Dolent (ETX > 10)"
+
+msgid "Basic Settings"
+msgstr "Ajusts bàsics"
+
+msgid "Basic settings"
+msgstr "Ajusts bàsics"
+
+msgid "Basic settings are incomplete. Please go to"
+msgstr "Els ajusts bàsics estan incomplets. Si us plau, aneu a"
+
+msgid "Basic system settings"
+msgstr "Ajusts de sistema bàsics"
+
+msgid "Bitrate"
+msgstr "Velocitat de bits"
+
+msgid "Channel"
+msgstr "Canal"
+
+msgid "Check for new firmware versions and perform automatic updates."
+msgstr ""
+"Busca versions de microprogramari noves i realitza actualitzacions "
+"automàtiques."
+
+msgid "Client network size"
+msgstr "Mida de xarxa client"
+
+msgid "Community"
+msgstr "Comunitat"
+
+msgid "Community profile"
+msgstr "Perfil de comunitat"
+
+msgid "Community settings"
+msgstr "Ajusts de comunitat"
+
+msgid "Confirm Upgrade"
+msgstr "Confirma actualització"
+
+msgid "Contact"
+msgstr "Contacte"
+
+msgid "Contact information is incomplete. Please go to"
+msgstr "La informació de contacte està incompleta. Si us plau, aneu a"
+
+msgid "Coordinates"
+msgstr "Coordenades"
+
+msgid "Country code"
+msgstr "Codi de país"
+
+msgid "Default routes"
+msgstr "Rutes per defecte"
+
+msgid "Disable default content"
+msgstr "Deshabilita el contingut per defecte"
+
+msgid "Diversity is enabled for device"
+msgstr "La diversitat està habilitada en el dispositiu"
+
+msgid "E-Mail"
+msgstr "Adreça electrònica"
+
+msgid "ESSID"
+msgstr "ESSID"
+
+msgid "Edit index page"
+msgstr "Edita la pàgina d'índex"
+
+msgid "Enable IPv6"
+msgstr "Habilita IPv6"
+
+msgid "Enable a virtual access point (VAP) by default if possible."
+msgstr "Habilita un punt d'accés virtual (VAP) per defecte si és possible."
+
+msgid "Error"
+msgstr "Error"
+
+msgid "Find your coordinates with OpenStreetMap"
+msgstr "Troba les vostres coordenades amb l'OpenStreetMap"
+
+msgid "Freifunk"
+msgstr "Freifunk"
+
+msgid "Freifunk Overview"
+msgstr "Visió de conjunt del Freifunk"
+
+msgid "Freifunk Remote Update"
+msgstr "Actualització remota del Freifunk"
+
+msgid "Gateway"
+msgstr "Passarel·la"
+
+msgid "Go to"
+msgstr "Vés a"
+
+msgid "Good (2 < ETX < 4)"
+msgstr "Bo (2 < ETX < 4)"
+
+msgid "Green"
+msgstr "Verd"
+
+msgid "Hello and welcome in the network of"
+msgstr "Hola i benvingut a la xarxa de"
+
+msgid "Hide OpenStreetMap"
+msgstr "Amaga l'OpenStreetMap"
+
+msgid "Homepage"
+msgstr "Pàgina principal"
+
+msgid "Hostname"
+msgstr "Nom de màquina"
+
+msgid "IPv6 Config"
+msgstr "Configuració IPv6"
+
+msgid "IPv6 Prefix"
+msgstr "Prefix IPv6"
+
+msgid "IPv6 network in CIDR notation."
+msgstr "Xarxa IPv6 en notació CIDR."
+
+msgid "If selected then the default content element is not shown."
+msgstr "Si està seleccionat, l'element de contingut per defecte no es mostra."
+
+msgid "If you are interested in our project then contact the local community"
+msgstr ""
+"Si estàs interessat en el nostre projecte, llavors contacta la comunitat "
+"local"
+
+msgid "Index Page"
+msgstr "Pàgina d'índex"
+
+msgid "Interface"
+msgstr "Interfície"
+
+msgid ""
+"Internet access depends on technical and organisational conditions and may "
+"or may not work for you."
+msgstr ""
+"L'accés a Internet depèn de les condicions tècniques i organitzatives, i pot "
+"funcionar o no per tu."
+
+msgid "It is operated by"
+msgstr "És administrat per"
+
+msgid "Keep configuration"
+msgstr "Manté la configuració"
+
+msgid "Latitude"
+msgstr "Latitud"
+
+msgid "Legend"
+msgstr "Llegenda"
+
+msgid "Load"
+msgstr "Càrrega"
+
+msgid "Local Time"
+msgstr "Hora local"
+
+msgid "Location"
+msgstr "Ubicació"
+
+msgid "Longitude"
+msgstr "Longitud"
+
+msgid "Map"
+msgstr "Mapa"
+
+msgid "Map Error"
+msgstr "Error de mapa"
+
+msgid "Memory"
+msgstr "Memòria"
+
+msgid "Mesh prefix"
+msgstr "Prefix de malla"
+
+msgid "Metric"
+msgstr "Mètric"
+
+msgid "Mode"
+msgstr "Mode"
+
+msgid "Network"
+msgstr "Xarxa"
+
+msgid "Network for client DHCP addresses"
+msgstr "Xarxa de les adreces DHCP dels clients"
+
+msgid "Nickname"
+msgstr "Nickname"
+
+msgid "No default routes known."
+msgstr "No es coneix cap ruta per defecte."
+
+msgid "Notice"
+msgstr "Avís"
+
+msgid "OLSR"
+msgstr "OLSR"
+
+msgid "Operator"
+msgstr "Operador"
+
+msgid "Orange"
+msgstr "Taronja"
+
+msgid "Overview"
+msgstr "Visió de conjunt"
+
+msgid "Package libiwinfo required!"
+msgstr "Es requereix el paquet libiwinfo!"
+
+msgid "Phone"
+msgstr "Telèfon"
+
+msgid "Please fill in your contact details below."
+msgstr "Si us plau, empleneu els vostres detalls de contacte a baix."
+
+msgid "Please set your contact information"
+msgstr "Si us plau, establiu la vostra informació de contacte"
+
+msgid "Power"
+msgstr "Potència"
+
+msgid "Processor"
+msgstr "Processador"
+
+msgid "Profile"
+msgstr "Perfil"
+
+msgid "Profile (Expert)"
+msgstr "Perfil (expert)"
+
+msgid "Realname"
+msgstr "Nom real"
+
+msgid "Red"
+msgstr "Xarxa"
+
+msgid "SSID"
+msgstr "SSID"
+
+msgid ""
+"Select your location with a mouse click on the map. The map will only show "
+"up if you are connected to the Internet."
+msgstr ""
+"Seleccioneu la vostra ubicació per un clic del ratolí en el mapa. El mapa es "
+"mostra només si esteu connectat al Internet."
+
+msgid "Show OpenStreetMap"
+msgstr "Mostra OpenStreetMap"
+
+msgid "Show on map"
+msgstr "Mostra en mapa"
+
+msgid "Signal"
+msgstr "Senyal"
+
+msgid "Splash"
+msgstr ""
+
+msgid "Start Upgrade"
+msgstr "Inicia l'actualització"
+
+msgid "Statistics"
+msgstr "Estadístiques"
+
+msgid "Status"
+msgstr "Estat"
+
+msgid "Still usable (4 < ETX < 10)"
+msgstr "Encara utilitzable (4 < ETX < 10)"
+
+msgid "System"
+msgstr "Sistema"
+
+msgid "TX"
+msgstr "TX"
+
+msgid ""
+"The <em>libiwinfo</em> package is not installed. You must install this "
+"component for working wireless configuration!"
+msgstr ""
+"El paquet <em>libiwinfo</em> no està instal·lat. Heu d'instal·lar aquest "
+"component per a tenir una configuració sense fil funcionant!"
+
+msgid ""
+"The OLSRd service is not configured to capture position data from the "
+"network.<br /> Please make sure that the nameservice plugin is properly "
+"configured and that the <em>latlon_file</em> option is enabled."
+msgstr ""
+
+msgid "The installed firmware is the most recent version."
+msgstr "El microprogramari instal·lat és la versió més recent."
+
+msgid ""
+"These are the basic settings for your local wireless community. These "
+"settings define the default values for the wizard and DO NOT affect the "
+"actual configuration of the router."
+msgstr ""
+
+msgid "These are the settings of your local community."
+msgstr "Aquests són els ajusts de la vostra comunitat local."
+
+msgid ""
+"These pages will assist you in setting up your router for Freifunk or "
+"similar wireless community networks."
+msgstr ""
+
+msgid "This is the access point"
+msgstr "Això és el punt d'accés"
+
+msgid "Update Settings"
+msgstr "Actualitza els ajusts"
+
+msgid "Update available!"
+msgstr "Actualització disponible!"
+
+msgid "Uptime"
+msgstr ""
+
+msgid "VAP"
+msgstr ""
+
+msgid "Verify downloaded images"
+msgstr ""
+
+msgid "Very good (ETX < 2)"
+msgstr "Molt bo (ETX < 2)"
+
+msgid ""
+"We are an initiative to establish a free, independent and open wireless mesh "
+"network."
+msgstr ""
+"Som una iniciativa per establir una xarxa mesh lliure, independent i oberta."
+
+msgid "Wireless Overview"
+msgstr "Visió de conjunt sense fil"
+
+msgid "Yellow"
+msgstr "Groc"
+
+msgid ""
+"You can display additional content on the public index page by inserting "
+"valid XHTML in the form below.<br />Headlines should be enclosed between &lt;"
+"h2&gt; and &lt;/h2&gt;."
+msgstr ""
+
+msgid ""
+"You can find further information about the global Freifunk initiative at"
+msgstr "Pots trobar més informació sobre la iniciativa global Freifunk a"
+
+msgid "You can manually edit the selected community profile here."
+msgstr ""
+
+msgid ""
+"You need to select a profile before you can edit it. To select a profile go "
+"to"
+msgstr ""
+
+msgid "and fill out all required fields."
+msgstr ""
+
+msgid "buffered"
+msgstr ""
+
+msgid "cached"
+msgstr ""
+
+msgid "e.g."
+msgstr ""
+
+msgid "free"
+msgstr "lliure"
+
+msgid "to disable it."
+msgstr ""
+
+msgid "used"
+msgstr "utilitzat"
+
+msgid "wireless settings"
+msgstr "ajusts sense fil"
diff --git a/modules/luci-mod-freifunk/po/cs/freifunk.po b/modules/luci-mod-freifunk/po/cs/freifunk.po
new file mode 100644
index 000000000..cf22c008b
--- /dev/null
+++ b/modules/luci-mod-freifunk/po/cs/freifunk.po
@@ -0,0 +1,404 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"PO-Revision-Date: 2014-08-08 21:21+0200\n"
+"Last-Translator: koli <lukas.koluch@gmail.com>\n"
+"Language-Team: none\n"
+"Language: cs\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
+"X-Generator: Pootle 2.0.6\n"
+
+msgid "BSSID"
+msgstr "BSSID"
+
+msgid "Bad (ETX > 10)"
+msgstr "Špatné (ETX > 10)"
+
+msgid "Basic Settings"
+msgstr "Základní nastavení"
+
+msgid "Basic settings"
+msgstr "Základní nastavení"
+
+msgid "Basic settings are incomplete. Please go to"
+msgstr "Základní nastavení není kompletní. Prosím přejděte na"
+
+msgid "Basic system settings"
+msgstr "Základní nastavení systému"
+
+msgid "Bitrate"
+msgstr "Datový tok"
+
+msgid "Channel"
+msgstr "Kanál"
+
+#, fuzzy
+msgid "Check for new firmware versions and perform automatic updates."
+msgstr ""
+"Zkontrolovat dostupnost nové verze firmwaru a provést automatické "
+"aktualizace."
+
+msgid "Client network size"
+msgstr "Velikost klientské sítě"
+
+msgid "Community"
+msgstr "Komunita"
+
+msgid "Community profile"
+msgstr "Komunitní profil"
+
+msgid "Community settings"
+msgstr "Nastavení komunity"
+
+msgid "Confirm Upgrade"
+msgstr "Potvrďte upgrade"
+
+msgid "Contact"
+msgstr "Kontakt"
+
+msgid "Contact information is incomplete. Please go to"
+msgstr "Kontaktní informace není kompletní. Prosím pokračujte na"
+
+msgid "Coordinates"
+msgstr "Souřadnice"
+
+msgid "Country code"
+msgstr "Kód země"
+
+msgid "Default routes"
+msgstr "Výchozí trasy"
+
+#, fuzzy
+msgid "Disable default content"
+msgstr "Zakázat výchozí obsah"
+
+msgid "Diversity is enabled for device"
+msgstr ""
+
+msgid "E-Mail"
+msgstr "E-Mail"
+
+msgid "ESSID"
+msgstr "ESSID"
+
+msgid "Edit index page"
+msgstr ""
+
+msgid "Enable IPv6"
+msgstr "Povolit IPv6"
+
+msgid "Enable a virtual access point (VAP) by default if possible."
+msgstr ""
+
+msgid "Error"
+msgstr "Chyba"
+
+msgid "Find your coordinates with OpenStreetMap"
+msgstr "Najděte své souřadnice pomocí OpenStreetMap"
+
+msgid "Freifunk"
+msgstr "Freifunk"
+
+msgid "Freifunk Overview"
+msgstr "Freifunk - Přehled"
+
+msgid "Freifunk Remote Update"
+msgstr "Freifunk - Vzdálené aktualizace"
+
+msgid "Gateway"
+msgstr "Brána"
+
+msgid "Go to"
+msgstr "Jít na"
+
+msgid "Good (2 < ETX < 4)"
+msgstr "Dobré (2 < ETX < 4)"
+
+msgid "Green"
+msgstr "Zelený"
+
+msgid "Hello and welcome in the network of"
+msgstr "Dobrý den, vítejte v síti"
+
+msgid "Hide OpenStreetMap"
+msgstr "Skrýt OpenStreetMap"
+
+msgid "Homepage"
+msgstr "Domovská stránka"
+
+msgid "Hostname"
+msgstr "Hostname"
+
+msgid "IPv6 Config"
+msgstr "Konfigurace IPv6"
+
+msgid "IPv6 Prefix"
+msgstr "IPv6 Prefix"
+
+msgid "IPv6 network in CIDR notation."
+msgstr ""
+
+msgid "If selected then the default content element is not shown."
+msgstr ""
+
+msgid "If you are interested in our project then contact the local community"
+msgstr "Pokud se zajímáte o náš projekt, kontaktujte místní komunitu"
+
+msgid "Index Page"
+msgstr ""
+
+msgid "Interface"
+msgstr "Rozhraní"
+
+msgid ""
+"Internet access depends on technical and organisational conditions and may "
+"or may not work for you."
+msgstr ""
+"Přístup k Internetu závisí na technických a organizačních podmínkách. Může "
+"(ale nemusí) vám fungovat."
+
+msgid "It is operated by"
+msgstr ""
+
+msgid "Keep configuration"
+msgstr "Uchovat nastavení"
+
+msgid "Latitude"
+msgstr "Zeměpisná šířka"
+
+msgid "Legend"
+msgstr "Legenda"
+
+msgid "Load"
+msgstr ""
+
+msgid "Local Time"
+msgstr "Místní čas"
+
+msgid "Location"
+msgstr "Umístění"
+
+msgid "Longitude"
+msgstr "Zeměpisná délka"
+
+msgid "Map"
+msgstr "Mapa"
+
+msgid "Map Error"
+msgstr "Chyba mapy"
+
+msgid "Memory"
+msgstr "Paměť"
+
+msgid "Mesh prefix"
+msgstr "Mesh prefix"
+
+msgid "Metric"
+msgstr "Metrika"
+
+msgid "Mode"
+msgstr "Režim"
+
+msgid "Network"
+msgstr "Síť"
+
+msgid "Network for client DHCP addresses"
+msgstr ""
+
+msgid "Nickname"
+msgstr "Přezdívka"
+
+msgid "No default routes known."
+msgstr "Nejsou známy výchozí cesty"
+
+msgid "Notice"
+msgstr "Upozornění"
+
+msgid "OLSR"
+msgstr "OLSR"
+
+msgid "Operator"
+msgstr "Operátor"
+
+msgid "Orange"
+msgstr "Oranžový"
+
+msgid "Overview"
+msgstr "Přehled"
+
+msgid "Package libiwinfo required!"
+msgstr "Balíček libiwinfo je vyžadován!"
+
+msgid "Phone"
+msgstr "Telefon"
+
+msgid "Please fill in your contact details below."
+msgstr "Prosím níže vyplňte kontaktní detaily."
+
+msgid "Please set your contact information"
+msgstr "Prosím nastavte si vaše kontaktní informace"
+
+msgid "Power"
+msgstr "Výkon"
+
+msgid "Processor"
+msgstr "Procesor"
+
+msgid "Profile"
+msgstr "Profil"
+
+msgid "Profile (Expert)"
+msgstr "Profil (Expert)"
+
+msgid "Realname"
+msgstr "Skutečné jméno"
+
+msgid "Red"
+msgstr "Červený"
+
+msgid "SSID"
+msgstr "SSID"
+
+msgid ""
+"Select your location with a mouse click on the map. The map will only show "
+"up if you are connected to the Internet."
+msgstr ""
+"Kliknutím na mapu vyberte vaše umístění. Mapa se zobrazí, pouze pokud jste "
+"připojen do sítě Internet."
+
+msgid "Show OpenStreetMap"
+msgstr "Zobrazit OpenStreetMap"
+
+msgid "Show on map"
+msgstr "Zobrazit na mapě"
+
+msgid "Signal"
+msgstr "Signál"
+
+msgid "Splash"
+msgstr ""
+
+msgid "Start Upgrade"
+msgstr "Spustit aktualizaci"
+
+msgid "Statistics"
+msgstr "Statistiky"
+
+msgid "Status"
+msgstr "Stav"
+
+msgid "Still usable (4 < ETX < 10)"
+msgstr "Stále použitelné (4 < ETX < 10)"
+
+msgid "System"
+msgstr "Systém"
+
+msgid "TX"
+msgstr "TX"
+
+msgid ""
+"The <em>libiwinfo</em> package is not installed. You must install this "
+"component for working wireless configuration!"
+msgstr ""
+"Balíček <em>libiwinfo</em> není nainstalován. Je třeba ho nainstalovat, aby "
+"byla funkční konfigurace bezdrátové sítě!"
+
+msgid ""
+"The OLSRd service is not configured to capture position data from the "
+"network.<br /> Please make sure that the nameservice plugin is properly "
+"configured and that the <em>latlon_file</em> option is enabled."
+msgstr ""
+
+msgid "The installed firmware is the most recent version."
+msgstr "Nainstalovaný firmware je aktuální."
+
+msgid ""
+"These are the basic settings for your local wireless community. These "
+"settings define the default values for the wizard and DO NOT affect the "
+"actual configuration of the router."
+msgstr ""
+
+msgid "These are the settings of your local community."
+msgstr ""
+
+msgid ""
+"These pages will assist you in setting up your router for Freifunk or "
+"similar wireless community networks."
+msgstr ""
+
+msgid "This is the access point"
+msgstr "To je přístupový bod (AP)"
+
+msgid "Update Settings"
+msgstr "Nastavení aktualizace"
+
+msgid "Update available!"
+msgstr "Aktualizace dostupná!"
+
+msgid "Uptime"
+msgstr "Doba provozu"
+
+msgid "VAP"
+msgstr "VAP"
+
+msgid "Verify downloaded images"
+msgstr ""
+
+msgid "Very good (ETX < 2)"
+msgstr "Velmi dobré (ETX < 2)"
+
+msgid ""
+"We are an initiative to establish a free, independent and open wireless mesh "
+"network."
+msgstr ""
+
+msgid "Wireless Overview"
+msgstr ""
+
+msgid "Yellow"
+msgstr "Žlutý"
+
+msgid ""
+"You can display additional content on the public index page by inserting "
+"valid XHTML in the form below.<br />Headlines should be enclosed between &lt;"
+"h2&gt; and &lt;/h2&gt;."
+msgstr ""
+
+msgid ""
+"You can find further information about the global Freifunk initiative at"
+msgstr ""
+
+msgid "You can manually edit the selected community profile here."
+msgstr ""
+
+msgid ""
+"You need to select a profile before you can edit it. To select a profile go "
+"to"
+msgstr ""
+
+msgid "and fill out all required fields."
+msgstr ""
+
+msgid "buffered"
+msgstr ""
+
+msgid "cached"
+msgstr ""
+
+msgid "e.g."
+msgstr "např."
+
+msgid "free"
+msgstr ""
+
+msgid "to disable it."
+msgstr ""
+
+msgid "used"
+msgstr ""
+
+msgid "wireless settings"
+msgstr "nastavení bezdrátové sítě"
diff --git a/modules/luci-mod-freifunk/po/de/freifunk.po b/modules/luci-mod-freifunk/po/de/freifunk.po
new file mode 100644
index 000000000..ff6e6bc67
--- /dev/null
+++ b/modules/luci-mod-freifunk/po/de/freifunk.po
@@ -0,0 +1,447 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2011-05-12 17:58+0200\n"
+"PO-Revision-Date: 2013-01-28 22:17+0200\n"
+"Last-Translator: DAC324 <gerd_roethig@web.de>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: de\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 2.0.6\n"
+
+msgid "BSSID"
+msgstr "BSSID"
+
+msgid "Bad (ETX > 10)"
+msgstr "Schlecht (ETX > 10)"
+
+msgid "Basic Settings"
+msgstr "Grundeinstellungen"
+
+msgid "Basic settings"
+msgstr "Grundeinstellungen"
+
+msgid "Basic settings are incomplete. Please go to"
+msgstr "Die Grundeinstellungen sind unvollständig. Bitte gehe zur Seite"
+
+msgid "Basic system settings"
+msgstr "Grundlegende Systemeinstellungen"
+
+msgid "Bitrate"
+msgstr "Bitrate"
+
+msgid "Channel"
+msgstr "Kanal"
+
+msgid "Check for new firmware versions and perform automatic updates."
+msgstr ""
+"Der Fernupdate-Mechanismus prüft nach neuen Firmware-Versionen und führt "
+"automatisierte Updates durch."
+
+msgid "Client network size"
+msgstr "Größe des DHCP-Netzes"
+
+msgid "Community"
+msgstr "Community"
+
+msgid "Community profile"
+msgstr "Community Profile"
+
+msgid "Community settings"
+msgstr "Community Einstellungen"
+
+msgid "Confirm Upgrade"
+msgstr "Updatevorgang starten"
+
+msgid "Contact"
+msgstr "Kontakt"
+
+msgid "Contact information is incomplete. Please go to"
+msgstr "Die Kontaktinformationen sind unvollständig. Bitte gehe zur Seite"
+
+msgid "Coordinates"
+msgstr "Geokoordinaten"
+
+msgid "Country code"
+msgstr "Ländercode"
+
+msgid "Default routes"
+msgstr "Standardrouten"
+
+msgid "Disable default content"
+msgstr "Standardtext deaktivieren"
+
+msgid "Diversity is enabled for device"
+msgstr "Diversity ist aktiv für das Interface"
+
+msgid "E-Mail"
+msgstr "E-Mail"
+
+msgid "ESSID"
+msgstr "ESSID"
+
+msgid "Edit index page"
+msgstr "Indexseite bearbeiten"
+
+msgid "Enable IPv6"
+msgstr "IPv6 aktivieren"
+
+msgid "Enable a virtual access point (VAP) by default if possible."
+msgstr ""
+
+msgid "Error"
+msgstr "Fehler"
+
+msgid "Find your coordinates with OpenStreetMap"
+msgstr "Geokoordinaten mit OpenStreetMap ermitteln"
+
+msgid "Freifunk"
+msgstr "Freifunk"
+
+msgid "Freifunk Overview"
+msgstr "Freifunk Übersicht"
+
+msgid "Freifunk Remote Update"
+msgstr "Freifunk Fernupdate"
+
+msgid "Gateway"
+msgstr "Gateway"
+
+msgid "Go to"
+msgstr "Gehe zu"
+
+msgid "Good (2 < ETX < 4)"
+msgstr "Gut (2 < ETX < 4)"
+
+msgid "Green"
+msgstr "Grün"
+
+msgid "Hello and welcome in the network of"
+msgstr "Hallo und willkommen im Netz von"
+
+msgid "Hide OpenStreetMap"
+msgstr "OpenStreetMap ausblenden"
+
+msgid "Homepage"
+msgstr "Homepage"
+
+msgid "Hostname"
+msgstr "Hostname"
+
+msgid "IPv6 Config"
+msgstr "IPv6 Konfiguration"
+
+msgid "IPv6 Prefix"
+msgstr "IPv6 Prefix"
+
+msgid "IPv6 network in CIDR notation."
+msgstr "IPv6 Subnetz in CIDR-Notation"
+
+msgid "If selected then the default content element is not shown."
+msgstr ""
+"Wird diese Option gewählt dann wird das standardmässige Inhaltselement nicht "
+"angezeigt."
+
+msgid "If you are interested in our project then contact the local community"
+msgstr ""
+"Hast du Interesse an diesem Projekt, dann wende dich an deine lokale "
+"Gemeinschaft"
+
+msgid "Index Page"
+msgstr "Index-Seite"
+
+msgid "Interface"
+msgstr "Schnittstelle"
+
+msgid ""
+"Internet access depends on technical and organisational conditions and may "
+"or may not work for you."
+msgstr ""
+"Der Internetzugang über das experimentelle Freifunknetz ist an technische "
+"und organisatorische Bedingungen geknüpft und deshalb möglicherweise nicht "
+"(immer) gewährleistet."
+
+msgid "It is operated by"
+msgstr "Er wird betrieben von "
+
+msgid "Keep configuration"
+msgstr "Konfigurationsdateien wiederherstellen"
+
+msgid "Latitude"
+msgstr "Breite"
+
+msgid "Legend"
+msgstr "Erklärung"
+
+msgid "Load"
+msgstr "Load"
+
+msgid "Local Time"
+msgstr "Lokale Zeit"
+
+msgid "Location"
+msgstr "Standort"
+
+msgid "Longitude"
+msgstr "Länge"
+
+msgid "Map"
+msgstr "Karte"
+
+msgid "Map Error"
+msgstr "Fehler beim Darstellen der Karte"
+
+msgid "Memory"
+msgstr "Hauptspeicher"
+
+msgid "Mesh prefix"
+msgstr "Prefix des Meshs"
+
+msgid "Metric"
+msgstr "Metrik"
+
+msgid "Mode"
+msgstr "Modus"
+
+msgid "Network"
+msgstr "Netzwerk"
+
+msgid "Network for client DHCP addresses"
+msgstr "Netzwerk aus dem IPs für Clients vergeben werden"
+
+msgid "Nickname"
+msgstr "Pseudonym"
+
+msgid "No default routes known."
+msgstr "Es sind keine Standardrouten bekannt."
+
+msgid "Notice"
+msgstr "Notiz"
+
+msgid "OLSR"
+msgstr "OLSR"
+
+msgid "Operator"
+msgstr "Betreiber"
+
+msgid "Orange"
+msgstr "Orange"
+
+msgid "Overview"
+msgstr "Übersicht"
+
+msgid "Package libiwinfo required!"
+msgstr "Das Paket libiwinfo wird benötigt!"
+
+msgid "Phone"
+msgstr "Telefon"
+
+msgid "Please fill in your contact details below."
+msgstr "Bitte gib hier deine Kontaktdaten an."
+
+msgid "Please set your contact information"
+msgstr "Bitte gib deine Kontaktinformationen ein"
+
+msgid "Power"
+msgstr "Power"
+
+msgid "Processor"
+msgstr "Prozessor"
+
+msgid "Profile"
+msgstr "Profil"
+
+msgid "Profile (Expert)"
+msgstr "Profil (Expertenmodus)"
+
+msgid "Realname"
+msgstr "Name"
+
+msgid "Red"
+msgstr "Rot"
+
+msgid "SSID"
+msgstr "SSID"
+
+msgid ""
+"Select your location with a mouse click on the map. The map will only show "
+"up if you are connected to the Internet."
+msgstr ""
+"Wähle hier deinen Standort durch einen Mausklick aus. Die Karte funktioniert "
+"nur, wenn bereits eine Verbindung zum Internet besteht."
+
+msgid "Show OpenStreetMap"
+msgstr "OpenStreetMap anzeigen"
+
+msgid "Show on map"
+msgstr "Karte öffnen"
+
+msgid "Signal"
+msgstr "Signal"
+
+msgid "Splash"
+msgstr "Splash"
+
+msgid "Start Upgrade"
+msgstr "Updatevorgang starten"
+
+msgid "Statistics"
+msgstr "Statistiken"
+
+msgid "Status"
+msgstr "Status"
+
+msgid "Still usable (4 < ETX < 10)"
+msgstr "Noch nutzbar (4 < ETX < 10)"
+
+msgid "System"
+msgstr "System"
+
+msgid "TX"
+msgstr "TX"
+
+msgid ""
+"The <em>libiwinfo</em> package is not installed. You must install this "
+"component for working wireless configuration!"
+msgstr ""
+"Das <em>libiwinfo</em>-Paket ist nicht installiert. Dieses Paket muss für "
+"eine funktionierende WLAN-Konfiguration vorhanden sein!"
+
+msgid ""
+"The OLSRd service is not configured to capture position data from the "
+"network.<br /> Please make sure that the nameservice plugin is properly "
+"configured and that the <em>latlon_file</em> option is enabled."
+msgstr ""
+"OLSRd ist nicht dafür konfiguriert worden Geoinformationen zu speichern.<br /"
+"> Bitte sicherstellen dass das OLSRd-Nameservice-Plugin geladen und richtig "
+"konfiguriert wurde (Option latlon_file)."
+
+msgid "The installed firmware is the most recent version."
+msgstr "Die installierte Firmware ist bereits die neueste Version."
+
+msgid ""
+"These are the basic settings for your local wireless community. These "
+"settings define the default values for the wizard and DO NOT affect the "
+"actual configuration of the router."
+msgstr ""
+"Dies hier sind die Grundeinstellungen für die Freifunk Community in deiner "
+"Nachbarschaft. Diese Einstellungen legen die Standardwerte für den ffwizard "
+"fest und beeinflussen die aktuelle Konfiguration des Routers NICHT."
+
+msgid "These are the settings of your local community."
+msgstr "Dies sind die Einstellungen für deine Freifunk Community."
+
+msgid ""
+"These pages will assist you in setting up your router for Freifunk or "
+"similar wireless community networks."
+msgstr ""
+"Diese Seiten helfen dabei, den Router für Freifunk oder ähnliche Wireless "
+"Community Netzwerke einzurichten."
+
+msgid "This is the access point"
+msgstr "Dies ist der Zugangspunkt "
+
+msgid "Update Settings"
+msgstr "Einstellungen zum Update"
+
+msgid "Update available!"
+msgstr "Update verfügbar!"
+
+msgid "Uptime"
+msgstr "Uptime"
+
+msgid "VAP"
+msgstr ""
+
+msgid "Verify downloaded images"
+msgstr "Heruntergeladene Images verifizieren"
+
+msgid "Very good (ETX < 2)"
+msgstr "Sehr gut (ETX < 2) "
+
+msgid ""
+"We are an initiative to establish a free, independent and open wireless mesh "
+"network."
+msgstr ""
+"Wir sind eine Initiative zur Schaffung eines freien, offenen und "
+"unabhängigen Funknetzwerks auf WLAN-Basis."
+
+msgid "Wireless Overview"
+msgstr "WLAN Übersicht"
+
+msgid "Yellow"
+msgstr "Gelb"
+
+msgid ""
+"You can display additional content on the public index page by inserting "
+"valid XHTML in the form below.<br />Headlines should be enclosed between &lt;"
+"h2&gt; and &lt;/h2&gt;."
+msgstr ""
+"Hier kann der Indexseite weiterer Inhalt hinzugefügt werden. Dazu muss "
+"gültiges XHTML verwendet werden.<br />Überschriften sollten zwischen den "
+"Tags &lt;h2&gt; und &lt;/h2&gt; eingeschlossen werden."
+
+msgid ""
+"You can find further information about the global Freifunk initiative at"
+msgstr "Weitere Informationen zur globalen Freifunkinitiative findest du unter"
+
+msgid "You can manually edit the selected community profile here."
+msgstr "Hier kann das ausgewählte Community-Profil bearbeitet werden."
+
+msgid ""
+"You need to select a profile before you can edit it. To select a profile go "
+"to"
+msgstr ""
+"Es muss ein Profil ausgewählt werden, bevor es editiert werden kann. Gehe "
+"dazu zur Seite"
+
+msgid "and fill out all required fields."
+msgstr "und fülle alle benötigten Felder aus."
+
+msgid "buffered"
+msgstr "gepuffert"
+
+msgid "cached"
+msgstr "gecacht"
+
+msgid "e.g."
+msgstr "z.B."
+
+msgid "free"
+msgstr "ungenutzt"
+
+msgid "to disable it."
+msgstr "um es auszuschalten."
+
+msgid "used"
+msgstr "benutzt"
+
+msgid "wireless settings"
+msgstr "Drahtloseinstellungen"
+
+#~ msgid ""
+#~ "No services can be shown, because olsrd is not running or the olsrd-"
+#~ "nameservice Plugin is not loaded."
+#~ msgstr ""
+#~ "Es kann keine Liste der Dienste angezeigt werden, da olsrd nicht läuft "
+#~ "oder das nameservice plugin nicht geladen oder konfiguriert wurde."
+
+#~ msgid "Services"
+#~ msgstr "Dienste"
+
+#~ msgid "Source"
+#~ msgstr "Quelle"
+
+#~ msgid ""
+#~ "The <em>libiwinfo-lua</em> package is not installed. You must install "
+#~ "this component for working wireless configuration!"
+#~ msgstr ""
+#~ "Das <em>libiwinfo-lua</em>-Paket ist nicht installiert. Das Paket muss "
+#~ "für eine funktionierende WLAN-Konfiguration installiert sein!"
+
+#~ msgid "Url"
+#~ msgstr "Adresse"
diff --git a/modules/luci-mod-freifunk/po/el/freifunk.po b/modules/luci-mod-freifunk/po/el/freifunk.po
new file mode 100644
index 000000000..95d58eae0
--- /dev/null
+++ b/modules/luci-mod-freifunk/po/el/freifunk.po
@@ -0,0 +1,407 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2009-05-28 02:08+0200\n"
+"PO-Revision-Date: 2012-03-18 15:11+0200\n"
+"Last-Translator: Vasilis <acinonyx@openwrt.gr>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: el\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 2.0.4\n"
+
+msgid "BSSID"
+msgstr "BSSID"
+
+msgid "Bad (ETX > 10)"
+msgstr ""
+
+msgid "Basic Settings"
+msgstr "Βασικές Ρυθμίσεις"
+
+msgid "Basic settings"
+msgstr "Βασικές ρυθμίσεις"
+
+msgid "Basic settings are incomplete. Please go to"
+msgstr ""
+
+msgid "Basic system settings"
+msgstr "Βασικές ρυθμίσεις συστήματος"
+
+msgid "Bitrate"
+msgstr ""
+
+msgid "Channel"
+msgstr "Κανάλι"
+
+msgid "Check for new firmware versions and perform automatic updates."
+msgstr ""
+
+msgid "Client network size"
+msgstr ""
+
+msgid "Community"
+msgstr "Κοινότητα"
+
+msgid "Community profile"
+msgstr ""
+
+msgid "Community settings"
+msgstr ""
+
+msgid "Confirm Upgrade"
+msgstr ""
+
+msgid "Contact"
+msgstr "Επικοινωνία"
+
+msgid "Contact information is incomplete. Please go to"
+msgstr ""
+
+msgid "Coordinates"
+msgstr "Συντεταγμένες"
+
+msgid "Country code"
+msgstr "Κωδικός xώρας"
+
+msgid "Default routes"
+msgstr ""
+
+msgid "Disable default content"
+msgstr ""
+
+msgid "Diversity is enabled for device"
+msgstr ""
+
+msgid "E-Mail"
+msgstr "Ηλ. Ταχυδρομείο"
+
+msgid "ESSID"
+msgstr "ESSID"
+
+msgid "Edit index page"
+msgstr ""
+
+msgid "Enable IPv6"
+msgstr ""
+
+msgid "Enable a virtual access point (VAP) by default if possible."
+msgstr ""
+
+msgid "Error"
+msgstr "Σφάλμα"
+
+msgid "Find your coordinates with OpenStreetMap"
+msgstr ""
+
+msgid "Freifunk"
+msgstr ""
+
+msgid "Freifunk Overview"
+msgstr ""
+
+msgid "Freifunk Remote Update"
+msgstr ""
+
+msgid "Gateway"
+msgstr "Πύλη"
+
+msgid "Go to"
+msgstr ""
+
+msgid "Good (2 < ETX < 4)"
+msgstr ""
+
+msgid "Green"
+msgstr ""
+
+msgid "Hello and welcome in the network of"
+msgstr "Γεια σας και καλώς ήλθατε στο δίκτυο"
+
+msgid "Hide OpenStreetMap"
+msgstr ""
+
+msgid "Homepage"
+msgstr ""
+
+msgid "Hostname"
+msgstr ""
+
+msgid "IPv6 Config"
+msgstr ""
+
+msgid "IPv6 Prefix"
+msgstr ""
+
+msgid "IPv6 network in CIDR notation."
+msgstr ""
+
+msgid "If selected then the default content element is not shown."
+msgstr ""
+
+msgid "If you are interested in our project then contact the local community"
+msgstr "Αν ενδιαφέρεστε για το έργο μας, επικοινωνήστε με την τοπική κοινότητα"
+
+msgid "Index Page"
+msgstr ""
+
+msgid "Interface"
+msgstr "Διεπαφή"
+
+msgid ""
+"Internet access depends on technical and organisational conditions and may "
+"or may not work for you."
+msgstr ""
+"Η πρόσβαση στο διαδίκτυο εξαρτάται από τις τεχνικές και τις οργανωτικές "
+"συνθήκες και μπορεί να λειτουργεί ή όχι για σας."
+
+msgid "It is operated by"
+msgstr "Διαχειρίζεται από"
+
+msgid "Keep configuration"
+msgstr ""
+
+msgid "Latitude"
+msgstr "Γεωγραφικό πλάτος"
+
+msgid "Legend"
+msgstr ""
+
+msgid "Load"
+msgstr ""
+
+msgid "Local Time"
+msgstr "Τοπική Ώρα"
+
+msgid "Location"
+msgstr "Τοποθεσία"
+
+msgid "Longitude"
+msgstr "Γεωγραφικό μήκος"
+
+msgid "Map"
+msgstr "Χάρτης"
+
+msgid "Map Error"
+msgstr ""
+
+msgid "Memory"
+msgstr "Μνήμη"
+
+msgid "Mesh prefix"
+msgstr ""
+
+msgid "Metric"
+msgstr ""
+
+msgid "Mode"
+msgstr ""
+
+msgid "Network"
+msgstr "Δίκτυο"
+
+msgid "Network for client DHCP addresses"
+msgstr ""
+
+msgid "Nickname"
+msgstr "Ψευδώνυμο"
+
+msgid "No default routes known."
+msgstr ""
+
+msgid "Notice"
+msgstr "Σημείωση"
+
+msgid "OLSR"
+msgstr "OLSR"
+
+msgid "Operator"
+msgstr ""
+
+msgid "Orange"
+msgstr ""
+
+msgid "Overview"
+msgstr ""
+
+msgid "Package libiwinfo required!"
+msgstr ""
+
+msgid "Phone"
+msgstr "Τηλέφωνο"
+
+msgid "Please fill in your contact details below."
+msgstr ""
+
+msgid "Please set your contact information"
+msgstr ""
+
+msgid "Power"
+msgstr ""
+
+msgid "Processor"
+msgstr "Επεξεργαστής"
+
+msgid "Profile"
+msgstr ""
+
+msgid "Profile (Expert)"
+msgstr ""
+
+msgid "Realname"
+msgstr "Ονοματεπώνυμο"
+
+msgid "Red"
+msgstr ""
+
+msgid "SSID"
+msgstr "SSID"
+
+msgid ""
+"Select your location with a mouse click on the map. The map will only show "
+"up if you are connected to the Internet."
+msgstr ""
+
+msgid "Show OpenStreetMap"
+msgstr ""
+
+msgid "Show on map"
+msgstr ""
+
+msgid "Signal"
+msgstr "Σήμα"
+
+msgid "Splash"
+msgstr ""
+
+msgid "Start Upgrade"
+msgstr ""
+
+msgid "Statistics"
+msgstr "Στατιστικά"
+
+msgid "Status"
+msgstr ""
+
+msgid "Still usable (4 < ETX < 10)"
+msgstr ""
+
+msgid "System"
+msgstr "Σύστημα"
+
+msgid "TX"
+msgstr ""
+
+msgid ""
+"The <em>libiwinfo</em> package is not installed. You must install this "
+"component for working wireless configuration!"
+msgstr ""
+
+msgid ""
+"The OLSRd service is not configured to capture position data from the "
+"network.<br /> Please make sure that the nameservice plugin is properly "
+"configured and that the <em>latlon_file</em> option is enabled."
+msgstr ""
+
+msgid "The installed firmware is the most recent version."
+msgstr ""
+
+msgid ""
+"These are the basic settings for your local wireless community. These "
+"settings define the default values for the wizard and DO NOT affect the "
+"actual configuration of the router."
+msgstr ""
+
+msgid "These are the settings of your local community."
+msgstr "Αυτές είναι οι ρυθμίσεις της τοπικής σας κοινότητας."
+
+msgid ""
+"These pages will assist you in setting up your router for Freifunk or "
+"similar wireless community networks."
+msgstr ""
+"Αυτές οι σελίδες θα σας βοηθήσουν να ρυθμίσετε το δρομολογητή σας για το "
+"Freifunk ή παρόμοια ασύρματα κοινοτικά δίκτυα."
+
+msgid "This is the access point"
+msgstr "Αυτό είναι το access point"
+
+msgid "Update Settings"
+msgstr ""
+
+msgid "Update available!"
+msgstr ""
+
+msgid "Uptime"
+msgstr ""
+
+msgid "VAP"
+msgstr ""
+
+msgid "Verify downloaded images"
+msgstr ""
+
+msgid "Very good (ETX < 2)"
+msgstr ""
+
+msgid ""
+"We are an initiative to establish a free, independent and open wireless mesh "
+"network."
+msgstr ""
+"Είμαστε μία πρωτοβουλία για την εδραίωση ενός ελεύθερου, ανεξάρτητου και "
+"ανοιχτού ασύρματου mesh δικτύου."
+
+msgid "Wireless Overview"
+msgstr ""
+
+msgid "Yellow"
+msgstr ""
+
+msgid ""
+"You can display additional content on the public index page by inserting "
+"valid XHTML in the form below.<br />Headlines should be enclosed between &lt;"
+"h2&gt; and &lt;/h2&gt;."
+msgstr ""
+
+msgid ""
+"You can find further information about the global Freifunk initiative at"
+msgstr ""
+"Μπορείτε να βρείτε περισσότερες πληροφορίες για την παγκόσμια πρωτοβουλία "
+"Freifunk στο"
+
+msgid "You can manually edit the selected community profile here."
+msgstr ""
+
+msgid ""
+"You need to select a profile before you can edit it. To select a profile go "
+"to"
+msgstr ""
+
+msgid "and fill out all required fields."
+msgstr ""
+
+msgid "buffered"
+msgstr ""
+
+msgid "cached"
+msgstr ""
+
+msgid "e.g."
+msgstr "π.χ."
+
+msgid "free"
+msgstr ""
+
+msgid "to disable it."
+msgstr ""
+
+msgid "used"
+msgstr ""
+
+msgid "wireless settings"
+msgstr ""
+
+#~ msgid "Source"
+#~ msgstr "Πηγή"
diff --git a/modules/luci-mod-freifunk/po/en/freifunk.po b/modules/luci-mod-freifunk/po/en/freifunk.po
new file mode 100644
index 000000000..1a0b425e9
--- /dev/null
+++ b/modules/luci-mod-freifunk/po/en/freifunk.po
@@ -0,0 +1,400 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2009-06-30 06:42+0200\n"
+"PO-Revision-Date: 2009-07-06 23:21+0200\n"
+"Last-Translator: Jo-Philipp Wich <xm@subsignal.org>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Pootle 1.1.0\n"
+
+msgid "BSSID"
+msgstr ""
+
+msgid "Bad (ETX > 10)"
+msgstr ""
+
+msgid "Basic Settings"
+msgstr ""
+
+msgid "Basic settings"
+msgstr ""
+
+msgid "Basic settings are incomplete. Please go to"
+msgstr ""
+
+msgid "Basic system settings"
+msgstr ""
+
+msgid "Bitrate"
+msgstr ""
+
+msgid "Channel"
+msgstr ""
+
+msgid "Check for new firmware versions and perform automatic updates."
+msgstr "Check for new firmware versions and perform automatic updates."
+
+msgid "Client network size"
+msgstr ""
+
+msgid "Community"
+msgstr ""
+
+msgid "Community profile"
+msgstr ""
+
+msgid "Community settings"
+msgstr ""
+
+msgid "Confirm Upgrade"
+msgstr ""
+
+msgid "Contact"
+msgstr ""
+
+msgid "Contact information is incomplete. Please go to"
+msgstr ""
+
+msgid "Coordinates"
+msgstr "Coordinates"
+
+msgid "Country code"
+msgstr ""
+
+msgid "Default routes"
+msgstr ""
+
+msgid "Disable default content"
+msgstr ""
+
+msgid "Diversity is enabled for device"
+msgstr ""
+
+msgid "E-Mail"
+msgstr "E-Mail"
+
+msgid "ESSID"
+msgstr ""
+
+msgid "Edit index page"
+msgstr ""
+
+msgid "Enable IPv6"
+msgstr ""
+
+msgid "Enable a virtual access point (VAP) by default if possible."
+msgstr ""
+
+msgid "Error"
+msgstr ""
+
+msgid "Find your coordinates with OpenStreetMap"
+msgstr ""
+
+msgid "Freifunk"
+msgstr ""
+
+msgid "Freifunk Overview"
+msgstr ""
+
+msgid "Freifunk Remote Update"
+msgstr "Freifunk Remote Update"
+
+msgid "Gateway"
+msgstr ""
+
+msgid "Go to"
+msgstr ""
+
+msgid "Good (2 < ETX < 4)"
+msgstr ""
+
+msgid "Green"
+msgstr ""
+
+msgid "Hello and welcome in the network of"
+msgstr "Hello and welcome in the network of"
+
+msgid "Hide OpenStreetMap"
+msgstr ""
+
+msgid "Homepage"
+msgstr ""
+
+msgid "Hostname"
+msgstr "Hostname"
+
+msgid "IPv6 Config"
+msgstr ""
+
+msgid "IPv6 Prefix"
+msgstr ""
+
+msgid "IPv6 network in CIDR notation."
+msgstr ""
+
+msgid "If selected then the default content element is not shown."
+msgstr ""
+
+msgid "If you are interested in our project then contact the local community"
+msgstr "If you are interested in our project then contact the local community"
+
+msgid "Index Page"
+msgstr ""
+
+msgid "Interface"
+msgstr ""
+
+msgid ""
+"Internet access depends on technical and organisational conditions and may "
+"or may not work for you."
+msgstr ""
+"Internet access depends on technical and organisational conditions and may "
+"or may not work for you."
+
+msgid "It is operated by"
+msgstr "It is operated by"
+
+msgid "Keep configuration"
+msgstr "Keep configuration"
+
+msgid "Latitude"
+msgstr ""
+
+msgid "Legend"
+msgstr ""
+
+msgid "Load"
+msgstr ""
+
+msgid "Local Time"
+msgstr ""
+
+msgid "Location"
+msgstr "Location"
+
+msgid "Longitude"
+msgstr ""
+
+msgid "Map"
+msgstr ""
+
+msgid "Map Error"
+msgstr ""
+
+msgid "Memory"
+msgstr "Memory"
+
+msgid "Mesh prefix"
+msgstr ""
+
+msgid "Metric"
+msgstr ""
+
+msgid "Mode"
+msgstr ""
+
+msgid "Network"
+msgstr ""
+
+msgid "Network for client DHCP addresses"
+msgstr ""
+
+msgid "Nickname"
+msgstr "Nickname"
+
+msgid "No default routes known."
+msgstr ""
+
+msgid "Notice"
+msgstr "Notice"
+
+msgid "OLSR"
+msgstr ""
+
+msgid "Operator"
+msgstr ""
+
+msgid "Orange"
+msgstr ""
+
+msgid "Overview"
+msgstr ""
+
+msgid "Package libiwinfo required!"
+msgstr ""
+
+msgid "Phone"
+msgstr "Phone"
+
+msgid "Please fill in your contact details below."
+msgstr ""
+
+msgid "Please set your contact information"
+msgstr ""
+
+msgid "Power"
+msgstr ""
+
+msgid "Processor"
+msgstr ""
+
+msgid "Profile"
+msgstr ""
+
+msgid "Profile (Expert)"
+msgstr ""
+
+msgid "Realname"
+msgstr "Realname"
+
+msgid "Red"
+msgstr ""
+
+msgid "SSID"
+msgstr ""
+
+msgid ""
+"Select your location with a mouse click on the map. The map will only show "
+"up if you are connected to the Internet."
+msgstr ""
+
+msgid "Show OpenStreetMap"
+msgstr ""
+
+msgid "Show on map"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "Splash"
+msgstr ""
+
+msgid "Start Upgrade"
+msgstr "Start Upgrade"
+
+msgid "Statistics"
+msgstr ""
+
+msgid "Status"
+msgstr ""
+
+msgid "Still usable (4 < ETX < 10)"
+msgstr ""
+
+msgid "System"
+msgstr ""
+
+msgid "TX"
+msgstr ""
+
+msgid ""
+"The <em>libiwinfo</em> package is not installed. You must install this "
+"component for working wireless configuration!"
+msgstr ""
+
+msgid ""
+"The OLSRd service is not configured to capture position data from the "
+"network.<br /> Please make sure that the nameservice plugin is properly "
+"configured and that the <em>latlon_file</em> option is enabled."
+msgstr ""
+
+msgid "The installed firmware is the most recent version."
+msgstr "The installed firmware is the most recent version."
+
+msgid ""
+"These are the basic settings for your local wireless community. These "
+"settings define the default values for the wizard and DO NOT affect the "
+"actual configuration of the router."
+msgstr ""
+
+msgid "These are the settings of your local community."
+msgstr ""
+
+msgid ""
+"These pages will assist you in setting up your router for Freifunk or "
+"similar wireless community networks."
+msgstr ""
+
+msgid "This is the access point"
+msgstr "This is the access point"
+
+msgid "Update Settings"
+msgstr "Update Settings"
+
+msgid "Update available!"
+msgstr "Update available!"
+
+msgid "Uptime"
+msgstr ""
+
+msgid "VAP"
+msgstr ""
+
+msgid "Verify downloaded images"
+msgstr "Verify downloaded images"
+
+msgid "Very good (ETX < 2)"
+msgstr ""
+
+msgid ""
+"We are an initiative to establish a free, independent and open wireless mesh "
+"network."
+msgstr ""
+"We are an initiative to establish a free, independent and open wireless mesh "
+"network."
+
+msgid "Wireless Overview"
+msgstr ""
+
+msgid "Yellow"
+msgstr ""
+
+msgid ""
+"You can display additional content on the public index page by inserting "
+"valid XHTML in the form below.<br />Headlines should be enclosed between &lt;"
+"h2&gt; and &lt;/h2&gt;."
+msgstr ""
+
+msgid ""
+"You can find further information about the global Freifunk initiative at"
+msgstr ""
+"You can find further information about the global Freifunk initiative at"
+
+msgid "You can manually edit the selected community profile here."
+msgstr ""
+
+msgid ""
+"You need to select a profile before you can edit it. To select a profile go "
+"to"
+msgstr ""
+
+msgid "and fill out all required fields."
+msgstr ""
+
+msgid "buffered"
+msgstr ""
+
+msgid "cached"
+msgstr ""
+
+msgid "e.g."
+msgstr ""
+
+msgid "free"
+msgstr ""
+
+msgid "to disable it."
+msgstr ""
+
+msgid "used"
+msgstr ""
+
+msgid "wireless settings"
+msgstr ""
diff --git a/modules/luci-mod-freifunk/po/es/freifunk.po b/modules/luci-mod-freifunk/po/es/freifunk.po
new file mode 100644
index 000000000..7242268d9
--- /dev/null
+++ b/modules/luci-mod-freifunk/po/es/freifunk.po
@@ -0,0 +1,417 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2009-06-10 03:41+0200\n"
+"PO-Revision-Date: 2014-06-15 13:16+0200\n"
+"Last-Translator: José Vicente <josevteg@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: es\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 2.0.6\n"
+
+msgid "BSSID"
+msgstr "BSSID"
+
+msgid "Bad (ETX > 10)"
+msgstr "Malo (ETX > 10)"
+
+msgid "Basic Settings"
+msgstr "Configuración básica"
+
+msgid "Basic settings"
+msgstr "Configuración básica"
+
+msgid "Basic settings are incomplete. Please go to"
+msgstr "Configuración básica incompleta. Por favor, vaya a"
+
+msgid "Basic system settings"
+msgstr "Configuración básica del sistema"
+
+msgid "Bitrate"
+msgstr "Bitrate"
+
+msgid "Channel"
+msgstr "Canal"
+
+msgid "Check for new firmware versions and perform automatic updates."
+msgstr ""
+"Comprobar nuevas versiones de firmware y realizar actualizaciones "
+"automáticas."
+
+msgid "Client network size"
+msgstr "Tamaño de la red cliente"
+
+msgid "Community"
+msgstr "Comunidad"
+
+msgid "Community profile"
+msgstr "Perfil de la comunidad"
+
+msgid "Community settings"
+msgstr "Configuración de la comunidad"
+
+msgid "Confirm Upgrade"
+msgstr "Confirmar actualización"
+
+msgid "Contact"
+msgstr "Contacto"
+
+msgid "Contact information is incomplete. Please go to"
+msgstr "La información de contacto no está completa. Por favor, vaya a"
+
+msgid "Coordinates"
+msgstr "Coordenadas"
+
+msgid "Country code"
+msgstr "Código de país"
+
+msgid "Default routes"
+msgstr "Rutas por defecto"
+
+msgid "Disable default content"
+msgstr "Desactive contenido por defecto"
+
+msgid "Diversity is enabled for device"
+msgstr "Diversidad activar para el dispositivo"
+
+msgid "E-Mail"
+msgstr "E-Mail"
+
+msgid "ESSID"
+msgstr "ESSID"
+
+msgid "Edit index page"
+msgstr "Editar índice"
+
+msgid "Enable IPv6"
+msgstr "Activar IPv6"
+
+msgid "Enable a virtual access point (VAP) by default if possible."
+msgstr "Activa un punto virtual de acceso (VAP) por dehecto si es posible."
+
+msgid "Error"
+msgstr "Error"
+
+msgid "Find your coordinates with OpenStreetMap"
+msgstr "Busca sus coordenadas con OpenStreetMap"
+
+msgid "Freifunk"
+msgstr "Freifunk"
+
+msgid "Freifunk Overview"
+msgstr "Resumen de Freifunk"
+
+msgid "Freifunk Remote Update"
+msgstr "Actualización remota de Freifunk"
+
+msgid "Gateway"
+msgstr "Pasarela"
+
+msgid "Go to"
+msgstr "Ir a"
+
+msgid "Good (2 < ETX < 4)"
+msgstr "Bueno (2 < ETX < 4)"
+
+msgid "Green"
+msgstr "Verde"
+
+msgid "Hello and welcome in the network of"
+msgstr "Hola y bienvenido a la red de"
+
+msgid "Hide OpenStreetMap"
+msgstr "Ocultar OpenStreetMap"
+
+msgid "Homepage"
+msgstr "Página inicial"
+
+msgid "Hostname"
+msgstr "Nombre de máquina"
+
+msgid "IPv6 Config"
+msgstr "Configuración de IPv6"
+
+msgid "IPv6 Prefix"
+msgstr "Prefijo IPv6"
+
+msgid "IPv6 network in CIDR notation."
+msgstr "Red IPv6 en notación CIDR."
+
+msgid "If selected then the default content element is not shown."
+msgstr "No mostrar el contenido por defecto."
+
+msgid "If you are interested in our project then contact the local community"
+msgstr ""
+"Si se encuentra interesado en nuestro proyecto contacte, por favor, con su "
+"comunidad local mas cercana"
+
+msgid "Index Page"
+msgstr "Índice"
+
+msgid "Interface"
+msgstr "Interfaz"
+
+msgid ""
+"Internet access depends on technical and organisational conditions and may "
+"or may not work for you."
+msgstr ""
+"El acceso a Internet depende de condiciones tanto técnicas como "
+"organizativas por lo que puede no funcionarle."
+
+msgid "It is operated by"
+msgstr "Administrado por"
+
+msgid "Keep configuration"
+msgstr "Mantener configuración"
+
+msgid "Latitude"
+msgstr "Latitud"
+
+msgid "Legend"
+msgstr "Leyenda"
+
+msgid "Load"
+msgstr "Carga"
+
+msgid "Local Time"
+msgstr "Hora local"
+
+msgid "Location"
+msgstr "Lugar"
+
+msgid "Longitude"
+msgstr "Longitud"
+
+msgid "Map"
+msgstr "Mapa"
+
+msgid "Map Error"
+msgstr "Error en el map"
+
+msgid "Memory"
+msgstr "Memoria"
+
+msgid "Mesh prefix"
+msgstr "Prefijo mesh"
+
+msgid "Metric"
+msgstr "Métrica"
+
+msgid "Mode"
+msgstr "Modo"
+
+msgid "Network"
+msgstr "Red"
+
+msgid "Network for client DHCP addresses"
+msgstr "Red para las direcciones DHCP de los clientes"
+
+msgid "Nickname"
+msgstr "Apodo"
+
+msgid "No default routes known."
+msgstr "Sin rutas por defecto."
+
+msgid "Notice"
+msgstr "Aviso"
+
+msgid "OLSR"
+msgstr "OLSR"
+
+msgid "Operator"
+msgstr "Administrador"
+
+msgid "Orange"
+msgstr "Naranja"
+
+msgid "Overview"
+msgstr "Repaso"
+
+msgid "Package libiwinfo required!"
+msgstr "¡Es necesario el paquete libiwinfo!"
+
+msgid "Phone"
+msgstr "Teléfono"
+
+msgid "Please fill in your contact details below."
+msgstr "Por favor, introduzca sus datos de contacto."
+
+msgid "Please set your contact information"
+msgstr "Por favor, configure su información de contacto"
+
+msgid "Power"
+msgstr "Potencia"
+
+msgid "Processor"
+msgstr "Procesador"
+
+msgid "Profile"
+msgstr "Perfil"
+
+msgid "Profile (Expert)"
+msgstr "Perfil (experto)"
+
+msgid "Realname"
+msgstr "Nombre real"
+
+msgid "Red"
+msgstr "Rojo"
+
+msgid "SSID"
+msgstr "SSID"
+
+msgid ""
+"Select your location with a mouse click on the map. The map will only show "
+"up if you are connected to the Internet."
+msgstr ""
+"Elija su posición pulsando el ratón sobre el mapa. El mapa solo aparecerá si "
+"está conectado a internet."
+
+msgid "Show OpenStreetMap"
+msgstr "Mostrar OpenStreetMap"
+
+msgid "Show on map"
+msgstr "Mostrar en el mapa"
+
+msgid "Signal"
+msgstr "Señal"
+
+msgid "Splash"
+msgstr "Presentación"
+
+msgid "Start Upgrade"
+msgstr "Iniciar actualización"
+
+msgid "Statistics"
+msgstr "Estadísticas"
+
+msgid "Status"
+msgstr "Estado"
+
+msgid "Still usable (4 < ETX < 10)"
+msgstr "Aún utilizable (4 < ETX < 10)"
+
+msgid "System"
+msgstr "Sistema"
+
+msgid "TX"
+msgstr "TX"
+
+msgid ""
+"The <em>libiwinfo</em> package is not installed. You must install this "
+"component for working wireless configuration!"
+msgstr ""
+"El paquete <em>libiwinfo</em> no está instalado. ¡Debe instalarlo para que "
+"funcione la red inalámbrica!"
+
+msgid ""
+"The OLSRd service is not configured to capture position data from the "
+"network.<br /> Please make sure that the nameservice plugin is properly "
+"configured and that the <em>latlon_file</em> option is enabled."
+msgstr ""
+"El servicio OLSRd no está configurado para tomar los datos de posición desde "
+"la red.<br />Asegúrese de que el plugin \"nameservice\" está bien "
+"configurado y que la opción <em>latlon_file</em> está marcada."
+
+msgid "The installed firmware is the most recent version."
+msgstr "El firmare instalado está en la versión más reciente."
+
+msgid ""
+"These are the basic settings for your local wireless community. These "
+"settings define the default values for the wizard and DO NOT affect the "
+"actual configuration of the router."
+msgstr ""
+"Configuración básica de su comunidad inalámbrica. Aquí puede definir los "
+"valores por defecto para el asistente SIN afectar a la configuración del "
+"router."
+
+msgid "These are the settings of your local community."
+msgstr "Configuración de su comunidad local."
+
+msgid ""
+"These pages will assist you in setting up your router for Freifunk or "
+"similar wireless community networks."
+msgstr ""
+"Configuración de su router para Freifunk o redes comunitarias similares."
+
+msgid "This is the access point"
+msgstr "Este es el punto de acceso"
+
+msgid "Update Settings"
+msgstr "Actualizar configuración"
+
+msgid "Update available!"
+msgstr "¡Actualización disponible!"
+
+msgid "Uptime"
+msgstr "Tiempo activo"
+
+msgid "VAP"
+msgstr "VAP"
+
+msgid "Verify downloaded images"
+msgstr "Verificar las descargas"
+
+msgid "Very good (ETX < 2)"
+msgstr "Muy bueno (ETX < 2)"
+
+msgid ""
+"We are an initiative to establish a free, independent and open wireless mesh "
+"network."
+msgstr ""
+"Somos una iniciativa que pretende crear una red libre, independiente y "
+"abierta utilizando una red mesh inalámbrica."
+
+msgid "Wireless Overview"
+msgstr "Resumen de red inalámbrica"
+
+msgid "Yellow"
+msgstr "Amarillo"
+
+msgid ""
+"You can display additional content on the public index page by inserting "
+"valid XHTML in the form below.<br />Headlines should be enclosed between &lt;"
+"h2&gt; and &lt;/h2&gt;."
+msgstr ""
+"Puede mostrar más contenido en el índice público poniendo XHTML válido en "
+"este formulario.<br />Las cabeceras deben ir entre &lt;h2&gt; y &lt;/h2&gt;."
+
+msgid ""
+"You can find further information about the global Freifunk initiative at"
+msgstr "Puede obtener información acerca de la iniciativa global Freifunk en"
+
+msgid "You can manually edit the selected community profile here."
+msgstr "Edite el perfil comunitario local."
+
+msgid ""
+"You need to select a profile before you can edit it. To select a profile go "
+"to"
+msgstr "Elija un perfil para editarlo. Para elegir el perfil vaya a"
+
+msgid "and fill out all required fields."
+msgstr "y rellene los campos requeridos."
+
+msgid "buffered"
+msgstr "en búfer"
+
+msgid "cached"
+msgstr "en caché"
+
+msgid "e.g."
+msgstr "ej."
+
+msgid "free"
+msgstr "libre"
+
+msgid "to disable it."
+msgstr "para desactivarlo."
+
+msgid "used"
+msgstr "usado"
+
+msgid "wireless settings"
+msgstr "configuración inalámbrica"
diff --git a/modules/luci-mod-freifunk/po/fr/freifunk.po b/modules/luci-mod-freifunk/po/fr/freifunk.po
new file mode 100644
index 000000000..028a2ce2b
--- /dev/null
+++ b/modules/luci-mod-freifunk/po/fr/freifunk.po
@@ -0,0 +1,395 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2009-05-19 19:36+0200\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Translate Toolkit 1.1.1\n"
+
+msgid "BSSID"
+msgstr ""
+
+msgid "Bad (ETX > 10)"
+msgstr ""
+
+msgid "Basic Settings"
+msgstr ""
+
+msgid "Basic settings"
+msgstr ""
+
+msgid "Basic settings are incomplete. Please go to"
+msgstr ""
+
+msgid "Basic system settings"
+msgstr ""
+
+msgid "Bitrate"
+msgstr ""
+
+msgid "Channel"
+msgstr ""
+
+msgid "Check for new firmware versions and perform automatic updates."
+msgstr ""
+
+msgid "Client network size"
+msgstr ""
+
+msgid "Community"
+msgstr ""
+
+msgid "Community profile"
+msgstr ""
+
+msgid "Community settings"
+msgstr ""
+
+msgid "Confirm Upgrade"
+msgstr ""
+
+msgid "Contact"
+msgstr ""
+
+msgid "Contact information is incomplete. Please go to"
+msgstr ""
+
+msgid "Coordinates"
+msgstr ""
+
+msgid "Country code"
+msgstr ""
+
+msgid "Default routes"
+msgstr ""
+
+msgid "Disable default content"
+msgstr ""
+
+msgid "Diversity is enabled for device"
+msgstr ""
+
+msgid "E-Mail"
+msgstr ""
+
+msgid "ESSID"
+msgstr ""
+
+msgid "Edit index page"
+msgstr ""
+
+msgid "Enable IPv6"
+msgstr ""
+
+msgid "Enable a virtual access point (VAP) by default if possible."
+msgstr ""
+
+msgid "Error"
+msgstr ""
+
+msgid "Find your coordinates with OpenStreetMap"
+msgstr ""
+
+msgid "Freifunk"
+msgstr ""
+
+msgid "Freifunk Overview"
+msgstr ""
+
+msgid "Freifunk Remote Update"
+msgstr ""
+
+msgid "Gateway"
+msgstr ""
+
+msgid "Go to"
+msgstr ""
+
+msgid "Good (2 < ETX < 4)"
+msgstr ""
+
+msgid "Green"
+msgstr ""
+
+msgid "Hello and welcome in the network of"
+msgstr ""
+
+msgid "Hide OpenStreetMap"
+msgstr ""
+
+msgid "Homepage"
+msgstr ""
+
+msgid "Hostname"
+msgstr ""
+
+msgid "IPv6 Config"
+msgstr ""
+
+msgid "IPv6 Prefix"
+msgstr ""
+
+msgid "IPv6 network in CIDR notation."
+msgstr ""
+
+msgid "If selected then the default content element is not shown."
+msgstr ""
+
+msgid "If you are interested in our project then contact the local community"
+msgstr ""
+
+msgid "Index Page"
+msgstr ""
+
+msgid "Interface"
+msgstr ""
+
+msgid ""
+"Internet access depends on technical and organisational conditions and may "
+"or may not work for you."
+msgstr ""
+
+msgid "It is operated by"
+msgstr ""
+
+msgid "Keep configuration"
+msgstr ""
+
+msgid "Latitude"
+msgstr ""
+
+msgid "Legend"
+msgstr ""
+
+msgid "Load"
+msgstr ""
+
+msgid "Local Time"
+msgstr ""
+
+msgid "Location"
+msgstr ""
+
+msgid "Longitude"
+msgstr ""
+
+msgid "Map"
+msgstr ""
+
+msgid "Map Error"
+msgstr ""
+
+msgid "Memory"
+msgstr ""
+
+msgid "Mesh prefix"
+msgstr ""
+
+msgid "Metric"
+msgstr ""
+
+msgid "Mode"
+msgstr ""
+
+msgid "Network"
+msgstr ""
+
+msgid "Network for client DHCP addresses"
+msgstr ""
+
+msgid "Nickname"
+msgstr ""
+
+msgid "No default routes known."
+msgstr ""
+
+msgid "Notice"
+msgstr ""
+
+msgid "OLSR"
+msgstr ""
+
+msgid "Operator"
+msgstr ""
+
+msgid "Orange"
+msgstr ""
+
+msgid "Overview"
+msgstr ""
+
+msgid "Package libiwinfo required!"
+msgstr ""
+
+msgid "Phone"
+msgstr ""
+
+msgid "Please fill in your contact details below."
+msgstr ""
+
+msgid "Please set your contact information"
+msgstr ""
+
+msgid "Power"
+msgstr ""
+
+msgid "Processor"
+msgstr ""
+
+msgid "Profile"
+msgstr ""
+
+msgid "Profile (Expert)"
+msgstr ""
+
+msgid "Realname"
+msgstr ""
+
+msgid "Red"
+msgstr ""
+
+msgid "SSID"
+msgstr ""
+
+msgid ""
+"Select your location with a mouse click on the map. The map will only show "
+"up if you are connected to the Internet."
+msgstr ""
+
+msgid "Show OpenStreetMap"
+msgstr ""
+
+msgid "Show on map"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "Splash"
+msgstr ""
+
+msgid "Start Upgrade"
+msgstr ""
+
+msgid "Statistics"
+msgstr ""
+
+msgid "Status"
+msgstr ""
+
+msgid "Still usable (4 < ETX < 10)"
+msgstr ""
+
+msgid "System"
+msgstr ""
+
+msgid "TX"
+msgstr ""
+
+msgid ""
+"The <em>libiwinfo</em> package is not installed. You must install this "
+"component for working wireless configuration!"
+msgstr ""
+
+msgid ""
+"The OLSRd service is not configured to capture position data from the "
+"network.<br /> Please make sure that the nameservice plugin is properly "
+"configured and that the <em>latlon_file</em> option is enabled."
+msgstr ""
+
+msgid "The installed firmware is the most recent version."
+msgstr ""
+
+msgid ""
+"These are the basic settings for your local wireless community. These "
+"settings define the default values for the wizard and DO NOT affect the "
+"actual configuration of the router."
+msgstr ""
+
+msgid "These are the settings of your local community."
+msgstr ""
+
+msgid ""
+"These pages will assist you in setting up your router for Freifunk or "
+"similar wireless community networks."
+msgstr ""
+
+msgid "This is the access point"
+msgstr ""
+
+msgid "Update Settings"
+msgstr ""
+
+msgid "Update available!"
+msgstr ""
+
+msgid "Uptime"
+msgstr ""
+
+msgid "VAP"
+msgstr ""
+
+msgid "Verify downloaded images"
+msgstr ""
+
+msgid "Very good (ETX < 2)"
+msgstr ""
+
+msgid ""
+"We are an initiative to establish a free, independent and open wireless mesh "
+"network."
+msgstr ""
+
+msgid "Wireless Overview"
+msgstr ""
+
+msgid "Yellow"
+msgstr ""
+
+msgid ""
+"You can display additional content on the public index page by inserting "
+"valid XHTML in the form below.<br />Headlines should be enclosed between &lt;"
+"h2&gt; and &lt;/h2&gt;."
+msgstr ""
+
+msgid ""
+"You can find further information about the global Freifunk initiative at"
+msgstr ""
+
+msgid "You can manually edit the selected community profile here."
+msgstr ""
+
+msgid ""
+"You need to select a profile before you can edit it. To select a profile go "
+"to"
+msgstr ""
+
+msgid "and fill out all required fields."
+msgstr ""
+
+msgid "buffered"
+msgstr ""
+
+msgid "cached"
+msgstr ""
+
+msgid "e.g."
+msgstr ""
+
+msgid "free"
+msgstr ""
+
+msgid "to disable it."
+msgstr ""
+
+msgid "used"
+msgstr ""
+
+msgid "wireless settings"
+msgstr ""
diff --git a/modules/luci-mod-freifunk/po/he/freifunk.po b/modules/luci-mod-freifunk/po/he/freifunk.po
new file mode 100644
index 000000000..3dfdefd59
--- /dev/null
+++ b/modules/luci-mod-freifunk/po/he/freifunk.po
@@ -0,0 +1,394 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"PO-Revision-Date: 2013-01-22 02:48+0200\n"
+"Last-Translator: citizen.amitai <citizen.amitai@gmail.com>\n"
+"Language-Team: none\n"
+"Language: he\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 2.0.6\n"
+
+msgid "BSSID"
+msgstr "BSSID"
+
+msgid "Bad (ETX > 10)"
+msgstr "חלש"
+
+msgid "Basic Settings"
+msgstr "הגדרות בסיס"
+
+msgid "Basic settings"
+msgstr "הגדרות בסיס"
+
+msgid "Basic settings are incomplete. Please go to"
+msgstr "לא סיימת להגדיר את הגדרות הבסיס. תחזור ל"
+
+msgid "Basic system settings"
+msgstr "הגדרות מערכת"
+
+msgid "Bitrate"
+msgstr "קצב העברה"
+
+msgid "Channel"
+msgstr "ערוץ"
+
+msgid "Check for new firmware versions and perform automatic updates."
+msgstr "בדוק אם קיים גרסת חומרה חדשה ובצע עדכון אוטומטי"
+
+msgid "Client network size"
+msgstr "גודל הרשת"
+
+msgid "Community"
+msgstr "קהילה"
+
+msgid "Community profile"
+msgstr "פרופיל הקהילה"
+
+msgid "Community settings"
+msgstr "הגדרות קהילה"
+
+msgid "Confirm Upgrade"
+msgstr "אשר שדרוג"
+
+msgid "Contact"
+msgstr "צור קשר"
+
+msgid "Contact information is incomplete. Please go to"
+msgstr ""
+
+msgid "Coordinates"
+msgstr ""
+
+msgid "Country code"
+msgstr "קוד מדינה"
+
+msgid "Default routes"
+msgstr ""
+
+msgid "Disable default content"
+msgstr ""
+
+msgid "Diversity is enabled for device"
+msgstr ""
+
+msgid "E-Mail"
+msgstr "אימייל"
+
+msgid "ESSID"
+msgstr "ESSID"
+
+msgid "Edit index page"
+msgstr "ערוך דף אינדקס"
+
+msgid "Enable IPv6"
+msgstr ""
+
+msgid "Enable a virtual access point (VAP) by default if possible."
+msgstr ""
+
+msgid "Error"
+msgstr "שגיאה"
+
+msgid "Find your coordinates with OpenStreetMap"
+msgstr "מצא את המיקום שלך עם OpenStreetMap"
+
+msgid "Freifunk"
+msgstr "אריג"
+
+msgid "Freifunk Overview"
+msgstr "סקירה כללית על אריג"
+
+msgid "Freifunk Remote Update"
+msgstr "עדכון מרחוק "
+
+msgid "Gateway"
+msgstr "שער"
+
+msgid "Go to"
+msgstr "עבור אל"
+
+msgid "Good (2 < ETX < 4)"
+msgstr "טוב"
+
+msgid "Green"
+msgstr "ירוק"
+
+msgid "Hello and welcome in the network of"
+msgstr "שלום וברוך הבא לרשת "
+
+msgid "Hide OpenStreetMap"
+msgstr "הסתר OpenStreetMap"
+
+msgid "Homepage"
+msgstr "דף הבית"
+
+msgid "Hostname"
+msgstr "שם מחשב"
+
+msgid "IPv6 Config"
+msgstr ""
+
+msgid "IPv6 Prefix"
+msgstr ""
+
+msgid "IPv6 network in CIDR notation."
+msgstr ""
+
+msgid "If selected then the default content element is not shown."
+msgstr "אם מסומן, תוכן ברירת המחדל לא יופיע"
+
+msgid "If you are interested in our project then contact the local community"
+msgstr "אם הנכם מעוניינים בפרוייקט שלנו אנא צרו קשר עם הקהילה באזורכם"
+
+msgid "Index Page"
+msgstr ""
+
+msgid "Interface"
+msgstr "ממשק"
+
+msgid ""
+"Internet access depends on technical and organisational conditions and may "
+"or may not work for you."
+msgstr ""
+
+msgid "It is operated by"
+msgstr "זה מופעל ע\"י"
+
+msgid "Keep configuration"
+msgstr "שמור הגדרות"
+
+msgid "Latitude"
+msgstr "רוחב"
+
+msgid "Legend"
+msgstr ""
+
+msgid "Load"
+msgstr "טען"
+
+msgid "Local Time"
+msgstr "זמן מקומי"
+
+msgid "Location"
+msgstr "מיקום"
+
+msgid "Longitude"
+msgstr "אורך"
+
+msgid "Map"
+msgstr "מפה"
+
+msgid "Map Error"
+msgstr "שגיאת מפה"
+
+msgid "Memory"
+msgstr "זכרון"
+
+msgid "Mesh prefix"
+msgstr ""
+
+msgid "Metric"
+msgstr ""
+
+msgid "Mode"
+msgstr "מצב"
+
+msgid "Network"
+msgstr "רשת"
+
+msgid "Network for client DHCP addresses"
+msgstr ""
+
+msgid "Nickname"
+msgstr "כינוי"
+
+msgid "No default routes known."
+msgstr ""
+
+msgid "Notice"
+msgstr ""
+
+msgid "OLSR"
+msgstr ""
+
+msgid "Operator"
+msgstr ""
+
+msgid "Orange"
+msgstr ""
+
+msgid "Overview"
+msgstr "סקירה"
+
+msgid "Package libiwinfo required!"
+msgstr ""
+
+msgid "Phone"
+msgstr ""
+
+msgid "Please fill in your contact details below."
+msgstr ""
+
+msgid "Please set your contact information"
+msgstr "אנא הזינו פרטי יצירת קשר"
+
+msgid "Power"
+msgstr "כח"
+
+msgid "Processor"
+msgstr "מעבד"
+
+msgid "Profile"
+msgstr ""
+
+msgid "Profile (Expert)"
+msgstr "פרופיל (מומחה)"
+
+msgid "Realname"
+msgstr "שם אמיתי"
+
+msgid "Red"
+msgstr "אדום"
+
+msgid "SSID"
+msgstr "SSID"
+
+msgid ""
+"Select your location with a mouse click on the map. The map will only show "
+"up if you are connected to the Internet."
+msgstr ""
+
+msgid "Show OpenStreetMap"
+msgstr "פתח OpenStreetMap"
+
+msgid "Show on map"
+msgstr "הצג על גבי מפה"
+
+msgid "Signal"
+msgstr "אות"
+
+msgid "Splash"
+msgstr ""
+
+msgid "Start Upgrade"
+msgstr "התחל שדרוג"
+
+msgid "Statistics"
+msgstr "סטטיסטיקה"
+
+msgid "Status"
+msgstr "סטטוס"
+
+msgid "Still usable (4 < ETX < 10)"
+msgstr "מתפקד"
+
+msgid "System"
+msgstr "מערכת"
+
+msgid "TX"
+msgstr "TX"
+
+msgid ""
+"The <em>libiwinfo</em> package is not installed. You must install this "
+"component for working wireless configuration!"
+msgstr ""
+
+msgid ""
+"The OLSRd service is not configured to capture position data from the "
+"network.<br /> Please make sure that the nameservice plugin is properly "
+"configured and that the <em>latlon_file</em> option is enabled."
+msgstr ""
+
+msgid "The installed firmware is the most recent version."
+msgstr ""
+
+msgid ""
+"These are the basic settings for your local wireless community. These "
+"settings define the default values for the wizard and DO NOT affect the "
+"actual configuration of the router."
+msgstr ""
+
+msgid "These are the settings of your local community."
+msgstr ""
+
+msgid ""
+"These pages will assist you in setting up your router for Freifunk or "
+"similar wireless community networks."
+msgstr ""
+
+msgid "This is the access point"
+msgstr ""
+
+msgid "Update Settings"
+msgstr ""
+
+msgid "Update available!"
+msgstr ""
+
+msgid "Uptime"
+msgstr ""
+
+msgid "VAP"
+msgstr ""
+
+msgid "Verify downloaded images"
+msgstr ""
+
+msgid "Very good (ETX < 2)"
+msgstr ""
+
+msgid ""
+"We are an initiative to establish a free, independent and open wireless mesh "
+"network."
+msgstr "יוזמה לביסוס רשת אריג אל-חוטית שתהיה חינמית, נגישה, ועצמאית"
+
+msgid "Wireless Overview"
+msgstr "סקירת הרשת האלחוטית"
+
+msgid "Yellow"
+msgstr "צהוב"
+
+msgid ""
+"You can display additional content on the public index page by inserting "
+"valid XHTML in the form below.<br />Headlines should be enclosed between &lt;"
+"h2&gt; and &lt;/h2&gt;."
+msgstr ""
+
+msgid ""
+"You can find further information about the global Freifunk initiative at"
+msgstr ""
+
+msgid "You can manually edit the selected community profile here."
+msgstr ""
+
+msgid ""
+"You need to select a profile before you can edit it. To select a profile go "
+"to"
+msgstr ""
+
+msgid "and fill out all required fields."
+msgstr ""
+
+msgid "buffered"
+msgstr ""
+
+msgid "cached"
+msgstr ""
+
+msgid "e.g."
+msgstr ""
+
+msgid "free"
+msgstr ""
+
+msgid "to disable it."
+msgstr ""
+
+msgid "used"
+msgstr ""
+
+msgid "wireless settings"
+msgstr ""
diff --git a/modules/luci-mod-freifunk/po/hu/freifunk.po b/modules/luci-mod-freifunk/po/hu/freifunk.po
new file mode 100644
index 000000000..71829ef51
--- /dev/null
+++ b/modules/luci-mod-freifunk/po/hu/freifunk.po
@@ -0,0 +1,392 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Last-Translator: Automatically generated\n"
+"Language-Team: none\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+msgid "BSSID"
+msgstr ""
+
+msgid "Bad (ETX > 10)"
+msgstr ""
+
+msgid "Basic Settings"
+msgstr ""
+
+msgid "Basic settings"
+msgstr ""
+
+msgid "Basic settings are incomplete. Please go to"
+msgstr ""
+
+msgid "Basic system settings"
+msgstr ""
+
+msgid "Bitrate"
+msgstr ""
+
+msgid "Channel"
+msgstr ""
+
+msgid "Check for new firmware versions and perform automatic updates."
+msgstr ""
+
+msgid "Client network size"
+msgstr ""
+
+msgid "Community"
+msgstr ""
+
+msgid "Community profile"
+msgstr ""
+
+msgid "Community settings"
+msgstr ""
+
+msgid "Confirm Upgrade"
+msgstr ""
+
+msgid "Contact"
+msgstr ""
+
+msgid "Contact information is incomplete. Please go to"
+msgstr ""
+
+msgid "Coordinates"
+msgstr ""
+
+msgid "Country code"
+msgstr ""
+
+msgid "Default routes"
+msgstr ""
+
+msgid "Disable default content"
+msgstr ""
+
+msgid "Diversity is enabled for device"
+msgstr ""
+
+msgid "E-Mail"
+msgstr ""
+
+msgid "ESSID"
+msgstr ""
+
+msgid "Edit index page"
+msgstr ""
+
+msgid "Enable IPv6"
+msgstr ""
+
+msgid "Enable a virtual access point (VAP) by default if possible."
+msgstr ""
+
+msgid "Error"
+msgstr ""
+
+msgid "Find your coordinates with OpenStreetMap"
+msgstr ""
+
+msgid "Freifunk"
+msgstr ""
+
+msgid "Freifunk Overview"
+msgstr ""
+
+msgid "Freifunk Remote Update"
+msgstr ""
+
+msgid "Gateway"
+msgstr ""
+
+msgid "Go to"
+msgstr ""
+
+msgid "Good (2 < ETX < 4)"
+msgstr ""
+
+msgid "Green"
+msgstr ""
+
+msgid "Hello and welcome in the network of"
+msgstr ""
+
+msgid "Hide OpenStreetMap"
+msgstr ""
+
+msgid "Homepage"
+msgstr ""
+
+msgid "Hostname"
+msgstr ""
+
+msgid "IPv6 Config"
+msgstr ""
+
+msgid "IPv6 Prefix"
+msgstr ""
+
+msgid "IPv6 network in CIDR notation."
+msgstr ""
+
+msgid "If selected then the default content element is not shown."
+msgstr ""
+
+msgid "If you are interested in our project then contact the local community"
+msgstr ""
+
+msgid "Index Page"
+msgstr ""
+
+msgid "Interface"
+msgstr ""
+
+msgid ""
+"Internet access depends on technical and organisational conditions and may "
+"or may not work for you."
+msgstr ""
+
+msgid "It is operated by"
+msgstr ""
+
+msgid "Keep configuration"
+msgstr ""
+
+msgid "Latitude"
+msgstr ""
+
+msgid "Legend"
+msgstr ""
+
+msgid "Load"
+msgstr ""
+
+msgid "Local Time"
+msgstr ""
+
+msgid "Location"
+msgstr ""
+
+msgid "Longitude"
+msgstr ""
+
+msgid "Map"
+msgstr ""
+
+msgid "Map Error"
+msgstr ""
+
+msgid "Memory"
+msgstr ""
+
+msgid "Mesh prefix"
+msgstr ""
+
+msgid "Metric"
+msgstr ""
+
+msgid "Mode"
+msgstr ""
+
+msgid "Network"
+msgstr ""
+
+msgid "Network for client DHCP addresses"
+msgstr ""
+
+msgid "Nickname"
+msgstr ""
+
+msgid "No default routes known."
+msgstr ""
+
+msgid "Notice"
+msgstr ""
+
+msgid "OLSR"
+msgstr ""
+
+msgid "Operator"
+msgstr ""
+
+msgid "Orange"
+msgstr ""
+
+msgid "Overview"
+msgstr ""
+
+msgid "Package libiwinfo required!"
+msgstr ""
+
+msgid "Phone"
+msgstr ""
+
+msgid "Please fill in your contact details below."
+msgstr ""
+
+msgid "Please set your contact information"
+msgstr ""
+
+msgid "Power"
+msgstr ""
+
+msgid "Processor"
+msgstr ""
+
+msgid "Profile"
+msgstr ""
+
+msgid "Profile (Expert)"
+msgstr ""
+
+msgid "Realname"
+msgstr ""
+
+msgid "Red"
+msgstr ""
+
+msgid "SSID"
+msgstr ""
+
+msgid ""
+"Select your location with a mouse click on the map. The map will only show "
+"up if you are connected to the Internet."
+msgstr ""
+
+msgid "Show OpenStreetMap"
+msgstr ""
+
+msgid "Show on map"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "Splash"
+msgstr ""
+
+msgid "Start Upgrade"
+msgstr ""
+
+msgid "Statistics"
+msgstr ""
+
+msgid "Status"
+msgstr ""
+
+msgid "Still usable (4 < ETX < 10)"
+msgstr ""
+
+msgid "System"
+msgstr ""
+
+msgid "TX"
+msgstr ""
+
+msgid ""
+"The <em>libiwinfo</em> package is not installed. You must install this "
+"component for working wireless configuration!"
+msgstr ""
+
+msgid ""
+"The OLSRd service is not configured to capture position data from the "
+"network.<br /> Please make sure that the nameservice plugin is properly "
+"configured and that the <em>latlon_file</em> option is enabled."
+msgstr ""
+
+msgid "The installed firmware is the most recent version."
+msgstr ""
+
+msgid ""
+"These are the basic settings for your local wireless community. These "
+"settings define the default values for the wizard and DO NOT affect the "
+"actual configuration of the router."
+msgstr ""
+
+msgid "These are the settings of your local community."
+msgstr ""
+
+msgid ""
+"These pages will assist you in setting up your router for Freifunk or "
+"similar wireless community networks."
+msgstr ""
+
+msgid "This is the access point"
+msgstr ""
+
+msgid "Update Settings"
+msgstr ""
+
+msgid "Update available!"
+msgstr ""
+
+msgid "Uptime"
+msgstr ""
+
+msgid "VAP"
+msgstr ""
+
+msgid "Verify downloaded images"
+msgstr ""
+
+msgid "Very good (ETX < 2)"
+msgstr ""
+
+msgid ""
+"We are an initiative to establish a free, independent and open wireless mesh "
+"network."
+msgstr ""
+
+msgid "Wireless Overview"
+msgstr ""
+
+msgid "Yellow"
+msgstr ""
+
+msgid ""
+"You can display additional content on the public index page by inserting "
+"valid XHTML in the form below.<br />Headlines should be enclosed between &lt;"
+"h2&gt; and &lt;/h2&gt;."
+msgstr ""
+
+msgid ""
+"You can find further information about the global Freifunk initiative at"
+msgstr ""
+
+msgid "You can manually edit the selected community profile here."
+msgstr ""
+
+msgid ""
+"You need to select a profile before you can edit it. To select a profile go "
+"to"
+msgstr ""
+
+msgid "and fill out all required fields."
+msgstr ""
+
+msgid "buffered"
+msgstr ""
+
+msgid "cached"
+msgstr ""
+
+msgid "e.g."
+msgstr ""
+
+msgid "free"
+msgstr ""
+
+msgid "to disable it."
+msgstr ""
+
+msgid "used"
+msgstr ""
+
+msgid "wireless settings"
+msgstr ""
diff --git a/modules/luci-mod-freifunk/po/it/freifunk.po b/modules/luci-mod-freifunk/po/it/freifunk.po
new file mode 100644
index 000000000..9bbeebc54
--- /dev/null
+++ b/modules/luci-mod-freifunk/po/it/freifunk.po
@@ -0,0 +1,422 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2009-06-10 03:40+0200\n"
+"PO-Revision-Date: 2014-07-19 16:27+0200\n"
+"Last-Translator: clagir <cgirlanda@girtech.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: it\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 2.0.6\n"
+
+msgid "BSSID"
+msgstr "BSSID"
+
+msgid "Bad (ETX > 10)"
+msgstr "Difettoso (ETX > 10)"
+
+msgid "Basic Settings"
+msgstr "Impostazioni Base"
+
+msgid "Basic settings"
+msgstr "Impostazioni Base"
+
+msgid "Basic settings are incomplete. Please go to"
+msgstr "Le impostazioni base sono incomplete. Si prega di andare a"
+
+msgid "Basic system settings"
+msgstr "Impostazioni Base del Sistema"
+
+msgid "Bitrate"
+msgstr "Bitrate"
+
+msgid "Channel"
+msgstr "Canale"
+
+msgid "Check for new firmware versions and perform automatic updates."
+msgstr ""
+"Verificare la presenza di nuove versioni del firmware ed eseguire gli "
+"aggiornamenti automatici."
+
+msgid "Client network size"
+msgstr "Dimensione Rete Client"
+
+msgid "Community"
+msgstr "Comunità"
+
+msgid "Community profile"
+msgstr "Profilo Comunità"
+
+msgid "Community settings"
+msgstr "Impostazioni Comunità"
+
+msgid "Confirm Upgrade"
+msgstr "Conferma Aggiornamento"
+
+msgid "Contact"
+msgstr "Contatto"
+
+msgid "Contact information is incomplete. Please go to"
+msgstr "Le informazioni di contatto sono incomplete. Si prega di andare a"
+
+msgid "Coordinates"
+msgstr "Coordinate"
+
+msgid "Country code"
+msgstr "Codice Nazione"
+
+msgid "Default routes"
+msgstr "Instradamenti Predefiniti"
+
+msgid "Disable default content"
+msgstr "Disattivare contenuto predefinito"
+
+msgid "Diversity is enabled for device"
+msgstr "La diversità è abilitata per il dispositivo"
+
+msgid "E-Mail"
+msgstr "E-Mail"
+
+msgid "ESSID"
+msgstr "ESSID"
+
+msgid "Edit index page"
+msgstr "Modifica indice pagina"
+
+msgid "Enable IPv6"
+msgstr "Attiva IPv6"
+
+msgid "Enable a virtual access point (VAP) by default if possible."
+msgstr "Attiva un access point virtuale (VAP) di default se possibile"
+
+msgid "Error"
+msgstr "Errore"
+
+msgid "Find your coordinates with OpenStreetMap"
+msgstr "Trova le coordinate con OpenStreetMap"
+
+msgid "Freifunk"
+msgstr "Freifunk"
+
+msgid "Freifunk Overview"
+msgstr "Panoramica Freifunk"
+
+msgid "Freifunk Remote Update"
+msgstr "Aggiornamento Remoto Freifunk"
+
+msgid "Gateway"
+msgstr "Gateway"
+
+msgid "Go to"
+msgstr "Vai a"
+
+msgid "Good (2 < ETX < 4)"
+msgstr "Buono (2 < ETX < 4)"
+
+msgid "Green"
+msgstr "Verde"
+
+msgid "Hello and welcome in the network of"
+msgstr "Ciao e benvenuto nella rete di"
+
+msgid "Hide OpenStreetMap"
+msgstr "Nascondi OpenStreetMap"
+
+msgid "Homepage"
+msgstr "Homepage"
+
+msgid "Hostname"
+msgstr "Nome Host"
+
+msgid "IPv6 Config"
+msgstr "Configura IPv6"
+
+msgid "IPv6 Prefix"
+msgstr "Prefisso IPv6"
+
+msgid "IPv6 network in CIDR notation."
+msgstr "Rete IPv6 in notazione CIDR."
+
+msgid "If selected then the default content element is not shown."
+msgstr ""
+"Se selezionata, l'elemento di contenuto predefinito non viene visualizzato."
+
+msgid "If you are interested in our project then contact the local community"
+msgstr "Se siete interessati al nostro progetto, contattare la comunità locale"
+
+msgid "Index Page"
+msgstr "Indice Pagina"
+
+msgid "Interface"
+msgstr "Interfaccia"
+
+msgid ""
+"Internet access depends on technical and organisational conditions and may "
+"or may not work for you."
+msgstr ""
+"L'accesso a Internet dipende dalle condizioni tecniche e organizzative e può "
+"o non può funzionare per voi."
+
+msgid "It is operated by"
+msgstr "E' gestito da"
+
+msgid "Keep configuration"
+msgstr "Mantieni configurazione"
+
+msgid "Latitude"
+msgstr "Latitudine"
+
+msgid "Legend"
+msgstr "Legenda"
+
+msgid "Load"
+msgstr "Carica"
+
+msgid "Local Time"
+msgstr "Ora Locale"
+
+msgid "Location"
+msgstr "Posizione"
+
+msgid "Longitude"
+msgstr "Longitudine"
+
+msgid "Map"
+msgstr "Mappa"
+
+msgid "Map Error"
+msgstr "Errore Mappa"
+
+msgid "Memory"
+msgstr "Memoria"
+
+msgid "Mesh prefix"
+msgstr "Prefisso Rete"
+
+msgid "Metric"
+msgstr "Metrica"
+
+msgid "Mode"
+msgstr "Modalità"
+
+msgid "Network"
+msgstr "Rete"
+
+msgid "Network for client DHCP addresses"
+msgstr "Rete per indirizzi Client DHCP"
+
+msgid "Nickname"
+msgstr "Nome Nick"
+
+msgid "No default routes known."
+msgstr "Nessun instradamento predefinito conosciuto."
+
+msgid "Notice"
+msgstr "Avviso"
+
+msgid "OLSR"
+msgstr "OLSR"
+
+msgid "Operator"
+msgstr "Operatore"
+
+msgid "Orange"
+msgstr "Arancio"
+
+msgid "Overview"
+msgstr "Panoramica"
+
+msgid "Package libiwinfo required!"
+msgstr "Il pacchetto libiwinfo è richiesto!"
+
+msgid "Phone"
+msgstr "Telefono"
+
+msgid "Please fill in your contact details below."
+msgstr "Inserisci i tuoi dati di contatto qui sotto."
+
+msgid "Please set your contact information"
+msgstr "Vi preghiamo di impostare le informazioni di contatto"
+
+msgid "Power"
+msgstr "Potenza"
+
+msgid "Processor"
+msgstr "Processore"
+
+msgid "Profile"
+msgstr "Profilo"
+
+msgid "Profile (Expert)"
+msgstr "Profilo (Esperto)"
+
+msgid "Realname"
+msgstr "Nome Reale"
+
+msgid "Red"
+msgstr "Rosso"
+
+msgid "SSID"
+msgstr "SSID"
+
+msgid ""
+"Select your location with a mouse click on the map. The map will only show "
+"up if you are connected to the Internet."
+msgstr ""
+"Selezionare la propria posizione con un clic del mouse sulla mappa. La mappa "
+"viene visualizzata solo se si è connessi a Internet."
+
+msgid "Show OpenStreetMap"
+msgstr "Mostra OpenStreetMap"
+
+msgid "Show on map"
+msgstr "Mostra sulla mappa"
+
+msgid "Signal"
+msgstr "Segnale"
+
+msgid "Splash"
+msgstr "Splash"
+
+msgid "Start Upgrade"
+msgstr "Avvia Aggiornamento"
+
+msgid "Statistics"
+msgstr "Statistiche"
+
+msgid "Status"
+msgstr "Stato"
+
+msgid "Still usable (4 < ETX < 10)"
+msgstr "Ancora utilizzabile (4 < ETX < 10)"
+
+msgid "System"
+msgstr "Sistema"
+
+msgid "TX"
+msgstr "TX"
+
+msgid ""
+"The <em>libiwinfo</em> package is not installed. You must install this "
+"component for working wireless configuration!"
+msgstr ""
+"Il pacchetto <em>libiwinfo</em> non è installato. Si deve installare questo "
+"componente per usare di configurazione wireless!"
+
+msgid ""
+"The OLSRd service is not configured to capture position data from the "
+"network.<br /> Please make sure that the nameservice plugin is properly "
+"configured and that the <em>latlon_file</em> option is enabled."
+msgstr ""
+"Il servizio OLSRd non è configurato per acquisire i dati di posizione della "
+"rete. <br/> Assicurarsi che il plugin nameservice sia configurato "
+"correttamente e che l'opzione <em>latlon_file</ em> è abilitata."
+
+msgid "The installed firmware is the most recent version."
+msgstr "Il firmware installato è la versione più recente."
+
+msgid ""
+"These are the basic settings for your local wireless community. These "
+"settings define the default values for the wizard and DO NOT affect the "
+"actual configuration of the router."
+msgstr ""
+"Queste sono le impostazioni di base per la vostra comunità locale wireless. "
+"Queste impostazioni definiscono i valori predefiniti per la procedura "
+"guidata e non influenzano la configurazione attuale del router."
+
+msgid "These are the settings of your local community."
+msgstr "Queste sono le impostazioni della vostra comunità locale."
+
+msgid ""
+"These pages will assist you in setting up your router for Freifunk or "
+"similar wireless community networks."
+msgstr ""
+"Queste pagine vi aiuteranno a configurare il router per Freifunk o reti "
+"wireless della comunità simile."
+
+msgid "This is the access point"
+msgstr "Questo è il punto di accesso"
+
+msgid "Update Settings"
+msgstr "Aggiorna impostazioni"
+
+msgid "Update available!"
+msgstr "Aggiornamento disponibile!"
+
+msgid "Uptime"
+msgstr "Tempo di attività"
+
+msgid "VAP"
+msgstr "VAP"
+
+msgid "Verify downloaded images"
+msgstr "Verifica delle immagini scaricate"
+
+msgid "Very good (ETX < 2)"
+msgstr "Molto buono (ETX < 2)"
+
+msgid ""
+"We are an initiative to establish a free, independent and open wireless mesh "
+"network."
+msgstr ""
+"Siamo un'iniziativa per creare una rete libera, indipendente e aperto "
+"wireless mesh."
+
+msgid "Wireless Overview"
+msgstr "Panoramica Wireless"
+
+msgid "Yellow"
+msgstr "Giallo"
+
+msgid ""
+"You can display additional content on the public index page by inserting "
+"valid XHTML in the form below.<br />Headlines should be enclosed between &lt;"
+"h2&gt; and &lt;/h2&gt;."
+msgstr ""
+"È possibile visualizzare contenuti aggiuntivi nella pagina indice pubblica "
+"inserendo XHTML valida nel modulo sottostante. <br/> I titoli dovrebbero "
+"essere racchiusi tra &lt;h2&gt; e &lt;/h2&gt;."
+
+msgid ""
+"You can find further information about the global Freifunk initiative at"
+msgstr ""
+"È possibile trovare ulteriori informazioni sull'iniziativa Freifunk globale a"
+
+msgid "You can manually edit the selected community profile here."
+msgstr ""
+"È possibile modificare manualmente il profilo selezionato della comunità qui"
+
+msgid ""
+"You need to select a profile before you can edit it. To select a profile go "
+"to"
+msgstr ""
+"È necessario selezionare un profilo prima di poterlo modificare. Per "
+"selezionare un profilo andare a"
+
+msgid "and fill out all required fields."
+msgstr "e compilare tutti i campi richiesti."
+
+msgid "buffered"
+msgstr "buffered"
+
+msgid "cached"
+msgstr "in memoria cache"
+
+msgid "e.g."
+msgstr "es."
+
+msgid "free"
+msgstr "libero"
+
+msgid "to disable it."
+msgstr "per disattivarlo."
+
+msgid "used"
+msgstr "usato"
+
+msgid "wireless settings"
+msgstr "Impostazioni Wireless"
diff --git a/modules/luci-mod-freifunk/po/ja/freifunk.po b/modules/luci-mod-freifunk/po/ja/freifunk.po
new file mode 100644
index 000000000..028a2ce2b
--- /dev/null
+++ b/modules/luci-mod-freifunk/po/ja/freifunk.po
@@ -0,0 +1,395 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2009-05-19 19:36+0200\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Translate Toolkit 1.1.1\n"
+
+msgid "BSSID"
+msgstr ""
+
+msgid "Bad (ETX > 10)"
+msgstr ""
+
+msgid "Basic Settings"
+msgstr ""
+
+msgid "Basic settings"
+msgstr ""
+
+msgid "Basic settings are incomplete. Please go to"
+msgstr ""
+
+msgid "Basic system settings"
+msgstr ""
+
+msgid "Bitrate"
+msgstr ""
+
+msgid "Channel"
+msgstr ""
+
+msgid "Check for new firmware versions and perform automatic updates."
+msgstr ""
+
+msgid "Client network size"
+msgstr ""
+
+msgid "Community"
+msgstr ""
+
+msgid "Community profile"
+msgstr ""
+
+msgid "Community settings"
+msgstr ""
+
+msgid "Confirm Upgrade"
+msgstr ""
+
+msgid "Contact"
+msgstr ""
+
+msgid "Contact information is incomplete. Please go to"
+msgstr ""
+
+msgid "Coordinates"
+msgstr ""
+
+msgid "Country code"
+msgstr ""
+
+msgid "Default routes"
+msgstr ""
+
+msgid "Disable default content"
+msgstr ""
+
+msgid "Diversity is enabled for device"
+msgstr ""
+
+msgid "E-Mail"
+msgstr ""
+
+msgid "ESSID"
+msgstr ""
+
+msgid "Edit index page"
+msgstr ""
+
+msgid "Enable IPv6"
+msgstr ""
+
+msgid "Enable a virtual access point (VAP) by default if possible."
+msgstr ""
+
+msgid "Error"
+msgstr ""
+
+msgid "Find your coordinates with OpenStreetMap"
+msgstr ""
+
+msgid "Freifunk"
+msgstr ""
+
+msgid "Freifunk Overview"
+msgstr ""
+
+msgid "Freifunk Remote Update"
+msgstr ""
+
+msgid "Gateway"
+msgstr ""
+
+msgid "Go to"
+msgstr ""
+
+msgid "Good (2 < ETX < 4)"
+msgstr ""
+
+msgid "Green"
+msgstr ""
+
+msgid "Hello and welcome in the network of"
+msgstr ""
+
+msgid "Hide OpenStreetMap"
+msgstr ""
+
+msgid "Homepage"
+msgstr ""
+
+msgid "Hostname"
+msgstr ""
+
+msgid "IPv6 Config"
+msgstr ""
+
+msgid "IPv6 Prefix"
+msgstr ""
+
+msgid "IPv6 network in CIDR notation."
+msgstr ""
+
+msgid "If selected then the default content element is not shown."
+msgstr ""
+
+msgid "If you are interested in our project then contact the local community"
+msgstr ""
+
+msgid "Index Page"
+msgstr ""
+
+msgid "Interface"
+msgstr ""
+
+msgid ""
+"Internet access depends on technical and organisational conditions and may "
+"or may not work for you."
+msgstr ""
+
+msgid "It is operated by"
+msgstr ""
+
+msgid "Keep configuration"
+msgstr ""
+
+msgid "Latitude"
+msgstr ""
+
+msgid "Legend"
+msgstr ""
+
+msgid "Load"
+msgstr ""
+
+msgid "Local Time"
+msgstr ""
+
+msgid "Location"
+msgstr ""
+
+msgid "Longitude"
+msgstr ""
+
+msgid "Map"
+msgstr ""
+
+msgid "Map Error"
+msgstr ""
+
+msgid "Memory"
+msgstr ""
+
+msgid "Mesh prefix"
+msgstr ""
+
+msgid "Metric"
+msgstr ""
+
+msgid "Mode"
+msgstr ""
+
+msgid "Network"
+msgstr ""
+
+msgid "Network for client DHCP addresses"
+msgstr ""
+
+msgid "Nickname"
+msgstr ""
+
+msgid "No default routes known."
+msgstr ""
+
+msgid "Notice"
+msgstr ""
+
+msgid "OLSR"
+msgstr ""
+
+msgid "Operator"
+msgstr ""
+
+msgid "Orange"
+msgstr ""
+
+msgid "Overview"
+msgstr ""
+
+msgid "Package libiwinfo required!"
+msgstr ""
+
+msgid "Phone"
+msgstr ""
+
+msgid "Please fill in your contact details below."
+msgstr ""
+
+msgid "Please set your contact information"
+msgstr ""
+
+msgid "Power"
+msgstr ""
+
+msgid "Processor"
+msgstr ""
+
+msgid "Profile"
+msgstr ""
+
+msgid "Profile (Expert)"
+msgstr ""
+
+msgid "Realname"
+msgstr ""
+
+msgid "Red"
+msgstr ""
+
+msgid "SSID"
+msgstr ""
+
+msgid ""
+"Select your location with a mouse click on the map. The map will only show "
+"up if you are connected to the Internet."
+msgstr ""
+
+msgid "Show OpenStreetMap"
+msgstr ""
+
+msgid "Show on map"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "Splash"
+msgstr ""
+
+msgid "Start Upgrade"
+msgstr ""
+
+msgid "Statistics"
+msgstr ""
+
+msgid "Status"
+msgstr ""
+
+msgid "Still usable (4 < ETX < 10)"
+msgstr ""
+
+msgid "System"
+msgstr ""
+
+msgid "TX"
+msgstr ""
+
+msgid ""
+"The <em>libiwinfo</em> package is not installed. You must install this "
+"component for working wireless configuration!"
+msgstr ""
+
+msgid ""
+"The OLSRd service is not configured to capture position data from the "
+"network.<br /> Please make sure that the nameservice plugin is properly "
+"configured and that the <em>latlon_file</em> option is enabled."
+msgstr ""
+
+msgid "The installed firmware is the most recent version."
+msgstr ""
+
+msgid ""
+"These are the basic settings for your local wireless community. These "
+"settings define the default values for the wizard and DO NOT affect the "
+"actual configuration of the router."
+msgstr ""
+
+msgid "These are the settings of your local community."
+msgstr ""
+
+msgid ""
+"These pages will assist you in setting up your router for Freifunk or "
+"similar wireless community networks."
+msgstr ""
+
+msgid "This is the access point"
+msgstr ""
+
+msgid "Update Settings"
+msgstr ""
+
+msgid "Update available!"
+msgstr ""
+
+msgid "Uptime"
+msgstr ""
+
+msgid "VAP"
+msgstr ""
+
+msgid "Verify downloaded images"
+msgstr ""
+
+msgid "Very good (ETX < 2)"
+msgstr ""
+
+msgid ""
+"We are an initiative to establish a free, independent and open wireless mesh "
+"network."
+msgstr ""
+
+msgid "Wireless Overview"
+msgstr ""
+
+msgid "Yellow"
+msgstr ""
+
+msgid ""
+"You can display additional content on the public index page by inserting "
+"valid XHTML in the form below.<br />Headlines should be enclosed between &lt;"
+"h2&gt; and &lt;/h2&gt;."
+msgstr ""
+
+msgid ""
+"You can find further information about the global Freifunk initiative at"
+msgstr ""
+
+msgid "You can manually edit the selected community profile here."
+msgstr ""
+
+msgid ""
+"You need to select a profile before you can edit it. To select a profile go "
+"to"
+msgstr ""
+
+msgid "and fill out all required fields."
+msgstr ""
+
+msgid "buffered"
+msgstr ""
+
+msgid "cached"
+msgstr ""
+
+msgid "e.g."
+msgstr ""
+
+msgid "free"
+msgstr ""
+
+msgid "to disable it."
+msgstr ""
+
+msgid "used"
+msgstr ""
+
+msgid "wireless settings"
+msgstr ""
diff --git a/modules/luci-mod-freifunk/po/ms/freifunk.po b/modules/luci-mod-freifunk/po/ms/freifunk.po
new file mode 100644
index 000000000..262991d21
--- /dev/null
+++ b/modules/luci-mod-freifunk/po/ms/freifunk.po
@@ -0,0 +1,391 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Last-Translator: Automatically generated\n"
+"Language-Team: none\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+msgid "BSSID"
+msgstr ""
+
+msgid "Bad (ETX > 10)"
+msgstr ""
+
+msgid "Basic Settings"
+msgstr ""
+
+msgid "Basic settings"
+msgstr ""
+
+msgid "Basic settings are incomplete. Please go to"
+msgstr ""
+
+msgid "Basic system settings"
+msgstr ""
+
+msgid "Bitrate"
+msgstr ""
+
+msgid "Channel"
+msgstr ""
+
+msgid "Check for new firmware versions and perform automatic updates."
+msgstr ""
+
+msgid "Client network size"
+msgstr ""
+
+msgid "Community"
+msgstr ""
+
+msgid "Community profile"
+msgstr ""
+
+msgid "Community settings"
+msgstr ""
+
+msgid "Confirm Upgrade"
+msgstr ""
+
+msgid "Contact"
+msgstr ""
+
+msgid "Contact information is incomplete. Please go to"
+msgstr ""
+
+msgid "Coordinates"
+msgstr ""
+
+msgid "Country code"
+msgstr ""
+
+msgid "Default routes"
+msgstr ""
+
+msgid "Disable default content"
+msgstr ""
+
+msgid "Diversity is enabled for device"
+msgstr ""
+
+msgid "E-Mail"
+msgstr ""
+
+msgid "ESSID"
+msgstr ""
+
+msgid "Edit index page"
+msgstr ""
+
+msgid "Enable IPv6"
+msgstr ""
+
+msgid "Enable a virtual access point (VAP) by default if possible."
+msgstr ""
+
+msgid "Error"
+msgstr ""
+
+msgid "Find your coordinates with OpenStreetMap"
+msgstr ""
+
+msgid "Freifunk"
+msgstr ""
+
+msgid "Freifunk Overview"
+msgstr ""
+
+msgid "Freifunk Remote Update"
+msgstr ""
+
+msgid "Gateway"
+msgstr ""
+
+msgid "Go to"
+msgstr ""
+
+msgid "Good (2 < ETX < 4)"
+msgstr ""
+
+msgid "Green"
+msgstr ""
+
+msgid "Hello and welcome in the network of"
+msgstr ""
+
+msgid "Hide OpenStreetMap"
+msgstr ""
+
+msgid "Homepage"
+msgstr ""
+
+msgid "Hostname"
+msgstr ""
+
+msgid "IPv6 Config"
+msgstr ""
+
+msgid "IPv6 Prefix"
+msgstr ""
+
+msgid "IPv6 network in CIDR notation."
+msgstr ""
+
+msgid "If selected then the default content element is not shown."
+msgstr ""
+
+msgid "If you are interested in our project then contact the local community"
+msgstr ""
+
+msgid "Index Page"
+msgstr ""
+
+msgid "Interface"
+msgstr ""
+
+msgid ""
+"Internet access depends on technical and organisational conditions and may "
+"or may not work for you."
+msgstr ""
+
+msgid "It is operated by"
+msgstr ""
+
+msgid "Keep configuration"
+msgstr ""
+
+msgid "Latitude"
+msgstr ""
+
+msgid "Legend"
+msgstr ""
+
+msgid "Load"
+msgstr ""
+
+msgid "Local Time"
+msgstr ""
+
+msgid "Location"
+msgstr ""
+
+msgid "Longitude"
+msgstr ""
+
+msgid "Map"
+msgstr ""
+
+msgid "Map Error"
+msgstr ""
+
+msgid "Memory"
+msgstr ""
+
+msgid "Mesh prefix"
+msgstr ""
+
+msgid "Metric"
+msgstr ""
+
+msgid "Mode"
+msgstr ""
+
+msgid "Network"
+msgstr ""
+
+msgid "Network for client DHCP addresses"
+msgstr ""
+
+msgid "Nickname"
+msgstr ""
+
+msgid "No default routes known."
+msgstr ""
+
+msgid "Notice"
+msgstr ""
+
+msgid "OLSR"
+msgstr ""
+
+msgid "Operator"
+msgstr ""
+
+msgid "Orange"
+msgstr ""
+
+msgid "Overview"
+msgstr ""
+
+msgid "Package libiwinfo required!"
+msgstr ""
+
+msgid "Phone"
+msgstr ""
+
+msgid "Please fill in your contact details below."
+msgstr ""
+
+msgid "Please set your contact information"
+msgstr ""
+
+msgid "Power"
+msgstr ""
+
+msgid "Processor"
+msgstr ""
+
+msgid "Profile"
+msgstr ""
+
+msgid "Profile (Expert)"
+msgstr ""
+
+msgid "Realname"
+msgstr ""
+
+msgid "Red"
+msgstr ""
+
+msgid "SSID"
+msgstr ""
+
+msgid ""
+"Select your location with a mouse click on the map. The map will only show "
+"up if you are connected to the Internet."
+msgstr ""
+
+msgid "Show OpenStreetMap"
+msgstr ""
+
+msgid "Show on map"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "Splash"
+msgstr ""
+
+msgid "Start Upgrade"
+msgstr ""
+
+msgid "Statistics"
+msgstr ""
+
+msgid "Status"
+msgstr ""
+
+msgid "Still usable (4 < ETX < 10)"
+msgstr ""
+
+msgid "System"
+msgstr ""
+
+msgid "TX"
+msgstr ""
+
+msgid ""
+"The <em>libiwinfo</em> package is not installed. You must install this "
+"component for working wireless configuration!"
+msgstr ""
+
+msgid ""
+"The OLSRd service is not configured to capture position data from the "
+"network.<br /> Please make sure that the nameservice plugin is properly "
+"configured and that the <em>latlon_file</em> option is enabled."
+msgstr ""
+
+msgid "The installed firmware is the most recent version."
+msgstr ""
+
+msgid ""
+"These are the basic settings for your local wireless community. These "
+"settings define the default values for the wizard and DO NOT affect the "
+"actual configuration of the router."
+msgstr ""
+
+msgid "These are the settings of your local community."
+msgstr ""
+
+msgid ""
+"These pages will assist you in setting up your router for Freifunk or "
+"similar wireless community networks."
+msgstr ""
+
+msgid "This is the access point"
+msgstr ""
+
+msgid "Update Settings"
+msgstr ""
+
+msgid "Update available!"
+msgstr ""
+
+msgid "Uptime"
+msgstr ""
+
+msgid "VAP"
+msgstr ""
+
+msgid "Verify downloaded images"
+msgstr ""
+
+msgid "Very good (ETX < 2)"
+msgstr ""
+
+msgid ""
+"We are an initiative to establish a free, independent and open wireless mesh "
+"network."
+msgstr ""
+
+msgid "Wireless Overview"
+msgstr ""
+
+msgid "Yellow"
+msgstr ""
+
+msgid ""
+"You can display additional content on the public index page by inserting "
+"valid XHTML in the form below.<br />Headlines should be enclosed between &lt;"
+"h2&gt; and &lt;/h2&gt;."
+msgstr ""
+
+msgid ""
+"You can find further information about the global Freifunk initiative at"
+msgstr ""
+
+msgid "You can manually edit the selected community profile here."
+msgstr ""
+
+msgid ""
+"You need to select a profile before you can edit it. To select a profile go "
+"to"
+msgstr ""
+
+msgid "and fill out all required fields."
+msgstr ""
+
+msgid "buffered"
+msgstr ""
+
+msgid "cached"
+msgstr ""
+
+msgid "e.g."
+msgstr ""
+
+msgid "free"
+msgstr ""
+
+msgid "to disable it."
+msgstr ""
+
+msgid "used"
+msgstr ""
+
+msgid "wireless settings"
+msgstr ""
diff --git a/modules/luci-mod-freifunk/po/no/freifunk.po b/modules/luci-mod-freifunk/po/no/freifunk.po
new file mode 100644
index 000000000..62df8b9f7
--- /dev/null
+++ b/modules/luci-mod-freifunk/po/no/freifunk.po
@@ -0,0 +1,430 @@
+msgid ""
+msgstr ""
+"Last-Translator: Lars Hardy <lars.hardy@gmail.com>\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+msgid "BSSID"
+msgstr "BSSID"
+
+msgid "Bad (ETX > 10)"
+msgstr ""
+
+msgid "Basic Settings"
+msgstr "Grunnleggende Innstillinger"
+
+msgid "Basic settings"
+msgstr "Grunnleggende innstillinger"
+
+msgid "Basic settings are incomplete. Please go to"
+msgstr "Grunnleggende innstillinger er mangelfull. Gå til"
+
+msgid "Basic system settings"
+msgstr "Grunnleggende system innstillinger"
+
+msgid "Bitrate"
+msgstr "Bithastighet"
+
+msgid "Channel"
+msgstr "Kanal"
+
+msgid "Check for new firmware versions and perform automatic updates."
+msgstr "Se etter nye firmware-versjoner og utfør automatiske oppdatering."
+
+msgid "Client network size"
+msgstr "Klient nettverk størrelse"
+
+msgid "Community"
+msgstr "Sted"
+
+msgid "Community profile"
+msgstr "Sted profil"
+
+msgid "Community settings"
+msgstr "Sted innstillinger"
+
+msgid "Confirm Upgrade"
+msgstr "Bekreft Oppgradering"
+
+msgid "Contact"
+msgstr "Kontakt"
+
+msgid "Contact information is incomplete. Please go to"
+msgstr "Kontaktinformasjonen er mangelfull. Gå til"
+
+msgid "Coordinates"
+msgstr "Koordinater"
+
+msgid "Country code"
+msgstr "Landskode"
+
+msgid "Default routes"
+msgstr "Standard ruter"
+
+msgid "Disable default content"
+msgstr "Deaktiver standard innhold"
+
+msgid "Diversity is enabled for device"
+msgstr "Antennevariasjon er aktivert på enhet"
+
+msgid "E-Mail"
+msgstr "E-Post"
+
+msgid "ESSID"
+msgstr "ESSID"
+
+msgid "Edit index page"
+msgstr "Rediger indeks side"
+
+msgid "Enable IPv6"
+msgstr ""
+
+msgid "Enable a virtual access point (VAP) by default if possible."
+msgstr ""
+
+msgid "Error"
+msgstr "Feil"
+
+msgid "Find your coordinates with OpenStreetMap"
+msgstr "Finn koordinatene dine med OpenStreetMap"
+
+msgid "Freifunk"
+msgstr "Freifunk"
+
+msgid "Freifunk Overview"
+msgstr "Freifunk Oversikt"
+
+msgid "Freifunk Remote Update"
+msgstr "Freifunk Fjernkontrollert Oppgradering"
+
+msgid "Gateway"
+msgstr "Gateway"
+
+msgid "Go to"
+msgstr "Gå til"
+
+msgid "Good (2 < ETX < 4)"
+msgstr ""
+
+msgid "Green"
+msgstr ""
+
+msgid "Hello and welcome in the network of"
+msgstr "Hei og velkommen til nettverket av"
+
+msgid "Hide OpenStreetMap"
+msgstr "Skjul OpenStreetMap"
+
+msgid "Homepage"
+msgstr "Hjemmeside"
+
+msgid "Hostname"
+msgstr "Vertsnavn"
+
+msgid "IPv6 Config"
+msgstr ""
+
+msgid "IPv6 Prefix"
+msgstr ""
+
+msgid "IPv6 network in CIDR notation."
+msgstr ""
+
+msgid "If selected then the default content element is not shown."
+msgstr "Om valgt vises ikke det vanlige innholdselementet"
+
+msgid "If you are interested in our project then contact the local community"
+msgstr ""
+"Hvis du er interessert i prosjektet vårt så ta kontakt med en lokale gruppe "
+"på"
+
+msgid "Index Page"
+msgstr "Indeks Side"
+
+msgid "Interface"
+msgstr "Grensesnitt"
+
+msgid ""
+"Internet access depends on technical and organisational conditions and may "
+"or may not work for you."
+msgstr ""
+"Internett tilgang er avhengig av tekniske og organisatoriske forhold, defor "
+"er det ikke sikkert det fungerer for deg."
+
+msgid "It is operated by"
+msgstr "Det drives av"
+
+msgid "Keep configuration"
+msgstr "Behold konfigurasjonen"
+
+msgid "Latitude"
+msgstr "Breddegrad"
+
+msgid "Legend"
+msgstr ""
+
+msgid "Load"
+msgstr "Last"
+
+msgid "Local Time"
+msgstr "Lokal Tid"
+
+msgid "Location"
+msgstr "Sted"
+
+msgid "Longitude"
+msgstr "Lengdegrad"
+
+msgid "Map"
+msgstr "Kart"
+
+msgid "Map Error"
+msgstr "Kart Feil"
+
+msgid "Memory"
+msgstr "Minne"
+
+msgid "Mesh prefix"
+msgstr "Mesh prefiks"
+
+msgid "Metric"
+msgstr "Metrisk"
+
+msgid "Mode"
+msgstr "Modus"
+
+msgid "Network"
+msgstr "Nettverk"
+
+msgid "Network for client DHCP addresses"
+msgstr "Nettverk for klient DHCP adresser"
+
+msgid "Nickname"
+msgstr "Kallenavn"
+
+msgid "No default routes known."
+msgstr "Ingen standard rute er kjent"
+
+msgid "Notice"
+msgstr "Merknad"
+
+msgid "OLSR"
+msgstr "OLSR"
+
+msgid "Operator"
+msgstr ""
+
+msgid "Orange"
+msgstr ""
+
+msgid "Overview"
+msgstr "Oversikt"
+
+msgid "Package libiwinfo required!"
+msgstr "Pakken libiwinfo er nødvendig!"
+
+msgid "Phone"
+msgstr "Telefon"
+
+msgid "Please fill in your contact details below."
+msgstr "Vennligst fyll ut skjema nedenfor."
+
+msgid "Please set your contact information"
+msgstr "Vennligst oppgi din kontaktinformasjon"
+
+msgid "Power"
+msgstr "Styrke"
+
+msgid "Processor"
+msgstr "Prosessor"
+
+msgid "Profile"
+msgstr "Profil"
+
+msgid "Profile (Expert)"
+msgstr "Profil (Ekspert)"
+
+msgid "Realname"
+msgstr "Virkelig Navn"
+
+msgid "Red"
+msgstr ""
+
+msgid "SSID"
+msgstr "SSID"
+
+msgid ""
+"Select your location with a mouse click on the map. The map will only show "
+"up if you are connected to the Internet."
+msgstr ""
+"Velg din posisjon med et museklikk på kartet. Kartet vises bare om du er "
+"koblet til internett."
+
+msgid "Show OpenStreetMap"
+msgstr "Vis OpenStreetMap"
+
+msgid "Show on map"
+msgstr ""
+
+msgid "Signal"
+msgstr "Signal"
+
+msgid "Splash"
+msgstr ""
+
+msgid "Start Upgrade"
+msgstr "Start Oppgradering"
+
+msgid "Statistics"
+msgstr "Statistikk"
+
+msgid "Status"
+msgstr "Status"
+
+msgid "Still usable (4 < ETX < 10)"
+msgstr ""
+
+msgid "System"
+msgstr "System"
+
+msgid "TX"
+msgstr "TX"
+
+msgid ""
+"The <em>libiwinfo</em> package is not installed. You must install this "
+"component for working wireless configuration!"
+msgstr ""
+
+msgid ""
+"The OLSRd service is not configured to capture position data from the "
+"network.<br /> Please make sure that the nameservice plugin is properly "
+"configured and that the <em>latlon_file</em> option is enabled."
+msgstr ""
+"OLSRd tjenesten er ikke konfigurert til å hente posisjons data fra "
+"nettverket.<br/>Kontroller at navnetjener pluginen er riktig konfigurert og "
+"at <em>latlon_file</em> alternativet er aktivert."
+
+msgid "The installed firmware is the most recent version."
+msgstr "Den installerte firmware er den nyeste versjonen."
+
+msgid ""
+"These are the basic settings for your local wireless community. These "
+"settings define the default values for the wizard and DO NOT affect the "
+"actual configuration of the router."
+msgstr ""
+"Dette er de grunnleggende innstillinger for det lokale trådløse stedet. "
+"Disse innstillingene definerer standard verdiene for veiviseren og vil "
+"derfor IKKE gjøre noen endringer på ruteren."
+
+msgid "These are the settings of your local community."
+msgstr "Dette er innstillingene for det lokale stedet"
+
+msgid ""
+"These pages will assist you in setting up your router for Freifunk or "
+"similar wireless community networks."
+msgstr ""
+"Disse sidene vil hjelpe deg med å sette opp ruteren til for Freifunk og "
+"lignende trådløse nettverk."
+
+msgid "This is the access point"
+msgstr "Dette er aksess punktet"
+
+msgid "Update Settings"
+msgstr "Oppdater Innstillingene"
+
+msgid "Update available!"
+msgstr "Oppdatering tilgjengelig!"
+
+msgid "Uptime"
+msgstr "Oppetid"
+
+msgid "VAP"
+msgstr ""
+
+msgid "Verify downloaded images"
+msgstr "Verifiser nedlastede filer"
+
+msgid "Very good (ETX < 2)"
+msgstr ""
+
+msgid ""
+"We are an initiative to establish a free, independent and open wireless mesh "
+"network."
+msgstr ""
+"Vi er et initiativ for å etablere fri, uavhengig og åpne trådløse mesh-"
+"nettverk."
+
+msgid "Wireless Overview"
+msgstr "Trådløs Oversikt"
+
+msgid "Yellow"
+msgstr ""
+
+msgid ""
+"You can display additional content on the public index page by inserting "
+"valid XHTML in the form below.<br />Headlines should be enclosed between &lt;"
+"h2&gt; and &lt;/h2&gt;."
+msgstr ""
+"Du kan vise ytterligere innhold på den offentlige side ved å legge til "
+"gyldig XHTML med form som vist under.<br />Overskrifter bør legges mellom "
+"&lt;h2&gt; og &lt;/h2&gt;."
+
+msgid ""
+"You can find further information about the global Freifunk initiative at"
+msgstr "Du kan finne mere informasjon om den globale Freifunk initiativ på"
+
+msgid "You can manually edit the selected community profile here."
+msgstr "Du kan manuelt endre den valgte stedsprofilen here"
+
+msgid ""
+"You need to select a profile before you can edit it. To select a profile go "
+"to"
+msgstr ""
+"Du må velge en profil før du kan endre den. For å velge en profil går du til"
+
+msgid "and fill out all required fields."
+msgstr "og fylle ut alle nødvendige felt"
+
+msgid "buffered"
+msgstr "bufret"
+
+msgid "cached"
+msgstr "hurtigbufret"
+
+msgid "e.g."
+msgstr "f.eks."
+
+msgid "free"
+msgstr "tilgjengelig"
+
+msgid "to disable it."
+msgstr "å deaktivere det"
+
+msgid "used"
+msgstr "brukt"
+
+msgid "wireless settings"
+msgstr "trådløse innstillinger"
+
+#~ msgid ""
+#~ "No services can be shown, because olsrd is not running or the olsrd-"
+#~ "nameservice Plugin is not loaded."
+#~ msgstr ""
+#~ "Ingen tjenester kan vises her, dette kan være pga. at olsrd ikke kjører "
+#~ "eller fordi olsrd-navnetjener plugin ikke er lastet."
+
+#~ msgid "Services"
+#~ msgstr "Tjenester"
+
+#~ msgid "Source"
+#~ msgstr "Kilde"
+
+#~ msgid ""
+#~ "The <em>libiwinfo-lua</em> package is not installed. You must install "
+#~ "this component for working wireless configuration!"
+#~ msgstr ""
+#~ "Pakken <em>libiwinfo-lua</em> er ikke installert. Du må installere denne "
+#~ "pakken for å kunne konfigurerer trådløse enheter!"
+
+#~ msgid "Url"
+#~ msgstr "Url"
diff --git a/modules/luci-mod-freifunk/po/pl/freifunk.po b/modules/luci-mod-freifunk/po/pl/freifunk.po
new file mode 100644
index 000000000..ac46e1fd2
--- /dev/null
+++ b/modules/luci-mod-freifunk/po/pl/freifunk.po
@@ -0,0 +1,422 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"PO-Revision-Date: 2014-04-23 19:16+0200\n"
+"Last-Translator: goodgod261 <goodgod261@wp.pl>\n"
+"Language-Team: none\n"
+"Language: pl\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
+"|| n%100>=20) ? 1 : 2);\n"
+"X-Generator: Pootle 2.0.6\n"
+
+msgid "BSSID"
+msgstr "BSSID"
+
+msgid "Bad (ETX > 10)"
+msgstr "Błąd (Etx > 10)"
+
+msgid "Basic Settings"
+msgstr "Ustawienia Podstawowe"
+
+msgid "Basic settings"
+msgstr "Ustawienia podstawowe"
+
+msgid "Basic settings are incomplete. Please go to"
+msgstr "Niekompletne ustawienia podstawowe. Proszę uzupełnić"
+
+msgid "Basic system settings"
+msgstr "Podstawowe ustawienia systemu"
+
+msgid "Bitrate"
+msgstr "Bitrate"
+
+msgid "Channel"
+msgstr "Kanał"
+
+msgid "Check for new firmware versions and perform automatic updates."
+msgstr "Automatycznie sprawdź i uaktualnij wersję firmware`u"
+
+msgid "Client network size"
+msgstr "Rozmiar sieci klientów"
+
+msgid "Community"
+msgstr "Społeczność"
+
+msgid "Community profile"
+msgstr "Profil w społeczności"
+
+msgid "Community settings"
+msgstr "Ustawienia społeczności"
+
+msgid "Confirm Upgrade"
+msgstr "Potwierdź uaktualnienie"
+
+msgid "Contact"
+msgstr "Dane kontaktowe"
+
+msgid "Contact information is incomplete. Please go to"
+msgstr "Dane kontaktowe są niekompletne. Proszę uzupełnij je"
+
+msgid "Coordinates"
+msgstr "Współrzędne"
+
+msgid "Country code"
+msgstr "Prefiks kraju"
+
+msgid "Default routes"
+msgstr "Domyślne trasy (routes)"
+
+msgid "Disable default content"
+msgstr "Wyłącz domyślną zawartość"
+
+# Nie przetłumaczymy tego lepiej.
+msgid "Diversity is enabled for device"
+msgstr "Różnorodność jest włączona dla urządzenia"
+
+msgid "E-Mail"
+msgstr "E-Mail"
+
+msgid "ESSID"
+msgstr "Nazwa sieci (ESSID)"
+
+msgid "Edit index page"
+msgstr "Edytuj stronę główną"
+
+msgid "Enable IPv6"
+msgstr "Włącz IPv6"
+
+msgid "Enable a virtual access point (VAP) by default if possible."
+msgstr ""
+
+msgid "Error"
+msgstr "Błąd"
+
+msgid "Find your coordinates with OpenStreetMap"
+msgstr "Znajdź swoje współrzędne w OpenStreetMap"
+
+msgid "Freifunk"
+msgstr "Freifunk"
+
+msgid "Freifunk Overview"
+msgstr "Przegląd sieci Freifunk"
+
+msgid "Freifunk Remote Update"
+msgstr "Zdalna aktualizacja Freifunk"
+
+msgid "Gateway"
+msgstr "Brama"
+
+msgid "Go to"
+msgstr "Przejdź do"
+
+msgid "Good (2 < ETX < 4)"
+msgstr "Dobrze (2 < ETX < 4)"
+
+msgid "Green"
+msgstr "Zielone"
+
+msgid "Hello and welcome in the network of"
+msgstr "Cześć! Witamy w sieci"
+
+msgid "Hide OpenStreetMap"
+msgstr "Ukryj OpenStreetMap"
+
+msgid "Homepage"
+msgstr "Strona domowa"
+
+msgid "Hostname"
+msgstr "Nazwa hosta"
+
+msgid "IPv6 Config"
+msgstr "Konfiguracja IPv6"
+
+msgid "IPv6 Prefix"
+msgstr "Prefiks IPv6"
+
+msgid "IPv6 network in CIDR notation."
+msgstr "Sieć IPv6 w notacji CIDR"
+
+msgid "If selected then the default content element is not shown."
+msgstr "Jeśli zaznaczone domyślna zawartość nie jest widoczna"
+
+msgid "If you are interested in our project then contact the local community"
+msgstr ""
+"Jeśli jesteś zainteresowany projektem kontaktuj się z lokalna społecznością "
+"Freifunk"
+
+msgid "Index Page"
+msgstr "Strona początkowa"
+
+msgid "Interface"
+msgstr "Interfejs"
+
+msgid ""
+"Internet access depends on technical and organisational conditions and may "
+"or may not work for you."
+msgstr ""
+"Dostęp do internetu zależy od warunków technicznych i organizacyjnych, i "
+"dlatego może nie działać."
+
+msgid "It is operated by"
+msgstr "Jest zarządzany przez"
+
+msgid "Keep configuration"
+msgstr "Zachowaj konfigurację"
+
+msgid "Latitude"
+msgstr "Szerokość"
+
+msgid "Legend"
+msgstr "Legenda"
+
+msgid "Load"
+msgstr "Obciążenie"
+
+msgid "Local Time"
+msgstr "Czas Lokalny"
+
+# Może ktoś ma lepsze słowo?
+msgid "Location"
+msgstr "Lokacja"
+
+msgid "Longitude"
+msgstr "Długość"
+
+msgid "Map"
+msgstr "Mapa"
+
+msgid "Map Error"
+msgstr "Błąd Mapy"
+
+msgid "Memory"
+msgstr "Pamięć"
+
+# Dosłownie prefiks kraty
+msgid "Mesh prefix"
+msgstr "Prefiks komórki"
+
+msgid "Metric"
+msgstr "Metryka"
+
+msgid "Mode"
+msgstr "Tryb"
+
+msgid "Network"
+msgstr "Sieć"
+
+msgid "Network for client DHCP addresses"
+msgstr "Sieć dla adresów klienta DHCP"
+
+msgid "Nickname"
+msgstr "Twoja ksywka"
+
+msgid "No default routes known."
+msgstr "Nie są znane żadne domyślne ścieżki routingu."
+
+msgid "Notice"
+msgstr "Uwaga"
+
+msgid "OLSR"
+msgstr "OLSR"
+
+msgid "Operator"
+msgstr "Zarządca"
+
+msgid "Orange"
+msgstr "Pomarańczowe"
+
+msgid "Overview"
+msgstr "Przegląd"
+
+msgid "Package libiwinfo required!"
+msgstr "Wymagany pakiet libiwinfo !"
+
+msgid "Phone"
+msgstr "Telefon"
+
+msgid "Please fill in your contact details below."
+msgstr "Proszę uzupełnij dane kontaktowe poniżej."
+
+msgid "Please set your contact information"
+msgstr "Proszę uzupełnić swoje dane kontaktowe"
+
+msgid "Power"
+msgstr "Moc"
+
+msgid "Processor"
+msgstr "Procesor"
+
+msgid "Profile"
+msgstr "Profil"
+
+msgid "Profile (Expert)"
+msgstr "Profil (tryb eksperta)"
+
+msgid "Realname"
+msgstr "Imię i Nazwisko (prawdziwe)"
+
+msgid "Red"
+msgstr "Czerwone"
+
+msgid "SSID"
+msgstr "SSID"
+
+msgid ""
+"Select your location with a mouse click on the map. The map will only show "
+"up if you are connected to the Internet."
+msgstr ""
+"Proszę zaznaczyć swoją lokację na mapie. Mapa jest pokazywana tylko jeśli "
+"masz dostęp do internetu."
+
+msgid "Show OpenStreetMap"
+msgstr "Pokaż OpenStreetMap"
+
+msgid "Show on map"
+msgstr "Pokaż na mapie"
+
+msgid "Signal"
+msgstr "Sygnał"
+
+msgid "Splash"
+msgstr "Splash"
+
+msgid "Start Upgrade"
+msgstr "Zacznij aktualizację"
+
+msgid "Statistics"
+msgstr "Statystyki"
+
+msgid "Status"
+msgstr "Status"
+
+msgid "Still usable (4 < ETX < 10)"
+msgstr "Cały Czas do użycia (4 < ETX < 10)"
+
+msgid "System"
+msgstr "System"
+
+msgid "TX"
+msgstr "TX"
+
+msgid ""
+"The <em>libiwinfo</em> package is not installed. You must install this "
+"component for working wireless configuration!"
+msgstr ""
+"Pakiet <em>libiwinfo</em> nie jest zainstalowany. Musisz go zainstalować, "
+"aby konfiguracja sieci bezprzewodowej mogła być uaktywniona!"
+
+msgid ""
+"The OLSRd service is not configured to capture position data from the "
+"network.<br /> Please make sure that the nameservice plugin is properly "
+"configured and that the <em>latlon_file</em> option is enabled."
+msgstr ""
+"Usługa OLSRd nie jest skonfigurowana do pozyskiwania nazwy z sieci.<br /> "
+"Proszę się upewnić, że plugin nameservice jest poprawnie skonfigurowany, "
+"oraz opcja użycia pliku <em>latlon_file</em> jest zaznaczona."
+
+msgid "The installed firmware is the most recent version."
+msgstr "Zainstalowany firmware jest aktualny."
+
+msgid ""
+"These are the basic settings for your local wireless community. These "
+"settings define the default values for the wizard and DO NOT affect the "
+"actual configuration of the router."
+msgstr ""
+"Są to podstawowe ustawienia dla twojej lokalnej bezprzewodowej społeczności. "
+"Te ustawienia określają domyślne wartości dla kreatora i NIE MAJĄ wpływu na "
+"aktualną konfigurację routera."
+
+msgid "These are the settings of your local community."
+msgstr "To są ustawienia twojej lokalnej społeczności (community)."
+
+msgid ""
+"These pages will assist you in setting up your router for Freifunk or "
+"similar wireless community networks."
+msgstr ""
+"Te strony pomogą ci skonfigurować twój router do sieci Freifunk, lub innej "
+"sieci społecznościowej ."
+
+msgid "This is the access point"
+msgstr "To jest punk dostępowy (AP)"
+
+msgid "Update Settings"
+msgstr "Uaktualnij ustawienia"
+
+msgid "Update available!"
+msgstr "Aktualizacja dostępna!!!"
+
+msgid "Uptime"
+msgstr "Aktualizacja"
+
+msgid "VAP"
+msgstr ""
+
+msgid "Verify downloaded images"
+msgstr "Sprawdź pobrane obrazy"
+
+msgid "Very good (ETX < 2)"
+msgstr "Bardzo Dobrze (ETX < 2)"
+
+msgid ""
+"We are an initiative to establish a free, independent and open wireless mesh "
+"network."
+msgstr ""
+"Jesteśmy inicjatywą na rzecz ustanowienia wolnej, niezależnej i otwartej "
+"bezprzewodowej siatki kratowej."
+
+msgid "Wireless Overview"
+msgstr "Przegląd Ustawień WiFi"
+
+msgid "Yellow"
+msgstr "Żółty"
+
+msgid ""
+"You can display additional content on the public index page by inserting "
+"valid XHTML in the form below.<br />Headlines should be enclosed between &lt;"
+"h2&gt; and &lt;/h2&gt;."
+msgstr ""
+"Można wyświetlić dodatkową zawartość na publicznej stronie indeksu "
+"wstawiając poprawny XHTML do formularza poniżej.<br />Nagłówki powinny być "
+"zamknięte tagami &lt;h2&gt; i &lt;/h2&gt;."
+
+msgid ""
+"You can find further information about the global Freifunk initiative at"
+msgstr ""
+"Możesz znaleźć więcej informacji o naszej globalnej inicjatywie Freifunk na"
+
+msgid "You can manually edit the selected community profile here."
+msgstr "Możesz ręcznie edytować wybrany profil społeczności tutaj"
+
+msgid ""
+"You need to select a profile before you can edit it. To select a profile go "
+"to"
+msgstr ""
+"Aby edytować profil musisz go najpierw zaznaczyć. Zaznacz profil aby "
+"kontynuować"
+
+msgid "and fill out all required fields."
+msgstr "i wypełnij wszystkie wymagane pola."
+
+msgid "buffered"
+msgstr "buforowany"
+
+msgid "cached"
+msgstr "cachowany"
+
+msgid "e.g."
+msgstr "np."
+
+msgid "free"
+msgstr "darmowy"
+
+msgid "to disable it."
+msgstr "aby wyłączyć"
+
+msgid "used"
+msgstr "używany"
+
+msgid "wireless settings"
+msgstr "ustawienia sieci bezprzewodowej"
diff --git a/modules/luci-mod-freifunk/po/pt-br/freifunk.po b/modules/luci-mod-freifunk/po/pt-br/freifunk.po
new file mode 100644
index 000000000..a906a937b
--- /dev/null
+++ b/modules/luci-mod-freifunk/po/pt-br/freifunk.po
@@ -0,0 +1,447 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2009-06-10 03:41+0200\n"
+"PO-Revision-Date: 2014-06-21 19:00+0200\n"
+"Last-Translator: Éder <eder.grigorio@openmailbox.org>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: pt_BR\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+"X-Generator: Pootle 2.0.6\n"
+
+msgid "BSSID"
+msgstr "BSSID"
+
+msgid "Bad (ETX > 10)"
+msgstr "Mal (ETX > 10)"
+
+msgid "Basic Settings"
+msgstr "Configurações Básicas"
+
+msgid "Basic settings"
+msgstr "Configurações básicas"
+
+msgid "Basic settings are incomplete. Please go to"
+msgstr "As configurações básicas estão incompletas. Por favor vá para"
+
+msgid "Basic system settings"
+msgstr "Configurações básicas do sistema"
+
+msgid "Bitrate"
+msgstr "Taxa de bit"
+
+msgid "Channel"
+msgstr "Canal"
+
+msgid "Check for new firmware versions and perform automatic updates."
+msgstr ""
+"Verifique a existência de novas versões e realize a atualização "
+"automaticamente."
+
+msgid "Client network size"
+msgstr "Tamanho da rede dos clientes"
+
+msgid "Community"
+msgstr "Comunidade"
+
+msgid "Community profile"
+msgstr "Perfil da comunidade"
+
+msgid "Community settings"
+msgstr "Configurações da comunidade"
+
+msgid "Confirm Upgrade"
+msgstr "Confirmar a atualização"
+
+msgid "Contact"
+msgstr "Contato"
+
+msgid "Contact information is incomplete. Please go to"
+msgstr "A informação de contato está incompleta. Por favor, vá para"
+
+msgid "Coordinates"
+msgstr "Coordenadas"
+
+msgid "Country code"
+msgstr "Código do país"
+
+msgid "Default routes"
+msgstr "Rotas padrão"
+
+msgid "Disable default content"
+msgstr "Desabilitar o conteúdo padrão"
+
+msgid "Diversity is enabled for device"
+msgstr "A diversidade está habilitada neste dispositivo"
+
+msgid "E-Mail"
+msgstr "E-mail"
+
+msgid "ESSID"
+msgstr "ESSID"
+
+msgid "Edit index page"
+msgstr "Edita a página índice"
+
+msgid "Enable IPv6"
+msgstr "Habilitar IPv6"
+
+# 20140621: edersg: tradução
+msgid "Enable a virtual access point (VAP) by default if possible."
+msgstr "Habilitar um ponto de acesso virtual (VAP) por padrão, se possível"
+
+msgid "Error"
+msgstr "Erro"
+
+msgid "Find your coordinates with OpenStreetMap"
+msgstr "Encontre sua coordenada com o OpenStreetMap"
+
+msgid "Freifunk"
+msgstr "Freifunk"
+
+msgid "Freifunk Overview"
+msgstr "Visão Geral do Freifunk"
+
+msgid "Freifunk Remote Update"
+msgstr "Atualização Remota do Freifunk"
+
+msgid "Gateway"
+msgstr "Roteador"
+
+msgid "Go to"
+msgstr "Vá para"
+
+msgid "Good (2 < ETX < 4)"
+msgstr "Bom (2 < ETX < 4)"
+
+msgid "Green"
+msgstr "Verde"
+
+msgid "Hello and welcome in the network of"
+msgstr "Olá e seja bem-vindo à rede do"
+
+msgid "Hide OpenStreetMap"
+msgstr "Esconder o OpenStreetMap"
+
+msgid "Homepage"
+msgstr "Página"
+
+msgid "Hostname"
+msgstr "Nome do equipamento"
+
+msgid "IPv6 Config"
+msgstr "Configuração IPv6"
+
+msgid "IPv6 Prefix"
+msgstr "Prefixo IPv6"
+
+msgid "IPv6 network in CIDR notation."
+msgstr "Rede IPv6 em notação CIDR."
+
+msgid "If selected then the default content element is not shown."
+msgstr "Se selecionado, o conteúdo padrão não é mostrado."
+
+msgid "If you are interested in our project then contact the local community"
+msgstr ""
+"Se estiver interessado no nosso projeto, entre em contacto com a comunidade "
+"local"
+
+msgid "Index Page"
+msgstr "Página Índice"
+
+msgid "Interface"
+msgstr "Interface"
+
+msgid ""
+"Internet access depends on technical and organisational conditions and may "
+"or may not work for you."
+msgstr ""
+"O acesso à Internet depende de fatores técnicos e organizacionais, e pode "
+"funcionar ou não no seu caso."
+
+msgid "It is operated by"
+msgstr "É operado por"
+
+msgid "Keep configuration"
+msgstr "Manter a configuração"
+
+msgid "Latitude"
+msgstr "Latitude"
+
+msgid "Legend"
+msgstr "Legenda"
+
+msgid "Load"
+msgstr "Carregar"
+
+msgid "Local Time"
+msgstr "Horário Local"
+
+msgid "Location"
+msgstr "Localização"
+
+msgid "Longitude"
+msgstr "Longitude"
+
+msgid "Map"
+msgstr "Mapa"
+
+msgid "Map Error"
+msgstr "Erro do Mapa"
+
+msgid "Memory"
+msgstr "Memória"
+
+msgid "Mesh prefix"
+msgstr "Prefixo da rede em malha"
+
+msgid "Metric"
+msgstr "Métrica"
+
+msgid "Mode"
+msgstr "Modo"
+
+msgid "Network"
+msgstr "Rede"
+
+msgid "Network for client DHCP addresses"
+msgstr "Rede para os endereços dos clientes DHCP"
+
+msgid "Nickname"
+msgstr "Apelido"
+
+msgid "No default routes known."
+msgstr "Nenhuma rota padrão conhecida."
+
+msgid "Notice"
+msgstr "Aviso"
+
+msgid "OLSR"
+msgstr "OLSR"
+
+msgid "Operator"
+msgstr "Operador"
+
+msgid "Orange"
+msgstr "Laranja"
+
+msgid "Overview"
+msgstr "Visão Geral"
+
+msgid "Package libiwinfo required!"
+msgstr "O pacote libiwinfo é necessário!"
+
+msgid "Phone"
+msgstr "Telefone"
+
+msgid "Please fill in your contact details below."
+msgstr "Por favor, preencha seus detalhes de contato abaixo."
+
+msgid "Please set your contact information"
+msgstr "Por favor, defina a informação de contato"
+
+msgid "Power"
+msgstr "Potência"
+
+msgid "Processor"
+msgstr "Processador"
+
+msgid "Profile"
+msgstr "Perfil"
+
+msgid "Profile (Expert)"
+msgstr "Perfil (Especialista)"
+
+msgid "Realname"
+msgstr "Nome Real"
+
+msgid "Red"
+msgstr "Vermelho"
+
+msgid "SSID"
+msgstr "SSID"
+
+msgid ""
+"Select your location with a mouse click on the map. The map will only show "
+"up if you are connected to the Internet."
+msgstr ""
+"Selecione a sua localização com o mouse clicando no mapa. O mapa irá mostrar "
+"se você está conectado na internet."
+
+msgid "Show OpenStreetMap"
+msgstr "Mostrar o OpenStreetMap"
+
+msgid "Show on map"
+msgstr "Mostrar no mapa"
+
+msgid "Signal"
+msgstr "Sinal"
+
+msgid "Splash"
+msgstr "Splash"
+
+msgid "Start Upgrade"
+msgstr "Iniciar a Atualização"
+
+msgid "Statistics"
+msgstr "Estatística"
+
+msgid "Status"
+msgstr "Estado"
+
+msgid "Still usable (4 < ETX < 10)"
+msgstr "Ainda usável (4 < ETX < 10)"
+
+msgid "System"
+msgstr "Sistema"
+
+msgid "TX"
+msgstr "TX"
+
+msgid ""
+"The <em>libiwinfo</em> package is not installed. You must install this "
+"component for working wireless configuration!"
+msgstr ""
+"O pacote <em>libiwinfo</em> não está instalado. Você precisa instalar este "
+"componente para ter uma configuração sem fio funcional!"
+
+msgid ""
+"The OLSRd service is not configured to capture position data from the "
+"network.<br /> Please make sure that the nameservice plugin is properly "
+"configured and that the <em>latlon_file</em> option is enabled."
+msgstr ""
+"O serviço OLSRd não está configurado para capturar os dados de posição da "
+"rede.<br /> Por favor, garnta que o plugin nameservice está corretametne "
+"configurado e que a opção <em>latlon_file</em> está habilitada."
+
+msgid "The installed firmware is the most recent version."
+msgstr "O firmware instalado é a última versão."
+
+msgid ""
+"These are the basic settings for your local wireless community. These "
+"settings define the default values for the wizard and DO NOT affect the "
+"actual configuration of the router."
+msgstr ""
+"Estas são as configurações básicas para a comunidade sem fio local. Estas "
+"configurações definem os valores padrão para o assistente e NÃO afetam a "
+"configuração atual do roteador."
+
+msgid "These are the settings of your local community."
+msgstr "Estas são as configurações da sua comunidade local."
+
+msgid ""
+"These pages will assist you in setting up your router for Freifunk or "
+"similar wireless community networks."
+msgstr ""
+"Esta página ajudará você na configuração do seu roteador Freifunk ou de "
+"redes comunitárias sem fio similares."
+
+msgid "This is the access point"
+msgstr "Este é o ponto de acesso "
+
+msgid "Update Settings"
+msgstr "Configurações da Atualização"
+
+msgid "Update available!"
+msgstr "Existe uma atualização disponível!"
+
+msgid "Uptime"
+msgstr "Tempo de atividade"
+
+# 20140621: edersg: tradução
+msgid "VAP"
+msgstr "VAP"
+
+msgid "Verify downloaded images"
+msgstr "Verifique as imagens baixadas"
+
+msgid "Very good (ETX < 2)"
+msgstr "Muito bom (ETX < 2)"
+
+msgid ""
+"We are an initiative to establish a free, independent and open wireless mesh "
+"network."
+msgstr ""
+"Somos uma iniciativa para implementação de uma rede sem fio em malha livre, "
+"independente e não-comercial."
+
+msgid "Wireless Overview"
+msgstr "Visão Geral da Rede Sem Fio"
+
+msgid "Yellow"
+msgstr "Amarelo"
+
+msgid ""
+"You can display additional content on the public index page by inserting "
+"valid XHTML in the form below.<br />Headlines should be enclosed between &lt;"
+"h2&gt; and &lt;/h2&gt;."
+msgstr ""
+"Você pode mostrar conteúdo adicional na página índice pública inserindo "
+"XHTML válido no formulário abaixo.<br />As manchetes devem ficam entre &lt;"
+"h2&gt; e &lt;/h2&gt;."
+
+msgid ""
+"You can find further information about the global Freifunk initiative at"
+msgstr ""
+"Você pode encontrar mais informações sobre a iniciativa global Freifunk em"
+
+msgid "You can manually edit the selected community profile here."
+msgstr "Você pode editar manualmente o perfil da comunidade selecionada aqui."
+
+msgid ""
+"You need to select a profile before you can edit it. To select a profile go "
+"to"
+msgstr ""
+"Você precisa selecionar um perfil antes de poder editá-lo. Para selecionar "
+"um perfil, vá para"
+
+msgid "and fill out all required fields."
+msgstr "e preencher todos os campos obrigatórios."
+
+msgid "buffered"
+msgstr "no Buffer"
+
+msgid "cached"
+msgstr "no Cache"
+
+msgid "e.g."
+msgstr "ex:"
+
+msgid "free"
+msgstr "livre"
+
+msgid "to disable it."
+msgstr "para desabilitá-lo."
+
+msgid "used"
+msgstr "usado"
+
+msgid "wireless settings"
+msgstr "configurações da rede sem fio"
+
+#~ msgid ""
+#~ "No services can be shown, because olsrd is not running or the olsrd-"
+#~ "nameservice Plugin is not loaded."
+#~ msgstr ""
+#~ "Nenhum serviço pode ser mostrado porque o olsrd não está rodando ou o "
+#~ "plugin do olsrd-nameservice não está carregado."
+
+#~ msgid "Services"
+#~ msgstr "Serviços"
+
+#~ msgid "Source"
+#~ msgstr "Origem"
+
+#~ msgid ""
+#~ "The <em>libiwinfo-lua</em> package is not installed. You must install "
+#~ "this component for working wireless configuration!"
+#~ msgstr ""
+#~ "O pacote <em>libiwinfo-lua</em> não está instalado. Você deve instalar "
+#~ "este componente para ter uma configuração sem fio funcional!"
+
+#~ msgid "Url"
+#~ msgstr "URL"
diff --git a/modules/luci-mod-freifunk/po/pt/freifunk.po b/modules/luci-mod-freifunk/po/pt/freifunk.po
new file mode 100644
index 000000000..b5b822b88
--- /dev/null
+++ b/modules/luci-mod-freifunk/po/pt/freifunk.po
@@ -0,0 +1,401 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2009-05-26 19:03+0200\n"
+"PO-Revision-Date: 2009-05-19 17:33+0200\n"
+"Last-Translator: Jose Monteiro <jm@unimos.net>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Pootle 1.1.0\n"
+
+msgid "BSSID"
+msgstr ""
+
+msgid "Bad (ETX > 10)"
+msgstr ""
+
+msgid "Basic Settings"
+msgstr ""
+
+msgid "Basic settings"
+msgstr ""
+
+msgid "Basic settings are incomplete. Please go to"
+msgstr ""
+
+msgid "Basic system settings"
+msgstr ""
+
+msgid "Bitrate"
+msgstr ""
+
+msgid "Channel"
+msgstr ""
+
+msgid "Check for new firmware versions and perform automatic updates."
+msgstr ""
+
+msgid "Client network size"
+msgstr ""
+
+msgid "Community"
+msgstr ""
+
+msgid "Community profile"
+msgstr ""
+
+msgid "Community settings"
+msgstr ""
+
+msgid "Confirm Upgrade"
+msgstr ""
+
+msgid "Contact"
+msgstr ""
+
+msgid "Contact information is incomplete. Please go to"
+msgstr ""
+
+msgid "Coordinates"
+msgstr "Coordenadas"
+
+msgid "Country code"
+msgstr ""
+
+msgid "Default routes"
+msgstr ""
+
+msgid "Disable default content"
+msgstr ""
+
+msgid "Diversity is enabled for device"
+msgstr ""
+
+msgid "E-Mail"
+msgstr "email"
+
+msgid "ESSID"
+msgstr ""
+
+msgid "Edit index page"
+msgstr ""
+
+msgid "Enable IPv6"
+msgstr ""
+
+msgid "Enable a virtual access point (VAP) by default if possible."
+msgstr ""
+
+msgid "Error"
+msgstr ""
+
+msgid "Find your coordinates with OpenStreetMap"
+msgstr ""
+
+msgid "Freifunk"
+msgstr ""
+
+msgid "Freifunk Overview"
+msgstr ""
+
+msgid "Freifunk Remote Update"
+msgstr ""
+
+msgid "Gateway"
+msgstr ""
+
+msgid "Go to"
+msgstr ""
+
+msgid "Good (2 < ETX < 4)"
+msgstr ""
+
+msgid "Green"
+msgstr ""
+
+msgid "Hello and welcome in the network of"
+msgstr "Olá e benvindo à rede "
+
+msgid "Hide OpenStreetMap"
+msgstr ""
+
+msgid "Homepage"
+msgstr ""
+
+msgid "Hostname"
+msgstr ""
+
+msgid "IPv6 Config"
+msgstr ""
+
+msgid "IPv6 Prefix"
+msgstr ""
+
+msgid "IPv6 network in CIDR notation."
+msgstr ""
+
+msgid "If selected then the default content element is not shown."
+msgstr ""
+
+msgid "If you are interested in our project then contact the local community"
+msgstr ""
+"Se estiver interessado no nosso projecto, entre em contacto com a sua "
+"comunidade local"
+
+msgid "Index Page"
+msgstr ""
+
+msgid "Interface"
+msgstr ""
+
+msgid ""
+"Internet access depends on technical and organisational conditions and may "
+"or may not work for you."
+msgstr ""
+"O acesso à Internet depende de factores técnicos e organizacionais, e pode "
+"funcionar ou não no seu caso."
+
+msgid "It is operated by"
+msgstr "É operado por "
+
+msgid "Keep configuration"
+msgstr ""
+
+msgid "Latitude"
+msgstr ""
+
+msgid "Legend"
+msgstr ""
+
+msgid "Load"
+msgstr ""
+
+msgid "Local Time"
+msgstr ""
+
+msgid "Location"
+msgstr "Localização"
+
+msgid "Longitude"
+msgstr ""
+
+msgid "Map"
+msgstr ""
+
+msgid "Map Error"
+msgstr ""
+
+msgid "Memory"
+msgstr "Memória"
+
+msgid "Mesh prefix"
+msgstr ""
+
+msgid "Metric"
+msgstr ""
+
+msgid "Mode"
+msgstr ""
+
+msgid "Network"
+msgstr ""
+
+msgid "Network for client DHCP addresses"
+msgstr ""
+
+msgid "Nickname"
+msgstr "Nome curto (nick)"
+
+msgid "No default routes known."
+msgstr ""
+
+msgid "Notice"
+msgstr "Notas"
+
+msgid "OLSR"
+msgstr ""
+
+msgid "Operator"
+msgstr ""
+
+msgid "Orange"
+msgstr ""
+
+msgid "Overview"
+msgstr ""
+
+msgid "Package libiwinfo required!"
+msgstr ""
+
+msgid "Phone"
+msgstr "Telefone"
+
+msgid "Please fill in your contact details below."
+msgstr ""
+
+msgid "Please set your contact information"
+msgstr ""
+
+msgid "Power"
+msgstr ""
+
+msgid "Processor"
+msgstr ""
+
+msgid "Profile"
+msgstr ""
+
+msgid "Profile (Expert)"
+msgstr ""
+
+msgid "Realname"
+msgstr "Nome"
+
+msgid "Red"
+msgstr ""
+
+msgid "SSID"
+msgstr ""
+
+msgid ""
+"Select your location with a mouse click on the map. The map will only show "
+"up if you are connected to the Internet."
+msgstr ""
+
+msgid "Show OpenStreetMap"
+msgstr ""
+
+msgid "Show on map"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "Splash"
+msgstr ""
+
+msgid "Start Upgrade"
+msgstr ""
+
+msgid "Statistics"
+msgstr ""
+
+msgid "Status"
+msgstr ""
+
+msgid "Still usable (4 < ETX < 10)"
+msgstr ""
+
+msgid "System"
+msgstr ""
+
+msgid "TX"
+msgstr ""
+
+msgid ""
+"The <em>libiwinfo</em> package is not installed. You must install this "
+"component for working wireless configuration!"
+msgstr ""
+
+msgid ""
+"The OLSRd service is not configured to capture position data from the "
+"network.<br /> Please make sure that the nameservice plugin is properly "
+"configured and that the <em>latlon_file</em> option is enabled."
+msgstr ""
+
+msgid "The installed firmware is the most recent version."
+msgstr ""
+
+msgid ""
+"These are the basic settings for your local wireless community. These "
+"settings define the default values for the wizard and DO NOT affect the "
+"actual configuration of the router."
+msgstr ""
+
+msgid "These are the settings of your local community."
+msgstr ""
+
+msgid ""
+"These pages will assist you in setting up your router for Freifunk or "
+"similar wireless community networks."
+msgstr ""
+
+msgid "This is the access point"
+msgstr "Este é o ponto de acesso "
+
+msgid "Update Settings"
+msgstr ""
+
+msgid "Update available!"
+msgstr ""
+
+msgid "Uptime"
+msgstr ""
+
+msgid "VAP"
+msgstr ""
+
+msgid "Verify downloaded images"
+msgstr ""
+
+msgid "Very good (ETX < 2)"
+msgstr ""
+
+msgid ""
+"We are an initiative to establish a free, independent and open wireless mesh "
+"network."
+msgstr ""
+"Somos uma iniciativa para implementação de uma rede livre, independente e "
+"não-comercial."
+
+msgid "Wireless Overview"
+msgstr ""
+
+msgid "Yellow"
+msgstr ""
+
+msgid ""
+"You can display additional content on the public index page by inserting "
+"valid XHTML in the form below.<br />Headlines should be enclosed between &lt;"
+"h2&gt; and &lt;/h2&gt;."
+msgstr ""
+
+msgid ""
+"You can find further information about the global Freifunk initiative at"
+msgstr "Pode encontrar mais informações sobre a iniciativa global Freifunk em "
+
+msgid "You can manually edit the selected community profile here."
+msgstr ""
+
+msgid ""
+"You need to select a profile before you can edit it. To select a profile go "
+"to"
+msgstr ""
+
+msgid "and fill out all required fields."
+msgstr ""
+
+msgid "buffered"
+msgstr ""
+
+msgid "cached"
+msgstr ""
+
+msgid "e.g."
+msgstr ""
+
+msgid "free"
+msgstr ""
+
+msgid "to disable it."
+msgstr ""
+
+msgid "used"
+msgstr ""
+
+msgid "wireless settings"
+msgstr ""
diff --git a/modules/luci-mod-freifunk/po/ro/freifunk.po b/modules/luci-mod-freifunk/po/ro/freifunk.po
new file mode 100644
index 000000000..408abd8de
--- /dev/null
+++ b/modules/luci-mod-freifunk/po/ro/freifunk.po
@@ -0,0 +1,395 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"PO-Revision-Date: 2014-06-29 19:53+0200\n"
+"Last-Translator: xxvirusxx <condor20_05@yahoo.it>\n"
+"Language-Team: none\n"
+"Language: ro\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < "
+"20)) ? 1 : 2);;\n"
+"X-Generator: Pootle 2.0.6\n"
+
+msgid "BSSID"
+msgstr "BSSID"
+
+msgid "Bad (ETX > 10)"
+msgstr ""
+
+msgid "Basic Settings"
+msgstr "Setări de bază"
+
+msgid "Basic settings"
+msgstr "Setări de bază"
+
+msgid "Basic settings are incomplete. Please go to"
+msgstr "Setările de bază sunt incomplete. Mergi la"
+
+msgid "Basic system settings"
+msgstr ""
+
+msgid "Bitrate"
+msgstr ""
+
+msgid "Channel"
+msgstr "Canal"
+
+msgid "Check for new firmware versions and perform automatic updates."
+msgstr ""
+
+msgid "Client network size"
+msgstr ""
+
+msgid "Community"
+msgstr "Comunitate"
+
+msgid "Community profile"
+msgstr ""
+
+msgid "Community settings"
+msgstr ""
+
+msgid "Confirm Upgrade"
+msgstr ""
+
+msgid "Contact"
+msgstr "Contact"
+
+msgid "Contact information is incomplete. Please go to"
+msgstr ""
+
+msgid "Coordinates"
+msgstr "Coordonate"
+
+msgid "Country code"
+msgstr ""
+
+msgid "Default routes"
+msgstr ""
+
+msgid "Disable default content"
+msgstr ""
+
+msgid "Diversity is enabled for device"
+msgstr ""
+
+msgid "E-Mail"
+msgstr ""
+
+msgid "ESSID"
+msgstr ""
+
+msgid "Edit index page"
+msgstr ""
+
+msgid "Enable IPv6"
+msgstr "Activează IPv6"
+
+msgid "Enable a virtual access point (VAP) by default if possible."
+msgstr ""
+
+msgid "Error"
+msgstr "Eroare"
+
+msgid "Find your coordinates with OpenStreetMap"
+msgstr ""
+
+msgid "Freifunk"
+msgstr ""
+
+msgid "Freifunk Overview"
+msgstr ""
+
+msgid "Freifunk Remote Update"
+msgstr ""
+
+msgid "Gateway"
+msgstr ""
+
+msgid "Go to"
+msgstr "Du-te la"
+
+msgid "Good (2 < ETX < 4)"
+msgstr ""
+
+msgid "Green"
+msgstr "Verde"
+
+msgid "Hello and welcome in the network of"
+msgstr ""
+
+msgid "Hide OpenStreetMap"
+msgstr ""
+
+msgid "Homepage"
+msgstr ""
+
+msgid "Hostname"
+msgstr ""
+
+msgid "IPv6 Config"
+msgstr ""
+
+msgid "IPv6 Prefix"
+msgstr ""
+
+msgid "IPv6 network in CIDR notation."
+msgstr ""
+
+msgid "If selected then the default content element is not shown."
+msgstr ""
+
+msgid "If you are interested in our project then contact the local community"
+msgstr ""
+
+msgid "Index Page"
+msgstr ""
+
+msgid "Interface"
+msgstr "Interfaţă"
+
+msgid ""
+"Internet access depends on technical and organisational conditions and may "
+"or may not work for you."
+msgstr ""
+
+msgid "It is operated by"
+msgstr ""
+
+msgid "Keep configuration"
+msgstr "Păstrează configuraţia"
+
+msgid "Latitude"
+msgstr "Latitudine"
+
+msgid "Legend"
+msgstr "Legendă"
+
+msgid "Load"
+msgstr "Încarcă"
+
+msgid "Local Time"
+msgstr "Oră locală"
+
+msgid "Location"
+msgstr "Locaţie"
+
+msgid "Longitude"
+msgstr "Longitudine"
+
+msgid "Map"
+msgstr "Hartă"
+
+msgid "Map Error"
+msgstr "Eroare hartă"
+
+msgid "Memory"
+msgstr "Memorie"
+
+msgid "Mesh prefix"
+msgstr ""
+
+msgid "Metric"
+msgstr ""
+
+msgid "Mode"
+msgstr "Mod"
+
+msgid "Network"
+msgstr "Reţea"
+
+msgid "Network for client DHCP addresses"
+msgstr ""
+
+msgid "Nickname"
+msgstr "Poreclă"
+
+msgid "No default routes known."
+msgstr ""
+
+msgid "Notice"
+msgstr ""
+
+msgid "OLSR"
+msgstr ""
+
+msgid "Operator"
+msgstr ""
+
+msgid "Orange"
+msgstr "Portocaliu"
+
+msgid "Overview"
+msgstr ""
+
+msgid "Package libiwinfo required!"
+msgstr ""
+
+msgid "Phone"
+msgstr "Telefon"
+
+msgid "Please fill in your contact details below."
+msgstr ""
+
+msgid "Please set your contact information"
+msgstr ""
+
+msgid "Power"
+msgstr "Putere"
+
+msgid "Processor"
+msgstr "Procesor"
+
+msgid "Profile"
+msgstr "Profil"
+
+msgid "Profile (Expert)"
+msgstr ""
+
+msgid "Realname"
+msgstr "Nume real"
+
+msgid "Red"
+msgstr "Roşu"
+
+msgid "SSID"
+msgstr "SSID"
+
+msgid ""
+"Select your location with a mouse click on the map. The map will only show "
+"up if you are connected to the Internet."
+msgstr ""
+
+msgid "Show OpenStreetMap"
+msgstr ""
+
+msgid "Show on map"
+msgstr "Arată pe hartă"
+
+msgid "Signal"
+msgstr "Semnal"
+
+msgid "Splash"
+msgstr ""
+
+msgid "Start Upgrade"
+msgstr ""
+
+msgid "Statistics"
+msgstr "Statistici"
+
+msgid "Status"
+msgstr "Stare"
+
+msgid "Still usable (4 < ETX < 10)"
+msgstr ""
+
+msgid "System"
+msgstr ""
+
+msgid "TX"
+msgstr ""
+
+msgid ""
+"The <em>libiwinfo</em> package is not installed. You must install this "
+"component for working wireless configuration!"
+msgstr ""
+
+msgid ""
+"The OLSRd service is not configured to capture position data from the "
+"network.<br /> Please make sure that the nameservice plugin is properly "
+"configured and that the <em>latlon_file</em> option is enabled."
+msgstr ""
+
+msgid "The installed firmware is the most recent version."
+msgstr "Firmware-ul instalat este cea mai recentă versiune."
+
+msgid ""
+"These are the basic settings for your local wireless community. These "
+"settings define the default values for the wizard and DO NOT affect the "
+"actual configuration of the router."
+msgstr ""
+
+msgid "These are the settings of your local community."
+msgstr ""
+
+msgid ""
+"These pages will assist you in setting up your router for Freifunk or "
+"similar wireless community networks."
+msgstr ""
+
+msgid "This is the access point"
+msgstr ""
+
+msgid "Update Settings"
+msgstr ""
+
+msgid "Update available!"
+msgstr ""
+
+msgid "Uptime"
+msgstr ""
+
+msgid "VAP"
+msgstr ""
+
+msgid "Verify downloaded images"
+msgstr ""
+
+msgid "Very good (ETX < 2)"
+msgstr ""
+
+msgid ""
+"We are an initiative to establish a free, independent and open wireless mesh "
+"network."
+msgstr ""
+
+msgid "Wireless Overview"
+msgstr ""
+
+msgid "Yellow"
+msgstr "Galben"
+
+msgid ""
+"You can display additional content on the public index page by inserting "
+"valid XHTML in the form below.<br />Headlines should be enclosed between &lt;"
+"h2&gt; and &lt;/h2&gt;."
+msgstr ""
+
+msgid ""
+"You can find further information about the global Freifunk initiative at"
+msgstr ""
+
+msgid "You can manually edit the selected community profile here."
+msgstr ""
+
+msgid ""
+"You need to select a profile before you can edit it. To select a profile go "
+"to"
+msgstr ""
+
+msgid "and fill out all required fields."
+msgstr "şi completaţi toate câmpurile"
+
+msgid "buffered"
+msgstr ""
+
+msgid "cached"
+msgstr ""
+
+msgid "e.g."
+msgstr "ex."
+
+msgid "free"
+msgstr "liber"
+
+msgid "to disable it."
+msgstr ""
+
+msgid "used"
+msgstr "folosit"
+
+msgid "wireless settings"
+msgstr "setări wireless"
diff --git a/modules/luci-mod-freifunk/po/ru/freifunk.po b/modules/luci-mod-freifunk/po/ru/freifunk.po
new file mode 100644
index 000000000..0943a3b48
--- /dev/null
+++ b/modules/luci-mod-freifunk/po/ru/freifunk.po
@@ -0,0 +1,451 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: LuCI: freifunk\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2009-05-19 19:36+0200\n"
+"PO-Revision-Date: 2013-09-06 09:41+0200\n"
+"Last-Translator: datasheet <michael.gritsaenko@gmail.com>\n"
+"Language-Team: Russian <x12ozmouse@ya.ru>\n"
+"Language: ru\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%"
+"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+"X-Generator: Pootle 2.0.6\n"
+"X-Poedit-SourceCharset: UTF-8\n"
+
+msgid "BSSID"
+msgstr "BSSID"
+
+msgid "Bad (ETX > 10)"
+msgstr "Плохой (ETX > 10)"
+
+msgid "Basic Settings"
+msgstr "Базовые настройки"
+
+msgid "Basic settings"
+msgstr "Базовые настройки"
+
+msgid "Basic settings are incomplete. Please go to"
+msgstr "Базовые настройки не верны. Пожалуйста, перейдите в"
+
+msgid "Basic system settings"
+msgstr "Основные настройки системы"
+
+msgid "Bitrate"
+msgstr "Скорость"
+
+msgid "Channel"
+msgstr "Канал"
+
+msgid "Check for new firmware versions and perform automatic updates."
+msgstr ""
+"Проверить наличие новой версии прошивки и выполнить автоматическое "
+"обновление."
+
+msgid "Client network size"
+msgstr "Размер клиентской сети"
+
+msgid "Community"
+msgstr "Сообщество"
+
+msgid "Community profile"
+msgstr "Профиль сообщества"
+
+msgid "Community settings"
+msgstr "Настройки сообщества"
+
+msgid "Confirm Upgrade"
+msgstr "Подтвердить обновление"
+
+msgid "Contact"
+msgstr "Контактная информация"
+
+msgid "Contact information is incomplete. Please go to"
+msgstr "Контактная информация не верна. Пожалуйста, перейдите в"
+
+msgid "Coordinates"
+msgstr "Координаты"
+
+msgid "Country code"
+msgstr "Код страны"
+
+msgid "Default routes"
+msgstr "Маршруты по умолчанию"
+
+msgid "Disable default content"
+msgstr "Запретить контент по умолчанию"
+
+msgid "Diversity is enabled for device"
+msgstr "Неопределенность пути включена"
+
+msgid "E-Mail"
+msgstr "Эл. почта"
+
+msgid "ESSID"
+msgstr "ESSID"
+
+msgid "Edit index page"
+msgstr "Редактировать главную страницу"
+
+msgid "Enable IPv6"
+msgstr "Включить IPv6"
+
+msgid "Enable a virtual access point (VAP) by default if possible."
+msgstr ""
+
+msgid "Error"
+msgstr "Ошибка"
+
+msgid "Find your coordinates with OpenStreetMap"
+msgstr "Найдите свои координаты с помощью OpenStreetMap"
+
+msgid "Freifunk"
+msgstr "Freifunk"
+
+msgid "Freifunk Overview"
+msgstr "Обзор Freifunk"
+
+msgid "Freifunk Remote Update"
+msgstr "Удалённое обновление Freifunk"
+
+msgid "Gateway"
+msgstr "Шлюз"
+
+msgid "Go to"
+msgstr "Перейти"
+
+msgid "Good (2 < ETX < 4)"
+msgstr "Хороший (2 < ETX < 4)"
+
+#, fuzzy
+msgid "Green"
+msgstr "Зелёный"
+
+msgid "Hello and welcome in the network of"
+msgstr "Здравствуйте и добро пожаловать в сеть"
+
+msgid "Hide OpenStreetMap"
+msgstr "Скрыть OpenStreetMap"
+
+msgid "Homepage"
+msgstr "Домашняя страница"
+
+msgid "Hostname"
+msgstr "Имя хоста"
+
+#, fuzzy
+msgid "IPv6 Config"
+msgstr "Конфигурация IPv6"
+
+msgid "IPv6 Prefix"
+msgstr "Префикс IPv6"
+
+msgid "IPv6 network in CIDR notation."
+msgstr "Сеть IPv6 в CIDR-нотации"
+
+msgid "If selected then the default content element is not shown."
+msgstr "Если выбрано, содержимое по умолчанию не будет показано."
+
+msgid "If you are interested in our project then contact the local community"
+msgstr ""
+"Если вы заинтересованы в нашем проекте, свяжитесь с местным сообществом"
+
+msgid "Index Page"
+msgstr "Главная страница"
+
+msgid "Interface"
+msgstr "Интерфейс"
+
+msgid ""
+"Internet access depends on technical and organisational conditions and may "
+"or may not work for you."
+msgstr ""
+"Доступ в интернет зависит от технических и организационных условий и может "
+"быть не доступен для вас."
+
+# It - access point
+msgid "It is operated by"
+msgstr "Она управляется"
+
+msgid "Keep configuration"
+msgstr "Сохранить конфигурацию"
+
+msgid "Latitude"
+msgstr "Широта"
+
+msgid "Legend"
+msgstr "Надпись"
+
+msgid "Load"
+msgstr "Загрузка"
+
+msgid "Local Time"
+msgstr "Местное время"
+
+msgid "Location"
+msgstr "Местоположение"
+
+msgid "Longitude"
+msgstr "Долгота"
+
+msgid "Map"
+msgstr "Карта"
+
+msgid "Map Error"
+msgstr "Ошибка карты"
+
+msgid "Memory"
+msgstr "Память"
+
+msgid "Mesh prefix"
+msgstr "Префикс ячейки"
+
+msgid "Metric"
+msgstr "Метрика"
+
+msgid "Mode"
+msgstr "Режим"
+
+msgid "Network"
+msgstr "Сеть"
+
+msgid "Network for client DHCP addresses"
+msgstr "Сеть для клиентских DHCP-адресов"
+
+msgid "Nickname"
+msgstr "Псевдоним"
+
+msgid "No default routes known."
+msgstr "Маршруты по умолчанию не известны."
+
+msgid "Notice"
+msgstr "Внимание"
+
+msgid "OLSR"
+msgstr "OLSR"
+
+msgid "Operator"
+msgstr "Оператор"
+
+#, fuzzy
+msgid "Orange"
+msgstr "Оранжевый"
+
+msgid "Overview"
+msgstr "Обзор"
+
+msgid "Package libiwinfo required!"
+msgstr "Требуется libiwinfo!"
+
+msgid "Phone"
+msgstr "Телефон"
+
+msgid "Please fill in your contact details below."
+msgstr "Пожалуйста, введите вашу контактную информацию."
+
+msgid "Please set your contact information"
+msgstr "Пожалуйста, введите вашу контактную информацию"
+
+msgid "Power"
+msgstr "Питание"
+
+msgid "Processor"
+msgstr "Процессор"
+
+msgid "Profile"
+msgstr "Профиль"
+
+msgid "Profile (Expert)"
+msgstr "Профиль (эксперт)"
+
+msgid "Realname"
+msgstr "Имя"
+
+#, fuzzy
+msgid "Red"
+msgstr "Красный"
+
+msgid "SSID"
+msgstr "SSID"
+
+msgid ""
+"Select your location with a mouse click on the map. The map will only show "
+"up if you are connected to the Internet."
+msgstr ""
+"Укажите ваше местоположение на карте с помощью щелчка мыши. Карта будет "
+"показана только если вы подключены к интернету."
+
+msgid "Show OpenStreetMap"
+msgstr "Показать карту OpenStreetMap"
+
+msgid "Show on map"
+msgstr "Показать на карте"
+
+msgid "Signal"
+msgstr "Сигнал"
+
+msgid "Splash"
+msgstr "Splash-экран"
+
+msgid "Start Upgrade"
+msgstr "Начать обновление"
+
+msgid "Statistics"
+msgstr "Статистика"
+
+msgid "Status"
+msgstr "Статус"
+
+msgid "Still usable (4 < ETX < 10)"
+msgstr ""
+
+msgid "System"
+msgstr "Система"
+
+msgid "TX"
+msgstr "TX"
+
+msgid ""
+"The <em>libiwinfo</em> package is not installed. You must install this "
+"component for working wireless configuration!"
+msgstr ""
+"Пакет <em>libiwinfo-lua</em> не установлен. Для включения настроек "
+"беспроводных сетей, вам необходимо установить этот компонент!"
+
+msgid ""
+"The OLSRd service is not configured to capture position data from the "
+"network.<br /> Please make sure that the nameservice plugin is properly "
+"configured and that the <em>latlon_file</em> option is enabled."
+msgstr ""
+"Сервис OLSRd не сконфигурирован на получение данных о местоположении из сети."
+"<br /> Пожалуйста, удостоверьтесь, что модуль пространства имён настроен "
+"правильно и что опция <em>latlon_file</em> включена."
+
+msgid "The installed firmware is the most recent version."
+msgstr "Установлена прошивка самой последней версии."
+
+msgid ""
+"These are the basic settings for your local wireless community. These "
+"settings define the default values for the wizard and DO NOT affect the "
+"actual configuration of the router."
+msgstr ""
+"Это базовые настройки вашего сообщества. Они определяют стандартные "
+"настройки для мастера установки и НЕ влияют на конечную конфигурацию "
+"маршрутизатора."
+
+msgid "These are the settings of your local community."
+msgstr "Это настройки для вашего сообщества."
+
+msgid ""
+"These pages will assist you in setting up your router for Freifunk or "
+"similar wireless community networks."
+msgstr ""
+"Эти страницы помогут настроить ваш маршрутизатор для Freifunk или подобной "
+"беспроводной сети."
+
+msgid "This is the access point"
+msgstr "Это - точка доступа"
+
+msgid "Update Settings"
+msgstr "Настройки обновления"
+
+msgid "Update available!"
+msgstr "Доступно обновление!"
+
+msgid "Uptime"
+msgstr "Время работы"
+
+msgid "VAP"
+msgstr ""
+
+msgid "Verify downloaded images"
+msgstr "Проверять загруженные образы"
+
+msgid "Very good (ETX < 2)"
+msgstr "Очень хороший (ETX < 2)"
+
+msgid ""
+"We are an initiative to establish a free, independent and open wireless mesh "
+"network."
+msgstr ""
+"Мы - это сообщество, цель которого создать бесплатную, независимую и "
+"открытую беспроводную ячеистую сеть."
+
+msgid "Wireless Overview"
+msgstr "Обзор беспроводных сетей"
+
+#, fuzzy
+msgid "Yellow"
+msgstr "Жёлтый"
+
+msgid ""
+"You can display additional content on the public index page by inserting "
+"valid XHTML in the form below.<br />Headlines should be enclosed between &lt;"
+"h2&gt; and &lt;/h2&gt;."
+msgstr ""
+"У вас есть возможность установить дополнительное содержимое публичной "
+"страницы, вставив соответствующий XHTML-код в форму.<br /> Заголовки должны "
+"быть заключены между &lt;h2&gt; и &lt;/h2&gt;."
+
+msgid ""
+"You can find further information about the global Freifunk initiative at"
+msgstr "Вы можете найти дополнительную информацию о Freifunk по адресу"
+
+msgid "You can manually edit the selected community profile here."
+msgstr "Здесь вы можете редактировать выбранный профиль сообщества."
+
+msgid ""
+"You need to select a profile before you can edit it. To select a profile go "
+"to"
+msgstr ""
+"Необходимо выбрать профиль перед его редактированием. Чтобы выбрать профиль, "
+"перейдите в"
+
+msgid "and fill out all required fields."
+msgstr "и заполните все необходимые поля."
+
+msgid "buffered"
+msgstr "буферизировано"
+
+msgid "cached"
+msgstr "кэшировано"
+
+msgid "e.g."
+msgstr "напр."
+
+msgid "free"
+msgstr "свободно"
+
+msgid "to disable it."
+msgstr "чтобы выключить."
+
+msgid "used"
+msgstr "использовано"
+
+msgid "wireless settings"
+msgstr "настройки беспроводной сети"
+
+#~ msgid ""
+#~ "No services can be shown, because olsrd is not running or the olsrd-"
+#~ "nameservice Plugin is not loaded."
+#~ msgstr ""
+#~ "Сервис не может быть показан, так как oslrd не запущен или модуль olsrd-"
+#~ "nameservice не загружен."
+
+#~ msgid "Services"
+#~ msgstr "Службы"
+
+#~ msgid "Source"
+#~ msgstr "Источник"
+
+#~ msgid ""
+#~ "The <em>libiwinfo-lua</em> package is not installed. You must install "
+#~ "this component for working wireless configuration!"
+#~ msgstr ""
+#~ "Пакет <em>libiwinfo-lua</em> не установлен. Вам необходимо установить "
+#~ "этот компонент для настройки беспроводной сети!"
+
+#~ msgid "Url"
+#~ msgstr "Url"
diff --git a/modules/luci-mod-freifunk/po/sk/freifunk.po b/modules/luci-mod-freifunk/po/sk/freifunk.po
new file mode 100644
index 000000000..343f02204
--- /dev/null
+++ b/modules/luci-mod-freifunk/po/sk/freifunk.po
@@ -0,0 +1,391 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+"Project-Id-Version: PACKAGE VERSION\n"
+"Last-Translator: Automatically generated\n"
+"Language-Team: none\n"
+"MIME-Version: 1.0\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
+
+msgid "BSSID"
+msgstr ""
+
+msgid "Bad (ETX > 10)"
+msgstr ""
+
+msgid "Basic Settings"
+msgstr ""
+
+msgid "Basic settings"
+msgstr ""
+
+msgid "Basic settings are incomplete. Please go to"
+msgstr ""
+
+msgid "Basic system settings"
+msgstr ""
+
+msgid "Bitrate"
+msgstr ""
+
+msgid "Channel"
+msgstr ""
+
+msgid "Check for new firmware versions and perform automatic updates."
+msgstr ""
+
+msgid "Client network size"
+msgstr ""
+
+msgid "Community"
+msgstr ""
+
+msgid "Community profile"
+msgstr ""
+
+msgid "Community settings"
+msgstr ""
+
+msgid "Confirm Upgrade"
+msgstr ""
+
+msgid "Contact"
+msgstr ""
+
+msgid "Contact information is incomplete. Please go to"
+msgstr ""
+
+msgid "Coordinates"
+msgstr ""
+
+msgid "Country code"
+msgstr ""
+
+msgid "Default routes"
+msgstr ""
+
+msgid "Disable default content"
+msgstr ""
+
+msgid "Diversity is enabled for device"
+msgstr ""
+
+msgid "E-Mail"
+msgstr ""
+
+msgid "ESSID"
+msgstr ""
+
+msgid "Edit index page"
+msgstr ""
+
+msgid "Enable IPv6"
+msgstr ""
+
+msgid "Enable a virtual access point (VAP) by default if possible."
+msgstr ""
+
+msgid "Error"
+msgstr ""
+
+msgid "Find your coordinates with OpenStreetMap"
+msgstr ""
+
+msgid "Freifunk"
+msgstr ""
+
+msgid "Freifunk Overview"
+msgstr ""
+
+msgid "Freifunk Remote Update"
+msgstr ""
+
+msgid "Gateway"
+msgstr ""
+
+msgid "Go to"
+msgstr ""
+
+msgid "Good (2 < ETX < 4)"
+msgstr ""
+
+msgid "Green"
+msgstr ""
+
+msgid "Hello and welcome in the network of"
+msgstr ""
+
+msgid "Hide OpenStreetMap"
+msgstr ""
+
+msgid "Homepage"
+msgstr ""
+
+msgid "Hostname"
+msgstr ""
+
+msgid "IPv6 Config"
+msgstr ""
+
+msgid "IPv6 Prefix"
+msgstr ""
+
+msgid "IPv6 network in CIDR notation."
+msgstr ""
+
+msgid "If selected then the default content element is not shown."
+msgstr ""
+
+msgid "If you are interested in our project then contact the local community"
+msgstr ""
+
+msgid "Index Page"
+msgstr ""
+
+msgid "Interface"
+msgstr ""
+
+msgid ""
+"Internet access depends on technical and organisational conditions and may "
+"or may not work for you."
+msgstr ""
+
+msgid "It is operated by"
+msgstr ""
+
+msgid "Keep configuration"
+msgstr ""
+
+msgid "Latitude"
+msgstr ""
+
+msgid "Legend"
+msgstr ""
+
+msgid "Load"
+msgstr ""
+
+msgid "Local Time"
+msgstr ""
+
+msgid "Location"
+msgstr ""
+
+msgid "Longitude"
+msgstr ""
+
+msgid "Map"
+msgstr ""
+
+msgid "Map Error"
+msgstr ""
+
+msgid "Memory"
+msgstr ""
+
+msgid "Mesh prefix"
+msgstr ""
+
+msgid "Metric"
+msgstr ""
+
+msgid "Mode"
+msgstr ""
+
+msgid "Network"
+msgstr ""
+
+msgid "Network for client DHCP addresses"
+msgstr ""
+
+msgid "Nickname"
+msgstr ""
+
+msgid "No default routes known."
+msgstr ""
+
+msgid "Notice"
+msgstr ""
+
+msgid "OLSR"
+msgstr ""
+
+msgid "Operator"
+msgstr ""
+
+msgid "Orange"
+msgstr ""
+
+msgid "Overview"
+msgstr ""
+
+msgid "Package libiwinfo required!"
+msgstr ""
+
+msgid "Phone"
+msgstr ""
+
+msgid "Please fill in your contact details below."
+msgstr ""
+
+msgid "Please set your contact information"
+msgstr ""
+
+msgid "Power"
+msgstr ""
+
+msgid "Processor"
+msgstr ""
+
+msgid "Profile"
+msgstr ""
+
+msgid "Profile (Expert)"
+msgstr ""
+
+msgid "Realname"
+msgstr ""
+
+msgid "Red"
+msgstr ""
+
+msgid "SSID"
+msgstr ""
+
+msgid ""
+"Select your location with a mouse click on the map. The map will only show "
+"up if you are connected to the Internet."
+msgstr ""
+
+msgid "Show OpenStreetMap"
+msgstr ""
+
+msgid "Show on map"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "Splash"
+msgstr ""
+
+msgid "Start Upgrade"
+msgstr ""
+
+msgid "Statistics"
+msgstr ""
+
+msgid "Status"
+msgstr ""
+
+msgid "Still usable (4 < ETX < 10)"
+msgstr ""
+
+msgid "System"
+msgstr ""
+
+msgid "TX"
+msgstr ""
+
+msgid ""
+"The <em>libiwinfo</em> package is not installed. You must install this "
+"component for working wireless configuration!"
+msgstr ""
+
+msgid ""
+"The OLSRd service is not configured to capture position data from the "
+"network.<br /> Please make sure that the nameservice plugin is properly "
+"configured and that the <em>latlon_file</em> option is enabled."
+msgstr ""
+
+msgid "The installed firmware is the most recent version."
+msgstr ""
+
+msgid ""
+"These are the basic settings for your local wireless community. These "
+"settings define the default values for the wizard and DO NOT affect the "
+"actual configuration of the router."
+msgstr ""
+
+msgid "These are the settings of your local community."
+msgstr ""
+
+msgid ""
+"These pages will assist you in setting up your router for Freifunk or "
+"similar wireless community networks."
+msgstr ""
+
+msgid "This is the access point"
+msgstr ""
+
+msgid "Update Settings"
+msgstr ""
+
+msgid "Update available!"
+msgstr ""
+
+msgid "Uptime"
+msgstr ""
+
+msgid "VAP"
+msgstr ""
+
+msgid "Verify downloaded images"
+msgstr ""
+
+msgid "Very good (ETX < 2)"
+msgstr ""
+
+msgid ""
+"We are an initiative to establish a free, independent and open wireless mesh "
+"network."
+msgstr ""
+
+msgid "Wireless Overview"
+msgstr ""
+
+msgid "Yellow"
+msgstr ""
+
+msgid ""
+"You can display additional content on the public index page by inserting "
+"valid XHTML in the form below.<br />Headlines should be enclosed between &lt;"
+"h2&gt; and &lt;/h2&gt;."
+msgstr ""
+
+msgid ""
+"You can find further information about the global Freifunk initiative at"
+msgstr ""
+
+msgid "You can manually edit the selected community profile here."
+msgstr ""
+
+msgid ""
+"You need to select a profile before you can edit it. To select a profile go "
+"to"
+msgstr ""
+
+msgid "and fill out all required fields."
+msgstr ""
+
+msgid "buffered"
+msgstr ""
+
+msgid "cached"
+msgstr ""
+
+msgid "e.g."
+msgstr ""
+
+msgid "free"
+msgstr ""
+
+msgid "to disable it."
+msgstr ""
+
+msgid "used"
+msgstr ""
+
+msgid "wireless settings"
+msgstr ""
diff --git a/modules/luci-mod-freifunk/po/sv/freifunk.po b/modules/luci-mod-freifunk/po/sv/freifunk.po
new file mode 100644
index 000000000..cf42fa159
--- /dev/null
+++ b/modules/luci-mod-freifunk/po/sv/freifunk.po
@@ -0,0 +1,392 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+"Project-Id-Version: PACKAGE VERSION\n"
+"Last-Translator: Automatically generated\n"
+"Language-Team: none\n"
+"Language: sv\n"
+"MIME-Version: 1.0\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+msgid "BSSID"
+msgstr ""
+
+msgid "Bad (ETX > 10)"
+msgstr ""
+
+msgid "Basic Settings"
+msgstr ""
+
+msgid "Basic settings"
+msgstr ""
+
+msgid "Basic settings are incomplete. Please go to"
+msgstr ""
+
+msgid "Basic system settings"
+msgstr ""
+
+msgid "Bitrate"
+msgstr ""
+
+msgid "Channel"
+msgstr ""
+
+msgid "Check for new firmware versions and perform automatic updates."
+msgstr ""
+
+msgid "Client network size"
+msgstr ""
+
+msgid "Community"
+msgstr ""
+
+msgid "Community profile"
+msgstr ""
+
+msgid "Community settings"
+msgstr ""
+
+msgid "Confirm Upgrade"
+msgstr ""
+
+msgid "Contact"
+msgstr ""
+
+msgid "Contact information is incomplete. Please go to"
+msgstr ""
+
+msgid "Coordinates"
+msgstr ""
+
+msgid "Country code"
+msgstr ""
+
+msgid "Default routes"
+msgstr ""
+
+msgid "Disable default content"
+msgstr ""
+
+msgid "Diversity is enabled for device"
+msgstr ""
+
+msgid "E-Mail"
+msgstr ""
+
+msgid "ESSID"
+msgstr ""
+
+msgid "Edit index page"
+msgstr ""
+
+msgid "Enable IPv6"
+msgstr ""
+
+msgid "Enable a virtual access point (VAP) by default if possible."
+msgstr ""
+
+msgid "Error"
+msgstr ""
+
+msgid "Find your coordinates with OpenStreetMap"
+msgstr ""
+
+msgid "Freifunk"
+msgstr ""
+
+msgid "Freifunk Overview"
+msgstr ""
+
+msgid "Freifunk Remote Update"
+msgstr ""
+
+msgid "Gateway"
+msgstr ""
+
+msgid "Go to"
+msgstr ""
+
+msgid "Good (2 < ETX < 4)"
+msgstr ""
+
+msgid "Green"
+msgstr ""
+
+msgid "Hello and welcome in the network of"
+msgstr ""
+
+msgid "Hide OpenStreetMap"
+msgstr ""
+
+msgid "Homepage"
+msgstr ""
+
+msgid "Hostname"
+msgstr ""
+
+msgid "IPv6 Config"
+msgstr ""
+
+msgid "IPv6 Prefix"
+msgstr ""
+
+msgid "IPv6 network in CIDR notation."
+msgstr ""
+
+msgid "If selected then the default content element is not shown."
+msgstr ""
+
+msgid "If you are interested in our project then contact the local community"
+msgstr ""
+
+msgid "Index Page"
+msgstr ""
+
+msgid "Interface"
+msgstr ""
+
+msgid ""
+"Internet access depends on technical and organisational conditions and may "
+"or may not work for you."
+msgstr ""
+
+msgid "It is operated by"
+msgstr ""
+
+msgid "Keep configuration"
+msgstr ""
+
+msgid "Latitude"
+msgstr ""
+
+msgid "Legend"
+msgstr ""
+
+msgid "Load"
+msgstr ""
+
+msgid "Local Time"
+msgstr ""
+
+msgid "Location"
+msgstr ""
+
+msgid "Longitude"
+msgstr ""
+
+msgid "Map"
+msgstr ""
+
+msgid "Map Error"
+msgstr ""
+
+msgid "Memory"
+msgstr ""
+
+msgid "Mesh prefix"
+msgstr ""
+
+msgid "Metric"
+msgstr ""
+
+msgid "Mode"
+msgstr ""
+
+msgid "Network"
+msgstr ""
+
+msgid "Network for client DHCP addresses"
+msgstr ""
+
+msgid "Nickname"
+msgstr ""
+
+msgid "No default routes known."
+msgstr ""
+
+msgid "Notice"
+msgstr ""
+
+msgid "OLSR"
+msgstr ""
+
+msgid "Operator"
+msgstr ""
+
+msgid "Orange"
+msgstr ""
+
+msgid "Overview"
+msgstr ""
+
+msgid "Package libiwinfo required!"
+msgstr ""
+
+msgid "Phone"
+msgstr ""
+
+msgid "Please fill in your contact details below."
+msgstr ""
+
+msgid "Please set your contact information"
+msgstr ""
+
+msgid "Power"
+msgstr ""
+
+msgid "Processor"
+msgstr ""
+
+msgid "Profile"
+msgstr ""
+
+msgid "Profile (Expert)"
+msgstr ""
+
+msgid "Realname"
+msgstr ""
+
+msgid "Red"
+msgstr ""
+
+msgid "SSID"
+msgstr ""
+
+msgid ""
+"Select your location with a mouse click on the map. The map will only show "
+"up if you are connected to the Internet."
+msgstr ""
+
+msgid "Show OpenStreetMap"
+msgstr ""
+
+msgid "Show on map"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "Splash"
+msgstr ""
+
+msgid "Start Upgrade"
+msgstr ""
+
+msgid "Statistics"
+msgstr ""
+
+msgid "Status"
+msgstr ""
+
+msgid "Still usable (4 < ETX < 10)"
+msgstr ""
+
+msgid "System"
+msgstr ""
+
+msgid "TX"
+msgstr ""
+
+msgid ""
+"The <em>libiwinfo</em> package is not installed. You must install this "
+"component for working wireless configuration!"
+msgstr ""
+
+msgid ""
+"The OLSRd service is not configured to capture position data from the "
+"network.<br /> Please make sure that the nameservice plugin is properly "
+"configured and that the <em>latlon_file</em> option is enabled."
+msgstr ""
+
+msgid "The installed firmware is the most recent version."
+msgstr ""
+
+msgid ""
+"These are the basic settings for your local wireless community. These "
+"settings define the default values for the wizard and DO NOT affect the "
+"actual configuration of the router."
+msgstr ""
+
+msgid "These are the settings of your local community."
+msgstr ""
+
+msgid ""
+"These pages will assist you in setting up your router for Freifunk or "
+"similar wireless community networks."
+msgstr ""
+
+msgid "This is the access point"
+msgstr ""
+
+msgid "Update Settings"
+msgstr ""
+
+msgid "Update available!"
+msgstr ""
+
+msgid "Uptime"
+msgstr ""
+
+msgid "VAP"
+msgstr ""
+
+msgid "Verify downloaded images"
+msgstr ""
+
+msgid "Very good (ETX < 2)"
+msgstr ""
+
+msgid ""
+"We are an initiative to establish a free, independent and open wireless mesh "
+"network."
+msgstr ""
+
+msgid "Wireless Overview"
+msgstr ""
+
+msgid "Yellow"
+msgstr ""
+
+msgid ""
+"You can display additional content on the public index page by inserting "
+"valid XHTML in the form below.<br />Headlines should be enclosed between &lt;"
+"h2&gt; and &lt;/h2&gt;."
+msgstr ""
+
+msgid ""
+"You can find further information about the global Freifunk initiative at"
+msgstr ""
+
+msgid "You can manually edit the selected community profile here."
+msgstr ""
+
+msgid ""
+"You need to select a profile before you can edit it. To select a profile go "
+"to"
+msgstr ""
+
+msgid "and fill out all required fields."
+msgstr ""
+
+msgid "buffered"
+msgstr ""
+
+msgid "cached"
+msgstr ""
+
+msgid "e.g."
+msgstr ""
+
+msgid "free"
+msgstr ""
+
+msgid "to disable it."
+msgstr ""
+
+msgid "used"
+msgstr ""
+
+msgid "wireless settings"
+msgstr ""
diff --git a/modules/luci-mod-freifunk/po/tr/freifunk.po b/modules/luci-mod-freifunk/po/tr/freifunk.po
new file mode 100644
index 000000000..f485e01b4
--- /dev/null
+++ b/modules/luci-mod-freifunk/po/tr/freifunk.po
@@ -0,0 +1,392 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Last-Translator: Automatically generated\n"
+"Language-Team: none\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+
+msgid "BSSID"
+msgstr ""
+
+msgid "Bad (ETX > 10)"
+msgstr ""
+
+msgid "Basic Settings"
+msgstr ""
+
+msgid "Basic settings"
+msgstr ""
+
+msgid "Basic settings are incomplete. Please go to"
+msgstr ""
+
+msgid "Basic system settings"
+msgstr ""
+
+msgid "Bitrate"
+msgstr ""
+
+msgid "Channel"
+msgstr ""
+
+msgid "Check for new firmware versions and perform automatic updates."
+msgstr ""
+
+msgid "Client network size"
+msgstr ""
+
+msgid "Community"
+msgstr ""
+
+msgid "Community profile"
+msgstr ""
+
+msgid "Community settings"
+msgstr ""
+
+msgid "Confirm Upgrade"
+msgstr ""
+
+msgid "Contact"
+msgstr ""
+
+msgid "Contact information is incomplete. Please go to"
+msgstr ""
+
+msgid "Coordinates"
+msgstr ""
+
+msgid "Country code"
+msgstr ""
+
+msgid "Default routes"
+msgstr ""
+
+msgid "Disable default content"
+msgstr ""
+
+msgid "Diversity is enabled for device"
+msgstr ""
+
+msgid "E-Mail"
+msgstr ""
+
+msgid "ESSID"
+msgstr ""
+
+msgid "Edit index page"
+msgstr ""
+
+msgid "Enable IPv6"
+msgstr ""
+
+msgid "Enable a virtual access point (VAP) by default if possible."
+msgstr ""
+
+msgid "Error"
+msgstr ""
+
+msgid "Find your coordinates with OpenStreetMap"
+msgstr ""
+
+msgid "Freifunk"
+msgstr ""
+
+msgid "Freifunk Overview"
+msgstr ""
+
+msgid "Freifunk Remote Update"
+msgstr ""
+
+msgid "Gateway"
+msgstr ""
+
+msgid "Go to"
+msgstr ""
+
+msgid "Good (2 < ETX < 4)"
+msgstr ""
+
+msgid "Green"
+msgstr ""
+
+msgid "Hello and welcome in the network of"
+msgstr ""
+
+msgid "Hide OpenStreetMap"
+msgstr ""
+
+msgid "Homepage"
+msgstr ""
+
+msgid "Hostname"
+msgstr ""
+
+msgid "IPv6 Config"
+msgstr ""
+
+msgid "IPv6 Prefix"
+msgstr ""
+
+msgid "IPv6 network in CIDR notation."
+msgstr ""
+
+msgid "If selected then the default content element is not shown."
+msgstr ""
+
+msgid "If you are interested in our project then contact the local community"
+msgstr ""
+
+msgid "Index Page"
+msgstr ""
+
+msgid "Interface"
+msgstr ""
+
+msgid ""
+"Internet access depends on technical and organisational conditions and may "
+"or may not work for you."
+msgstr ""
+
+msgid "It is operated by"
+msgstr ""
+
+msgid "Keep configuration"
+msgstr ""
+
+msgid "Latitude"
+msgstr ""
+
+msgid "Legend"
+msgstr ""
+
+msgid "Load"
+msgstr ""
+
+msgid "Local Time"
+msgstr ""
+
+msgid "Location"
+msgstr ""
+
+msgid "Longitude"
+msgstr ""
+
+msgid "Map"
+msgstr ""
+
+msgid "Map Error"
+msgstr ""
+
+msgid "Memory"
+msgstr ""
+
+msgid "Mesh prefix"
+msgstr ""
+
+msgid "Metric"
+msgstr ""
+
+msgid "Mode"
+msgstr ""
+
+msgid "Network"
+msgstr ""
+
+msgid "Network for client DHCP addresses"
+msgstr ""
+
+msgid "Nickname"
+msgstr ""
+
+msgid "No default routes known."
+msgstr ""
+
+msgid "Notice"
+msgstr ""
+
+msgid "OLSR"
+msgstr ""
+
+msgid "Operator"
+msgstr ""
+
+msgid "Orange"
+msgstr ""
+
+msgid "Overview"
+msgstr ""
+
+msgid "Package libiwinfo required!"
+msgstr ""
+
+msgid "Phone"
+msgstr ""
+
+msgid "Please fill in your contact details below."
+msgstr ""
+
+msgid "Please set your contact information"
+msgstr ""
+
+msgid "Power"
+msgstr ""
+
+msgid "Processor"
+msgstr ""
+
+msgid "Profile"
+msgstr ""
+
+msgid "Profile (Expert)"
+msgstr ""
+
+msgid "Realname"
+msgstr ""
+
+msgid "Red"
+msgstr ""
+
+msgid "SSID"
+msgstr ""
+
+msgid ""
+"Select your location with a mouse click on the map. The map will only show "
+"up if you are connected to the Internet."
+msgstr ""
+
+msgid "Show OpenStreetMap"
+msgstr ""
+
+msgid "Show on map"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "Splash"
+msgstr ""
+
+msgid "Start Upgrade"
+msgstr ""
+
+msgid "Statistics"
+msgstr ""
+
+msgid "Status"
+msgstr ""
+
+msgid "Still usable (4 < ETX < 10)"
+msgstr ""
+
+msgid "System"
+msgstr ""
+
+msgid "TX"
+msgstr ""
+
+msgid ""
+"The <em>libiwinfo</em> package is not installed. You must install this "
+"component for working wireless configuration!"
+msgstr ""
+
+msgid ""
+"The OLSRd service is not configured to capture position data from the "
+"network.<br /> Please make sure that the nameservice plugin is properly "
+"configured and that the <em>latlon_file</em> option is enabled."
+msgstr ""
+
+msgid "The installed firmware is the most recent version."
+msgstr ""
+
+msgid ""
+"These are the basic settings for your local wireless community. These "
+"settings define the default values for the wizard and DO NOT affect the "
+"actual configuration of the router."
+msgstr ""
+
+msgid "These are the settings of your local community."
+msgstr ""
+
+msgid ""
+"These pages will assist you in setting up your router for Freifunk or "
+"similar wireless community networks."
+msgstr ""
+
+msgid "This is the access point"
+msgstr ""
+
+msgid "Update Settings"
+msgstr ""
+
+msgid "Update available!"
+msgstr ""
+
+msgid "Uptime"
+msgstr ""
+
+msgid "VAP"
+msgstr ""
+
+msgid "Verify downloaded images"
+msgstr ""
+
+msgid "Very good (ETX < 2)"
+msgstr ""
+
+msgid ""
+"We are an initiative to establish a free, independent and open wireless mesh "
+"network."
+msgstr ""
+
+msgid "Wireless Overview"
+msgstr ""
+
+msgid "Yellow"
+msgstr ""
+
+msgid ""
+"You can display additional content on the public index page by inserting "
+"valid XHTML in the form below.<br />Headlines should be enclosed between &lt;"
+"h2&gt; and &lt;/h2&gt;."
+msgstr ""
+
+msgid ""
+"You can find further information about the global Freifunk initiative at"
+msgstr ""
+
+msgid "You can manually edit the selected community profile here."
+msgstr ""
+
+msgid ""
+"You need to select a profile before you can edit it. To select a profile go "
+"to"
+msgstr ""
+
+msgid "and fill out all required fields."
+msgstr ""
+
+msgid "buffered"
+msgstr ""
+
+msgid "cached"
+msgstr ""
+
+msgid "e.g."
+msgstr ""
+
+msgid "free"
+msgstr ""
+
+msgid "to disable it."
+msgstr ""
+
+msgid "used"
+msgstr ""
+
+msgid "wireless settings"
+msgstr ""
diff --git a/modules/luci-mod-freifunk/po/uk/freifunk.po b/modules/luci-mod-freifunk/po/uk/freifunk.po
new file mode 100644
index 000000000..5abfa11cc
--- /dev/null
+++ b/modules/luci-mod-freifunk/po/uk/freifunk.po
@@ -0,0 +1,393 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Last-Translator: Automatically generated\n"
+"Language-Team: none\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
+"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+
+msgid "BSSID"
+msgstr ""
+
+msgid "Bad (ETX > 10)"
+msgstr ""
+
+msgid "Basic Settings"
+msgstr ""
+
+msgid "Basic settings"
+msgstr ""
+
+msgid "Basic settings are incomplete. Please go to"
+msgstr ""
+
+msgid "Basic system settings"
+msgstr ""
+
+msgid "Bitrate"
+msgstr ""
+
+msgid "Channel"
+msgstr ""
+
+msgid "Check for new firmware versions and perform automatic updates."
+msgstr ""
+
+msgid "Client network size"
+msgstr ""
+
+msgid "Community"
+msgstr ""
+
+msgid "Community profile"
+msgstr ""
+
+msgid "Community settings"
+msgstr ""
+
+msgid "Confirm Upgrade"
+msgstr ""
+
+msgid "Contact"
+msgstr ""
+
+msgid "Contact information is incomplete. Please go to"
+msgstr ""
+
+msgid "Coordinates"
+msgstr ""
+
+msgid "Country code"
+msgstr ""
+
+msgid "Default routes"
+msgstr ""
+
+msgid "Disable default content"
+msgstr ""
+
+msgid "Diversity is enabled for device"
+msgstr ""
+
+msgid "E-Mail"
+msgstr ""
+
+msgid "ESSID"
+msgstr ""
+
+msgid "Edit index page"
+msgstr ""
+
+msgid "Enable IPv6"
+msgstr ""
+
+msgid "Enable a virtual access point (VAP) by default if possible."
+msgstr ""
+
+msgid "Error"
+msgstr ""
+
+msgid "Find your coordinates with OpenStreetMap"
+msgstr ""
+
+msgid "Freifunk"
+msgstr ""
+
+msgid "Freifunk Overview"
+msgstr ""
+
+msgid "Freifunk Remote Update"
+msgstr ""
+
+msgid "Gateway"
+msgstr ""
+
+msgid "Go to"
+msgstr ""
+
+msgid "Good (2 < ETX < 4)"
+msgstr ""
+
+msgid "Green"
+msgstr ""
+
+msgid "Hello and welcome in the network of"
+msgstr ""
+
+msgid "Hide OpenStreetMap"
+msgstr ""
+
+msgid "Homepage"
+msgstr ""
+
+msgid "Hostname"
+msgstr ""
+
+msgid "IPv6 Config"
+msgstr ""
+
+msgid "IPv6 Prefix"
+msgstr ""
+
+msgid "IPv6 network in CIDR notation."
+msgstr ""
+
+msgid "If selected then the default content element is not shown."
+msgstr ""
+
+msgid "If you are interested in our project then contact the local community"
+msgstr ""
+
+msgid "Index Page"
+msgstr ""
+
+msgid "Interface"
+msgstr ""
+
+msgid ""
+"Internet access depends on technical and organisational conditions and may "
+"or may not work for you."
+msgstr ""
+
+msgid "It is operated by"
+msgstr ""
+
+msgid "Keep configuration"
+msgstr ""
+
+msgid "Latitude"
+msgstr ""
+
+msgid "Legend"
+msgstr ""
+
+msgid "Load"
+msgstr ""
+
+msgid "Local Time"
+msgstr ""
+
+msgid "Location"
+msgstr ""
+
+msgid "Longitude"
+msgstr ""
+
+msgid "Map"
+msgstr ""
+
+msgid "Map Error"
+msgstr ""
+
+msgid "Memory"
+msgstr ""
+
+msgid "Mesh prefix"
+msgstr ""
+
+msgid "Metric"
+msgstr ""
+
+msgid "Mode"
+msgstr ""
+
+msgid "Network"
+msgstr ""
+
+msgid "Network for client DHCP addresses"
+msgstr ""
+
+msgid "Nickname"
+msgstr ""
+
+msgid "No default routes known."
+msgstr ""
+
+msgid "Notice"
+msgstr ""
+
+msgid "OLSR"
+msgstr ""
+
+msgid "Operator"
+msgstr ""
+
+msgid "Orange"
+msgstr ""
+
+msgid "Overview"
+msgstr ""
+
+msgid "Package libiwinfo required!"
+msgstr ""
+
+msgid "Phone"
+msgstr ""
+
+msgid "Please fill in your contact details below."
+msgstr ""
+
+msgid "Please set your contact information"
+msgstr ""
+
+msgid "Power"
+msgstr ""
+
+msgid "Processor"
+msgstr ""
+
+msgid "Profile"
+msgstr ""
+
+msgid "Profile (Expert)"
+msgstr ""
+
+msgid "Realname"
+msgstr ""
+
+msgid "Red"
+msgstr ""
+
+msgid "SSID"
+msgstr ""
+
+msgid ""
+"Select your location with a mouse click on the map. The map will only show "
+"up if you are connected to the Internet."
+msgstr ""
+
+msgid "Show OpenStreetMap"
+msgstr ""
+
+msgid "Show on map"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "Splash"
+msgstr ""
+
+msgid "Start Upgrade"
+msgstr ""
+
+msgid "Statistics"
+msgstr ""
+
+msgid "Status"
+msgstr ""
+
+msgid "Still usable (4 < ETX < 10)"
+msgstr ""
+
+msgid "System"
+msgstr ""
+
+msgid "TX"
+msgstr ""
+
+msgid ""
+"The <em>libiwinfo</em> package is not installed. You must install this "
+"component for working wireless configuration!"
+msgstr ""
+
+msgid ""
+"The OLSRd service is not configured to capture position data from the "
+"network.<br /> Please make sure that the nameservice plugin is properly "
+"configured and that the <em>latlon_file</em> option is enabled."
+msgstr ""
+
+msgid "The installed firmware is the most recent version."
+msgstr ""
+
+msgid ""
+"These are the basic settings for your local wireless community. These "
+"settings define the default values for the wizard and DO NOT affect the "
+"actual configuration of the router."
+msgstr ""
+
+msgid "These are the settings of your local community."
+msgstr ""
+
+msgid ""
+"These pages will assist you in setting up your router for Freifunk or "
+"similar wireless community networks."
+msgstr ""
+
+msgid "This is the access point"
+msgstr ""
+
+msgid "Update Settings"
+msgstr ""
+
+msgid "Update available!"
+msgstr ""
+
+msgid "Uptime"
+msgstr ""
+
+msgid "VAP"
+msgstr ""
+
+msgid "Verify downloaded images"
+msgstr ""
+
+msgid "Very good (ETX < 2)"
+msgstr ""
+
+msgid ""
+"We are an initiative to establish a free, independent and open wireless mesh "
+"network."
+msgstr ""
+
+msgid "Wireless Overview"
+msgstr ""
+
+msgid "Yellow"
+msgstr ""
+
+msgid ""
+"You can display additional content on the public index page by inserting "
+"valid XHTML in the form below.<br />Headlines should be enclosed between &lt;"
+"h2&gt; and &lt;/h2&gt;."
+msgstr ""
+
+msgid ""
+"You can find further information about the global Freifunk initiative at"
+msgstr ""
+
+msgid "You can manually edit the selected community profile here."
+msgstr ""
+
+msgid ""
+"You need to select a profile before you can edit it. To select a profile go "
+"to"
+msgstr ""
+
+msgid "and fill out all required fields."
+msgstr ""
+
+msgid "buffered"
+msgstr ""
+
+msgid "cached"
+msgstr ""
+
+msgid "e.g."
+msgstr ""
+
+msgid "free"
+msgstr ""
+
+msgid "to disable it."
+msgstr ""
+
+msgid "used"
+msgstr ""
+
+msgid "wireless settings"
+msgstr ""
diff --git a/modules/luci-mod-freifunk/po/vi/freifunk.po b/modules/luci-mod-freifunk/po/vi/freifunk.po
new file mode 100644
index 000000000..8076d61b2
--- /dev/null
+++ b/modules/luci-mod-freifunk/po/vi/freifunk.po
@@ -0,0 +1,398 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2009-08-16 06:58+0200\n"
+"PO-Revision-Date: 2009-08-15 11:56+0200\n"
+"Last-Translator: Stefan Pirwitz <i18n@freifunk-bno.de>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Pootle 1.1.0\n"
+
+msgid "BSSID"
+msgstr ""
+
+msgid "Bad (ETX > 10)"
+msgstr ""
+
+msgid "Basic Settings"
+msgstr ""
+
+msgid "Basic settings"
+msgstr ""
+
+msgid "Basic settings are incomplete. Please go to"
+msgstr ""
+
+msgid "Basic system settings"
+msgstr ""
+
+msgid "Bitrate"
+msgstr ""
+
+msgid "Channel"
+msgstr ""
+
+msgid "Check for new firmware versions and perform automatic updates."
+msgstr "Kiểm tra các phiên bản phần cứng mới và thực hiện tự động cập nhật."
+
+msgid "Client network size"
+msgstr ""
+
+msgid "Community"
+msgstr ""
+
+msgid "Community profile"
+msgstr ""
+
+msgid "Community settings"
+msgstr ""
+
+msgid "Confirm Upgrade"
+msgstr ""
+
+msgid "Contact"
+msgstr ""
+
+msgid "Contact information is incomplete. Please go to"
+msgstr ""
+
+msgid "Coordinates"
+msgstr "Tọa độ"
+
+msgid "Country code"
+msgstr ""
+
+msgid "Default routes"
+msgstr ""
+
+msgid "Disable default content"
+msgstr ""
+
+msgid "Diversity is enabled for device"
+msgstr ""
+
+msgid "E-Mail"
+msgstr "E-mail"
+
+msgid "ESSID"
+msgstr ""
+
+msgid "Edit index page"
+msgstr ""
+
+msgid "Enable IPv6"
+msgstr ""
+
+msgid "Enable a virtual access point (VAP) by default if possible."
+msgstr ""
+
+msgid "Error"
+msgstr ""
+
+msgid "Find your coordinates with OpenStreetMap"
+msgstr ""
+
+msgid "Freifunk"
+msgstr ""
+
+msgid "Freifunk Overview"
+msgstr ""
+
+msgid "Freifunk Remote Update"
+msgstr "Freifunk cập nhật từ xa"
+
+msgid "Gateway"
+msgstr ""
+
+msgid "Go to"
+msgstr ""
+
+msgid "Good (2 < ETX < 4)"
+msgstr ""
+
+msgid "Green"
+msgstr ""
+
+msgid "Hello and welcome in the network of"
+msgstr "Xin chào và chào mừng gia nhập mạng lưới của"
+
+msgid "Hide OpenStreetMap"
+msgstr ""
+
+msgid "Homepage"
+msgstr ""
+
+msgid "Hostname"
+msgstr "Hostname"
+
+msgid "IPv6 Config"
+msgstr ""
+
+msgid "IPv6 Prefix"
+msgstr ""
+
+msgid "IPv6 network in CIDR notation."
+msgstr ""
+
+msgid "If selected then the default content element is not shown."
+msgstr ""
+
+msgid "If you are interested in our project then contact the local community"
+msgstr ""
+"Nếu bạn quan tâm đến đề án của chúng tôi, hãy liên hệ cộng đồng địa phương"
+
+msgid "Index Page"
+msgstr ""
+
+msgid "Interface"
+msgstr ""
+
+msgid ""
+"Internet access depends on technical and organisational conditions and may "
+"or may not work for you."
+msgstr ""
+"Truy cập Internet phù thuộc vào kỹ thật và điều kiện tổ chức và có thể hoạt "
+"động hoặc không hoạt động cho bạn"
+
+msgid "It is operated by"
+msgstr "Nó hoạt động bởi "
+
+msgid "Keep configuration"
+msgstr "Giữ cấu hình"
+
+msgid "Latitude"
+msgstr ""
+
+msgid "Legend"
+msgstr ""
+
+msgid "Load"
+msgstr ""
+
+msgid "Local Time"
+msgstr ""
+
+msgid "Location"
+msgstr "Địa chỉ"
+
+msgid "Longitude"
+msgstr ""
+
+msgid "Map"
+msgstr ""
+
+msgid "Map Error"
+msgstr ""
+
+msgid "Memory"
+msgstr "Bộ nhớ"
+
+msgid "Mesh prefix"
+msgstr ""
+
+msgid "Metric"
+msgstr ""
+
+msgid "Mode"
+msgstr ""
+
+msgid "Network"
+msgstr ""
+
+msgid "Network for client DHCP addresses"
+msgstr ""
+
+msgid "Nickname"
+msgstr "Tên"
+
+msgid "No default routes known."
+msgstr ""
+
+msgid "Notice"
+msgstr "Chú ý"
+
+msgid "OLSR"
+msgstr ""
+
+msgid "Operator"
+msgstr ""
+
+msgid "Orange"
+msgstr ""
+
+msgid "Overview"
+msgstr ""
+
+msgid "Package libiwinfo required!"
+msgstr ""
+
+msgid "Phone"
+msgstr "Điện thoại"
+
+msgid "Please fill in your contact details below."
+msgstr ""
+
+msgid "Please set your contact information"
+msgstr ""
+
+msgid "Power"
+msgstr ""
+
+msgid "Processor"
+msgstr ""
+
+msgid "Profile"
+msgstr ""
+
+msgid "Profile (Expert)"
+msgstr ""
+
+msgid "Realname"
+msgstr "Tên thật "
+
+msgid "Red"
+msgstr ""
+
+msgid "SSID"
+msgstr ""
+
+msgid ""
+"Select your location with a mouse click on the map. The map will only show "
+"up if you are connected to the Internet."
+msgstr ""
+
+msgid "Show OpenStreetMap"
+msgstr ""
+
+msgid "Show on map"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "Splash"
+msgstr ""
+
+msgid "Start Upgrade"
+msgstr "Bắt đầu cập nhật "
+
+msgid "Statistics"
+msgstr ""
+
+msgid "Status"
+msgstr ""
+
+msgid "Still usable (4 < ETX < 10)"
+msgstr ""
+
+msgid "System"
+msgstr ""
+
+msgid "TX"
+msgstr ""
+
+msgid ""
+"The <em>libiwinfo</em> package is not installed. You must install this "
+"component for working wireless configuration!"
+msgstr ""
+
+msgid ""
+"The OLSRd service is not configured to capture position data from the "
+"network.<br /> Please make sure that the nameservice plugin is properly "
+"configured and that the <em>latlon_file</em> option is enabled."
+msgstr ""
+
+msgid "The installed firmware is the most recent version."
+msgstr "Phần cứng được cài đặt là phiên bản mới nhất."
+
+msgid ""
+"These are the basic settings for your local wireless community. These "
+"settings define the default values for the wizard and DO NOT affect the "
+"actual configuration of the router."
+msgstr ""
+
+msgid "These are the settings of your local community."
+msgstr ""
+
+msgid ""
+"These pages will assist you in setting up your router for Freifunk or "
+"similar wireless community networks."
+msgstr ""
+
+msgid "This is the access point"
+msgstr "Đây là điểm truy cập "
+
+msgid "Update Settings"
+msgstr "Cập nhật cài đặt"
+
+msgid "Update available!"
+msgstr "Cập nhật sẵn có!"
+
+msgid "Uptime"
+msgstr ""
+
+msgid "VAP"
+msgstr ""
+
+msgid "Verify downloaded images"
+msgstr "Xác minh hình ảnh đã tải"
+
+msgid "Very good (ETX < 2)"
+msgstr ""
+
+msgid ""
+"We are an initiative to establish a free, independent and open wireless mesh "
+"network."
+msgstr "Chúng tôi là phát triển mạng lưới nguồn mở không dây đầu tiên"
+
+msgid "Wireless Overview"
+msgstr ""
+
+msgid "Yellow"
+msgstr ""
+
+msgid ""
+"You can display additional content on the public index page by inserting "
+"valid XHTML in the form below.<br />Headlines should be enclosed between &lt;"
+"h2&gt; and &lt;/h2&gt;."
+msgstr ""
+
+msgid ""
+"You can find further information about the global Freifunk initiative at"
+msgstr "Bạn có thể tìm thấy thông tin về Freifunk toàn cầu tại "
+
+msgid "You can manually edit the selected community profile here."
+msgstr ""
+
+msgid ""
+"You need to select a profile before you can edit it. To select a profile go "
+"to"
+msgstr ""
+
+msgid "and fill out all required fields."
+msgstr ""
+
+msgid "buffered"
+msgstr ""
+
+msgid "cached"
+msgstr ""
+
+msgid "e.g."
+msgstr ""
+
+msgid "free"
+msgstr ""
+
+msgid "to disable it."
+msgstr ""
+
+msgid "used"
+msgstr ""
+
+msgid "wireless settings"
+msgstr ""
diff --git a/modules/luci-mod-freifunk/po/zh-cn/freifunk.po b/modules/luci-mod-freifunk/po/zh-cn/freifunk.po
new file mode 100644
index 000000000..213058d2c
--- /dev/null
+++ b/modules/luci-mod-freifunk/po/zh-cn/freifunk.po
@@ -0,0 +1,403 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2009-06-10 03:40+0200\n"
+"PO-Revision-Date: 2014-06-22 14:33+0200\n"
+"Last-Translator: phantasm131 <phantasm131@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: zh_CN\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Pootle 2.0.6\n"
+
+msgid "BSSID"
+msgstr "BSSID"
+
+msgid "Bad (ETX > 10)"
+msgstr "错误(ETX>10)"
+
+msgid "Basic Settings"
+msgstr "基础设置"
+
+msgid "Basic settings"
+msgstr "基础设置"
+
+msgid "Basic settings are incomplete. Please go to"
+msgstr "基础设置不完整,请转到"
+
+msgid "Basic system settings"
+msgstr "基础系统设置"
+
+msgid "Bitrate"
+msgstr "速率"
+
+msgid "Channel"
+msgstr "频道"
+
+msgid "Check for new firmware versions and perform automatic updates."
+msgstr "检查新的固件版本并自动升级。"
+
+msgid "Client network size"
+msgstr "客户端网络容量"
+
+msgid "Community"
+msgstr "群组"
+
+msgid "Community profile"
+msgstr "群组配置文件"
+
+msgid "Community settings"
+msgstr "群组设置"
+
+msgid "Confirm Upgrade"
+msgstr "确认升级"
+
+msgid "Contact"
+msgstr "联系人"
+
+msgid "Contact information is incomplete. Please go to"
+msgstr "联系人信息不全。请继续填写"
+
+msgid "Coordinates"
+msgstr "位置"
+
+msgid "Country code"
+msgstr "国家代码"
+
+msgid "Default routes"
+msgstr "缺省路由"
+
+msgid "Disable default content"
+msgstr "禁用默认内容"
+
+msgid "Diversity is enabled for device"
+msgstr "启用多重设备"
+
+msgid "E-Mail"
+msgstr "电子邮件"
+
+msgid "ESSID"
+msgstr "ESSID"
+
+msgid "Edit index page"
+msgstr "编辑索引页"
+
+msgid "Enable IPv6"
+msgstr "启用IPv6"
+
+msgid "Enable a virtual access point (VAP) by default if possible."
+msgstr "启用一个虚拟接入点(如果可以的话)"
+
+msgid "Error"
+msgstr "错误"
+
+msgid "Find your coordinates with OpenStreetMap"
+msgstr "使用OpenStreetMap查找位置坐标"
+
+msgid "Freifunk"
+msgstr "Freifunk"
+
+msgid "Freifunk Overview"
+msgstr "Freifunk简介"
+
+msgid "Freifunk Remote Update"
+msgstr "Freifunk远程更新"
+
+msgid "Gateway"
+msgstr "网关"
+
+msgid "Go to"
+msgstr "去"
+
+msgid "Good (2 < ETX < 4)"
+msgstr "好(2<ETX<4)"
+
+msgid "Green"
+msgstr "绿色"
+
+msgid "Hello and welcome in the network of"
+msgstr "您好,欢迎加入网络"
+
+msgid "Hide OpenStreetMap"
+msgstr "隐藏OpenStreetMap"
+
+msgid "Homepage"
+msgstr "主页"
+
+msgid "Hostname"
+msgstr "主机名"
+
+msgid "IPv6 Config"
+msgstr "IPv6设置"
+
+msgid "IPv6 Prefix"
+msgstr "IPv6前缀"
+
+msgid "IPv6 network in CIDR notation."
+msgstr "CIDR表示法的IPv6网络。"
+
+msgid "If selected then the default content element is not shown."
+msgstr "如果选中,那么默认内容元素将不显示。"
+
+msgid "If you are interested in our project then contact the local community"
+msgstr "如果你对我们的项目感兴趣,请联系当地的社区"
+
+msgid "Index Page"
+msgstr "索引页"
+
+msgid "Interface"
+msgstr "接口"
+
+msgid ""
+"Internet access depends on technical and organisational conditions and may "
+"or may not work for you."
+msgstr ""
+"访问因特网取决于技术和机构的前提,可能会、也可能不会像你设想的那样运作。"
+
+msgid "It is operated by"
+msgstr "它是由"
+
+msgid "Keep configuration"
+msgstr "保留配置"
+
+msgid "Latitude"
+msgstr "纬度"
+
+msgid "Legend"
+msgstr "铭文"
+
+msgid "Load"
+msgstr "加载"
+
+msgid "Local Time"
+msgstr "本地时间"
+
+msgid "Location"
+msgstr "所在位置"
+
+msgid "Longitude"
+msgstr "经度"
+
+msgid "Map"
+msgstr "地图定位"
+
+msgid "Map Error"
+msgstr "定位出错"
+
+msgid "Memory"
+msgstr "内存"
+
+msgid "Mesh prefix"
+msgstr "Mesh前缀"
+
+msgid "Metric"
+msgstr "度量单位"
+
+msgid "Mode"
+msgstr "模式"
+
+msgid "Network"
+msgstr "网络"
+
+msgid "Network for client DHCP addresses"
+msgstr "客户端DHCP地址"
+
+msgid "Nickname"
+msgstr "昵称"
+
+msgid "No default routes known."
+msgstr "没有缺省路由"
+
+msgid "Notice"
+msgstr "注意"
+
+msgid "OLSR"
+msgstr "OLSR"
+
+msgid "Operator"
+msgstr "操作者"
+
+msgid "Orange"
+msgstr "橙色"
+
+msgid "Overview"
+msgstr "概要"
+
+msgid "Package libiwinfo required!"
+msgstr "需要libiwinfo包!"
+
+msgid "Phone"
+msgstr "电话"
+
+msgid "Please fill in your contact details below."
+msgstr "请填写下列联系信息"
+
+msgid "Please set your contact information"
+msgstr "请提供联系信息"
+
+msgid "Power"
+msgstr "电源"
+
+msgid "Processor"
+msgstr "处理器"
+
+msgid "Profile"
+msgstr "概要"
+
+msgid "Profile (Expert)"
+msgstr "概要(专家)"
+
+msgid "Realname"
+msgstr "真实姓名"
+
+msgid "Red"
+msgstr "红色"
+
+msgid "SSID"
+msgstr "SSID"
+
+msgid ""
+"Select your location with a mouse click on the map. The map will only show "
+"up if you are connected to the Internet."
+msgstr "在地图上用鼠标点出您的位置。需要连接到互联网地图。"
+
+msgid "Show OpenStreetMap"
+msgstr "显示OpenStreetMap"
+
+msgid "Show on map"
+msgstr "地图上显示"
+
+msgid "Signal"
+msgstr "信号"
+
+msgid "Splash"
+msgstr "公示"
+
+msgid "Start Upgrade"
+msgstr "开始升级"
+
+msgid "Statistics"
+msgstr "统计"
+
+msgid "Status"
+msgstr "状态"
+
+msgid "Still usable (4 < ETX < 10)"
+msgstr "一直可用(4<ETX<10)"
+
+msgid "System"
+msgstr "系统"
+
+msgid "TX"
+msgstr "TX"
+
+msgid ""
+"The <em>libiwinfo</em> package is not installed. You must install this "
+"component for working wireless configuration!"
+msgstr "<em> libiwinfo </ em>包没有安装。进行无线配置您必须安装此组件!"
+
+msgid ""
+"The OLSRd service is not configured to capture position data from the "
+"network.<br /> Please make sure that the nameservice plugin is properly "
+"configured and that the <em>latlon_file</em> option is enabled."
+msgstr ""
+"没有配置OLSRd从网络获取位置数据。<br />请确保正确配置域名服务插件,且<em> "
+"latlon_file </ em>选项被启用。"
+
+msgid "The installed firmware is the most recent version."
+msgstr "所安装固件为最新版本。"
+
+msgid ""
+"These are the basic settings for your local wireless community. These "
+"settings define the default values for the wizard and DO NOT affect the "
+"actual configuration of the router."
+msgstr ""
+"这些基本设置为您本地的无线社区。这些设置定义为向导默认值并不会影响路由器的实"
+"际配置。"
+
+msgid "These are the settings of your local community."
+msgstr "当地社区设置。"
+
+msgid ""
+"These pages will assist you in setting up your router for Freifunk or "
+"similar wireless community networks."
+msgstr "这些页面将帮助你设置路由器Freifunk或类似的无线社区网络。"
+
+msgid "This is the access point"
+msgstr "AP"
+
+msgid "Update Settings"
+msgstr "升级设置"
+
+msgid "Update available!"
+msgstr "可用更新!"
+
+msgid "Uptime"
+msgstr "正常运行时间"
+
+msgid "VAP"
+msgstr "VAP"
+
+msgid "Verify downloaded images"
+msgstr "校验下载的镜像包"
+
+msgid "Very good (ETX < 2)"
+msgstr "非常好(ETX<2)"
+
+msgid ""
+"We are an initiative to establish a free, independent and open wireless mesh "
+"network."
+msgstr "我们倡议建立一个自由,独立和开放的无线mesh网络。"
+
+msgid "Wireless Overview"
+msgstr "无线概要"
+
+msgid "Yellow"
+msgstr "黄色"
+
+msgid ""
+"You can display additional content on the public index page by inserting "
+"valid XHTML in the form below.<br />Headlines should be enclosed between &lt;"
+"h2&gt; and &lt;/h2&gt;."
+msgstr ""
+"可以显示更多的内容,对公众的索引页下面的表格中插入有效的XHTML。<br />标题应放"
+"在&lt;H2&gt;和&lt;/ H2&gt;中"
+
+msgid ""
+"You can find further information about the global Freifunk initiative at"
+msgstr "你可以找到更多有关全球Freifunk活动的信息"
+
+msgid "You can manually edit the selected community profile here."
+msgstr "您可以在这里手动编辑所选社区配置文件。"
+
+msgid ""
+"You need to select a profile before you can edit it. To select a profile go "
+"to"
+msgstr "编辑它之前,你需要选择一个配置文件。选择配置文件"
+
+msgid "and fill out all required fields."
+msgstr "填写所有必填字段。"
+
+msgid "buffered"
+msgstr "已缓存"
+
+msgid "cached"
+msgstr "已暂存"
+
+msgid "e.g."
+msgstr "例如:"
+
+msgid "free"
+msgstr "空闲"
+
+msgid "to disable it."
+msgstr "禁用它。"
+
+msgid "used"
+msgstr "占用"
+
+msgid "wireless settings"
+msgstr "无线设置"
diff --git a/modules/luci-mod-freifunk/po/zh-tw/freifunk.po b/modules/luci-mod-freifunk/po/zh-tw/freifunk.po
new file mode 100644
index 000000000..51432e2e3
--- /dev/null
+++ b/modules/luci-mod-freifunk/po/zh-tw/freifunk.po
@@ -0,0 +1,390 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+"Project-Id-Version: PACKAGE VERSION\n"
+"Last-Translator: Automatically generated\n"
+"Language-Team: none\n"
+"MIME-Version: 1.0\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+msgid "BSSID"
+msgstr ""
+
+msgid "Bad (ETX > 10)"
+msgstr ""
+
+msgid "Basic Settings"
+msgstr ""
+
+msgid "Basic settings"
+msgstr ""
+
+msgid "Basic settings are incomplete. Please go to"
+msgstr ""
+
+msgid "Basic system settings"
+msgstr ""
+
+msgid "Bitrate"
+msgstr ""
+
+msgid "Channel"
+msgstr ""
+
+msgid "Check for new firmware versions and perform automatic updates."
+msgstr ""
+
+msgid "Client network size"
+msgstr ""
+
+msgid "Community"
+msgstr ""
+
+msgid "Community profile"
+msgstr ""
+
+msgid "Community settings"
+msgstr ""
+
+msgid "Confirm Upgrade"
+msgstr ""
+
+msgid "Contact"
+msgstr ""
+
+msgid "Contact information is incomplete. Please go to"
+msgstr ""
+
+msgid "Coordinates"
+msgstr ""
+
+msgid "Country code"
+msgstr ""
+
+msgid "Default routes"
+msgstr ""
+
+msgid "Disable default content"
+msgstr ""
+
+msgid "Diversity is enabled for device"
+msgstr ""
+
+msgid "E-Mail"
+msgstr ""
+
+msgid "ESSID"
+msgstr ""
+
+msgid "Edit index page"
+msgstr ""
+
+msgid "Enable IPv6"
+msgstr ""
+
+msgid "Enable a virtual access point (VAP) by default if possible."
+msgstr ""
+
+msgid "Error"
+msgstr ""
+
+msgid "Find your coordinates with OpenStreetMap"
+msgstr ""
+
+msgid "Freifunk"
+msgstr ""
+
+msgid "Freifunk Overview"
+msgstr ""
+
+msgid "Freifunk Remote Update"
+msgstr ""
+
+msgid "Gateway"
+msgstr ""
+
+msgid "Go to"
+msgstr ""
+
+msgid "Good (2 < ETX < 4)"
+msgstr ""
+
+msgid "Green"
+msgstr ""
+
+msgid "Hello and welcome in the network of"
+msgstr ""
+
+msgid "Hide OpenStreetMap"
+msgstr ""
+
+msgid "Homepage"
+msgstr ""
+
+msgid "Hostname"
+msgstr ""
+
+msgid "IPv6 Config"
+msgstr ""
+
+msgid "IPv6 Prefix"
+msgstr ""
+
+msgid "IPv6 network in CIDR notation."
+msgstr ""
+
+msgid "If selected then the default content element is not shown."
+msgstr ""
+
+msgid "If you are interested in our project then contact the local community"
+msgstr ""
+
+msgid "Index Page"
+msgstr ""
+
+msgid "Interface"
+msgstr ""
+
+msgid ""
+"Internet access depends on technical and organisational conditions and may "
+"or may not work for you."
+msgstr ""
+
+msgid "It is operated by"
+msgstr ""
+
+msgid "Keep configuration"
+msgstr ""
+
+msgid "Latitude"
+msgstr ""
+
+msgid "Legend"
+msgstr ""
+
+msgid "Load"
+msgstr ""
+
+msgid "Local Time"
+msgstr ""
+
+msgid "Location"
+msgstr ""
+
+msgid "Longitude"
+msgstr ""
+
+msgid "Map"
+msgstr ""
+
+msgid "Map Error"
+msgstr ""
+
+msgid "Memory"
+msgstr ""
+
+msgid "Mesh prefix"
+msgstr ""
+
+msgid "Metric"
+msgstr ""
+
+msgid "Mode"
+msgstr ""
+
+msgid "Network"
+msgstr ""
+
+msgid "Network for client DHCP addresses"
+msgstr ""
+
+msgid "Nickname"
+msgstr ""
+
+msgid "No default routes known."
+msgstr ""
+
+msgid "Notice"
+msgstr ""
+
+msgid "OLSR"
+msgstr ""
+
+msgid "Operator"
+msgstr ""
+
+msgid "Orange"
+msgstr ""
+
+msgid "Overview"
+msgstr ""
+
+msgid "Package libiwinfo required!"
+msgstr ""
+
+msgid "Phone"
+msgstr ""
+
+msgid "Please fill in your contact details below."
+msgstr ""
+
+msgid "Please set your contact information"
+msgstr ""
+
+msgid "Power"
+msgstr ""
+
+msgid "Processor"
+msgstr ""
+
+msgid "Profile"
+msgstr ""
+
+msgid "Profile (Expert)"
+msgstr ""
+
+msgid "Realname"
+msgstr ""
+
+msgid "Red"
+msgstr ""
+
+msgid "SSID"
+msgstr ""
+
+msgid ""
+"Select your location with a mouse click on the map. The map will only show "
+"up if you are connected to the Internet."
+msgstr ""
+
+msgid "Show OpenStreetMap"
+msgstr ""
+
+msgid "Show on map"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "Splash"
+msgstr ""
+
+msgid "Start Upgrade"
+msgstr ""
+
+msgid "Statistics"
+msgstr ""
+
+msgid "Status"
+msgstr ""
+
+msgid "Still usable (4 < ETX < 10)"
+msgstr ""
+
+msgid "System"
+msgstr ""
+
+msgid "TX"
+msgstr ""
+
+msgid ""
+"The <em>libiwinfo</em> package is not installed. You must install this "
+"component for working wireless configuration!"
+msgstr ""
+
+msgid ""
+"The OLSRd service is not configured to capture position data from the "
+"network.<br /> Please make sure that the nameservice plugin is properly "
+"configured and that the <em>latlon_file</em> option is enabled."
+msgstr ""
+
+msgid "The installed firmware is the most recent version."
+msgstr ""
+
+msgid ""
+"These are the basic settings for your local wireless community. These "
+"settings define the default values for the wizard and DO NOT affect the "
+"actual configuration of the router."
+msgstr ""
+
+msgid "These are the settings of your local community."
+msgstr ""
+
+msgid ""
+"These pages will assist you in setting up your router for Freifunk or "
+"similar wireless community networks."
+msgstr ""
+
+msgid "This is the access point"
+msgstr ""
+
+msgid "Update Settings"
+msgstr ""
+
+msgid "Update available!"
+msgstr ""
+
+msgid "Uptime"
+msgstr ""
+
+msgid "VAP"
+msgstr ""
+
+msgid "Verify downloaded images"
+msgstr ""
+
+msgid "Very good (ETX < 2)"
+msgstr ""
+
+msgid ""
+"We are an initiative to establish a free, independent and open wireless mesh "
+"network."
+msgstr ""
+
+msgid "Wireless Overview"
+msgstr ""
+
+msgid "Yellow"
+msgstr ""
+
+msgid ""
+"You can display additional content on the public index page by inserting "
+"valid XHTML in the form below.<br />Headlines should be enclosed between &lt;"
+"h2&gt; and &lt;/h2&gt;."
+msgstr ""
+
+msgid ""
+"You can find further information about the global Freifunk initiative at"
+msgstr ""
+
+msgid "You can manually edit the selected community profile here."
+msgstr ""
+
+msgid ""
+"You need to select a profile before you can edit it. To select a profile go "
+"to"
+msgstr ""
+
+msgid "and fill out all required fields."
+msgstr ""
+
+msgid "buffered"
+msgstr ""
+
+msgid "cached"
+msgstr ""
+
+msgid "e.g."
+msgstr ""
+
+msgid "free"
+msgstr ""
+
+msgid "to disable it."
+msgstr ""
+
+msgid "used"
+msgstr ""
+
+msgid "wireless settings"
+msgstr ""