Ralf Becker
58e13743fc
make local storage more robust (deal with gaps)
2014-01-21 15:09:06 +00:00
Ralf Becker
93ae56a9f2
catch exception about circular reference in JSON.stringify, try fixing object by unsetting _parent&_children and if that does not work the whole argument
2014-01-21 11:23:26 +00:00
Nathan Gray
95b51fefea
Some UI for client error log, log egw.open() calls
2014-01-21 09:21:46 +00:00
Ralf Becker
658b773dc1
fixed an ide warning
2014-01-20 15:25:43 +00:00
Ralf Becker
595d2a23bf
first step of a javascript error notifier and clientside log
2014-01-20 15:23:40 +00:00
Nathan Gray
e276a14be1
Make sure to copy registry settings, not use reference
...
Fixes mail compose always filling address
2014-01-20 09:48:17 +00:00
Ralf Becker
5a8b145b7f
fixed caching in a couple of places:
...
- user.php was not reloaded if (session-)preferences changed eg. language via select-box in login, because we used Expires header, but did not force a different url
- (user|config|images).php now has etag on url, to force reload by browser as we use an Expires header (changed images still need Admin >> clear cache to rebuild image cache)
- preferences are now loaded via a cachable GET request
2014-01-18 17:43:15 +00:00
Ralf Becker
53c6059d84
fix en translation is always used for common, caused by preferences had a stub default preference for common AND egw.includeJS immediatly called callback for a file just sheduled to be loaded, but not yet arrived
2014-01-15 17:39:07 +00:00
Ralf Becker
0cc75cb3e6
need to strip egw-url from css includes, to not included css-files twice
2014-01-15 15:48:22 +00:00
Nathan Gray
6792b9831c
Allow popups to set just a message without refreshing before closing
2014-01-15 14:40:42 +00:00
Ralf Becker
e265874bd7
new method to create object tag for svg and img for all other image types
2014-01-14 16:07:39 +00:00
Hadi Nategh
9dcc4cc00a
Map mailto url params to right object in mailto magic function
2014-01-13 17:37:46 +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
8228b9512d
Fix type attribute check to work
2014-01-13 08:58:16 +00:00
Nathan Gray
8e69a1e23b
Only call request callback once, when the request is finished.
...
Callback is not called if the response only has 'data' type responses, since data handler calls callback already.
2014-01-11 14:47:31 +00:00
Ralf Becker
ab490eadc1
extend egw.includeJS to support concatinated/bundled files included and not include contained files again
2014-01-11 12:10:31 +00:00
Nathan Gray
d94fc6b492
Fix not called callback
2014-01-11 11:41:05 +00:00
Nathan Gray
31987e9704
Check result type, if it's not 'data' quietly reject - fixes warning in multi-part responses
2014-01-11 11:40:30 +00:00
Nathan Gray
1742d07374
Use egw.debug function instead of console to warn about missing images.
2014-01-10 15:57:02 +00:00
Nathan Gray
15bc1b3909
Wait until DOM is loaded before trying to load etemplate or set message
2014-01-10 09:13:56 +00:00
Ralf Becker
5ec887d70d
fixing the fix: using private var to store config
2014-01-10 08:12:59 +00:00
Klaus Leithoff
4cc93e8ead
fix for unexpected not defined this.configs
2014-01-10 08:00:45 +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
Ralf Becker
90edb55ec5
add async include and et2 render times to page-generation-times shown
2014-01-09 12:20:13 +00:00
Ralf Becker
0092addd08
ignore SecurityError exception if opener is different security context / cross-origin
2014-01-08 15:19:04 +00:00
Ralf Becker
911e7d2955
ignore SecurityError exception if opener is different security context / cross-origin
2014-01-08 15:14:10 +00:00
Nathan Gray
271d7a869c
Turn debug level down to warning
2014-01-08 14:58:41 +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
Nathan Gray
7381f103e5
Initialize popup flag with window.opener detection, instead of false.
2013-12-19 17:18:01 +00:00
Nathan Gray
89e1757d9e
Avoid errors if no email address was provided
2013-12-19 17:16:33 +00:00
Hadi Nategh
1d14ecc80f
Remove "drag-and-drop" and "IE dropdownmenu hack" from the common preferences
2013-12-19 10:19:14 +00:00
Hadi Nategh
185237291f
Make sure the et2 is not empty before giving up to not refresh the whole page
2013-12-19 08:46:51 +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
Ralf Becker
fef5bb4972
fix error if query parameters contain null
2013-12-12 03:43:17 +00:00
Ralf Becker
2bb7b7565c
fix add-favorite method to NOT bubble and giving a CSP warning instead of running
2013-12-12 02:42:08 +00:00
Nathan Gray
e15144c7f9
- Fix name in delete confirm
...
- Some documentation & cleanup
2013-12-12 00:38:06 +00:00
Nathan Gray
0ecc494cb4
Remove loading class if there is no favorite delete being processed
2013-12-12 00:00:54 +00:00
Nathan Gray
d2e2622b77
Remove reference to sidebox in destructor
2013-12-11 23:54:42 +00:00
Nathan Gray
b9f39dd315
- Use egw.link() instead of string concatenation so it can craft the URL 'properly'
...
- Load categories in a div instead of an iframe
2013-12-10 22:26:07 +00:00
Nathan Gray
72c3d211be
One more fix needed to allow :: inside UIDs
2013-12-09 21:13:59 +00:00
Nathan Gray
443b8ed854
Give some UI feedback if the delete does not work
2013-12-06 23:26:48 +00:00
Nathan Gray
72c37e0849
non-et2 Favorites work in progress
...
Handle states that are id_data objects for egw.open()
2013-12-06 23:12:05 +00:00
Nathan Gray
d097a0bfa1
non-et2 Favorites work in progress
...
New states now added to list immediately, can delete states
2013-12-06 21:26:55 +00:00
Nathan Gray
79498c5ae5
non-et2 Favorites work in progress
...
Can now save & restore state. Still some UI needed, not fully integrated with et2 favorites.
2013-12-06 18:24:29 +00:00
Ralf Becker
b2c563e5aa
restoring current app/tab, if pressing save or cancel, to do so let server know which is current app and run under that appname (otherwise redirect will happen to currently views app
2013-12-06 00:02:16 +00:00
Nathan Gray
cfefedc8f7
non-et2 Favorites work in progress
...
Add current link shows popup with state details.
2013-12-05 23:22:54 +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
6f15f0aa4c
Make popups 10px bigger
2013-11-29 17:42:20 +00:00
Ralf Becker
4f3f88ae92
fixed not updated sidebox in calendar when using framed template-set, as sidebox is now transported as data attribute, we need to set it in or before header call
2013-11-28 23:18:36 +00:00
Nathan Gray
33b01975b2
Allow :: inside data UIDs
2013-11-28 20:16:33 +00:00
Nathan Gray
b86173ad16
Fix warning to only come when app JS object is missing
2013-11-27 00:13:56 +00:00
Nathan Gray
0502f9326c
Make sure ajax flag is at the end so framework finds it
2013-11-26 22:23:08 +00:00
Hadi Nategh
fca35f8127
Revert r44596 about egw_refresh 'cause need more investigation
2013-11-26 08:48:10 +00:00
Nathan Gray
6985c3d61f
Resize popups according to their content
2013-11-21 19:09:17 +00:00
Nathan Gray
fd737f10dc
Change queued AJAX to go async
2013-11-20 23:40:26 +00:00
Nathan Gray
089144d986
Avoid adding CSS files again if they're already in the header
2013-11-19 23:22:33 +00:00
Hadi Nategh
74d0797904
Make sure only fall into et2 specific reload for egw_refresh when the etemplate2 object has value
2013-11-19 08:36:08 +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
fb2c103cef
Use current app to get around missing etemplate run rights
2013-11-13 23:57:49 +00:00
Nathan Gray
31a42e3110
Use current app to get around missing etemplate run rights
2013-11-13 23:22:44 +00:00
Ralf Becker
aeb6ebd84c
instanciate app.js object from egw.js, so non et2 apps can use it too, get et2_dialog working from app.calendar outside listview
2013-11-05 18:08:07 +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
Nathan Gray
07ff17704f
Refresh current app or target app too, like it says it's supposed to
2013-11-04 18:57:20 +00:00
Nathan Gray
4d29125c41
Fix some window/scope issues with jquery & plain assign handlers to make sure they operate on the window, not the request context (which can be anything)
2013-10-28 22:22:09 +00:00
Nathan Gray
f6526a30e8
Fix intermittent issue with missing window breaking ajax
2013-10-18 21:01:53 +00:00
Ralf Becker
998d568ef4
for egw.json calls in a popup we need to use jQuery object of that window, as otherwise eg. apply from server with app.$app.method to run in main window instead of popup
2013-10-18 16:14:36 +00:00
Nathan Gray
129eb91b3d
Null is also not OK for icon
2013-10-10 16:15:46 +00:00
Klaus Leithoff
43d73abbcd
test if the required method is available on framework
2013-10-10 15:38:18 +00:00
Ralf Becker
24e3fb2e63
fix "Got invalid title request, by NOT sending empty requests" warnings
2013-10-10 10:49:41 +00:00
Nathan Gray
e0954288dd
Switch to a heartbeat style of tracking open [named] popups. Seems much more consistent.
2013-10-10 09:37:21 +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
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
a6311fa1a3
creating and using an app-specific egw object
2013-10-07 16:53:13 +00:00
Nathan Gray
746e6ea193
Also accept just the window name to windowClosed(), as sometimes window.name is not available anymore.
2013-10-07 11:20:47 +00:00
Nathan Gray
57c412bd47
Slightly more robust popup handling.
...
It's still not possible to completely track them, but it's a little better.
2013-10-07 10:09:08 +00:00
Nathan Gray
3ca2448f94
Make storage api global
2013-10-07 10:08:24 +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
8a7ffaa182
Restore accidentally removed return of popup window
2013-10-05 09:38:22 +00:00
Nathan Gray
893648e189
Add the ability to track named popups opened using egw.open() or egw.open_link(). Unnamed popups or those opened in other ways are not tracked. You can get the list using egw.getOpenWindows(app, regex_filter), which returns a list of names.
...
Also, a wrapper around session storage.
2013-10-05 09:28:12 +00:00
Nathan Gray
282fb76cb6
Improve error message
2013-10-04 09:40:35 +00:00
Ralf Becker
2f39c7b4dd
fixed not working preferences under idots template
2013-10-03 15:54:19 +00:00
Ralf Becker
66db293a67
missing commit for new preferences
2013-10-03 15:17:14 +00:00
Ralf Becker
6f162f144e
add context sensitive link to ACL/grant access to top-menu, same is to be happen for cats and preferences itself and preferences in sidebox will be removed
2013-10-02 16:29:08 +00:00
Nathan Gray
756b3d3380
Fix app-level redirect affects whole page
2013-09-30 12:34:45 +00:00
Nathan Gray
07b311d495
Enhance error message to actually include the original error message
2013-09-17 20:17:20 +00:00
Nathan Gray
68b1178657
Undefined needs quotes.
2013-09-16 14:35:55 +00:00
Nathan Gray
b4007621f7
When applying (call a function) call it on the request window, not current - they may be different
2013-09-11 15:52:49 +00:00
Nathan Gray
958167b0f7
Add an optional async parameter to sendRequest() to make simple async calls easier
2013-09-10 20:22: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
eef2235f2e
Merge egw_jsons - change jsonq to use egw.json()
2013-09-04 22:01:33 +00:00
Nathan Gray
467734258c
Merge egw_jsons - change preferences to use egw.json()
2013-09-04 21:51:08 +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
e2cce43bad
fixed not working _self target
2013-09-02 13:25:00 +00:00
Ralf Becker
ccab8e0ac1
fix alert("1"), caused by data-window-close being a string
2013-08-27 16:49:57 +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
Nathan Gray
1d9589db99
If et2 object changes, we need the new one, not reject.
2013-08-20 23:20:56 +00:00
Nathan Gray
dca0c40418
Promote some useful common functionality to the app.js parent class
2013-08-20 19:20:10 +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
b5ca4ac505
fixed jdots/Stylite template to contain no more inline scripts
2013-08-20 18:01:49 +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
8b8faba28c
some docu and jsdoc tags to show the outline
2013-08-20 07:06:59 +00:00
Ralf Becker
cf25e7bae0
get Eclipse to display outline
2013-08-16 09:16:40 +00:00
Ralf Becker
118657ddee
using etemplate_new::ajax_proecess_content to allow to have etemplate still extend etemplate_old, making etemplate_new autoloadable
2013-08-06 18:24:30 +00:00
Ralf Becker
3afd9aaa18
check if quick-add selectbox is alread there, only create it again if not
2013-08-01 09:54:09 +00:00
Ralf Becker
16191d4db4
rendering quick-add menu on clientside and content-security safe, thought not yet in idots template, also removed not used inline javascript from idots
2013-07-22 19:20:13 +00:00
Nathan Gray
cd64ef06dc
Fix copy/paste error initializing app.js object
2013-07-20 14:16:21 +00:00
Nathan Gray
d4880a3351
Load & parse etemplate2 if set in egw.js object's data-attributes
2013-07-20 13:42:23 +00:00
Nathan Gray
26e9792256
Load javascript files before processing other response types, so all JS is available.
2013-07-20 13:41:17 +00:00
Ralf Becker
0d7c5455df
fixed wrong dependency
2013-07-19 15:22:54 +00:00
Ralf Becker
70c56ebab6
one more missing debug
2013-07-19 15:22:37 +00:00
Ralf Becker
d16c426fb6
first step towards content-security by passing parameters to egw.js script via data-attributes of script tag instead of using inline scripts in page
2013-07-19 08:45:26 +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
744345d751
Change egw.open() (which accepts _blank, _self, etc. as targets) to not pass invalid parameters to egw_link_handler() (which only accepts app names).
2013-07-15 16:03:37 +00:00
Nathan Gray
44e96714af
Fix adding distribution list (& maybe some other link issues) by looking for framework's link handler in open_link()
2013-06-12 17:04:42 +00:00
Nathan Gray
04fd3b82a9
If egw_link_handler() is defined, use that instead of window.open()
2013-06-12 16:56:12 +00:00
Nathan Gray
3300e82b27
Implement queue when setting preferences
2013-06-11 22:48:27 +00:00
Nathan Gray
b2cb70f15f
Use egw.LAB object if available
2013-04-12 16:30:30 +00:00
Ralf Becker
34a2f8c6e0
support for non-global func eg. "app.someapp.func" need to be in both egw_json objects (until we fix it so one calls the other)
2013-04-12 16:03:45 +00:00
Nathan Gray
868c41643c
Only expire old data if there are no registered callbacks
2013-04-11 10:22:51 +00:00
Nathan Gray
8834d86818
Give a trace on all logs if debug level is 5 to help track things down
2013-04-10 14:14:06 +00:00
Ralf Becker
26f54eb8ce
fixed error if get parameter has no equal sign, eg. /some/url?download
2013-04-09 16:17:43 +00:00
Ralf Becker
ff7cf9ff17
propset svn:keywords Id
2013-04-09 12:10:48 +00:00
Nathan Gray
a0d18dc8fb
Fix properties
2013-04-09 12:10:09 +00:00
Nathan Gray
f3209731f3
Add inheritance stuff
2013-04-09 12:08:44 +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
8e66bc33bf
Fix error in window module instanciation
2013-04-01 19:06:47 +00:00
Nathan Gray
19aef757f6
Use window from egw object, if available - still not quite right
2013-03-25 16:58:33 +00:00
Nathan Gray
e685a222dc
Avoid JSON error popup by checking for the queue before using it
2013-03-13 19:31:06 +00:00
Klaus Leithoff
9b0623ff3a
fix typo/copy and past error on dataGetUIDdata
2013-03-04 16:25:39 +00:00
Nathan Gray
9616e44aff
Add ability to get all an application's preferences with '*'
2013-02-27 18:08:03 +00:00
Nathan Gray
987af6b473
Pass along internal lastModification time, and use it
2013-02-27 18:00:15 +00:00
Ralf Becker
139c12821a
added method to access data: egw().dataGetUiddata(_uid)
2013-02-27 12:41:19 +00:00
Ralf Becker
52ea94cbee
using LABjs to load javascript files in order via egw.includeJS
2013-02-15 15:30:35 +00:00
Nathan Gray
a3647e1b00
Implement refreshing a single UID, limit known UIDs sent to server to 200
2013-02-14 11:22:27 +00:00
Nathan Gray
547d125a30
Check app_refresh to not get an error if an application overrides app_refresh() instead of using register_app_refresh()
2013-02-14 11:11:17 +00:00
Nathan Gray
588c6141c9
Return true to not throw an exception if the plugin worked
2013-02-14 11:01:50 +00:00
Ralf Becker
90370bc387
tracking state of existing script tags and allow to specify multiple callbacks for loading of javascript files
2013-02-13 16:26:42 +00:00
Nathan Gray
33e94d355c
Fix app_refresh to support applications that set window.app_refresh instead of calling register_app_refresh()
2013-02-13 12:47:17 +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
5513df1277
Fix bug in link handling that lost extra vars when extra vars are already in url
2013-02-06 15:04:26 +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
cfa0b7277a
Fix for IE overflow from Anthony Messina
2013-01-17 23:29:14 +00:00
Nathan Gray
6c03b0ec39
Try to avoid conflicts between framework's egw_appWindow() & jsapi's egw_appWindow()
2012-12-12 19:45:27 +00:00
Nathan Gray
74931d30a9
Return the result of opening so caller can use it
2012-12-04 00:13:12 +00:00
Nathan Gray
713a78dc96
Add a new debug level that includes a stack trace
2012-12-04 00:12:13 +00:00
Nathan Gray
2ea64a658b
Better handling of different hights & open up vs down
2012-11-27 21:32:53 +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
Nathan Gray
234832d1f0
Make sure lang 'array' is not a real array - that means it's empty, and will return 0 for missing translations. It is supposed to be an object.
2012-06-12 18:47:42 +00:00
Nathan Gray
71456ff8ef
Force nextmatch to load affected rows by clearing the data from data store
2012-06-06 21:56:18 +00:00
Frédéric Erpicum
e2cb9b44e7
resolve problems in opening windows for viewing or editing in projectmanager
2012-05-17 09:26:25 +00:00