Ralf Becker
|
db1244dc50
|
put favorites, counter and new header_row into one container (header_row_right) to float them all to the right, also removed lots of unnecessary css and fixed alignment
|
2014-03-12 09:47:40 +00:00 |
|
Nathan Gray
|
a1ae0bdb83
|
Add new method etemplate2.getById() to get etemplate object by DOM ID of container node
|
2014-03-11 15:28:18 +00:00 |
|
Ralf Becker
|
a021f998e0
|
fixed template was not prepending parent/top-level name, but search for first loaded template which ends in its name eg. "rows" used in "mail.sieve.index" picked "addressbook.index.rows" instead of "mail.sieve.index.rows"
|
2014-02-25 13:04:28 +00:00 |
|
Nathan Gray
|
1c4b473d6f
|
Make template cache static class level variable, so they're always available & persist for session
|
2014-02-19 22:30:59 +00:00 |
|
Nathan Gray
|
ac653d6c9a
|
Set top level owner to top level widget.
Fixes error if read-only expansion runs off the top of the tree, and no owner found.
|
2014-02-19 00:28:38 +00:00 |
|
Ralf Becker
|
d01d5119ca
|
calling app[appname].et2_ready(et2,name) with template name as second parameter
|
2014-02-17 14:58:20 +00:00 |
|
Ralf Becker
|
61e98b8149
|
default refresh method for jdots, if no nextmatch available
|
2014-02-14 15:01:45 +00:00 |
|
Ralf Becker
|
4dab9cba88
|
if content of template contains data for key "msg", call egw.message() with it and remove it from content
|
2014-02-06 17:27:01 +00:00 |
|
Nathan Gray
|
66cddfbd61
|
If thrown does not have a message attribute, use what was thrown instead.
Fixes 'undefined' error message in log when using throw "error"
|
2014-02-05 17:19:18 +00:00 |
|
Ralf Becker
|
4f30210b03
|
indention
|
2014-01-24 09:27:52 +00:00 |
|
Ralf Becker
|
0c2d8f87b9
|
only bind session/request destroy handler, if we have an etemplate_exec_id. Not the case for pure client-side call like from et2_dialog
|
2014-01-17 17:51:17 +00:00 |
|
Ralf Becker
|
a0213fd5a3
|
now calling our session_destroy also for etemplate2.clear(), this way we get also unloads from frameset templates
|
2014-01-16 12:52:25 +00:00 |
|
Ralf Becker
|
205794f4a7
|
notify server about closed windows, so we can destroy no longer eT needed session/requests and so keep cache small
|
2014-01-16 12:13:16 +00:00 |
|
Nathan Gray
|
4eea706aa0
|
- Return true after window close in et2_load, avoids 'Error while parsing et2_load response'
- Catch trying to set a widget attribute with no set_...() function via JSON assign and warn instead of generic error
|
2014-01-13 15:07:03 +00:00 |
|
Nathan Gray
|
71f0fcdda0
|
Implement refresh type 'update' to _only_ update the data of a row - sorting is not considered, so make sure to use 'edit' if sorting might be affected.
|
2014-01-13 09:40:23 +00:00 |
|
Nathan Gray
|
26b8cae767
|
Avoid removing all event listeners if the etemplate has no unique ID (happens for dialogs)
|
2014-01-11 11:42:23 +00:00 |
|
Nathan Gray
|
3b57659536
|
Defer binding to window resize until after loading is finished.
|
2014-01-10 15:54:35 +00:00 |
|
Nathan Gray
|
9b4cd3e306
|
Some more profiling helpers - timeline timestamp at start of rendering, consistently measure to end of app callback
|
2014-01-10 14:27:21 +00:00 |
|
Nathan Gray
|
f1558bcffb
|
Fix missing bracket
|
2014-01-09 16:53:42 +00:00 |
|
Nathan Gray
|
c082dec331
|
Profiling - Automatically profile etemplate2 loading in Chrome
|
2014-01-09 16:44:34 +00:00 |
|
Nathan Gray
|
13572c472a
|
Profiling - Add some timestamps for timeline
|
2014-01-09 13:38:32 +00:00 |
|
Ralf Becker
|
90edb55ec5
|
add async include and et2 render times to page-generation-times shown
|
2014-01-09 12:20:13 +00:00 |
|
Nathan Gray
|
9009ef44bb
|
Pass current app to egw_app_header() so it can set header for correct app. Fixes sometimes wrong app header shown.
|
2013-12-23 16:13:40 +00:00 |
|
Nathan Gray
|
a1e5783da6
|
Make sure data is set before trying to look inside it.
|
2013-12-16 18:11:53 +00:00 |
|
Ralf Becker
|
374312be3c
|
need to set app_header before message, as app_header is (temp.) replaced by it
|
2013-12-13 01:15:41 +00:00 |
|
Nathan Gray
|
23fd7066bf
|
Add etemplate into indexed list before starting the load process. This way anything looking for it can find it, even if it's not fully loaded (and bind to the load event if needed)
|
2013-12-12 23:37:12 +00:00 |
|
Ralf Becker
|
9c3c077314
|
fixed not updated sidebox in calendar listview
|
2013-12-12 23:32:30 +00:00 |
|
Nathan Gray
|
698efb3039
|
Better handling of submitting with passed button to properly process the button ID into the value array. Fixes the case where ID like 'button[delete]', previously wound up in button.button[delete].
|
2013-12-04 00:15:50 +00:00 |
|
Nathan Gray
|
4c1c710ba9
|
Implement display of server-side validation errors
|
2013-12-02 20:35:32 +00:00 |
|
Nathan Gray
|
092da6a706
|
Use a fallback menuaction that won't give a permission error
|
2013-11-26 22:34:32 +00:00 |
|
Nathan Gray
|
ca92b22daf
|
Downgrade error about overwriting value, id exists twice to warning.
Stop warning about duplicate IDs in children of header bar, those values are part of nextmatch.
|
2013-11-08 16:28:07 +00:00 |
|
Nathan Gray
|
ba9782138c
|
Check for app_callback before trying to call it
|
2013-11-07 23:21:14 +00:00 |
|
Ralf Becker
|
6d226a7921
|
split constructor function and place of instanciation for app.js objects: app[appname] = new app.classes[appname]();
|
2013-11-04 20:54:23 +00:00 |
|
Ralf Becker
|
064baf926a
|
et2.submit(button,async) button can now be widget-id too, new optional async parameter to send request asynchronious (default synchronious), eg. to show an otherwise frozen animation
|
2013-10-30 14:07:29 +00:00 |
|
Nathan Gray
|
388b2cbceb
|
- Fix etemplate2 assign json plugin so it's on the right egw object
- Add a console debug group (when supported) to make it easier to work with console log
|
2013-10-28 20:16:49 +00:00 |
|
Nathan Gray
|
4002907c05
|
Use jQuery's Deferred to solve the deferred loading problem instead of load events.
|
2013-10-16 20:48:05 +00:00 |
|
Ralf Becker
|
c6a97da311
|
fixed changes in get_rows method were not send back to client, if PHP mcrypt is available / eTemplate request stored on client
|
2013-10-11 11:20:21 +00:00 |
|
Nathan Gray
|
26f75a241b
|
Make sure context is the widget when calling setters
|
2013-10-09 17:15:44 +00:00 |
|
Nathan Gray
|
fde83c834e
|
Register an AJAX handler for assign response type. Needs exec_id, widget ID, attribute name and value. Widget must support setting that attribute.
|
2013-10-09 12:56:49 +00:00 |
|
Ralf Becker
|
bafcc80e35
|
fixed translations not loaded on very first request, as postponing ready for waiting on translations did not work, now using a direct callback instead
|
2013-10-08 08:55:15 +00:00 |
|
Ralf Becker
|
0bb8093426
|
fixed translations on client-side: server sends now currentapp and langRequire to client, which uses that to translate phrases, langRequire is only stored in egw object for matching app-name and window!
|
2013-10-07 17:00:03 +00:00 |
|
Nathan Gray
|
7cda6a630b
|
Add a toolbar widget that displays its actions as a toolbar
|
2013-10-04 07:29:38 +00:00 |
|
Ralf Becker
|
5778c9d964
|
fixed egw_framework::message($msg, $msg_type) was not displayed on ajax-load, eg. regular et2 submit
|
2013-10-03 09:09:24 +00:00 |
|
Nathan Gray
|
8f91781933
|
Change nextmatch actions to use ajax submit, not post
|
2013-09-16 15:20:22 +00:00 |
|
Nathan Gray
|
02c6f3b108
|
Remove some more references to phpgwapi/js/egw_json.js
|
2013-09-10 18:56:50 +00:00 |
|
Ralf Becker
|
1590d02816
|
new egw_framework::message($msg, $msg_type="success") method and fixing nextmatch filter-change to return app-header
|
2013-09-05 11:53:25 +00:00 |
|
Ralf Becker
|
1f8e0e9e41
|
global method egw_message(_msg, _type) to display success-, warning- or error-messages in app-header
|
2013-09-04 19:02:34 +00:00 |
|
Nathan Gray
|
4fa0370ce4
|
Avoid error if div has no ID (eg: dialog)
|
2013-08-26 19:08:02 +00:00 |
|
Ralf Becker
|
aa8a848871
|
optional parameter for egw_framework::window_close() to specify an alert message, which get shown/alerted, before closing the window
|
2013-08-26 10:24:11 +00:00 |
|
Ralf Becker
|
d8984be747
|
isDirty() method for whole template / etemplate2 object, thought it needs more work in widgets, not setting this._oldValue in their set_value() method
|
2013-08-23 15:15:30 +00:00 |
|