Commit Graph

4087 Commits

Author SHA1 Message Date
Ralf Becker
2eb9352f78 fixed error "template NOT found!", if template-name contains cache-buster 2014-03-17 17:12:02 +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
Ralf Becker
6f099299b4 we need noPrint on td 2014-03-16 15:22:48 +00:00
Ralf Becker
3e7ba51020 fixed ReferenceError: $j is not defined in old eTemplate popups 2014-03-15 10:04:38 +00:00
Ralf Becker
184a9fa4e8 allow to use namespaced $readonlys for grids, eg. grid uses "grid" as name, you can now set $readonlys["grid"]["something"] as well as $readonlys["something"] like in eTemplate2 2014-03-14 09:36:01 +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
Hadi Nategh
d373541456 Address et2_fullWidth span with position relative only for url widget 2014-03-12 18:57:07 +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
88f8bfb902 Change tabs min-width to less size to make sure all tabs are get fit in one row 2014-03-12 13:51:47 +00:00
Klaus Leithoff
e4deb0f0a5 switch off talkative setElementAttribute 2014-03-12 13:44:33 +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
Hadi Nategh
82e846c16e Add position relative to et2_fullWidth class 2014-03-12 11:48:30 +00:00
Hadi Nategh
f21f3ebfa9 Apply min-width for tabs 2014-03-12 10:31:04 +00:00
Ralf Becker
6500d31815 only address selectboxes part of nextmatch header 2014-03-12 10:10:41 +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
612b5bf34f Fix searching for a space gives database error
(To actually search for a space, use quotes)
2014-03-11 18:26:40 +00:00
Nathan Gray
4cdd4d9d4a Update opendocument spreadsheet numeric cell attributes to include celcext:value-type. 2014-03-11 17:35:50 +00:00
Hadi Nategh
45871d6212 Put a breaking column in timesheet edit popup 2014-03-11 15:50:30 +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
Hadi Nategh
648934061f Implement et2_fullWidth class for link_entry 2014-03-11 12:28:03 +00:00
Ralf Becker
293a7166de to not send/set it twice for multiple etemplates (eg. CRM view) 2014-03-10 21:18:31 +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
f87e456be2 do not send/set extra data twice for multiple etemplate (eg. CRM view) 2014-03-10 15:20:27 +00:00
Hadi Nategh
306e3488ba style timesheet edit popup window 2014-03-10 15:19:28 +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
79e1b5c9b8 fixed CSP error for multiple eTemplate2s (CRM view), by allways sending etemplate data via et2_container tag (instead etemplate script tag) and create an et2 object for all of them in egw.js 2014-03-10 11:58:49 +00:00
Ralf Becker
68e5832e1d open widget browser / eT2 Reference inside EGroupware 2014-03-10 09:10:49 +00:00
Hadi Nategh
07d2319487 Fix nm filter overlay search and fav divs, by give other nodes position:relative too, to get z-index into account 2014-03-07 16:36:45 +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
Ralf Becker
cda62917d8 position image in button with just an image centered and remove border from toolbar 2014-03-06 18:34:54 +00:00
Nathan Gray
dbbad57f90 Fix selecting next entry when there are no others 2014-03-06 18:07:47 +00:00
Hadi Nategh
d67a0280a7 **Add the first version of Document Type Definition file for etemplate2, in order to be able to validate xet file syntax 2014-03-06 17:50:57 +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
5dadb463c8 reverted image to idots one 2014-03-06 09:48:42 +00:00
Ralf Becker
bf75bda899 fixed nextmatch header for idots/Stylite template 2014-03-06 08:30:58 +00:00
Ralf Becker
e41fbe59ff using current app, if no or empty source given 2014-03-06 07:50:06 +00:00
Ralf Becker
cdf0374755 some more tweeking for et2_fullWidth: positioning icons for et2_url* widget behind input 2014-03-05 18:10:35 +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
1124c62200 Allow changing sel_options with array data, not just key => value pairs 2014-03-05 17:20:17 +00:00
Ralf Becker
35d7ee2924 general purpose et2_fullWidth class to "make" every widget take full width of parent 2014-03-05 11:30:00 +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
Hadi Nategh
d05390db68 Fix cancel and yes buttons icon in idots and jdots repeated x times 2014-03-04 09:30:39 +00:00
Hadi Nategh
0ad6f6cda6 Fix wrong icon height for toolbar widget in idots and jdots templates 2014-03-04 08:45:20 +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
2bf0f96602 Nextmatch uses value to store most attributes, so get value from request to get access to those.
Fixes unable to force infolog details column selection.
2014-03-03 21:00:31 +00:00
Nathan Gray
f561e7e7bf Add check for automatic 'All' option to avoid extra 'All' options when app stores category options in session. 2014-03-03 17:53:27 +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
44fc850d75 ignoring $row not only for "nm" namespace and fixed IDE warnings 2014-03-03 15:55:05 +00:00
Ralf Becker
a5a0024545 only search custom fields, if extending class does not set this->columns_to_search explicit, also fixed IDE warnings 2014-03-03 11:45:38 +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
Ralf Becker
e154e35ad6 fixed etemplate.inc.php download (happens only if directory is not writable) has zero length. Caused by output buffering and unbuffered php://stdout instead of php://output used 2014-02-28 08:26:53 +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
a07cfda06b Silence error log 2014-02-27 20:25:06 +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
Ralf Becker
2e287689ef allow to call etemplate_widget::setElementAttribute() static eg. from within a get_rows method 2014-02-27 17:43:51 +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
22985819b0 If user selected a link entry but did not click link, pass it back to application.
Now fixed to support new entries (no to_id) also.
2014-02-25 17:04:43 +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
cd3387448a If user selected an entry to link to, but didn't click 'Link' button, link anyway on save. 2014-02-24 20:26:26 +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
Ralf Becker
e96ec115a0 fixed sending of arbitrary JSON data egw_json_request::isJSONRequest(false) 2014-02-24 18:46:14 +00:00
Nathan Gray
3e42778f1c Default width for expand icon, so it's at least clickable 2014-02-24 18:19:41 +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
Ralf Becker
2955e89bbe quitened permanent error_log 2014-02-24 11:55:25 +00:00
Ralf Becker
4ff1a4efd1 fixed after new shutdown handling broken autoloading of tree nodes: json.php is used to send arbitrary JSON data, instead using egw_json_response methods (egw_json_request::isJSONRequest(false) turns that off now) 2014-02-22 15:51:14 +00:00
Ralf Becker
82704bd0d2 jdots needs sidebox/navbar data in header call, therefore enable navbar BEFORE calling header 2014-02-21 15:41:07 +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
Ralf Becker
3cbf1d24fb * eTemplate/all apps: limit displayed history to 500 entries 2014-02-20 12:47:06 +00:00
Hadi Nategh
7a01a55120 More styling for dropdown action in toolbar widget 2014-02-20 11:03:34 +00:00
Ralf Becker
5f2c5e1d9a restoring value at end of etemplate::show_cell() as it is a reference into content and some widgets (IP-address cf) rely on being able so set content while using multiple widgets with same name relys on it being unchanged 2014-02-20 09:43:00 +00:00
Nathan Gray
c735663346 Work in progress of straightening out the user selection options 2014-02-20 00:35:07 +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
Nathan Gray
9b84be6d01 Fix some group selections showing accounts instead 2014-02-19 21:54:48 +00:00
Hadi Nategh
e5aa366641 Some styling for toolbar 2014-02-19 18:14:41 +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
c1689c7328 Fix account selection missing members of non-primary groups 2014-02-18 22:36:22 +00:00
Nathan Gray
aca00c49f7 Fix account selection did not contain primary group members
Was visible in infolog list account filter headers
2014-02-18 22:08:15 +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
73523fbecc extra option 0 => None set in addressbook for cat_id got lost 2014-02-18 16:44:20 +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
60def94d07 pixelegg changes from Monday 2014-02-18 08:11:14 +00:00
Ralf Becker
017d3ade8f setting display: inline-block for et2_file, as it is supposted to be an inline element, fixes multiple lines in toolbar for non-Pixelegg templates 2014-02-17 15:39:53 +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
639fd82199 force re-import of etemplates if app-version changes 2014-02-17 14:28:05 +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
Ralf Becker
8d48058f22 historylog need to use $this->id as namespace for sel_options to NOT overwrite regular sel_options, fixes addressbook-selection in addressbook.edit contains all users instead of only ones user has rights for 2014-02-13 12:50:29 +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
Nathan Gray
9ca2ec2329 Silence error log 2014-02-12 18:35:04 +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
bceab8aa94 More styling for toolbar actions 2014-02-11 15:31:48 +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
251f13cedb Set minimum width for toolbar menulist, to start always with reasonable size 2014-02-11 11:12:25 +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
Ralf Becker
5b6064d360 new et2_nowrap class to not wrap content of a single widget incl. label or children of a hbox 2014-02-07 16:12:46 +00:00
Ralf Becker
b90d93ddbb hide (vertical) scrollbar for more... submenu 2014-02-07 13:13:24 +00:00
Ralf Becker
7fc89ea36d fixed serverside validation to understand hierarchical structure used for tree and to NOT try to validate if autoloading is enabled as we dont know all nodes 2014-02-07 13:08:00 +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
794cecabc1 fixed styling or [more...] pulldown 2014-02-07 09:49:35 +00:00
Ralf Becker
0198a5196f pixelegg changes from today 2014-02-06 17:36:03 +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
Nathan Gray
9f8c4a5e25 Import default magicsuggest CSS, fixes missing tag list styling in idots/jdots 2014-02-06 17:22:46 +00:00
Hadi Nategh
e6f96648a3 Remove unwanted width:100% for toolbar buttons 2014-02-06 14:11:31 +00:00
Hadi Nategh
680d6ad7e0 Fix rtl "more..." in toolbar widget. In addition, arrange actions in menulist a bit better 2014-02-06 14:05:28 +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
8225546999 Add some et2 toolbar widget basic css classes 2014-02-06 12:18:05 +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
ea7e1fbae9 Fix parent flag causing expanded row to use too much vertical space 2014-02-05 23:18:38 +00:00
Nathan Gray
378bd43d29 Set is_parent flag for all get_rows calls, not just the onces done via ajax.
FIxes missing flags on first load.
2014-02-05 23:13: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
ec7360d36f If application changed actions in get_rows(), the new actions need to be sent through etemplate_widget_nextmatch::egw_actions(). Now doing so automatically.
Fixes js error in infolog refresh.
2014-02-05 17:17:45 +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
ad464d2824 show backtrace in error_log of validation-errors 2014-02-04 09:24:17 +00:00
Ralf Becker
85cd466eda preparing to use egroupware with mbstring.func_overload=0 by using mb_(strlen|substr) where necessary and providing an implementation for mb_*, if mbstring is not available 2014-02-04 09:23:43 +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
Ralf Becker
327123a588 preparing to use egroupware with mbstring.func_overload=0 by using mb_(strlen|substr) where necessary and providing an implementation for mb_*, if mbstring is not available 2014-02-03 19:57:50 +00:00
Ralf Becker
bb3ad1e5c4 et2_required class to display textfields as required, but not actually using required attribute, fixes changing infolog type does not update status for new entries 2014-02-03 16:50:36 +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
332d4e5a42 removed gif images for which we have a png image available, as png is now supported by all browsers 2014-02-03 14:04:39 +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
Hadi Nategh
7f222b165d Remove "BLACK DIAMOND SUIT" character from global categories 2014-02-03 09:19:59 +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
Ralf Becker
a34f35baf1 fix serverside url-validation required "http://" protocoll 2014-01-30 12:48:16 +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
Nathan Gray
37a39dfe87 Remove extra margin inside labels, fixes indented text in nextmatch columns (textbox_ro) 2014-01-29 18:21:25 +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
Hadi Nategh
f532c22707 Fix a defalut min-height for drop area in toolbar widget to be able to drop back the actions when there's no actions in action list 2014-01-29 09:04:10 +00:00
Ralf Becker
6f74c42111 translations from Stefan 2014-01-28 15:32:42 +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
56ea1da5aa fixed not working redirect to index url of app, if etemplate session is lost (tested with mail app) 2014-01-27 16:30:34 +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
2e9b753292 remove permanent error-log 2014-01-27 13:07:50 +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
5452c9fca2 fixed XML error, if no type given 2014-01-23 12:43:29 +00:00
Ralf Becker
f0710fbecb fixed et2_dialog static methods like confirm did not show translations: injecting an egw object with loaded translations for current app 2014-01-23 10:52:44 +00:00
Nathan Gray
c5e1ed231a Fix deleting multiple rows by storing grid row ID first, otherwise grid row IDs change as we delete rows 2014-01-22 16:43:31 +00:00
Nathan Gray
b4ad250438 Fix rows staying after deleting by preventing automatic grid stuff while deleting 2014-01-22 15:22:29 +00:00
Ralf Becker
2632aff548 disabling redirect as it is not working (opens eTemplate tab in Stylite/Pixelegg template) 2014-01-21 18:58:07 +00:00
Ralf Becker
646c444670 order accounts according to pref of how to display them 2014-01-21 18:46:42 +00:00
Klaus Leithoff
22aa7fc0c8 add widget function to reSelect an Item without firing the events 2014-01-21 17:10:48 +00:00
Nathan Gray
87473ae76b Fix cache clearing in selection manager 2014-01-21 15:50:06 +00:00
Nathan Gray
4d997bf7c8 Fix up caching, clearing and filtering, so we cache what we need and clear only what we have to when filtering
Selection still needs work.
2014-01-21 15:21:42 +00:00
Ralf Becker
3a140463e8 fix invalid debug-level "warning", has to be "warn" 2014-01-21 14:39:51 +00:00
Hadi Nategh
dbb6adf806 Fix no drop place when there's no action in toolbar widget 2014-01-21 13:52:32 +00:00
Ralf Becker
81ed37dab5 defining and documenting "onopenstart" and "onopenend" attributes 2014-01-21 13:39:27 +00:00
Ralf Becker
9f0f33e360 implementing callbacks for "onopenstart" and "onopenend" events: set_onopen(start|end)() and using it in mail to lock tree while accounts are newly opened 2014-01-21 13:34:02 +00:00
Klaus Leithoff
83d840b584 translations provided by stefan 2014-01-21 12:19:17 +00:00
Nathan Gray
045d1a3b19 Revert r45247, mail has some lingering issues and needs a harsh reset 2014-01-21 09:42:10 +00:00
Ralf Becker
37fa9facce fixed IDE warnings and svn propset svn:keywords Id 2014-01-20 18:19:04 +00:00
Ralf Becker
01773135ea fixed buttons in toolbar show no tooltip in Firefox (caused by title attribute on image not button) 2014-01-20 18:11:32 +00:00
Nathan Gray
2123b7cbbf Fix validation of selectboxes when options are specified as key => (label,title).
Fixes edit dialog actions not validating
2014-01-20 16:15:53 +00:00
Nathan Gray
c675cd558e Don't initialize href, fixes href = "" on every image 2014-01-20 15:19:38 +00:00
Nathan Gray
f8a361c0bc Make sure value is not padded with spaces 2014-01-20 13:59:58 +00:00
Nathan Gray
3084da2238 Make sure value is numeric.
Fixes user/group selection sometimes doubled an option
2014-01-20 13:45:33 +00:00
Nathan Gray
546fb77abb Fix unable to use only OK button constant 2014-01-20 13:07:11 +00:00
Ralf Becker
6de6114e22 remove old API browser class, apps only used content_header method with is available as html::browser_header() with identical signature 2014-01-19 09:30:33 +00:00
Nathan Gray
ad735932f1 Add loader animation to iframe src change 2014-01-18 16:55:16 +00:00
Nathan Gray
64fd8ec86b Use widget ID in action manager, only use unique ID if widget somehow has no ID 2014-01-18 16:48:07 +00:00
Nathan Gray
ac0e2f6016 Improve applyFilters(), no longer blanks nextmatch before re-filling 2014-01-18 13:46:33 +00:00
Nathan Gray
2445fae8dd Default formatting for custom field list, uses full width and limits input width 2014-01-18 13:16:27 +00:00
Nathan Gray
c74c024a46 Give specific class to custom fields list table 2014-01-18 11:59:05 +00:00
Nathan Gray
f3762d9884 Fix typo causing wrong record count after delete 2014-01-18 11:58:34 +00:00
Nathan Gray
46c80212ba Better calculation for next/previous index of sparse map 2014-01-18 11:47:36 +00:00
Nathan Gray
35c70fea93 Changes to action system:
- Change selected to not start at global root - fixes key handler only working for 1 app
 - Add depth limit for finding action / object (depth first search)
 - Use depth limit when looking for top level application action/object to avoid crossing apps
