summaryrefslogtreecommitdiffhomepage
path: root/modules/luci-mod-admin-full/luasrc/view
AgeCommit message (Collapse)Author
2018-07-27treewide: rework rollback/apply workflowJo-Philipp Wich
Rework the apply confirmation mechanism to be session agnostic in order to circumvent cross domain restrictions which prevent the JS code from issuing apply confirm requests in some cases, e.g. when changing the LAN IP. Confirmation calls may now be done from unauthenticated pages, as long as a matching confirmation token is sent along with the request. The reasoning behind this is that there is little security impact in confirming pending apply sessions, especially since those sessions can only be initiated while being authenticated. After this change, LuCI will now launch a confirmation process on every rendered page when a rollback is pending. The confirmation will happen regardless of whether the user is logged in or not, or if the current page is a CBI form or static template. A confirmation request now also requires a random one-time token which is rendered along with the confirmation JavaScript code in order to succeed. This token is not meant to provide security but to ensure that the confirm was triggered from an interactive browser session and not some background HTTP requests that happened to end up in the admin ui. As a consequence, the different apply/confirm/rollback code paths in CBI maps and the UCI change/revert pages have been consolidated into one common implementation residing in the common global theme agnostic footer template. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-26luci-mod-admin-full: abbreviate "MAC-Address" as "MAC" to align with restJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-22luci-mod-admin-full: unify "Alias interface" and "Alias Interface" stringsJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-21luci-mod-admin-full: fix check for traceroute6Jo-Philipp Wich
Since busybox has moved traceroute6 from /usr/bin/ to /bin/, we need to check both locations. Fixes #1973. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-18luci-mod-admin-full: use incremental background scanning for wireless joinJo-Philipp Wich
The previous approach of synchroneously scanning while building the result page was suboptimal since it frequently led to connection resets when accessing LuCI via wireless. It also exhibited problems when accessed via SSL on recent Firefox versions where the page were only loaded partially. Rework the wireless scanning to gather scan results in a background process and put them into the ubus session data area where they can be readily accessed without causing network interruptions. Subsequently rebuild the wireless join page to use XHR polling to incrementally fetch updated scan results. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-18luci-mod-admin-full: properly reset internal device form fieldJo-Philipp Wich
In some cases the hidden internal device field was not reset, e.g. after aborting a wifi scan and using the browser back buttons to navigate to the overview page again. In such a case, the previous device hidden field was still present and a new one getting created, causing further wireless scan attempts to get invoked with multiple radio names as parameter which fails. Fix this issue by using the new generic cbi_submit() helper any by dropping the faulty wifi_action() function. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-15luci-mod-admin-full: improve interface overview displayJo-Philipp Wich
Remove the guessing of primary interfaces for now as we cannot yet properly track parent / child interface relations. Instead, add tooltips to the interface icons displaying detailed physical layer information per netdev. For dynamic or true alias interfaces (using "@" notation), skip the reporting of MAC and traffic stats. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-15luci-mod-admin-full: fix wifi add and scan actionsJo-Philipp Wich
Due to conversion to CBI, the inline forms are now nested and thus do not work anymore. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-13luci-mod-admin-full: differentiate between disabled and not associated wirelessJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-12luci-mod-admin-full: rework interface overview pageJo-Philipp Wich
Convert interface enable, disable and delete actions to proper cbi operations so that we can benefit from the apply/rollback workflow when performing critical interface operations. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-12luci-mod-admin-full: reimplement wireless overview page as cbi modelJo-Philipp Wich
This will offer apply/rollback workflow for tasks like deleting or shutting down wireless networks. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-11luci-mod-admin-full: improve text contrast in realtime graphsJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-09luci-mod-admin-full: rework connection status table handlingJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-09treewide: always include cbi.jsJo-Philipp Wich
Include cbi.js in the main header template like it is done for xhr.js and remove the page specific includes. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-09luci-mod-admin-full: use sans-serif fonts for realtime graph legendsJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-09luci-mod-admin-full: small markup fixes for placeholder textsJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-09luci-mod-admin-full: style and script fixes for realtime bandwidth graphJo-Philipp Wich
- add Math.log2() polyfill for IE 11 - use sans-serif font for time axis Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-03luci-mod-admin-full: rework flashops page markupJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-03luci-mod-admin-full: fix flashops url generation for config tabFlorian Eckert
If a firmware image is not valid then url generation for the config tab is wrong. To fix this use the luci.dispatcher.build_url function. Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-07-03luci-mod-admin-full: check backup.tar.gz on applyFlorian Eckert
If an uploaded backup.tar.gz is not valid we will not get a respond from LuCI. The system will perform a reboot without applying the "tar.gz" even though the backup import failed. To fix this check if the backup archive is valid with the command "gunzip -t <archive>" and if the validation fails render the flashops page with a hint. On the other hand apply the backup archive and perform a reboot as before. Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-07-03luci-mod-admin-full: improve reboot pageAnsuel Smith
This fix problem with empty controller, the check function will never stop to check if the device finish to reboot and we set more tries to wait the router for a longer times. Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com> [reworked markup, simplified logic, removed superfluous alert] Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-03luci-mod-admin-full: improve Y-axis scaling in bandwidth graphJo-Philipp Wich
Calculate a peak that causes the vertical scale to use even values. Fixes #1424. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-02luci-mod-admin-full: fix uci revert success messageJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-02luci-mod-admin-full: cleanup markup on flashops pageJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-02luci-mod-admin-full: rework wireless network status indicatorJo-Philipp Wich
Rework markup and logic of the wireless network status indicator to match that of the interface status widget. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-06-28luci-mod-admin-full: unify DHCP lease status codeJo-Philipp Wich
Merge the DHCP lease status code of the status overview and DHCP/DNS pages into a single shared partial template. Also remove some redundant markup on the index page and wireless assoc list templates. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-06-26luci-mod-admin-full: properly remap ports in switch status displayJo-Philipp Wich
Fixes: 60c5d15e9 ("luci-mod-admin-full: fix possible switch status layout bug") Fixes: bbf096c79 ("luci-mod-admin-full: cleanup markup") Reported-at: https://forum.lede-project.org/t/x/15897/19 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-06-26luci-mod-admin-full: fix possible switch status layout bugJo-Philipp Wich
In some cases we might get status information for more ports than which are actually usable, prevent overflowing the port status row in this case. Reported-at: https://forum.lede-project.org/t/x/15897/14 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-06-25luci-mod-admin-full: report SNR unit as dB, not dBmzjw
Fixes: #1880 Reported-by: "zjw" Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-06-25luci-mod-admin-full: fix average traffic calculation in realtime bandwidthJo-Philipp Wich
Fixes #1908. Suggested-by: "mgalyean" Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-06-25luci-mod-admin-full: fix initializing realtime graphsJo-Philipp Wich
Commit 69782ccbc ("luci-base: xhr.js: defer starting poll queue") changed the way XHR poll queues are started which broke the timing on the realtime graph pages. Fix the problem by manually starting the poller after registering the request handlers. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-06-25luci-base, luci-mod-admin-full: unify wifi assoclist codeJo-Philipp Wich
Merge the assoclist code of the status overview and wireless overview pages into a single shared partial template. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-06-25luci-mod-admin-full: replace status page legend tags with h3 (#1907)Jo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-06-23luci-mod-admin-full: cleanup markupJo-Philipp Wich
Globally cleanup template markup to support responsive design changes in OpenWrt theme. Rework handling of dynamic status tables, consolidate hand-written markup, fix small render bugs in various places and annotate tables where needed. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-06-08luci-mod-admin-full: add suggested italian translationsJo-Philipp Wich
Merge two italian translations suggested in #1870 and add back two missing dots accidentially removed from the translations in a previous commit. Fixes: 588c8618b ("luci-mod-admin-full: fix translation interpolation in JS confirm() calls") Suggested-by: Ansuel Smith <ansuelsmth@gmail.com> Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-06-08luci-mod-admin-full: fix translation interpolation in JS confirm() callsJo-Philipp Wich
Use luci.http.write_json() in conjunction with translate() to write out unescaped translation strings in a manner suitable for interpolation inside JavaScript. Fixes #1870 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-06-08luci-mod-admin-full: git rid of embedded newlines in translation stringsJo-Philipp Wich
Also switch one usage of raw '<%_ ... %>' interpolation to '<%: ... %>' in order to avoid issues with translations using apostrophes. Globally resnyc translations after the fix. Fixes #1866. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-31luci-mod-admin-full: use common alert message markupJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-31luci-mod-admin-full: fix status page render glitch on ChromeJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-30luci-mod-admin-full: rework network and wifi status displaysJo-Philipp Wich
Use a more compact flex layout instead of the tabular display. Also rename "WAN status" to "Upstream" to avoid future confusion about wan interfaces vs. defaultroute interfaces. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-30luci-mod-admin-full: fix revert pageAnsuel Smith
This fix the strange redirect link, a bug with uwsgi where the controller is empty and a bug with the revert page showing the apply content empty. Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com> [drop unrelated revert.html template change] Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-28luci-admin-full: add architecture infoAnsuel Smith
Referring to this, #1698 , we add architecture info and we show Unknown instead of ?. This is usefull if someone needs to install opkg packages manually. Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
2018-05-28treewide: convert HTML tables to divJo-Philipp Wich
Mostly convert HTML tables to div based markup to allow for easier styling in the future. Also change JS accessor code accordingly. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-05luci-mod-admin-full: rework wifi configurationJo-Philipp Wich
- localize variables - get rid of redirects breaking apply workflow - auto-adjust unusable channels when switching country - use apply/rollback workflow when enabling/disabling networks Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-05treewide: rework uci apply workflowJo-Philipp Wich
Switch to rpcd based uci apply/rollback workflow which helps to avoid soft- bricking devices by requiring an explicit confirmation call after config apply. When a user now clicks "Save & Apply", LuCI first issues a call to uci apply which commits and reloads configuration, then goes into a polling countdown mode where it repeatedly attempts to call uci confirm. If the committed configuration is sane, the confirm call will go through and cancel rpcd's pending rollback timer. If the configuration change leads to a loss of connectivity (e.g. due to bad firewall rules or similar), the rollback mechanism will kick in after the timeout and revert configuration files and pending changes to the pre-apply state. In order to cover such rare cases where a lost of connectivity is expected and desired, the user is offered an "unchecked" apply option after timing out, which allows committing and applying the changes anyway, without the extra safety checks. As a consequence of this change, the luci-reload mechanism is now completely unsused since rpcd uses ubus config reload signals to reload affected services, which means that only procd-enabled services will receive proper reload treatment with the new workflow. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-04-05luci-mod-admin-full: escape display parameterJo-Philipp Wich
Prevent reflected XSS through the reset button by url encoding the display parameter. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-04-05treewide: improve handling of page redirections in uci change viewsJo-Philipp Wich
Instead of passing the full LuCI request url, pass the relative resolved request path instead and filter the received value through the lookup() dispatcher function to only allow paths to actual internal pages. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-03-15Merge pull request #1654 from TDT-AG/pr/20180301-luci-several-fixesJo-Philipp Wich
luci-app-firewall/luci-base/luci-mod-admin-full: some fixes and improvements
2018-03-12treewide: unify mac address handlingJo-Philipp Wich
Use the new luci.ip MAC address facilities to parse and verify MAC addresses in a common way, instead of relying on various ad-hoc solutions. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-03-01luci-mod-admin-full: add hint on backup restoreFlorian Eckert
Add a hint to backup restore that files could remain on the system. Signed-off-by: Florian Eckert <fe@dev.tdt.de>