diff --git a/application/config/config.php b/application/config/config.php index 98cb3773..fc55fe8d 100644 --- a/application/config/config.php +++ b/application/config/config.php @@ -23,11 +23,11 @@ | a PHP script and you can easily do that on your own. | */ -//$config['base_url'] = 'https://itin.azurewebsites.net/'; +$config['base_url'] = 'https://itin-dev.azurewebsites.net/'; //$config['base_url'] = ((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == "on") ? "https" : "http"); -$config['base_url'] = "https"; -$config['base_url'] .= "://".$_SERVER['HTTP_HOST']."/"; -$config['base_url'] .= str_replace(basename($_SERVER['SCRIPT_NAME']),"",$_SERVER['SCRIPT_NAME']); +//$config['base_url'] = "https"; +//$config['base_url'] .= "://".$_SERVER['HTTP_HOST']."/"; +//$config['base_url'] .= str_replace(basename($_SERVER['SCRIPT_NAME']),"",$_SERVER['SCRIPT_NAME']); /* |-------------------------------------------------------------------------- diff --git a/application/controllers/Inspection.php b/application/controllers/Inspection.php index b6dbaa28..6ac75c3e 100644 --- a/application/controllers/Inspection.php +++ b/application/controllers/Inspection.php @@ -72,6 +72,17 @@ public function inspection_add() $insdata['orderdate_inspection'] = $this->input->post('orderdate_inspection'); $insdata['ordermethod_inspection'] = $this->input->post('ordermethod_inspection'); $insdata['status_inspection'] = 0; + if (isset($_POST['rmrk_inspection']) && $_POST['rmrk_inspection'] <> "") { + $insdata['rmrk_inspection'] = $this->input->post('rmrk_inspection'); + } else { + $insdata['rmrk_inspection'] = "n/a"; + } + if (isset($_POST['en_rmrk_inspection']) && $_POST['en_rmrk_inspection'] <> "") { + $insdata['en_rmrk_inspection'] = $this->input->post('en_rmrk_inspection'); + } else { + $insdata['en_rmrk_inspection'] = "n/a"; + } + $data['inspectionid'] = $this->itindata_model->set_inspection($insdata); $clients = $this->_getclients(); @@ -108,15 +119,21 @@ public function inspection_edit($id) $data['username'] = $user->first_name." ".$user->last_name; $inspections = $this->itindata_model->get_inspectionsfull(array('id_inspection' => $id)); + $inspstatus = $inspections[0]->status_inspection; + if ($inspstatus < 1) { $data['inspection'] = $inspections[0]; $data['inspscore'] = $this->itindata_model->get_inspectionscore($id); $data['inspimg'] = $this->itindata_model->get_inspectionimages($id); $data['inspremark'] = $this->itindata_model->get_inspectionremarks($id); $data['inspectionid'] = $id; $data['checkpoints'] = $this->itindata_model->get_checkpoints(); + $data['signature'] = $this->_checksignature($id); $this->load->view('header', $data); $this->load->view('inspectionform', $data); $this->load->view('footer', $data); + } else { + redirect('inspection/inspection_view/'.$id); + } } else { redirect('auth/login'); } @@ -362,6 +379,7 @@ public function inspection_view($id) $data['inspscore'] = $this->itindata_model->get_inspectionscore($id); $data['inspimg'] = $this->itindata_model->get_inspectionimages($id); $data['inspectionid'] = $id; + $data['signature'] = $this->_checksignature($id); $data['checkpoints'] = $this->itindata_model->get_checkpoints(); $this->load->view('header', $data); $this->load->view('inspectionview', $data); @@ -399,6 +417,20 @@ public function inspection_save() $user = $this->ion_auth->user()->row(); $data['userid'] = $user->id; $data['username'] = $user->first_name." ".$user->last_name; + if (isset($_POST['rmrk_inspection']) && $_POST['rmrk_inspection'] <> "") { + $insupd['rmrk_inspection'] = $this->input->post('rmrk_inspection'); + } else { + $insupd['rmrk_inspection'] = "n/a"; + } + if (isset($_POST['en_rmrk_inspection']) && $_POST['en_rmrk_inspection'] <> "") { + $insupd['en_rmrk_inspection'] = $this->input->post('en_rmrk_inspection'); + } else { + $insupd['en_rmrk_inspection'] = "n/a"; + } + $this->itindata_model->upd_inspection($this->input->post('inspectionid_insres'), array("en_rmrk_inspection" => $insupd['en_rmrk_inspection'], "rmrk_inspection" => $insupd['rmrk_inspection'])); + + + $points = $_POST['checkpoint']; if (isset($_POST['remark'])) { $remarks = $_POST['remark']; @@ -407,6 +439,8 @@ public function inspection_save() if (isset($_POST['inspimg'])) { $photos = $_POST['inspimg']; } + + foreach ($points as $key => $value): $insdata[] = array('inspectionid_insres' => $this->input->post('inspectionid_insres'), 'chkpointsect_insres' => $sectors[$key], 'chkpointid_insres' => $key, 'chpointscore_insres' => $value); @@ -815,6 +849,23 @@ public function photoupload(){ } + + public function imgupload(){ + /* Get the name of the uploaded file */ +$filename = str_replace(' ', '_', $_FILES['file']['name']); + +/* Choose where to save the uploaded file */ +$location = "upload/".$filename; + +/* Save the uploaded file to the local filesystem */ +if ( move_uploaded_file($_FILES['file']['tmp_name'], $location) ) { + $url = 'https://' . $_SERVER['HTTP_HOST'] .'/upload/' . $filename; +} +$response['url'] = $url; + + echo json_encode($response); + exit; + } public function dynimg($id) { $pointscore = $this->itindata_model->get_scoreforoutside($id); @@ -851,4 +902,62 @@ public function removeimg() { $this->output->set_header("Content-type: application/json"); echo json_encode($status); } + +public function getsignature($inspid=null) { + if ($this->ion_auth->logged_in() && $this->ion_auth->in_group('inspectors')) + { + + if(!empty($_POST)) { + //print_r($_POST);// Something has been posted + date_default_timezone_set('Europe/Athens'); + $timestamp = date('Y-m-d H:i:s', time()); + //echo $timestamp; + $sgndata['inspectionid_signature'] = $this->input->post('inspectionid'); + $sgndata['clientid_signature'] = $this->input->post('id_client'); + $sgndata['clientfname_signature'] = $this->input->post('firstname_client'); + $sgndata['clientlname_signature'] = $this->input->post('lastname_client'); + $sgndata['signature_signature'] = $this->input->post('signature'); + $sgndata['date_signature'] = $timestamp; + if ($this->itindata_model->set_signature($sgndata)) { + redirect('inspection/inspection_edit/'.$this->input->post('inspectionid')); + } + + + + } else { + + $inspdata = $this->itindata_model->get_inspectionsfull(array('id_inspection' => $inspid)); + if ($inspdata) { + $custinfo = $this->itindata_model->get_clients(array('id_client' => $inspdata[0]->client_inspection)); + $data = $this->data; + $user = $this->ion_auth->user()->row(); + $data['id_client'] = $inspdata[0]->client_inspection; + $data['firstname_client'] = $custinfo[0]->firstname_client; + $data['lastname_client'] = $custinfo[0]->lastname_client; + $data['inspectionid'] = $inspid; + + + $this->load->view('header', $data); + $this->load->view('signatureform', $data); + $this->load->view('footer', $data); + } else { + redirect('inspection/inspections_list'); + } + } + } else { + redirect('auth/login'); + } +} + +private function _checksignature($inspid) { + + $signatureinfo = $this->itindata_model->get_signature(array('inspectionid_signature'=>$inspid)); + if ($signatureinfo) { + return $signatureinfo[0]; + } else { + return null; + } + + } } + diff --git a/application/controllers/Welcome.php b/application/controllers/Welcome.php index d7b98659..cd987130 100644 --- a/application/controllers/Welcome.php +++ b/application/controllers/Welcome.php @@ -25,7 +25,8 @@ public function index() redirect('auth/login'); } else if ($this->ion_auth->is_admin()) { - redirect('admin'); + //redirect('admin'); + redirect('inspection'); } else if ($this->ion_auth->in_group('managers')) { redirect('manage'); diff --git a/application/language/english/itin_lang.php b/application/language/english/itin_lang.php index 1a66239e..887cfd11 100644 --- a/application/language/english/itin_lang.php +++ b/application/language/english/itin_lang.php @@ -90,6 +90,7 @@ $lang['inspector'] = 'Inspector'; $lang['leave_empty'] = 'Leave empty for auto-numbering'; $lang['comment'] = 'Remarks'; +$lang['genremark_inspection'] = 'Important Remark'; //PDF REPORT $lang['pdf_report_num'] = 'REPORT NUMBER:'; @@ -127,3 +128,6 @@ $lang['seal_granded_by'] = 'Seal granded by'; $lang['sign_notice'] = 'This document was created electronically and does not require a signature.'; $lang['cert_mlg_vhcl'] = 'Odometer:'; + + +$lang['client_signature'] = 'Client Signature'; diff --git a/application/language/greek/itin_lang.php b/application/language/greek/itin_lang.php index 4ea58deb..3dd4b050 100644 --- a/application/language/greek/itin_lang.php +++ b/application/language/greek/itin_lang.php @@ -90,6 +90,7 @@ $lang['inspector'] = 'Εμπειρογνώμονας'; $lang['leave_empty'] = 'Αφήστε κενό για αυτόματη αρίθμηση'; $lang['comment'] = 'Παρατήρηση'; +$lang['genremark_inspection'] = 'Γενική Παρατήρηση'; // PDF REPORT @@ -128,3 +129,7 @@ $lang['seal_granded_by'] = 'Η σφραγίδα χορηγείται από'; $lang['sign_notice'] = 'Αυτό το έγγραφο συντάχθηκε ηλεκτρονικά και δεν απαιτείται υπογραφή.'; $lang['cert_mlg_vhcl'] = 'Ένδειξη χλμ:'; + + +//signature +$lang['client_signature'] = 'Υπογραφή Πελάτη'; diff --git a/application/models/Itindata_model.php b/application/models/Itindata_model.php index 590ff442..78e00e86 100644 --- a/application/models/Itindata_model.php +++ b/application/models/Itindata_model.php @@ -118,9 +118,9 @@ public function get_clientsplain($where=null) { public function get_clients($where = null) { - $q = "Select c.*, v.*, i.* from clients_tbl c - LEFT JOIN vehicles_tbl v ON c.id_client = v.client_vhcl - LEFT JOIN inspections_tbl i ON v.id_vhcl = i.vehicle_inspection"; + $q = "Select c.*, v.*, k.* from clients_tbl c + LEFT JOIN vehicles_tbl AS v ON c.id_client = v.client_vhcl + LEFT JOIN inspections_tbl AS k ON v.id_vhcl = k.vehicle_inspection"; if (isset($where)) { @@ -159,9 +159,9 @@ public function get_unisnpvehicles(){ public function get_vehiclesfull($where=null) { - $q = "Select v.*, i.*, c.* from vehicles_tbl v - LEFT JOIN inspections_tbl i ON v.id_vhcl = i.vehicle_inspection - LEFT JOIN clients_tbl c ON v.client_vhcl = c.id_client" + $q = "Select v.*, k.*, c.* from vehicles_tbl v + LEFT JOIN inspections_tbl AS k ON v.id_vhcl = k.vehicle_inspection + LEFT JOIN clients_tbl AS c ON v.client_vhcl = c.id_client" ; if (isset($where)) @@ -207,10 +207,10 @@ public function set_inspection($data) { public function get_inspectionsfull($where=null) { - $q = "Select i.*, v.*, c.*, u.first_name, u.last_name from inspections_tbl I - LEFT JOIN vehicles_tbl v ON i.vehicle_inspection = v.id_vhcl - LEFT JOIN clients_tbl c ON i.client_inspection = c.id_client - LEFT JOIN users u ON i.inspector_inspection = u.id"; + $q = "Select k.*, v.*, c.*, u.first_name, u.last_name from inspections_tbl as k + LEFT JOIN vehicles_tbl AS v ON k.vehicle_inspection = v.id_vhcl + LEFT JOIN clients_tbl AS c ON k.client_inspection = c.id_client + LEFT JOIN users AS u ON k.inspector_inspection = u.id"; if (isset($where)) { @@ -412,5 +412,18 @@ public function delsingleimg($imgid) { $query = $this->db->delete('inspectionimg_tbl'); return; } -} +public function set_signature($data) { + $this->db->insert('signatures_tbl', $data); + return $this->db->insert_id(); + } + public function get_signature($where = null) { + if (isset($where)) { + $this->db->where($where); + } + $query = $this->db->get('signatures_tbl'); + return $query->result_array(); + + } + +} diff --git a/application/views/inspectionform.php b/application/views/inspectionform.php index 4f05edab..c26ea7f4 100644 --- a/application/views/inspectionform.php +++ b/application/views/inspectionform.php @@ -1,7 +1,15 @@ -rmrk_inspection) && $inspection->rmrk_inspection != "n/a") { + $inspremark = $inspection->rmrk_inspection; + } } else { $langprefix ="en_"; + if (isset($inspection->en_rmrk_inspection) && $inspection->en_rmrk_inspection != "n/a") { + $inspremark = $inspection->en_rmrk_inspection; + } } $prcp = 0; $mainsect = $langprefix."mainsect"; @@ -10,6 +18,17 @@ $helptext_cp = $langprefix."helptext_cp"; ?>
number_inspection; ?>
@@ -42,10 +61,19 @@Έχω διαβάσει και αποδέχομαι τους Όρους Ελέγχου Οχημάτων
+ 'clientForm'); +echo form_open("inspection/getsignature", $attributes);?> + + + +