2014-01-18 11:21:53 +00:00
Ralf Becker
f25bb789e7 fixed not working telephon integration / url-phone widget 2014-01-18 09:29:32 +00:00
Nathan Gray
1e379a7b8d Avoid error if categories were not provided, just skip styling 2014-01-18 09:04:14 +00:00
Nathan Gray
344a63b37c Fix removing (delete) a row from nextmatch
- Fix broken destroy callback
- Fix caching & actions to be removed
- Fix always removing the last row also
- Fix indexing so arrow keys work over sparse indexMap
2014-01-17 17:57:59 +00:00
Ralf Becker
0c2d8f87b9 only bind session/request destroy handler, if we have an etemplate_exec_id. Not the case for pure client-side call like from et2_dialog 2014-01-17 17:51:17 +00:00
Ralf Becker
b31befc23b fixed server-side validation of url-email and taglist-email:
- PHP does NOT allow \x00 in regular expression
- added PHP /u modifier for utf-8
- using now regular expression including start- / end-delemiter and modifiers, to have same regular expression (but above 2 exeptions) in PHP and javascript
2014-01-17 17:26:22 +00:00
Ralf Becker
da60fe1228 To work around a bug in action system we call global actionManger of an application NOT just appname, but prefix it with "__" 2014-01-17 16:18:12 +00:00
Hadi Nategh
bb07598beb Add set_href function to image widget,which wraps the image with <a> tag and binds a click handler to it 2014-01-17 15:58:58 +00:00
Nathan Gray
af6b513a54 Wrap search box & button in their own div 2014-01-17 13:35:13 +00:00
Nathan Gray
b094225f7a Wrap action/button groups each in their own span 2014-01-17 13:24:18 +00:00
Nathan Gray
1933389ae2 Fix some more splitter strange behaviour
- Add ignore zone, undock won't go to a position < 20px from edge. In that case, it undocks to 50%
 - Work around deferred layout (Chrome & Firefox) which caused wrong DOMNode height, which broke nm resizing
