summaryrefslogtreecommitdiffhomepage
path: root/libs/web/luasrc/dispatcher.lua
AgeCommit message (Collapse)Author
2011-11-30libs/web: add assert() statements for unresolvable function caseJo-Philipp Wich
2011-10-30libs/web: dispatcher: fix access to template properties in attr() and ↵Jo-Philipp Wich
ifattr() helpers (#10317)
2011-10-26libs/web: fix possible dispatcher crashJo-Philipp Wich
2011-10-26libs/web: move ifattr() and attr() helpers into dispatcher scope to make ↵Jo-Philipp Wich
them avilable to all templates, remove duplicate exports in cbi tempalte scope
2011-10-26libs/web: dispatcher add node_childs() and node_visible() helper functions ↵Jo-Philipp Wich
for templates
2011-10-25libs/web: dispatcher: implement a "firstchild()" target which simply ↵Jo-Philipp Wich
redirects to the first child of a node, useful for menus that are empty by default and may gain arbritary childs
2011-10-21libs/web: fix package name in error suggestionJo-Philipp Wich
2011-08-12libs/web: add _() function to dispatcher, used for marking translatable menu ↵Jo-Philipp Wich
entries
2011-08-12libs/web: eliminate another uneeded require in dispatcherJo-Philipp Wich
2011-08-12libs/web: optimize access to translate() api by directly reusing the ↵Jo-Philipp Wich
luci.i18n instance loaded in dispatcher - this saves one extra function call, one extra require and one extra table lookup for _each_ translation string
2011-08-12[PATCH] Allow smarter node creation based on visibility during createtreeJo-Philipp Wich
As I've brought up on the mailing list thread "High latency caused by full tree creation", there is a large amount of delay per LuCI request which is spent building the node tree in createtree(). Most nodes created aren't needed for the view presented to the user and only serve to consume memory and CPU time during a page load. My idea is to provide an easy mechanism for index()ers to determine which needs to be created and what isn't. Due to the constraints of the standard LuCI web interface, this optimization needs to establish a few rules: * The page requested must have its node created * All parents of the page being requested must be created, so the children inherit the track * All the top-level nodes "Status", "System", "Services", "Network" (and others added by extensions) must be created in order to have their top-level tabs in the UI * All peers of second-level nodes need to be created as well for the same reason, to display their links on the subindexes To make this easy to implement in each controller, the attached patch adds an "inreq" field to each created node to indicate if it lies on the request path. To satisfy the "top level node" requirement, we always add the top level node, then check its inreq property if the top-level node is not "in request", then the controller can exit index() early.
2011-08-12[PATCH] Wasted memory use storing path copies in node treeJo-Philipp Wich
When creating the node tree, every node stores a copy of its full path table. e.g. for node("admin.network.wireless"), node.path = { "admin", "network", "wireless" } This value is not used anywhere, and likely may be from before the addition of the treecache lookup table? In any instance, I've searched high and low and see nothing ever referencing any node's path via the path member. It eats a good chunk of memory though and as such I believe it should be removed. I've tested every page in the admin-full module after removing it and all seem to function properly.
2011-07-21libs/web: more verbose faultsJo-Philipp Wich
2011-07-20libs/web: make dispatcher faults more verboseJo-Philipp Wich
2011-07-18libs/web: fix index cache rebuild triggering (#275)Jo-Philipp Wich
2010-12-12libs/web: change "module" variable to "modname" in dispatcher.lua, solves ↵Jo-Philipp Wich
apidoc artefacts
2010-11-27libs/web: add the ability for maps to push error messages to the global page ↵Jo-Philipp Wich
header
2010-11-22libs/web: combine apply actions of all maps on a page, prevents concurrent XHRJo-Philipp Wich
2010-11-21libs/web: expose cbi map redirect property to page templatesJo-Philipp Wich
2010-11-13libs/web: allow percent sign in urlsJo-Philipp Wich
2010-11-13libs/web: stricter validation in build_url(), prevents some XSSJo-Philipp Wich
2010-10-15libs/web: add export() to template namespace, allows templates to export ↵Jo-Philipp Wich
symbols to the calling view namespace, this is useful for includes defining shared procedures or variables
2010-04-16libs/web: don't fail if no langauge is set in luci configJo-Philipp Wich
2009-11-29NIU:Steven Barth
Add WDS bridge client mode Extending / repeating WDS network in AP wizard Better 802.11s support
2009-11-14Publish nixio.fs in index-scopeSteven Barth
2009-11-10NIU: More pagesSteven Barth
2009-11-01all: remove references to old i18n filesJo-Philipp Wich
2009-10-31libs/web: prepare template parser, dispatcher and i18n class for upcoming po ↵Jo-Philipp Wich
format change
2009-09-11Fix requestpath, export authuserSteven Barth
2009-08-07libs/web: restore protected call to Template(), was accidentally removed in ↵Jo-Philipp Wich
r4889
2009-07-25Reintroduce prefisx support - was gone somewhereSteven Barth
2009-07-25Allow Basic-Auth pass-throughSteven Barth
2009-07-24Revert external tree usageSteven Barth
2009-07-23libs/web: disable memory debuggin in trunk as wellJo-Philipp Wich
2009-07-23libs/web: dispatcher.lua: add support for external tree building and indexingJo-Philipp Wich
2009-07-19convert luci.fs users to nixio.fs apiJo-Philipp Wich
2009-07-10Session-IDs are lowercase nowSteven Barth
2009-06-21Drop support for luaposix and bitlib (obsoleted by nixio)Steven Barth
Mark luci.fs as deprecated
2009-06-20Merge fixes / improvementsSteven Barth
2009-04-08libs/web: fix file caches in dispatcher, broke when introducing lua-gz supportJo-Philipp Wich
2009-04-04trunk: prepare LuCI to handle .lua.gz filesJo-Philipp Wich
2009-04-03Backport Skip-Button supportSteven Barth
2009-03-27Introduce noheader and nofooter CBI-Dispatcher configSteven Barth
2009-03-14libs/web:Jo-Philipp Wich
- improve handling of low level runtime errors - wrap access to luci.main into assert()
2009-03-07Fixed last commitSteven Barth
2009-03-07Don't compare cstate if there is noneSteven Barth
2009-03-07Fix debugging outputSteven Barth
2009-02-26Introduce luci.dispatcher.get(...) which works like node(...) but doesSteven Barth
not disable the autocreated flag and does not overwrite the target controller so that call()-targets won't loose their binding to their controller
2009-02-26Enable stack tracebacks for 500 errorsSteven Barth
2009-02-09libs/web: don't send Status: 500 in error500() if header is already sentJo-Philipp Wich
modules/admin-core: include template header only once