#1057 closed defect (fixed)
Obsolete [get_layers] doesn't return expected value
Reported by: | dmorissette | Owned by: | sdlime |
---|---|---|---|
Priority: | high | Milestone: | |
Component: | MapServer CGI | Version: | 4.3 |
Severity: | normal | Keywords: | |
Cc: | nsavard@… |
Description
Norm was working with an old copy of the Itasca demo and noticed that the [get_layers] template tag doesn't return the value that it used to. In the code and in the docs it is marked as obsolete, but it should either be removed, or be fixed to return the value that it should. According to docs: ---------------- [get_layers] All active layers formated for inclusion in a URL. (i.e. layer=layer1&layer=layer2 and so on...). Used for a "GET" request. This template is obsolete, use [layers_esc] instead. [layers] | [layers_esc] All active layers space delimited. Used for a "POST" request. ---------------- In the mapserv.c we have: ---------------- outstr = gsub(outstr, "[layers]", repstr); encodedstr = msEncodeUrl(repstr); outstr = gsub(outstr, "[layers_esc]", encodedstr); outstr = gsub(outstr, "[get_layers]", repstr); // obsolete ---------------- So what is returned now for [get_layers] is the unencoded version of [layers_esc] (the same value as [layers]) which is missing the GET url parameter names. This used to work fine 3.6. We confirmed that this problem is present in at least 4.2 and 4.4. What should we do? Fix [get_layers] or take it out completely?
Change History (2)
comment:2 by , 19 years ago
Let's not forget the docs. I have removed [get_layers] in the template-reference.xml
Note:
See TracTickets
for help on using tickets.