button names: eg. "delete[$row_cont[path]]" with path containing " or '
- they need to get quoted for correct html markup
- etemplate_request::set_to_process() need to use unquoted version, as
this is how it get returned in $_POST
- correctly quote quotes in parameters of javascript functions used
eg. as eventhandlers, eg. onchange="do_something('$cont[name]');"
--> if $cont[name] is an array: do_something([ 'val1', 'val2' ]) is used
- correctly quote & in get parameters of url's
used for extensions
- if extension is called with empty name, it can set a name in
cell[name], which then get's used for the content (extensions can use
eg. an option to select the name)
the request. Here's an example:
$content['my-label'] = $id ? 'Edit' : 'Add';
You can use it now in the template of an nextmatch row for the label:
@@my-label
Saved the need to import these kind of data in the get_rows function
into the rows.
--> allow to enclose comma-separated checkbox and radio-button option values in quotes (\"), so they can contain commas
eg. file-names containing commas in the filemanager"
- the etemplate_request object which stores the request data in the
a) session (as before) or
b) compressed and encrypted in the form transmitted to the user
Benefit of b) is that the session does not grow and the form can
be submitted as long as the session exists, as we need no garbadge
collection. Of cause more data needs to be submitt between
browser and webserver. b) is choosen automatic if mcrypt and
gzcompress are available, but can be turned off via setting
etemplate_request::$request_class = 'etemplate_request_session';
- static class variables instead of the before used global ones
--> This new version of eTemplate is fully backward compatible with 1.6!
extendet submit_button() to also display <input type=button
new type buttononly for eTemplate
applied this type for addressbook.index.right_add buttons
applied this type for tracker.index.right button
eg. $arr = array('x' => null); boetemplate::isset_array($arr,'x') returned false, as isset($arr['x']) === false, now it returns true like array_key_exists('x',$arr)
Please note: If you already edited your phpgwapi/inc/functions.inc.php to switch it off, you will get an cvs conflict on updating, just do a "cvs update -C phpgwapi/inc/functions.inc.php" to fix it. If you want to use the session restore or you already used it, you need to go to Setup >> Headeradmin and switch it on there.
- new editor has now everything the old one had, beside editing of embeded stylesheets
- new possibility to define a confirmation for buttons via javascript
- finetuned the garbadge collection for php4 sessions
- widget editor works quite nice
- beware it can create Templates the old editor cant understand and destroy if you save or export them from the old editor!
=> need to move the other functionality (import, export, dump, ..) of the old editor to the new one, so the old editor can retire ;-)