Commit Graph

1779 Commits

Author SHA1 Message Date
Nathan Gray
33f264346a Fix error deleting a favorite 2014-05-13 21:39:23 +00:00
Nathan Gray
18bf4a4ebd Fix typo 2014-05-13 18:44:59 +00:00
Nathan Gray
51c73ddf89 Make sure all account options are present. Was on server side, now needs to be client side. See r46713 2014-05-13 18:40:31 +00:00
Nathan Gray
1ccc8f9e0d Fix label DOM nodes so it works in columns other than the first one 2014-05-13 00:36:32 +00:00
Nathan Gray
777e1bec1e Better handling for detached label, fixes errors if there is no label 2014-05-12 22:16:05 +00:00
Nathan Gray
b4b1eee57a Expand what is accepted as a CSV for multi-select. Fixes Permanent time zone preference does not get saved. 2014-05-12 22:03:38 +00:00
Nathan Gray
34a382be2b Implement detached labels 2014-05-12 21:49:48 +00:00
Nathan Gray
f5010b880b Preserve expanded sub-grids across refresh 2014-05-12 19:29:00 +00:00
Hadi Nategh
e8e3de984a Wrap content in link-add with span 2014-05-09 15:54:11 +00:00
Hadi Nategh
5b80563707 Consider other date widgets for date initialization as they could have fixed data_format too 2014-05-09 09:48:10 +00:00
Hadi Nategh
fbd35cba3f No need to check oldValue as check for customfields condition is good enough, and it may cause other date widgets do not get parsed 2014-05-09 08:48:26 +00:00
Hadi Nategh
b6e2460e91 Set customfields "date" and "date-time" widgets value correctly when they get initiated by storage value 2014-05-08 17:48:54 +00:00
Hadi Nategh
82e259c407 Setup data_format customfileds "date" and "date-time" in client-side 2014-05-08 17:45:09 +00:00
Nathan Gray
c886f46122 - Listen to sub-template deferred to allow children of children to finish initializing (allows more complex sub-templates)
- Special case for sub-template filter having null value
- On sub-template input change, only update changed values instead of resetting & re-generating filters
Fixes some sub-template filters & col_filters conflicting and overwriting each other
2014-05-08 16:25:28 +00:00
Nathan Gray
609d1df763 Expose key splitting publicly, so other code can use it 2014-05-08 16:14:41 +00:00
Nathan Gray
6ec24b1b50 Make sure app ObjectManager is there before trying to use it 2014-05-07 20:55:34 +00:00
Nathan Gray
d80ef84012 Remove div from console, it's no longer useful 2014-05-07 16:35:51 +00:00
Ralf Becker
b111f5005b fixed select-accounts show only part of users, caused by previously trying to extend now used array 2014-05-07 15:51:45 +00:00
Nathan Gray
354c030520 Work in progress on gantt chart:
- Gantt widget now supports context menu
2014-05-07 14:41:15 +00:00
Nathan Gray
30b300201e Clear action manager, if present 2014-05-07 14:38:44 +00:00
Hadi Nategh
0691903105 Still need to translate empty_label in selectbox widget for cases like when we do have "options" as an extra item for select_options 2014-05-07 13:03:14 +00:00
Hadi Nategh
b3ebc04ae5 Fix missing "translate" sub-attribute for some other widgets "empty_label" attribute. 2014-05-07 12:23:02 +00:00
Hadi Nategh
c35968d4a6 No need to translate empty_label explicitly, as we have a "translate" sub-attribute to triger translation for an attribute 2014-05-07 12:12:25 +00:00
Hadi Nategh
a8278017ed Fix missing translation for taglist's empty_label attribute 2014-05-07 11:06:47 +00:00
Nathan Gray
4f2504aafc Fix typo 2014-05-06 20:05:08 +00:00
Nathan Gray
b76ace01f5 Revert r46820 as it causes some widgets (tag list) problems.
Fix select account changing selectbox default instead.
2014-05-06 19:56:02 +00:00
Nathan Gray
c99f0ee32d Fix bug in last select option fallback option, was getting value instead of options 2014-05-05 22:17:23 +00:00
Nathan Gray
4053d1a204 - Move function to find selectbox options to public, static so other widgets (read only selectAccount) can use it
- Fix selectAccount missing extra app-specific options
2014-05-05 17:25:01 +00:00
Nathan Gray
e004e23c31 If the default is an object, use a clone of the default value to prevent widget from accidentally changing the default by reference 2014-05-05 17:22:25 +00:00
Hadi Nategh
62fa190439 Handle converting string date/time formats to Date object for date-time widget 2014-05-05 14:09:47 +00:00
Hadi Nategh
e85816cce9 Add button caption to vfs-select widget 2014-04-30 10:52:27 +00:00
Nathan Gray
d828eefaeb Fix missing column filters after loading template(s) 2014-04-29 19:05:55 +00:00
Nathan Gray
785ed4e4c1 Round dates to grid scale, avoids potential infinite loop in the other method 2014-04-28 23:05:26 +00:00
Nathan Gray
1aee6f3bed Enhance auto-popup to only show visible buttons 2014-04-28 20:20:54 +00:00
Hadi Nategh
c912849bd5 Apply favorites sortable feature to sidebox fav. menu 2014-04-25 07:37:11 +00:00
Hadi Nategh
334c66d203 Set select_options for <listbox> widget type of "select-account" with egw->accounts client-side method 2014-04-24 11:49:39 +00:00
Nathan Gray
ba8bfa1b6a Gantt chart work in progress
Filters, ajax fetching, double click (edit) callback
2014-04-23 22:18:05 +00:00
Nathan Gray
4f2f64fcbe Automatically disable custom field column if there are no custom fields 2014-04-23 20:39:22 +00:00
Nathan Gray
48fa6611f3 Use a single client-side cache for account selection so we don't have to send it for every widget 2014-04-23 19:00:59 +00:00
Nathan Gray
f5297f17a7 Add a get_value() function to allow access to values outside of callback 2014-04-23 16:44:01 +00:00
Hadi Nategh
54e241f468 Update instantly the sideBox fav. menu when sort items from nm fav. menu 2014-04-23 13:58:32 +00:00
Hadi Nategh
9805f019a1 * Favorites: Make favorites item sortable and store their orders as user preference 2014-04-23 11:42:48 +00:00
Nathan Gray
a8a73683b4 Fix missing explicitly supplied select options 2014-04-22 16:56:27 +00:00
Nathan Gray
7a674ff8aa Don't add empty label as option for tags or search (chosen), it's registered as a real option. 2014-04-22 15:47:22 +00:00
Ralf Becker
f26a140a01 fixed search returns users, even if limited to groups 2014-04-17 12:24:03 +00:00
Nathan Gray
c4f56f2c3b New dhtmlxGantt library, and etemplate2 widget to use it (work in progress) 2014-04-16 19:47:29 +00:00
Hadi Nategh
8fb542465f Remove extra comment field from link widget, as we have another one in context menu 2014-04-15 11:34:50 +00:00
Nathan Gray
5720af761a Avoid warnings about not listening for deferred loadingFinished 2014-04-08 21:22:07 +00:00
Nathan Gray
683310ba94 Add a new function activateTab(widget) to activate a tab containing a given widget, move previous code inside tab widget to properly encapsulate it. Fixes broken tab selection with deferred tab loading, wrong tab shown if a widget has a validation error. 2014-04-08 17:11:35 +00:00
Nathan Gray
8ca9f9a469 Store internal reference to CKEDITOR instance, fixes Uncaught TypeError: Cannot read property 'on' of undefined 2014-04-07 22:20:30 +00:00
Nathan Gray
1ca9b134f9 Fix typo causing extra selection after delete 2014-04-07 20:57:59 +00:00
Nathan Gray
2e72b12452 Only email addresses in mail app need the hover popup, so move it into mail app. 2014-04-07 19:25:17 +00:00
Nathan Gray
76357f3451 Fix no_filter[2] nextmatch attribute not applied when set in template 2014-04-07 19:07:10 +00:00
Nathan Gray
0f94764857 Don't do an email address hover in addressbook - they're already a contact if they're in addressbook 2014-04-07 16:18:56 +00:00
Nathan Gray
0c220389fb Remove click handler from read-only account widget 2014-04-07 14:59:01 +00:00
Nathan Gray
99023a7812 If initial rows has no rows, add an empty row placeholder.
This way add context menu items work without clicking search first.
2014-04-07 14:44:52 +00:00
Nathan Gray
f6f2a883f0 If UID prefix is not set by the application, set dataStorePrefix automatically once and use it, instead of calculating it (different ways) each time. 2014-04-03 15:23:05 +00:00
Nathan Gray
1dcb1a9065 Fix bug causing long task to fetch the same 200 ids repeatedly 2014-04-03 14:33:01 +00:00
Nathan Gray
68ee717d0f Fix occasionally missing click handler 2014-04-02 23:31:01 +00:00
Ralf Becker
ce3c5c897f stop server-side validation errors, if submit was with no_validation 2014-04-02 19:30:33 +00:00
Nathan Gray
734b5d02f2 Add a parameter for submit() to skip the client-side widget validation 2014-04-02 18:49:43 +00:00
Nathan Gray
d5c810d5c4 If nextmatch starts hidden (or disabled) it won't size correctly.
Added a resize if enabling a disabled nextmatch so it re-calculates its size.
2014-04-02 15:16:12 +00:00
Nathan Gray
ad3e1e5021 Cast legacy options to string, in case someone passed in a number or something.
Fixes error loading tracker configuration with queue other than all.
2014-04-02 14:43:23 +00:00
Nathan Gray
210dea829b Avoid big scary error if server tries to assign on an unloaded etemplate.
Log a little friendly warning instead.
2014-04-01 21:42:06 +00:00
Nathan Gray
0377dbe076 Use tree's ActionManager for new ObjectManager, fixes "Action object with id 'mail_drop_move' does not exist" 2014-04-01 21:32:06 +00:00
Nathan Gray
d3c0314b4d Switch AJAX upload library to Resumable for chunked uploads. 2014-04-01 20:48:40 +00:00
Ralf Becker
e30adcba12 indention 2014-04-01 14:14:56 +00:00
Nathan Gray
de2f05ee27 If link is for just 1 id (normal case), then don't use an array for ID 2014-03-31 18:20:54 +00:00
Nathan Gray
dcf0cf4e95 If link is for just 1 id (normal case), then don't use an array for ID 2014-03-31 18:20:38 +00:00
Nathan Gray
9d8304a70e Fix typo preventing proper display of custom field column for some templates 2014-03-31 17:26:10 +00:00
Nathan Gray
ae940d9174 Fix for nextmatch header setFilters()
- Add flag to prevent widget change events from triggering an applyFilters() call
Fixes custom date filters causing extra calls and resetting other column filters.
2014-03-31 15:49:36 +00:00
Ralf Becker
dfc5a8222e using !egw.app(appname) to check if user has no run-rights for appname 2014-03-28 13:09:21 +00:00
Ralf Becker
61f25c05ff fixed direct access to (not longer existing) egw.userData.apps[app] by using method egw.app(app) 2014-03-28 08:46:54 +00:00
Nathan Gray
5e6d19568d Add a popup on hover to every read-only url-email widget.
Popup gives an option to add the email to a new contact
2014-03-26 23:25:43 +00:00
Nathan Gray
24fd900626 Fix multiple request problem
- actually pass delay to autocomplete, it works better that way
- track previous request, and abort it if another one needs to be started
2014-03-26 17:55:50 +00:00
Nathan Gray
869bf62108 Improve handling of changing actions in a nextmatch response:
- Also (re)set default action on new actions
- Avoid extra actionManagers
2014-03-26 14:55:06 +00:00
Nathan Gray
b93286a467 Don't call finish or change callbacks if upload fails 2014-03-25 21:03:35 +00:00
Nathan Gray
2f90f3d427 Fix changed actions only partially updated, missed _actionLinks in controller 2014-03-25 18:34:00 +00:00
Nathan Gray
7ef65b30d6 Fix expand_multiple_rows button to only be added once 2014-03-25 15:20:05 +00:00
Ralf Becker
7d7436e54b fixed javascript errors happening if config was not loaded 2014-03-25 12:23:06 +00:00
Nathan Gray
2e6dea62d6 Fix some bugs in selectAccount with rows not set, but multiple on
- Fix opening single select search dialog instead of multiple (cleared previous selection on OK)
- Fix double user / groups in selected list
2014-03-24 20:20:25 +00:00
Nathan Gray
b16c32714a - Some documentation
- Fix bug ignoring nextmatch-sortheader's sortmode attribute
2014-03-24 19:30:29 +00:00
Ralf Becker
bfac67cc17 fixed et2_number was not reacting on size attribute 2014-03-24 18:43:45 +00:00
Nathan Gray
b6cf2762c3 egw tooltips aren't supported in nextmatch rows, so set field title for custom field list when not shown as separate column. Also set data attributes, if anyone wants to try some fancy styling. 2014-03-24 18:00:09 +00:00
Klaus Leithoff
94ff3e1966 handle special egw-open param for nextmatch action when from=merge is involved (params meet different preconditions then) 2014-03-24 08:23:22 +00:00
Hadi Nategh
dd95ab16cc * etemplate|widget_file: Make widget_file stylable 2014-03-21 16:27:09 +00:00
Ralf Becker
ac18b6cc8d changed et2_core_inheritance.js to implement ClassWithAttributes extending Class from egw_inheritance and changed et2 objects to use ClassWithAttributes when required (also fixed lots of IDE warnings / added docu) 2014-03-20 09:40:37 +00:00
Nathan Gray
69f4d67d38 Test that the autorefresh timer is still going before binding, tab may have been closed 2014-03-19 20:11:03 +00:00
Nathan Gray
133c4a317c Fix bug in using knownUIDs where empty rows were left or too many removed when the count changed 2014-03-19 19:19:34 +00:00
Ralf Becker
f2e997d445 replace first parameter "%1" with "%s", to allow to use regular lang syntax as well as eTemplate one 2014-03-19 12:39:10 +00:00
Nathan Gray
4a5d906e48 Enable using knownUIDs and lastModification timestamp to avoid sending unchanged rows back to client 2014-03-18 22:54:14 +00:00
Nathan Gray
3f49db5fb9 Handle values set but not in select_options 2014-03-18 14:52:31 +00:00
Ralf Becker
f1d7dd7a0e fixed readonly selecbox not always found options, caused by it not expecting options to be an array. Now we always preserv type of options (array or object) and correctly iterate over them when trying to find an option by its value 2014-03-18 14:41:23 +00:00
Ralf Becker
eaaad85521 reverted r42883: Make sure there is a "None" option if the select-account is not required so user is not forced to pick an account
--> if "None" option is wanted, it should be added to template, that is the logic in regular select box too
2014-03-18 13:22:15 +00:00
Nathan Gray
b0db615411 - Fix taglist account infinite loop when looking for accounts (using link title system instead of data source)
- Don't search server side if there's no query string
2014-03-17 23:03:24 +00:00
Nathan Gray
f337d45b29 Fix taglist-account not suggesting anything by making sure select_options don't get set. 2014-03-17 20:24:34 +00:00
Ralf Becker
250d2f813a fixed wrong autocomple url cauased by webserver_url just "/egroupware" and set more reasonable default of allowFreeEntries: false for taglist-accounts 2014-03-17 15:29:58 +00:00
Nathan Gray
fe21f0fd74 Enhance nextmatch entryheader to return full value if it's anything more than a simple, single selection so we can handle it server side. 2014-03-13 18:58:59 +00:00
Nathan Gray
a0caff3b6a Javascript split() doesn't work like PHP explode() - fixed to not lose extras 2014-03-13 18:56:51 +00:00
Ralf Becker
5e74e836f7 fixed wrong augmented class 2014-03-12 18:49:50 +00:00
Ralf Becker
6b09e93768 adding et2_url_span class to surrounding span 2014-03-12 18:48:59 +00:00
Nathan Gray
1c6abab9a8 Fix link activation to be able to handle the same link (or email address) multiple times in the content 2014-03-12 18:28:47 +00:00
Ralf Becker
46d4d3acce allow to optional prepend tabs by using prepend attribute on a tab in tabs array 2014-03-12 17:54:52 +00:00
Ralf Becker
ee97185b40 allow to specifiy optional cache-buster in template attribute ("?"+filemtime of template) 2014-03-12 17:42:29 +00:00
Nathan Gray
5f1dcfea57 Unbind handler used to toggle autorefresh 2014-03-12 17:09:56 +00:00
Hadi Nategh
8b326fb60f Move styling of date-durtation widget input field to specific class in etemplate2.css 2014-03-12 13:13:18 +00:00
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
e7de92519a - Restructure nextmatch header markup
- Add new attribute header_row to place custom template inline inside nextmatch header
2014-03-11 21:54:19 +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
7bda46582d changed toolbar to have last action.id as value, when submitted to server 2014-03-10 21:14:02 +00:00
Ralf Becker
94f468095d disable favories dropdown button if not called from infolog (eg. CRM view) 2014-03-10 19:47:09 +00:00
Hadi Nategh
c43550a54b Add proper css class to date-duration widget 2014-03-10 15:20:40 +00:00
Ralf Becker
f55641e23a do NOT show required color on td, we want it just on input 2014-03-10 15:08:18 +00:00
Ralf Becker
83b20c2019 some changes to dtd and added otherwise implemented "readonly" attribute to inputWidget 2014-03-07 09:08:47 +00:00
Nathan Gray
96bc660ee3 Clear filters before applying header changes, to handle the case of nulled input, which would otherwise be skipped, and the old value filled in. 2014-03-06 22:09:40 +00:00
Nathan Gray
8a3cda964e Fix clearing date field does not fire change event 2014-03-06 21:17:37 +00:00
Ralf Becker
ee50a6b9bb fix to work correctly with actions containing only a string/caption, using action.execute() to get automatic confirmation from action system and defaulting to default actions (not all actions) if last action is dragged off 2014-03-06 18:38:02 +00:00
Ralf Becker
06ffa47c25 new "default_execute" attribute to set default onExecute for all actions 2014-03-06 18:35:57 +00:00
Nathan Gray
dbbad57f90 Fix selecting next entry when there are no others 2014-03-06 18:07:47 +00:00
Ralf Becker
5facfc02a1 fixed IDE warnings 2014-03-06 11:01:23 +00:00
Ralf Becker
6cdea51c9e when activating mailto-links/email addresses use mail app unless (addressbook-)preference says otherwise 2014-03-06 10:42:37 +00:00
Ralf Becker
f68a2ac1f5 fixed link activation in et2_description (activate_links parameter) to always use target _blank, also fixed docu in that extra_link_target is only for href attribute 2014-03-06 10:41:22 +00:00
Ralf Becker
e41fbe59ff using current app, if no or empty source given 2014-03-06 07:50:06 +00:00
Nathan Gray
5fa9a9c0d0 If categories get updated in a get_rows() call, clear the rowProvider internal cache so it uses the new values 2014-03-05 17:21:13 +00:00
Nathan Gray
bb3eb717c1 Refactor huge data fetch into chunks so long task doesn't die. 2014-03-04 20:35:41 +00:00
Ralf Becker
99e97d2bfc fixed Selecting an InfoLog category does not show this cat but "Loading" 2014-03-04 17:27:19 +00:00
Ralf Becker
3e13b3f77b use app[appname].setState if available to allow app to overwrite it (eg. change to non-listview in calendar) 2014-03-04 17:00:27 +00:00
Ralf Becker
84c611cb2c fixed click on favorite (funnel) always resets all filters, not change to default favorite selected via radio buttons 2014-03-04 16:27:20 +00:00
Ralf Becker
947c2f0462 not visible nextmatch will run refresh when it becomes visible again (not just ignoring it) 2014-03-04 16:05:38 +00:00
Ralf Becker
ef7c2e5faa fix IDE warnings 2014-03-04 15:08:34 +00:00
Ralf Becker
5af397132a fixed opening of addressbook entries sometimes fails after searching: caused by not detected filter change and kept, but no longer displayed selection
JSON.stringify(this.controller._filters) == JSON.stringify(this.activeFilters) seems always true, like if it is a reference and not the old state
changed code not to change activeFilters only by calling applyFilters with requested change and detecting there if we have a change
2014-03-04 13:49:33 +00:00
Hadi Nategh
1e449f571a Bind a click handler to collapse the toolbar menulist when click event occurs 2014-03-04 11:03:03 +00:00
Nathan Gray
5abc2eceef Fix broken delete of link when to_id is not set (not saved entry) 2014-03-04 00:26:42 +00:00
Nathan Gray
d2b2f71058 If select all + long task, fetch all from the server or else it will just run on what's in the grid. 2014-03-03 23:24:05 +00:00
Nathan Gray
38e6e353fd Avoid error when clicking on a link with just title 2014-03-03 22:29:44 +00:00
Nathan Gray
e6d6c3c270 Fix nextmatch sort header does not indicate sorted column after reload. 2014-03-03 21:25:00 +00:00
Nathan Gray
b7c989adf8 Use grid's deleteRow() in combination with setTotalCount().
Fixes deleted row remaining, breaking grid after update(), (first row remains after changing filter)
2014-03-03 17:32:12 +00:00
Ralf Becker
2a06876b78 widget to display an application icon 2014-03-03 16:50:01 +00:00
Ralf Becker
aa850d24fc implemented account_type: (accounts|groups|both) option for taglist-account as available in select-account widget 2014-02-28 16:52:42 +00:00
Ralf Becker
1de16f8a6a fix numerical ids in taglist-account, without need to supply them from server-side 2014-02-28 14:24:01 +00:00
Nathan Gray
9a7033ece9 Fix bug in calculating readonly based on parent. Fixes readonly templates still having editable content. 2014-02-27 21:26:10 +00:00
Nathan Gray
a7c306d649 Prefer custom dataStorePrefix, if set, over appname for UID 2014-02-27 19:38:30 +00:00
Nathan Gray
6852499d91 Fix color widget failing if it had no value 2014-02-27 18:19:12 +00:00
Hadi Nategh
c0c20ed9d2 Fix wrong jQuery assignment to menulist Node in toolbar widget, and replace another jQuery with internal vars 2014-02-27 18:15:08 +00:00
Ralf Becker
30de2b30c2 using internal vars instead of search in DOM, which might not yet be ready, necessary to set actions via modifications 2014-02-27 17:45:25 +00:00
Nathan Gray
208cd55d23 Use Tab key to enter free entries, same as Enter key. Press again for next field. 2014-02-27 00:30:37 +00:00
Ralf Becker
e24c721409 remove links user has no rights to view (were shown as "false" befor) 2014-02-26 17:38:43 +00:00
Ralf Becker
c4385f79ec fixed can not access property uid of undefined, but there seems to be more problems with new persistent selection between "refreshs" 2014-02-26 12:18:30 +00:00
Hadi Nategh
095cb846f6 * etemplate: introduces new type of taglist specificlly for groups and accounts, called "taglist-account". It fetchs groups and accounts plus allows free entries too 2014-02-26 10:49:01 +00:00
Nathan Gray
2a43a12492 Keep selection if applyFilters() does not actually change filters.
This happens for several refresh conditions.
2014-02-25 22:26:55 +00:00
Nathan Gray
b598a6ffcc Use controller.update() instead of refresh() for autorefresh to preserve selection & scroll 2014-02-25 19:40:31 +00:00
Nathan Gray
564507665d Missing parameter documentation 2014-02-25 19:38:31 +00:00
Nathan Gray
4cd4297299 Fix wrong row count after delete 2014-02-25 17:51:36 +00:00
Nathan Gray
49a4554303 Add missing check for short form. Fixes broken addressbook organization view. 2014-02-25 16:17:41 +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
7a35d59f65 Add processing flag to keep enter keypress while typing separate from enter keypress to select a result 2014-02-24 20:00:34 +00:00
Nathan Gray
ace335415f Add expand_multiple_rows attribute which adds a button to toggle between single & multiple select 2014-02-24 18:13:54 +00:00
Ralf Becker
2908b9466b fixed not working retransformation of date* custom fields to Y-m-d[ H:i:s] format, caused by not calling validation of implementing base-widget, also added options from file and sending available options from server, as for regular select options 2014-02-24 14:47:55 +00:00
Hadi Nategh
1561dc1caf Fix label attribute in date-time readonly widget 2014-02-21 12:22:33 +00:00
Hadi Nategh
3105054be0 Fix toolbar default actions for flat_list toolbar 2014-02-20 18:04:04 +00:00
Nathan Gray
b2aabac6f9 - Fix VFS widget names when name is not part of path
- Fix VFS link titles for app entries
2014-02-20 17:41:33 +00:00
Ralf Becker
b2c275436a fixed javascript error "Can not set readonly property" in Safari, caused by wrong context 2014-02-20 13:29:35 +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
bec852fed2 - Avoid error if something tries to refresh a destroy()ed nextmatch
- Fix not-cleared popup action
- Fix timing bug where nextmatch could display old data after an action
2014-02-19 22:02:09 +00:00
Nathan Gray
45303ecb15 Allow template attribute to be the ID of a known template, not just a separate file 2014-02-19 21:57:10 +00:00
Hadi Nategh
3b8eeb12ca Fix dropdown action in toolbar widget 2014-02-19 17:52:31 +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
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
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
Nathan Gray
a7a1474229 Add a check for invalid position preference.
This happens if the user has switched to a window smaller than previous, where their preference is now invalid.
Fixes splitter at top when viewing mail in smaller window.
2014-02-18 16:55:55 +00:00
Ralf Becker
ae057bd957 fixed cat-id in nextmatch header of addressbook is in id-order and not alphabetic/hierarchical order 2014-02-18 16:35:54 +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
d01d5119ca calling app[appname].et2_ready(et2,name) with template name as second parameter 2014-02-17 14:58:20 +00:00
Ralf Becker
6a1b0e846d fix javascript error if data not available 2014-02-17 14:53:53 +00:00
Ralf Becker
a861f16565 log error-message not error-object (which get logged as {}) 2014-02-17 13:10: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
fb311f3ebf added a et2_button_ro class to all readonly buttons and remove cursor: pointer from et2_button, as it is set in et2_clickable anyway 2014-02-14 10:47:05 +00:00
Ralf Becker
bd7980f0e8 new attribute type "html", which is NOT run through (tags removing) html_entity_decode, used for value in et2_html(area) 2014-02-14 10:14:28 +00:00
Ralf Becker
e60294fdf4 temp. workaround to get calendar conflicts working again, see my.stylite.de #6343 2014-02-14 09:53:34 +00:00
Ralf Becker
49ffb7a6db fix javascript error: can not call method removeClass of null 2014-02-14 09:35:51 +00:00
Ralf Becker
efa9c562bb allow expressions to end in a $ eg. in PHP "test$" is valid, no longer throwing an error if expression cant be parsed, just log the error and return expression literally 2014-02-14 09:03:12 +00:00
Ralf Becker
551dff28e3 fix readonly buttons were clickable: ignoring now click and add/remove et2_clickable (temp. also changing cursor: default/pointer, as et2_button sets cursor: pointer) 2014-02-13 18:41:04 +00:00
Nathan Gray
c5d1cc8cd1 Fix missing destruction of splitter children 2014-02-13 18:28:53 +00:00
Ralf Becker
c00e79af78 partial fix for addressbook CRM view does not propagate prefered telephone number to phone popup, set_value() on et2_radiobox_ro is NOT working 2014-02-13 17:51:02 +00:00
Ralf Becker
6df2fa827d fixed not working options for readonly radiobutton eg. "something,&hearts;": missing legacyOptions for et2_radionbox_ro and no entity_decoding from attributes in template (they require it because of xml) 2014-02-13 17:29:02 +00:00
Nathan Gray
b307202565 - Give default settings based on dynheight in case of missing preference and deferred layout
- Force layout _before_ setting preference too, or it will render children properly but store a bad size in prefs.
2014-02-13 17:05:14 +00:00
Ralf Becker
65c3f50923 instanciate app.js object, if not yet done 2014-02-13 15:59:31 +00:00
Hadi Nategh
7386333c10 Fix wrong number of actions in toolbar, since we could multi-layered actions as single button 2014-02-13 14:33:48 +00:00
Hadi Nategh
1529a14db7 Add another attribute to toolbar, called flat_list, in order to define wheter show actions with children as button or dropdown 2014-02-13 10:40:39 +00:00
Ralf Becker
8d86f8496b fixed radiobutton not (always) returning correct value plus fixing ide warnings 2014-02-13 09:50:49 +00:00
Nathan Gray
09272770a9 Avoid error if server sends numeric ID by checking type 2014-02-13 00:36:36 +00:00
Ralf Becker
f0d7751496 removed caret from group favorites, fixed prefered favorite was not show correct initialy nor updated 2014-02-12 21:51:25 +00:00
Nathan Gray
153c4b7e8d Fix lost focus, and remove unneeded stuff 2014-02-12 21:25:59 +00:00
Nathan Gray
1134c6a4b9 Fix deleting first row not working properly 2014-02-12 21:25:24 +00:00
Ralf Becker
fbaa1ecdc2 when renaming a tree node, need to change id in action object and action object interface, when deleting we need to delete whole object not just id of interface (splice renumbers array, while delete sets deleted item to undefined!) 2014-02-12 20:12:02 +00:00
Ralf Becker
082f3242ee fix Syntax error while parsing "You can use $$start$$ for the above start date and $$end$$ for the end date." at 13, expected variable identifier and fixed IDE warnings 2014-02-12 19:32:34 +00:00
Ralf Becker
4f2cc1456e adding a css class for cancel, delete or yes/no buttons and default background images 2014-02-12 15:18:18 +00:00
Ralf Becker
375854327d adding a css class for cancel, delete or yes/no buttons 2014-02-12 15:17:54 +00:00
Nathan Gray
eb8ea32d97 Change loading order so tab widget is in DOM before loading children. Matches other widgets, and avoids errors in CKEditor which needs the DOMNode to be in the tree. 2014-02-11 22:44:06 +00:00
Nathan Gray
5450085a54 Avoid error if value sent was not a string. Warning is also sent to console by framework, but this prevents errors. 2014-02-11 22:40:58 +00:00
Nathan Gray
3158cbf915 Only trigger immediate refresh if the tab has been hidden longer than refresh time, prevents refresh when clicking around between tabs. 2014-02-11 20:59:07 +00:00
Ralf Becker
5dec559f11 fixed javascript error "... has no method egw" 2014-02-11 17:30:56 +00:00
Hadi Nategh
ae3a6bfe0c Fix view_range and reset to default if drop all actions in toolbar widget 2014-02-11 16:06:02 +00:00
Ralf Becker
ec989fc535 method to get data of a node by its id 2014-02-11 15:56:52 +00:00
Hadi Nategh
cf6d844c67 Set the toolbar actions draggable items always to the top 2014-02-11 14:18:30 +00:00
Ralf Becker
dbe2371a0b allways using this.egw().getAppName()) instead of window.egw_appName, which has no meaning for framed template-sets running apps on toplevel 2014-02-11 12:54:56 +00:00
Ralf Becker
e7206aa071 fixed sometimes preferences for app "eGroupware" are requested 2014-02-11 12:17:08 +00:00
Hadi Nategh
c9c89c4d66 Set the button text with textContent instead of innerTEXT as some browsers may not support innerTEXT 2014-02-11 08:50:19 +00:00
Nathan Gray
e314011e88 Harmonize readonlys processing, fixes some fields in grids not validating if other rows were read-only.
- Change server-side get_array() to return null if not found, matches client side getEntry() and allows us to tell the difference between false and not found
- Change server-side is_readonly() to properly consider expansion & sub-arrays
- Fix client side et2_readonlysArrayMgr to properly consider expansion & sub-arrays
2014-02-10 21:59:50 +00:00
Nathan Gray
9cd9f22026 Use framework events to stop and start autorefresh if tab is hidden or shown 2014-02-10 18:47:51 +00:00
Ralf Becker
4195633c82 pass event as 1. parameter to click handlers to be able to call preventDefault() or stopPropagation() 2014-02-10 18:25:02 +00:00
Ralf Becker
795cfe3e6f fix typo stalling insert into eml document 2014-02-10 17:02:54 +00:00
Hadi Nategh
484dd23320 Implement preferred default actions for toolbar widget 2014-02-10 15:43:51 +00:00
Hadi Nategh
c0e90dbcf5 Set the default "view range" attribute in toolbar to 5 2014-02-10 14:10:17 +00:00
Hadi Nategh
41ed0218d4 Fix sorting toolbar actions by group 2014-02-10 13:03:17 +00:00
Hadi Nategh
5aa51c2396 Add action hint as tooltip in toolbar actions. If there is no hint, use action caption as tooltip 2014-02-07 11:02:35 +00:00
Ralf Becker
f073db1f63 fixed toolbar preference sometimes not stored (caused by them being an array) 2014-02-07 10:33:05 +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
Hadi Nategh
5886ec65a3 Show toolbar's action always with icon and caption when it is in menulist 2014-02-06 14:01:37 +00:00
Hadi Nategh
338c1c1f2f Seperate phrase "more" from " ..." in toolbar widget 2014-02-06 13:43:11 +00:00
Hadi Nategh
6c10d73e6e Adjust toolbar d-n-d, and add css class to actionbox dropdown menu 2014-02-06 11:25:56 +00:00
Ralf Becker
3bace4e0d7 need to wait for jQuery to be loaded 2014-02-06 11:01:32 +00:00
Ralf Becker
84586b196b magisuggest can NOT work setting an empty autocomplete url, using an empty options list instead 2014-02-06 09:40:47 +00:00
Nathan Gray
9ef38e33dc Fix some internal UID <-> entry references not being updated when deleting.
Fixes mail splitter docking after deleting 2 rows.
2014-02-05 19:46:02 +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
Nathan Gray
565ead7288 Add a comment for why starting at '' - avoids infinite loops in set_value() / set_select_options() 2014-02-05 16:34:32 +00:00
Nathan Gray
0af573a3e1 Stop setting value.ignore flag in nm headers, it was changing it for all subsequent selectboxes, and doesn't appear needed anymore.
Fixes selectboxes in left/right headers missing values.
2014-02-05 16:33:49 +00:00
Hadi Nategh
d78bd208cb Add "view_range" to toolbar widget in order to set range of maximum number of actions which would be displayed by icons and caption, out of range only icons. Additionally, reset the preference to default if all actions dragged out of list 2014-02-05 16:04:58 +00:00
Ralf Becker
92701be185 setting foldernames now as text and (optional) style 2014-02-05 12:23:04 +00:00
Ralf Becker
c0c6775e0a added htmlencoding to tree widget and static PHP method to quote and send JSON data 2014-02-05 08:54:36 +00:00
Ralf Becker
3a618c23d9 reverted r45509, as it causes an infinit recursion of set_value calling set_select_options calling set_value and so on 2014-02-04 08:27:26 +00:00
Nathan Gray
b8b614220e Revert unneeded change from r45352.
Fixes (hopefully) spacer rows staying when fetching more rows.
2014-02-03 23:41:22 +00:00
Nathan Gray
c4a01a3de9 Implement set_actions() so they can be updated from server-size assign 2014-02-03 20:05:56 +00:00
Nathan Gray
cffa002dde If value is available in init, keep it so it doesn't get cleared by set_select_options()
Fixes missing organization name
2014-02-03 20:05:29 +00:00
Nathan Gray
0c5ed3aefd Log a warning if etemplate can't find a target parent DOM node (by ID) to help track down future missing widgets. 2014-02-03 16:22:27 +00:00
Nathan Gray
d5acb5f888 Don't try to refresh a not-fully-initialized nextmatch.
Fixes type error when switching to an open app that was loaded on login.
2014-02-03 16:03:32 +00:00
Ralf Becker
c2aad7342f fixed not translated tooltip/label 2014-02-03 10:15:47 +00:00
Ralf Becker
269398be1d add href implementation analog to image 2014-02-03 09:54:45 +00:00
Nathan Gray
8290224b7b Fix not able to un-select linked entry / select none 2014-01-31 16:30:59 +00:00
Ralf Becker
6d7e64037b implemented a default_src attribute, which get used if src is not found in image-cache and fixed not working detached label attribute 2014-01-31 14:12:09 +00:00
Ralf Becker
d627be8763 added a couple more aliases for ids mapping to same image 2014-01-31 11:36:09 +00:00
Ralf Becker
18154600ea assign default (background-)images to buttons based on their id 2014-01-31 11:24:43 +00:00
Ralf Becker
d383373ffe skip empty, undefined or null labels when generating captions for column selection, eg. timesheet 2014-01-31 08:14:49 +00:00
Ralf Becker
c8603676ef allow 0 as empty-value for date and date-time widgets, as that is used a lot eg. in InfoLog 2014-01-30 17:18:05 +00:00
Nathan Gray
12fc2ba8d0 Fix some more bugs in egw_refresh() delete:
- Fix selecting next row selecting current row instead
- Fix subsequent deletes not removing row
2014-01-30 17:10:28 +00:00
Ralf Becker
01fad19d9d fixed just broken date-time widget and duration not accepting commas 2014-01-30 16:24:58 +00:00
Ralf Becker
d09391c0ee fixed validation from date-timeonly and also no longer triggering change events for initial content 2014-01-30 15:30:14 +00:00
Klaus Leithoff
04ad47f021 avoid error on this.input[0] undefined 2014-01-30 09:07:02 +00:00
Ralf Becker
9e29d8b282 docu update to fix ide warnings and indention 2014-01-29 18:55:24 +00:00
Ralf Becker
5e2d655d40 only trigger change event for real changes, first initialisation of widget is NOT considered a change
this modification might be necessary in more widgets, because they are either not an et2_inputWidget or overwrote set_value method
2014-01-29 18:24:57 +00:00
Ralf Becker
020058061d missing docu to fix ide warnings 2014-01-29 17:45:24 +00:00
Ralf Becker
4036b268c9 missing docu to fix ide warnings 2014-01-29 17:11:11 +00:00
Ralf Becker
11fd61fe8a fixed indention and ide warning about missing docu 2014-01-29 15:55:18 +00:00
Ralf Becker
a659b49f51 silently fix skiped minutes or times with just one digit, as parser is quite pedantic ;-) 2014-01-29 13:10:31 +00:00
Ralf Becker
db3422fccb fixed date(-time)-picker looses changes made in textfield directly, we now bind to change of input instead using onSelect of picker
also changed parsing of date(-time) strings to use parser of datetimepicker with our format, instead of date object, which does not understand our formats
2014-01-29 11:27:24 +00:00
Ralf Becker
09c5ea8df5 fixed datetime widget returns march, if selecting febuary on a current date with a day >28 2014-01-29 10:18:07 +00:00
Klaus Leithoff
398ca817d4 handle condition for no next found, to avoid java script errors 2014-01-29 09:58:29 +00:00
Nathan Gray
d3e9f43b94 Don't initialize a hidden splitter, it ruins the size calculations. Initialization for hidden splitter is done (if needed) in resize().
Fixes mail splitter in hidden tab initializing to top, wrecking nextmatch grid.
2014-01-27 22:04:56 +00:00
Ralf Becker
ace95f26b0 fixed not expanded onchange attribute, if widget type need to be expanded too, eg. log-viewer in CalDAV or eSync preferences 2014-01-27 21:59:29 +00:00
Ralf Becker
ba5254040d fixed "can not access attribute 0 of undefined" caused by automatic nextmatch refresh loosing context 2014-01-27 16:26:00 +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
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
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
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
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
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
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
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
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
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
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