Commit Graph

1893 Commits

Author SHA1 Message Date
Hadi Nategh
a512c04183 Fix F.F does not trigger resize nm column onmousedown, but after mouseup 2014-08-19 13:58:35 +00:00
Hadi Nategh
fe02eda1a7 * Etemplate/Nextmatch: Do not trigger resize event on nextmatch header columns if the clicked element is select-tag, as it may cause conflict between two click and resize handlers in some browsers.
- Fix clicking on selectboxes located at nm header causes to resize the column, in FireFox.
2014-08-19 12:48:22 +00:00
Hadi Nategh
427956518e * Etemplate/widget: Introduce video widget.
- Add ability to play video media/stream
2014-08-19 10:10:09 +00:00
Nathan Gray
175d6b7201 - Change zoom auto level to better suit projects a day or two long
- Reset start/end dates when changing data
2014-08-18 22:55:54 +00:00
Nathan Gray
976c7e55ac - Adjust default columns to exclude resolution, completion, timesheets, votes and bounties. They can still be turned on manually, just hidden by default.
- Set some more default column widths
2014-08-18 19:44:37 +00:00
Nathan Gray
5b91e871de Deal with languages helpfully adding timezones into timestamps
Fixes random (12, 6, 7) hours sometimes added to dates
2014-08-18 16:47:27 +00:00
Hadi Nategh
161734f941 Handle validation_error if widget is children of a tabbox.
-Fix widget with validation error does not activate its related tab.
2014-08-18 12:05:04 +00:00
Ralf Becker
e47db95be7 * Mail: fixed sometimes not working (un)subscribe of mailboxes, added better diagnostic and automatic (de)select children 2014-08-15 11:22:43 +00:00
Nathan Gray
cc04f0b89c Create & use a flag 'no_actions' to disable actions for sum rows 2014-08-11 23:13:02 +00:00
Nathan Gray
f7589316e0 Make sure options are there before looking inside, avoids a potential error in filter options 2014-08-11 20:27:56 +00:00
Hadi Nategh
ef6aed6579 Make sure we are getting the current appName 2014-07-30 15:12:05 +00:00
Nathan Gray
5b873215b0 - Fix expanding closed projects by passing parent ID
- Fix missing milestone icon
2014-07-29 21:51:37 +00:00
Nathan Gray
795e2cdb9c Refine cache check conditions, rows is always empty by this point. 2014-07-29 21:46:01 +00:00
Hadi Nategh
6689ca64f7 SelectAccount with type "none" should get sel_options but it should be readonly if user has no admin access. Fix infolog delegation for admin users with selectAccount type "none" selected 2014-07-29 17:39:35 +00:00
Klaus Leithoff
235888ad88 fix typo, that prevented the correct split of TreeNodeOpenItems 2014-07-29 12:50:39 +00:00
Nathan Gray
8a70df4df8 Handle num_rows set by application:
- Don't overwrite num_rows setting if the application sets it for some reason
- If num_rows is 0, don't get the initial rows server side
- If num_rows is 0 and the initial rows are missing, trigger an update right away to get them asyncronously.
2014-07-28 21:00:39 +00:00
Nathan Gray
9851a8a6ef Trigger a clear event on the etemplate DOMContainer when the etemplate is cleared, so app code can listen for it.
This allows a 'et2_unload' sort of processing.
2014-07-28 20:51:49 +00:00
Ralf Becker
c6783d8b8e document hack, to work around birthdays changing one day for each time they are stored 2014-07-25 12:32:34 +00:00
Ralf Becker
970331b97c * Addressbook/all apps: dates change every time they get stored (temporary fix as conditions causing that are not clear) 2014-07-25 10:17:15 +00:00
Nathan Gray
b6b660ee16 Fix detached date label 2014-07-22 22:22:09 +00:00
Nathan Gray
3176500c83 Refine select option searching when the id is like parent[selectbox].
- only search parents when the ID has multiple parts
- fix case when selectbox was in the sel_options arrayMgr, but had no options, parent was used as select options
2014-07-22 21:21:33 +00:00
Ralf Becker
6a0c7e2c3d log not compiling PHP expressions as warning, as they are most likely caused by wired content, eg. filenames containing a $ 2014-07-21 15:27:15 +00:00
Ralf Becker
3c6130f7e6 setting an (unlikely) custom delimiter, to allow to use "," in value, eg. folder-name, IF values are specified as array 2014-07-21 12:57:32 +00:00
Hadi Nategh
ce6ac57f34 Correct "Save as Zip" icon in link widget contxt menu 2014-07-17 14:21:55 +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
762d8a9c09 If link has a target, use that.
Causes linked files to be opened in new browser tab.
2014-07-15 19:19:36 +00:00
Nathan Gray
10aa07b2fc Fix extra options not used in read only select-account 2014-07-15 15:40:22 +00:00
Nathan Gray
67390bbcfa Add HTML5 drag support for Chrome for all files in link lists 2014-07-14 22:34:55 +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
Nathan Gray
8a36e40b10 Call applyFilters() function instead of setting directly, which skipped change detection.
Fixes selection not cleared when applying a favorite.
2014-07-14 09:59:02 +00:00
Ralf Becker
f011a6c3d1 fixed broken regular expression for multiple comma-separated values (dash in character class has to be last character!) 2014-07-13 09:14:58 +00:00
Hadi Nategh
ef9409294c Try to use xmlDoc.responseText as xmlDoc.response might not be available in IE 2014-07-11 16:49:45 +00:00
Hadi Nategh
8f0dba15fe No need to use Microsoft.XMLDOM for IE anymore, since IE 7+ supports XMLHttpRequest object 2014-07-11 16:07:02 +00:00
Hadi Nategh
3e56f38995 Try to get attribute with getAttribute method, IE does not support element dataset 2014-07-11 15:52:43 +00:00
Hadi Nategh
a0bf45da93 Use getAttribute to get the data-group value to use it for toolbar sorting.\n\r -Fix group is undefined error opening mail in IE10 2014-07-11 10:38:36 +00:00
Ralf Becker
2a6168a1c2 * Addressbook: fixed sorting of category tree
fixes not displayed cat-tree and validation error introduced with r47575
2014-07-09 11:18:47 +00:00
Nathan Gray
a5b9173fc9 Handle multiple buttons in a single custom field 2014-07-08 20:13:51 +00:00
Nathan Gray
b7a6e53163 * Added context menu to download all linked files in one zip file
As long as there are 2 or more files linked to the entry, you can download them all as a zip using the link list context menu.
2014-07-08 16:51:01 +00:00
Ralf Becker
55722f4520 change default value for unset checkbox to be in line with old eTemplate, using "" that evaluates in PHP and javascript to false and not string "false" 2014-07-08 11:31:57 +00:00
Hadi Nategh
a1285433bd Add alert method to et2_dialog in order to create alert dialog with optional arguments message, title and dialog type. Additionally, remove an not used argument from et2_dialog.confirm method 2014-07-08 10:29:59 +00:00
Nathan Gray
ed6013605e If a custom field is added to the column list, invalidate known columns to get all new data back, in case app did not send custom fields in the first request. Fixes needing to reload after displaying custom fields in nextmatch 2014-07-08 04:21:02 +00:00
Nathan Gray
7a1d2dc0cd Customfield lists need to create all widgets, so they can be enabled if the column is changed without re-doing the whole thing 2014-07-08 03:37:47 +00:00
Nathan Gray
760dc4b1d3 When update(true), also invalidate record change detection, to re-fetch all known rows 2014-07-08 03:35:55 +00:00
Nathan Gray
7eb528ee1f Instead of replacing a dropped image with an error image, we'll remove it, and pass the image to the first et2_file widget with a drop target. That's not ideal, but it should work for us in most cases until CKEditor fully supports drag and drop.
(Firefox only)
2014-07-07 20:48:35 +00:00
Nathan Gray
08c10a70aa Update Resumable from github, fixes some problems with setting et2_file value to a list of files in firefox. 2014-07-07 20:26:48 +00:00
Nathan Gray
1273955f9d Allow possibility to include select all flag in url in addition to selected IDs 2014-07-07 16:46:16 +00:00
Nathan Gray
15ddeb2a24 - Avoid duplicate ID warning by only returning the value from the matching radio button
- Fix radiobuttons where the options/values were set in the template instead of sel_options
2014-07-07 16:19:37 +00:00
Hadi Nategh
296530b320 Fix etemplate2 submit() method for those buttons which they do not have nested ids 2014-07-07 13:25:20 +00:00
Nathan Gray
9ed54eb3fd Drag & drop images don't work because of DB field sizes, so replace dropped images with error image so user knows right away it won't work. 2014-07-02 20:50:39 +00:00
Nathan Gray
4c5e36500a Fix (?) the tough bug where app tab is closed, and nextmatch autorefresh generates an error after "this.getInstanceManager() is null" 2014-07-02 15:58:00 +00:00
Hadi Nategh
2c9ffb39b9 Override attchToDOM method in selectAccount, because chosen needs to be set after widget dettached from DOM (eg. validation error) 2014-07-02 14:36:47 +00:00
Hadi Nategh
6e4c7472fc Make sure rows are bigger than 0 otherwise customfield CKEditor will get height of 0 2014-07-02 09:34:51 +00:00
Hadi Nategh
64329c4c0e Add et2_label_empty class to textbox_ro widget if there is no content for the label 2014-07-01 16:18:01 +00:00
Ralf Becker
4ac94b2c01 remove label from readonly radiobutton, as we show label of checked option as value 2014-07-01 16:03:31 +00:00
Nathan Gray
9562483697 Improvements to handle not yet existing links
- Can't view file info for non-existing file, so context menu item is disabled
- Fix setting a comment
- Fix loading class on delete & fetch title showing incorrectly
2014-07-01 00:22:13 +00:00
Nathan Gray
26f1e351f3 Apply missing font & size preferences 2014-06-30 21:28:03 +00:00
Ralf Becker
15fbd6bde8 fixed not working custom fields of type radio 2014-06-30 19:34:53 +00:00
Hadi Nategh
4471a45147 Add id to Add button for link-add widget 2014-06-27 14:05:00 +00:00
Hadi Nategh
7a3d0e50da Fix error undefined to_app, and jquery UncaughtTypeError happens onclick handler 2014-06-27 13:27:18 +00:00
Hadi Nategh
6d2582c22e Remove added indentation by accident from commit 47388 2014-06-25 16:47:07 +00:00
Hadi Nategh
cab2ccdd29 Fix widget VFS button_caption translation 2014-06-25 16:26:59 +00:00
Nathan Gray
9a36c458e6 Try to fetch title if not passed 2014-06-24 21:45:13 +00:00
Hadi Nategh
c281f19568 Active translation for attribute button_caption of VFS widget 2014-06-24 15:18:55 +00:00
Hadi Nategh
545b35de5b Declare a non declared variable which was messing with app global object 2014-06-24 12:40:25 +00:00
Ralf Becker
fe44c6bb5e fixed not allways used category color, because regular expression missed every 2. category 2014-06-24 12:39:12 +00:00
Nathan Gray
866fbb65bc - Refresh filter even if it's not dirty, since it changed
- Bind delete prompt to right click on link while avoiding conflict with action system
2014-06-23 17:17:34 +00:00
Ralf Becker
ae19dff1d4 ignore stepMismatch html5 validation errors, the are generated for every float number 2014-06-23 14:31:47 +00:00
Ralf Becker
d4bb8a00a9 move et2_call method to egw.js to have it always available at window scope (it is NOT et2 specific), maybe we find a better/nicer place for it 2014-06-23 08:10:40 +00:00
Nathan Gray
ec476a96d7 Fix column selection not saved if columnselection pref setting had 'nextmatch-' prefix already.
Fixes infolog columns not being saved
2014-06-18 18:29:52 +00:00
Nathan Gray
0cffb46eab Handle not existing links passed from server 2014-06-17 17:14:05 +00:00
Nathan Gray
2b1215af8b If history tab is currently active, finish loading historylog widget immediately 2014-06-16 15:17:30 +00:00
Nathan Gray
aa249cb6a2 Add function to get currently active tab index 2014-06-16 15:16:59 +00:00
Hadi Nategh
2ff1107b78 Ignore favorite preferences which are not correctly serialized, and somehow are stroed in database. At the moment we just ignore them, but they stays in database, need to be watched closely to find the cause, though. 2014-06-13 16:03:16 +00:00
Ralf Becker
c0cfe3f320 readonlys was not namespaced in old eTemplate, therefore if we dont find data under current namespace, we look into parent (if there is anything namespaced, we will NOT look for parent!) 2014-06-12 14:22:39 +00:00
Ralf Becker
0b6fa2785b allow to use numbers for attributes of type string, silently convert them to strings, fixes not working blur values for quantity in timesheet 2014-06-12 08:25:31 +00:00
Nathan Gray
f3ba7f692f Use custom field name to toggle row visibility, not order, as order doesn't always work. 2014-06-11 18:03:19 +00:00
Hadi Nategh
6b91baf0cc Make sure fav. sorted list is always an array, and append new favorite added to fav. sorted list 2014-06-11 14:42:27 +00:00
Ralf Becker
5a32a7d622 widgets should NEVER return null (eg. for empty), as server-side $preserv will overwrite it 2014-06-11 09:14:43 +00:00
Ralf Becker
5d3d61e5b0 only care for regular expression starting with /, as everything else is to ambigious eg. "replys[$row][reply_comment]" has a $ followed by an r, which is also first char of that expression 2014-06-11 07:59:45 +00:00
Nathan Gray
22b6084224 Fix link entry clear button not actually clearing the value if the value was entered via code instead of user 2014-06-10 21:35:39 +00:00
Nathan Gray
a4335f01a0 Hide custom field lines from nextmatch if they have no value 2014-06-10 20:22:43 +00:00
Nathan Gray
f8cb222580 Style gantt links as invalid based on if the start/end dates are correct for the link type 2014-06-10 18:52:50 +00:00
Nathan Gray
42547b8153 Gantt chart styling
- Include progress as text on left side of bar
- Highlight weekends
2014-06-10 17:38:02 +00:00
Nathan Gray
315a0d4ac0 Pass along width attribute, so it can be passed to chosen 2014-06-09 22:55:39 +00:00
Nathan Gray
a9e37042cb Use js type for query & select callbacks and implement setter functions 2014-06-09 19:28:31 +00:00
Nathan Gray
fa8963c8b4 Consider "0" (string zero) equal to false instead of true, as some PHP values come as strings. 2014-06-09 19:27:02 +00:00
Ralf Becker
60a32879d4 first try to implement/activate client-side validation for numbers, thought not fully working yet 2014-06-05 15:48:29 +00:00
Ralf Becker
a45525949b implement clientside validation for textbox, stop complaining about $ in regular expressions of validator and fix attribute name from "preg" to "validator" on server-side 2014-06-05 15:47:23 +00:00
Nathan Gray
2e09cf1ab1 - changing column selection preference now works if 'nextmatch-' prefix is included in the columnselection_pref setting
- change column selection popup to reload every time it opens, just in case something changes in the columns
2014-06-04 18:37:58 +00:00
Nathan Gray
001eab9159 If extra data is sent from a get_rows, try to update a matching child widget. 2014-06-04 16:45:19 +00:00
Ralf Becker
2c5ba307b5 convert numbers to string for consistent matching, 0 was never set, because it was treated as already set, which gives wrong result if it is not first option 2014-06-04 09:52:02 +00:00
Nathan Gray
0d9e9553b3 Change date filters:
- End date is now inclusive
 - Task dates must now either start after start date _or_ end before end date to be included, instead of fall completely within the range
