Commit Graph

506 Commits

Author SHA1 Message Date
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
411fe5eca6 Add explanation to conditions step 2012-09-06 23:05:50 +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
ff7c90c114 more translations from Gudrun, Ingo & Stefan 2012-08-16 14:43:44 +00:00
Ralf Becker
6c6eeed21c more translations from Gudrun, Ingo & Stefan 2012-08-16 14:41:57 +00:00
Ralf Becker
c8d8928486 pending translations from translation.stylite.de plus merge of trunk translations 2012-08-08 12:12:59 +00:00
Ralf Becker
e913a6a263 pending translations from translation.stylite.de 2012-08-08 12:11:04 +00:00
Ralf Becker
195069850b fixed typo causing extension to be lost 2012-07-03 14:24:51 +00:00
Ralf Becker
20346395d7 fixed typo causing extension to be lost 2012-07-03 14:24:07 +00:00
Ralf Becker
f0a59cb787 * ImportExport: fixed not working export in IE8 (seems to choke on Content-Disposition: attachment header) 2012-07-02 15:43:38 +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
6c708791a2 * Add All users permission option for easier maintenance 2012-06-25 20:30:38 +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
Klaus Leithoff
fd4d63f4d8 throw exception if there are no app profiles available for export 2012-05-29 11:03:57 +00:00
Nathan Gray
4aebbb187e 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-25 14:21:19 +00:00
Nathan Gray
aa9687e6b5 Fixes for scheduled exporting 2012-04-24 16:06:31 +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
8d8a80c26a Fix human values in infolog export 2012-04-24 14:04:09 +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
Ralf Becker
e8377f28cf More rigorous checking on empty / missing date - set to null, not blank 2012-04-13 08:27:40 +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
Nathan Gray
c87887d11f Change addressbook Export CSV context menu option to use importexport 2012-04-02 16:35:03 +00:00
Nathan Gray
0a9a1736ca Change error output from STDERR to error_log 2012-04-02 14:37:14 +00:00
Ralf Becker
f609efbdd8 * ImportExport/Tracker: timeout left num-rows set to -1, causing nextmatch to try to display full list on next login 2012-03-29 10:45:08 +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
9319cfd8c4 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:23:59 +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
e973f8dd0e Log the format attempted
r38201: Give a warning if imported type is not valid
r38218: Add current record to the end of errors / warnings
r38244: Make warning about missing type into error
2012-03-06 15:54:34 +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
5c843ed783 Reset warnings before starting import
r38035: - Fix sorting by modification time to handle files changed at the same time
- Catch exceptions for logging
r38036: Lock import/export job while running, to prevent multiple instances.
2012-02-17 20:19:31 +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
b537ac9d81 Fix import CSV date/times to correctly handle differences in user time 2012-02-08 16:47:46 +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
a18c32c824 Record run time of scheduled job 2012-02-02 17:16:55 +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
820d9dca0c - When converting account names to IDs, remove successful conversions so user can be warned about unsuccessful ones
- Return warnings from conversion
2012-01-26 15:32:13 +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
8253598419 Stop double encoding on export file header 2012-01-10 19:46:09 +00:00
Nathan Gray
0a11e30692 Refresh opening window after importing 2012-01-09 20:53:06 +00:00
Nathan Gray
cbf5203c8b Remove double charset conversion on header 2012-01-09 20:46:23 +00:00
Nathan Gray
1b6bf633f6 Add missing * 2012-01-09 16:47:24 +00:00
Nathan Gray
651018ddfb Add missing * 2012-01-09 16:05:02 +00:00
Nathan Gray
89f46c6a3b Refresh opening window after import 2012-01-05 18:23:02 +00:00
Nathan Gray
09a512c085 Filter definitions by selected application / plugin 2012-01-04 15:58:51 +00:00
Nathan Gray
9990fe45d6 Filter definitions by selected application / plugin 2011-12-27 16:47:57 +00:00
Nathan Gray
6256a143c7 * Add data preview to import test mode 2011-12-23 16:37:38 +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
0054184aaf * Scheduled import improvements:
- Importing from a remote url over HTTP
- Better display of results in schedule list
- Notification of warnings / errors via notification system
- Import all files in a directory
- Option to delete file(s) after import
2011-12-20 15:45: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
1f077f91d0 Remove comma from exported date/times 2011-12-19 22:48:03 +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
360d45b2f1 Fix scheduled import from remote url 2011-12-16 15:54:02 +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
2a3db54693 Preserve original field names when creating an export definition from an import definition 2011-12-15 15:37:41 +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
Klaus Leithoff
c066acfa5c 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-14 11:02:55 +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
fd57cd738c Take field translations from wizard, if available, otherwise leave them alone 2011-12-12 18:11:11 +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
e272848444 - Fix broken encodings by using export_csv's fputcsv
- Include set charset in HTTP header
2011-12-09 21:08:48 +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
acffb97eb1 Add CP850 to charset list, add configuration option for other available charsets 2011-12-08 16:08:36 +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
Nathan Gray
e4c4ce3d45 fixing an php5.2.x error for ::export... to ->export... - we dont need the static call here anyhow. 2011-12-05 16:14:21 +00:00
Nathan Gray
6032b48c82 * Add ability to create an export definition based on an existing import definition 2011-12-05 16:07:40 +00:00
Nathan Gray
5898109a41 Use PHP's native fputcsv, doesn't appear to cause problems 2011-12-05 15:56:55 +00:00
Nathan Gray
f57b01dd42 Do charset conversion once per line instead of on each field 2011-12-05 15:49:56 +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
176e81cd1c * ImportExport: allow to select "Old fixed definition" in preference for nextmatch export (disk icon) 2011-11-21 10:10:46 +00:00
Ralf Becker
7c9dd8086f changed "No defintion" to "Old fixed definition" 2011-11-21 10:01:08 +00:00
Ralf Becker
77647a9d31 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:51:15 +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
7abfde460c English translation for 'No definition' 2011-11-18 16:29:06 +00:00
Nathan Gray
fe7dddcc0d * Add ability for user to change import/export delimiter when importing / exporting 2011-11-14 16:27:34 +00:00
Nathan Gray
afe5a510db Fix disappearing conditions 2011-11-08 15:55:11 +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
9e2e0e878c Fix error when selecting multiple users/groups for definition sharing 2011-11-03 14:20:13 +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
de6cf8100b Make wizard read-only if user has access to the definition, but is not the owner 2011-10-27 14:14:29 +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
eb924b13cd Add convert option, affects how date/times & categories are parsed 2011-10-26 17:46:11 +00:00
Nathan Gray
60b1b10d9c Fix recursive call until memory exhausted - etemplate mangles onclick 2011-10-26 17:15:19 +00:00
Nathan Gray
a97d5e65d4 eTemplate changes to make wizard steps read-only if user is not owner or admin 2011-10-25 21:56:43 +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
75e54268c6 Fix recursive call until memory exhausted - etemplate mangles in onclick 2011-10-25 19:42:28 +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
55dbf20c33 * calendar/addressbook/importexport/merge-print: introduction of a static function to fetch the export limit, and normalize the possible output: bo_merge::getExportLimit; apply new function to bo_mergen, nextmatch_widget, addressbook, calendar and importexport; introduction of an calendar export limit; introduction of hook to provide appspecific export_limit 2011-09-16 13:23:15 +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
Ralf Becker
884da4b664 "modernized" importexport_cli a bit (removed uneccessary stuff) and added PEAR Console_Getopt dependency 2011-09-15 07:06:33 +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
a3b17caa5f * impportexport/document merge: better control of exportlimits, you are now able to exempt groups or users from any exportlimits set (backport of nathans work, with enhancements from ralf) 2011-09-01 14:32:26 +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
3059bca527 Use similar_text() to try to automatically match import field names to application fields when there's no exact match 2011-08-10 16:09:19 +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
69b0ceed0c Consolidating & simplifying translation phrases 2011-07-11 17:01:55 +00:00
Nathan Gray
a717ab2b59 Send admin or preferences as application, depending on current location 2011-07-06 14:13:09 +00:00