Ralf Becker
ca1433cd5e
no longer warn about widgets without a server-side class, as it is perfectly ok
2014-01-13 15:24:48 +00:00
Nathan Gray
4eea706aa0
- Return true after window close in et2_load, avoids 'Error while parsing et2_load response'
...
- Catch trying to set a widget attribute with no set_...() function via JSON assign and warn instead of generic error
2014-01-13 15:07:03 +00:00
Nathan Gray
be0878f883
Use this.egw() to get the correct (app level) data cache, which stores appname internally.
...
Fixes permission denied popup when updating.
2014-01-13 15:04:30 +00:00
Nathan Gray
51d802ec78
Only try to unbind if there's a value. If there isn't a value (new entry), handler wasn't bound, and trying causes an error.
...
Fixes blank popup after save.
2014-01-13 15:03:15 +00:00
Hadi Nategh
dc614521b3
Make toolbar widget being able to d-n-d with user prefernces for actions
2014-01-13 10:26:20 +00:00
Nathan Gray
71f0fcdda0
Implement refresh type 'update' to _only_ update the data of a row - sorting is not considered, so make sure to use 'edit' if sorting might be affected.
2014-01-13 09:40:23 +00:00
Nathan Gray
43fe37761f
Un-bind window resize handler in destructor
2014-01-11 16:43:06 +00:00
Nathan Gray
a458019490
Avoid some missing attribute warnings by not trying to set needed on readonlys, which don't support it.
2014-01-11 16:40:45 +00:00
Nathan Gray
5f12847fb3
Fire a refresh event (from the nextmatch widget) when the nextmatch auto-refresh happens, so apps can update anything else they need to.
2014-01-11 14:14:42 +00:00
Nathan Gray
52ab3203bd
Remove r44925, not needed
2014-01-11 12:01:45 +00:00
Nathan Gray
04a845fa35
Enhance refreshItem() to optionally take the data needed for refreshing to avoid an extra call to the server
2014-01-11 11:53:23 +00:00
Nathan Gray
26b8cae767
Avoid removing all event listeners if the etemplate has no unique ID (happens for dialogs)
2014-01-11 11:42:23 +00:00
Ralf Becker
87ea75a75b
use \042 instead of \" in regular expression, as it stalls minifier
2014-01-10 16:19:05 +00:00
Nathan Gray
3b57659536
Defer binding to window resize until after loading is finished.
2014-01-10 15:54:35 +00:00
Nathan Gray
cb94adb995
Defer loading of tabs
...
First / selected tab is loaded in line with normal code execution. Not visible tabs are loaded after using window.setTimeout(). jQuery.Deferred makes sure the template doesn't fire the load event until they're all done.
2014-01-10 14:32:03 +00:00
Nathan Gray
9b4cd3e306
Some more profiling helpers - timeline timestamp at start of rendering, consistently measure to end of app callback
2014-01-10 14:27:21 +00:00
Nathan Gray
a64da9f456
Disable automatic chosen, only explicit now
2014-01-10 09:47:26 +00:00
Ralf Becker
243f20e98c
fixed handling of optgroups, eg. notification chains in prefs
2014-01-10 07:08:45 +00:00
Nathan Gray
c9e923bf78
Make sure UID is a string
2014-01-09 18:10:32 +00:00
Nathan Gray
f1558bcffb
Fix missing bracket
2014-01-09 16:53:42 +00:00
Nathan Gray
3fdb024ff2
Don't reset height until it's time to invalidate, avoids re-calculating on every row
2014-01-09 16:46:39 +00:00
Nathan Gray
c082dec331
Profiling - Automatically profile etemplate2 loading in Chrome
2014-01-09 16:44:34 +00:00
Ralf Becker
400240f1e4
caching translations for 10days and changing translation url, when translations are changing --> saves server-roundtrip for each translation
2014-01-09 15:32:07 +00:00
Nathan Gray
13572c472a
Profiling - Add some timestamps for timeline
2014-01-09 13:38:32 +00:00
Ralf Becker
64cc24815c
changed hopefully last reference to orange-ball.png with bullet.png
2014-01-09 12:26:34 +00:00
Ralf Becker
90edb55ec5
add async include and et2 render times to page-generation-times shown
2014-01-09 12:20:13 +00:00
Nathan Gray
5179794f15
Fix constant warnings about not found images when image was in nextmatch row and src was '' for the row
2014-01-09 11:43:15 +00:00
Nathan Gray
49ef2c538a
Use any row data passed from server in etemplate load call to avoid an extra call to get_rows
2014-01-09 11:25:08 +00:00
Nathan Gray
957683087c
Give a minimum height to loading nm rows so average height can be properly calculated, avoiding loading hundreds of rows.
2014-01-08 16:10:07 +00:00
Ralf Becker
2f905e8290
return $arr argument itself, but no reference to it, in all error cases
2014-01-08 09:47:37 +00:00
Ralf Becker
7b7132314c
can NOT use empty($idx) as it is true for 0 too!
2014-01-08 08:58:57 +00:00
Ralf Becker
3156da0619
give buttons in toolbar an individual id based on toolbar-id and action-id
2014-01-06 16:45:54 +00:00
Ralf Becker
b095be7f3d
fixed handling of empty name, not index into array but return full array
2014-01-06 12:53:34 +00:00
Nathan Gray
d000a05b72
Start search if user presses enter in search box
2013-12-30 17:05:03 +00:00
Nathan Gray
fc2d036332
Add ability to turn on/off lettersearch line in column selection dialog (when enabled for app)
2013-12-24 16:54:38 +00:00
Nathan Gray
9009ef44bb
Pass current app to egw_app_header() so it can set header for correct app. Fixes sometimes wrong app header shown.
2013-12-23 16:13:40 +00:00
Hadi Nategh
ae2049db28
Fix missing translation attr in groupbox widget
2013-12-20 12:47:49 +00:00
Nathan Gray
c458f34b18
Explicitly load headers & js for old etemplates
2013-12-19 18:27:46 +00:00
Nathan Gray
3e4100d5df
Make sure content manager is not null before trying to use it (occasionally happens with programmatically created selectboxes)
2013-12-19 18:06:16 +00:00
Nathan Gray
103515342e
Add IDs to search & export buttons.
2013-12-19 15:50:15 +00:00
Klaus Leithoff
d3e89b1095
attempt to implement and make use of the tree-side drag and drop; does not work out-of-the-box, at least not as attempted in mail module
2013-12-19 09:58:32 +00:00
Nathan Gray
ccae3f71ab
Fix undeclared var (strict mode)
2013-12-18 18:17:34 +00:00
Nathan Gray
907e9740d8
Change tree autoload URL to work with egw.link() instead of against it, while still giving the tree lib an absolute URL.
2013-12-18 17:54:28 +00:00
Nathan Gray
af51f8a102
Remove some more old code, favorites now in framework
2013-12-16 20:37:38 +00:00
Nathan Gray
a1e5783da6
Make sure data is set before trying to look inside it.
2013-12-16 18:11:53 +00:00
Ralf Becker
374312be3c
need to set app_header before message, as app_header is (temp.) replaced by it
2013-12-13 01:15:41 +00:00
Nathan Gray
a79f7b87a6
Continue moving most favorite functionality from favorite widget into framework. Favorite widget now uses framework.
2013-12-12 23:45:09 +00:00
Nathan Gray
23fd7066bf
Add etemplate into indexed list before starting the load process. This way anything looking for it can find it, even if it's not fully loaded (and bind to the load event if needed)
2013-12-12 23:37:12 +00:00
Nathan Gray
680ce48fef
Check to make sure selectionMgr is there before trying to use it
2013-12-12 23:34:42 +00:00
Ralf Becker
9c3c077314
fixed not updated sidebox in calendar listview
2013-12-12 23:32:30 +00:00
Ralf Becker
1c7887ca6a
Pixelegg changes from Thursday
2013-12-12 20:27:35 +00:00
Nathan Gray
ffcc62e274
Implement 'add_tab' attribute on server side, so it works.
2013-12-12 20:15:36 +00:00
Nathan Gray
39c53c5530
Parse null values as string '' instead of 'null' to match PHP
2013-12-12 20:10:02 +00:00
Nathan Gray
d65b40046a
Move sidebox favorites & backend out of nextmatch and into framework
2013-12-12 00:03:07 +00:00
Nathan Gray
603f063e00
Properly handle only-app set, with just an integer value
2013-12-11 23:11:33 +00:00
Nathan Gray
362c61e0ae
Don't try to take extra size from already too small columns
2013-12-11 21:24:17 +00:00
Nathan Gray
71e62f24f3
Remove extra border spacing, should be handled in CSS if needed
2013-12-11 21:20:07 +00:00
Nathan Gray
0f055b5295
Use 'state' to store nm info
...
Fix some etemplate permission errors
2013-12-10 23:16:08 +00:00
Nathan Gray
bbd146c0b9
Remove debug error message
2013-12-10 19:39:01 +00:00
Nathan Gray
cc3754ff85
Expand legacy options explicitly, since $legacy_options is not defined
...
Fixes missing app-specific categories in category edit popup
2013-12-10 19:37:57 +00:00
Nathan Gray
735a1afa43
Clear queue when results arrive, and in reset()
2013-12-09 21:37:39 +00:00
Klaus Leithoff
4c03a02926
attempt to implement focusItem, to be able to scroll to a selected Item automatically; implement wrapper for hasChildren from dhtmlXTree API
2013-12-09 16:00:15 +00:00
Ralf Becker
8da1afca1e
some fixes to get "add favorite" in regular calendar views do something
2013-12-08 22:56:23 +00:00
Ralf Becker
921eaf73f1
pixelegg changes from last week
2013-12-08 21:38:36 +00:00
Nathan Gray
ac04ff9f6c
non-et2 Favorites work in progress
...
Stop et2_favorites from overwriting sidebox
2013-12-06 23:10:25 +00:00
Klaus Leithoff
3219eccec4
translation work provided by ingo, michael and other stylite staff
2013-12-06 08:05:58 +00:00
Ralf Becker
76cf4245e6
fix wrong download url
2013-12-05 22:46:31 +00:00
Ralf Becker
2479d85c77
search etemplates first under /etemplates in vfs and then in real filesystem, allows to overwrite templates on a per instance base, stylite.merge stream-wrapper can be used to mount templates editable into vfs
2013-12-05 21:06:35 +00:00
Nathan Gray
7ff91718e4
Fix only 2-3 rows shown for applications loaded into not visible tabs
2013-12-05 20:26:00 +00:00
Hadi Nategh
53006083e9
Add confirm method, with fixed YES_NO buttons and submit functionality, which could be exchanged by old javascript confirm() function
2013-12-05 08:53:11 +00:00
Nathan Gray
87936488bf
Implement getState() & setState() towards a more universal favorites, but still more to do:
...
- Need to get favorite widget to use setState()
- Move much code out of etemplate2 widgets into a higher level
2013-12-05 00:00:43 +00:00
Nathan Gray
6f90cb8fb3
Decrement row count when refreshing a delete
2013-12-04 21:12:25 +00:00
Nathan Gray
3596b74f01
Use 1% to avoid scrollbars when they should not be there
2013-12-04 20:53:10 +00:00
Nathan Gray
834dbe886b
Automatically bound change handler returns true to play nice with other change handlers that might be bound.
2013-12-04 19:52:51 +00:00
Ralf Becker
7d9d146241
re-added probably accidently removed et2_taglist_ro ul css
2013-12-04 18:58:51 +00:00
Klaus Leithoff
68f2605cf4
translations generated/retrieved on translation site: Thank you for your contributions
2013-12-04 10:31:41 +00:00
Ralf Becker
144da1e76d
pixelegg changes from tuesday
2013-12-04 05:23:51 +00:00
Nathan Gray
698efb3039
Better handling of submitting with passed button to properly process the button ID into the value array. Fixes the case where ID like 'button[delete]', previously wound up in button.button[delete].
2013-12-04 00:15:50 +00:00
Nathan Gray
7148a1f274
Fix broken tree by removing extra line - was not supposed to be there
2013-12-03 21:37:50 +00:00
Nathan Gray
ec118b0839
Nextmatch export button no longer defaults to on, it must now be explicitly set by the application.
2013-12-02 21:27:55 +00:00
Nathan Gray
4c1c710ba9
Implement display of server-side validation errors
2013-12-02 20:35:32 +00:00
Nathan Gray
7f176d54f1
Add a fallback to the fallback.
...
If an app doesn't support 'list' link entry, use 'index'
2013-12-02 20:11:47 +00:00
Nathan Gray
fbbe467a7e
Unbind previous click handler before setting a new one, or they get doubled.
2013-12-02 16:24:24 +00:00
Nathan Gray
0f5cfe1949
Default to user's preferred size, app can dock if desired. Since they already do...
2013-11-29 21:26:35 +00:00
Ralf Becker
defe24b7c0
fixed not working selected_value attribute of checkbox and radio, server-side used (un)set_val as attribute while clientside used (un)selected_value for checkbox and set_value for radio, grrrr ;-)
2013-11-29 05:49:13 +00:00
Ralf Becker
57c2c913d1
fixed new emailadmin stuff to work with postgreSQL
2013-11-29 01:50:49 +00:00
Ralf Becker
4866478242
fix exception in boetemplate::get_array()
2013-11-29 00:20:56 +00:00
Nathan Gray
6dc8e077ff
Revert changes from 44692
2013-11-28 20:28:36 +00:00
Nathan Gray
bcfaa60405
Automatically size just to parent, not whole window
2013-11-28 18:43:44 +00:00
Nathan Gray
b14424dbd1
Handle possibility of a null option without failing
2013-11-28 18:43:12 +00:00
Nathan Gray
69ab474f8c
Another fix for private cf filtering, when filter is enabled/disabled via content
2013-11-28 18:32:36 +00:00
Nathan Gray
f8352386cb
Use === to tell the difference between '' and (int)0 keys
2013-11-28 18:12:08 +00:00
Nathan Gray
f5b02ccc21
Preserve selected application when clearing search, or it gets lost internally
2013-11-28 17:31:22 +00:00
Ralf Becker
53eb8e553a
pixelegg changes from yesterday
2013-11-28 06:20:18 +00:00
Nathan Gray
d1106a31fc
Check & avoid duplicates when re-indexing options
2013-11-27 20:22:36 +00:00
Nathan Gray
aed7267801
If search option is set in template, don't override it with automatic chosen switch based on option count.
2013-11-27 18:07:36 +00:00
Nathan Gray
fa65814f9e
Extend exception to all single select:
...
- Multi-select you don't select the empty/none option, just nothing
- Single select needs the empty/none option, even with chosen on
see r44551, 44631
2013-11-27 18:03:26 +00:00
Nathan Gray
407f3d673e
Fix private field filter
2013-11-27 17:17:37 +00:00
Nathan Gray
f88a93c17e
Can't switch DOM node in the detached interface, have to keep the original
2013-11-27 16:42:37 +00:00
Nathan Gray
1e36383224
Keep value in case select options haven't been set up yet so we can set value immediately after.
2013-11-27 16:35:45 +00:00