Commit Graph

4161 Commits

Author SHA1 Message Date
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
Nathan Gray
c1fd6e5acb Give automatically added 'Select All' action its own group 2013-11-15 19:59:25 +00:00
Ralf Becker
3a3227bc27 fixed not found images in admin tree, by using static method knowing templated image path and calculating a relative path for images returned by common::image 2013-11-15 19:12:36 +00:00
Nathan Gray
26888ce64c When turning on tag mode, remove empty label from options. 2013-11-15 16:51:49 +00:00
Ralf Becker
8e69433829 use template specific images for foldertree, use "template" handler for all calls to template/framework object, NOT instanciating a new one using eg. a parent class 2013-11-15 16:28:24 +00:00
Nathan Gray
3c38cd10c4 Nextmatch update changes:
- Implement "update" as alias for edit
- Comment out handling of edit (handle as add)
2013-11-15 15:28:38 +00:00
Ralf Becker
727cdc83b3 newewst pixelegg changed from today 2013-11-14 19:29:55 +00:00
Nathan Gray
fb2c103cef Use current app to get around missing etemplate run rights 2013-11-13 23:57:49 +00:00
Nathan Gray
0745db84bd Use current app to get around missing etemplate run rights 2013-11-13 23:47:01 +00:00
Nathan Gray
d1c5bf2243 Use current app to get around missing etemplate run rights 2013-11-13 23:28:26 +00:00
Nathan Gray
23f85e9763 Enable etemplate for multiple templates 2013-11-13 22:43:19 +00:00
Nathan Gray
44f6f55406 Make sure entry header sets activeFilter value when setting nextmatch 2013-11-13 22:41:22 +00:00
Nathan Gray
70b4ff412c Avoid errors if row_cont is null, just use an empty array 2013-11-13 19:25:10 +00:00
Nathan Gray
b7487f8b72 Avoid double-binding change & focus handlers 2013-11-13 18:17:50 +00:00
Nathan Gray
a10ac05b63 Allow app's custom file drop code to run even if no row data found 2013-11-13 17:18:55 +00:00
Nathan Gray
85aa7c76e3 Fix missing prices in projectmanager price list widget 2013-11-12 21:36:59 +00:00
Nathan Gray
a4cad98e4c Skip request to make links if there are no links to make 2013-11-12 20:25:04 +00:00
Nathan Gray
87a4d6471b Add extra filters in to list 2013-11-12 20:14:33 +00:00
Ralf Becker
45a70dcf1d todays changes from pixelegg 2013-11-12 17:24:19 +00:00
Hadi Nategh
639040787b Fix tabbox widget validation to stay with the same tab when the form get submitted 2013-11-12 16:38:23 +00:00
Ralf Becker
96336ea521 fixed error, if no favorites are defined 2013-11-12 07:51:28 +00:00
Ralf Becker
583538e824 using now CSS preprocessor less (http://lesscss.org) to create some of our css files, used a lot in new Pixelegg template 2013-11-11 19:10:28 +00:00
Ralf Becker
77a30817d6 images for new Pixelegg template 2013-11-11 18:56:02 +00:00
Hadi Nategh
42368769a0 Fix %s as value in description widget 2013-11-11 14:16:18 +00:00
Ralf Becker
7c4d696f4b change height of et2_button_icon class to 16px, as that is size of all our current images, rescaling them to 20px looks uggly 2013-11-09 12:10:08 +00:00
Ralf Becker
38748c2fa1 fix for action-checkboxes not transmitted in et2 2013-11-08 16:38:12 +00:00
Nathan Gray
ca92b22daf Downgrade error about overwriting value, id exists twice to warning.
Stop warning about duplicate IDs in children of header bar, those values are part of nextmatch.
2013-11-08 16:28:07 +00:00
Ralf Becker
beeecf46d0 2 more widgets without server-side class 2013-11-08 09:31:08 +00:00
Nathan Gray
ba9782138c Check for app_callback before trying to call it 2013-11-07 23:21:14 +00:00
Nathan Gray
969155e150 Handle no files selected without throwing warnings 2013-11-07 23:20:07 +00:00
Ralf Becker
441a0eb4e9 new seletbox.set_multiple(_multiple, _rows) method to switch multiple on/off on instanciated widget, optional parameter selectbox.set_tags(_tags, _width) to specify width 2013-11-07 13:20:49 +00:00
Nathan Gray
f33862b8b6 Fix setting default/forced column preference when selected columns was changed at the same time. 2013-11-06 22:51:57 +00:00
Nathan Gray
c21dcc5e4a Fix erole always showing some roles, never showing project only, by checking for read-only, and fix copy/paste error 2013-11-06 21:03:33 +00:00
Nathan Gray
f973dc9b79 Fix missing category labels in nm list (set with full object was not implemented) 2013-11-06 20:26:38 +00:00
Nathan Gray
39c1efc789 Fix up dataview / nm filter changes. Removes extra server call to ajax_get_rows. 2013-11-06 18:55:57 +00:00
Ralf Becker
1c7c699d4f select-account: default label will be added on clientside, it doubles, if added here too 2013-11-06 10:31:57 +00:00
Ralf Becker
90a9df3d1e key can be 0 or "" too, therefor need to check if attribute value exists 2013-11-06 10:31:31 +00:00
Ralf Becker
e53f781610 adding caption too 2013-11-06 10:30:18 +00:00
Ralf Becker
e5f76db8a8 fixed a typo in previous commit and get setting of value in typeOptions working 2013-11-06 08:59:38 +00:00
Ralf Becker
2793ab44fd fix select-dow widget to return again a single value by oring together selected week-days 2013-11-06 08:49:06 +00:00
Ralf Becker
c7d566533e fix Nathans fix for old editor, to only use fallback for new widgets, if a type is given 2013-11-05 10:22:19 +00:00
Klaus Leithoff
395dd415f8 fix for an etemplate:: call, that seems to be outdated self:: seems to be the static object to use now 2013-11-05 08:32:03 +00:00
Nathan Gray
4d8371d015 Fix missing eroles in element list 'Element role' column 2013-11-04 21:53:05 +00:00
Ralf Becker
6d226a7921 split constructor function and place of instanciation for app.js objects: app[appname] = new app.classes[appname](); 2013-11-04 20:54:23 +00:00
Ralf Becker
f41480a3f6 added a couple more widgets not having an own server-side class 2013-11-04 19:33:57 +00:00
Nathan Gray
a2faa9bd00 - Clean up some link sub-widgets to make them operate a little nicer / more consistently
- Check attrs for already existing select_options too, should speed up selectboxes a little more
2013-11-04 19:00:43 +00:00
Nathan Gray
5b7f804877 Stop fatal error about missing argument 2 to textbox 2013-11-04 18:57:42 +00:00
Nathan Gray
d4be70de5a - Use a hook for app's custom widgets to avoid scanning filesystem
- Use new hook to load importexport's filter widget
- Remove some typos & error_log()s
2013-11-04 17:23:58 +00:00
Ralf Becker
7f50ed9f1a fixed renumbered option-values because of array_merge 2013-11-04 16:05:51 +00:00
Ralf Becker
7180f78f00 setting default for optional 2. beforeSendToClient parameter to null 2013-11-04 15:41:58 +00:00
Ralf Becker
88dd91fe2a put class attribute on menupopup instead of menulist, as that is where et2 looks for it 2013-11-04 11:54:51 +00:00
Ralf Becker
e2b9443fa0 no need to load not autoloadable widgets, in fact is messes up loading order in old etemplate editor 2013-11-04 10:23:42 +00:00
Ralf Becker
1dd3ad5e0a fixed ckeditor wont start with NOT expanded toolbar 2013-11-04 10:13:28 +00:00
Ralf Becker
1fe139c822 never send passwords back to client, instead send a number of asterisks and replace them again on server-side 2013-11-04 09:11:11 +00:00
Ralf Becker
a1b66d286d keep client/javascript from re-ordering nummeric option-values by sending them as array of objects with attribute value 2013-11-03 13:33:32 +00:00
Ralf Becker
7e856af544 mark popups as such by enclosing there content in div#popupMainDiv and properly closing html markup for popups 2013-11-03 09:30:25 +00:00
Ralf Becker
4dbb522887 only add html5 required attribute if validation is NOT ignored, like eg. in editor 2013-11-02 17:30:07 +00:00
Ralf Becker
52a3a5e2ae fixed not working readonly display of integer or float widgets, caused by attribute validation allowing string only 2013-11-02 14:49:26 +00:00
Ralf Becker
511a925bb4 excluding contact_widget causing to load etemplate_widget and etemplate_widget_transformer, not playing nice with old editor 2013-11-02 10:28:56 +00:00
Nathan Gray
7f98f428a0 Adapt importexport for etemplate2 2013-11-01 22:04:43 +00:00
Nathan Gray
1e786ec974 Automatically send widget attribute changes made while processing an ajax submit.
(App code can return without calling exec() to avoid re-rendering the whole thing)
2013-11-01 21:48:22 +00:00
Nathan Gray
0c87bd63e7 Fix for sub-templates set via content not properly validated on submit 2013-11-01 21:39:45 +00:00
Nathan Gray
36d930ad41 Explicit method visibility is supposed to satisfy PHP 5.4 2013-11-01 21:19:08 +00:00
Nathan Gray
aa4651272e Some minor enhancements / bugfixes, such as
- Better warnings
- Check some vars before using
- Fixes missing value on selects with tag attr
2013-11-01 21:12:20 +00:00
Ralf Becker
04a066154e fixing PHP fatal error: "Object of class etemplate could not be converted to string", caused by last commit 2013-10-31 08:49:46 +00:00
Ralf Becker
e4e3627cdc fixed first row with index="0" got displayed wired eg. in file selection popup, caused by empty("0") === true 2013-10-31 08:34:14 +00:00
Nathan Gray
34e5d01de4 Allow access to current namespace content with {$_cont[...]}, since {$cont[...]} goes to the root
(this might not be the best, but I can't figure out a better way with the compiled expressions)
2013-10-30 17:16:20 +00:00
Ralf Becker
064baf926a et2.submit(button,async) button can now be widget-id too, new optional async parameter to send request asynchronious (default synchronious), eg. to show an otherwise frozen animation 2013-10-30 14:07:29 +00:00
Ralf Becker
cabb1e8b8c fixed error if this._widgetSurrondings is not defined, no idea why 2013-10-30 09:43:12 +00:00
Nathan Gray
388b2cbceb - Fix etemplate2 assign json plugin so it's on the right egw object
- Add a console debug group (when supported) to make it easier to work with console log
2013-10-28 20:16:49 +00:00
Ralf Becker
c3d3ca9973 fixed wrongly disabled tabs 2013-10-25 12:26:44 +00:00
Ralf Becker
e8ac0674e1 need to compare short names, as long name generated by prefixing with template-name is not found, because different template name 2013-10-25 11:39:05 +00:00
Ralf Becker
f62028444d disable tabs independent of using short or full name, eg. $readonlys["tabs"]["test"] = true works as well as $readonlys["tabs"]["app.something.test"] = true 2013-10-25 07:31:45 +00:00
Nathan Gray
7c7d6391ab - Automatically add 'Select All' action with Ctrl+A shortcut after first action group
- Implement Select All into selection controller so it works even if all rows aren't loaded
2013-10-24 17:29:11 +00:00
Ralf Becker
2f0f2ae303 * All apps: new custom-field type IP-Address getting initially set with remote IP address, and allowing to set negativ length for text fields to make them readonly 2013-10-24 17:22:23 +00:00
Nathan Gray
9bdaf0f338 Silence error log 2013-10-24 17:05:22 +00:00
Nathan Gray
dc01c61793 Fix up order of operations in link widget to stop setting value too early
Fixes "false" as text when value is provided in app:id format
2013-10-24 16:04:44 +00:00
Ralf Becker
32e033df6f * PostgreSQL/Addressbook: fixed SQL error when sorting by a custom field 2013-10-24 14:57:36 +00:00
Nathan Gray
5923aed2a8 Make link widget last selected app preference specific to each application 2013-10-23 19:51:43 +00:00
Nathan Gray
550604017e Make sure original buttons don't show in auto dialog 2013-10-22 22:43:14 +00:00
Nathan Gray
ea79585b23 Pre-set min-width of auto-dialog to honor specific sizing 2013-10-22 22:03:31 +00:00
Nathan Gray
a81aaefbe3 Fix selectbox with array value not getting set 2013-10-22 21:18:45 +00:00
Nathan Gray
ab4873553b - Add in any missing filter/left/right header select options from favorites or other changes instead of rejecting. Server side get_rows is responsible for actually providing the missing option(s)
- Propagate changed exec_id to controller
2013-10-21 22:23:02 +00:00
Nathan Gray
a5e0ee9cd0 Fix broken warning about setting value not in options 2013-10-21 22:20:18 +00:00
Nathan Gray
52a7acfc55 - Don't change template if new is the same as current
- Create header in init(), now that not-loaded templates are handled
- Update nm left/right header input widgets' old value when filtering
2013-10-21 18:02:02 +00:00
Nathan Gray
788483043d Set activeFilters to match value in left/right header when binding to change so favorites pick up header values set by server 2013-10-21 17:28:08 +00:00
Nathan Gray
2524de6c74 Add link now remembers you last selected app 2013-10-21 16:32:07 +00:00
Nathan Gray
c25d73b435 Change link widget from edit to view, pass the parameters needed to open in the app's tab or popup, according to link registry 2013-10-21 15:39:09 +00:00
Nathan Gray
3298e69d92 Change some more regexes to match all 2013-10-21 15:16:12 +00:00
Nathan Gray
77e2849895 Add et2_grid.set_value() to re-create a grid (including auto-repeat).
Pass an object with key/value pairs to update the grid's array managers (content,sel_options,readonlys).
The grid will then be re-created (not updated) using the template.
2013-10-18 23:24:49 +00:00
Klaus Leithoff
4dbda94f6a implement set_class for progress widget; preserve widgets base classes, if we do so 2013-10-18 09:47:29 +00:00
Klaus Leithoff
2435e925ae implement set_class for progress widget 2013-10-18 08:50:53 +00:00
Nathan Gray
5fab641aef - Get eroles displaying in element list
- Remove unused js file
2013-10-17 17:02:36 +00:00
Nathan Gray
10f3665853 If there is no template specified, resolve immediately 2013-10-17 15:23:33 +00:00
Ralf Becker
056e5680b8 make sure to load all cfs, if "customfield" in in selected columns 2013-10-17 14:08:54 +00:00
Ralf Becker
3124a8c3f3 allow to use "about:*" or urls starting with / in set_value 2013-10-17 13:14:22 +00:00
Nathan Gray
4d35323f52 - More checks for sub-template referred to by partial name
- Fix sub-template modifications missed if namespace mismatch
2013-10-16 23:16:29 +00:00
Nathan Gray
d271990b84 Prevent creating multiple sub-widgets if doLoadingFinished() is called more than once (eg in nextmatch header) 2013-10-16 22:39:41 +00:00
Nathan Gray
4002907c05 Use jQuery's Deferred to solve the deferred loading problem instead of load events. 2013-10-16 20:48:05 +00:00
Ralf Becker
f10fc199a0 reverted only binding if onclick method is set to allways bind again (because eg. et2_button needs bind and fails to work) and only setting et2_clickable, if we have an onclick 2013-10-16 15:04:52 +00:00
Ralf Becker
d1a2b89815 only bind click event if we have a handler and add et2_clickable css class so user knows widget is clickable 2013-10-16 09:17:51 +00:00
Ralf Becker
38504680b7 setting CSP attributes needed by CKeditor now automatic when egw_ckeditor_config::get_ckeditor_config(_array) get called 2013-10-14 10:42:36 +00:00
Klaus Leithoff
ceb20da716 fix preset of taglist value 2013-10-14 08:37:49 +00:00
Ralf Becker
6f5207953e * PostgreSQL/ProjectManager: fixed SQL error "pm_id is ambigues" when accessing /apps/projectmanager via filemanager
instead of aliased primary key, we have to use original column incl. table-name as alias is ambigues
2013-10-14 07:53:13 +00:00
Nathan Gray
b77ce6a8dc - MagicSuggest update
- Fix setting taglist value via js
2013-10-11 14:38:04 +00:00
Nathan Gray
f73f8fea89 Update email regex to allow:
Nathan Gray <ng.dot@email.com>
2013-10-11 14:35:13 +00:00
Klaus Leithoff
44e995abea provide a tooltip on vfs select button icon 2013-10-11 13:48:50 +00:00
Klaus Leithoff
78e3371a2b set action.caption as tooltip, and provide an applicable class for item images 2013-10-11 13:34:35 +00:00
Klaus Leithoff
d961343939 set action.caption as tooltip, and provide an applicable class for item images 2013-10-11 13:34:17 +00:00
Ralf Becker
200c9e55fe dont replace value&label "" with empty_label, as empty_label is allways added, ignoring it here, to not add it twice 2013-10-11 13:02:22 +00:00
Ralf Becker
c6a97da311 fixed changes in get_rows method were not send back to client, if PHP mcrypt is available / eTemplate request stored on client 2013-10-11 11:20:21 +00:00
Ralf Becker
3c80defe8b fixed setFilter to correctly return all current filter-values in its 1. parameter this.activeFilters 2013-10-11 09:55:12 +00:00
Nathan Gray
a30b656865 Fully support linking before entry is saved 2013-10-11 08:41:24 +00:00
Nathan Gray
8912d029a4 UI to support links on unsaved entries 2013-10-10 17:00:30 +00:00
Nathan Gray
33a7534299 Include offending widget in attribute type mismatch warning 2013-10-10 14:52:48 +00:00
Nathan Gray
e6f58c4d4b - Fix value rejecting array
- Better handling of no comment (null) on link
2013-10-10 14:43:54 +00:00
Ralf Becker
046aab4000 re-add css class "row" to every grid row to get row-cursor back 2013-10-10 13:37:30 +00:00
Nathan Gray
398a8eed25 Event handler attributes:
- default to et2_no_init so they don't get processed if not set
- remove some duplication in attributes
2013-10-10 13:17:07 +00:00
Nathan Gray
0d7f213c7d No longer need to change onchange here, client side does it 2013-10-10 13:12:33 +00:00
Nathan Gray
22b5ed587f Improve error message to make sure we get the error message 2013-10-10 12:32:34 +00:00
Nathan Gray
eda4d2a3f6 Some extra resize bits to make sure everything gets resized:
- Resize the grid (resizes the column headers)
- Re-initialize the dynheight, just in case something changed
2013-10-10 12:25:29 +00:00
Nathan Gray
09693fc761 Remove inline javascript to file 2013-10-10 11:58:19 +00:00
Nathan Gray
9fe3bda432 - Don't try to translate config
- Better error message if destroying CKEDITOR fails
- Handle failing destroy, and make sure widget is completely removed
2013-10-10 11:57:18 +00:00
Ralf Becker
0e2e88c19b fixed hiearchy display in infolog and reset of subs view via clicking on InfoLog icon/header, using now value of nm[parent_id] as key for col_filter 2013-10-10 11:29:31 +00:00
Ralf Becker
60049dd085 fixed error stalling filemanager: can not read property _parent of undefined 2013-10-10 11:23:32 +00:00
Ralf Becker
24e3fb2e63 fix "Got invalid title request, by NOT sending empty requests" warnings 2013-10-10 10:49:41 +00:00
Ralf Becker
ece1062b8b fixed not translated empty_label in selectAccount or nextmatchAccountFilter: they always get translated independent of no_lang attribute 2013-10-10 10:23:37 +00:00
Ralf Becker
12717741e4 load app translations on ajax-submit too 2013-10-10 09:32:25 +00:00
Klaus Leithoff
2a61ac9264 allow to pass config/validation rules to current purifying engine (HTMLawed) 2013-10-10 09:30:25 +00:00
Ralf Becker
47c3495a86 appending modification time to eTemplate url 2013-10-10 08:19:20 +00:00
Nathan Gray
f12ab66b07 Ok, changing nextmatch row template via ajax should work now. 2013-10-09 17:33:29 +00:00
Nathan Gray
da6d3d2d19 Also ignore total, or it will reset the normal method of setting it... 2013-10-09 17:32:28 +00:00
Ralf Becker
be0530936c fixed taglist focus and click events to adhere to new event signature 2013-10-09 17:29:36 +00:00
Nathan Gray
26f75a241b Make sure context is the widget when calling setters 2013-10-09 17:15:44 +00:00
Nathan Gray
1e8e86fe23 - More consistent firing of load event, so templates can be handled the same if the template has to be fetched or it's already there
- Caching of fetched templates in the instance manager
2013-10-09 17:14:59 +00:00
Ralf Becker
f40f41a7d4 set_value now iterates over all radioboxes with same id and (un)checks them depending on given value, DOM-id get now set_value appended to be unique 2013-10-09 16:22:35 +00:00
Nathan Gray
17c933cded Better handling of binding change handlers to async loaded header templates 2013-10-09 15:14:25 +00:00
Ralf Becker
0163442f37 changed signature of on* event handlers: 1. event, 2. widget (context is DOM node), event handlers have now type "js" in attribute description and get automatic converted to a function, no more need to call et2_compileLegacyJS 2013-10-09 14:35:03 +00:00
Nathan Gray
17e8fa094d Support changing nextmatch template after initial load (ie: in get_rows callback) 2013-10-09 14:11:44 +00:00
Nathan Gray
df660bea3c Better handling of doLoadingFinished and firing load event:
- don't fire while still loading
- prevent trying to load children before template is actually loaded from file
2013-10-09 14:10:33 +00:00
Nathan Gray
daf55af475 Don't try to resize if the columns are not set yet - there's nothing to resize 2013-10-09 14:05:05 +00:00
Nathan Gray
d22489e23b Make sure callback is there before trying to call it. If the template changes before the timeout fires, it might not be. 2013-10-09 13:07:29 +00:00
Nathan Gray
fde83c834e Register an AJAX handler for assign response type. Needs exec_id, widget ID, attribute name and value. Widget must support setting that attribute. 2013-10-09 12:56:49 +00:00
Nathan Gray
bfe208c013 Make sure favorite group widget gets cleaned up 2013-10-09 12:14:36 +00:00
Ralf Becker
3c0743cb97 implemented onfocus event for input-widgets, tested with textbox and taglist, others more complex input-widgets probably need to proxy the event 2013-10-09 09:05:30 +00:00
Ralf Becker
f46754cd1a remove href="javascript:void(0)" in favor of href="#" working with CSP 2013-10-08 10:08:09 +00:00
Ralf Becker
bafcc80e35 fixed translations not loaded on very first request, as postponing ready for waiting on translations did not work, now using a direct callback instead 2013-10-08 08:55:15 +00:00
Nathan Gray
1a4a4fdded Always set value, not just title, in nextmatch so link gets updated 2013-10-08 08:26:59 +00:00
Nathan Gray
3816abc7a7 Fix %s in label of link widget 2013-10-08 08:19:42 +00:00
Nathan Gray
5c8c51c77d Always set label, avoids label not being set properly in nextmatch 2013-10-08 08:14:24 +00:00
Nathan Gray
52f269717e Fix %s in labels in nextmatch rows 2013-10-08 07:46:44 +00:00
Ralf Becker
0bb8093426 fixed translations on client-side: server sends now currentapp and langRequire to client, which uses that to translate phrases, langRequire is only stored in egw object for matching app-name and window! 2013-10-07 17:00:03 +00:00
Ralf Becker
147e469b02 missed docu-update on postSubmit 2013-10-07 16:12:04 +00:00
Ralf Becker
b7d6d4266e quite some warning 2013-10-07 16:11:25 +00:00
Nathan Gray
764bde5bff Fix broken set_value() to properly accept strings as value, fix broken adding of free entries 2013-10-07 10:10:54 +00:00
Nathan Gray
a190cd7302 Remove javascript:void() href to comply with CSP 2013-10-07 10:05:51 +00:00
Nathan Gray
869ebc3ca5 - Respect force_mailto preference
- If force_mailto is not set, open in a new window instead of current
2013-10-07 09:48:17 +00:00
Hadi Nategh
54ab073cab Fix et2_checkbox_ro widget for exceptional cases when we pass value as Non-Boolean 2013-10-05 14:04:10 +00:00
Ralf Becker
43e1bfcc12 switching on Content-Security-Policy: script-src 'self' 'unsafe-eval' for all templates, old non-et2 apps can call egw_framework::csp_script_src_attrs('unsafe-inline') to enable inline scripts in their scope, et2 does it for CK editor which does not support CSP currently and old etemplate does it for all apps using it 2013-10-05 13:33:28 +00:00
Nathan Gray
9b9a1df8a3 Use egw.open_link() to open popups so they can be tracked, if they have a target. 2013-10-05 09:40:00 +00:00
Ralf Becker
ec2de1c7e6 replace unnecessary post submits with regular ajax submits, also added a couple more todos 2013-10-04 14:43:56 +00:00
Nathan Gray
5d746529a7 Documentation update 2013-10-04 13:25:05 +00:00
Hadi Nategh
da42c28e57 Fix grid with auto-repeat rows 2013-10-04 13:03:58 +00:00
Ralf Becker
6e30816758 fixed not working download via action system: needed submit via POST request instead of Ajax, add new boolean action attribute postSubmit 2013-10-04 12:48:11 +00:00
Nathan Gray
5d1a8e16ee Fire change event when input is changed via code 2013-10-04 10:07:34 +00:00
Nathan Gray
4c1dd51f0a Fix another occurrence of search icon still using jQueryUI icon 2013-10-04 07:38:34 +00:00
Nathan Gray
7cda6a630b Add a toolbar widget that displays its actions as a toolbar 2013-10-04 07:29:38 +00:00
Nathan Gray
70b8496310 Handle more complicated select_options style options, including icons. 2013-10-04 07:21:19 +00:00
Ralf Becker
dad39e1d8a moved all confirmation to api egw_actions and changed select_all to depend on all visible rows selected (Ctrl-A) 2013-10-03 15:30:27 +00:00
Ralf Becker
d7f37f5c2d fixed not displayed icon, when using et2_dialog.show_dialog(), fixed set_message to allow only plain text 2013-10-03 15:27:00 +00:00
Nathan Gray
ef884aa1cd Try for a more local parent node than window to get better sizing, explicitly resize child nodes 2013-10-03 12:56:29 +00:00
Nathan Gray
0c0dc2c943 Just re-ordering for better readability 2013-10-03 12:53:58 +00:00
Nathan Gray
3d1bdceaac Deal with rounding errors etc. so columns always take full width, and some bounds checking in case things go horribly wrong. 2013-10-03 12:52:58 +00:00
Ralf Becker
5778c9d964 fixed egw_framework::message($msg, $msg_type) was not displayed on ajax-load, eg. regular et2 submit 2013-10-03 09:09:24 +00:00
Nathan Gray
c4fc4699a4 Paul's fix for annoying link title error popping up 2013-10-03 07:12:53 +00:00
Nathan Gray
499c9f3c22 Avoid infinite heights in case there is nothing below 2013-10-02 13:11:07 +00:00
Nathan Gray
d8ae1a63a4 Nicer default styling for image buttons, and default vertical alignment for hboxes 2013-10-02 13:03:16 +00:00
Nathan Gray
29f8a562e2 Better usage for relative column width:
- Columns with relative width specified in template are kept relative in resize
 - Columns with no width specified in template get any left over space (relative)
 - Columns with fixed width specified in template are kept fixed
These three together mean that if the user resizes the window or adds/removes columns, fixed columns don't change and any space is divided among relative columns.
2013-10-02 12:43:30 +00:00
Nathan Gray
6e8723361d Fix typos 2013-10-02 11:34:11 +00:00
Nathan Gray
e57e994e9d Works better if I define the var 2013-10-01 17:07:08 +00:00
Nathan Gray
b6ea2635d2 Handle onchange in the same way as onclick - check if it's a real function first 2013-10-01 17:03:03 +00:00
Nathan Gray
791bf29e60 Some better handling of app.appname.funcname style onclick / onchange when set in the template 2013-10-01 16:52:38 +00:00
Nathan Gray
4449e9a44b Override the correct function 2013-10-01 15:52:25 +00:00
Nathan Gray
a8136aa191 Give filemanager selection a widget front-end. 2013-10-01 15:40:14 +00:00
Nathan Gray
e2bc78b9e3 Make sure we don't lose widget context 2013-10-01 15:31:11 +00:00
Hadi Nategh
2445bfc22b Fix the regular expresion to get the right key for nested Ids using [], textbox_widget 2013-10-01 15:06:56 +00:00
Nathan Gray
bc6acd4a3e Mix preserved arrays replacing new arrays when new array is empty 2013-10-01 09:20:23 +00:00
Nathan Gray
52d339305e Default placeholder actions to "add" if not otherwise specified. Allows 'Add' action by default when no records shown in nextmatch. 2013-10-01 07:40:20 +00:00
Nathan Gray
83741673c3 Fix account/group select search dialog
- Broken group expansion
 - Broken styling / indents
 - Use unique IDs & data-id for account ID
2013-09-30 16:54:25 +00:00
Nathan Gray
28c2737c9f Change multi-select header styling:
- Change icons from jQueryUI to egw
- Stop hiding header when not needed, always show
- Don't visually distinguish header
- Don't float right icons, leave them between checkbox and label
2013-09-30 15:39:36 +00:00
Nathan Gray
db1077e3ed Fix extra change event firing which was breaking multiple file uploads 2013-09-25 15:52:42 +00:00
Nathan Gray
9039200578 - Handle complicated/nested IDs in left/right headers (eg col_filter[tr_tracker])
- Handle left/right headers loaded async from server when setting up handlers
2013-09-19 20:39:17 +00:00
Nathan Gray
c19f95ded8 For multiselectboxes, we need to do an array comparison for dirty, or it will always fail (be dirty) 2013-09-19 20:37:17 +00:00
Nathan Gray
3cfbcc8cf1 Trigger a load event when the template is loaded, to make it easier to work with the template when it is loaded from the server 2013-09-19 19:31:56 +00:00
Nathan Gray
1bdd5eb617 Size chosen selectboxes even if they are hidden - prevents 0 width chosen selects 2013-09-18 20:15:11 +00:00
Nathan Gray
8b01daa120 Fix selecting tab by passing in value 2013-09-18 18:01:52 +00:00
Nathan Gray
407efdbcaf Some chosen parameters:
- Inherit classes from select
- Search within, not just at start
2013-09-17 16:22:51 +00:00
Nathan Gray
8f91781933 Change nextmatch actions to use ajax submit, not post 2013-09-16 15:20:22 +00:00
Hadi Nategh
8cdbbe67fc fix et2-> nm_open_popup error,"undefined method getInstanceManager", in et2_extension_nextmatch_actions 2013-09-16 10:40:19 +00:00
Hadi Nategh
5517a29d47 Fix datepicker error,"hour is undefined" from et2_widget_date 2013-09-13 13:06:46 +00:00
Hadi Nategh
c1683552ba et2_widget_date-> datetime:Fix replacement of entered time manually with actuall time 2013-09-12 11:45:26 +00:00
Nathan Gray
871f63a9f2 Additional checks on autorepeat fallback
- Better handling of the different accepted indirect placeholders
- Add a check & error to prevent infinite loops (or crazy large grids)
2013-09-10 23:25:51 +00:00
Nathan Gray
02c6f3b108 Remove some more references to phpgwapi/js/egw_json.js 2013-09-10 18:56:50 +00:00
Nathan Gray
dcfcec3ab1 Put checkbox before label by default 2013-09-10 18:39:31 +00:00
Nathan Gray
3ae18c9a78 - Use a et2_dialog over native prompt for editing comments
- Use jsapi's egw.json() for ajax
2013-09-10 17:57:41 +00:00
Nathan Gray
ca54de9e2c Use jsapi's egw.ajaxURL() 2013-09-10 17:55:05 +00:00
Nathan Gray
8105242434 Favorites fixes
- Fixes for multiple favorites on the page at the same time (multiple et2 apps)
- Use egw.json() calls
2013-09-10 17:06:15 +00:00
Nathan Gray
4996c584b3 Use a different method to avoid special expansion breaking nextmatch - skip it for grids inside a nextmatch. 2013-09-10 16:09:12 +00:00
Ralf Becker
256b888124 fix for templates containing no bottomNodes 2013-09-10 14:40:19 +00:00
Klaus Leithoff
8667f81010 change handling of progress attribute; only XET-ids work, when fetched with getWidgetById and widget.getDomNode (it may not be available at creation time, so we (re)check on createStatus time) 2013-09-10 12:57:40 +00:00
Klaus Leithoff
355ffbbb9b change handling of progress attribute; only XET-ids work, when fetched with getWidgetById and widget.getDomNode 2013-09-10 08:08:47 +00:00
Nathan Gray
9192652877 Let progress attribute be a widget ID or the ID of a specific DOM node 2013-09-09 22:04:48 +00:00
Nathan Gray
7b9b5efe7f Apparently expandName() can also return null - handle that too 2013-09-09 21:39:31 +00:00
Nathan Gray
2087aed7a3 Check to see if the substitution actually got something, or we could wreck the nextmatch rows. 2013-09-09 19:16:05 +00:00
Nathan Gray
230472d256 Change auto-repeat detection to additionally look through widgets for IDs like const[$row] when there is no row content 2013-09-09 18:52:11 +00:00
Nathan Gray
bfef97c8fc Documentation correction 2013-09-09 18:42:51 +00:00
Nathan Gray
b485b57785 Fix for hidden old popups breaking application height. Still not perfect in idots, but much better. 2013-09-05 21:51:47 +00:00
Ralf Becker
1590d02816 new egw_framework::message($msg, $msg_type="success") method and fixing nextmatch filter-change to return app-header 2013-09-05 11:53:25 +00:00
Nathan Gray
b1aca92a9e Merge egw_jsons - use api egw.ajaxUrl() 2013-09-04 23:30:29 +00:00
Nathan Gray
c2c5337bd2 Save a little trouble by using the global egw.preferences() directly 2013-09-04 23:20:44 +00:00
Ralf Becker
1f8e0e9e41 global method egw_message(_msg, _type) to display success-, warning- or error-messages in app-header 2013-09-04 19:02:34 +00:00
Ralf Becker
9d29c16c3a fixed no footer (eg. closing body and html tag) in jdots template, because etemplate2 (unneccessary) calls footer, but ignores its return value 2013-09-04 13:50:37 +00:00
Ralf Becker
baaaf5b877 static method to get app-names as options, as from the widget itself 2013-09-04 13:48:22 +00:00
Klaus Leithoff
74ec0f6651 fix some issues for file upload type validation 2013-09-04 09:03:54 +00:00
Nathan Gray
c53943aa76 Another try to avoid jQueryUI error about not created menu 2013-09-03 21:25:50 +00:00
Klaus Leithoff
3bc322690e throw exception if no name is given for instanciation of template 2013-09-02 12:51:53 +00:00
Klaus Leithoff
d5613a51fe swap haystack and needle, as they seem in wrong order for the purpose at hand 2013-09-02 07:52:57 +00:00
Nathan Gray
dc46ebed05 Avoid jQueryUI error about not created menu 2013-08-30 16:27:34 +00:00
Nathan Gray
4760b5f55e Keep column filters & sort of different nextmatches separate 2013-08-30 16:26:54 +00:00
Ralf Becker
65ef45630b change send_notifications to always restore modifications on user-enviroment, before returning 2013-08-30 13:48:47 +00:00
Klaus Leithoff
7744905ba8 try to resolve a use-session-stored-data related problem; make sure account_id and prefs are restored after send_notification 2013-08-30 12:57:51 +00:00
Ralf Becker
ecf440ed57 fixed SQL error caused by so_sql prefixing 0 with table name 2013-08-29 13:28:08 +00:00
Ralf Becker
b6013305f7 always replace dots with dashes in DOM id 2013-08-29 12:10:06 +00:00
Ralf Becker
a4ec8796af * Timesheet/PostgreSQL: fix SQL error when selecting a timerange 2013-08-29 10:59:00 +00:00
Nathan Gray
eb989ed98b Hold Ctrl key to drag a file from filemanager to system folder / desktop
Restricted to Chrome only, one file at a time, folders don't work well.
This uses Chrome-only DownloadURL, so other browser support is unlikely.
2013-08-28 22:31:14 +00:00
Ralf Becker
020d6d9394 replace all . 2013-08-28 14:43:27 +00:00
Ralf Becker
a74795387e replace . in template-ids with - to simplify css usage, as we do it the unique id already 2013-08-28 14:24:01 +00:00
Ralf Becker
ee843a5f02 can not set undefined from server side, only null, therefore allowing that as argument for id in egw_refresh 2013-08-28 12:50:49 +00:00
Ralf Becker
b42b0a9e21 new option to to show only enabled apps (ones which users can get run-rights for) in select-apps 2013-08-28 10:07:24 +00:00
Ralf Becker
c12c53bcb8 support getting app from "app_something::method" get_rows method 2013-08-28 06:59:06 +00:00
Nathan Gray
36021f5d13 Drag & drop files from user's system onto nextmatch row now working with sub-grids too 2013-08-27 20:24:55 +00:00
Nathan Gray
6028ac8eca Drag & drop files from user's system onto nextmatch row uploads & links file to that row 2013-08-27 17:26:02 +00:00
Nathan Gray
4e2843b4a1 Implement set_value() to accept a list of files, which triggers the async upload and callbacks 2013-08-27 17:20:08 +00:00
Nathan Gray
3d12c2b591 Add namespace to drop event bindings to easily remove only the ones the widget added. 2013-08-27 16:29:13 +00:00
Klaus Leithoff
4874e671ff commit some french lang file stuff; provided by Thomas Chaillot, Spirea 2013-08-27 08:54:00 +00:00
Nathan Gray
2875455a59 Avoid error if menu was not created 2013-08-26 23:29:52 +00:00
Nathan Gray
5a5b02c304 Remove HTML from title in example - jQueryUI changed to text() so HTML no longer works 2013-08-26 19:10:26 +00:00
Nathan Gray
4fa0370ce4 Avoid error if div has no ID (eg: dialog) 2013-08-26 19:08:02 +00:00
Nathan Gray
838966ae9e Properly fix date-timeonly js side to return a timestamp as all date widgets, server side converts it to expected format, same as others. 2013-08-26 17:04:43 +00:00
Nathan Gray
3b65d807ba Better handling for disabled columns.
Disabled grid columns don't create widgets, which caused the nm issues as it expected a widget in each cell.
2013-08-26 16:42:49 +00:00
Ralf Becker
aa8a848871 optional parameter for egw_framework::window_close() to specify an alert message, which get shown/alerted, before closing the window 2013-08-26 10:24:11 +00:00
Ralf Becker
0de6ab1b35 fix not working timesheet status and category actions: "disableClass", "enableClass" and "enableId" are now handled by action system itself, one should not set an explicit "enabled" attribute anymore 2013-08-26 08:24:50 +00:00
Ralf Becker
d8984be747 isDirty() method for whole template / etemplate2 object, thought it needs more work in widgets, not setting this._oldValue in their set_value() method 2013-08-23 15:15:30 +00:00
Ralf Becker
f4e1db3a68 fixed htmlarea not returning any content caused by prefixed DOM id, now all DOMwidgets have their DOM id available via this.dom_id set via this.set_id() 2013-08-23 14:10:37 +00:00
Ralf Becker
3bbfb8574b fixed wrong brackets causing run method not to decend into NOT disabled widgets 2013-08-23 13:00:13 +00:00
Nathan Gray
f94d213a91 Add stack trace to problem widget report so we can actually track down the problem 2013-08-21 17:18:40 +00:00
Nathan Gray
8c5cc3ca22 Fix favorites sidebox menu going missing - caused by jQueryUI CSS change 2013-08-21 16:02:24 +00:00
Nathan Gray
eb1be53297 Fix bad value in selectbox 'blank' option 2013-08-21 15:59:42 +00:00
Nathan Gray
c1be84c912 Some layout changes to get autocomplete (link widget, select users) working in dialogs too 2013-08-20 23:08:35 +00:00
Nathan Gray
17e8d00054 Fix up nm_action open_popup to match et2 unique ID changes 2013-08-20 22:23:18 +00:00
Nathan Gray
62d42c83da Some documentation, add ability to set value rather than hacking up getValue() (actions) 2013-08-20 18:49:38 +00:00
Nathan Gray
dba3bcc2aa Update timepicker, some work on date-timeonly so it returns a value 2013-08-20 18:37:09 +00:00
Ralf Becker
17203aaab3 an other missing semicolon ;-) 2013-08-20 16:43:37 +00:00
Ralf Becker
c39273ac51 allow to (optionally) add tabs to existing tabs in template instead of replacing them 2013-08-20 16:41:31 +00:00
Nathan Gray
f9ee897544 Prevent errors if refresh message is undefined 2013-08-20 15:59:16 +00:00
Ralf Becker
d9ee56bd79 adapt form::name() legacy pseudo function to new template-prefix 2013-08-20 14:23:00 +00:00
Ralf Becker
73aa652c41 missing egw.js from last commit and egw_framework::window_focus() method 2013-08-20 13:25:36 +00:00
Ralf Becker
1c4f65120c new egw_framework methods refresh_opener and window_close to call egw_refresh on opener or close popup window in a content security save way 2013-08-20 12:06:41 +00:00
Ralf Becker
8c2bdf8d0f disable permanent error-log 2013-08-20 11:57:44 +00:00
Ralf Becker
cad9521d02 fix indention 2013-08-20 11:13:42 +00:00
Klaus Leithoff
2f25201e72 implement the possibility to return multiple lines on get_message for tracking; allow transformation of --- into horizontal rule on html on get_message 2013-08-20 10:53:17 +00:00
Ralf Becker
d244ab7c79 NOT using html5 input type="time", as there is (intentionally) no way to control time-format, but with current state of html5 support, our preference is more relyable and we dont want users to open bugs because we do not respect their EGroupware time-format preference 2013-08-20 09:42:00 +00:00
Ralf Becker
155f771cc4 fixed not shown select-columns icon, rather hackisch, but I could not find a solution via our css files 2013-08-20 08:03:46 +00:00
Nathan Gray
e4b158be4b Give nextmatch a real getValue() function instead of faking it all the time. 2013-08-19 20:23:26 +00:00
Nathan Gray
d7375a2321 Add tooltips to popup header buttons 2013-08-19 20:21:56 +00:00
Nathan Gray
656560c376 Make sure et2 apps don't get passed back to old etemplate 2013-08-19 19:53:45 +00:00
Nathan Gray
09f2ccbb73 Add legacy option for only_app, improve wrong data error message 2013-08-19 17:42:08 +00:00
Klaus Leithoff
95e18fd5a7 merge russian lang files provided by MBCGroup 2013-08-16 11:01:33 +00:00
Hadi Nategh
fadca5bb6b fix set value for class when there is an assigned content to class= in .xet file 2013-08-16 08:11:06 +00:00
Nathan Gray
eec6791213 Silence some missing attribute settings warnings and fix warning about not loading app.js when it was already loaded 2013-08-14 18:01:22 +00:00
Nathan Gray
42e66e9319 Fix detached label not updating 2013-08-14 17:35:50 +00:00
Ralf Becker
fabc787fc3 * ProjectManager: fix SQL error if searching for string containing numbers and underscore or percent
skip user-wildcards (*,?) in is_numeric test, but not SQL wildcards, which get escaped and give sql-error
2013-08-14 08:02:23 +00:00
Nathan Gray
7e1a785615 Make whole edit dialog a drop target - files will be uploaded & linked
Done in the link widget, so any template with link-to should work.
2013-08-13 20:46:23 +00:00
Nathan Gray
952d6f8801 Fix file upload in international charsets (Farsi) - use existing egw_vfs::basename() instead 2013-08-13 17:03:36 +00:00
Nathan Gray
eade44ec57 Fix file upload in international charsets (Farsi) 2013-08-13 16:24:12 +00:00
Nathan Gray
6fdeb9f5f8 Drag files from desktop anywhere onto filemanager uploads 2013-08-09 23:34:42 +00:00
Nathan Gray
b74eec3d3f Reset back to old etemplate 2013-08-09 19:19:31 +00:00
Nathan Gray
069325c89d Do not center Filter. It had no effect on short lists, but chosen actually respected the setting 2013-08-09 19:18:58 +00:00
Nathan Gray
fefdb42340 Change comment caching to object level instead of class level to prevent revealing restricted comments 2013-08-09 16:23:50 +00:00
Ralf Becker
c8aa72039f html-encoding is done in etemplate engine 2013-08-09 11:17:30 +00:00
Ralf Becker
11f7673408 keeping options in format used for select-boxes everywhere else and convert to taglist.setData format just when calling setData, added new method select_all to set_value all items in select_options 2013-08-08 08:56:43 +00:00
Ralf Becker
99b6fe41e7 fix set_value to work after inital load, eg. on a button press 2013-08-07 14:52:12 +00:00
Klaus Leithoff
d2a851931f provide contact-id on errormessage on failure of mail-merge 2013-08-07 08:07:24 +00:00
Ralf Becker
b70f4bcd27 fixed taglist to no longer require ids to be set in select_options, IF allowFreeEntries is left on its default true 2013-08-06 18:31:24 +00:00
Klaus Leithoff
6362e257b1 alter message on success/failure of multiple message sending via addressbook mail-merge 2013-08-06 13:48:20 +00:00
Ralf Becker
ff536e6f1c * PostgreSQL/Addressbook: fix SQL error in addressbook by organisation and department 2013-08-06 12:09:11 +00:00
Nathan Gray
dacc98ae72 Add drop_target attribute to support HTML5 dropping of files 2013-08-03 19:12:38 +00:00
Nathan Gray
8097119b6c Remove debug 2013-08-03 14:46:51 +00:00
Klaus Leithoff
a69df51eaa as insertObject (called by treeObj.addObject) expects id to be either string or object, we cast the option.id in case its a number 2013-08-01 09:54:32 +00:00
Nathan Gray
a7180f2f1c Implement validate() so taglist can return values 2013-07-31 16:56:17 +00:00
Klaus Leithoff
fbc28c9b62 attempt to fix problem of comment-visiblity on multiple assignments of the ticket in question 2013-07-31 10:22:07 +00:00
Nathan Gray
72fb016cb4 Fix dropdown + favorites menu not doing anything when clicked. 2013-07-30 14:17:36 +00:00
Nathan Gray
6b537a1358 Add taglist-email sub-type, uses specific data source, formatting, and some client-side validation for just emails. 2013-07-30 14:16:47 +00:00
Ralf Becker
a293de8614 fix not working full submits if etemplate is etemplate_old and app uses etemplate_new 2013-07-30 12:21:19 +00:00
Ralf Becker
f41c0d1a72 fixed "PHP Parse error: syntax error, unexpected \ (T_NS_SEPARATOR)" error caused by email validation, also added error_log for these type of parse-errors 2013-07-30 09:11:33 +00:00
Ralf Becker
200a8860bf * eTemplate/all apps: (silently) limit number of links shown to 1000 newest, to not run into memory_limit or max_execution_time and assuming noone will scroll further down anyway 2013-07-26 09:38:38 +00:00
Ralf Becker
d483b2a564 * PostgreSQL/ProjectManager/InfoLog: invalid SQL opening a new entry InfoLog entry
can not "SELECT * FROM table ... GROUP BY *" has to be "SELECT table.* ... FROM table GROUP BY table.*"
2013-07-26 06:57:23 +00:00
Ralf Becker
78f032e063 fixed DISTINCT leading to no data returned (eg. ctag in accounts-addressbook in eSync and CardDAV), DISTINCED added twice and not using so_sql_cf::search if no custom fields defined 2013-07-23 13:50:11 +00:00
Ralf Becker
0bca64517c fixed SQL error introduced by r43149: multiple identical rows 2013-07-23 07:57:55 +00:00
Ralf Becker
364fbd0f66 fixed wrong call leading to maximum stack size exhaused error 2013-07-22 14:11:58 +00:00
Ralf Becker
f0808f09af fixed action _target.id was id of tree and not of action 2013-07-22 06:34:01 +00:00
Nathan Gray
f4a6c9859a More fixes forjQuery/jQueryUI update issues 2013-07-20 17:20:55 +00:00
Ralf Becker
f2906a1052 moved most action "comfort" functions (with exception of nm_action and pagination) from server-side nextmatch class to client-side egwActions.updateActions() method, so they are available for all widgets 2013-07-20 16:47:33 +00:00
Ralf Becker
f47e0bd59c moved most action "comfort" functions (with exception of nm_action and pagination) from server-side nextmatch class to client-side egwActions.updateActions() method, so they are available for all widgets 2013-07-20 15:58:08 +00:00
Ralf Becker
f8c184d860 * All apps/custom fields: fixed multiple identical rows, if custom fields where set (introduced in last package) 2013-07-20 15:56:41 +00:00
Nathan Gray
7085d4b51a Still off by default 2013-07-20 14:33:17 +00:00
Klaus Leithoff
0a37e675bd allow to set a limit of selected entries 2013-07-20 14:03:06 +00:00
Nathan Gray
bd63529096 Rework etemplate2 loading to use JSON plugin when loading from regular request & AJAX. instead of inline script tag 2013-07-20 13:57:53 +00:00
Nathan Gray
f60fa14c30 Wrap loadingFinished() in a try / catch, so if one widget has problems it doesn't break the whole template. 2013-07-20 13:54:31 +00:00
Nathan Gray
0c30eeaee4 Taglist CSS for et2 2013-07-20 13:53:35 +00:00
Nathan Gray
a21f6aedfe Check to see if autocomplete is available before destroying 2013-07-20 13:51:12 +00:00
Ralf Becker
74cb73d2d2 moved most action "comfort" functions (with exception of nm_action and pagination) from server-side nextmatch class to client-side egwActions.updateActions() method, so they are available for all widgets 2013-07-20 13:45:22 +00:00
Nathan Gray
2beadad730 Make sure dialog is created before trying to update buttons 2013-07-20 13:05:03 +00:00
Nathan Gray
49ef157e69 Continued development on taglist widget:
- More attributes
- Fix missing parent class and action system handlers
2013-07-19 15:07:35 +00:00
Nathan Gray
d2d0fa1fcd Check for proper type (string) if I want to use string functions 2013-07-19 12:38:52 +00:00
Nathan Gray
36b5590882 Fix wrong argument order to jQuery.proxy() 2013-07-19 12:37:47 +00:00
Nathan Gray
b7ad0d33f8 Make sure onclick callback functions (specified as app.appname.funcname, or a real function) get all parameters passed, and they always can have a reference to the responsible widget 2013-07-19 12:36:59 +00:00
Nathan Gray
5b5a3ad58f Fix copy-paste error in js attribute check 2013-07-19 10:55:07 +00:00
Nathan Gray
eb18408771 jQueryUI update changes where custom renderer hides 2013-07-19 09:31:00 +00:00
Nathan Gray
4ae6094d8d New tag list widget, supports ajax & static options 2013-07-18 15:27:39 +00:00
Nathan Gray
14ebff54c9 Changes from updating jQuery & jQuery UI to latest versions 2013-07-18 15:26:41 +00:00
Nathan Gray
b3bf5b734f Make unique ID deterministic - use template name 2013-07-18 09:21:07 +00:00
Nathan Gray
524f2b0f03 Use an etemplate / top template level prefix to avoid DOM ID collisions 2013-07-18 09:13:15 +00:00
Nathan Gray
1b270b2d6f Use an etemplate / top template level prefix to avoid DOM ID collisions 2013-07-17 13:08:48 +00:00
Ralf Becker
792f1b26cc replacing egw.LAB with egw_LAB, as egw object is shared by all iframes and popups, while LAB has to work on document 2013-07-17 12:47:21 +00:00
Nathan Gray
f9b72b05ac Don't need to set ID, framework does it automagically. 2013-07-17 12:32:36 +00:00
Nathan Gray
0bba8fd032 Strip out any javascript added by application and it properly to the AJAX response 2013-07-17 09:57:50 +00:00
Nathan Gray
5f0ac7a70b Fix server side auto-repeat to have different rows, instead of multiple references to the same one 2013-07-17 09:38:37 +00:00
Nathan Gray
df0dc0f27a If record ID is missing, don't try to get data for it - skip the whole request 2013-07-17 09:36:38 +00:00
Nathan Gray
85db39ed4e Support row ids from template:
id="$row_cont[field]"
2013-07-16 16:22:20 +00:00
Ralf Becker
92e0ee86a5 * All apps: allow to log user-agent and action of all changes in history-log of entries (enable in Admin >> Site configuration) 2013-07-11 13:09:23 +00:00
Ralf Becker
70dbb95d6e make eTemplate widget-type integer an alias for int, to ease backporting templates from trunk 2013-07-11 08:13:40 +00:00
Nathan Gray
4e947b304c Don't complain about read-only required fields 2013-07-10 18:25:28 +00:00
Nathan Gray
2bd53e72d4 Change evaluation order to get popup selector working again after last fix. 2013-07-08 22:24:36 +00:00
Nathan Gray
54eb53cdba When setting a validation error for a widget on a tab, switch to that tab so the user can see it. 2013-07-08 21:55:38 +00:00
Nathan Gray
13e593a7f1 Handle entities in selects other than cat_id 2013-07-08 21:16:45 +00:00
Nathan Gray
55dc847f95 Fix bug where images with numbers in their url were not displayed 2013-07-08 19:40:17 +00:00
Nathan Gray
388b0816b7 Fix box autorepeat - only repeat children of type box 2013-07-08 19:06:28 +00:00
Nathan Gray
6091d6eb76 Fix box autorepeat - only repeat box children, fix $row expansion inside a grid so regular boxes don't break 2013-07-08 18:58:07 +00:00
Nathan Gray
e8c394ed54 Implement egw action system on grid rows.
NB: This is not nm_actions.  See action system (egwAction.prototype.set_onExecute()) for details.
2013-07-05 15:13:05 +00:00
Nathan Gray
a0b07635eb I can find no issues with attributes being objects, removing check & warning. 2013-07-05 15:03:49 +00:00
Nathan Gray
ab3fbd56bd Promote label attribute from inputWidget to parent valueWidget, fixes missing labels on some readonly widgets 2013-07-04 20:42:21 +00:00
Nathan Gray
4d2c969b8f Box children can now auto-repeat if child ID has $ 2013-07-04 19:38:36 +00:00
Ralf Becker
93eac83b8a fixed wrong bracket causing SQL error: is not unique 2013-07-04 16:42:33 +00:00
Nathan Gray
5e90755cd6 Add 'sortable' attribute to grid.
Set it to an AJAX (PHP) callback to enable, and it will be passed the grid ID & new row order whenever the user re-orders the grid rows.
2013-07-03 23:16:15 +00:00
Nathan Gray
67d2fb66c2 Add a check to prevent total failure in the rare event of bad settings. 2013-07-03 23:06:59 +00:00
Ralf Becker
486298a7c9 optional parameter for et2_nextmatch.applyFilters(_set) to certain filters before updating the rows, eg. applyFilters({ filter: '', search: ''}); to reset filter to 'all', remove search and update the rows 2013-07-03 14:29:17 +00:00
Ralf Becker
349da32512 allow to set name attribute of iframe (to be used as target in links) 2013-07-03 14:26:33 +00:00
Ralf Becker
98f13d3e55 new method to specify images of a given node or standard images for new node (not specifying them), fixed merging of dynamicly loaded data, which was not taking recursive struture into account and -1 as id to update, using new id of new data in that case 2013-07-02 18:24:32 +00:00
Ralf Becker
ffceaf445a prototype for an admin app using et2 and a navigation tree, need to set index url in database: UPDATE egw_applications SET app_index="admin.admin_ui.index&ajax=true" WHERE app_name="admin" (dont forget to clear cache) 2013-07-01 17:07:07 +00:00
Ralf Becker
9a4693822c * PostgreSQL: automatic fix GROUP BY clause to contain all non-aggregate selected columns, to work around SQL errors, caused by this MySQL "optimisation" 2013-06-28 10:44:46 +00:00
Nathan Gray
533f141bc2 nextmatch is always valid too 2013-06-26 22:23:41 +00:00
Nathan Gray
0c6f70005a Implement some basic client-side validation (required) 2013-06-26 20:50:10 +00:00
Nathan Gray
7142d632a5 Implement htmlarea ascii mode 2013-06-26 19:34:14 +00:00
Nathan Gray
8f2248b6ab When setting nextmatch filters, accept empty values too 2013-06-26 18:04:51 +00:00
Nathan Gray
c20029dfd6 Process entities returned along with row data in all cases 2013-06-26 17:28:51 +00:00
Nathan Gray
0fa6386b1c Avoid XSS by using CSS to keep line breaks intact instead. 2013-06-26 14:11:54 +00:00
Nathan Gray
35da74fac0 Make sure there's a 'None' option if the select-account is not required so user is not forced to pick an account. 2013-06-25 22:15:09 +00:00
Nathan Gray
c8d2953c85 Check that input is created before using it, avoids error when chosen gets involved. 2013-06-25 21:56:08 +00:00
Nathan Gray
3ddf4a0300 Fix read-only selectboxes rejecting some values (same as r42732) 2013-06-25 21:38:11 +00:00
Nathan Gray
442c9e6356 - Add required attribute to radiobox so it can pass it on to radio buttons
- Add detached DOM support to play nice in datagrid rows
2013-06-25 20:53:39 +00:00
Nathan Gray
ac45bd0625 Implement server side required check on custom fields 2013-06-25 20:49:13 +00:00
Nathan Gray
059e82a01b Change newlines to <br /> in read-only text to preserve multi-line data. 2013-06-25 17:48:48 +00:00
Nathan Gray
d2031034f1 Silence some more messages by providing attribute info 2013-06-25 16:44:50 +00:00
Nathan Gray
f33e49b4a5 Fix validation failure from menulist interfering. 2013-06-25 15:49:10 +00:00
Nathan Gray
e0b576e822 Fix read-only selectboxes not being translated 2013-06-25 14:37:24 +00:00
Nathan Gray
a05ac6fa11 Fix checkboxes using defaults not returning boolean 2013-06-24 23:03:55 +00:00
Nathan Gray
80ae80098e Fix disabled grid rows still being created.
While not ideal (prevents modification / un-disabling after), this prevents some problems with doubled IDs
2013-06-24 20:50:37 +00:00
Nathan Gray
bcbc42135d Fix country filters - custom filters with type select now modified to nextmatch-filterheader, not regular select 2013-06-24 20:49:27 +00:00
Nathan Gray
eaa0cb6fa0 Need to trigger chosen update for single selects too 2013-06-19 19:01:42 +00:00
Nathan Gray
bcd52bb375 Better fix for some widgets not being properly initialized (that doesn't break others) 2013-06-19 18:11:30 +00:00
Nathan Gray
865151f977 Use value as string, so we don't fail if invalid data is passed 2013-06-19 18:06:59 +00:00
Nathan Gray
625dae0c59 Fix select options with label & title not always working in rows 2013-06-19 15:14:56 +00:00
Nathan Gray
9bfdbfccaf Fix some customfields not getting pre-processed or losing value 2013-06-18 23:26:43 +00:00
Nathan Gray
c952141839 Fix for some widgets with sub-type not being initialized properly 2013-06-18 23:24:55 +00:00
Nathan Gray
683a624710 Fix for some customfield dates going missing 2013-06-18 23:24:14 +00:00
Nathan Gray
1b3c8d15c8 Fix for HTML site/general configuration overwriting customfield settings 2013-06-18 23:23:42 +00:00
Nathan Gray
8a2c791be3 For radiobox customfields, implement "empty" first value = extra group label 2013-06-18 20:55:13 +00:00
Nathan Gray
0cd63aefc2 Fix missing custom selectbox rows attribute 2013-06-18 17:16:08 +00:00
Nathan Gray
c87a5d6806 Implement csv max,display for custom field text length 2013-06-18 17:03:06 +00:00
Nathan Gray
3f003ea3fb Fix default checkboxes not getting validated 2013-06-18 16:39:26 +00:00
Nathan Gray
b7f83ef31f Use a static variable to handle expansion when initializing with content set (validation) 2013-06-18 16:38:27 +00:00
Nathan Gray
a9aeabeeb1 Make sure we don't pass a bad sort value to app code 2013-06-18 16:24:01 +00:00
Nathan Gray
b933b17446 Put radio button labels after radio button by default 2013-06-18 15:08:50 +00:00
Nathan Gray
5c96c8c986 Prevent accidental too wide chosen boxes 2013-06-17 22:01:50 +00:00
Nathan Gray
94793b7808 Silence some warnings by providing info 2013-06-17 21:22:32 +00:00
Nathan Gray
ce5d6faa0a Add setter method for tags attribute 2013-06-17 20:55:42 +00:00
Nathan Gray
8c449cae82 Trigger a load event on the template container when the etemplate is fully loaded, so other (non-app) scripts can hook in with ease. The etemplate2 object will be the second parameter to the callback. 2013-06-17 14:44:55 +00:00
Klaus Leithoff
079b919bbe russian translations provided by Vladimir Gavrilov (MBC-Group) 2013-06-17 12:30:44 +00:00
Nathan Gray
8f277e0203 If disabling (=hiding) a widget, do its label too 2013-06-12 23:14:09 +00:00
Nathan Gray
ea104a9af5 Send any accumulated json responses after flushing etemplate - allows apps to use egw_json_response even when call is not an ajax call 2013-06-12 21:06:40 +00:00
Ralf Becker
066ffc2c25 refactored account_id change script to use information from app-specific tables_current.inc.php instead of a fixed list 2013-06-12 16:57:44 +00:00
Ralf Becker
341342bc39 fixed not working multiple value "select-account" or "home-accounts" (rows > 1) custom fields 2013-06-12 14:12:58 +00:00
Nathan Gray
7fc6d7e24d Fix read-only display of links with application already set 2013-06-11 23:13:04 +00:00
Nathan Gray
4d26a36d09 Fix order of selectbox option detection so value is last choice 2013-06-11 22:51:45 +00:00
Nathan Gray
d2b9501208 Fix up column selection pref / default / forced to update session & indicate to admin that preference has been forced 2013-06-11 22:50:05 +00:00
Nathan Gray
c5a9952930 Better fix for tabs not being validated - handle it at the top level 2013-06-11 18:59:34 +00:00
Nathan Gray
6fcab842b0 Restore namespace when done running 2013-06-11 18:56:42 +00:00
Nathan Gray
446034c58f Explode colon seperated values server-side to prevent warnings when expecting arrays 2013-06-11 15:36:01 +00:00
Ralf Becker
8d07c880ad allow db-tools to edit meta information about schema, currently what is stored in integer columns, eg: "timestamp", "account", "account-commasep" or "category" 2013-06-11 14:48:25 +00:00
Nathan Gray
62a28e88fc Accept any multiple CSV, not just numeric IDs 2013-06-10 23:38:02 +00:00
Nathan Gray
b45a7d7439 Fix tabs sometimes break subsequent namespaces 2013-06-10 23:29:48 +00:00
Nathan Gray
7da0e6d27b Check to make sure search sub-widget is created before trying to use it 2013-06-10 22:07:31 +00:00
Nathan Gray
92aa694f97 Fix customfield sub-type restriction blocking all customfields 2013-06-10 20:15:11 +00:00
Nathan Gray
e5b91c72f2 Fix nm_compare_field() to work with et2 2013-06-10 19:26:04 +00:00
Nathan Gray
de7d633bd7 Make account quick search add to selection instead of replacing it 2013-06-10 16:53:41 +00:00
Nathan Gray
c8bbf8b582 Add tooltip explination to auto-refresh selectbox 2013-06-10 14:33:09 +00:00
Nathan Gray
6852d0807d Improve UI of multi-row selectbox
- Only check button, no x (check toggles all/none), aligned with checkboxes
- Header with buttons hides when not hovering over checkbox, saving space
- Account select now has quick-select in header
2013-06-05 22:45:19 +00:00
Nathan Gray
d25d2d1b98 Fix link-entry widgets with only_app set losing value 2013-06-05 17:11:49 +00:00
Nathan Gray
a10914b20e Fix link-entry custom fields showing application selectbox 2013-06-05 17:10:57 +00:00
Nathan Gray
654054826f Implement home-accounts and select-account custom fields sub-placeholder expansions in the correct place, with the rest of them 2013-06-05 17:03:27 +00:00
Ralf Becker
53006a471c if we have onclick or tooltip, add it to an extra div around single element of a box 2013-06-05 13:13:09 +00:00
Nathan Gray
cf0f1c9cd2 Implement no_files attribute 2013-06-04 23:05:31 +00:00
Nathan Gray
b79460e7a0 Check for value before trying to use it 2013-06-03 23:17:01 +00:00
Nathan Gray
4d13f3170f Can't forget to reset the ID (template name), or it might not be able to load the template 2013-06-03 23:05:02 +00:00
Nathan Gray
f5ab004499 Fix occasionally missing selectbox value 2013-06-03 22:33:50 +00:00
Nathan Gray
1eaa51a2ca Avoid conflict with existing etemplates using message class on a grid cell 2013-06-03 18:08:55 +00:00
Nathan Gray
d5b289e894 Add a global ajax callback so the et2 widget can stay in sync with the dhtmlxtree 2013-06-03 16:32:45 +00:00
Ralf Becker
bd1d0f7c18 fixed not working quoting of multiple values specified as array, can not use array walk, as 2. parameter is the key not passed data 2013-05-31 08:29:34 +00:00
Nathan Gray
e2d6d9a65d Change some indenting 2013-05-29 19:12:14 +00:00
Nathan Gray
aeeb3e9469 Silence one warning by providing an attribute definition 2013-05-29 19:08:00 +00:00
Nathan Gray
59471e7e18 Queue property updates 2013-05-29 19:06:23 +00:00
Nathan Gray
0285ea4b28 Avoid errors removing top-level widgets, check for parent property first 2013-05-29 18:57:48 +00:00
Nathan Gray
e948a270f6 Fix bug losing app when passing {app:... id:...} to link entry 2013-05-29 15:26:22 +00:00
Nathan Gray
d8fcb574a6 Implement csv_fields = false to disable export button 2013-05-28 18:16:22 +00:00
Nathan Gray
9248942e9f idots theme needs to use window, since the parent might not be full height either 2013-05-28 17:11:35 +00:00
Nathan Gray
25a6b2bda2 Update internal options 2013-05-28 15:43:35 +00:00
Nathan Gray
681be3af08 I guess template needs to stick around, even though it's freed 2013-05-27 23:34:14 +00:00
Nathan Gray
78b1fffc81 Fix spelling, avoid DOM error if you try to remove a node that wasn't added 2013-05-27 23:24:22 +00:00
Nathan Gray
7c7e100842 Properly remove template so it's not still a child 2013-05-27 23:22:31 +00:00
Nathan Gray
7f669bc5f0 Save a jQuery call by just passing the row to remove 2013-05-27 23:21:13 +00:00
Nathan Gray
68b4d0e975 Don't try to fill the window, just the parent 2013-05-27 23:12:40 +00:00
Nathan Gray
f08af9d467 Fix splitter by setting no overflow 2013-05-27 16:58:24 +00:00
Nathan Gray
89fe4531e2 Make sure actions get set when a leaf is refreshed 2013-05-27 15:51:18 +00:00
Ralf Becker
cd7b9b0910 return (protected) array with validation errors instead of just the count 2013-05-25 17:18:43 +00:00
Ralf Becker
50ed435eb7 * Calendar/InfoLog/Timesheet/Tracker/ProjectManager: edit focuses now automatic on title input 2013-05-23 09:01:33 +00:00
Nathan Gray
e8a21565ab First run at a new home app. Just structure so far, more to come. 2013-05-22 20:13:12 +00:00
Nathan Gray
44f4e1ba3b Silence permanent debug 2013-05-22 19:30:31 +00:00
Nathan Gray
753ba3b006 Remove debug 2013-05-22 19:29:42 +00:00
Nathan Gray
092493a065 Look for content / modifications inside the current name space as well, if the widget can create its own namespace 2013-05-22 18:13:37 +00:00
Nathan Gray
100c706674 Add an additional condition to check in case the template file is not recognized as XML, and try to parse it 2013-05-22 18:11:41 +00:00
Nathan Gray
f451b65557 Use refresh method for more intelligent updating 2013-05-22 18:10:26 +00:00
Nathan Gray
173d2ad374 Fixes to actions, to better support changing after initial creation 2013-05-21 20:24:40 +00:00
Nathan Gray
f53a90ccdf Update in-code documentation to match code 2013-05-21 20:23:35 +00:00
Nathan Gray
08ac429774 Sort browser's widget list, so you can find widget you're looking for 2013-05-21 20:22:51 +00:00
Klaus Leithoff
6e1e86123f add basic refreshItem function; TODO: need to implement the refreshing of the actions 2013-05-21 08:33:16 +00:00
Klaus Leithoff
c6164973ae fix bug regarding the missing of all tree actions after leaf deletion 2013-05-17 13:30:43 +00:00
Ralf Becker
c496516f19 re-added ability to use $sel_options["something[else]"] removed in last commit "compatibility with eT2" 2013-05-15 13:22:53 +00:00
Klaus Leithoff
4c4a05e426 control resizing for IE10 under Windows8 2013-05-14 13:22:30 +00:00
Klaus Leithoff
090f8b134e delete a leaf of the tree 2013-05-13 14:40:44 +00:00
Ralf Becker
85a198d9e6 fixed id check, causig it not to use options given for id=0 2013-05-13 11:59:09 +00:00
Ralf Becker
8cebfe3339 some more docu for tree-widget and allow to use autoloading-url for initialisation too 2013-05-12 13:09:20 +00:00
Ralf Becker
8f52e2ca3c fixed fatal error in soetemplate called by editor, if etemplate is switched to etemplate_new 2013-05-11 09:25:32 +00:00
Nathan Gray
e9a5f7e09c Add values for tabs, and make sure dynamic tab values are passed 2013-05-10 20:39:12 +00:00
Ralf Becker
489978d590 use either tab definition from xml or tabs defined via setElementAttribute($id, tabs, array $tabs), also allow that for old eTemplate 2013-05-09 09:28:27 +00:00
Nathan Gray
73f1cd921b Use new dialog to confirm favorite deletion 2013-05-09 04:05:03 +00:00
Nathan Gray
eaa100921c Fix preferred favorite not being saved 2013-05-06 21:34:47 +00:00
Nathan Gray
c5c4d92d09 Make sure activeFilter gets set during init 2013-05-06 20:58:59 +00:00
Nathan Gray
43d0128fb6 Update action/leaf id when renaming 2013-05-06 20:03:14 +00:00
Nathan Gray
57d6132a37 Actually use template attribute when provided 2013-05-06 17:36:37 +00:00
Nathan Gray
8a2259ae99 Enhance tab widget's 'tabs' attribute to include hidden, and id to access content array 2013-05-06 17:17:52 +00:00
Nathan Gray
d3f498f0f4 Avoid an error if type is missing 2013-05-06 17:12:45 +00:00
Ralf Becker
1b3c934823 a few compatbility methods and hacks to get old etemplates to behaves a bit more like eT2 2013-05-03 11:50:40 +00:00
Ralf Becker
005d5ed090 value of description set via id need to get translated, if !no_lang is set, value set via value attribute already get translated via transformAttributes and translate: "!no_lang" of value 2013-05-03 11:46:26 +00:00
Nathan Gray
42fd3fe37b Implement optgroups for select widget 2013-04-29 18:36:48 +00:00
Klaus Leithoff
8913df2366 remove console logging on focused 2013-04-29 14:59:55 +00:00
Klaus Leithoff
efd4d85143 add rename of an item. caveat, does not rename dependent leafs yet 2013-04-29 14:58:29 +00:00
Ralf Becker
5eede4a8ef allow to use <widget type="${row}[type]"/> in xet files 2013-04-28 12:43:18 +00:00
Ralf Becker
947511779a _atts["select_options"] is not null but {} 2013-04-28 12:42:13 +00:00
Ralf Becker
26c66d12d7 create static method etemplate_widget_menupopup::fix_encoded_options(), so apps can call that for cases it is not called automatically (eg. autorepeated rows) 2013-04-28 12:39:58 +00:00
Nathan Gray
4759d19d25 Fix nextmatch hierarchy display 2013-04-24 19:53:51 +00:00
Ralf Becker
78449edd4c some css for new dialog: left aligning buttons as everywhere in EGroupware, auto-size dialog, static show_prompt method to display a prompt, fixed not working translation of standard buttons 2013-04-23 16:51:00 +00:00
Nathan Gray
6f124f4b10 When nm loads data, make sure selection is still shown 2013-04-23 15:34:47 +00:00
Nathan Gray
516872e322 Fix custom buttons with no template not working 2013-04-22 22:56:55 +00:00
Nathan Gray
5e84ddd935 Change admin column selection to allow setting / clearing / forcing column selection 2013-04-22 22:32:40 +00:00
Nathan Gray
fc727570dd Implement set_value() on file widget - you can't really set file upload values programmatically to anything that makes sense, but it can be cleared 2013-04-22 16:52:03 +00:00
Nathan Gray
bd6c23298b Change ODS file line break tag from <text:line-break> to </text:p><text:p> so it works in LibreOffice 2013-04-22 15:25:19 +00:00
Ralf Becker
3a14e96d1a allow to use hierarchical function names, eg. app.filemanager.upload via new et2_call function 2013-04-20 19:21:42 +00:00
Ralf Becker
28aab234a7 fixed space instead of tabs 2013-04-20 19:20:51 +00:00
Ralf Becker
f814b6077e reverting accidently commited default to et2 2013-04-20 12:21:22 +00:00
Ralf Becker
cd024eef1b add nice link overlay icon to vfsMime widget (for symlinks) 2013-04-20 12:19:27 +00:00
Ralf Becker
a14ede7587 added @memberOf to get outline 2013-04-20 09:51:52 +00:00
Nathan Gray
5555edcb98 Add dialog widget 2013-04-16 18:50:43 +00:00
Nathan Gray
b66a74ff03 Make currently browsed widget available for console playing as window.wb_widget 2013-04-16 18:48:06 +00:00
Nathan Gray
0ae58e39de Load jquery-ui css before ours, so we can override it 2013-04-16 18:46:23 +00:00
Nathan Gray
4239b83bd0 Add not implemented js function type. It understands app.appname.function style arguments 2013-04-16 18:44:43 +00:00
Nathan Gray
a4395a8000 If a specific template name is not provided, use the last template in the file 2013-04-16 18:42:53 +00:00
Nathan Gray
d58a3128e7 Some checking to make sure variables are there, and avoid errors 2013-04-16 18:40:38 +00:00
Ralf Becker
e64c4fbd04 add some JSDoc so Eclipse shows an outline: @memberOf and @augments (not yet understood by Eclipse), also fixed many warnings (mostly missing semicolons) 2013-04-13 19:00:13 +00:00
Ralf Becker
5a4850b2ed fixed not correctly displayed file type: need to compare with bitmask after and-ing it 2013-04-13 09:46:00 +00:00
Ralf Becker
34dd94dc76 fixed set_(ro_)image to set the according option and update current image, new method set_readonly updating readonly attribute and current image 2013-04-12 17:19:18 +00:00
Nathan Gray
027bcc53d1 Enable drop on nextmatch rows 2013-04-12 17:05:35 +00:00
Nathan Gray
4c692102a2 Common styling for et2 containers, regardless of ID 2013-04-12 16:29:40 +00:00
Nathan Gray
c85582180a Avoid an error in the destruction by checking for widget 2013-04-12 16:28:52 +00:00
Nathan Gray
41d34f84a2 Set a class for common CSS 2013-04-12 16:28:11 +00:00
Nathan Gray
b994f33825 Nextmatch onselect attribute understands app.appname.function directly, and passes nextmatch reference & list of ids 2013-04-12 10:33:29 +00:00
Ralf Becker
abee7bc2a1 allow to permanently use etemplate_new for ported applications no longer supporting old etemplate, while still having etemplate default to etemplate_old 2013-04-12 09:50:27 +00:00
Ralf Becker
fa3f1c5055 ro version of vfs-name to behave like ro textbox (span instead of r/o input), also commented socket perm as it is set for dirs too (and we have no sockets in vfs) 2013-04-12 09:39:37 +00:00
Ralf Becker
4a26ad18c0 fixed whitespace (8 space instead tab) 2013-04-12 09:38:12 +00:00
Nathan Gray
7f80c74b59 Add onselect attribute for nextmatch 2013-04-12 09:28:42 +00:00
Nathan Gray
8192f13b3b Fix typos preventing some drops 2013-04-11 12:22:34 +00:00
Nathan Gray
8a6bba9ffe Give the et2 container an ID matching the loaded template name 2013-04-11 11:25:28 +00:00
Ralf Becker
0f72fba1b3 display #msg or .message like before in red and italics 2013-04-11 10:34:13 +00:00
Nathan Gray
9afe55bfae Have to read repository, not just create the object, or I get inconsistencies 2013-04-10 16:47:02 +00:00
Nathan Gray
79c09ec5cd Use LABjs to make sure everything is loaded 2013-04-10 16:03:58 +00:00
Nathan Gray
d996a3445f Fix et2_ready() when app called via ajax 2013-04-10 16:03:31 +00:00
Ralf Becker
ee65e7ae28 also need to re-assemble image options, as I cant edit/remove them in editor 2013-04-10 15:46:38 +00:00
Nathan Gray
64c03e772d CSS fixes - sidebox favorite spacing & nextmatch border 2013-04-10 15:25:40 +00:00
Nathan Gray
bb44a6ce26 Fix dynheight case when there is no space between dynheight & items below 2013-04-10 15:17:18 +00:00
Nathan Gray
c0e0982b0e Implement hide_header,header_left & header_right attributes 2013-04-10 14:09:55 +00:00
Ralf Becker
3fa9169f83 only have nextmatch-header "box" around the filters 2013-04-10 14:05:01 +00:00
Ralf Becker
28428c3aa0 make header_left/right a legacy option for nextmatch widget, allowing to specify it in template and therefore display them in editor 2013-04-10 13:26:04 +00:00
Nathan Gray
b171acf19a Don't try for default, causes error if add is not valid 2013-04-10 13:15:49 +00:00
Klaus Leithoff
0de87f5711 introduce getLabel function on tree-widget 2013-04-10 12:32:07 +00:00
Nathan Gray
0516d2cc2a If value is available in the constructor, set it there 2013-04-10 12:10:04 +00:00
Ralf Becker
40acef68b6 show disabled templates in editor 2013-04-10 11:47:11 +00:00
Nathan Gray
96d27aefc4 Fix - should always be top level of content 2013-04-10 11:05:20 +00:00
Nathan Gray
fdada6c3c0 Fix typo in missing JS object warning 2013-04-10 10:10:14 +00:00
Nathan Gray
4de7d2f432 Add a warning if application js object was not loaded 2013-04-10 10:05:17 +00:00
Nathan Gray
48d6204f29 Skip blank legacy options sooner 2013-04-10 09:39:36 +00:00
Nathan Gray
ec1ad6f09e Change splitter preference saving to save on mouseup 2013-04-10 09:25:05 +00:00
Nathan Gray
4c54745cbb Allow favorites from multiple apps to coexist 2013-04-10 08:00:31 +00:00
Klaus Leithoff
09f00a31a5 fix ckeditor area 2013-04-09 11:50:14 +00:00
Nathan Gray
978a90852c Add a base object for application javascript code to contain it, and solve initialization timing issues 2013-04-09 08:45:59 +00:00
Nathan Gray
cd0356219c Add some missing attribute attributes 2013-04-09 07:22:35 +00:00
Nathan Gray
af43412921 Fix editor to still work with existing basic widgets 2013-04-08 14:31:43 +00:00
Nathan Gray
715d45a2c1 Add very basic support for et2 widgets into editor, to at least not destroy templates 2013-04-08 14:06:01 +00:00
Nathan Gray
fd41f7e4bc In the rare case where the app specifies both select options in both the sel_options and the nextmatch options-name, try to avoid overwriting 2013-04-08 13:18:27 +00:00
Ralf Becker
ed76aa43e2 removed old code used to run etemplate without javascript, not working anymore and causing it now to fail after Nathans changes 2013-04-03 08:37:28 +00:00
Ralf Becker
81752aa4d5 using ege.LAB.wait for popup_resize() 2013-04-03 07:52:23 +00:00
Nathan Gray
b9a43091dc Fix problem with false/0 values failing validation 2013-04-02 22:57:09 +00:00
Nathan Gray
e8c9a1ecde LABjs wait to initialize actions until all files are there 2013-04-02 20:31:22 +00:00
Nathan Gray
ef2a5d377d Use LABjs throughout framework to load javascript - prevents a lot of undefined / timing errors 2013-04-01 19:14:52 +00:00
Nathan Gray
bdb148d167 Make sure widgetContainer is initialized before loading, prevents timing problems 2013-04-01 18:35:49 +00:00
Nathan Gray
3623ee6e72 Don't try to submit if the action is not a context menu (eg: drag, drop) 2013-04-01 18:19:59 +00:00
Nathan Gray
1f754d485b Tie egw_action system into etemplate widgets - allows actions on widgets 2013-03-26 21:19:17 +00:00
Nathan Gray
c55e636f43 Catch error from missing ckeditor stuff so it doesn't break everything else 2013-03-26 15:54:18 +00:00
Nathan Gray
61ef8de61e Missed call to _super.destroy() 2013-03-26 15:47:31 +00:00
Nathan Gray
fbd81e6aa9 Fix 'undefined' in read only selectboxes when value was not in list of options 2013-03-25 23:00:25 +00:00
Nathan Gray
fc0b2d1e8a Look for cat_id options in parent(global) sel_options manager too 2013-03-25 22:59:48 +00:00
Nathan Gray
0c017a4b35 Don't error if ckeditor adapter is missing, just fall back to text 2013-03-25 22:22:53 +00:00
Nathan Gray
d361206090 Always send app:id or just id from nextmatch_entryheader, instead of seperated properties 2013-03-25 22:04:10 +00:00
Nathan Gray
e6cfe7a505 Accept modifications where the value evaluates to false 2013-03-25 21:46:18 +00:00
Nathan Gray
3c651a38e0 Sort out customfilter options conflict 2013-03-25 21:43:35 +00:00
Nathan Gray
d394cca06f Avoid some init / destroy errors in color picker popup 2013-03-25 19:39:02 +00:00
Nathan Gray
c5d2b8dc23 Fix category check matching numbers inside other class names 2013-03-25 17:17:11 +00:00
Nathan Gray
a46fff9bbd Add implementation for xajax_eT_wrapper() to avoid having to replace them all right now 2013-03-25 16:56:10 +00:00
Ralf Becker
27a40efc84 async notifications can NOT use a single static variable as cache, as it will be used for all the different entries notified
--> using a class variable (different per app) and indexing cache be id or entry
2013-03-22 14:34:31 +00:00
Nathan Gray
f4fe5cf8b6 Add ability to specify which actions are available for the no results placeholder 2013-03-20 23:09:04 +00:00
Nathan Gray
873c3301d4 Get selected IDs if action function did not pass them 2013-03-20 22:20:05 +00:00
Nathan Gray
3332eec106 Add a function getSelection() so application code can more easily find the IDs 2013-03-20 22:10:51 +00:00
Nathan Gray
555582eb44 Don't try to format null dates, just pass null back to app 2013-03-20 21:19:56 +00:00
Nathan Gray
8c20d825cb Fix private custom field filtering 2013-03-20 20:47:54 +00:00
Nathan Gray
a140cd1f25 Make htmlarea more fault tolerant so it doesn't block the rest of the page if something happens 2013-03-20 20:45:43 +00:00
Nathan Gray
7a58f4c141 Fix up display issues in link widget (annoying link delete, hiding link button) 2013-03-20 18:26:18 +00:00
Nathan Gray
f7f9e13916 Fix missing custom fields 2013-03-20 16:41:46 +00:00
Nathan Gray
cf32147cc2 Avoid an error if we try to csv_split() null 2013-03-20 16:18:53 +00:00
Nathan Gray
fee50cec99 Fix nm refresh() not working if the ID was a number 2013-03-20 16:17:23 +00:00
Nathan Gray
3142b9fd1f Fix templates creating unwanted namespaces 2013-03-20 16:16:12 +00:00
Ralf Becker
7cc358b526 fixed not working link in notifications / subscribtions, if path contains eg. a space
caused by unnecessary appended path=... url parameter breaking WebDAV, added new config to NOT add it, as not setting id causes signature to fail
2013-03-20 09:55:30 +00:00
Nathan Gray
9ae89a0844 Fix missing data in named sub-templates 2013-03-19 22:53:51 +00:00
Nathan Gray
81fbfc23cc Add general placeholder {{link}} is a link to current record 2013-03-19 20:56:58 +00:00
Nathan Gray
e7b7b78e92 Re-init egw_time so it gets the appropriate preferences for the notification 2013-03-18 23:41:10 +00:00
Nathan Gray
cbbd03f388 - Use top-level preferences to load favorites
- Empty sidebox target on unload to prevent handlers hanging around
2013-03-18 20:58:55 +00:00
Nathan Gray
0e89b309e3 Push updated preferences to client so favorites don't re-appear / disappear 2013-03-18 20:55:47 +00:00
Nathan Gray
562ffe972f Fix some destructors 2013-03-18 20:52:41 +00:00
Nathan Gray
3e09f30480 Fix multiple delete confirmations 2013-03-18 15:43:22 +00:00
Nathan Gray
a0cedae8b3 Add chosen to et2 selectbox 2013-03-15 17:47:28 +00:00
Nathan Gray
7a3b2db0a6 If widget's row / column gets disabled, let widget know too 2013-03-15 17:46:53 +00:00
Klaus Leithoff
d4d2096a39 handle/fix missed ckeditor3 calls 2013-03-15 11:50:48 +00:00
Nathan Gray
4efa3e8be5 If there's no ID, don't even ask for the title 2013-03-13 19:32:25 +00:00
Nathan Gray
3c69b26525 Add empty row placeholder 2013-03-13 18:42:03 +00:00
Nathan Gray
656c3f3eb5 Fix typo breaking link activation 2013-03-13 18:36:01 +00:00
Nathan Gray
b57d8f3555 Tighen up favorite spacing in sidebox 2013-03-13 15:24:18 +00:00
Nathan Gray
86321fa998 Change blank filter label to 'No filters' 2013-03-13 15:23:21 +00:00
Nathan Gray
72fcd52f2d Fix favorite button alignment 2013-03-12 23:15:32 +00:00
Nathan Gray
9b74347048 Remove debug 2013-03-12 23:03:21 +00:00
Nathan Gray
dee286e2e0 Move favorites js into its own widget, add support for favorites in sidebox when there is no nextmatch on the page 2013-03-12 22:57:42 +00:00
Nathan Gray
5c0a8fa721 More styling for favorites 2013-03-12 22:47:02 +00:00
Nathan Gray
cb15d5ca4b CSS for firefox 2013-03-06 19:34:01 +00:00
Nathan Gray
ddcf53446a Style to make favorites fit in better with sidebox, and not jump around 2013-03-06 17:56:09 +00:00
Nathan Gray
e63ea5a1e4 Favorites progress - safe names, delete confirmation, automagic sidebox favorites 2013-03-06 00:02:48 +00:00
Nathan Gray
8703b9a8e8 - Store group inside favorite preference so we know global / group favorites from user favorites
- Implement ability to delete favorites from menu
2013-03-04 23:33:58 +00:00
Nathan Gray
af4607222d Return correct true or false based on if the value was added or deleted successfully, was always true 2013-03-04 23:31:30 +00:00
Nathan Gray
fa020a5a37 Fix selectbox set_value() 'unchanged' check to actually check the value 2013-03-04 23:25:36 +00:00
Nathan Gray
ad6cb824ec Add ACL check to read-only category selection and nextmatch row color 2013-03-04 16:40:25 +00:00
Klaus Leithoff
6d05cf328c * Addressbook: switch off client side email address validation as browser rule set seems to be more restrictive than rfc822 rules suggests; implement better rfc822 compliant email address validation 2013-02-28 15:21:43 +00:00
Nathan Gray
9a7f5102cf Add Favorite filters to nextmatch - W.I.P 2013-02-27 18:13:54 +00:00
Nathan Gray
4300c97cc3 Don't make widget names wrap 2013-02-27 18:01:13 +00:00
Nathan Gray
987af6b473 Pass along internal lastModification time, and use it 2013-02-27 18:00:15 +00:00
Nathan Gray
7d07d51265 Avoid warning if selectbox has no options 2013-02-27 17:57:23 +00:00
Nathan Gray
1202ccb0d1 Fix some bugs in preference storage & refresh 2013-02-26 00:52:05 +00:00
Nathan Gray
4b591de8f9 Fix column default preferences, include auto refresh in 'As default' 2013-02-25 21:39:53 +00:00
Nathan Gray
643b120195 - Make nextmatch refresh more intelligently
- Call nextmatch refresh() from etemplate2.refresh()
- Add autorefresh preference (in column selection)
2013-02-25 20:35:17 +00:00
Nathan Gray
e38ab3715e Fix broken default values in widget browser 2013-02-25 18:52:45 +00:00
Nathan Gray
a0c0ddbfbe Dropdown / split button 2013-02-25 18:51:57 +00:00
Nathan Gray
1236f38a5b Fix extra <br />s in HTML emails, cache notification body instead of re-doing for every notified user 2013-02-22 18:35:33 +00:00
Nathan Gray
ff078c92e1 Get horizontal splitter and nextmatch playing nice together 2013-02-22 16:02:47 +00:00
Nathan Gray
e10ace64ba Take outer container height offset into account 2013-02-22 16:01:28 +00:00
Nathan Gray
03c9c0804f Split panel widget. Mostly working, needs some more special case for working with nm - they both want full page 2013-02-22 00:25:41 +00:00
Nathan Gray
c46777826f Add iframe widget 2013-02-20 20:53:15 +00:00
Ralf Becker
bb1a8adce5 added autoloading attribute to tree 2013-02-20 13:06:26 +00:00
Ralf Becker
5c6f6471f3 implemented "autoloading" attribute for tree via JSON callback with GET parameter "selected" containing node-id 2013-02-20 12:03:21 +00:00
Klaus Leithoff
41a2653679 sets the label of a node of a tree, within by the treewidget 2013-02-19 12:58:32 +00:00
Klaus Leithoff
8d96aab8fd get all open nodes of a tree, represented by the treewidget 2013-02-19 10:42:36 +00:00
Ralf Becker
2ea875dc56 add parent_node attribute for tree widget 2013-02-18 15:16:14 +00:00
Ralf Becker
fc6c2d8264 date-time_today widget for old eTemplate, to be able to use it in editor 2013-02-18 14:55:24 +00:00
Ralf Becker
0142da0b5c fixed typo 2013-02-18 14:46:38 +00:00
Ralf Becker
4ab0aaab9f function signature for new nextmatch refresh method, already working clientside by calling applyFilters, but should be smarter, serverside will require row-data plugin on clientside 2013-02-18 09:47:39 +00:00
Nathan Gray
099252e327 Enable drop actions on tree widget 2013-02-15 15:52:49 +00:00
Nathan Gray
eb3665aa95 Add in dragdrop actions 2013-02-14 16:48:12 +00:00
Nathan Gray
76644166e8 Only warn about attribute type mismatch if there is a value 2013-02-14 15:56:19 +00:00
Nathan Gray
298309074e Implement updating just the affected nm row with egw_refresh() 2013-02-14 11:25:24 +00:00
Ralf Becker
bfc0c48210 use egw.includeJS instead of egw.ready for ajax-exec, eg. used in mail 2013-02-13 16:30:30 +00:00
Klaus Leithoff
6a0305b849 open single node on select pf a single node as well, as we do with multiple nodes 2013-02-13 15:33:00 +00:00
Klaus Leithoff
5337cc83d2 some wrapper functions to retrieve the label of a selected node, and to retrieve the selected node itself 2013-02-13 12:50:18 +00:00
Nathan Gray
ce4805ead6 Define parent_node property that allows widgets to be displayed in a specific DOM node, other than where it would go according to the template 2013-02-13 11:21:24 +00:00
Nathan Gray
6949040f86 Avoid errors if _value is null / undefined 2013-02-13 09:49:43 +00:00
Nathan Gray
54b1fb9ce4 Fix set_Value() -> set_value() 2013-02-13 09:23:33 +00:00
Nathan Gray
98fb6cf00e Add reference to documentation so we can find it easier next time 2013-02-13 09:05:16 +00:00
Nathan Gray
28a4c7c3c1 Implement set_Value() for labels 2013-02-13 09:04:17 +00:00
Nathan Gray
1f86de58c8 Get message update working 2013-02-13 09:03:28 +00:00
Ralf Becker
87373194f0 purging know uids send by client, if not contained in current request 2013-02-12 16:47:16 +00:00
Nathan Gray
f2fc558e19 - Add static methods to get into etemplate2 widget context from outside. Call etemplate2.getByApplication(app) or etemplate2.getByTemplate(name) for a list of etemplate2 objects
- Add register_app_refresh() function to allow applications to specify a more intelligent way to refresh them
- Change egw_refresh() to call registered refresh function, or if etemplate2 is available try that over reloading the whole page
2013-02-12 15:46:14 +00:00
Nathan Gray
9181d6c526 Only do fancy parsing for category tree 2013-02-11 15:16:23 +00:00
Nathan Gray
2588cf2642 Fix missing destroy() in color picker widget 2013-02-11 09:55:41 +00:00
Nathan Gray
834e57f9a7 Change attribute name to match what we're used to 2013-02-11 08:13:29 +00:00
Nathan Gray
7855944a3a Add quick viewer for et2 widgets 2013-02-11 08:10:25 +00:00
Nathan Gray
98ad9dcd15 Add legacy option data format to silence a warning, though not needed client side 2013-02-11 08:08:28 +00:00
Ralf Becker
4f247b26f8 merged translations and other uncommited ones 2013-02-08 19:03:20 +00:00
Ralf Becker
c764604231 explicit whitelist for certain attributes and widget-types used to supress rows and cols everywhere but textbox and suppress orient if empty 2013-02-08 16:48:55 +00:00
Ralf Becker
abba55b569 German translations from Stefan, plus some Suomi translations 2013-02-08 16:22:47 +00:00
Nathan Gray
f4d51423f8 Implement validate, fix missing options after submit 2013-02-08 16:10:26 +00:00
Nathan Gray
b802aa64a8 Override et2_container.destroy() to not try to remove itself from the parent, it does not have a parent 2013-02-08 13:25:56 +00:00
Ralf Becker
763279562c fixed event handling in tree, added tree specific onSelect and onCheck events, implemented !multiple mode and fixed dhtmlxtree to not trigger onSelect if selection is change via set_value (according to their documentation) 2013-02-08 13:23:58 +00:00
Nathan Gray
13816aae70 Better check on global_data type before using it - null too 2013-02-08 12:26:41 +00:00
Nathan Gray
834832b87e Better check on global_data type before using it 2013-02-08 12:22:19 +00:00
Nathan Gray
b42e913478 Add a new date sub-widget, date-time_today that displays the time if value is today, the date if the value is not today 2013-02-08 11:10:45 +00:00
Nathan Gray
a48c990607 Nextmatch-customfilter doesn't need its own file, move it in with the others 2013-02-08 10:50:55 +00:00
Nathan Gray
79a6e9f2d3 Don't set category title if category has no description 2013-02-08 10:50:19 +00:00
Nathan Gray
aa07a243c1 Fix widget not allowed / DOM error in nextmatch-accountfilter 2013-02-08 10:38:09 +00:00
Ralf Becker
194dd78deb silenced warning: can not use scalar value as array in line 672 2013-02-08 08:54:20 +00:00
Nathan Gray
2809b52d4d Downgrade no data error to a log, enhance message to include most likely cause 2013-02-08 08:32:17 +00:00
Nathan Gray
a178fd1cec Stop caring about multiple for readonly, display all values provided 2013-02-07 16:05:32 +00:00
Nathan Gray
3fdce9467a Finish splitting only_app out of application list 2013-02-07 16:01:41 +00:00
Nathan Gray
ca3536bf25 If no column display settings from app or preferences, display all columns 2013-02-07 15:46:36 +00:00
Nathan Gray
e094b35394 Get nextmatch_customfilter working 2013-02-07 14:36:19 +00:00
Ralf Becker
8b28ba7ab6 added serverside parameters for synchronisation of row-data and hierarchical display of the grid 2013-02-07 12:43:57 +00:00
Nathan Gray
ef826ee2b9 Change all merges to use common get_all_links() function 2013-02-07 09:36:07 +00:00
Nathan Gray
03aeacf69d Add get_all_links() to get all link placeholders from content 2013-02-07 09:15:59 +00:00
Nathan Gray
eac76facda Check for content options first 2013-02-06 17:08:12 +00:00
Ralf Becker
99eea070bb allow to resize all columns (no need to leave out the last one) and use pageX instead of clientX to take into account an optional scrollbar, if grid is to wide 2013-02-06 16:32:18 +00:00
Nathan Gray
4713387be1 Add support for app.class.method links in description 2013-02-06 15:05:31 +00:00
Nathan Gray
868614fd23 Fix validation of durations 2013-02-06 14:36:24 +00:00
Nathan Gray
3d50a2bc4b Need to have a name before we do namespace on the content 2013-02-06 14:33:01 +00:00
Nathan Gray
ebd061ea96 Fix for a rare case when selectbox with row in ID and options with label+title didn't work 2013-02-06 13:49:40 +00:00
Nathan Gray
616e94a7b4 Add the ability to specify the client-side data cache prefix, to avoid collisions in applications where there can be more than one type of data 2013-02-06 10:49:46 +00:00
Nathan Gray
de2c9756f1 Avoid an additional javascript error in case of 404 2013-02-06 10:47:31 +00:00
Nathan Gray
ecdf60bc29 Not yet... 2013-02-06 08:16:12 +00:00
Nathan Gray
6295f1a833 Link entry:
- Split application parameter into two, one for just one app, one for an app list
- Also return the contents of the search box in value (if not limited to just one app)
2013-02-06 08:06:11 +00:00
Nathan Gray
577c7acb6b Legacy options:
- Allow one content variable to contain multiple (all) legacy options
- If there are more options provided than legacy options expected, put the rest into the last legacy option
2013-02-06 08:03:13 +00:00
Nathan Gray
3da0cb09ac Implement legacy way of using a negative size to set a textbox readonly, but still getting an input widget instead of just text 2013-02-05 14:42:23 +00:00
Nathan Gray
0828e3db75 Some documentation 2013-02-05 14:40:37 +00:00
Nathan Gray
534ea00418 Make et2 load application js, if present 2013-02-05 14:38:16 +00:00
Ralf Becker
50c8dd1c07 handle multiple comma-separated category-ids in class attribute of row and do not match numbers inside class-names 2013-02-05 14:15:46 +00:00
Nathan Gray
8fafb1414a Do not change it just yet... 2013-02-05 12:55:39 +00:00
Nathan Gray
bbfcb19ab8 Fix so namespaces work even without content data 2013-02-05 12:55:01 +00:00
Ralf Becker
a204c7fb4b do NOT generate links for phone-numbers, if no phone integration configured 2013-02-05 12:50:20 +00:00
Ralf Becker
48d4d04b42 report template name, if template can not be displayed, because it was not found
removed old debug code making not much sense anymore
2013-02-05 12:36:37 +00:00
Ralf Becker
2940e57b11 no need to generate a link, if there is no content in it, instead of displaying "-missing-" 2013-02-05 12:32:57 +00:00
Ralf Becker
9330414ebc do NOT generate links for phone-numbers, if no phone integration configured 2013-02-05 12:31:57 +00:00
Ralf Becker
daac136f47 as et2 adds options as text, we can NOT use html entities, but direct utf-8 chars, which unfortunately php does not support as string literals, using html_entity_decode therefor 2013-02-05 11:24:02 +00:00
Nathan Gray
dc5fabfcb4 Keep type of value as Object, fixes missing nextmatch data 2013-02-05 09:53:06 +00:00
Nathan Gray
77ff3ca385 Do not change it just yet... 2013-02-05 09:36:09 +00:00
Nathan Gray
417b22e071 Make sure there's an action_var, use 'action' if not set 2013-02-05 09:34:54 +00:00
Ralf Becker
a9a5290001 fix for not working egw_open action 2013-02-05 09:14:14 +00:00
Ralf Becker
1312a397f1 only call replace on _value of type string, otherwise (eg. null) gives exception 2013-02-05 08:55:09 +00:00
Nathan Gray
8a1386ecdb Fix grid auto-repeat. It's always the last row that repeats, if there's data 2013-02-05 08:31:08 +00:00
Ralf Becker
83b7a980b7 ignoring non-row data set by get_rows method, when querying state on uids known to client: fixes illegal string offset in line 285 2013-02-04 15:42:08 +00:00
Nathan Gray
a14d6d9bb4 Update email regex to allow & and other weird stuff 2013-02-04 13:35:20 +00:00
Nathan Gray
014f99c02b Fix email widget always failing 2013-02-04 13:31:35 +00:00
Nathan Gray
d744f3e5c5 If url widget is not required, accept a blank 2013-02-04 13:22:37 +00:00
Ralf Becker
e2d3c2ee29 fixed default parameters and type of etemplate::exec to match documentation 2013-02-04 12:56:08 +00:00
Nathan Gray
ec2d395a68 Initialize to empty array if not set 2013-02-04 12:47:46 +00:00
Nathan Gray
129601366e Some extra debug for et2 2013-02-04 12:35:30 +00:00
Klaus Leithoff
435f726bf9 select priority should map 0 to None, not empty 2013-01-31 14:13:45 +00:00
Nathan Gray
b272fb2cf5 Implement custom notification messages (with placeholders) generally so all apps can use them 2013-01-30 23:10:18 +00:00
Klaus Leithoff
d04f027709 missed commit for r41402 (adapted message on merging mail templates with single mail) 2013-01-25 14:03:14 +00:00
Klaus Leithoff
13f71397ca adapt message on merging mail templates with a single address 2013-01-24 13:30:53 +00:00
Ralf Becker
be6845b4d0 * All apps: merged missing translations from other apps or branches 2013-01-18 13:48:34 +00:00
Nathan Gray
a23f04ca2f Log an error if trying to merge and app has not implemented bo_tracking->id_field, and skip the merge 2013-01-14 18:25:07 +00:00
Nathan Gray
ca7e4b66b9 Fix missing grid name when importing template, fix missing label options 2013-01-10 23:05:22 +00:00
Nathan Gray
841d3b67bd If chosen is loaded, trigger update of contents. 2012-12-31 20:22:59 +00:00
Nathan Gray
d496ba3cd5 Pass along enhancement flag 2012-12-31 20:22:05 +00:00
Ralf Becker
328bb04491 ms office 2010 powerpoint mime icon 2012-12-22 05:56:27 +00:00
Nathan Gray
a4a35b77c9 onClick is valid for a box 2012-12-19 21:44:25 +00:00
Nathan Gray
a0738bd2f4 Add a global signature to change messages. Set it in notifications site configuration. 2012-12-17 23:18:28 +00:00
Nathan Gray
cbb88e22cb Remove other places trying to set default ckEditor toolbar mode - using common preference 2012-12-05 20:22:13 +00:00
Nathan Gray
661572206c Allow to specify app in egw::link() pseudo function 2012-12-05 18:16:42 +00:00
Ralf Becker
ac67c9ed80 log sql by setting $this->debug = true, before calling so_sql::search() 2012-11-14 14:23:00 +00:00
Nathan Gray
8b55a21206 More changes to use chosen for fancy selectboxes - apply to egw multi-select and select user too 2012-11-13 22:14:00 +00:00
Nathan Gray
bc275bef41 Remove accidentally committed debug 2012-11-12 19:32:35 +00:00
Nathan Gray
f72a582532 Use chosen plugin for to get fancy selectboxes. Selectboxes with more than 12 options get it turned on automatically 2012-11-12 19:29:23 +00:00
Ralf Becker
a709f6104f * Setup/API: translations are no longer installed in database, but loaded directly from lang-files into tree-level cache 2012-11-05 12:18:22 +00:00
Klaus Leithoff
6e374a4697 allow/support questionmark for first additional parameter after email 2012-10-31 13:47:10 +00:00
Ralf Becker
fb77a9009d * eTemplate/all apps: fixed not working display of floating point values in input fields for Chrome or Safarie (browsers supporting html5 input type="number") 2012-10-31 09:18:39 +00:00
Ralf Becker
1da2374c88 display thumbnail now for images up to 1.6M, which seem to work with our current recommended memory_limit of 128M 2012-10-30 16:48:07 +00:00
Ralf Becker
b61d5d537f download etemplate.inc.php distribution file, if webserver has no write rights to setup directory 2012-10-30 13:36:21 +00:00
Ralf Becker
78fc93df60 * Addressbook/eMail: fixed wrong characterset when merge printing into eMail 2012-10-25 16:16:41 +00:00
Klaus Leithoff
a3983bc1bc silence/handle php-strict warnings 2012-10-24 08:26:51 +00:00
Klaus Leithoff
bf65dee557 since we allow ampersand in local-part of the emailaddress, we have to handle this while preprocessing template data 2012-10-23 10:38:14 +00:00
Klaus Leithoff
9ddda61334 * Addressbook/API: allow ampersand and plus in local part of emailaddress for email validation 2012-10-23 08:57:22 +00:00
Ralf Becker
3102a26a57 work around a warning, if database password contains a non-ascii char (eg. German umlaut) 2012-10-23 08:20:54 +00:00
Nathan Gray
8c74ba7383 Use jQuery to decode all entities in caption for confirm prompt 2012-10-15 18:40:11 +00:00
Nathan Gray
fc8a139f23 Add 'None' category option to context menu for all apps using nextmatch::category_action() 2012-10-15 17:57:58 +00:00
Ralf Becker
71ec92a777 cache, concat and minify all css resources to speed up requests, javascript files planned too 2012-10-14 19:38:32 +00:00
Nathan Gray
7925e33c6f Fix bug where clicking on a hooked app twice sends you to the hooked app 2012-10-04 22:00:57 +00:00