diff --git a/application/controllers/Admin.php b/application/controllers/Admin.php
index 6345c83..5f6dee0 100755
--- a/application/controllers/Admin.php
+++ b/application/controllers/Admin.php
@@ -902,8 +902,8 @@ class Admin extends CI_Controller {
if($_POST['booking_date'] != $_POST['end_booking_date'] && $booking_date <= $end_booking_date){
for($index = 0; $index <= $diff->days; $index++){
$selectedDate = date('Y-m-d', strtotime($_POST['booking_date']. ' + '.$index.' days'));
-
-
+
+ $manageToken = bin2hex(random_bytes(16));
$bookingArray = array(
'guest_name' => $_POST['guest_name'],
'guest_email' => $_POST['guest_email'],
@@ -915,12 +915,14 @@ class Admin extends CI_Controller {
'service_ids' => serialize($selectedServiceArray),
'guest_confirmed' => '0',
'guest_confirm_code' => '1234',
+ 'manage_token' => $manageToken,
);
-
+
$this->Service_model->createBooking($bookingArray);
}
}
else{
+ $manageToken = bin2hex(random_bytes(16));
$bookingArray = array(
'guest_name' => $_POST['guest_name'],
'guest_email' => $_POST['guest_email'],
@@ -932,6 +934,7 @@ class Admin extends CI_Controller {
'service_ids' => serialize($selectedServiceArray),
'guest_confirmed' => '0',
'guest_confirm_code' => '1234',
+ 'manage_token' => $manageToken,
);
$this->Log_model->addLog('bookings', $data['currentUser']->username.' létrehoza a(z) '.$_POST['guest_name'].' nevű vendég foglalást ('.implode(', ', $bookingArray).')', $data['currentUser']->username);
$this->Service_model->createBooking($bookingArray);
@@ -976,8 +979,11 @@ class Admin extends CI_Controller {
$content .= '';
$content .= '
| Totalpris: | '.$totalServicePrice.' kr |
';
$content .= '';
+ $content .= '
Administrer bestilling
';
+ $content .= '
Dersom noe skulle dukke opp og du ikke kan komme til avtalen din, vennligst gi oss beskjed minst 24 timer i forveien, slik at vi kan gi timen videre til en annen kunde og våre kollegers tid ikke blir stående ubrukt; avbestillinger innen 24 timer, eller manglende oppmøte, vil bli belastet med full pris for behandlingen; avbestilling kan gjøres via e-post til info@studiobeve.no eller ved å sende oss en melding på Instagram eller Facebook. Takk for forståelsen og samarbeidet!';
+ $content .= '
';
$content .= '
STUDIOBEVE';
- $this->Log_model->addLog('bookings', $data['currentUser']->username.' új foglalásról norvég nyelvű értesítést küldött a(z) '.$bookingArray['guest_email'].' email címre ('.implode(', ', $bookingArray).')', $data['currentUser']->username);
+ $this->Log_model->addLog('bookings', $data['currentUser']->username.' új foglalásról norvég nyelvű értesítést küldött a(z) '.$bookingArray['guest_email'].' email címre ('.implode(', ', $bookingArray).')', $data['currentUser']->username);
break;
case 'en':
$content = 'Dear Guest,
';
@@ -999,8 +1005,11 @@ class Admin extends CI_Controller {
$content .= '';
$content .= '| Total price: | '.$totalServicePrice.' kr |
';
$content .= '';
- $content .= '
STUDIOBEVE';
- $this->Log_model->addLog('bookings', $data['currentUser']->username.' új foglalásról angol nyelvű értesítést küldött a(z) '.$bookingArray['guest_email'].' email címre ('.implode(', ', $bookingArray).')', $data['currentUser']->username);
+ $content .= '
Manage booking
';
+ $content .= '
If something comes up and you can’t make it to your booked appointment, please let us know at least 24 hours in advance so we can offer the time slot to another guest and our colleagues’ time won’t remain unused; cancellations within 24 hours or no-shows will be charged the full service fee; you can cancel by emailing info@studiobeve.no, or by sending us a message on Instagram or Facebook. Thank you for your understanding and cooperation!';
+ $content .= '
';
+ $content .= '
STUDIOBEVE';
+ $this->Log_model->addLog('bookings', $data['currentUser']->username.' új foglalásról angol nyelvű értesítést küldött a(z) '.$bookingArray['guest_email'].' email címre ('.implode(', ', $bookingArray).')', $data['currentUser']->username);
break;
case 'hu':
$content = 'Kedves Vendégünk,
';
@@ -1022,8 +1031,11 @@ class Admin extends CI_Controller {
$content .= '';
$content .= '| Összesen fizetendő: | '.$totalServicePrice.' kr |
';
$content .= '';
- $content .= '
STUDIOBEVE';
- $this->Log_model->addLog('bookings', $data['currentUser']->username.' új foglalásról magyar nyelvű értesítést küldött a(z) '.$bookingArray['guest_email'].' email címre ('.implode(', ', $bookingArray).')', $data['currentUser']->username);
+ $content .= '
Foglalás kezelése
';
+ $content .= '
Kérünk, ha valami közbejön, és mégsem tudsz eljönni a lefoglalt időpontodra, jelezd nekünk legalább 24 órával előre, így más vendégnek is tudunk szabad időpontot biztosítani, és kollégáink ideje sem marad kihasználatlanul; 24 órán belüli lemondás, illetve meg nem jelenés esetén a szolgáltatás teljes díja felszámításra kerül; a lemondást az info@studiobeve.no e-mail címen, vagy Instagram- és Facebook-üzenetben tudod megtenni. Köszönjük a megértést és az együttműködést!';
+ $content .= '
';
+ $content .= '
STUDIOBEVE';
+ $this->Log_model->addLog('bookings', $data['currentUser']->username.' új foglalásról magyar nyelvű értesítést küldött a(z) '.$bookingArray['guest_email'].' email címre ('.implode(', ', $bookingArray).')', $data['currentUser']->username);
break;
}
@@ -1114,11 +1126,11 @@ class Admin extends CI_Controller {
if($_POST['send_notification']){
$worker = $this->Service_model->getWorkerById($bookingArray['worker_id']);
-
+
$services = unserialize($bookingArray['service_ids']);
$serviceArray = array();
$emailArray = array();
-
+
if(is_array($services)){
foreach($services as $serviceItem){
$selectedService = $this->Service_model->getServiceById($serviceItem);
@@ -1127,11 +1139,17 @@ class Admin extends CI_Controller {
}
}
}
-
+
+ $manageToken = (isset($oldBooking) && !empty($oldBooking->manage_token)) ? $oldBooking->manage_token : '';
+ if(empty($manageToken)){
+ $manageToken = bin2hex(random_bytes(16));
+ $this->Service_model->updateBooking($_POST['booking_id'], array('manage_token' => $manageToken));
+ }
+
$content = '';
-
+
$email_subject ='';
-
+
switch($_POST['lang']){
case 'no':
$email_subject ='[studiobeve] Din reservasjon er endret';
@@ -1154,8 +1172,11 @@ class Admin extends CI_Controller {
$content .= '';
$content .= '| Totalpris: | '.$totalServicePrice.' kr |
';
$content .= '';
- $content .= '
STUDIOBEVE';
- $this->Log_model->addLog('bookings', $data['currentUser']->username.' foglalás módosításról norvég nyelvű értesítést küldött a(z) '.$bookingArray['guest_email'].' email címre ('.implode(', ', $bookingArray).')', $data['currentUser']->username);
+ $content .= '
Administrer bestilling
';
+ $content .= '
Dersom noe skulle dukke opp og du ikke kan komme til avtalen din, vennligst gi oss beskjed minst 24 timer i forveien, slik at vi kan gi timen videre til en annen kunde og våre kollegers tid ikke blir stående ubrukt; avbestillinger innen 24 timer, eller manglende oppmøte, vil bli belastet med full pris for behandlingen; avbestilling kan gjøres via e-post til info@studiobeve.no eller ved å sende oss en melding på Instagram eller Facebook. Takk for forståelsen og samarbeidet!';
+ $content .= '
';
+ $content .= '
STUDIOBEVE';
+ $this->Log_model->addLog('bookings', $data['currentUser']->username.' foglalás módosításról norvég nyelvű értesítést küldött a(z) '.$bookingArray['guest_email'].' email címre ('.implode(', ', $bookingArray).')', $data['currentUser']->username);
break;
case 'en':
$email_subject ='[studiobeve] Your booking has changed';
@@ -1178,8 +1199,11 @@ class Admin extends CI_Controller {
$content .= '';
$content .= '| Total price: | '.$totalServicePrice.' kr |
';
$content .= '';
- $content .= '
STUDIOBEVE';
- $this->Log_model->addLog('bookings', $data['currentUser']->username.' foglalás módosításról angol nyelvű értesítést küldött a(z) '.$bookingArray['guest_email'].' email címre ('.implode(', ', $bookingArray).')', $data['currentUser']->username);
+ $content .= '
Manage booking
';
+ $content .= '
If something comes up and you can’t make it to your booked appointment, please let us know at least 24 hours in advance so we can offer the time slot to another guest and our colleagues’ time won’t remain unused; cancellations within 24 hours or no-shows will be charged the full service fee; you can cancel by emailing info@studiobeve.no, or by sending us a message on Instagram or Facebook. Thank you for your understanding and cooperation!';
+ $content .= '
';
+ $content .= '
STUDIOBEVE';
+ $this->Log_model->addLog('bookings', $data['currentUser']->username.' foglalás módosításról angol nyelvű értesítést küldött a(z) '.$bookingArray['guest_email'].' email címre ('.implode(', ', $bookingArray).')', $data['currentUser']->username);
break;
case 'hu':
$email_subject ='[studiobeve] A foglalása módosult';
@@ -1202,8 +1226,11 @@ class Admin extends CI_Controller {
$content .= '';
$content .= '| Összesen fizetendő: | '.$totalServicePrice.' kr |
';
$content .= '';
+ $content .= '
Foglalás kezelése
';
+ $content .= '
Kérünk, ha valami közbejön, és mégsem tudsz eljönni a lefoglalt időpontodra, jelezd nekünk legalább 24 órával előre, így más vendégnek is tudunk szabad időpontot biztosítani, és kollégáink ideje sem marad kihasználatlanul; 24 órán belüli lemondás, illetve meg nem jelenés esetén a szolgáltatás teljes díja felszámításra kerül; a lemondást az info@studiobeve.no e-mail címen, vagy Instagram- és Facebook-üzenetben tudod megtenni. Köszönjük a megértést és az együttműködést!';
+ $content .= '
';
$content .= '
STUDIOBEVE';
- $this->Log_model->addLog('bookings', $data['currentUser']->username.' foglalás módosításról magyar nyelvű értesítést küldött a(z) '.$bookingArray['guest_email'].' email címre ('.implode(', ', $bookingArray).')', $data['currentUser']->username);
+ $this->Log_model->addLog('bookings', $data['currentUser']->username.' foglalás módosításról magyar nyelvű értesítést küldött a(z) '.$bookingArray['guest_email'].' email címre ('.implode(', ', $bookingArray).')', $data['currentUser']->username);
break;
}