Updated the Cron.php email logic to use configurable fragments instead of hardcoded text
This commit is contained in:
parent
5aaf5654f2
commit
7cb0b1ea57
29
email-fragments.txt.example
Normal file
29
email-fragments.txt.example
Normal file
@ -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
|
@ -15,6 +15,7 @@ class Cron {
|
|||||||
$this->run_interval = DateInterval::createFromDateString('1 day');
|
$this->run_interval = DateInterval::createFromDateString('1 day');
|
||||||
$this->kvs = new Kvs();
|
$this->kvs = new Kvs();
|
||||||
$this->ldap = new Ldap();
|
$this->ldap = new Ldap();
|
||||||
|
$this->email_fragments = get_fragments('./email-fragments.txt');
|
||||||
|
|
||||||
$days = $this->warn_time->d;
|
$days = $this->warn_time->d;
|
||||||
$this->strings = array(
|
$this->strings = array(
|
||||||
@ -148,18 +149,21 @@ class Cron {
|
|||||||
$info_sv = array();
|
$info_sv = array();
|
||||||
$info_en = array();
|
$info_en = array();
|
||||||
if($new_count > 0) {
|
if($new_count > 0) {
|
||||||
$info_sv[] = "Eventuella artiklar du inte hämtat ut redan kan hämtas från Helpdesk.";
|
$info_sv[] = $this->email_fragments['sv_new_loans_pickup'];
|
||||||
$info_en[] = "Any products you haven't already picked up can be collected from Helpdesk.";
|
$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_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_en[] = "Please reply to this email if you have any questions.";
|
||||||
$info_sv = implode(' ', $info_sv);
|
$info_sv = implode(' ', $info_sv);
|
||||||
$info_en = implode(' ', $info_en);
|
$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
|
$message = <<<EOF
|
||||||
Hej $name!
|
Hej $name!
|
||||||
|
|
||||||
Det här är ett automatiskt meddelande från Helpdesk.
|
$intro_sv
|
||||||
|
|
||||||
$list_sv
|
$list_sv
|
||||||
|
|
||||||
@ -167,17 +171,13 @@ $info_sv
|
|||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
This is an automated message from Helpdesk.
|
$intro_en
|
||||||
|
|
||||||
$list_en
|
$list_en
|
||||||
|
|
||||||
$info_en
|
$info_en
|
||||||
|
|
||||||
Mvh
|
$footer
|
||||||
DSV Helpdesk
|
|
||||||
helpdesk@dsv.su.se
|
|
||||||
08 - 16 16 48
|
|
||||||
|
|
||||||
EOF;
|
EOF;
|
||||||
$this->send_email($uid, $subject, $message);
|
$this->send_email($uid, $subject, $message);
|
||||||
}
|
}
|
||||||
@ -262,7 +262,9 @@ EOF;
|
|||||||
$loan = "lånet";
|
$loan = "lånet";
|
||||||
$product = "artikeln";
|
$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;
|
break;
|
||||||
case 'en':
|
case 'en':
|
||||||
if($count > 1) {
|
if($count > 1) {
|
||||||
@ -272,7 +274,9 @@ EOF;
|
|||||||
$loan = "loan";
|
$loan = "loan";
|
||||||
$product = "item";
|
$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;
|
break;
|
||||||
default:
|
default:
|
||||||
throw new Exception("Invalid language: ".$lang);
|
throw new Exception("Invalid language: ".$lang);
|
||||||
@ -291,6 +295,9 @@ EOF;
|
|||||||
$subject = $this->make_reminder_subject($expiring_count,
|
$subject = $this->make_reminder_subject($expiring_count,
|
||||||
$overdue_count);
|
$overdue_count);
|
||||||
|
|
||||||
|
$intro_sv = $this->email_fragments['sv_reminder_intro'];
|
||||||
|
$intro_en = $this->email_fragments['en_reminder_intro'];
|
||||||
|
|
||||||
$info_sv = array();
|
$info_sv = array();
|
||||||
$info_en = array();
|
$info_en = array();
|
||||||
if($expiring_count > 0) {
|
if($expiring_count > 0) {
|
||||||
@ -302,15 +309,17 @@ EOF;
|
|||||||
$info_en[] = $this->make_notice('en', 'overdue', $overdue);
|
$info_en[] = $this->make_notice('en', 'overdue', $overdue);
|
||||||
}
|
}
|
||||||
$info_sv = implode("\n\n", $info_sv);
|
$info_sv = implode("\n\n", $info_sv);
|
||||||
$returns_sv = $this->make_return_info('sv', $total);
|
|
||||||
|
|
||||||
$info_en = implode("\n\n", $info_en);
|
$info_en = implode("\n\n", $info_en);
|
||||||
|
|
||||||
|
$returns_sv = $this->make_return_info('sv', $total);
|
||||||
$returns_en = $this->make_return_info('en', $total);
|
$returns_en = $this->make_return_info('en', $total);
|
||||||
|
|
||||||
|
$footer = $this->email_fragments['footer'];
|
||||||
|
|
||||||
$message = <<<EOF
|
$message = <<<EOF
|
||||||
Hej $name!
|
Hej $name!
|
||||||
|
|
||||||
Det här är en automatisk påminnelse om lånade artiklar från Helpdesk.
|
$intro_sv
|
||||||
|
|
||||||
$info_sv
|
$info_sv
|
||||||
|
|
||||||
@ -318,17 +327,13 @@ $returns_sv
|
|||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
This is an automated reminder regarding items on loan from Helpdesk.
|
$intro_en
|
||||||
|
|
||||||
$info_en
|
$info_en
|
||||||
|
|
||||||
$returns_en
|
$returns_en
|
||||||
|
|
||||||
Mvh
|
$footer
|
||||||
DSV Helpdesk
|
|
||||||
helpdesk@dsv.su.se
|
|
||||||
08 - 16 16 48
|
|
||||||
|
|
||||||
EOF;
|
EOF;
|
||||||
$this->send_email($uid, $subject, $message);
|
$this->send_email($uid, $subject, $message);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user