Commit Graph

3490 Commits

Author SHA1 Message Date
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
Ralf Becker
50b34a7b99 docu update and fix IDE warnings 2014-01-27 09:48:43 +00:00
Ralf Becker
4f30210b03 indention 2014-01-24 09:27:52 +00:00
Ralf Becker
5452c9fca2 fixed XML error, if no type given 2014-01-23 12:43:29 +00:00
Ralf Becker
f0710fbecb fixed et2_dialog static methods like confirm did not show translations: injecting an egw object with loaded translations for current app 2014-01-23 10:52:44 +00:00
Nathan Gray
c5e1ed231a Fix deleting multiple rows by storing grid row ID first, otherwise grid row IDs change as we delete rows 2014-01-22 16:43:31 +00:00
Nathan Gray
b4ad250438 Fix rows staying after deleting by preventing automatic grid stuff while deleting 2014-01-22 15:22:29 +00:00
Ralf Becker
2632aff548 disabling redirect as it is not working (opens eTemplate tab in Stylite/Pixelegg template) 2014-01-21 18:58:07 +00:00
Ralf Becker
646c444670 order accounts according to pref of how to display them 2014-01-21 18:46:42 +00:00
Klaus Leithoff
22aa7fc0c8 add widget function to reSelect an Item without firing the events 2014-01-21 17:10:48 +00:00
Nathan Gray
87473ae76b Fix cache clearing in selection manager 2014-01-21 15:50:06 +00:00
Nathan Gray
4d997bf7c8 Fix up caching, clearing and filtering, so we cache what we need and clear only what we have to when filtering
Selection still needs work.
2014-01-21 15:21:42 +00:00
Ralf Becker
3a140463e8 fix invalid debug-level "warning", has to be "warn" 2014-01-21 14:39:51 +00:00
Hadi Nategh
dbb6adf806 Fix no drop place when there's no action in toolbar widget 2014-01-21 13:52:32 +00:00
Ralf Becker
81ed37dab5 defining and documenting "onopenstart" and "onopenend" attributes 2014-01-21 13:39:27 +00:00
Ralf Becker
9f0f33e360 implementing callbacks for "onopenstart" and "onopenend" events: set_onopen(start|end)() and using it in mail to lock tree while accounts are newly opened 2014-01-21 13:34:02 +00:00
Klaus Leithoff
83d840b584 translations provided by stefan 2014-01-21 12:19:17 +00:00
Nathan Gray
045d1a3b19 Revert r45247, mail has some lingering issues and needs a harsh reset 2014-01-21 09:42:10 +00:00
Ralf Becker
37fa9facce fixed IDE warnings and svn propset svn:keywords Id 2014-01-20 18:19:04 +00:00
Ralf Becker
01773135ea fixed buttons in toolbar show no tooltip in Firefox (caused by title attribute on image not button) 2014-01-20 18:11:32 +00:00
Nathan Gray
2123b7cbbf Fix validation of selectboxes when options are specified as key => (label,title).
Fixes edit dialog actions not validating
2014-01-20 16:15:53 +00:00
Nathan Gray
c675cd558e Don't initialize href, fixes href = "" on every image 2014-01-20 15:19:38 +00:00
Nathan Gray
f8a361c0bc Make sure value is not padded with spaces 2014-01-20 13:59:58 +00:00
Nathan Gray
3084da2238 Make sure value is numeric.
Fixes user/group selection sometimes doubled an option
2014-01-20 13:45:33 +00:00
Nathan Gray
546fb77abb Fix unable to use only OK button constant 2014-01-20 13:07:11 +00:00
Ralf Becker
6de6114e22 remove old API browser class, apps only used content_header method with is available as html::browser_header() with identical signature 2014-01-19 09:30:33 +00:00
Nathan Gray
ad735932f1 Add loader animation to iframe src change 2014-01-18 16:55:16 +00:00
Nathan Gray
64fd8ec86b Use widget ID in action manager, only use unique ID if widget somehow has no ID 2014-01-18 16:48:07 +00:00
Nathan Gray
ac0e2f6016 Improve applyFilters(), no longer blanks nextmatch before re-filling 2014-01-18 13:46:33 +00:00
Nathan Gray
2445fae8dd Default formatting for custom field list, uses full width and limits input width 2014-01-18 13:16:27 +00:00
Nathan Gray
c74c024a46 Give specific class to custom fields list table 2014-01-18 11:59:05 +00:00
Nathan Gray
f3762d9884 Fix typo causing wrong record count after delete 2014-01-18 11:58:34 +00:00
Nathan Gray
46c80212ba Better calculation for next/previous index of sparse map 2014-01-18 11:47:36 +00:00
Nathan Gray
35c70fea93 Changes to action system:
- Change selected to not start at global root - fixes key handler only working for 1 app
 - Add depth limit for finding action / object (depth first search)
 - Use depth limit when looking for top level application action/object to avoid crossing apps
