diff --git a/email-fragments.txt.example b/email-fragments.txt.example new file mode 100644 index 0000000..512269f --- /dev/null +++ b/email-fragments.txt.example @@ -0,0 +1,29 @@ +¤¤ sv_new_loans_intro ¤¤ +Det här är ett automatiskt meddelande från Helpdesk. + +¤¤ en_new_loans_intro ¤¤ +This is an automated message from Helpdesk. + +¤¤ sv_reminder_intro ¤¤ +Det här är en automatisk påminnelse om lånade artiklar från Helpdesk. + +¤¤ en_reminder_intro ¤¤ +This is an automated reminder regarding items on loan from Helpdesk. + +¤¤ sv_new_loans_pickup ¤¤ +Eventuella artiklar du inte hämtat ut redan kan hämtas från Helpdesk. + +¤¤ en_new_loans_pickup ¤¤ +Any products you haven't already picked up can be collected from Helpdesk. + +¤¤ sv_return_info ¤¤ +Vänligen kontakta Helpdesk för att förlänga ¤loan¤ eller lämna tillbaka ¤product¤. + +¤¤ en_return_info ¤¤ +Please contact Helpdesk in order to extend the ¤loan¤ or return the ¤product¤. + +¤¤ footer ¤¤ +Mvh +DSV Helpdesk +helpdesk@dsv.su.se +08 - 16 16 48 diff --git a/include/Cron.php b/include/Cron.php index 9fcaed8..3d58a3f 100644 --- a/include/Cron.php +++ b/include/Cron.php @@ -15,6 +15,7 @@ class Cron { $this->run_interval = DateInterval::createFromDateString('1 day'); $this->kvs = new Kvs(); $this->ldap = new Ldap(); + $this->email_fragments = get_fragments('./email-fragments.txt'); $days = $this->warn_time->d; $this->strings = array( @@ -148,18 +149,21 @@ class Cron { $info_sv = array(); $info_en = array(); if($new_count > 0) { - $info_sv[] = "Eventuella artiklar du inte hämtat ut redan kan hämtas från Helpdesk."; - $info_en[] = "Any products you haven't already picked up can be collected from Helpdesk."; + $info_sv[] = $this->email_fragments['sv_new_loans_pickup']; + $info_en[] = $this->email_fragments['en_new_loans_pickup']; } $info_sv[] = "Svara på det här mailet om du har några frågor."; $info_en[] = "Please reply to this email if you have any questions."; $info_sv = implode(' ', $info_sv); $info_en = implode(' ', $info_en); + $intro_sv = $this->email_fragments['sv_new_loans_intro']; + $intro_en = $this->email_fragments['en_new_loans_intro']; + $footer = $this->email_fragments['footer']; $message = <<<EOF Hej $name! -Det här är ett automatiskt meddelande från Helpdesk. +$intro_sv $list_sv @@ -167,17 +171,13 @@ $info_sv ---- -This is an automated message from Helpdesk. +$intro_en $list_en $info_en -Mvh -DSV Helpdesk -helpdesk@dsv.su.se -08 - 16 16 48 - +$footer EOF; $this->send_email($uid, $subject, $message); } @@ -262,7 +262,9 @@ EOF; $loan = "lånet"; $product = "artikeln"; } - return "Vänligen kontakta Helpdesk för att förlänga $loan eller lämna tillbaka $product."; + return replace(array('loan' => $loan, + 'product' => $product), + $this->email_fragments['sv_return_info']); break; case 'en': if($count > 1) { @@ -272,7 +274,9 @@ EOF; $loan = "loan"; $product = "item"; } - return "Please contact Helpdesk in order to extend the $loan or return the $product."; + return replace(array('loan' => $loan, + 'product' => $product), + $this->email_fragments['en_return_info']); break; default: throw new Exception("Invalid language: ".$lang); @@ -291,6 +295,9 @@ EOF; $subject = $this->make_reminder_subject($expiring_count, $overdue_count); + $intro_sv = $this->email_fragments['sv_reminder_intro']; + $intro_en = $this->email_fragments['en_reminder_intro']; + $info_sv = array(); $info_en = array(); if($expiring_count > 0) { @@ -302,15 +309,17 @@ EOF; $info_en[] = $this->make_notice('en', 'overdue', $overdue); } $info_sv = implode("\n\n", $info_sv); - $returns_sv = $this->make_return_info('sv', $total); - $info_en = implode("\n\n", $info_en); + + $returns_sv = $this->make_return_info('sv', $total); $returns_en = $this->make_return_info('en', $total); + $footer = $this->email_fragments['footer']; + $message = <<<EOF Hej $name! -Det här är en automatisk påminnelse om lånade artiklar från Helpdesk. +$intro_sv $info_sv @@ -318,17 +327,13 @@ $returns_sv ---- -This is an automated reminder regarding items on loan from Helpdesk. +$intro_en $info_en $returns_en -Mvh -DSV Helpdesk -helpdesk@dsv.su.se -08 - 16 16 48 - +$footer EOF; $this->send_email($uid, $subject, $message); }