Klaus Leithoff
318f85f651
throw exception if there are no app profiles available for export
2012-05-29 11:06:40 +00:00
Nathan Gray
19ab4d3f4c
If field is not in the list of fields to be imported, do not add it in as null - could overwrite existing data
2012-04-24 15:46:25 +00:00
Nathan Gray
31bae98d9f
- Export all records
...
- Properly handle export result
2012-04-18 17:48:08 +00:00
Nathan Gray
c200bfa403
Set empty fields to '' instead of retaining their value (null or 0)
2012-04-17 16:36:31 +00:00
Nathan Gray
dff86e4842
Fix exporting to a directory
2012-04-17 15:40:34 +00:00
Nathan Gray
999fa2c422
More rigorous checking on empty / missing date - set to null, not blank
2012-04-12 19:23:39 +00:00
Ralf Becker
4d95a9b495
* ImportExport/Tracker: timeout left num-rows set to -1, causing nextmatch to try to display full list on next login
2012-03-29 10:43:21 +00:00
Nathan Gray
102c0e569c
Change error output from STDERR to error_log
2012-03-19 14:54:20 +00:00
Ralf Becker
b68cbecbe2
trying to work arround "PHP Fatal error: Cannot unset string offsets in /usr/share/egroupware/importexport/inc/class.importexport_schedule_ui.inc.php on line 444"
2012-03-13 10:22:15 +00:00
Nathan Gray
dbb539e1d3
Log the format attempted
2012-02-29 15:53:45 +00:00
Nathan Gray
d67191841b
Change addressbook Export CSV context menu option to use importexport
2012-02-27 16:06:10 +00:00
Nathan Gray
1109aea63a
Lock import/export job while running, to prevent multiple instances.
2012-02-14 20:29:33 +00:00
Nathan Gray
68798a2200
- Fix sorting by modification time to handle files changed at the same time
...
- Catch exceptions for logging
2012-02-14 18:36:15 +00:00
Nathan Gray
caec90f104
Better handling of date-times without times, prevent double-conversion to server time
2012-02-07 20:49:38 +00:00
Nathan Gray
6fa67b2e28
More robust handling of importing date-times:
...
1. Check against user's preference
2. Try any other possibilities, by egw_time
3. Error, unless app plugin takes special measures
2012-02-07 15:37:16 +00:00
Nathan Gray
a7fd0331bd
Handle missing DateTime object
2012-02-06 18:40:12 +00:00
Nathan Gray
465498b36c
- Return errors in timestamp formatting so they can be displayed to user
...
- Make sure timestamps returned are timestamps, not DateTimes
2012-02-06 16:23:33 +00:00
Nathan Gray
03756ddaf2
In scheduled list, show last / next run times in user time. Async still runs in server time though, so added a message about that to edit dialog.
2012-02-01 20:49:27 +00:00
Nathan Gray
3656ce8515
- Leave any account names that can't be parsed to IDs for use in errors
...
- Return warning about any names that can't be parsed
2012-01-25 18:13:57 +00:00
Nathan Gray
03671abeb8
Give a list of what definitions were imported, so you can find them
2012-01-20 18:39:50 +00:00
Nathan Gray
cbf5203c8b
Remove double charset conversion on header
2012-01-09 20:46:23 +00:00
Nathan Gray
89f46c6a3b
Refresh opening window after import
2012-01-05 18:23:02 +00:00
Nathan Gray
9990fe45d6
Filter definitions by selected application / plugin
2011-12-27 16:47:57 +00:00
Nathan Gray
a873cf93f0
Preserve appname, and get it from definition if missing
2011-12-22 16:09:29 +00:00
Nathan Gray
3b2862a63b
Hold on to import file while doing dry run, so user can just click import again
2011-12-20 19:01:16 +00:00
Nathan Gray
a1df0766a7
Display some records from the file to be imported as a preview when 'Test only' is selected
2011-12-20 00:16:23 +00:00
Nathan Gray
b8955a1ab0
Keep warnings when adding errors to notification
2011-12-19 22:22:29 +00:00
Nathan Gray
0934dd0045
Remove comma between date and time
2011-12-19 15:26:47 +00:00
Nathan Gray
82dbae58ee
Add warnings to notification email
2011-12-15 17:01:01 +00:00
Nathan Gray
8c4e8dee2f
Display warnings encountered during import
2011-12-15 16:56:52 +00:00
Nathan Gray
f6a443a917
Add warnings to import plugin
2011-12-15 16:24:47 +00:00
Nathan Gray
03bae6ff27
Add CP850 to translation class list of installed charsets, don't need to add it in import/export
2011-12-14 21:34:24 +00:00
Nathan Gray
bf9632b14a
Keep original field names when export definition is created from import definition
2011-12-14 16:33:54 +00:00
Nathan Gray
cd96a14674
Add run time to scheduled import/export last run info
2011-12-13 20:00:40 +00:00
Nathan Gray
d629b6322e
HTTP not supported by is_readable(), so use headers to determine if file is readable
2011-12-13 17:42:32 +00:00
Nathan Gray
3c7a918a4f
Add 'errors' to notification subject
2011-12-12 17:24:27 +00:00
Nathan Gray
193267be20
- Show error details in email
...
- Fix 'Array ...deleted' result
- Avoid some warnings from stuff not being arrays
2011-12-12 17:23:24 +00:00
Nathan Gray
f3bbd83e0d
Fix typo
2011-12-09 19:11:14 +00:00
Nathan Gray
20bb80effb
- Silence some warnings
...
- Send notification to scheduling user about any errors during import/export - does not include full list of errors
2011-12-09 18:44:29 +00:00
Nathan Gray
d93f9f4869
Only use the translation from wizard if it's there, otherwise leave it alone
2011-12-09 17:49:22 +00:00
Nathan Gray
68a970f5d6
Fix deleting scheduled import/exports
2011-12-09 16:25:17 +00:00
Nathan Gray
d4cda9a91a
- Fix broken encodings by using export_csv's fputcsv
...
- Include set charset in HTTP header
2011-12-08 17:27:16 +00:00
Nathan Gray
0b9b48b6da
- Change schedule list to display results & errors from each file
...
- Process files in a directory oldest->newest
- Change display of 'Last run', was last successful run, now last attempt
- Fix display of next run, updates even if errors
- If errors are encountered (not writable, definition not found) don't block other async jobs
2011-12-07 20:05:02 +00:00
Nathan Gray
5f815928f4
Improve handling / display of error messages
2011-12-07 17:18:08 +00:00
Nathan Gray
ada529a9d5
- Remove standard encodings from extra charset list
...
- Add extra charsets to export too
2011-12-07 00:12:18 +00:00
Nathan Gray
225317c0b3
Scheduled imports now can operate on a folder to import all files in folder. If successful, improted files can be deleted after import.
2011-12-06 00:44:07 +00:00
Nathan Gray
ee9398c8f1
Clever note to indicate what to use CP850 for
2011-12-05 19:43:33 +00:00
Nathan Gray
d033d3b651
Use wizard to try to translate headers. It should give better results, especially with compounds like 'Street (Business)', where translation has no such phrase
2011-12-05 19:33:29 +00:00
Nathan Gray
d366cf8b71
- Explicitly add CP850 to list of import encodings
...
- Other encodings (not supported by eGW) can be added in site configuration
2011-12-05 17:27:04 +00:00
Klaus Leithoff
95a3e33aea
fixing an php5.2.x error for ::export... to ->export... - we dont need the static call here anyhow.
2011-12-05 11:12:07 +00:00
Nathan Gray
21c6a0f447
Add ability to create an export definition based on an existing import definition
2011-12-01 18:49:42 +00:00
Nathan Gray
2c636586c6
Allow importing files with any encoding supported by server, not just eGW encodings
2011-11-30 18:06:35 +00:00
Nathan Gray
d5904fb3c0
Try out PHP's native fputcsv() to see if it still causes problems
2011-11-29 00:27:54 +00:00
Nathan Gray
288d40065a
Do charset conversion once per line instead of on each field
2011-11-25 23:12:08 +00:00
Ralf Becker
2d7584d459
only check for class.$classname.inc.php files, when scanning for plugins, as backupfiles postfixing the filename with an other extension stall EGroupware completly (Fatal Error: Can not redeclar class)
2011-11-21 09:50:02 +00:00
Nathan Gray
78855f0652
Don't discard first definition
2011-11-07 18:24:15 +00:00
Nathan Gray
1657114628
- Add 'Add' button to add a new condition
...
- Matching conditions stop by default now
2011-11-03 20:23:04 +00:00
Nathan Gray
9158834db3
Add ability for user to override definition's delimiter when importing
2011-11-03 16:18:26 +00:00
Nathan Gray
89ecce38bf
Fix SQL error preventing multiple users/groups allowed to share their own definitions
2011-10-31 19:36:21 +00:00
Nathan Gray
a3ad2a0392
Add options tab to export dialog so user can change delimiter when exporting
2011-10-31 19:18:06 +00:00
Nathan Gray
41493e7c51
Move preserve to allow for clearing conditions
2011-10-31 16:30:57 +00:00
Nathan Gray
79baa55fe2
Fix some problems with read-only wizard:
...
- New definitions aren't read-only
- Hide 'Just me' checkbox when read-only, to avoid confusion
- Wizard stays read-only if you go to previous step
- Disable Change context menu for definitions the user has no permission to change
2011-10-26 19:54:15 +00:00
Nathan Gray
df44d80c60
Make wizard steps read-only if user is not owner or admin
2011-10-25 21:55:55 +00:00
Nathan Gray
3e194b16fe
Add convert option, affects how date/times & categories are parsed
2011-10-25 18:54:23 +00:00
Nathan Gray
f0b86e7cbe
Fix 12 hour time format (missing am/pm) when exporting
2011-10-25 17:18:17 +00:00
Nathan Gray
93b9d99cd5
Don't treat numeric category names as IDs
2011-10-25 17:09:31 +00:00
Klaus Leithoff
2d494997ab
rework of bo_merge::getExportLimit, apply to etemplate, importexport, addressbook, calendar
2011-09-16 13:03:46 +00:00
Klaus Leithoff
f616b34f58
API: introduce register_single_app_hook to be able to add or update one hook for an required app. register added/updated hooks with ->location; calendar and addressbook are using this to insert export_limit hook if not available. use app hook to fetch app specific export limit with import_export side_menu additions too
2011-09-15 16:53:20 +00:00
Klaus Leithoff
a2730516fe
silence some error log statements
2011-09-13 10:16:29 +00:00
Klaus Leithoff
d52c72207c
* calendar/importexport/addressbook: calendar introduce new config option to set app specific export_limit; calendar csv export: use enumerate for exporting events as csv; bo_merge: introduce new helper functions to get and check export-limit; addressbook: use new helper functions
2011-09-13 09:05:33 +00:00
Klaus Leithoff
25fcf25bdb
code cleanup: as bo_merge::is_export_limit_excepted checks for ->is Admin<- already
2011-08-30 15:27:47 +00:00
Klaus Leithoff
6a2d5d8b36
using new bo_merge static function to check for is_export_limit_excepted; fixing an off but vone error regarding the limit of rows returned
2011-08-29 15:02:00 +00:00
Nathan Gray
0264b70a0b
Silence warning when export exception is not set
2011-08-22 14:20:44 +00:00
Nathan Gray
16bafa78b8
Implement export restriction exception for given users/groups in apps
2011-08-17 15:38:56 +00:00
Nathan Gray
9de3b4afc9
Use similar_text() to try to automatically match import field names to application fields when there's no exact match
2011-08-09 18:19:58 +00:00
Nathan Gray
89c2097894
Add new import translation function list(sep,field,index) to explode a field and pick one part
2011-08-05 22:04:05 +00:00
Nathan Gray
63caf59444
Use admin/preferences as appname for sidebox links
2011-07-04 15:35:53 +00:00
Nathan Gray
341bf0e8c4
Enable import CSV plugin, but remove default definition. Admin can create it if needed
2011-07-04 14:34:44 +00:00
Ralf Becker
03e379e570
* jQuery: changed $ to $j to work around mootools use in Joomla templates and other js code in imported projects
...
required to change $ --> $j:
phpgwapi/*
jdots/*
etemplate/*
stylite/*
felamimail/*
admin/*
news_admin/*
projectmanager/*
importexport/*
infolog/*
ranking/*
required, but not automatic:
importexport/setup/etemplates.inc.php
phpgwapi/js/jquery/*
negative, not to touch or revert later:
phpgwapi/inc/savant2/Savant2/Savant2_Compiler_basic.php: '(\$(.+))' => 'print $1',
phpgwapi/js/dhtmlxtree/libCompiler/core.js
sitemgr/*
phpfreechat/*
gallery/*
activesync/include/smb.php: '^\tIPC\\\$(.*)[ ]+IPC' => 'skip',
etemplate/inc/class.bo_merge.inc.php: if ($this->table_plugins && preg_match_all('/\\$\\$table\\/([A-Za-z0-9_]+)\\$\\$(.*?)\\$\\$endtable\\$\\$/s',$content,$matches,PREG_SET_ORDER))
find phpgwapi jdots etemplate stylite felamimail admin news_admin projectmanager importexport infolog ranking \
\( -name '*.php' -o -name '*.js' \) -exec grep -q '\$(' {} \; -print \
-exec sed -i '' 's|\$(|$j(|g' {} \;
svn revert phpgwapi/inc/savant2/Savant2/Savant2_Compiler_basic.php phpgwapi/js/dhtmlxtree/libCompiler/core.js \
importexport/setup/etemplates.inc.php phpgwapi/js/jquery/jquery.js etemplate/inc/class.bo_merge.inc.php
additional changes:
phpgwapi/js/jquery/jquery.js: window.$ --> window.$j
phpgwapi/js/egw_json.js:291 this.request = $j.ajax({url: this.url,
jdots/templates/jdots/head.tpl:59 $j(document).ready(function() {
phpgwapi/js/egw_action/egw_grid_view.js: $.browser --> $j.browser
importexport/setup/etemplates.inc.php: etemplate editor importexport.wizard_basic_export_csv.choose_fields onclick of check icon changed
phpgwapi/js/egw_action/tests/*.html
phpgwapi/js/egw_action/tests/js/jquery.js: window.$ --> window.$j
2011-07-03 09:00:36 +00:00
Nathan Gray
fe05c1cb03
Change selectbox back after
2011-06-28 15:52:26 +00:00
Nathan Gray
203fb83f0d
Don't try to select all if the current search filters give no results, give an alert to select something
2011-06-27 17:23:59 +00:00
Nathan Gray
039e351d8b
'Disable' Export & merge spreadsheet in sidebox for addressbook view
2011-06-22 18:14:52 +00:00
Nathan Gray
615ea171c2
If automatically using 'select all', turn it back off again after merge
2011-06-20 16:36:51 +00:00
Ralf Becker
8e53f21349
using bo_merge::get_documents to get export documents
2011-06-17 14:07:10 +00:00
Nathan Gray
768859718f
Update selection tab if definition is changed.
2011-06-09 14:42:58 +00:00
Nathan Gray
483069d970
Use nextmatch preferred definition as pre-selected export definition
2011-06-08 15:01:27 +00:00
Nathan Gray
7ee8739394
For calendar & sitemgr, use labels 'Import' & 'Export' instead of 'Import CSV' & 'Export CSV'
2011-06-08 14:55:25 +00:00
Ralf Becker
469f938967
consider running in setup (install/update of app) as run by an admin
2011-06-08 10:59:45 +00:00
Nathan Gray
42af223052
- Fix select all confirm message
...
- When copying and name exists, try again with user lid. If that fails, give nice error message
- When done editing a definition, send to definition index instead of reload + send POST again
2011-06-06 16:08:57 +00:00
Nathan Gray
e7e424e1fc
Get spreadsheet box working again
2011-06-03 22:00:18 +00:00
Nathan Gray
265a6d307e
Use widthxheight for popup dimensions
2011-06-02 20:10:20 +00:00
Nathan Gray
0bb2f77376
Add some more icons to actions
2011-06-02 18:41:51 +00:00
Nathan Gray
8820c41c3d
Add context menu
2011-06-02 16:50:41 +00:00
Nathan Gray
0cd5da6be9
Fix bulk delete / export
2011-06-01 13:56:24 +00:00
Nathan Gray
eeda69071f
Pass definition to plugin
2011-05-30 17:51:57 +00:00
Nathan Gray
da20e2ea06
Add check all button
2011-05-24 17:04:16 +00:00
Nathan Gray
eed3385496
Allow admin to choose when to update default definitions: never, manual or auto
2011-05-24 16:13:51 +00:00
Nathan Gray
8af97a3c10
Add an option for charset to use the current user's preferred charset
2011-05-24 15:50:38 +00:00
Nathan Gray
7f06d6af00
If user chooses a name already in use, give a nice message with some alternate suggestions
2011-05-24 15:33:00 +00:00
Nathan Gray
6e26b80c1e
Add special case for Calendar, non-list views need special handling
2011-05-24 14:53:23 +00:00
Nathan Gray
3ad9f4d932
Hide export link if admin disabled export site-wide
2011-05-20 16:55:34 +00:00
Nathan Gray
3808f6d5e0
Make sure users can access their own definitions
2011-05-19 16:11:26 +00:00
Nathan Gray
86ced579db
Apply ACL to definition list - only show definitions user can use
2011-05-18 14:46:57 +00:00
Nathan Gray
d0d105b937
Disable delete using checkboxes too
2011-05-18 14:22:31 +00:00
Nathan Gray
614882c347
Disable edit / delete buttons for definitions you have no access to
2011-05-17 23:27:42 +00:00
Nathan Gray
785c484b4e
If user didn't select any records to export, select all
2011-05-16 21:50:54 +00:00
Nathan Gray
06626b4cfc
Skip spreadsheets shown in other selectbox
2011-05-16 18:42:49 +00:00
Nathan Gray
5101ac5c03
Translate select options
2011-05-16 16:02:20 +00:00
Nathan Gray
a63bcaa4d3
Avoid warnings from in_array()
2011-05-10 14:43:16 +00:00
Nathan Gray
e6ecb5415c
Selectbox now works with jdots framework
2011-05-09 16:56:52 +00:00
Nathan Gray
f6f9617261
Make spreadsheet list useful, fakes a call to merge with the chosen document and the currently selected items
2011-05-05 21:40:15 +00:00
Nathan Gray
87c960b6ea
Only show spreadsheet link if app has spreadsheets to show
2011-05-02 17:21:26 +00:00
Nathan Gray
9786f03980
Add a link to list of spreadsheets available for merging into
2011-04-26 20:30:26 +00:00
Nathan Gray
bbf3778172
Use a nextmatch for definition list
2011-04-19 16:00:43 +00:00
Nathan Gray
61862bf50d
Trim any extra space off name / account login, it breaks the searching
2011-04-18 15:09:03 +00:00
Nathan Gray
e9d5ae4216
Special formatting for date custom fields
2011-04-14 16:58:28 +00:00
Nathan Gray
39faba482e
Make sure selects is an array, if passed
2011-04-13 14:34:12 +00:00
Nathan Gray
dc270e8bae
Change title of links for all apps from Import & Export to Import CSV & Export CSV in the correct place
2011-04-11 21:20:32 +00:00
Nathan Gray
9d722f1cf8
Change title of links for all apps from Import & Export to Import CSV & Export CSV
2011-04-11 20:55:20 +00:00
Ralf Becker
82bb3f8044
* ImportExport/PostgreSQL: fixed SQL error "wrong operator !" when defining a profil
2011-04-11 15:45:29 +00:00
Nathan Gray
459e6be4d2
Blacklist calendar CSV import because it doesn't work the same as the others, and you should use iCal. If someone needs it, they can put it back in.
2011-04-11 15:21:10 +00:00
Nathan Gray
927528e2ad
If user does not have permission for Import / Export, skip all importexport sidebox links
2011-04-06 22:47:49 +00:00
Nathan Gray
b6e79184a2
Allow plugin selection settings to override preferences
2011-04-06 22:24:46 +00:00
Nathan Gray
49f8cc3258
Convert date/time to timestamp
2011-04-06 17:22:14 +00:00
Nathan Gray
7b804f41a4
Recognize empty as != 0
2011-04-06 15:40:30 +00:00
Nathan Gray
630720a662
Used passed appname when creating new categories
2011-04-04 19:05:15 +00:00
Nathan Gray
15bac6b211
Don't clear cat_id if it wasn't found, let app have the original
2011-04-04 17:28:35 +00:00
Nathan Gray
cd5bcab6b6
Add function to do automatic conversions from human friendly values, similar to the one in export.
2011-04-04 17:00:13 +00:00
Nathan Gray
ee0e75f283
Fix for exporting custom fields in user format - CFs are stored as text, not timestamp
2011-04-04 16:09:22 +00:00
Nathan Gray
af7ad5bec1
If there's only one option for plugin or definition, select it
2011-04-04 14:31:37 +00:00
Nathan Gray
ce38993281
Don't cast to array, it's often scalar
2011-03-28 21:51:35 +00:00
Nathan Gray
55ba81f0de
Give user preference for selection precidence over plugin setting
2011-03-28 21:12:44 +00:00
Nathan Gray
e9c7e8b84d
Make link to definitions work in Stylite template
2011-03-24 17:36:02 +00:00
Nathan Gray
e12406b486
Show link to define imports | exports in sidebox for apps that support it
2011-03-24 15:17:59 +00:00
Nathan Gray
89905fe2e8
If appname is passed in on URL, make appname read-only
2011-03-24 15:17:15 +00:00
Nathan Gray
58248a252d
Add default 'Select...' option each time, make sure definition is cleared when changing definition list
2011-03-21 19:05:33 +00:00
Nathan Gray
9f20d116b6
Fix date comparison when importing definitions
2011-03-21 17:35:53 +00:00
Nathan Gray
bba2a4c2bb
Make sure options is an array before trying to unset a sub-key
2011-03-21 17:13:25 +00:00
Nathan Gray
f43c3c7c13
Avoid warnings if no definitions found in file
2011-03-21 14:12:37 +00:00
Nathan Gray
2d20b29cee
Fix automatic field mapping when a mapping field is an array (addressbook categories)
2011-03-17 14:34:10 +00:00
Nathan Gray
66f120ff2e
Add optional parent parameter for new categories
2011-03-16 23:29:42 +00:00
Nathan Gray
83bbea7669
Try to set some default values for export definitions
2011-03-16 17:07:32 +00:00
Nathan Gray
2e752e17b6
Enhance account name -> ID to be able to handle user names in Lastname, Firstname format
2011-03-16 16:50:28 +00:00
Nathan Gray
d02eec55fb
Trim extra whitespace from category name
2011-03-16 15:53:11 +00:00
Nathan Gray
f3536a72bf
Improve error message for import errors. Just because there was an error doesn't mean the record wasn't imported using default info
2011-03-15 16:18:13 +00:00
Nathan Gray
9f32100656
Make account name->id translator able to handle full usernames and groups listed as Group, name
2011-03-15 00:01:23 +00:00
Nathan Gray
c94a591fee
Make account name->id translator able to handle any IDs that are passed
2011-03-14 23:42:24 +00:00
Nathan Gray
da16cd319c
Set default export-<appname> definitions as the site-wide default if no default is set
2011-03-14 23:07:46 +00:00
Nathan Gray
49bf54aace
More agressive filtering on schedule options - all subsequent options start filtered
2011-03-14 20:55:42 +00:00
Nathan Gray
93241a65c5
Merge recursive to preserve sub-arrays
2011-03-14 20:39:54 +00:00