2014-01-18 11:21:53 +00:00
Ralf Becker
f25bb789e7 fixed not working telephon integration / url-phone widget 2014-01-18 09:29:32 +00:00
Nathan Gray
1e379a7b8d Avoid error if categories were not provided, just skip styling 2014-01-18 09:04:14 +00:00
Nathan Gray
344a63b37c Fix removing (delete) a row from nextmatch
- Fix broken destroy callback
- Fix caching & actions to be removed
- Fix always removing the last row also
- Fix indexing so arrow keys work over sparse indexMap
2014-01-17 17:57:59 +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
b31befc23b fixed server-side validation of url-email and taglist-email:
- PHP does NOT allow \x00 in regular expression
- added PHP /u modifier for utf-8
- using now regular expression including start- / end-delemiter and modifiers, to have same regular expression (but above 2 exeptions) in PHP and javascript
2014-01-17 17:26:22 +00:00
Ralf Becker
da60fe1228 To work around a bug in action system we call global actionManger of an application NOT just appname, but prefix it with "__" 2014-01-17 16:18:12 +00:00
Hadi Nategh
bb07598beb Add set_href function to image widget,which wraps the image with <a> tag and binds a click handler to it 2014-01-17 15:58:58 +00:00
Nathan Gray
af6b513a54 Wrap search box & button in their own div 2014-01-17 13:35:13 +00:00
Nathan Gray
b094225f7a Wrap action/button groups each in their own span 2014-01-17 13:24:18 +00:00
Nathan Gray
1933389ae2 Fix some more splitter strange behaviour
- Add ignore zone, undock won't go to a position < 20px from edge. In that case, it undocks to 50%
 - Work around deferred layout (Chrome & Firefox) which caused wrong DOMNode height, which broke nm resizing
