summaryrefslogtreecommitdiffhomepage
path: root/modules/luci-base/luasrc/view
AgeCommit message (Collapse)Author
2018-07-23luci-base: strip superfluous space in additional field markupJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-23luci-base: rework reveal/hide CBI password template buttonJo-Philipp Wich
Also add a hidden type password field to prevent browser autocompleters from entering the login passwords into fields liek the wireless WPA key field. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-22luci-base: add description annotations to tblsection cellsJo-Philipp Wich
Add a "data-description" attribute to CBI fields which have a description set, this allows responsive design themes to render a field description when decomposing the table grid. Also reuse the precalculated "typename" property if it exists, instead of deriving it from the template name yet again. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-20luci-base: fix bad CSS class names in table section templateJo-Philipp Wich
The previous refactoring of the template caused the row stripying CSS classes to be interpolated in such a way, that a separating space to previous CSS classes was missing, leading to not rendered row names and other side effects. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-18luci-base: rework CBI footer templateJo-Philipp Wich
- Make sure that hitting enter in the form hits the CBI save action and not apply or cancel - Hide action panel if no actions are available - CLeanup code Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-18luci-base: rework tblsection templateJo-Philipp Wich
- Hide empty title and description rows - Correct row striping offset - Cleanup code Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-18luci-base: rework simpleform templateJo-Philipp Wich
- Ensure that pressing enter in the form triggers the submit action and not a cbi skip or cancel - Hide page actions when empty - Cleanup code Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-16luci-base: fix field section add button/input field namesJo-Philipp Wich
Some CBI map models, mainly the Network -> VLAN page, expect a valid previous section ID in their Section:create() callback. Previous refactoring of the tblsection markup broke this behaviour as the "section" loop variable was accidentally localized, causing it to be undefined outside of the loop body which caused the section add button and name input fields to get rendered with a wrong "name" attribute. Fix this by moving the "section" variable declaration out of the loop and by readding references to it in the non-anonymous section add case. Fixes FS#1657 Fixes 002c4d1d5 ("luci-base: add "Name" label to autogenerated title column") Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-15luci-base: fix handling alias interfaces in ifacelist widgetJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-13luci-base: tweak tblsection markupJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-12luci-base: apply_widget: various fixesJo-Philipp Wich
- Fix button styles in failure message - Pause XHR polling during apply/rollback sessions - Throttle confirm requests to 1 request/second Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-09luci-base: fix placement of CBI stringsJo-Philipp Wich
Commit c0de036b3 ("treewide: always include cbi.js") improperly removed the cbi.js script include from header.htm, leaving behind the string dictionary. Move the JSON dictionary to the parent <form> element and delete the leftover </script> element. 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-06-25luci-base: add "Name" label to autogenerated title columnJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-06-25luci-base: annotate tblsection description row as wellJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-06-23luci-base: globally cleanup markupJo-Philipp Wich
- add responsive attributes to partial cbi templates - unify and fix button style classes - fix styling of sysauth dialog - rework firewall_zoneforwards widget Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-06-08treewide: switch firewall zone, network and iface lists to dropdown codeJo-Philipp Wich
Also switch the weekday and monthday lists in the firewall rule details to cbi dropdowns, vastly uncluttering the form. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-06-08luci-base: add markup, JS and CSS for new dropdownJo-Philipp Wich
This commit introduces the required code for a new, markup based dropdown widget which can be used as a styleable alternative to select boxes or radio/checkbox button groups. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-31luci-base: use common alert message markupJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-31luci-base: add full page overlay during applyJo-Philipp Wich
After applying uci configuration, a full map reload is required in many cases as the anonymous section identifiers might have been rehashed, causing the rendered map to go out of sync. To avoid that, add both a full page overlay preventing further page interaction and let the apply widget forcibly reload the current view once the operation is complete. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
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-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-05-03luci-base: support hiding the "Back to Overview" button in cbi mapsJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-03Revert "luci-base: support hiding the "Back to Overview" button in cbi maps"Jo-Philipp Wich
This reverts commit 52cf265c9d12537d5f37043350328d30ca11bab4. I accidentally committed unrelated changes. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-03luci-base: support hiding the "Back to Overview" button in cbi mapsJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-04-10luci-base: error404: do not access request env directlyJo-Philipp Wich
Instead of attempting to access the request environment directly (which does not work anyway using the CGI SGI), use the already sanitized dispatcher.context.request property to print out the not found url. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-04-07luci-base: escape path strings and field parameterJo-Philipp Wich
Prevent various XSS vectors by not interpolating field and path values verbatim into script and html contexts. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-04-06luci-base: properly initialize cbi.js on SimpleFormsJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-04-04luci-base: use FULL_REQUEST_URI on login form templatesJo-Philipp Wich
Switch from using the REQUEST_URI CGI variable directly to the canonicalized FULL_REQUEST_URI property. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-03-27luci-base: fix colspans calculation in tblsectionFlorian Eckert
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
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-09luci-base/firewall_zonelist: fix visual interface/background alignmentDirk Brenken
* fix for #1667, tested with all standard themes Signed-off-by: Dirk Brenken <dev@brenken.org>
2018-03-01luci-base: fix browser.htm templateFlorian Eckert
If cbi_init() is not called first browser gif will not be found. Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2017-10-17luci-base: gracefully handle broken firewall forwarding sectionsJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-01-26luci-base: mvalue: fix column wrappingJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-12-10Merge pull request #663 from NeoRaider/styleable-checkboxesDaniel Dickinson
luci-base: view: make checkboxes and radio buttons styleable
2016-08-18luci-base: properly style login alert messageJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-03-03luci-base: view: make checkboxes and radio buttons styleableMatthias Schiffer
Add an empty, normally invisible label after checkboxes and radio buttons with cbi-input-{checkbox,radio} classes to allow CSS styling them as suggested on http://www.paulund.co.uk/style-checkboxes-with-css Signed-off-by: Nils Schneider <nils@nilsschneider.net> Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2016-02-24luci-base: cbi: fix misplaced ID in nullsection templateJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2016-02-24luci-base: cbi: also initialize JS if pageactions are disabledJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2016-02-23luci-base: cbi: fix dependency handling of list and multivalues with ↵Jo-Philipp Wich
radio/checkbox widgets Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2016-02-18Merge pull request #644 from chris5560/masterChristian Schoenebeck
luci-base: fixed tabbed map when using NamedSection of same type
2016-02-10luci-base: cbi: rely on auto-serialization for combobox choicesJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2016-02-10luci-base: cbi: rework ListValue and MultiValue templatesJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2016-02-10luci-base: cbi: further refactoringJo-Philipp Wich
Eliminate more inline scripts in favor to global initialization, use a global object for sharing fixed strings instead of passing them to each invocation. Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2016-02-09luci-base: fix dependency handling of optionals (#645)Jo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2016-02-09luci-base: cbi: remove duplicate id from templateJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2016-02-08luci-base: fixed tabbed map when using NamedSection of same typeChristian Schoenebeck
* fixed tabbed map when using NamedSection of same sectiontype * add error message on which tab(s) the invalid/required fields are located Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
2016-01-18luci-base: cbi: refactor event handling jsJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2016-01-18luci-base: refactor cbi dependency handling codeJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>