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,♥": 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
Ralf Becker
a0213fd5a3
now calling our session_destroy also for etemplate2.clear(), this way we get also unloads from frameset templates
2014-01-16 12:52:25 +00:00
Ralf Becker
205794f4a7
notify server about closed windows, so we can destroy no longer eT needed session/requests and so keep cache small
2014-01-16 12:13:16 +00:00
Nathan Gray
63b92d2939
More careful split of parameters, fixes losing part of last parameter if it had '-' in it
2014-01-15 15:05:10 +00:00
Ralf Becker
cb8b279e94
fixed image widget uses index.php for not found images
2014-01-14 17:08:41 +00:00
Nathan Gray
959a6bd588
Increase size of column resize handle
2014-01-14 14:52:21 +00:00
Nathan Gray
cfa981480e
Fix selecting 00:00 in datetime widget re-set to current time
2014-01-14 13:32:08 +00:00
Nathan Gray
6418c06b18
No seconds or milliseconds, in date/times
2014-01-14 12:35:28 +00:00
Nathan Gray
ae491c0810
Enable symlinking VFS files to not yet existing entries
2014-01-14 12:11:13 +00:00
Nathan Gray
29992a7fee
Fix linking files to not-saved entries
2014-01-14 10:16:36 +00:00
Nathan Gray
4eea706aa0
- Return true after window close in et2_load, avoids 'Error while parsing et2_load response'
...
- Catch trying to set a widget attribute with no set_...() function via JSON assign and warn instead of generic error
2014-01-13 15:07:03 +00:00
Nathan Gray
be0878f883
Use this.egw() to get the correct (app level) data cache, which stores appname internally.
...
Fixes permission denied popup when updating.
2014-01-13 15:04:30 +00:00
Nathan Gray
51d802ec78
Only try to unbind if there's a value. If there isn't a value (new entry), handler wasn't bound, and trying causes an error.
...
Fixes blank popup after save.
2014-01-13 15:03:15 +00:00
Hadi Nategh
dc614521b3
Make toolbar widget being able to d-n-d with user prefernces for actions
2014-01-13 10:26:20 +00:00
Nathan Gray
71f0fcdda0
Implement refresh type 'update' to _only_ update the data of a row - sorting is not considered, so make sure to use 'edit' if sorting might be affected.
2014-01-13 09:40:23 +00:00
Nathan Gray
43fe37761f
Un-bind window resize handler in destructor
2014-01-11 16:43:06 +00:00
Nathan Gray
a458019490
Avoid some missing attribute warnings by not trying to set needed on readonlys, which don't support it.
2014-01-11 16:40:45 +00:00
Nathan Gray
5f12847fb3
Fire a refresh event (from the nextmatch widget) when the nextmatch auto-refresh happens, so apps can update anything else they need to.
2014-01-11 14:14:42 +00:00
Nathan Gray
52ab3203bd
Remove r44925, not needed
2014-01-11 12:01:45 +00:00
Nathan Gray
04a845fa35
Enhance refreshItem() to optionally take the data needed for refreshing to avoid an extra call to the server
2014-01-11 11:53:23 +00:00
Nathan Gray
26b8cae767
Avoid removing all event listeners if the etemplate has no unique ID (happens for dialogs)
2014-01-11 11:42:23 +00:00
Ralf Becker
87ea75a75b
use \042 instead of \" in regular expression, as it stalls minifier
2014-01-10 16:19:05 +00:00
Nathan Gray
3b57659536
Defer binding to window resize until after loading is finished.
2014-01-10 15:54:35 +00:00
Nathan Gray
cb94adb995
Defer loading of tabs
...
First / selected tab is loaded in line with normal code execution. Not visible tabs are loaded after using window.setTimeout(). jQuery.Deferred makes sure the template doesn't fire the load event until they're all done.
2014-01-10 14:32:03 +00:00
Nathan Gray
9b4cd3e306
Some more profiling helpers - timeline timestamp at start of rendering, consistently measure to end of app callback
2014-01-10 14:27:21 +00:00
Ralf Becker
243f20e98c
fixed handling of optgroups, eg. notification chains in prefs
2014-01-10 07:08:45 +00:00
Nathan Gray
c9e923bf78
Make sure UID is a string
2014-01-09 18:10:32 +00:00
Nathan Gray
f1558bcffb
Fix missing bracket
2014-01-09 16:53:42 +00:00
Nathan Gray
3fdb024ff2
Don't reset height until it's time to invalidate, avoids re-calculating on every row
2014-01-09 16:46:39 +00:00
Nathan Gray
c082dec331
Profiling - Automatically profile etemplate2 loading in Chrome
2014-01-09 16:44:34 +00:00
Nathan Gray
13572c472a
Profiling - Add some timestamps for timeline
2014-01-09 13:38:32 +00:00
Ralf Becker
90edb55ec5
add async include and et2 render times to page-generation-times shown
2014-01-09 12:20:13 +00:00
Nathan Gray
5179794f15
Fix constant warnings about not found images when image was in nextmatch row and src was '' for the row
2014-01-09 11:43:15 +00:00
Nathan Gray
49ef2c538a
Use any row data passed from server in etemplate load call to avoid an extra call to get_rows
2014-01-09 11:25:08 +00:00
Ralf Becker
3156da0619
give buttons in toolbar an individual id based on toolbar-id and action-id
2014-01-06 16:45:54 +00:00
Nathan Gray
d000a05b72
Start search if user presses enter in search box
2013-12-30 17:05:03 +00:00
Nathan Gray
fc2d036332
Add ability to turn on/off lettersearch line in column selection dialog (when enabled for app)
2013-12-24 16:54:38 +00:00
Nathan Gray
9009ef44bb
Pass current app to egw_app_header() so it can set header for correct app. Fixes sometimes wrong app header shown.
2013-12-23 16:13:40 +00:00
Hadi Nategh
ae2049db28
Fix missing translation attr in groupbox widget
2013-12-20 12:47:49 +00:00
Nathan Gray
3e4100d5df
Make sure content manager is not null before trying to use it (occasionally happens with programmatically created selectboxes)
2013-12-19 18:06:16 +00:00
Nathan Gray
103515342e
Add IDs to search & export buttons.
2013-12-19 15:50:15 +00:00
Klaus Leithoff
d3e89b1095
attempt to implement and make use of the tree-side drag and drop; does not work out-of-the-box, at least not as attempted in mail module
2013-12-19 09:58:32 +00:00
Nathan Gray
ccae3f71ab
Fix undeclared var (strict mode)
2013-12-18 18:17:34 +00:00
Nathan Gray
907e9740d8
Change tree autoload URL to work with egw.link() instead of against it, while still giving the tree lib an absolute URL.
2013-12-18 17:54:28 +00:00
Nathan Gray
af51f8a102
Remove some more old code, favorites now in framework
2013-12-16 20:37:38 +00:00
Nathan Gray
a1e5783da6
Make sure data is set before trying to look inside it.
2013-12-16 18:11:53 +00:00
Ralf Becker
374312be3c
need to set app_header before message, as app_header is (temp.) replaced by it
2013-12-13 01:15:41 +00:00
Nathan Gray
a79f7b87a6
Continue moving most favorite functionality from favorite widget into framework. Favorite widget now uses framework.
2013-12-12 23:45:09 +00:00
Nathan Gray
23fd7066bf
Add etemplate into indexed list before starting the load process. This way anything looking for it can find it, even if it's not fully loaded (and bind to the load event if needed)
2013-12-12 23:37:12 +00:00
Nathan Gray
680ce48fef
Check to make sure selectionMgr is there before trying to use it
2013-12-12 23:34:42 +00:00
Ralf Becker
9c3c077314
fixed not updated sidebox in calendar listview
2013-12-12 23:32:30 +00:00
Nathan Gray
39c53c5530
Parse null values as string '' instead of 'null' to match PHP
2013-12-12 20:10:02 +00:00
Nathan Gray
603f063e00
Properly handle only-app set, with just an integer value
2013-12-11 23:11:33 +00:00
Nathan Gray
362c61e0ae
Don't try to take extra size from already too small columns
2013-12-11 21:24:17 +00:00
Nathan Gray
71e62f24f3
Remove extra border spacing, should be handled in CSS if needed
2013-12-11 21:20:07 +00:00
Nathan Gray
0f055b5295
Use 'state' to store nm info
...
Fix some etemplate permission errors
2013-12-10 23:16:08 +00:00
Nathan Gray
735a1afa43
Clear queue when results arrive, and in reset()
2013-12-09 21:37:39 +00:00
Klaus Leithoff
4c03a02926
attempt to implement focusItem, to be able to scroll to a selected Item automatically; implement wrapper for hasChildren from dhtmlXTree API
2013-12-09 16:00:15 +00:00
Ralf Becker
8da1afca1e
some fixes to get "add favorite" in regular calendar views do something
2013-12-08 22:56:23 +00:00
Nathan Gray
ac04ff9f6c
non-et2 Favorites work in progress
...
Stop et2_favorites from overwriting sidebox
2013-12-06 23:10:25 +00:00
Nathan Gray
7ff91718e4
Fix only 2-3 rows shown for applications loaded into not visible tabs
2013-12-05 20:26:00 +00:00
Hadi Nategh
53006083e9
Add confirm method, with fixed YES_NO buttons and submit functionality, which could be exchanged by old javascript confirm() function
2013-12-05 08:53:11 +00:00
Nathan Gray
6f90cb8fb3
Decrement row count when refreshing a delete
2013-12-04 21:12:25 +00:00
Nathan Gray
834dbe886b
Automatically bound change handler returns true to play nice with other change handlers that might be bound.
2013-12-04 19:52:51 +00:00
Nathan Gray
698efb3039
Better handling of submitting with passed button to properly process the button ID into the value array. Fixes the case where ID like 'button[delete]', previously wound up in button.button[delete].
2013-12-04 00:15:50 +00:00
Nathan Gray
7148a1f274
Fix broken tree by removing extra line - was not supposed to be there
2013-12-03 21:37:50 +00:00
Nathan Gray
ec118b0839
Nextmatch export button no longer defaults to on, it must now be explicitly set by the application.
2013-12-02 21:27:55 +00:00
Nathan Gray
4c1c710ba9
Implement display of server-side validation errors
2013-12-02 20:35:32 +00:00
Nathan Gray
fbbe467a7e
Unbind previous click handler before setting a new one, or they get doubled.
2013-12-02 16:24:24 +00:00
Nathan Gray
0f5cfe1949
Default to user's preferred size, app can dock if desired. Since they already do...
2013-11-29 21:26:35 +00:00
Nathan Gray
bcfaa60405
Automatically size just to parent, not whole window
2013-11-28 18:43:44 +00:00