• last updated 3 hours ago
Constraints: committers
Constraints: files
Constraints: dates
Some more Tcl cleanup

- use curly brackes to enable byte code compilation

- don't use "[expr ...]" when not needed

- prefer "incr i -1" over "set i [expr {$i - 1}] "

  1. … 15 more files in changeset.
Introduced missing ad_library statement. Normalized overall library description.

  1. … 21 more files in changeset.
- allow empty string as argument for template::adp_compile

- prefer ns_quotehtml over ad_quotehtml

  1. … 36 more files in changeset.
- new api call [template::streaming_template] to make streaming template better theme-able

- adjust all calls to use [template::streaming_template]

  1. … 6 more files in changeset.
- correct comments

- backport changes

- insert missing dollar-sign

- remove spaces between xml attribute names, equal-sign, and attribute values

  1. … 5 more files in changeset.
- fix subtle quoting bug: the substitution of

#package_key.message_key# happens via regex on the resulting page

late in the layout process. When a message contains %-substitution

variables, at least these values have to be html-escaped.

The bug showed up e.g. on OpenACS.org in the forums, when

a subject line contained a double quote (e.g. in the .LRN Q&A forum,

message "My applet doesn't appear ...". Since the layout is produced


<a href="@messages.message_url@" title="#forums.goto_thread_subject#">

and the message key is defined as

Go to thread %messages.subject%

the HTML title attribute was terminated prematurely by the double

quote of the subject line and the remainder was invalid HTML.

- backport from head to ease using HEAD modules

  1. … 1 more file in changeset.
- protect against attacks against form:id

  1. … 2 more files in changeset.
- improve documentation

- add noi18n for symmetry (quote, but no message key substitution)

- add documentation for noquote, literal and noi18n

- bump version number

  1. … 5 more files in changeset.
Merging back to HEAD branch oacs-5-8 (using tag vg-merge-oacs-5-8-from-20141027).

  1. … 2547 more files in changeset.
- change spelling of TCL to Tcl

- change requirements to Tcl 8.5

  1. … 64 more files in changeset.
- patch for a subtle difference between aolserver and Naviserver in the handling of "--" (nonpos parameter terminator)

  1. … 1 more file in changeset.
- white space change to follow coding conventions

  1. … 1 more file in changeset.
- make variable reference absolute

- use namespace qualifier rather than "global" command

- fix reporting of errors from nested adp calls leading to

"Error: rp_report_error: Error rendering error page (!)"

Example http://openacs.org/shared/community-member?user_id=27685

- normalize string expressions

- flatten nested lindex-structures

- use single "lassign" instead of multiple "lindex" operations

  1. … 4 more files in changeset.
- avoid unneeded eval for better bytecode compilation

- simplify various wierd ways to set the variable ::template::parse_level

  1. … 5 more files in changeset.
- modernize tcl

- add a fix for broken ns_quotehtml in some aolserver implementations

- added "@var;literal@" notation: such variables are neither quoted nor localized. This leads to more sane code in case of comparison in .adp files

  1. … 1 more file in changeset.
- abstract in check for existance of a command whether this is scripted or not

  1. … 5 more files in changeset.
produce more efficient code from the adp-compiler (using byte compiled functions, using local vars)

  1. … 3 more files in changeset.
Fun with developer support!

1. Added a button to turn template profiling on/off.

2. Moved templating information to the request information page. It was

confusing having it work differently than db and other information. If,

for instance, you clicked on a request link in the developer support

index page, you'd get the db timing information for that request, but

the profiling stuff would come from the footer - and would be the profile

information for displaying request-info.tcl/adp, not for the template

served for that request. Oops.

3. Simplified the ds_profile proc since in practice it only is used for

profiling templates.

  1. … 10 more files in changeset.
remove deprecated calls to ad_parameter

  1. … 4 more files in changeset.
use tcl 8.4 comparison operators and braced exprs for byte code compilation

  1. … 2 more files in changeset.