2014-06-03 23:29:46 +00:00
Ralf Becker
c6fe901b56 fixed infinit loop, if string to active starts with url right away, eg. "https://domain.com/" 2014-06-03 07:22:34 +00:00
Nathan Gray
3b8bee4d18 Update dhtmlxTree & dhtmlMenu to latest version 2014-06-02 23:32:15 +00:00
Hadi Nategh
87d3a0bf28 Set date-duration display_format default to day/hour/minute 2014-05-30 13:40:13 +00:00
Nathan Gray
10d7a3f579 If a filter changed, explicitly clear the selection to prevent confusion if selected rows are in the new results 2014-05-29 16:21:41 +00:00
Nathan Gray
bb5b1163cb Progress on gantt chart
- Fixed error from projects with no constraints
- Got ajax expansion working
2014-05-27 23:27:30 +00:00
Nathan Gray
1224439431 Fix reversed path when namespaced widgets were nested 2014-05-27 20:22:23 +00:00
Nathan Gray
bff821e300 Move special path handling from nextmatch up to top level so it can work for all widgets with a namespace and their own value 2014-05-27 20:16:02 +00:00
Nathan Gray
7af73c91c4 Avoid infinite loop looking up accounts 2014-05-27 15:33:26 +00:00
Nathan Gray
34ed2d7290 - Fix missing change handler on some nm header templates
- Fix improper usage of jQuery.when() (it doesn't take an array)
- Fix missing filter detection to not break with multiple values
2014-05-26 22:27:57 +00:00
Ralf Becker
086501bc30 fixed .5 hours entered in infolog (PM tab) is displayed after saving as 30 days, caused by automatic transformation to minutes and not recognising that display_format does NOT support minutes 2014-05-26 13:44:24 +00:00
Hadi Nategh
ba1141f0cc Set value for date-timeonly when it's string and NaN 2014-05-26 07:46:30 +00:00
Ralf Becker
30ffb38bd6 reverted r47030 as it breaks server-side nextmatch actions
nextmatch values were in root instead of namespaced "nm", causing all serverside actions (eg. move one contact into an other addressbook) to fail, because validation did not find values placed clientside outside valid namespace
2014-05-23 16:00:17 +00:00
Ralf Becker
24ee68bdf2 fixed infinit loop for apps running in iframe by refactoring frameworked templates work with client-side api:
- moved shared etemplate2 part into static etemplate2.app_refresh() method
- egw_message.refresh() calls framework.refresh() which can return a DOMwindow for egw.refresh() to work on, instead of calling egw.refresh recursive
2014-05-23 08:21:11 +00:00
Nathan Gray
1f4c8a0c03 Fix blank list on refresh, related to r47042 2014-05-22 16:32:58 +00:00
Ralf Becker
893091e286 - new app.js observer method which receives update notifications from all apps
- app.infolog.observer triggering refresh of InfoLog list, when a timesheet get stored
- moved code of already deprecated egw_refresh() to egw.refresh() and changed etemplate to use that
- framework from jdots/pixelegg template no longer overwrites window.egw_refresh, but egw.refresh calls framework.refresh for regular refreshs if framework is present
2014-05-22 15:29:14 +00:00
Nathan Gray
84e20433b6 Attempt to get rows in the direction of need, rather than centered on the missing rows 2014-05-22 14:48:22 +00:00
Nathan Gray
ccdb54a366 Gantt chart progress 2014-05-21 22:11:36 +00:00
Ralf Becker
5825c8df18 new button attribute "novalidate" to skip validation 2014-05-21 17:24:56 +00:00
Ralf Becker
6ee8b47d7a fixed javascript error when setting a validation error on a widget not on a tab 2014-05-21 09:07:14 +00:00
Ralf Becker
281863ac29 get customfield_list to respect readonlys of single fields 2014-05-15 16:49:53 +00:00
Ralf Becker
2b3a9cd1b5 * eTemplate2: fixed accounts got lost, if account-selection did not show all accounts
if accounts need to be fetched from server, callback is called async --> calling set_value again for last callback
2014-05-14 10:00:31 +00:00
Hadi Nategh
d849c6797a Switch sorted array and id params position, in sortable gird 2014-05-14 08:29:04 +00:00
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