2014-01-17 12:43:14 +00:00
Klaus Leithoff
387035f76d new translations from translation.stylite.de 2014-01-17 10:48:19 +00:00
Ralf Becker
0b994ee837 new regexp to validate email addresses plus examples what it should validate and what not 2014-01-16 18:10:06 +00:00
Ralf Becker
117a2f5f6b mark mailing-lists in taglist responses with "mailinglist" css class, style it and give it a title "mailinglist" to differenciate from contacts/regular email addresses 2014-01-16 15:58:27 +00:00
Ralf Becker
4b789c932d allow "." in front-part of rfc822 email, eg. "1. company <info@first-company.com>" 2014-01-16 15:14:45 +00:00
Nathan Gray
05f0e486e3 Use long task UI to merge contacts into email templates 2014-01-16 14:05:07 +00:00
Nathan Gray
6b86050e4e UI for long running tasks that can be split
- Common dialog in et2_dialog
- nextmatch action that runs a menuaction for each selected row
2014-01-16 13:54:19 +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
4ff7a0bb31 Allow bigger progress bar 2014-01-16 10:44:04 +00:00
Ralf Becker
7cc91b0046 new&modified images from pixelegg 2014-01-15 18:04:11 +00:00
Ralf Becker
b56175a0f4 new default eTemplate request storate in EGroupware cache with an expiration time of 4 hours.
Benefit over old default is, that we get a short etemplate_exec_id giving better performance for ajax requests.
Drawback is currently poor garbadge collection only removing requests not used in 4 hours or which call egw_framework::window_close on server-side.
We can improve garbadge-collection by binding to window on(before)unload sending a (synchronious) request to server to remove concerned eT2 request.
2014-01-15 16:46:16 +00:00
Nathan Gray
f9c2c73432 Get merging contact into mail template file working 2014-01-15 16:29:30 +00:00
Nathan Gray
63b92d2939 More careful split of parameters, fixes losing part of last parameter if it had '-' in it 2014-01-15 15:05:10 +00:00
Ralf Becker
6544d38e2c storing (not used) cancel or non-cancel button pressed information now in static class-variable instead of request, to avoid modifying request and causing a save of it 2014-01-15 13:46:53 +00:00
Klaus Leithoff
60bb090278 pixelegg changes from wednesday, new/changed images and styles 2014-01-15 13:46:14 +00:00
Ralf Becker
cb8b279e94 fixed image widget uses index.php for not found images 2014-01-14 17:08:41 +00:00
Ralf Becker
629bd6f2ee added pixelegg/less/svg.css stylesheet and id reflecting their name to all svn image 2014-01-14 16:14:51 +00:00
Klaus Leithoff
e5acab5fb9 pixelegg changes from tuesday 2014-01-14 16:04:20 +00:00
Nathan Gray
959a6bd588 Increase size of column resize handle 2014-01-14 14:52:21 +00:00
Nathan Gray
29868662c1 Re-set whitespace to normal inside hbox children, fixes not nowrap text contents 2014-01-14 14:01:30 +00:00
Nathan Gray
3b443f976d Fix link entry widget not expanding after hiding app selectbox 2014-01-14 13:48:11 +00:00
Nathan Gray
cfa981480e Fix selecting 00:00 in datetime widget re-set to current time 2014-01-14 13:32:08 +00:00
Nathan Gray
6418c06b18 No seconds or milliseconds, in date/times 2014-01-14 12:35:28 +00:00
Nathan Gray
ae491c0810 Enable symlinking VFS files to not yet existing entries 2014-01-14 12:11:13 +00:00
Hadi Nategh
c82ffac545 Fix wrong order of search result in linkto 2014-01-14 11:31:33 +00:00
Nathan Gray
29992a7fee Fix linking files to not-saved entries 2014-01-14 10:16:36 +00:00
Ralf Becker
21bb9ef481 pixelegg changes from monday 2014-01-14 08:20:32 +00:00
Ralf Becker
ca1433cd5e no longer warn about widgets without a server-side class, as it is perfectly ok 2014-01-13 15:24:48 +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
be0878f883 Use this.egw() to get the correct (app level) data cache, which stores appname internally.
Fixes permission denied popup when updating.
2014-01-13 15:04:30 +00:00
Nathan Gray
51d802ec78 Only try to unbind if there's a value. If there isn't a value (new entry), handler wasn't bound, and trying causes an error.
Fixes blank popup after save.
2014-01-13 15:03:15 +00:00
Hadi Nategh
dc614521b3 Make toolbar widget being able to d-n-d with user prefernces for actions 2014-01-13 10:26:20 +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
43fe37761f Un-bind window resize handler in destructor 2014-01-11 16:43:06 +00:00
Nathan Gray
a458019490 Avoid some missing attribute warnings by not trying to set needed on readonlys, which don't support it. 2014-01-11 16:40:45 +00:00
Nathan Gray
5f12847fb3 Fire a refresh event (from the nextmatch widget) when the nextmatch auto-refresh happens, so apps can update anything else they need to. 2014-01-11 14:14:42 +00:00
Nathan Gray
52ab3203bd Remove r44925, not needed 2014-01-11 12:01:45 +00:00
Nathan Gray
04a845fa35 Enhance refreshItem() to optionally take the data needed for refreshing to avoid an extra call to the server 2014-01-11 11:53: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
Ralf Becker
87ea75a75b use \042 instead of \" in regular expression, as it stalls minifier 2014-01-10 16:19:05 +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
cb94adb995 Defer loading of tabs
First / selected tab is loaded in line with normal code execution.  Not visible tabs are loaded after using window.setTimeout().  jQuery.Deferred makes sure the template doesn't fire the load event until they're all done.
2014-01-10 14:32:03 +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
a64da9f456 Disable automatic chosen, only explicit now 2014-01-10 09:47:26 +00:00
Ralf Becker
243f20e98c fixed handling of optgroups, eg. notification chains in prefs 2014-01-10 07:08:45 +00:00
Nathan Gray
c9e923bf78 Make sure UID is a string 2014-01-09 18:10:32 +00:00
Nathan Gray
f1558bcffb Fix missing bracket 2014-01-09 16:53:42 +00:00
Nathan Gray
3fdb024ff2 Don't reset height until it's time to invalidate, avoids re-calculating on every row 2014-01-09 16:46:39 +00:00
Nathan Gray
c082dec331 Profiling - Automatically profile etemplate2 loading in Chrome 2014-01-09 16:44:34 +00:00
Ralf Becker
400240f1e4 caching translations for 10days and changing translation url, when translations are changing --> saves server-roundtrip for each translation 2014-01-09 15:32:07 +00:00
Nathan Gray
13572c472a Profiling - Add some timestamps for timeline 2014-01-09 13:38:32 +00:00
Ralf Becker
64cc24815c changed hopefully last reference to orange-ball.png with bullet.png 2014-01-09 12:26:34 +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
5179794f15 Fix constant warnings about not found images when image was in nextmatch row and src was '' for the row 2014-01-09 11:43:15 +00:00
Nathan Gray
49ef2c538a Use any row data passed from server in etemplate load call to avoid an extra call to get_rows 2014-01-09 11:25:08 +00:00
Nathan Gray
957683087c Give a minimum height to loading nm rows so average height can be properly calculated, avoiding loading hundreds of rows. 2014-01-08 16:10:07 +00:00