Merge pull request #27 from freifunk-gluon/batman-on-wan
gluon-batman-on-wan + gluon-luci-portconfig
This commit is contained in:
		
						commit
						e2d9bd5160
					
				
							
								
								
									
										39
									
								
								package/gluon-luci-portconfig/Makefile
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										39
									
								
								package/gluon-luci-portconfig/Makefile
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,39 @@ | ||||
| # Copyright (C) 2013 Nils Schneider <nils at nilsschneider.net>
 | ||||
| # This is free software, licensed under the Apache 2.0 license.
 | ||||
| 
 | ||||
| include $(TOPDIR)/rules.mk | ||||
| 
 | ||||
| PKG_NAME:=gluon-luci-portconfig | ||||
| PKG_VERSION:=0.1 | ||||
| PKG_RELEASE:=1 | ||||
| 
 | ||||
| PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME) | ||||
| 
 | ||||
| include $(INCLUDE_DIR)/package.mk | ||||
| 
 | ||||
| define Package/gluon-luci-portconfig | ||||
|   SECTION:=gluon | ||||
|   CATEGORY:=Gluon | ||||
|   TITLE:=Luci module for advanced ethernet port configuration | ||||
|   DEPENDS:=+gluon-luci-admin +gluon-mesh-batman-adv | ||||
| endef | ||||
| 
 | ||||
| define Package/gluon-luci-portconfig/description | ||||
| 	Luci module for advanced ethernet port configuration | ||||
| endef | ||||
| 
 | ||||
| define Build/Prepare | ||||
| 	mkdir -p $(PKG_BUILD_DIR) | ||||
| endef | ||||
| 
 | ||||
| define Build/Configure | ||||
| endef | ||||
| 
 | ||||
| define Build/Compile | ||||
| endef | ||||
| 
 | ||||
| define Package/gluon-luci-portconfig/install | ||||
| 	$(CP) ./files/* $(1)/ | ||||
| endef | ||||
| 
 | ||||
| $(eval $(call BuildPackage,gluon-luci-portconfig)) | ||||
| @ -0,0 +1,20 @@ | ||||
| --[[ | ||||
| LuCI - Lua Configuration Interface | ||||
| 
 | ||||
| Copyright 2013 Nils Schneider <nils@nilsschneider.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$ | ||||
| ]]-- | ||||
| 
 | ||||
| module("luci.controller.admin.portconfig", package.seeall) | ||||
| 
 | ||||
| function index() | ||||
|         entry({"admin", "portconfig"}, cbi("admin/portconfig"), _("Schnittstellen"), 20) | ||||
| end | ||||
| 
 | ||||
| @ -0,0 +1,38 @@ | ||||
| --[[ | ||||
| LuCI - Lua Configuration Interface | ||||
| 
 | ||||
| Copyright 2014 Nils Schneider <nils@nilsschneider.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$ | ||||
| ]]-- | ||||
| 
 | ||||
| local uci = luci.model.uci.cursor() | ||||
| 
 | ||||
| f = SimpleForm("portconfig") | ||||
| f.template = "admin/expertmode" | ||||
| f.submit = "Speichern" | ||||
| f.reset = "Zurücksetzen" | ||||
| 
 | ||||
| s = f:section(SimpleSection, nil, nil) | ||||
| 
 | ||||
| o = s:option(Flag, "mesh_wan", "Mesh auf dem WAN-Port aktivieren") | ||||
| o.default = uci:get_bool("network", "mesh_wan", "auto") and o.enabled or o.disabled | ||||
| o.rmempty = false | ||||
| 
 | ||||
| function f.handle(self, state, data) | ||||
|   if state == FORM_VALID then | ||||
|     uci:set("network", "mesh_wan", "auto", data.mesh_wan) | ||||
|     uci:save("network") | ||||
|     uci:commit("network") | ||||
|   end | ||||
| 
 | ||||
|   return true | ||||
| end | ||||
| 
 | ||||
| return f | ||||
| @ -0,0 +1,18 @@ | ||||
| #!/usr/bin/lua | ||||
| 
 | ||||
| local site = require 'gluon.site_config' | ||||
| local uci = require 'luci.model.uci' | ||||
| 
 | ||||
| local c = uci.cursor() | ||||
| 
 | ||||
| if not c:get('network', 'mesh_wan') then | ||||
|   c:section('network', 'interface', 'mesh_wan', | ||||
|             { ifname = 'br-wan' | ||||
|             , proto  = 'batadv' | ||||
|             , mesh   = 'bat0' | ||||
|             , auto   = site.mesh_on_wan and 1 or 0 | ||||
|             }) | ||||
| end | ||||
| 
 | ||||
| c:save('network') | ||||
| c:commit('network') | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user