@@ -, +, @@
in db
---
acqui/basket.pl | 2 +-
basket/basket.pl | 2 +-
basket/downloadcart.pl | 2 +-
installer/data/mysql/atomicupdate/bug_8612.sql | 5 ++-
installer/data/mysql/kohastructure.sql | 1 +
.../prog/en/modules/tools/csv-profiles.tt | 41 +++++++++++++++++++---
opac/opac-downloadcart.pl | 2 +-
opac/opac-downloadshelf.pl | 2 +-
serials/claims.pl | 2 +-
t/db_dependent/Koha/CsvProfiles.t | 5 +--
tools/csv-profiles.pl | 6 ++++
tools/export.pl | 2 +-
virtualshelves/downloadshelf.pl | 2 +-
virtualshelves/shelves.pl | 2 +-
14 files changed, 60 insertions(+), 16 deletions(-)
--- a/acqui/basket.pl
+++ a/acqui/basket.pl
@@ -431,7 +431,7 @@ if ( $op eq 'list' ) {
unclosable => @orders ? $basket->{is_standing} : 1,
has_budgets => $has_budgets,
duplinbatch => $duplinbatch,
- csv_profiles => [ Koha::CsvProfiles->search({ type => 'export_basket' }) ],
+ csv_profiles => [ Koha::CsvProfiles->search({ type => 'sql', used_for => 'export_basket' }) ],
);
}
--- a/basket/basket.pl
+++ a/basket/basket.pl
@@ -122,7 +122,7 @@ my $resultsarray = \@results;
$template->param(
BIBLIO_RESULTS => $resultsarray,
- csv_profiles => [ Koha::CsvProfiles->search({ type => 'marc' }) ],
+ csv_profiles => [ Koha::CsvProfiles->search({ type => 'marc', used_for => 'export_records' }) ],
bib_list => $bib_list,
);
--- a/basket/downloadcart.pl
+++ a/basket/downloadcart.pl
@@ -90,7 +90,7 @@ if ($bib_list && $format) {
print $output;
} else {
- $template->param(csv_profiles => [ Koha::CsvProfiles->search({ type => 'marc' }) ]);
+ $template->param(csv_profiles => [ Koha::CsvProfiles->search({ type => 'marc', used_for => 'export_records' }) ]);
$template->param(bib_list => $bib_list);
output_html_with_http_headers $query, $cookie, $template->output;
}
--- a/installer/data/mysql/atomicupdate/bug_8612.sql
+++ a/installer/data/mysql/atomicupdate/bug_8612.sql
@@ -1, +1,4 @@
-UPDATE export_format SET type = 'late_issues' WHERE type ='sql';
+ALTER TABLE export_format ADD used_for varchar(255) DEFAULT 'export_records' AFTER type;
+
+UPDATE export_format SET used_for = 'late_issues' WHERE type = 'sql';
+UPDATE export_format SET used_for = 'export_records' WHERE type = 'marc';
--- a/installer/data/mysql/kohastructure.sql
+++ a/installer/data/mysql/kohastructure.sql
@@ -713,6 +713,7 @@ CREATE TABLE `export_format` (
`subfield_separator` varchar(2) NOT NULL,
`encoding` varchar(255) NOT NULL,
`type` varchar(255) DEFAULT 'marc',
+ `usage` varchar(255) DEFAULT 'export_records',
PRIMARY KEY (`export_format_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Used for CSV export';
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/csv-profiles.tt
+++ a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/csv-profiles.tt
@@ -102,13 +102,20 @@ function reloadPage(p) {
[% END %]
[% BLOCK type_description %]
- [% IF type_code == 'marc' %] MARC for export records
- [% ELSIF type_code == 'late_issues' %] SQL for late serial issues claims
- [% ELSIF type_code == 'export_basket' %] SQL for basket export in acquisition
+ [% IF type_code == 'marc' %] MARC
+ [% ELSIF type_code == 'sql' %] SQL
[% ELSE %] Uknown type
[% END %]
[% END %]
+[% BLOCK used_for_description %]
+ [% IF used_for_code == 'export_records' %] Export records
+ [% ELSIF used_for_code == 'late_issues' %] Late serial issues claims
+ [% ELSIF used_for_code == 'export_basket' %] Basket export in acquisition
+ [% ELSE %] Uknown usage
+ [% END %]
+[% END %]
+
[% IF op == 'add_form' %]
[% IF csv_profile %]
Modify a CSV profile
@@ -132,7 +139,7 @@ function reloadPage(p) {
Required
+
+
+
+
+
+
+
+
@@ -242,6 +273,7 @@ function reloadPage(p) {
Content |
CSV separator |
CSV type |
+ Usage |
|
|
@@ -254,6 +286,7 @@ function reloadPage(p) {
[% csv_profile.content %] |
[% csv_profile.csv_separator %] |
[% PROCESS type_description type_code = csv_profile.type %] |
+ [% PROCESS used_for_description used_for_code = csv_profile.used_for %] |
Edit |
Delete |
--- a/opac/opac-downloadcart.pl
+++ a/opac/opac-downloadcart.pl
@@ -111,7 +111,7 @@ if ($bib_list && $format) {
print $output;
} else {
- $template->param(csv_profiles => [ Koha::CsvProfiles->search({ type => 'marc' }) ]);
+ $template->param(csv_profiles => [ Koha::CsvProfiles->search({ type => 'marc', used_for => 'export_records' }) ]);
$template->param(bib_list => $bib_list);
output_html_with_http_headers $query, $cookie, $template->output;
}
--- a/opac/opac-downloadshelf.pl
+++ a/opac/opac-downloadshelf.pl
@@ -129,7 +129,7 @@ if ( $shelf and $shelf->can_be_viewed( $borrowernumber ) ) {
} else {
$template->param(fullpage => 1);
}
- $template->param(csv_profiles => [ Koha::CsvProfiles->search({ type => 'marc' }) ]);
+ $template->param(csv_profiles => [ Koha::CsvProfiles->search({ type => 'marc', used_for => 'export_records' }) ]);
$template->param( shelf => $shelf );
output_html_with_http_headers $query, $cookie, $template->output;
}
--- a/serials/claims.pl
+++ a/serials/claims.pl
@@ -104,7 +104,7 @@ $template->param(
supplierid => $supplierid,
claimletter => $claimletter,
additional_fields_for_subscription => $additional_fields,
- csv_profiles => [ Koha::CsvProfiles->search({ type => 'late_issues' }) ],
+ csv_profiles => [ Koha::CsvProfiles->search({ type => 'sql', used_for => 'late_issues' }) ],
letters => $letters,
(uc(C4::Context->preference("marcflavour"))) => 1
);
--- a/t/db_dependent/Koha/CsvProfiles.t
+++ a/t/db_dependent/Koha/CsvProfiles.t
@@ -35,12 +35,13 @@ my $nb_of_csv_profiles = Koha::CsvProfiles->search->count;
my $new_csv_profile_1 = Koha::CsvProfile->new({
profile => 'my_csv_profile_name_for_test_1',
description => 'my_csv_profile_description_for_test_1',
- type => 'late_issues'
+ type => 'sql',
+ used_for => 'late_issues'
})->store;
my $new_csv_profile_2 = Koha::CsvProfile->new({
profile => 'my_csv_profile_name_for_test_2',
description => 'my_csv_profile_description_for_test_2',
- type => 'marc',
+ type => 'marc'
})->store;
like( $new_csv_profile_1->export_format_id, qr|^\d+$|, 'Adding a new csv_profile should have set the export_format_id');
--- a/tools/csv-profiles.pl
+++ a/tools/csv-profiles.pl
@@ -72,6 +72,10 @@ if ( $op eq 'add_form' ) {
my $profile = $input->param("profile");
my $description = $input->param("description");
my $type = $input->param("type");
+ my $used_for =
+ $type eq "marc"
+ ? $input->param("used_for_marc")
+ : $input->param("used_for_sql");
my $content =
$type eq "marc"
? $input->param("marc_content")
@@ -92,6 +96,7 @@ if ( $op eq 'add_form' ) {
$csv_profile->subfield_separator($subfield_separator);
$csv_profile->encoding($encoding);
$csv_profile->type($type);
+ $csv_profile->used_for($used_for);
eval { $csv_profile->store; };
if ($@) {
@@ -109,6 +114,7 @@ if ( $op eq 'add_form' ) {
subfield_separator => $subfield_separator,
encoding => $encoding,
type => $type,
+ used_for => $used_for,
}
);
eval { $csv_profile->store; };
--- a/tools/export.pl
+++ a/tools/export.pl
@@ -300,7 +300,7 @@ else {
itemtypes => $itemtypes,
authority_types => $authority_types,
export_remove_fields => C4::Context->preference("ExportRemoveFields"),
- csv_profiles => [ Koha::CsvProfiles->search({ type => 'marc' }) ],
+ csv_profiles => [ Koha::CsvProfiles->search({ type => 'marc', used_for => 'export_records' }) ],
messages => \@messages,
);
--- a/virtualshelves/downloadshelf.pl
+++ a/virtualshelves/downloadshelf.pl
@@ -101,7 +101,7 @@ if ($shelfid && $format) {
}
}
else {
- $template->param(csv_profiles => [ Koha::CsvProfiles->search({ type => 'marc' }) ]);
+ $template->param(csv_profiles => [ Koha::CsvProfiles->search({ type => 'marc', used_for => 'export_records' }) ]);
$template->param(shelfid => $shelfid);
}
$template->param( messages => \@messages );
--- a/virtualshelves/shelves.pl
+++ a/virtualshelves/shelves.pl
@@ -324,7 +324,7 @@ $template->param(
messages => \@messages,
category => $category,
print => scalar $query->param('print') || 0,
- csv_profiles => [ Koha::CsvProfiles->search({ type => 'marc' }) ],
+ csv_profiles => [ Koha::CsvProfiles->search({ type => 'marc', used_for => 'export_records' }) ],
);
output_html_with_http_headers $query, $cookie, $template->output;
--