- "etemplate" handler replaces the appname with etemplate
- uietemplate::js_pseudo_funcs() replace xajax_doXMLHTTP('etemplate.xyz_widget.method', with xajax_doXMLHTTP('currentapp.xyz_widget.method.etemplate',
--> fixes the not working new link-widgets in trunc (not working for non-admins / no etemplate run rights)
- new function js_pseudo_funcs used for onchange and onclick:
+ form::name('name'): translates name in hirashical form-name used by etemplate
+ egw::link('url','vars'): calls $egw->link()
+ confirm('message'): translates 'message'
- date-widget does no longer set extension-data if readonly (not used and can conflict with other widgets using the same name, as it was the problem in PM)
- select-widget: fix for "can not unselect the last category"
- red error-messages have now a "white-space: nowrap" for nice formatting
- confirm-message did not quote single quotes (') correct, which caused the complete confirm dialog to fail and allways execute the button
- readonly textarea's without column and row specification are rendered now as <pre></pre> to only take space needed
- improved printing:
+ disabled unnecessary UI-elements in nextmatch
+ nextmatch has now selection for the number of rows to display
+ nextmatch-filters (selectboxes) are now printed as text
Admin can now define multiple addressbooks each with an own edit / view template and an own icon.
Atm. all Addressbooks are stored in one backend, but this will change soon^tm
2) several imporvments for the link-widget
- it uses now popups, if the link-registry says so for a given app
- new widget to add an already linked entry of an other app (used in PM so far)
- new widget to display a single link to view a linked entry
2) grid and template now only temporary set $readonlys['__ALL__'] if they are readonly (before that was permanently set and made all further widgets readonly)
- fixed a double translation on the help text of the extra_link
- running the help-text through expand_name now to allow eg. row specific helptexts in nextmatch rows
- default values for readonly checkboxes (x) get set now, even if checked and unchecked values are specified (but no readonly values)
- fixed readonly case of option values for selectboxes with label+title (value is an array with keys label+title)
- extend etemplate's sitemgr_module class and set the $etemplate_method class-var to a method/menuaction of the app
- the app need to return etemplate::exec() (otherwise the content is empty)!!!
- the app need to avoid redirects or links, as this would leave sitemgr!!!
- allow to re-enable (by default) disabled cells, via setting the value for their name in $readonlys to false
- class attribute can be a reference into the content (@) and/or contain vars like $row or $col
- allow to set and promote attributes for process_exec in extensions (needed for date)
- readonly removes file-uploads now
- readonly value for mulitselectbox is in multiple lines now
- tab-widgets can be edited (new editor lost template content and onclick_handler, if looping)
- select widgets accept again options via $sel_options[$name] $name is the name of the widget and not the form_name
- grid-options get loaded again via the old editor
- 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 ;-)
- based on existing show function the template can be edited in place
- dblclicked widgets will be edited in a popup
- new editor supports not only one grid, but a hirachical tree of widgets
still missing:
- editing and operations of grid rows and columns
- type-specific templates for the popup, to make the options more intuitiv
In the meantime the old editor is still functional
2) Step #1 of removing eTemplate's limitation on allowing only a grid as root element of the widget tree (which can NOT directly contain further grids, thought references to other templates/grids are ok). The storage layer allows now a real tree. Redering and editing only works on the old data variable, which is now a reference to the first grid in the tree.
More to come ...
2) validation only loops now, if a button (not cancle) is pressed, selectboxes with onchange dont get stoped by validation errors ==> fix for bug [ 1001568 ] status is not updated
- needed (= not to be empty) fields are enforced now
- min and max values and format of int and float fields
- validator for text-fields (perl regular expression)
The input-validation is handled completly withing eTemplate, the application dont need to implement any code, just set the right attributes in the template. Validation-errors are displayed in red behind the concerning field, try the template 'etemplate.validation-test' in the editor.