Bug 19977: Open only .pref files in Local Use tab (sysprefs)
[koha.git] / admin / edi_ean_accounts.pl
blobd6e8d953c2aea639250c491064cc924792ed3fa9
1 #!/usr/bin/perl
3 # Copyright 2012, 2014 Mark Gavillet & PTFS Europe Ltd
5 # This file is part of Koha.
7 # Koha is free software; you can redistribute it and/or modify it under the
8 # terms of the GNU General Public License as published by the Free Software
9 # Foundation; either version 3 of the License, or (at your option) any later
10 # version.
12 # Koha is distributed in the hope that it will be useful, but WITHOUT ANY
13 # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
14 # A PARTICULAR PURPOSE. See the GNU General Public License for more details.
16 # You should have received a copy of the GNU General Public License along
17 # with Koha; if not, write to the Free Software Foundation, Inc.,
18 # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
20 use strict;
21 use warnings;
22 use CGI;
23 use C4::Auth;
24 use C4::Output;
25 use Koha::Database;
27 my $input = CGI->new();
29 my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
31 template_name => 'admin/edi_ean_accounts.tt',
32 query => $input,
33 type => 'intranet',
34 authnotrequired => 0,
35 flagsrequired => { acquisition => 'edi_manage' },
39 my $schema = Koha::Database->new()->schema();
41 my $id = scalar $input->param('id');
42 my $op = scalar $input->param('op') || 'display';
44 if ( $op eq 'ean_form' ) {
45 my $e = $schema->resultset('EdifactEan')->find($id);
46 my @branches = $schema->resultset('Branch')->search(
47 undef,
49 columns => [ 'branchcode', 'branchname' ],
50 order_by => 'branchname',
53 $template->param(
54 ean_form => 1,
55 branches => \@branches,
56 ean => $e,
59 elsif ( $op eq 'delete_confirm' ) {
60 my $e = $schema->resultset('EdifactEan')->find($id);
61 $template->param(
62 delete_confirm => 1,
63 ean => $e,
66 else {
67 if ( $op eq 'save' ) {
68 my $change = $id;
69 if ($change) {
70 $schema->resultset('EdifactEan')->find($id)->update(
72 branchcode => scalar $input->param('branchcode'),
73 description => scalar $input->param('description'),
74 ean => scalar $input->param('ean'),
75 id_code_qualifier => scalar $input->param('id_code_qualifier'),
79 else {
80 my $new_ean = $schema->resultset('EdifactEan')->new(
82 branchcode => scalar $input->param('branchcode'),
83 description => scalar $input->param('description'),
84 ean => scalar $input->param('ean'),
85 id_code_qualifier => scalar $input->param('id_code_qualifier'),
88 $new_ean->insert();
91 elsif ( $op eq 'delete_confirmed' ) {
92 my $e = $schema->resultset('EdifactEan')->find($id);
93 $e->delete if $e;
95 my @eans = $schema->resultset('EdifactEan')->search(
96 {},
98 join => 'branch',
101 $template->param( display => 1 );
102 $template->param( eans => \@eans );
105 $template->param(
106 code_qualifiers => [
108 code => '14',
109 description => 'EAN International',
112 code => '31B',
113 description => 'US SAN Agency',
116 code => '91',
117 description => 'Assigned by supplier',
120 code => '92',
121 description => 'Assigned by buyer',
126 output_html_with_http_headers( $input, $cookie, $template->output );