Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
sdk:customized-web-gui-extension-display-and-change-custom-config-paramters [2014/12/17 23:18]
fachet
sdk:customized-web-gui-extension-display-and-change-custom-config-paramters [2016/08/03 15:31]
fachet
Line 1: Line 1:
-<​code>​+====== WEB GUI Extension & Custom Configuration Parameters ====== 
 +Customized GUI extensions to display and change custom config paramters. 
 + 
 +<​code ​c gui-extension.are>
 /* DESC: This script will generate a page which can be viewed in the Web Manager /* DESC: This script will generate a page which can be viewed in the Web Manager
  * Some custom config vars are displayed and can be changed  * Some custom config vars are displayed and can be changed
Line 28: Line 31:
  
 for (;;) { for (;;) {
-   if(!is_void(request = nb_page_request(page))) { +   if (request = nb_page_request(page)) { 
-      post = struct_get(request,​ "​POST"​);​+      post = struct_get(request,​ "​POST"​); ​// is empty on GET
       for (i = 0; i < length(post);​ i++) // get POST parameters and store in array and config ​       for (i = 0; i < length(post);​ i++) // get POST parameters and store in array and config ​
          ​nb_config_set(sprintf("​%s=%s",​ fields[i].configvar,​ fields[i].value = post[i].value));​          ​nb_config_set(sprintf("​%s=%s",​ fields[i].configvar,​ fields[i].value = post[i].value));​
Line 41: Line 44:
 } }
  
 +</​code>​
 +
 +{{:​sdk:​gui-extension1.jpg|}}
 +
 +{{:​sdk:​gui-extension2.jpg|}}
 +
 +
 +Entering data into the fields:
 +
 +----
 +{{:​sdk:​gui-extension3.jpg|}}
 +----
 +will store the data in the user configuration paramters for further use:
 +<​code>​
 +custom.var0=ftp.myserver.com
 +custom.var1=myfile.txt
 +custom.var2=admin
 +custom.var3=adminpassword
 +custom.var4=n
 +</​code>​
 +
 +In general following configuration parameters are free to use for customer applications (see router /​etc/​config/​factory-config.cfg):​
 +<​code>​
 +
 +# custom ​
 +custom.status ​                                  =
 +custom.var0 ​                                    =
 +custom.var1 ​                                    =
 +custom.var2 ​                                    =
 +custom.var3 ​                                    =
 +custom.var4 ​                                    =
 +
 +# custom table0
 +custom.table0.0.var0 ​                           =
 +custom.table0.0.var1 ​                           =
 +custom.table0.0.var2 ​                           =
 +custom.table0.0.var3 ​                           =
 +custom.table0.0.var4 ​                           =
 +custom.table0.1.var0 ​                           =
 +custom.table0.1.var1 ​                           =
 +custom.table0.1.var2 ​                           =
 +custom.table0.1.var3 ​                           =
 +custom.table0.1.var4 ​                           =
 +
 +# custom table1
 +custom.table1.0.var0 ​                           =
 +custom.table1.0.var1 ​                           =
 +custom.table1.0.var2 ​                           =
 +custom.table1.0.var3 ​                           =
 +custom.table1.0.var4 ​                           =
 +custom.table1.1.var0 ​                           =
 +custom.table1.1.var1 ​                           =
 +custom.table1.1.var2 ​                           =
 +custom.table1.1.var3 ​                           =
 +custom.table1.1.var4 ​                           =
 +
 +# custom table2
 +custom.table2.0.var0 ​                           =
 +custom.table2.0.var1 ​                           =
 +custom.table2.0.var2 ​                           =
 +custom.table2.0.var3 ​                           =
 +custom.table2.0.var4 ​                           =
 +custom.table2.1.var0 ​                           =
 +custom.table2.1.var1 ​                           =
 +custom.table2.1.var2 ​                           =
 +custom.table2.1.var3 ​                           =
 +custom.table2.1.var4 ​                           =
 +custom.table2.2.var0 ​                           =
 +custom.table2.2.var1 ​                           =
 +custom.table2.2.var2 ​                           =
 +custom.table2.2.var3 ​                           =
 +custom.table2.2.var4 ​                           =
 +custom.table2.3.var0 ​                           =
 +custom.table2.3.var1 ​                           =
 +custom.table2.3.var2 ​                           =
 +custom.table2.3.var3 ​                           =
 +custom.table2.3.var4 ​                           =
 +custom.table2.4.var0 ​                           =
 +custom.table2.4.var1 ​                           =
 +custom.table2.4.var2 ​                           =
 +custom.table2.4.var3 ​                           =
 +custom.table2.4.var4 ​                           =
 +custom.table2.5.var0 ​                           =
 +custom.table2.5.var1 ​                           =
 +custom.table2.5.var2 ​                           =
 +custom.table2.5.var3 ​                           =
 +custom.table2.5.var4 ​                           =
 +custom.table2.6.var0 ​                           =
 +custom.table2.6.var1 ​                           =
 +custom.table2.6.var2 ​                           =
 +custom.table2.6.var3 ​                           =
 +custom.table2.6.var4 ​                           =
 +custom.table2.7.var0 ​                           =
 +custom.table2.7.var1 ​                           =
 +custom.table2.7.var2 ​                           =
 +custom.table2.7.var3 ​                           =
 +custom.table2.7.var4 ​                           =
 </​code>​ </​code>​