fix for #478 in parameters section
[koha.git] / opac / opac-userupdate.pl
index 3fda4a9..a34c638 100755 (executable)
@@ -4,21 +4,26 @@ require Exporter;
 use CGI;
 use Mail::Sendmail;
 
-use C4::Output;       # gettemplate
 use C4::Auth;         # checkauth, getborrowernumber.
+use C4::Context;
 use C4::Koha;
 use C4::Circulation::Circ2;
-
+use C4::Interface::CGI::Output;
+use HTML::Template;
+use C4::Date;
 
 my $query = new CGI;
 
-my $flagsrequired;
-$flagsrequired->{borrow}=1;
-
-my ($loggedinuser, $cookie, $sessionID) = checkauth($query, 0, $flagsrequired);
+my ($template, $borrowernumber, $cookie) 
+    = get_template_and_user({template_name => "opac-userupdate.tmpl",
+                            query => $query,
+                            type => "opac",
+                            authnotrequired => 0,
+                            flagsrequired => {borrow => 1},
+                            debug => 1,
+                            });
 
 # get borrower information ....
-my $borrowernumber = getborrowernumber($loggedinuser);
 my ($borr, $flags) = getpatroninformation(undef, $borrowernumber);
 
 
@@ -26,13 +31,31 @@ my ($borr, $flags) = getpatroninformation(undef, $borrowernumber);
 # collect the form values and send an email.
 my @fields = ('title', 'surname', 'firstname', 'phone', 'faxnumber', 'streetaddress', 'emailaddress', 'city');
 my $update;
-my $updateemailaddress = "finlay\@katipo.co.nz";      #Will have to change this! !!!!!!!!!!!!!!!!!!!
+my $updateemailaddress= C4::Context->preference('KohaAdminEmailAddress');
+if ($updateemailaddress eq '') {
+    warn "KohaAdminEmailAddress system preference not set.  Couldn't send patron update information for $borr->{'firstname'} $borr->{'surname'} (#$borrowernumber)\n";
+    my($template) = get_template_and_user({template_name => "kohaerror.tmpl",
+                            query => $query,
+                            type => "opac",
+                            authnotrequired => 1,
+                            flagsrequired => {borrow => 1},
+                            debug => 1,
+                            });
+
+    $template->param(errormessage => 'KohaAdminEmailAddress system preference
+    is not set.  Please visit the library to update your user record');
+
+    output_html_with_http_headers $query, $cookie, $template->output;
+    exit;
+}
+
 if ($query->{'title'}) {
     # get all the fields:
     my $message = <<"EOF";
-Borrower $borr->{'cardnumber'} http://intradev.katipo.co.nz/cgi-bin/koha/moremember.pl?bornum=$borrowernumber
+Borrower $borr->{'cardnumber'}
 
-has requested to change their personal details. Please check these new details and make the changes:
+has requested to change her/his personal details.
+Please check these new details and make the changes:
 EOF
     foreach my $field (@fields){
        my $newfield = $query->param($field);
@@ -47,18 +70,17 @@ EOF
 # do something if it works....
        warn "Mail sent ok\n";
        print $query->redirect('/cgi-bin/koha/opac-user.pl');
+       exit;
     } else {
 # do something if it doesnt work....
         warn "Error sending mail: $Mail::Sendmail::error \n";
     }
 }
 
-my $template = gettemplate("opac-userupdate.tmpl", "opac");
 
-
-$borr->{'dateenrolled'} = slashifyDate($borr->{'dateenrolled'});
-$borr->{'expiry'}       = slashifyDate($borr->{'expiry'});
-$borr->{'dateofbirth'}  = slashifyDate($borr->{'dateofbirth'});
+$borr->{'dateenrolled'} = format_date($borr->{'dateenrolled'});
+$borr->{'expiry'}       = format_date($borr->{'expiry'});
+$borr->{'dateofbirth'}  = format_date($borr->{'dateofbirth'});
 $borr->{'ethnicity'}    = fixEthnicity($borr->{'ethnicity'});
 
 
@@ -67,7 +89,4 @@ $bordat[0] = $borr;
 
 $template->param(BORROWER_INFO => \@bordat);
 
-
-$template->param(loggedinuser => $loggedinuser);
-
-print "Content-Type: text/html\n\n", $template->output;
+output_html_with_http_headers $query, $cookie, $template->output;