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