Ralf Becker
12c308cd71
backport of several eT2 fixes from work on ranking / result-service app:
...
r52153: implement part attribute with values "header" and "footer" to put rows in thead or tfoot instead of tbody of table
r52163: stop etemplate_widget_template::instance from returning a stdClass object for a not found template after content-expanding, leading to a fatal error in etemplate_widget line 338
r52175: there should be no validation for disabled widgets
r52176: $cont is NOT root but current name-space in old eTemplate, leaving now identical $_cont for now
r52194: fixed eT2 data returned from client for case where name-space contains more then one component eg. "nm[rows]"
r52195: fixed not run validation on server-side for templates included via template tag
r52196: implement formatting of numbers in read-only widget
2015-03-18 22:16:15 +00:00
Ralf Becker
3d05a43417
implement part attribute with values "header" and "footer" to put rows in thead or tfoot instead of tbody of table
2015-03-17 09:44:14 +00:00
Hadi Nategh
d8ec75d063
Make sure sortable gets send the request to server with correct menuaction, as jsonq always queued the request from home and that may causes wrong redirection. e.g. sortable grid inside an iframe of an application (mail.sieve)
2015-02-23 11:27:22 +00:00
Hadi Nategh
9c812c1799
Fix the grid widget resize handler for grid_wrapper
2015-01-23 15:14:26 +00:00
Hadi Nategh
d56b92af8b
Fix the grid widget resize handler for grid_wrapper
2015-01-23 14:29:46 +00:00
Hadi Nategh
b34adb3108
Fix vfs upload select-file dialog
2014-12-22 09:42:04 +00:00
Hadi Nategh
1869e94f84
Popup resize handler enhancement:
...
- Fix multi-line textbox resizing
- Introduce tab_height to tab widget and remove extra height set on tab containers children
- Let mail compose uses its own resize handling as it deals with some special resizing
2014-12-05 17:29:41 +00:00
Hadi Nategh
e8d1c874e6
Implement resize handler callback for widget in order to resize widget properly after the window size changes
2014-12-04 16:38:34 +00:00
Nathan Gray
28d2fad14a
* Change nextmatch column size calculations so extra size is allocated better.
2014-08-19 23:33:06 +00:00
Nathan Gray
2785aed59c
Check if content is there before trying to look inside it.
...
Fixes "TypeError: Cannot read property 'id' of null" from mail dialog
2014-07-16 14:42:28 +00:00
Nathan Gray
3b915de4cb
Grid row action enhancements:
...
- If row has a key 'id', set the egwActionObject id to match instead of just row_[i]
- Pass the row content in egwActionObject's data, so it's available during action processing
2014-07-14 20:47:52 +00:00
Hadi Nategh
d849c6797a
Switch sorted array and id params position, in sortable gird
2014-05-14 08:29:04 +00:00
Ralf Becker
a7ee896adb
create wrapper only for overflow != "visible", not needed otherwise and can break existing code, eg. name popup in addressbook.edit
2014-02-19 17:18:54 +00:00
Nathan Gray
8456cd0c9d
Implement overflow & height for table
...
Uses a wrapper div, since tables don't care about height or overflow.
2014-02-18 20:20:35 +00:00
Hadi Nategh
d500e4cc91
Fix actions over grid always return the last row DOMNode, by passing DOMNode to et2_action_object_impl constructor for cases like the infamous loop problem (JS closure)
2014-02-18 13:59:45 +00:00
Ralf Becker
2685f4d46e
fixed AB "looses" name/organisation column after changing sorting, caused by grid not instanciating disabled rows as children and therefore column-name changes with sorting
...
added _getColumnName implementation to grid, which takes all nextmatch-* widgets into account (like old eTemplate did) and therefore does not change when sorting changed header-order by disabling of rows
2014-01-27 11:06:44 +00:00
Nathan Gray
77e2849895
Add et2_grid.set_value() to re-create a grid (including auto-repeat).
...
Pass an object with key/value pairs to update the grid's array managers (content,sel_options,readonlys).
The grid will then be re-created (not updated) using the template.
2013-10-18 23:24:49 +00:00
Hadi Nategh
da42c28e57
Fix grid with auto-repeat rows
2013-10-04 13:03:58 +00:00
Nathan Gray
871f63a9f2
Additional checks on autorepeat fallback
...
- Better handling of the different accepted indirect placeholders
- Add a check & error to prevent infinite loops (or crazy large grids)
2013-09-10 23:25:51 +00:00
Nathan Gray
4996c584b3
Use a different method to avoid special expansion breaking nextmatch - skip it for grids inside a nextmatch.
2013-09-10 16:09:12 +00:00
Nathan Gray
7b9b5efe7f
Apparently expandName() can also return null - handle that too
2013-09-09 21:39:31 +00:00
Nathan Gray
2087aed7a3
Check to see if the substitution actually got something, or we could wreck the nextmatch rows.
2013-09-09 19:16:05 +00:00
Nathan Gray
230472d256
Change auto-repeat detection to additionally look through widgets for IDs like const[$row] when there is no row content
2013-09-09 18:52:11 +00:00
Hadi Nategh
fadca5bb6b
fix set value for class when there is an assigned content to class= in .xet file
2013-08-16 08:11:06 +00:00
Ralf Becker
364fbd0f66
fixed wrong call leading to maximum stack size exhaused error
2013-07-22 14:11:58 +00:00
Ralf Becker
f2906a1052
moved most action "comfort" functions (with exception of nm_action and pagination) from server-side nextmatch class to client-side egwActions.updateActions() method, so they are available for all widgets
2013-07-20 16:47:33 +00:00
Nathan Gray
85db39ed4e
Support row ids from template:
...
id="$row_cont[field]"
2013-07-16 16:22:20 +00:00
Nathan Gray
e8c394ed54
Implement egw action system on grid rows.
...
NB: This is not nm_actions. See action system (egwAction.prototype.set_onExecute()) for details.
2013-07-05 15:13:05 +00:00
Nathan Gray
5e90755cd6
Add 'sortable' attribute to grid.
...
Set it to an AJAX (PHP) callback to enable, and it will be passed the grid ID & new row order whenever the user re-orders the grid rows.
2013-07-03 23:16:15 +00:00
Nathan Gray
80ae80098e
Fix disabled grid rows still being created.
...
While not ideal (prevents modification / un-disabling after), this prevents some problems with doubled IDs
2013-06-24 20:50:37 +00:00
Ralf Becker
e64c4fbd04
add some JSDoc so Eclipse shows an outline: @memberOf and @augments (not yet understood by Eclipse), also fixed many warnings (mostly missing semicolons)
2013-04-13 19:00:13 +00:00
Nathan Gray
7a3b2db0a6
If widget's row / column gets disabled, let widget know too
2013-03-15 17:46:53 +00:00
Nathan Gray
8a1386ecdb
Fix grid auto-repeat. It's always the last row that repeats, if there's data
2013-02-05 08:31:08 +00:00
Nathan Gray
fa69637b82
Silence some warnings, mostly about attributes
2012-07-23 23:54:16 +00:00
Nathan Gray
e5c508a609
Move align interface with the rest
2012-07-23 18:01:04 +00:00
Nathan Gray
4a98ec1a26
Allow grids with names to work
2012-06-26 22:56:35 +00:00
Nathan Gray
2692ded763
Default table row valign to top
2012-06-11 15:45:37 +00:00
Nathan Gray
5c0b30bf4f
Implement missing vertical align attribute
2012-04-09 21:55:35 +00:00
Nathan Gray
f53fa79512
If a row is explicitly disabled, it's safe to just skip it
2012-03-30 16:25:30 +00:00
Nathan Gray
b1d4ec546c
Add widget's class to td for backward compatability
2012-03-28 19:21:40 +00:00
Nathan Gray
d61a9f4a69
Column alignment for grid
2012-03-28 18:57:37 +00:00
Nathan Gray
c39b76f8a9
Prevent some warnings about attributes
2012-03-23 19:25:50 +00:00
Nathan Gray
51ba799ed0
Keep looking for row data until next row is missing
2012-03-22 23:15:38 +00:00
Nathan Gray
ee6e9ef8d8
Get auto-repeat grid rows mostly working
2012-03-21 21:31:47 +00:00
Andreas Stöckel
d310b14ecf
Client side API now supports modules which are instanciated per application or per window; removed et2_debug function from et2_core_common, now using corresponding API function.
2012-03-05 13:07:38 +00:00
Nathan Gray
0238387c5c
Return DOM node so name/ID changes can be applied (handled by caller)
2011-10-24 22:52:01 +00:00
Nathan Gray
a2de7dce27
Implement detached interface for grid so sub-widgets get processed
2011-10-24 19:35:04 +00:00
Andreas Stöckel
5c4c175ce2
Checked IE compatibility; dataview columns now resizes correctly; removed event code from etemplate2.js, use interfaces instead (as done with the 'resize' event)
2011-08-26 09:58:25 +00:00
Andreas Stöckel
ec5b162bfa
Moved et2 core interfaces to own file; implemented Class.free which cares about calling 'destroy', removing all references the object may hold and rendering the object unusable after 'free' has been called; added 'getMem_freeMem_trace' which helps hunting down memory leaks with objects derriving from Class; added first implementation of the nextmatch widget - currently does nothing else but rendering the header and clicking on the nextmatch_sortheader labels
2011-08-25 13:35:53 +00:00
Andreas Stöckel
53f4064cdc
Added some naming scheme to the js files
2011-08-24 10:18:07 +00:00