Fixed Issue #56, refresh of the page inserts duplicated appointments in calendar

This commit is contained in:
chris.pichardo 2015-10-06 01:51:07 -04:00
parent f6dc7309e0
commit d5481cdeb8
2 changed files with 36 additions and 11 deletions

46
src/application/controllers/appointments.php Normal file → Executable file
View file

@ -207,20 +207,11 @@ class Appointments extends CI_Controller {
} catch(Exception $exc) {
$view['exceptions'][] = $exc;
}
// :: LOAD THE BOOK SUCCESS VIEW
$view = array(
'appointment_data' => $appointment,
'provider_data' => $provider,
'service_data' => $service,
'company_name' => $company_settings['company_name']
);
} catch(Exception $exc) {
$view['exceptions'][] = $exc;
}
$this->load->view('appointments/book_success', $view);
$this->session->set_flashdata('book_exceptions', $view['exceptions']);
redirect('appointments/book_success/'.$appointment['id']);
}
}
@ -675,6 +666,39 @@ class Appointments extends CI_Controller {
));
}
}
/**
* GET an specific appointment book and redirect to the success screen.
*
* @param int $appointment_id Contains the id of the appointment to retrieve.
*/
public function book_success($appointment_id) {
//if the appointment id doesn't exist or zero redirect to index
if(!$appointment_id){
redirect('appointments');
}
$this->load->model('appointments_model');
$this->load->model('providers_model');
$this->load->model('services_model');
$this->load->model('settings_model');
//retrieve the data needed in the view
$appointment = $this->appointments_model->get_row($appointment_id);
$provider = $this->providers_model->get_row($appointment['id_users_provider']);
$service = $this->services_model->get_row($appointment['id_services']);
$company_name = $this->settings_model->get_setting('company_name');
//get the exceptions
$exceptions = $this->session->flashdata('book_success');
// :: LOAD THE BOOK SUCCESS VIEW
$view = array(
'appointment_data' => $appointment,
'provider_data' => $provider,
'service_data' => $service,
'company_name' => $company_name,
);
if($exceptions){
$view['exceptions'] = $exceptions;
}
$this->load->view('appointments/book_success', $view);
}
}
/* End of file appointments.php */

1
src/application/views/appointments/book_success.php Normal file → Executable file
View file

@ -44,6 +44,7 @@
<?php
echo '<h3>' . $this->lang->line('appointment_registered') . '</h3>';
echo '<p>' . $this->lang->line('appointment_details_was_sent_to_you') . '</p>';
echo '<p><a href="'.$this->config->item('base_url').'">Book a new appointment</a></p>';
if ($this->config->item('ea_google_sync_feature')) {
echo '