Commit Graph

347 Commits

Author SHA1 Message Date
Nathan Gray
34f8f7db08 Prevent new categories from being created during dry-run 2012-10-18 16:38:30 +00:00
Nathan Gray
5132b8e3ca Process the whole file when doing a preview, but only keep a few records for display 2012-10-17 14:49:18 +00:00
Nathan Gray
e75e112598 Allow plugins to suggest download file names 2012-10-16 18:44:33 +00:00
Nathan Gray
d92a2315cb Some documentation updates 2012-10-15 21:28:33 +00:00
Nathan Gray
f34afea1c7 Keep previous CSV-only preview around too 2012-10-12 19:54:39 +00:00
Nathan Gray
2b96aff758 Import / Export cleanup:
- Start reducing some duplication by making better use of common CSV import ancestor
- Work towards a universal preview, regardless of file type
2012-10-12 19:50:26 +00:00
Nathan Gray
dccb36e16a Fix typo causing new/edit definition suggestions to always be shown 2012-10-12 15:53:17 +00:00
Nathan Gray
870d49f881 Show new / edit definition options on any warning 2012-10-12 15:05:29 +00:00
Nathan Gray
68968db0e7 Fix missing conditions 2012-10-11 20:06:41 +00:00
Nathan Gray
d06f3a82ee Try field mapping for both parts of column count check 2012-10-10 18:39:03 +00:00
Nathan Gray
4f76748536 Try translation of lookup values if straight lookup fails 2012-10-10 15:58:58 +00:00
Nathan Gray
844298f779 Ignore case when searching for lookup matches 2012-10-10 15:04:50 +00:00
Nathan Gray
a0a3cfb4fc Still check original file columns 2012-10-09 15:55:57 +00:00
Nathan Gray
d7316f76ad Use mapped columns instead of original file columns to verify file. Still not perfect, but maybe better? 2012-10-09 15:53:45 +00:00
Nathan Gray
72e6f6f8f4 Remove duplicate conditions, causes double action 2012-10-09 15:43:59 +00:00
Nathan Gray
5ef7306342 Reload import popup if user wants to create new definition to avoid a re-submit with the old definition when the new definition wizard finishes 2012-09-20 16:11:14 +00:00
Nathan Gray
86f334bbf0 - Don't try a CSV preview on non-csv files
- Skip plugin definition wizards
2012-09-18 19:04:31 +00:00
Nathan Gray
0fa73a76a1 A condition with a True action must have a False action. Pick 'none' if not specified 2012-09-17 16:22:39 +00:00
Nathan Gray
a32b7186c2 Supply app tab for jdots refresh 2012-09-13 17:13:19 +00:00
Nathan Gray
9139c11dc5 - Better messages if import file has a problem
- Reload opening window when definition wizard is done
2012-09-12 17:55:13 +00:00
Nathan Gray
07f50bb264 Fix 'Application importexport not found' error in jdots by setting app to 'admin' in link 2012-09-12 17:10:45 +00:00
Nathan Gray
a3cf69c97c - Make highlight of non-mapped columns stick around
- Fix file upload missing if you use previous button
2012-09-12 16:43:20 +00:00
Nathan Gray
ab89c8c1a8 Highlight columns that won't be imported 2012-09-06 22:52:46 +00:00
Nathan Gray
b38775db65 - Uploading a new file to a definition fully clears mapping - should fix some of the mapping confusion
- Add new / edit definition links in import dialog now open in new window, at the correct step
- Reworked import file checking
2012-09-06 21:50:58 +00:00
Nathan Gray
6615964c39 Import export dialog - Add suggestion for admin to take a backup before importing
- Add links to add new or edit definition (subject to access rules) if an exception happens (column mis-match, import plugin error)
2012-09-05 20:02:03 +00:00
Nathan Gray
29e52fc727 Enforce at least the right number of columns in import file vs definition, even if we can't tell what the columns are 2012-09-04 22:45:55 +00:00
Nathan Gray
a85fdb63a0 Add a check & warning on mismatched encoding. Conversion will happen automatically, but warn if we know it will happen. 2012-09-04 22:39:15 +00:00
Ralf Becker
20346395d7 fixed typo causing extension to be lost 2012-07-03 14:24:07 +00:00
Ralf Becker
ef0cc4f6bd * ImportExport: fixed not working export in IE8 (seems to choke on Content-Disposition: attachment header) 2012-07-02 15:43:17 +00:00
Nathan Gray
343deeab7c Add 'All users' option to allowed users in definition list popup 2012-06-20 17:34:03 +00:00
Nathan Gray
f3f0406471 Add All users permission option 2012-06-05 21:50:34 +00:00
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