2014-01-17 12:43:14 +00:00
Klaus Leithoff
387035f76d new translations from translation.stylite.de 2014-01-17 10:48:19 +00:00
Ralf Becker
0b994ee837 new regexp to validate email addresses plus examples what it should validate and what not 2014-01-16 18:10:06 +00:00
Ralf Becker
117a2f5f6b mark mailing-lists in taglist responses with "mailinglist" css class, style it and give it a title "mailinglist" to differenciate from contacts/regular email addresses 2014-01-16 15:58:27 +00:00
Ralf Becker
4b789c932d allow "." in front-part of rfc822 email, eg. "1. company <info@first-company.com>" 2014-01-16 15:14:45 +00:00
Nathan Gray
05f0e486e3 Use long task UI to merge contacts into email templates 2014-01-16 14:05:07 +00:00
Nathan Gray
6b86050e4e UI for long running tasks that can be split
- Common dialog in et2_dialog
- nextmatch action that runs a menuaction for each selected row
2014-01-16 13:54:19 +00:00
Ralf Becker
a0213fd5a3 now calling our session_destroy also for etemplate2.clear(), this way we get also unloads from frameset templates 2014-01-16 12:52:25 +00:00
Ralf Becker
205794f4a7 notify server about closed windows, so we can destroy no longer eT needed session/requests and so keep cache small 2014-01-16 12:13:16 +00:00
Nathan Gray
4ff7a0bb31 Allow bigger progress bar 2014-01-16 10:44:04 +00:00
Ralf Becker
7cc91b0046 new&modified images from pixelegg 2014-01-15 18:04:11 +00:00
Ralf Becker
b56175a0f4 new default eTemplate request storate in EGroupware cache with an expiration time of 4 hours.
Benefit over old default is, that we get a short etemplate_exec_id giving better performance for ajax requests.
Drawback is currently poor garbadge collection only removing requests not used in 4 hours or which call egw_framework::window_close on server-side.
We can improve garbadge-collection by binding to window on(before)unload sending a (synchronious) request to server to remove concerned eT2 request.
2014-01-15 16:46:16 +00:00
Nathan Gray
f9c2c73432 Get merging contact into mail template file working 2014-01-15 16:29:30 +00:00
Nathan Gray
63b92d2939 More careful split of parameters, fixes losing part of last parameter if it had '-' in it 2014-01-15 15:05:10 +00:00
Ralf Becker
6544d38e2c storing (not used) cancel or non-cancel button pressed information now in static class-variable instead of request, to avoid modifying request and causing a save of it 2014-01-15 13:46:53 +00:00
Klaus Leithoff
60bb090278 pixelegg changes from wednesday, new/changed images and styles 2014-01-15 13:46:14 +00:00
Ralf Becker
cb8b279e94 fixed image widget uses index.php for not found images 2014-01-14 17:08:41 +00:00
Ralf Becker
629bd6f2ee added pixelegg/less/svg.css stylesheet and id reflecting their name to all svn image 2014-01-14 16:14:51 +00:00
Klaus Leithoff
e5acab5fb9 pixelegg changes from tuesday 2014-01-14 16:04:20 +00:00
Nathan Gray
959a6bd588 Increase size of column resize handle 2014-01-14 14:52:21 +00:00
Nathan Gray
29868662c1 Re-set whitespace to normal inside hbox children, fixes not nowrap text contents 2014-01-14 14:01:30 +00:00
Nathan Gray
3b443f976d Fix link entry widget not expanding after hiding app selectbox 2014-01-14 13:48:11 +00:00
Nathan Gray
cfa981480e Fix selecting 00:00 in datetime widget re-set to current time 2014-01-14 13:32:08 +00:00
Nathan Gray
6418c06b18 No seconds or milliseconds, in date/times 2014-01-14 12:35:28 +00:00
Nathan Gray
ae491c0810 Enable symlinking VFS files to not yet existing entries 2014-01-14 12:11:13 +00:00
Hadi Nategh
c82ffac545 Fix wrong order of search result in linkto 2014-01-14 11:31:33 +00:00
Nathan Gray
29992a7fee Fix linking files to not-saved entries 2014-01-14 10:16:36 +00:00
Ralf Becker
21bb9ef481 pixelegg changes from monday 2014-01-14 08:20:32 +00:00
Ralf Becker
ca1433cd5e no longer warn about widgets without a server-side class, as it is perfectly ok 2014-01-13 15:24:48 +00:00
Nathan Gray
4eea706aa0 - Return true after window close in et2_load, avoids 'Error while parsing et2_load response'
- Catch trying to set a widget attribute with no set_...() function via JSON assign and warn instead of generic error
2014-01-13 15:07:03 +00:00
Nathan Gray
be0878f883 Use this.egw() to get the correct (app level) data cache, which stores appname internally.
Fixes permission denied popup when updating.
2014-01-13 15:04:30 +00:00
Nathan Gray
51d802ec78 Only try to unbind if there's a value. If there isn't a value (new entry), handler wasn't bound, and trying causes an error.
Fixes blank popup after save.
2014-01-13 15:03:15 +00:00
Hadi Nategh
dc614521b3 Make toolbar widget being able to d-n-d with user prefernces for actions 2014-01-13 10:26:20 +00:00
Nathan Gray
71f0fcdda0 Implement refresh type 'update' to _only_ update the data of a row - sorting is not considered, so make sure to use 'edit' if sorting might be affected. 2014-01-13 09:40:23 +00:00
Nathan Gray
43fe37761f Un-bind window resize handler in destructor 2014-01-11 16:43:06 +00:00
Nathan Gray
a458019490 Avoid some missing attribute warnings by not trying to set needed on readonlys, which don't support it. 2014-01-11 16:40:45 +00:00
Nathan Gray
5f12847fb3 Fire a refresh event (from the nextmatch widget) when the nextmatch auto-refresh happens, so apps can update anything else they need to. 2014-01-11 14:14:42 +00:00
Nathan Gray
52ab3203bd Remove r44925, not needed 2014-01-11 12:01:45 +00:00
Nathan Gray
04a845fa35 Enhance refreshItem() to optionally take the data needed for refreshing to avoid an extra call to the server 2014-01-11 11:53:23 +00:00
Nathan Gray
26b8cae767 Avoid removing all event listeners if the etemplate has no unique ID (happens for dialogs) 2014-01-11 11:42:23 +00:00
Ralf Becker
87ea75a75b use \042 instead of \" in regular expression, as it stalls minifier 2014-01-10 16:19:05 +00:00
Nathan Gray
3b57659536 Defer binding to window resize until after loading is finished. 2014-01-10 15:54:35 +00:00
Nathan Gray
cb94adb995 Defer loading of tabs
First / selected tab is loaded in line with normal code execution.  Not visible tabs are loaded after using window.setTimeout().  jQuery.Deferred makes sure the template doesn't fire the load event until they're all done.
2014-01-10 14:32:03 +00:00
Nathan Gray
9b4cd3e306 Some more profiling helpers - timeline timestamp at start of rendering, consistently measure to end of app callback 2014-01-10 14:27:21 +00:00
Nathan Gray
a64da9f456 Disable automatic chosen, only explicit now 2014-01-10 09:47:26 +00:00
Ralf Becker
243f20e98c fixed handling of optgroups, eg. notification chains in prefs 2014-01-10 07:08:45 +00:00
Nathan Gray
c9e923bf78 Make sure UID is a string 2014-01-09 18:10:32 +00:00
Nathan Gray
f1558bcffb Fix missing bracket 2014-01-09 16:53:42 +00:00
Nathan Gray
3fdb024ff2 Don't reset height until it's time to invalidate, avoids re-calculating on every row 2014-01-09 16:46:39 +00:00
Nathan Gray
c082dec331 Profiling - Automatically profile etemplate2 loading in Chrome 2014-01-09 16:44:34 +00:00
Ralf Becker
400240f1e4 caching translations for 10days and changing translation url, when translations are changing --> saves server-roundtrip for each translation 2014-01-09 15:32:07 +00:00
Nathan Gray
13572c472a Profiling - Add some timestamps for timeline 2014-01-09 13:38:32 +00:00
Ralf Becker
64cc24815c changed hopefully last reference to orange-ball.png with bullet.png 2014-01-09 12:26:34 +00:00
Ralf Becker
90edb55ec5 add async include and et2 render times to page-generation-times shown 2014-01-09 12:20:13 +00:00
Nathan Gray
5179794f15 Fix constant warnings about not found images when image was in nextmatch row and src was '' for the row 2014-01-09 11:43:15 +00:00
Nathan Gray
49ef2c538a Use any row data passed from server in etemplate load call to avoid an extra call to get_rows 2014-01-09 11:25:08 +00:00
Nathan Gray
957683087c Give a minimum height to loading nm rows so average height can be properly calculated, avoiding loading hundreds of rows. 2014-01-08 16:10:07 +00:00
Ralf Becker
2f905e8290 return $arr argument itself, but no reference to it, in all error cases 2014-01-08 09:47:37 +00:00
Ralf Becker
7b7132314c can NOT use empty($idx) as it is true for 0 too! 2014-01-08 08:58:57 +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
Ralf Becker
b095be7f3d fixed handling of empty name, not index into array but return full array 2014-01-06 12:53:34 +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
c458f34b18 Explicitly load headers & js for old etemplates 2013-12-19 18:27:46 +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
Ralf Becker
1c7887ca6a Pixelegg changes from Thursday 2013-12-12 20:27:35 +00:00
Nathan Gray
ffcc62e274 Implement 'add_tab' attribute on server side, so it works. 2013-12-12 20:15:36 +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
d65b40046a Move sidebox favorites & backend out of nextmatch and into framework 2013-12-12 00:03:07 +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
bbd146c0b9 Remove debug error message 2013-12-10 19:39:01 +00:00
Nathan Gray
cc3754ff85 Expand legacy options explicitly, since $legacy_options is not defined
Fixes missing app-specific categories in category edit popup
2013-12-10 19:37:57 +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
Ralf Becker
921eaf73f1 pixelegg changes from last week 2013-12-08 21:38:36 +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
Klaus Leithoff
3219eccec4 translation work provided by ingo, michael and other stylite staff 2013-12-06 08:05:58 +00:00
Ralf Becker
76cf4245e6 fix wrong download url 2013-12-05 22:46:31 +00:00
Ralf Becker
2479d85c77 search etemplates first under /etemplates in vfs and then in real filesystem, allows to overwrite templates on a per instance base, stylite.merge stream-wrapper can be used to mount templates editable into vfs 2013-12-05 21:06:35 +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
87936488bf Implement getState() & setState() towards a more universal favorites, but still more to do:
- Need to get favorite widget to use setState()
- Move much code out of etemplate2 widgets into a higher level
2013-12-05 00:00:43 +00:00
Nathan Gray
6f90cb8fb3 Decrement row count when refreshing a delete 2013-12-04 21:12:25 +00:00
Nathan Gray
3596b74f01 Use 1% to avoid scrollbars when they should not be there 2013-12-04 20:53:10 +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
Ralf Becker
7d9d146241 re-added probably accidently removed et2_taglist_ro ul css 2013-12-04 18:58:51 +00:00
Klaus Leithoff
68f2605cf4 translations generated/retrieved on translation site: Thank you for your contributions 2013-12-04 10:31:41 +00:00
Ralf Becker
144da1e76d pixelegg changes from tuesday 2013-12-04 05:23: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
7f176d54f1 Add a fallback to the fallback.
If an app doesn't support 'list' link entry, use 'index'
2013-12-02 20:11:47 +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
Ralf Becker
defe24b7c0 fixed not working selected_value attribute of checkbox and radio, server-side used (un)set_val as attribute while clientside used (un)selected_value for checkbox and set_value for radio, grrrr ;-) 2013-11-29 05:49:13 +00:00
Ralf Becker
57c2c913d1 fixed new emailadmin stuff to work with postgreSQL 2013-11-29 01:50:49 +00:00
Ralf Becker
4866478242 fix exception in boetemplate::get_array() 2013-11-29 00:20:56 +00:00
Nathan Gray
6dc8e077ff Revert changes from 44692 2013-11-28 20:28:36 +00:00
Nathan Gray
bcfaa60405 Automatically size just to parent, not whole window 2013-11-28 18:43:44 +00:00
Nathan Gray
b14424dbd1 Handle possibility of a null option without failing 2013-11-28 18:43:12 +00:00
Nathan Gray
69ab474f8c Another fix for private cf filtering, when filter is enabled/disabled via content 2013-11-28 18:32:36 +00:00
Nathan Gray
f8352386cb Use === to tell the difference between '' and (int)0 keys 2013-11-28 18:12:08 +00:00
Nathan Gray
f5b02ccc21 Preserve selected application when clearing search, or it gets lost internally 2013-11-28 17:31:22 +00:00
Ralf Becker
53eb8e553a pixelegg changes from yesterday 2013-11-28 06:20:18 +00:00
Nathan Gray
d1106a31fc Check & avoid duplicates when re-indexing options 2013-11-27 20:22:36 +00:00
Nathan Gray
aed7267801 If search option is set in template, don't override it with automatic chosen switch based on option count. 2013-11-27 18:07:36 +00:00
Nathan Gray
fa65814f9e Extend exception to all single select:
- Multi-select you don't select the empty/none option, just nothing
- Single select needs the empty/none option, even with chosen on
see r44551, 44631
2013-11-27 18:03:26 +00:00
Nathan Gray
407f3d673e Fix private field filter 2013-11-27 17:17:37 +00:00
Nathan Gray
f88a93c17e Can't switch DOM node in the detached interface, have to keep the original 2013-11-27 16:42:37 +00:00
Nathan Gray
1e36383224 Keep value in case select options haven't been set up yet so we can set value immediately after. 2013-11-27 16:35:45 +00:00
Ralf Becker
73b6521cbf pixelegg changes from yesterday 2013-11-27 07:21:32 +00:00
Nathan Gray
3f687236a5 Avoid repeated errors if sidebox target is missing by removing listener first 2013-11-27 00:18:55 +00:00
Nathan Gray
1b4d6049f5 Allow app to change the DOM ID of the div etemplate is loaded into 2013-11-27 00:06:12 +00:00
Nathan Gray
092da6a706 Use a fallback menuaction that won't give a permission error 2013-11-26 22:34:32 +00:00
Nathan Gray
52dbc208a6 Don't reset value to array index if it's already there 2013-11-26 20:03:19 +00:00
Nathan Gray
fe5650e144 Auto-detect location target if not set.
Fixes whole page reloads in jdots/pixelegg.
2013-11-26 15:55:56 +00:00
Nathan Gray
a5227f2359 Add read-only taglist 2013-11-25 18:10:48 +00:00
Nathan Gray
e942a63607 Better handling of buttons with text & image, as well as a default style. 2013-11-25 16:50:20 +00:00
Ralf Becker
5c7a290ac9 pixelegg changes from last week 2013-11-25 03:19:58 +00:00
Nathan Gray
ad3f10d1b0 Add check for nulls, they break 2013-11-21 23:43:53 +00:00
Nathan Gray
e1774ac9b7 Add attribute to include mailing lists in email results 2013-11-21 23:08:07 +00:00
Nathan Gray
0853f5bd66 Fix infinite loop by using a new counter variable 2013-11-21 21:25:31 +00:00
Hadi Nategh
a5043743a8 Try not to remove options value for type "select-number" becasue we need it to display rows in legacy_options 2013-11-21 17:39:44 +00:00
Ralf Becker
bb56c0aa45 pixelegg changes 2013-11-21 04:18:09 +00:00
Nathan Gray
ab2a1ae9b9 Accept categories as objects in an array as well as map by category ID 2013-11-21 00:21:01 +00:00
Nathan Gray
e623ea8c82 Change minimum height from 150px to 100px, still enough for a small nm 2013-11-20 23:27:53 +00:00
Nathan Gray
e231ca5212 Fix some splitter issues:
- Loaded at wrong size
- Docking lost previous pane size
- Docking overwrote bar location preference
- Allowed etemplate to think load was done too early
2013-11-20 23:27:10 +00:00
Ralf Becker
cd99f101a1 pixelegg changes from yesterday 2013-11-20 08:41:17 +00:00
Nathan Gray
1f1ea27078 Resize children's height too 2013-11-20 00:03:58 +00:00
Nathan Gray
c944df738d Make sure button is there before trying to edit its CSS 2013-11-19 21:49:07 +00:00
Nathan Gray
0357834ce1 Fix bad search url 2013-11-19 18:28:54 +00:00
Ralf Becker
845c460d68 fixed not working set_value 2013-11-19 15:18:12 +00:00
Nathan Gray
b6f16956f3 Make sure options are set before looking inside 2013-11-18 23:56:25 +00:00
Nathan Gray
2b7d47fcf7 Add background_image attribute, to allow setting image + label together, using button's background-image CSS 2013-11-18 23:34:52 +00:00
Nathan Gray
05aafd1fb1 Fix some grid children not getting run called after disabled 2013-11-18 23:11:27 +00:00
Nathan Gray
363e2d5d5f Avoid permission error when searching 2013-11-18 21:20:01 +00:00
Ralf Becker
2b7d9af0a2 reverting to previous app.css file and remove app.less files, as they are not used by pixelegg template and create some glitches, might re-introduce .less for regular templates later 2013-11-18 19:57:38 +00:00
Nathan Gray
cc5b0fc241 Allow link widget inside, it's used for searching 2013-11-18 18:47:25 +00:00
Ralf Becker
0ab743cb81 allow to load template-set specific templates, eg. addressbook/templates/pixelegg/edit.xet instead of addressbook/templates/default/edit.xet, if user is on pixelegg template-set 2013-11-18 10:52:51 +00:00
Ralf Becker
ef1679a899 allow to load template-set specific templates, eg. addressbook/templates/pixelegg/edit.xet instead of addressbook/templates/default/edit.xet, if user is on pixelegg template-set 2013-11-18 10:45:32 +00:00
Ralf Becker
a4f5ea0b00 propagate width to magic suggest 2013-11-17 20:36:35 +00:00
Ralf Becker
823e2b62c0 allow default label, even if switched to multiple, as it might stay if switch happens on clientside 2013-11-17 10:26:36 +00:00