Commit Graph

481 Commits

Author SHA1 Message Date
Nathan Gray
3ba557f4b8 Use select_all flag to export all entries, not just visible selected ones. 2014-07-07 16:47:08 +00:00
Nathan Gray
3405d58c67 Allow including record indexes in regex pattern 2014-06-18 17:25:48 +00:00
Nathan Gray
0033464585 - Re-add extra fields for import
- Add special field to link to another entry by custom field value
2014-06-17 22:36:17 +00:00
Nathan Gray
5dc1ad5e04 Add support for some special fields to the base class
- contact - searches n_last,n_first,org_name and links the row entry to the first matching contact
- link_search - as contact, but searches any app using link_query, and links the row entry to the first matching entry
- link_0 - Links the row entry to the given existing entry row entry should be in the form appname:id
2014-06-16 20:05:06 +00:00
Nathan Gray
e7caf2a9f0 Add default implementation of equal and less_than condition functions, fix problem with blanks in mapping 2014-06-16 16:21:22 +00:00
Nathan Gray
2b2a6e2261 Add visible message if preview is not supported, instead of just nothing. 2014-06-04 14:29:08 +00:00
Nathan Gray
54b447ce98 No need to clear selected plugin just because user pressed 'back', if they choose a different app they'll just have to pick a different plugin 2014-05-14 15:53:38 +00:00
Nathan Gray
e6eda6ddc8 - Fix Execute context menu action
- Fix missing import preview OK button
- Fix message mangled by et2
- Try to prevent session/request collection from destroying
2014-05-13 21:21:56 +00:00
Nathan Gray
bf50886798 Fix missing field mapping if editing an existing definition 2014-05-12 22:31:15 +00:00
Nathan Gray
4d64856fcd Add some more time every 100 rows as long as things are still going 2014-05-05 20:44:51 +00:00
Nathan Gray
f5dc2d6903 Abort import if more than 100 errors are encountered.
Prevents request from dying if you upload a large, bad, file
2014-05-05 20:30:06 +00:00
Nathan Gray
b79ff8d4ed Avoid warning if value is not an array 2014-04-30 16:52:34 +00:00
Nathan Gray
45a709cc62 Remove legacy action columns & associated readonlys 2014-02-27 21:27:14 +00:00
Nathan Gray
a82580211e Fix changing owner or allowed by context menu 2014-02-19 22:37:30 +00:00
Nathan Gray
03c5e925c8 - Add 'Add' button above nextmatch
- Add placeholder action to add when there are no rows
2014-02-19 00:05:03 +00:00
Nathan Gray
85661439f1 Fix Allowed users:'All users' always checked 2014-02-18 23:38:51 +00:00
Nathan Gray
75bd91c79d Don't use msg as ID for step instructions, it gets grabbed by framework message stuff, and disappears.
Also, silence an error_log and avoid a warning
2014-02-18 23:29:30 +00:00
Nathan Gray
9838d6e2d8 Remove iframe for import/export definition list 2014-01-17 14:01:30 +00:00
Nathan Gray
001d3176e1 Fix definition export 2013-12-02 23:31:00 +00:00
Nathan Gray
d58a25bbfc Fix not shown import errors & warnings 2013-12-02 23:26:22 +00:00
Nathan Gray
0befd85d04 Make sure definition edit opens as popup 2013-11-15 19:58:50 +00:00
Nathan Gray
d4be70de5a - Use a hook for app's custom widgets to avoid scanning filesystem
- Use new hook to load importexport's filter widget
- Remove some typos & error_log()s
2013-11-04 17:23:58 +00:00
Nathan Gray
7f98f428a0 Adapt importexport for etemplate2 2013-11-01 22:04:43 +00:00
Nathan Gray
2d2462c825 Remove spreadsheet merge print selectbox from sidebox 2013-10-24 19:40:27 +00:00
Ralf Becker
f8a0db06fc completly remove preferences menu from sidebox and tiled preferences index in favoir of app-sensitive entries in top-menu 2013-10-03 09:23:18 +00:00
Nathan Gray
580d8c15a3 Understand user number preference when importing and exporting floats 2013-09-04 15:15:55 +00:00
Nathan Gray
addb422abe When exporting as human values, format floats according to user preferences. 2013-09-04 14:27:43 +00:00
Nathan Gray
17634bd72a Pass proper variable type (array) to exec 2013-06-24 17:40:44 +00:00
Nathan Gray
73cba1f328 Avoid duplicate parsing of usernames with [login] 2013-06-03 19:24:05 +00:00
Nathan Gray
f254a90613 Increase import dialog size 2013-06-03 18:24:40 +00:00
Nathan Gray
89f7ced72d Fix customfields of type home-accounts not being converted 2013-06-03 14:54:51 +00:00
Nathan Gray
ae69fbfe8e Filter by plugin, if passed in via 2013-05-29 20:47:34 +00:00
Nathan Gray
f38dee97c5 If wizard dosesn't have translated field name, we have to translate it explicitly 2013-05-13 16:05:30 +00:00
Nathan Gray
a004c7f4ea Fix missed usage of user charset preference in CSV check 2013-05-13 15:53:17 +00:00
Nathan Gray
fc8bb745d7 Improve handling of headers, checking translations and message_id 2013-04-23 20:04:51 +00:00
Nathan Gray
2f7af7fa25 Load applications translations for header check, add field name to invalid user warning 2013-04-04 16:47:39 +00:00
Nathan Gray
1f0baecf0e Fix up plugin selector - expert mode is disabled, so just set it to read only 2013-04-03 15:55:34 +00:00
Nathan Gray
885a5fdfc7 Also accept the translated version of the column name when checking an imported file 2013-04-01 23:27:16 +00:00
Nathan Gray
d226d759cd Add check for [username] when trying to convert a user to account ID 2013-03-14 19:34:12 +00:00
Ralf Becker
ea6e8c8e94 * ImportExport: do NOT complain about wrong charset, if text contains only standard ascii chars 2013-03-01 09:51:02 +00:00
Nathan Gray
9205c30a45 Fix import no longer working 2013-02-20 16:17:03 +00:00
Klaus Leithoff
898b020fbf only try to save a definition, when there is a definition_id available 2013-02-06 15:17:33 +00:00
Nathan Gray
8f1ab82083 Hopefully better fix for cleared filters sticking around 2013-01-31 16:20:23 +00:00
Nathan Gray
31eed45551 Fix bug that did not let you select All for relative date 2013-01-30 17:58:59 +00:00
Nathan Gray
b5d049f3d5 Get ical export working for scheduled export 2013-01-29 18:22:46 +00:00
Nathan Gray
7b668c306d Fix selected scheduled definition not getting saved 2013-01-29 17:47:42 +00:00
Nathan Gray
8a3f81c77c Stop using a preference for selection default. If the definition has a filter set, use filter, otherwise default to search results 2013-01-24 17:24:04 +00:00
Nathan Gray
117ca80a70 Fix hidden filters when preference is for filter 2013-01-23 19:44:15 +00:00
Nathan Gray
6dde257d66 Exclude All or Select... options from select filters 2013-01-23 18:14:53 +00:00
Nathan Gray
31d717643c Fix selection choice default 2013-01-23 17:44:03 +00:00
Nathan Gray
dc5ed0acac Allow 0 as a filter value 2013-01-23 17:24:12 +00:00
Nathan Gray
a01b53a2b3 Fix cannot edit schedules 2013-01-23 16:21:06 +00:00
Nathan Gray
627fa6fc9c Encode ID to avoid problems with special chars 2013-01-22 16:53:24 +00:00
Nathan Gray
3102550f37 Fix selection tab plugin data 2013-01-21 18:59:33 +00:00
Nathan Gray
270d8a9145 If app has no filterable fields, skip that step 2013-01-09 19:42:21 +00:00
Nathan Gray
34b64e7a7b Fix incorrect warning 'Group, Group is not a known user or group' 2013-01-08 16:14:37 +00:00
Nathan Gray
6d826f49eb Change no records message 2013-01-08 16:03:46 +00:00
Nathan Gray
88d1c1eefa If a link match can't be found, do not clear the field but leave it so the plugin can try 2013-01-08 15:56:11 +00:00
Nathan Gray
89b4ce31e8 - Add message if no records available for export using selected settings
- Improve export preview a little
2013-01-07 18:25:53 +00:00
Nathan Gray
761848c76f Only the last 3 months (exclusive of current) for 'Last 3 months' 2013-01-03 16:58:38 +00:00
Nathan Gray
3a1c4fb7fb Try to catch some errors 2013-01-03 15:53:31 +00:00
Nathan Gray
21fdd9abf2 Avoid some errors from apps/plugins that don't do filters 2013-01-02 22:38:43 +00:00
Nathan Gray
c09a9aa61c Fix missing conversion of 0 -> No 2013-01-02 17:30:39 +00:00
Nathan Gray
880e55f9a2 - Move filter step later in wizard
- If user picks an end date in export dialog, set time to 23:59:59 to include that day
2012-12-31 20:59:04 +00:00
Nathan Gray
0a91bc5aa9 Add support for filtering records to be exported.
Filterable fields are attempted to be autodetected by using the exportable fields.
Records can be filtered by fields with type select,select-cat,select-account,date,date-time (according to egw_record class) 
only at this time.  Filters are saved in the definition and used with scheduled exports.  They are also available to the
user for modification in the export dialog.
2012-12-31 20:36:28 +00:00
Nathan Gray
8ff5f6f99f Improve error messages when linking goes awry 2012-12-19 20:21:51 +00:00
Nathan Gray
2f1e5b5078 Fix no notifications checkbox 2012-12-19 20:06:13 +00:00
Nathan Gray
e99ab7aff5 Fix link conversion only works the first time 2012-12-18 16:36:05 +00:00
Nathan Gray
2f2ad58e98 Implement 'No notifications' flag when importing iCal 2012-12-17 23:56:56 +00:00
Nathan Gray
0791bbb9f1 Implement importing fields that are primary keys/links to a record in another app 2012-12-17 18:50:03 +00:00
Nathan Gray
e4133aa210 Clear all users or Just me checkboxes 2012-12-04 22:55:48 +00:00
Nathan Gray
bff2bdc6d6 - Clear owner & allowed popups after changing
- Make allowed popup user selection not look disabled
2012-12-03 22:43:47 +00:00
Nathan Gray
57cc6dba1a Default application filter to the application you were just in 2012-12-03 21:55:52 +00:00
Nathan Gray
69c2466ed3 If user is admin, show the admin Import/Export sidebox with the definition list 2012-12-03 21:46:55 +00:00
Ralf Becker
c8dad27c8a remove file stalling openSUSE 12.4 builds 2012-12-03 03:30:39 +00:00
Nathan Gray
90d5428b9e Do not consider stop flag when clearing empty conditions 2012-11-26 18:07:13 +00:00
Nathan Gray
e36ccd9e10 Number of columns in file must match number of columns in sample file given to definition instead of number of columns imported (to get non-imported columns working again) 2012-11-22 16:02:18 +00:00
Nathan Gray
4fc8903129 Fix bug where user preference for addressbook vCard was not used in some cases 2012-11-15 17:11:31 +00:00
Nathan Gray
aec907a8f8 Use local category object specific to definition app to get permissions 2012-11-08 20:17:49 +00:00
Nathan Gray
e6e27fd29e Add category ACL check to export conversion to human values 2012-10-29 19:18:27 +00:00
Nathan Gray
9f4118e947 Use addressbook vCard charset preference for exporting vcards using Import/Export 2012-10-29 18:29:40 +00:00
Nathan Gray
084a5a5b93 Use new translation::detect_encoding() for encoding detection 2012-10-24 16:59:00 +00:00
Nathan Gray
13844bbf17 Automatically change Import/Export sidebox link to just 'Export' if the app has more than one plugin 2012-10-22 17:22:30 +00:00
Nathan Gray
f300f52162 Don't wipe previous mapping if user went back a step 2012-10-18 16:54:09 +00:00
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