Commit ea3bed58 by Tobin

Merge branch 'master' into 'dev_production'

Master See merge request !97
parents 68f32620 b2eeb1bb
......@@ -4,13 +4,13 @@
[3] Collaborator ID : BAYANPAY
[4] Bayan URL : https://staging.bayanpay.sa/direcpay/secure/PaymentTxnServlet
[5] Block Existence Indicator : 1110100
[6] DataBlock1 : TransactionDataBlock1 : 10111111|1565768157|http://localhost/timeOut/Api/paymentSuccessUrl|http://localhost/timeOut/Api/paymentFailureUrl|INTERNET|CC|01|SAR
[7] DataBlock2 : billingDataBlock : 0000000000000|
[8] DataBlock3 : shippingDataBlock : 000000000000|
[6] DataBlock1 : TransactionDataBlock1 : 11111111|1565949321|200|http://localhost/timeOut/Api/paymentSuccessUrl|http://localhost/timeOut/Api/paymentFailureUrl|INTERNET|CC|01|SAR
[7] DataBlock2 : billingDataBlock : 1000000011000|Dev|[email protected]|919995559194
[8] DataBlock3 : shippingDataBlock : 100000000001|Dev|919995559194
[9] DataBlock4 : paymentDataBlock : NULL
[10] DataBlock5 : merchantDataBlock : 0000000000|
[10] DataBlock5 : merchantDataBlock : 1110000000|490|128|TO1908161619
[11] DataBlock6 : otherDataBlock : NULL
[12] DataBlock7 : DCCDataBlock : NULL
[13] beforeEncryptionString : 1110100||10111111|1565768157|http://localhost/timeOut/Api/paymentSuccessUrl|http://localhost/timeOut/Api/paymentFailureUrl|INTERNET|CC|01|SAR||0000000000000|||000000000000|||0000000000|
[14] EncryptedString : 6SLNoOCXnCfuN+p+4JSpYIoQEIYGwFXo5BVHgqPFLZ3AQzcZ0mBSn61URC66o1a13cH7XNEUJ5j4ssaNmGD+xJi4d1WQMv4zJcqsDRuR8QEWcst/wvbI/chd0qTkElo18kqv324p+odC5W0k2NTHoYUj0ospvVu5moa4dXbl8ikUPMk1siZW+aIb7ZUGDHRefDKTenHjMvbJsvaANWH12SU84ZCFkg40+n0YZeAPIUe3yXHH91BMyYfShu4K2pj7
[15] BayanPostData : 201901291000002||BAYANPAY||6SLNoOCXnCfuN+p+4JSpYIoQEIYGwFXo5BVHgqPFLZ3AQzcZ0mBSn61URC66o1a13cH7XNEUJ5j4ssaNmGD+xJi4d1WQMv4zJcqsDRuR8QEWcst/wvbI/chd0qTkElo18kqv324p+odC5W0k2NTHoYUj0ospvVu5moa4dXbl8ikUPMk1siZW+aIb7ZUGDHRefDKTenHjMvbJsvaANWH12SU84ZCFkg40+n0YZeAPIUe3yXHH91BMyYfShu4K2pj7
\ No newline at end of file
[13] beforeEncryptionString : 1110100||11111111|1565949321|200|http://localhost/timeOut/Api/paymentSuccessUrl|http://localhost/timeOut/Api/paymentFailureUrl|INTERNET|CC|01|SAR||1000000011000|Dev|[email protected]|919995559194||100000000001|Dev|919995559194||1110000000|490|128|TO1908161619
[14] EncryptedString : S7fVSoNGH4bne+vZCz3T1hU1jYM1Wo9nk7xgNovOGFPqdJ8JZaCs5fRYysGksWJe4Nid+xoi654uECYUpOXw4LFWQ3KhU7ih8k9TxJfm7v5crHFlq0Tbwl6ghhmwJcGDQos/PYiP4jT0kUWm1IEUrrMksj82dYIDhG3+gPydjzkNrSJLblaQ/FUg6Jl5nHvO73/gdIqQSCgUNcDn3qKbO/3ApXUBuLpJJs28a42HpwYPke7q7etbFHNaiIjPlVSjjFepxARZ8yTBO26QmrLpF12Fai0EN8CetlBjmjnVByJc7PW78wS6hy7DYIKg5uccprmiRiaeW1f1vvCBsAy45g==
[15] BayanPostData : 201901291000002||BAYANPAY||S7fVSoNGH4bne+vZCz3T1hU1jYM1Wo9nk7xgNovOGFPqdJ8JZaCs5fRYysGksWJe4Nid+xoi654uECYUpOXw4LFWQ3KhU7ih8k9TxJfm7v5crHFlq0Tbwl6ghhmwJcGDQos/PYiP4jT0kUWm1IEUrrMksj82dYIDhG3+gPydjzkNrSJLblaQ/FUg6Jl5nHvO73/gdIqQSCgUNcDn3qKbO/3ApXUBuLpJJs28a42HpwYPke7q7etbFHNaiIjPlVSjjFepxARZ8yTBO26QmrLpF12Fai0EN8CetlBjmjnVByJc7PW78wS6hy7DYIKg5uccprmiRiaeW1f1vvCBsAy45g==
\ No newline at end of file
......@@ -75,10 +75,10 @@ $query_builder = TRUE;
$db['default'] = array(
'dsn' => '',
'hostname' => 'localhost',
'username' => 'nuvento_timeout',
'hostname' => '192.168.140.123',
'username' => 'root',
'password' => 'Golden_123',
'database' => 'nuvento_timeout',
'database' => 'tobin_eventTimeOut',
'dbdriver' => 'mysqli',
'dbprefix' => '',
'pconnect' => FALSE,
......
......@@ -277,7 +277,6 @@ class Api extends CI_Controller {
public function search() {
$data = (array) json_decode(file_get_contents('php://input'));
//$data['auth_token'] = $this->auth_token;
$res = $this->Api_model->search($data);
if($res['status']!=0){
......@@ -343,17 +342,17 @@ class Api extends CI_Controller {
$BayanPayOnlineObject = new BayanPayBitmapPaymentIntegration($BayanPayArray);
if(isset($_REQUEST['responseParameter']) && $_REQUEST['responseParameter'] != ''){
$response = $BayanPayOnlineObject->decryptData($_REQUEST['responseParameter'],$BayanPayOnlineObject->merchantKey,$BayanPayOnlineObject->iv);
$response = $BayanPayOnlineObject->decryptData($_REQUEST['responseParameter'],$BayanPayOnlineObject->merchantKey,$BayanPayOnlineObject->iv);
$ref_id = explode('|',$response['Transaction_related_information']);
$transaction_id = $ref_id[1];
$last_id = explode('|',$response['Merchant_Information']);
$lastid = $last_id[1];
$eventid = $last_id[2];
$booking_id = $last_id[3];
$this->Api_model->update_payment($response,$transaction_id,$lastid,'1') ;
$ref_id = explode('|',$response['Transaction_related_information']);
$transaction_id = $ref_id[1];
$last_id = explode('|',$response['Merchant_Information']);
$lastid = $last_id[1];
$eventid = $last_id[2];
$booking_id = $last_id[3];
$this->Api_model->update_payment($response,$transaction_id,$lastid,'1') ;
redirect('https://timeout.sa/staging/bookingdetails?booking_id='.$booking_id);
redirect('https://timeout.sa/staging/bookingdetails?booking_id='.$booking_id);
}
}
......@@ -366,14 +365,14 @@ class Api extends CI_Controller {
$BayanPayOnlineObject = new BayanPayBitmapPaymentIntegration($BayanPayArray);
if(isset($_REQUEST['responseParameter']) && $_REQUEST['responseParameter'] != ''){
$response = $BayanPayOnlineObject->decryptData($_REQUEST['responseParameter'],$BayanPayOnlineObject->merchantKey,$BayanPayOnlineObject->iv);
$ref_id = explode('|',$response['Transaction_related_information']);
$transaction_id = $ref_id[1];
$last_id = explode('|',$response['Merchant_Information']);
$lastid = $last_id[1];
$eventid = $last_id[2];
$booking_id = $last_id[3];
$response = $BayanPayOnlineObject->decryptData($_REQUEST['responseParameter'],$BayanPayOnlineObject->merchantKey,$BayanPayOnlineObject->iv);
$ref_id = explode('|',$response['Transaction_related_information']);
$transaction_id = $ref_id[1];
$last_id = explode('|',$response['Merchant_Information']);
$lastid = $last_id[1];
$eventid = $last_id[2];
$booking_id = $last_id[3];
$this->Api_model->update_payment($response,$transaction_id,$lastid,'0');
redirect('https://timeout.sa/staging/failure?event_id='.$eventid);
......@@ -421,7 +420,7 @@ class Api extends CI_Controller {
'transactionDataBlock' => true,
'billingDataBlock' => true,
'shippingDataBlock' => true,
'paymentDataBlock' => false,
'paymentDataBlock' => true,
'merchantDataBlock' => true,
'otherDataBlock' => false,
'DCCDataBlock' => false
......@@ -466,17 +465,17 @@ class Api extends CI_Controller {
'shipToMobileNumber' => (isset($custData->phone))?$custData->phone:''
),
'Field_Existence_Indicator_Payment' => array(
'cardNumber' => '4111111111111111',
'expMonth' => '08',
'expYear' => '2020',
'CVV' => '123',
'cardHolderName' => 'Soloman',
'cardType' => 'Visa',
'custMobileNumber' => '9820998209',
'paymentID' => '123456',
'OTP' => '123456',
'gatewayID' => '1026',
'cardToken' => '1202'
'cardNumber' => '5123450000000008',
'expMonth' => '07',
'expYear' => '2025',
'CVV' => '100',
'cardHolderName' => 'Test Master',
'cardType' => 'Master',
'custMobileNumber' => '',
'paymentID' => '',
'OTP' => '',
'gatewayID' => '',
'cardToken' => ''
),
'Field_Existence_Indicator_Merchant' => array(
'UDF1' => $lastid,
......@@ -500,7 +499,7 @@ class Api extends CI_Controller {
);
return $BayanPayArray;
}
public function checker_bookingDetails(){
$data = (array) json_decode(file_get_contents('php://input'));
$res = $this->Api_model->checkerbookingdetails($data);
......
......@@ -34,38 +34,31 @@ class CMS extends CI_Controller {
public function changeCMSdata(){
$url = 'CMS';
$language = getLanguages();
$flashMsg = array('message'=>'Something went wrong, please try again..!','class'=>'error');
if(!isset($_POST) || empty($_POST)){
$this->session->set_flashdata('message',$flashMsg);
redirect(base_url($url));
}
if(!isset($_POST['faq_en']) || empty($_POST['faq_en'])){
unset($_POST['faq_en']);
}
if(!isset($_POST['faq_ar']) || empty($_POST['faq_ar'])){
unset($_POST['faq_ar']);
}
if(!isset($_POST['instruction_en']) || empty($_POST['instruction_en'])){
unset($_POST['instruction_en']);
}
if(!isset($_POST['instruction_ar']) || empty($_POST['instruction_ar'])){
unset($_POST['instruction_ar']);
}
if(!isset($_POST['privacy_policy_en']) || empty($_POST['privacy_policy_en'])){
unset($_POST['privacy_policy_en']);
}
if(!isset($_POST['privacy_policy_ar']) || empty($_POST['privacy_policy_ar'])){
unset($_POST['privacy_policy_ar']);
}
if(!isset($_POST['terms_and_conditions_en']) || empty($_POST['terms_and_conditions_en'])){
unset($_POST['terms_and_conditions_en']);
}
if(!isset($_POST['terms_and_conditions_ar']) || empty($_POST['terms_and_conditions_ar'])){
unset($_POST['terms_and_conditions_ar']);
}
$cmsData = array();
foreach($language AS $lang) {
$cmsData[$lang] = array('language_code'=>$lang);
if(isset($_POST['faq_'.$lang]) && !empty($_POST['faq_'.$lang])){
$cmsData[$lang]['faq'] = $_POST['faq_'.$lang];
}
if(isset($_POST['instruction_'.$lang]) && !empty($_POST['instruction_'.$lang])){
$cmsData[$lang]['instruction'] = $_POST['instruction_'.$lang];
}
if(isset($_POST['privacy_policy_'.$lang]) && !empty($_POST['privacy_policy_'.$lang])){
$cmsData[$lang]['privacy_policy'] = $_POST['privacy_policy_'.$lang];
}
if(isset($_POST['terms_and_conditions_'.$lang]) && !empty($_POST['terms_and_conditions_'.$lang])){
$cmsData[$lang]['terms_and_conditions'] = $_POST['terms_and_conditions_'.$lang];
}
}
$status = $this->Cms_model->updateCMS($_POST);
$status = $this->Cms_model->updateCMS($cmsData);
if($status){
$flashMsg['class'] = 'success';
$flashMsg['message'] = 'Settings Successfully Updated..!';
......
......@@ -53,24 +53,15 @@ class Category extends CI_Controller {
$err = 0;
$errMsg = '';
if($err == 0 && (!isset($_POST['category_en']) || empty($_POST['category_en']))){
if(!isset($_POST['category_name_EN']) || empty($_POST['category_name_EN'])){
$err = 1;
$errMsg = 'Provide a Category Name in English';
} else if($err == 0 && (!isset($_POST['category_ar']) || empty($_POST['category_ar']))){
$err = 1;
$errMsg = 'Provide a Category Name in Arabic';
} else if($err == 0 && (!isset($_POST['category_description']) || empty($_POST['category_description']))){
$err = 1;
$errMsg = 'Provide a Category Description';
} else if($err == 0 && (!isset($_FILES) || empty($_FILES) ||
!isset($_FILES['category_image_en']) || empty($_FILES['category_image_en']))){
} else if ($err == 0 &&
(!isset($_FILES) || empty($_FILES) || !isset($_FILES['category_image_EN']) ||
empty($_FILES['category_image_EN']))){
$err = 1;
$errMsg = 'Provide a Category Icon';
} else if($err == 0 && (!isset($_FILES) || empty($_FILES) ||
!isset($_FILES['category_image_ar'])||empty($_FILES['category_image_ar']))){
$err = 1;
$errMsg = 'Provide a Mobile Category Icon';
} else if($err == 0 && (!isset($_FILES) || empty($_FILES) ||
!isset($_FILES['category_banner'])||empty($_FILES['category_banner']))){
$err = 1;
$errMsg = 'Provide a Category Banner Image';
......@@ -80,26 +71,6 @@ class Category extends CI_Controller {
$this->load->library('upload');
$config = set_upload_service("assets/uploads/services");
$config['file_name'] = time()."_".$_FILES['category_image_en']['name'];
$this->upload->initialize($config);
if(!$this->upload->do_upload('category_image_en')){
$err = 1;
$errMsg = $this->upload->display_errors();
}else{
$upload_data = $this->upload->data();
$_POST['category_image_en'] = $config['upload_path']."/".$upload_data['file_name'];
}
$config['file_name'] = time()."_".$_FILES['category_image_ar']['name'];
$this->upload->initialize($config);
if(!$this->upload->do_upload('category_image_ar')){
$err = 1;
$errMsg = $this->upload->display_errors();
}else{
$upload_data = $this->upload->data();
$_POST['category_image_ar'] = $config['upload_path']."/".$upload_data['file_name'];
}
$config['file_name'] = time()."_".$_FILES['category_banner']['name'];
$this->upload->initialize($config);
if(!$this->upload->do_upload('category_banner')){
......@@ -109,6 +80,25 @@ class Category extends CI_Controller {
$upload_data = $this->upload->data();
$_POST['category_banner'] = $config['upload_path']."/".$upload_data['file_name'];
}
$language = getLanguages();
foreach($language AS $lang) {
if(!isset($_FILES['category_image_'.$lang]['name']) ||
empty($_FILES['category_image_'.$lang]['name'])){
continue;
}
$config['file_name'] = time()."_".$_FILES['category_image_'.$lang]['name'];
$this->upload->initialize($config);
if(!$this->upload->do_upload('category_image_'.$lang)){
$err = 1;
$errMsg = $this->upload->display_errors();
break;
}else{
$upload_data = $this->upload->data();
$_POST['category_image_'.$lang]=$config['upload_path']."/".$upload_data['file_name'];
}
}
}
if($err == 1){
......@@ -156,37 +146,28 @@ class Category extends CI_Controller {
$err = 0;
$errMsg = '';
if($err == 0 && (!isset($_POST['category_en']) || empty($_POST['category_en']))){
if(!isset($_POST['category_name_EN']) || empty($_POST['category_name_EN'])){
$err = 1;
$errMsg = 'Provide a Category Name in English';
} else if ($err == 0 && (!isset($_POST['category_ar']) || empty($_POST['category_ar']))){
$err = 1;
$errMsg = 'Provide a Category Name in Arabic';
} else if ($err == 0 && (!isset($_POST['category_description']) || empty($_POST['category_description']))){
$err = 1;
$errMsg = 'Provide a Category Description';
} else if ($err == 0 && (!isset($_FILES) || empty($_FILES) ||
!isset($_FILES['category_image_en']) || empty($_FILES['category_image_en']))){
$err = 1;
$errMsg = 'Provide a Category Icon';
}
if($err == 0){
$this->load->library('upload');
$config = set_upload_service("assets/uploads/services");
$config['file_name'] = time()."_".$_FILES['category_image_en']['name'];
$this->upload->initialize($config);
if($this->upload->do_upload('category_image_en')){
$upload_data = $this->upload->data();
$_POST['category_image_en'] = $config['upload_path']."/".$upload_data['file_name'];
}
$config['file_name'] = time()."_".$_FILES['category_image_ar']['name'];
$this->upload->initialize($config);
if($this->upload->do_upload('category_image_ar')){
$upload_data = $this->upload->data();
$_POST['category_image_ar'] = $config['upload_path']."/".$upload_data['file_name'];
$language = getLanguages();
foreach($language AS $lang) {
if(!isset($_FILES['category_image_'.$lang]['name']) ||
empty($_FILES['category_image_'.$lang]['name'])){
continue;
}
$config['file_name'] = time()."_".$_FILES['category_image_'.$lang]['name'];
$this->upload->initialize($config);
if($this->upload->do_upload('category_image_'.$lang)){
$upload_data = $this->upload->data();
$_POST['category_image_'.$lang]=$config['upload_path']."/".$upload_data['file_name'];
}
}
$config['file_name'] = time()."_".$_FILES['category_banner']['name'];
......
......@@ -44,7 +44,7 @@ class Country extends CI_Controller {
function createCountry(){
$flashMsg = array('message'=>'Something went wrong, please try again..!','class'=>'error');
if(!isset($_POST) || empty($_POST)){
if(!isset($_POST) || empty($_POST) || !isset($_FILES) || empty($_FILES)){
$this->session->set_flashdata('message',$flashMsg);
redirect(base_url('Country/addCountry'));
}
......@@ -69,8 +69,27 @@ class Country extends CI_Controller {
} else if($err == 0 && (!isset($_POST['currency_symbol']) || empty($_POST['currency_symbol']))){
$err = 1;
$errMsg = 'Provide a Currency Symbol';
} else if($err == 0 && (!isset($_FILES) || empty($_FILES) ||
!isset($_FILES['country_flag']) || empty($_FILES['country_flag']))){
$err = 1;
$errMsg = 'Provide a Category Flag';
}
if($err == 0){
$this->load->library('upload');
$config = set_upload_service("assets/uploads/services");
$config['file_name'] = time()."_".$_FILES['country_flag']['name'];
$this->upload->initialize($config);
if(!$this->upload->do_upload('country_flag')){
$err = 1;
$errMsg = $this->upload->display_errors();
}else{
$upload_data = $this->upload->data();
$_POST['country_flag'] = $config['upload_path']."/".$upload_data['file_name'];
}
}
if($err == 1){
$flashMsg['message'] = $errMsg;
$this->session->set_flashdata('message',$flashMsg);
......@@ -136,6 +155,18 @@ class Country extends CI_Controller {
$errMsg = 'Provide a Currency Symbol';
}
if($err == 0){
$this->load->library('upload');
$config = set_upload_service("assets/uploads/services");
$config['file_name'] = time()."_".$_FILES['country_flag']['name'];
$this->upload->initialize($config);
if($this->upload->do_upload('country_flag')){
$upload_data = $this->upload->data();
$_POST['country_flag'] = $config['upload_path']."/".$upload_data['file_name'];
}
}
if($err == 1){
$flashMsg['message'] = $errMsg;
$this->session->set_flashdata('message',$flashMsg);
......
......@@ -13,7 +13,6 @@ class Event extends CI_Controller {
redirect(base_url('Login'));
}
}
function listEvents(){
$template['page'] = 'Event/viewEventList';
$template['menu'] = 'Event Management';
......@@ -53,9 +52,9 @@ class Event extends CI_Controller {
function createEvent(){
ini_set("memory_limit", "-1");
set_time_limit(0);
$language = getLanguages();
$flashMsg = array('message'=>'Something went wrong, please try again..!','class'=>'error');
if(!isset($_POST) || empty($_POST)){
$this->session->set_flashdata('message',$flashMsg);
redirect(base_url('Event/addEvent'));
......@@ -63,22 +62,14 @@ class Event extends CI_Controller {
$err = 0;
$errMsg = '';
if($err == 0 && (!isset($_POST['event_name_en']) || empty($_POST['event_name_en']))){
if($err == 0 && (!isset($_POST['event_name_EN']) || empty($_POST['event_name_EN']))){
$err = 1;
$errMsg = 'Provide Event Name (English)';
}
else if($err == 0 && (!isset($_POST['event_name_ar']) || empty($_POST['event_name_ar']))){
$err = 1;
$errMsg = 'Provide Event Name (Arabic)';
}
else if ($err == 0 && (!isset($_POST['event_description_en']) || $_POST['event_description_en']=='')){
else if ($err == 0 && (!isset($_POST['event_description_EN']) || $_POST['event_description_EN']=='')){
$err = 1;
$errMsg = 'Provide Event Description (English)';
}
else if ($err==0&&(!isset($_POST['event_description_ar'])||$_POST['event_description_ar']=='')){
$err = 1;
$errMsg = 'Provide Event Description (Arabic)';
}
}
else if ($err == 0 && (!isset($_POST['event_start_date']) || $_POST['event_start_date'] == '')){
$err = 1;
$errMsg = 'Provide Event Start Date';
......@@ -119,13 +110,15 @@ class Event extends CI_Controller {
}
$_POST['custom_seat_layout'] = json_encode($cstmSeatLayout);
} else {
$_POST['seat_pricing'] = json_encode(
array('price'=>$_POST['price'],
'capacity'=>$_POST['capacity'],
'price_details_en'=>$_POST['price_details_en'],
'price_details_ar'=>$_POST['price_details_ar']
)
);
$seatPriceArr = array('price'=>$_POST['price'],'capacity'=>$_POST['capacity']);
foreach($language AS $lang) {
$details = $_POST['price_details_EN'];
if(isset($_POST['price_details_'.$lang]) && !empty($_POST['price_details_'.$lang])){
$details = $_POST['price_details_'.$lang];
}
$seatPriceArr['price_details_'.$lang] = $details;
}
$_POST['seat_pricing'] = json_encode($seatPriceArr);
}
$_POST['max_booking'] = (isset($_POST['max_booking']) && !empty($_POST['max_booking']))?
......@@ -133,18 +126,22 @@ class Event extends CI_Controller {
$provider = ($this->session->userdata['user_type']==1)?'1':$this->session->userdata['id'];
$eventData = array('venue_id'=>$_POST['venue_id'],
'event_name_en'=>$_POST['event_name_en'],
'event_name_ar'=>$_POST['event_name_ar'],
'category_id'=>$_POST['category_id'],
'provider_id'=>$provider,
'max_booking'=>$_POST['max_booking'],
'has_payment'=>$_POST['has_payment'],
'seat_pricing'=>$_POST['seat_pricing'],
'event_description_en'=>$_POST['event_description_en'],
'event_description_ar'=>$_POST['event_description_ar'],
'custom_seat_layout'=>$_POST['custom_seat_layout']);
$languageArr = array();
foreach($language AS $lang) {
if((isset($_POST['event_name_'.$lang]) && !empty($_POST['event_name_'.$lang])) ||
(isset($_POST['event_description_'.$lang]) && !empty($_POST['event_description_'.$lang]))){
$languageArr[$lang]['event_name'] = $_POST['event_name_'.$lang];
$languageArr[$lang]['event_desc'] = $_POST['event_description_'.$lang];
}
}
$event_id = $this->Event_model->createEvent($eventData);
$event_id = $this->Event_model->createEvent($eventData,$languageArr);
if(!empty($event_id)){
$insertEventDate = array();
......@@ -229,32 +226,29 @@ class Event extends CI_Controller {
function updateEvent($event_id=''){
ini_set("memory_limit", "-1");
set_time_limit(0);
$language = getLanguages();
$flashMsg = array('message'=>'Something went wrong, please try again..!','class'=>'error');
if(empty($event_id) || empty($event_id = decode_param($event_id)) ||
!isset($_POST) || empty($_POST)){
$this->session->set_flashdata('message',$flashMsg);
redirect(base_url('Event/listEvents'));
}
$flashMsg = array('message'=>'Something went wrong, please try again..!','class'=>'error');
if(!isset($_POST) || empty($_POST)){
$this->session->set_flashdata('message',$flashMsg);
redirect(base_url('Event/addEvent'));
}
$err = 0;
$errMsg = '';
if($err == 0 && (!isset($_POST['event_name_en']) || empty($_POST['event_name_en']))){
if($err == 0 && (!isset($_POST['event_name_EN']) || empty($_POST['event_name_EN']))){
$err = 1;
$errMsg = 'Provide Event Name (English)';
}
else if($err == 0 && (!isset($_POST['event_name_ar']) || empty($_POST['event_name_ar']))){
$err = 1;
$errMsg = 'Provide Event Name (Arabic)';
}
else if ($err == 0 && (!isset($_POST['event_description_en']) || $_POST['event_description_en']=='')){
else if ($err == 0 && (!isset($_POST['event_description_EN']) || $_POST['event_description_EN']=='')){
$err = 1;
$errMsg = 'Provide Event Discription (English)';
}
else if ($err==0&&(!isset($_POST['event_description_ar'])||$_POST['event_description_ar']=='')){
$err = 1;
$errMsg = 'Provide Event Description (Arabic)';
$errMsg = 'Provide Event Description (English)';
}
else if ($err == 0 && (!isset($_POST['event_start_date']) || $_POST['event_start_date'] == '')){
$err = 1;
......@@ -296,13 +290,15 @@ class Event extends CI_Controller {
}
$_POST['custom_seat_layout'] = json_encode($cstmSeatLayout);
} else {
$_POST['seat_pricing'] = json_encode(
array('price'=>$_POST['price'],
'capacity'=>$_POST['capacity'],
'price_details_en'=>$_POST['price_details_en'],
'price_details_ar'=>$_POST['price_details_ar']
)
);
$seatPriceArr = array('price'=>$_POST['price'],'capacity'=>$_POST['capacity']);
foreach($language AS $lang) {
$details = $_POST['price_details_EN'];
if(isset($_POST['price_details_'.$lang]) && !empty($_POST['price_details_'.$lang])){
$details = $_POST['price_details_'.$lang];
}
$seatPriceArr['price_details_'.$lang] = $details;
}
$_POST['seat_pricing'] = json_encode($seatPriceArr);
}
$_POST['max_booking'] = (isset($_POST['max_booking']) && !empty($_POST['max_booking']))?
......@@ -310,18 +306,22 @@ class Event extends CI_Controller {
$provider = ($this->session->userdata['user_type']==1)?'1':$this->session->userdata['id'];
$eventData = array('venue_id'=>$_POST['venue_id'],
'event_name_en'=>$_POST['event_name_en'],
'event_name_ar'=>$_POST['event_name_ar'],
'category_id'=>$_POST['category_id'],
'provider_id'=>$provider,
'max_booking'=>$_POST['max_booking'],
'has_payment'=>$_POST['has_payment'],
'seat_pricing'=>$_POST['seat_pricing'],
'event_description_en'=>$_POST['event_description_en'],
'event_description_ar'=>$_POST['event_description_ar'],
'custom_seat_layout'=>$_POST['custom_seat_layout']);
$languageArr = array();
foreach($language AS $lang) {
if((isset($_POST['event_name_'.$lang]) && !empty($_POST['event_name_'.$lang])) ||
(isset($_POST['event_description_'.$lang]) && !empty($_POST['event_description_'.$lang]))){
$languageArr[$lang]['event_name'] = $_POST['event_name_'.$lang];
$languageArr[$lang]['event_desc'] = $_POST['event_description_'.$lang];
}
}
$status = $this->Event_model->updateEvent($event_id, $eventData);
$status = $this->Event_model->updateEvent($event_id, $eventData, $languageArr);
if($status){
$insertEventDate = array();
......
......@@ -122,7 +122,7 @@ class Notification extends CI_Controller {
foreach($users AS $user){
$userData = array('id'=>$event_data->event_id,
'title'=>$event_data->event_name_en,
'title'=>$event_data->event_name_EN,
'message'=>$message);
$this->push_sent_cancel('1',$user['fcm_token'],$userData);
}
......
......@@ -50,22 +50,18 @@ class Region extends CI_Controller {
$this->session->set_flashdata('message',$flashMsg);
redirect(base_url('Region/addRegion'));
}
$err = 0;
$errMsg = '';
if($err == 0 && (!isset($_POST['name_en']) || empty($_POST['name_en']))){
if($err == 0 && (!isset($_POST['name_EN']) || empty($_POST['name_EN']))){
$err = 1;
$errMsg = 'Provide a Region Name in English';
} else if($err == 0 && (!isset($_POST['name_ar']) || empty($_POST['name_ar']))){
$err = 1;
$errMsg = 'Provide a Region Name in Arabic';
} else if($err == 0 && (!isset($_FILES) || !isset($_FILES['region_icon']) ||
empty($_FILES['region_icon']))){
$err = 1;
$errMsg = 'Provide a Region Icon';
}
$latLng = getLocationLatLng($_POST['name_en']);
$latLng = getLocationLatLng($_POST['name_EN']);
if($err == 0 && empty($latLng)){
$err = 1;
$errMsg = 'Provide a proper Region Name';
......@@ -76,7 +72,7 @@ class Region extends CI_Controller {
if($err == 0){
$config = set_upload_service("assets/uploads/services");
$this->load->library('upload');
$config['file_name'] = time()."_".$_FILES['region_icon']['name_en'];
$config['file_name'] = time()."_".$_FILES['region_icon']['name'];
$this->upload->initialize($config);
if(!$this->upload->do_upload('region_icon')){
$err = 1;
......@@ -132,12 +128,9 @@ class Region extends CI_Controller {
$err = 0;
$errMsg = '';
if($err == 0 && (!isset($_POST['name_en']) || empty($_POST['name_en']))){
if($err == 0 && (!isset($_POST['name_EN']) || empty($_POST['name_EN']))){
$err = 1;
$errMsg = 'Provide a Region Name in English';
} else if($err == 0 && (!isset($_POST['name_ar']) || empty($_POST['name_ar']))){
$err = 1;
$errMsg = 'Provide a Region Name in Arabic';
}
if($err == 1){
......@@ -149,7 +142,7 @@ class Region extends CI_Controller {
if(isset($_FILES) && isset($_FILES['region_icon']) && !empty($_FILES['region_icon'])){
$config = set_upload_service("assets/uploads/services");
$this->load->library('upload');
$config['file_name'] = time()."_".$_FILES['region_icon']['name_en'];
$config['file_name'] = time()."_".$_FILES['region_icon']['name'];
$this->upload->initialize($config);
if($this->upload->do_upload('region_icon')){
$upload_data = $this->upload->data();
......@@ -157,7 +150,7 @@ class Region extends CI_Controller {
}
}
$latLng = getLocationLatLng($_POST['name_en']);
$latLng = getLocationLatLng($_POST['name_EN']);
if($err == 0 && empty($latLng)){
$err = 1;
$errMsg = 'Provide a proper Region Name';
......@@ -168,7 +161,7 @@ class Region extends CI_Controller {
if($err == 0){
$config = set_upload_service("assets/uploads/services");
$this->load->library('upload');
$config['file_name'] = time()."_".$_FILES['region_icon']['name_en'];
$config['file_name'] = time()."_".$_FILES['region_icon']['name'];
$this->upload->initialize($config);
if(!$this->upload->do_upload('region_icon')){
$err = 1;
......
......@@ -50,12 +50,9 @@ class Tag extends CI_Controller {
$err = 0;
$errMsg = '';
if($err == 0 && (!isset($_POST['tag_name']) || empty($_POST['tag_name']))){
if($err == 0 && (!isset($_POST['tag_en']) || empty($_POST['tag_en']))){
$err = 1;
$errMsg = 'Provide a Tag (English)';
} else if($err == 0 && (!isset($_POST['tag_name_ar']) || empty($_POST['tag_name_ar']))){
$err = 1;
$errMsg = 'Provide a Tag (Arabic)';
}
$status = $this->Tag_model->createTag($_POST);
......@@ -101,9 +98,6 @@ class Tag extends CI_Controller {
if($err == 0 && (!isset($_POST['tag_name']) || empty($_POST['tag_name']))){
$err = 1;
$errMsg = 'Provide a Tag (English)';
} else if($err == 0 && (!isset($_POST['tag_name_ar']) || empty($_POST['tag_name_ar']))){
$err = 1;
$errMsg = 'Provide a Tag (Arabic)';
}
$status = $this->Tag_model->updateTags(decode_param($tag_id),$_POST);
......
......@@ -58,21 +58,15 @@ class Venue extends CI_Controller {
if($err == 0 && (!isset($_POST['region_id']) || empty($_POST['region_id']))){
$err = 1;
$errMsg = 'Select a region';
} else if ($err == 0 && (!isset($_POST['venue_name_en']) || $_POST['venue_name_en'] == '' )){
} else if ($err == 0 && (!isset($_POST['venue_name_EN']) || $_POST['venue_name_EN'] == '' )){
$err = 1;
$errMsg = 'Provide a Venue Name (English)';
} else if ($err == 0 && (!isset($_POST['venue_name_ar']) || $_POST['venue_name_ar'] == '' )){
$err = 1;
$errMsg = 'Provide a Venue Name (Arabic)';
} else if ($err == 0 && (!isset($_POST['location']) || $_POST['location'] == '' )){
} else if ($err == 0 && (!isset($_POST['location']) || $_POST['location'] == '' )){
$err = 1;
$errMsg = 'Provide a Location';
} else if ($err == 0 && (!isset($_POST['host_cat_id']) || $_POST['host_cat_id'] == '' )){
$err = 1;
$errMsg = 'Select a Host';
} else if ($err == 0 && (!isset($_POST['venue_details']) || $_POST['venue_details'] == '' )){
$err = 1;
$errMsg = 'Provide Proper Venue Details';
} else if ($err == 0 && isset($_POST['has_layout']) && $_POST['has_layout'] == 1 &&
(!isset($_POST['seat_color']) || empty($_POST['seat_color']) || !isset($_FILES) ||
!isset($_POST['seat_price']) || empty($_POST['seat_price']) || empty($_FILES) ||
......@@ -122,19 +116,19 @@ class Venue extends CI_Controller {
$_POST['location_lat'] = $locData['lat'];
$_POST['location_lng'] = $locData['lng'];
$locality = array();
if(isset($_POST['locality_en']) && !empty($_POST['locality_en']) &&
isset($_POST['locality_ar']) && !empty($_POST['locality_ar'])){
$locality['locality_en'] = $_POST['locality_en'];
$locality['locality_ar'] = $_POST['locality_ar'];
}
unset($_POST['locality_en'],$_POST['locality_type'],$_POST['has_layout'],$_POST['seat_color'],
$_POST['seat_price'],$_POST['seat_capacity'],$_POST['locality_ar']);
$language = getLanguages();
$locality_id = $this->Venue_model->createLocality($language,$_POST);
$_POST['locality_id'] = (!empty($locality_id))?$locality_id:$_POST['locality_id'];
if($this->session->userdata['user_type'] == 2){
$_POST['provider_id'] = $this->session->userdata['id'];
foreach($language AS $lang) {
if(isset($_POST['locality_name_'.$lang])) unset($_POST['locality_name_'.$lang]);
}
$status = $this->Venue_model->createVenue($_POST,$locality);
unset($_POST['has_layout'],$_POST['seat_capacity'],
$_POST['seat_color'],$_POST['locality_type'],$_POST['seat_price']);
$_POST['provider_id'] = ($this->session->userdata['user_type'] == 2)?$this->session->userdata['id']:0;
$status = $this->Venue_model->createVenue($_POST);
if($status == 1){
$flashMsg['class'] = 'success';
$flashMsg['message'] = 'Venue Created';
......@@ -184,21 +178,15 @@ class Venue extends CI_Controller {
if($err == 0 && (!isset($_POST['region_id']) || empty($_POST['region_id']))){
$err = 1;
$errMsg = 'Select a region';
} else if ($err == 0 && (!isset($_POST['venue_name_en']) || $_POST['venue_name_en'] == '' )){
} else if ($err == 0 && (!isset($_POST['venue_name_EN']) || $_POST['venue_name_EN'] == '' )){
$err = 1;
$errMsg = 'Provide a Venue Name (English)';
} else if ($err == 0 && (!isset($_POST['venue_name_ar']) || $_POST['venue_name_ar'] == '' )){
$err = 1;
$errMsg = 'Provide a Venue Name (Arabic)';
} else if ($err == 0 && (!isset($_POST['location']) || $_POST['location'] == '' )){
$err = 1;
$errMsg = 'Provide a Location';
} else if ($err == 0 && (!isset($_POST['host_cat_id']) || $_POST['host_cat_id'] == '' )){
$err = 1;
$errMsg = 'Select a Host';
} else if ($err == 0 && (!isset($_POST['venue_details']) || $_POST['venue_details'] == '' )){
$err = 1;
$errMsg = 'Provide Proper Venue Details';
} else if ($err == 0 && isset($_POST['has_layout']) && $_POST['has_layout'] == 1 &&
(!isset($_FILES,$_POST['seat_price'],$_POST['seat_color'],$_FILES['layout_image']) ||
empty($_POST['seat_color']) || empty($_POST['seat_price']) || empty($_FILES) ||
......@@ -239,26 +227,27 @@ class Venue extends CI_Controller {
if($err == 1){
$flashMsg['message'] = $errMsg;
$this->session->set_flashdata('message',$flashMsg);
redirect(base_url('Venue/addVenues'));
redirect(base_url('Venue/editVenues/'.$venue_id));
}
$_POST['location_lat'] = $locData['lat'];
$_POST['location_lng'] = $locData['lng'];
$locality = array();
if(isset($_POST['locality_en']) && !empty($_POST['locality_en']) &&
isset($_POST['locality_ar']) && !empty($_POST['locality_ar'])){
$locality['locality_en'] = $_POST['locality_en'];
$locality['locality_ar'] = $_POST['locality_ar'];
$language = getLanguages();
$locality_id = $this->Venue_model->createLocality($language,$_POST);
$_POST['locality_id'] = (!empty($locality_id))?$locality_id:$_POST['locality_id'];
foreach($language AS $lang) {
if(isset($_POST['locality_name_'.$lang])) unset($_POST['locality_name_'.$lang]);
}
unset($_POST['locality_en'],$_POST['locality_type'],$_POST['has_layout'],$_POST['seat_color'],
$_POST['seat_price'],$_POST['seat_capacity'],$_POST['locality_ar']);
unset($_POST['has_layout'],$_POST['seat_capacity'],
$_POST['seat_color'],$_POST['locality_type'],$_POST['seat_price']);
if($this->session->userdata['user_type'] == 2){
$_POST['provider_id'] = $this->session->userdata['id'];
}
$status = $this->Venue_model->updateVenues(decode_param($venue_id),$_POST,$locality);
$status = $this->Venue_model->updateVenues(decode_param($venue_id),$_POST);
if($status == 1){
$flashMsg['class'] = 'success';
$flashMsg['message'] = 'Venue Created';
......
......@@ -63,7 +63,6 @@ class Webservice extends CI_Controller {
}
}
public function check_email_availability() {
$data = (array) json_decode(file_get_contents('php://input'));
$res = $this->Webservice_model->availability($data);
......@@ -86,33 +85,30 @@ class Webservice extends CI_Controller {
}
}
public function get_events_list() {
$data = $_GET;
$data['auth_token'] = $this->auth_token;
$res = $this->Webservice_model->discover($data);
if($res['status']!=0 && sizeof($res['data'])){
$this->responseEventList($res['data']);
}elseif($res['status']!=0 && sizeof($res['data'] == 0)){
$this->response($res['data']);
}else{
$this->errorResponse($res['code'],$res['message']);
}
public function get_events_list() {
$data = $_GET;
$data['auth_token'] = $this->auth_token;
$res = $this->Webservice_model->discover($data);
if($res['status']!=0 && sizeof($res['data'])){
$this->responseEventList($res['data']);
}elseif($res['status']!=0 && sizeof($res['data'] == 0)){
$this->response($res['data']);
}else{
$this->errorResponse($res['code'],$res['message']);
}
}
public function events_details($event_id = null) {
$data['event_id'] = $_GET['event_id'];
$data['auth_token'] = $this->auth_token;
$data['event_date_id'] = '';
if($data['event_id'] == null) {
public function events_details($event_id = '') {
if(empty($event_id) && (!isset($_GET['event_id']) || empty($event_id = $_GET['event_id']))){
$this->errorResponse("ER16","Event id is null or empty");die;
}
if (isset($_GET['event_date_id']) && !empty($_GET['event_date_id'])){
$data['event_date_id'] = $_GET['event_date_id'];
}
$data['event_id'] = $event_id;
$data['auth_token'] = $this->auth_token;
$data['event_date_id'] = (isset($_GET['event_date_id']) && !empty($_GET['event_date_id']))?
$_GET['event_date_id']:'';
$res = $this->Webservice_model->event($data);
if($res['status']!=0){
if($res['status'] != 0){
$this->response($res['data']);
} else{
$this->errorResponse($res['code'],$res['message']);
......@@ -136,8 +132,7 @@ class Webservice extends CI_Controller {
print json_encode($result);
}
public function successResponse($data) {
public function successResponse($data) {
$result = array(
'status' => 'success',
);
......@@ -153,8 +148,7 @@ class Webservice extends CI_Controller {
print json_encode($result);
}
public function get_category_list($query = null) {
public function get_category_list($query = null) {
$data['query'] = !empty($_GET['query']) ? $_GET['query'] : '';
$data['auth_token'] = $this->auth_token;
$res = $this->Webservice_model->get_category_list($data);
......@@ -166,7 +160,7 @@ class Webservice extends CI_Controller {
}
}
public function add_favorites(){
public function add_favorites(){
$data = (array) json_decode(file_get_contents('php://input'));
$data['auth_token'] = $this->auth_token;
$res = $this->Webservice_model->add_favorites($data);
......@@ -178,8 +172,7 @@ class Webservice extends CI_Controller {
}
}
public function get_cities_list() {
public function get_cities_list() {
$data['auth_token'] = $this->auth_token;
$res = $this->Webservice_model->get_cities_list($data);
if($res['status']!=0){
......@@ -188,11 +181,9 @@ class Webservice extends CI_Controller {
else{
$this->errorResponse($res['code'],$res['message']);
}
}
public function update_city(){
public function update_city(){
$data = (array) json_decode(file_get_contents('php://input'));
$data['auth_token'] = $this->auth_token;
$res = $this->Webservice_model->update_city($data);
......@@ -205,11 +196,11 @@ class Webservice extends CI_Controller {
}
public function booking_summary($booking_id = null) {
$data['booking_id'] = $_GET['booking_id'];
if($data['booking_id'] == null) {
$this->errorResponse("ER34","Booking id is null or empty");
die;
}
$data['booking_id'] = $_GET['booking_id'];
if($data['booking_id'] == null) {
$this->errorResponse("ER34","Booking id is null or empty");
die;
}
$data['auth_token'] = $this->auth_token;
$res = $this->Webservice_model->booking_summary($data);
if($res['status']!=0){
......@@ -218,7 +209,6 @@ class Webservice extends CI_Controller {
else{
$this->errorResponse($res['code'],$res['message']);
}
}
public function payment(){
......@@ -294,6 +284,7 @@ class Webservice extends CI_Controller {
$this->errorResponse($res['code'],$res['message']);
}
}
public function cancel_booking() {
$data = (array) json_decode(file_get_contents('php://input'));
$data['auth_token'] = $this->auth_token;
......@@ -322,12 +313,12 @@ class Webservice extends CI_Controller {
$data['auth_token'] = $this->auth_token;
$res = $this->Webservice_model->bookedlist($data);
if(sizeof($res['data']) && $res['status']!=0){
$this->responseBookList($res['data']);
}elseif(sizeof($res['data'] == 0) && $res['status']!=0){
$this->response($res['data']);
}else{
$this->errorResponse($res['code'],$res['message']);
}
$this->responseBookList($res['data']);
}elseif(sizeof($res['data'] == 0) && $res['status']!=0){
$this->response($res['data']);
}else{
$this->errorResponse($res['code'],$res['message']);
}
}
public function settings() {
......@@ -341,7 +332,7 @@ class Webservice extends CI_Controller {
}
}
public function forgot_password() {
public function forgot_password() {
$data = (array) json_decode(file_get_contents('php://input'));
$res = $this->Webservice_model->forgot_password($data);
if($res['status']!=0){
......@@ -367,8 +358,7 @@ class Webservice extends CI_Controller {
}
public function get_last_booking() {
$data['auth_token'] = $this->auth_token;
$data['auth_token'] = $this->auth_token;
$res = $this->Webservice_model->get_last_booking($data);
if($res['status']!=0){
$this->response($res['data']);
......@@ -379,12 +369,12 @@ class Webservice extends CI_Controller {
}
public function responseBookList($data) {
$result = array(
'status' => 'success',
'data' => array(
'bookings' =>$data['bookings']),
'meta' =>$data['meta']
);
$result = array(
'status' => 'success',
'data' => array(
'bookings' =>$data['bookings']),
'meta' =>$data['meta']
);
print json_encode($result);
}
......@@ -413,7 +403,6 @@ class Webservice extends CI_Controller {
public function get_app_version(){
$res = $this->Webservice_model->get_app_version();
if($res['status'] != 0)
$this->response($res['data']);
else
......@@ -424,7 +413,6 @@ class Webservice extends CI_Controller {
$data = (array) json_decode(file_get_contents('php://input'));
$data['auth_token'] = $this->auth_token;
$res = $this->Webservice_model->logout($data);
if($res['status'] != 0)
$this->successResponse($res);
else
......@@ -438,7 +426,6 @@ class Webservice extends CI_Controller {
}
$data = $_GET;
$data['auth_token'] = $this->auth_token;
$res = $this->Webservice_model->event_search($data);
if($res['status']!=0){
$this->response($res['data']);
......@@ -455,7 +442,6 @@ class Webservice extends CI_Controller {
empty($settings['currency_api'])){
return;
}
$sourceCur = (!empty($settings['currency']))?$settings['currency']:'SAR';
$coma = '';
$convertCur = '';
......@@ -463,20 +449,16 @@ class Webservice extends CI_Controller {
$convertCur .= $coma.$curr['currency'];
$coma = ',';
}
$params = 'currencies='.$convertCur;
$params .= '&source='.$sourceCur;
$params .= '&access_key='.$settings['currency_api'];
$apiUrl = "http://apilayer.net/api/live?".$params;
$ch = curl_init($apiUrl);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
$json = curl_exec($ch);
curl_close($ch);
$exchangeRates = json_decode($json, true);
if(empty($exchangeRates) || !isset($exchangeRates['quotes']) ||
empty($conversion = $exchangeRates['quotes'])){
if(empty($exchangeRates) || !isset($exchangeRates['quotes']) || empty($conversion = $exchangeRates['quotes'])){
return;
}
foreach($conversion AS $curr => $rate) {
......@@ -522,7 +504,6 @@ class Webservice extends CI_Controller {
}
public function get_friend_requests(){
$data = (array) json_decode(file_get_contents('php://input'));
$data['auth_token'] = $this->auth_token;
$res = $this->Webservice_model->get_friend_requests($data);
if($res['status']!=0){
......@@ -568,5 +549,27 @@ class Webservice extends CI_Controller {
}
}
}
public function getCountry() {
$res = $this->Webservice_model->getCountry();
if($res['status'] == 'success'){
$this->response($res['data']);
}
else{
$this->errorResponse($res['code'],$res['message']);
}
}
public function validate_promo_code(){
$data = (array) json_decode(file_get_contents('php://input'));
$data['auth_token'] = $this->auth_token;
$res = $this->Webservice_model->validate_promo_code($data);
if($res['status']!=0){
$this->response($res['data']);
}
else{
$this->errorResponse($res['code'],$res['message']);
}
}
}
?>
......@@ -96,26 +96,30 @@
return $unique;
}
function genQRcode($data){
function genQRcode($qr_id='',$url='',$custmLogo=''){
if(empty($qr_id)){
return '';
}
include 'qr_code/autoload.php';
$logo = 'assets/images/qr-cod-icon.png';
$QR = imagecreatefrompng('https://chart.googleapis.com/chart?cht=qr&chld=H|1&chs=500x500&chl='.urlencode($data));
$qr_id = urlencode($qr_id);
$logo = (!empty($custmLogo))?$custmLogo:'assets/images/qr-cod-icon.png';
$savePath = (!empty($url))?$url:"assets/uploads/qrcode/bookCode_".time().".png";
$logo = imagecreatefromstring(file_get_contents($logo));
$QR_width = imagesx($QR);
$QR_height = imagesy($QR);
$QR = imagecreatefrompng('https://chart.googleapis.com/chart?cht=qr&chld=H|1&chs=500x500&chl='.$qr_id);
$logo_width = imagesx($logo);
$logo_height = imagesy($logo);
$logo = imagecreatefromstring(file_get_contents($logo));
$qrWidth = imagesx($QR)/3;
$qrHeight = imagesy($QR)/3;
$logo_qr_width = $QR_width/3;
$scale = $logo_width/$logo_qr_width;
$logo_qr_height = $logo_height/$scale;
$logoWidth = imagesx($logo);
$logoHeight = imagesy($logo);
imagecopyresampled($QR, $logo, $QR_width/3, $QR_height/3, 0, 0, $logo_qr_width, $logo_qr_height, $logo_width, $logo_height);
$scale = $logoWidth/$qrWidth;
$imgWidth = $qrWidth;
$imgHeight = $logoHeight/$scale;
$savePath = "assets/uploads/qrcode/bookCode_".time().".png";
imagecopyresampled($QR,$logo,$imgWidth,$qrHeight,0,0,$imgWidth,$imgHeight,$logoWidth,$logoHeight);
imagepng($QR, $savePath);
return $savePath;
......@@ -175,4 +179,197 @@
}
return $menus;
}
function langTranslator($id='',$module='',$lngCode=''){
$thisObj = & get_instance();
if (empty($id) && empty($module)){
return false;
}
$cond = '';
$langArr = array();
$orderBy = " ORDER BY CASE WHEN language_code LIKE 'EN' THEN 0 ELSE 1 END, language_code ASC ";
if(!empty($lngCode)){
$cond = "(language_code='$lngCode' OR language_code='EN') AND ";
}
switch($module) {
case 'EVT':
$cond .= "event_id='$id'";
$sql = "SELECT * FROM translator_event WHERE $cond $orderBy";
$resp = $thisObj->db->query($sql)->result_array();
$evtName = $evtDesc = '';
if(empty($lngCode)){
$languages = getLanguages();
foreach ($languages AS $lang) {
$langArr['event_name_'.$lang] = $langArr['event_description_'.$lang] = '';
}
} else {
$langArr['event_name'] = $langArr['event_description'] = '';
}
foreach ($resp AS $data) {
$code = (empty($lngCode))?'_'.$data['language_code']:'';
$evtName = ($code=='en')?$data['event_name']:'';
$evtDesc = ($code=='en')?$data['event_description']:'';
$name = (!empty($data['event_name']))?$data['event_name']:$evtName;
$desc = (!empty($data['event_description']))?$data['event_description']:$evtDesc;
$langArr['event_name'.$code] = $name;
$langArr['event_description'.$code] = $desc;
}
break;
case 'VEN':
$cond .= "venue_id='$id'";
$sql = "SELECT * FROM translator_venue WHERE $cond $orderBy";
$resp = $thisObj->db->query($sql)->result_array();
$venName = '';
if(empty($lngCode)){
$languages = getLanguages();
foreach ($languages AS $lang) {
$langArr['venue_name_'.$lang] = '';
}
} else {
$langArr['venue_name'] = '';
}
foreach ($resp AS $data) {
$code = (empty($lngCode))?'_'.$data['language_code']:'';
$venName = ($code=='en')?$data['venue_name']:'';
$name = (!empty($data['venue_name']))?$data['venue_name']:$venName;
$langArr['venue_name'.$code] = $name;
}
break;
case 'CAT':
$cond .= "category_id='$id'";
$sql = "SELECT * FROM translator_category WHERE $cond $orderBy";
$resp = $thisObj->db->query($sql)->result_array();
$catName = $catImage = '';
if(empty($lngCode)){
$languages = getLanguages();
foreach ($languages AS $lang) {
$langArr['category_name_'.$lang] = $langArr['category_image_'.$lang] = '';
}
} else {
$langArr['category_name'] = $langArr['category_image'] = '';
}
foreach ($resp AS $data) {
$code = (empty($lngCode))?'_'.$data['language_code']:'';
$catName = ($code=='en')?$data['category_name']:'';
$catImage= ($code=='en')?$data['category_image']:'';
$name = (!empty($data['category_name']))?$data['category_name']:$catName;
$image = (!empty($data['category_image']))?$data['category_image']:$catImage;
$langArr['category_name'.$code] = $name;
$langArr['category_image'.$code] = $image;
}
break;
case 'LOC':
$cond .= "locality_id='$id'";
$sql = "SELECT * FROM translator_locality WHERE $cond $orderBy";
$resp = $thisObj->db->query($sql)->result_array();
$locName = '';
if(empty($lngCode)){
$languages = getLanguages();
foreach ($languages AS $lang) {
$langArr['locality_name_'.$lang] = '';
}
} else {
$langArr['locality_name'] = '';
}
foreach ($resp AS $data) {
$code = (empty($lngCode))?'_'.$data['language_code']:'';
$locName = ($code=='en')?$data['locality_name']:'';
$name = (!empty($data['locality_name']))?$data['locality_name']:$locName;
$langArr['locality_name'.$code] = $name;
}
break;
case 'REG':
$cond .= "region_id='$id'";
$sql = "SELECT * FROM translator_region WHERE $cond $orderBy";
$resp = $thisObj->db->query($sql)->result_array();
$regName = '';
if(empty($lngCode)){
$languages = getLanguages();
foreach ($languages AS $lang) {
$langArr['region_name_'.$lang] = '';
}
} else {
$langArr['region_name'] = '';
}
foreach ($resp AS $data) {
$code = (empty($lngCode))?'_'.$data['language_code']:'';
$regName = ($code=='en')?$data['region_name']:'';
$name = (!empty($data['region_name']))?$data['region_name']:$regName;
$langArr['region_name'.$code] = $name;
}
break;
case 'TAG':
$cond .= "tag_id='$id'";
$sql = "SELECT * FROM translator_tag WHERE $cond $orderBy";
$resp = $thisObj->db->query($sql)->result_array();
$regName = '';
if(empty($lngCode)){
$languages = getLanguages();
foreach ($languages AS $lang) {
$langArr['tag_'.$lang] = '';
}
} else {
$langArr['tag'] = '';
}
foreach ($resp AS $data) {
$code = (empty($lngCode))?'_'.$data['language_code']:'';
$regName = ($code=='en')?$data['tag']:'';
$name = (!empty($data['tag']))?$data['tag']:$regName;
$langArr['tag'.$code] = $name;
}
break;
case 'PROMO':
$cond .= "promocode_id='$id'";
$sql = "SELECT * FROM translator_promocode WHERE $cond $orderBy";
$resp = $thisObj->db->query($sql)->result_array();
$promoDesc = $promoTc = '';
if(empty($lngCode)){
$languages = getLanguages();
foreach ($languages AS $lang) {
$langArr['promocode_tc_'.$lang] = $langArr['promocode_desc_'.$lang] = '';
}
} else {
$langArr['promocode_tc'] = $langArr['promocode_desc'] = '';
}
foreach ($resp AS $data) {
$code = (empty($lngCode))?'_'.$data['language_code']:'';
$promoDesc = $promoTc = '';
if($code=='en'){
$promoTc = $data['promocode_tc'];
$promoDesc = $data['promocode_desc'];
}
$tc = (!empty($data['promocode_tc']))?$data['promocode_tc']:$promoTc;
$desc = (!empty($data['promocode_desc']))?$data['promocode_desc']:$promoDesc;
$langArr['promocode_tc'.$code] = $tc;
$langArr['promocode_desc'.$code] = $desc;
}
break;
}
return $langArr;
}
function getLanguages(){
$thisObj = & get_instance();
$sql = "SELECT language_code FROM country GROUP BY language_code
ORDER BY CASE WHEN language_code LIKE 'EN' THEN 0 ELSE 1 END, language_code ASC";
$langData = $thisObj->db->query($sql);
if(empty($langData) || empty($langData = $langData->result_array())){
return array('EN');
}
$langArr = array();
foreach ($langData AS $lang) {
$langArr[] = $lang['language_code'];
}
return $langArr;
}
?>
\ No newline at end of file
......@@ -42,7 +42,7 @@ class Api_model extends CI_Model {
function register($data) {
try{
$email = $data['email_id'];
$phone = $data['phone'];
$phone = preg_replace('/\D/', '', $data['phone']);
$res_count =
$this->db->query("SELECT * FROM customer
INNER JOIN `users` ON users.id=customer.customer_id AND users.user_type='3'
......@@ -509,16 +509,34 @@ class Api_model extends CI_Model {
unset($post_data['city']);
}
if(isset($data['file'])){
$img=$data['file']['name'];
$expbanner = explode('.',$img);
$img_ext = strtolower($expbanner[1]);
$rand = rand(10000,99999);
$encname = time().$rand;
if($img_ext=='png' || $img_ext=='jpeg' || $img_ext == 'jpg' || $img_ext == 'gif'){
$bannername = $encname.'.'.$img_ext;
$imagePath="./assets/uploads/".$bannername;
$post_data['profile_image'] = "assets/uploads/".$bannername;
move_uploaded_file($data['file']["tmp_name"],$imagePath);
$imgName = $data['file']['name'];
$imgNameArr = explode('.',$imgName);
$imgExt = strtolower($imgNameArr[1]);
if($imgExt=='png' || $imgExt=='jpeg' || $imgExt == 'jpg' || $imgExt == 'gif'){
$imgPath = 'assets/uploads/user/CUST_'.$user_id.'.png';
$imgQRPath = 'assets/uploads/user/CUST_QR_'.$user_id.'.png';
$bagImagePath = 'assets/uploads/user/bitmoji_back.png';
move_uploaded_file($data['file']["tmp_name"],"./".$imgPath);
$imgSrc = imagecreatefrompng($imgPath);
$bagSrc = imagecreatefrompng($bagImagePath);
$bagW = imagesx($bagSrc)/3;
$bagH = imagesy($bagSrc)/3;
$imgW = imagesx($imgSrc);
$imgH = imagesy($imgSrc);
$scale = $imgW/$bagW;
$iWidth = $bagW;
$iHeight = $imgH/$scale;
imagecopyresampled($bagSrc,$imgSrc,$iWidth,$bagH,0,0,$iWidth,$iHeight,$imgW,$imgH);
imagepng($bagSrc,$imgPath);
genQRcode(encode_param($user_id),$imgQRPath,$imgPath);
$post_data['profile_image'] = $imgPath;
$post_data['profile_image_qr'] = $imgQRPath;
$state=$this->db->where('customer_id',$user_id)->update('customer',$post_data);
if($state){
$img_error = 1;
......@@ -945,176 +963,171 @@ class Api_model extends CI_Model {
function search($data) {
try {
$per_page = 10;
$user_id = (!isset($data['auth_token']) || empty($data['auth_token']))?'':$this->auth_token_get($data['auth_token']);
//if($user_id > 0) {
$where = $case = '';
$user_id = (!isset($data['auth_token']) || empty($data['auth_token']))?'':$this->auth_token_get($data['auth_token']);
$where = $case = '';
if(isset($data['cat_id']) && !empty($data['cat_id'])) {
$where = ' AND events.category_id='.$data['cat_id'];
}
if(isset($data['cat_id']) && !empty($data['cat_id'])) {
$where = ' AND events.category_id='.$data['cat_id'];
}
if(isset($data['choose_date']) && !empty($data['choose_date'])) {
switch ($data['choose_date']) {
case '1':
$case = "";
break;
case '2':
$case = "AND event_date_time.date = DATE_FORMAT(NOW(),'%Y-%m-%d')";
break;
case '3':
$case = "AND event_date_time.date = DATE_FORMAT(NOW() + INTERVAL 1 DAY,'%Y-%m-%d')";
break;
case '4':
$first_day_of_the_week = 'Monday';
$start_of_the_week = strtotime("Last $first_day_of_the_week");
if ( strtolower(date('l')) === strtolower($first_day_of_the_week) )
{
$start_of_the_week = strtotime('today');
}
$end_of_the_week = $start_of_the_week + (60 * 60 * 24 * 7) - 1;
$date_format = 'Y-m-d';
$start_date = date($date_format, $start_of_the_week);
$end_date = date($date_format, $end_of_the_week);
$case = "AND event_date_time.date >= $start_date AND event_date_time.date <= $end_date";
break;
case '5':
$sunday = date( 'Y-m-d', strtotime( 'sunday this week'));
$saturday = date( 'Y-m-d', strtotime( 'saturday this week'));
$case = "AND event_date_time.date = $sunday OR event_date_time.date = $saturday";
break;
}
// $where = ' AND events.venue_id='.$data['venue_id'];
}
if(isset($data['choose_date']) && !empty($data['choose_date'])) {
switch ($data['choose_date']) {
case '1':
$case = "";
break;
case '2':
$case = "AND event_date_time.date = DATE_FORMAT(NOW(),'%Y-%m-%d')";
break;
case '3':
$case = "AND event_date_time.date = DATE_FORMAT(NOW() + INTERVAL 1 DAY,'%Y-%m-%d')";
break;
case '4':
$first_day_of_the_week = 'Monday';
$start_of_the_week = strtotime("Last $first_day_of_the_week");
if ( strtolower(date('l')) === strtolower($first_day_of_the_week) )
{
$start_of_the_week = strtotime('today');
}
$end_of_the_week = $start_of_the_week + (60 * 60 * 24 * 7) - 1;
$date_format = 'Y-m-d';
$start_date = date($date_format, $start_of_the_week);
$end_date = date($date_format, $end_of_the_week);
$case = "AND event_date_time.date >= $start_date AND event_date_time.date <= $end_date";
break;
case '5':
$sunday = date( 'Y-m-d', strtotime( 'sunday this week'));
$saturday = date( 'Y-m-d', strtotime( 'saturday this week'));
$case = "AND event_date_time.date = $sunday OR event_date_time.date = $saturday";
break;
}
}
$count = $this->db->query("SELECT events.event_id FROM events INNER JOIN event_date_time ON events.event_id = event_date_time.event_id $case WHERE events.status = 1 $where GROUP BY events.event_id")->num_rows();
$count = $this->db->query("SELECT events.event_id FROM events INNER JOIN event_date_time ON events.event_id = event_date_time.event_id $case WHERE events.status = 1 $where GROUP BY events.event_id")->num_rows();
if(isset($data['venue_id']) && !empty($data['venue_id'])) {
$where .= " AND locality.id ='".$data['venue_id']."'";
}
if(isset($data['venue_id']) && !empty($data['venue_id'])) {
$where .= " AND locality.id ='".$data['venue_id']."'";
}
if(isset($data['city_id']) && !empty($data['city_id'])) {
$where .= " AND venue.region_id='".$data['city_id']."'";
}
if(isset($data['city_id']) && !empty($data['city_id'])) {
$where .= " AND venue.region_id='".$data['city_id']."'";
}
if($count > 0) {
if($count > 0) {
if(isset($data['page'])) {
$page = $data['page'];
} else {
$page = 1;
}
if(isset($data['page'])) {
$page = $data['page'];
} else {
$page = 1;
}
$page_limit = ($page - 1) * $per_page;
$page_limit = ($page - 1) * $per_page;
if($count > $page_limit) {
$this->db->query("SET SESSION group_concat_max_len = 20000");
$result = $this->db->query("
SELECT events.event_id,events.event_name_en,venue.venue_name_en,venue.venue_name_ar,venue.location, events.event_name_ar,events.event_description_en,events.event_description_ar,events.seat_pricing,
events.custom_seat_layout, venue.layout, venue.layout_details,
event_gallery.media_url,favourite.status AS fav_status,
GROUP_CONCAT(DISTINCT tags.tag_name_en) AS tag_en,
GROUP_CONCAT(DISTINCT tags.tag_name_ar) AS tag_ar,
GROUP_CONCAT(DISTINCT CONCAT_WS('#',event_date_time.id,event_date_time.date,event_date_time.time)) AS date_time
FROM events
INNER JOIN event_date_time ON events.event_id=event_date_time.event_id $case
INNER JOIN venue ON venue.id=events.venue_id
LEFT JOIN locality ON locality.id=venue.locality_id
LEFT JOIN `event_gallery` ON `events`.`event_id`=`event_gallery`.`event_id`
AND `event_gallery`.`media_type`=0
LEFT JOIN booking on booking.event_id=events.event_id
LEFT JOIN favourite ON favourite.event_id=events.event_id AND
favourite.user_id='$user_id' AND favourite.status=1
LEFT JOIN event_tags ON events.event_id=event_tags.event_id
LEFT JOIN tags on tags.tag_id = event_tags.tag_id
WHERE events.status=1 AND event_date_time.date >= DATE_FORMAT(NOW(),'%Y-%m-%d') $where
GROUP BY events.event_id
ORDER BY events.event_id DESC LIMIT ". $page_limit.",".$per_page)->result();
if($count > $page_limit) {
$this->db->query("SET SESSION group_concat_max_len = 20000");
$result = $this->db->query("
SELECT events.event_id,events.event_name_en,venue.venue_name_en,venue.location, events.event_name_ar,events.event_description_en,events.event_description_ar,events.seat_pricing,
events.custom_seat_layout, venue.layout, venue.layout_details,
event_gallery.media_url,favourite.status AS fav_status,
GROUP_CONCAT(DISTINCT tags.tag_name_en) AS tag_en,
GROUP_CONCAT(DISTINCT tags.tag_name_ar) AS tag_ar,
GROUP_CONCAT(DISTINCT CONCAT_WS('#',event_date_time.id,event_date_time.date,event_date_time.time)) AS date_time
FROM events
INNER JOIN event_date_time ON events.event_id=event_date_time.event_id $case
INNER JOIN venue ON venue.id=events.venue_id
LEFT JOIN locality ON locality.id=venue.locality_id
LEFT JOIN `event_gallery` ON `events`.`event_id`=`event_gallery`.`event_id`
AND `event_gallery`.`media_type`=0
LEFT JOIN booking on booking.event_id=events.event_id
LEFT JOIN favourite ON favourite.event_id=events.event_id AND
favourite.user_id='$user_id' AND favourite.status=1
LEFT JOIN event_tags ON events.event_id=event_tags.event_id
LEFT JOIN tags on tags.tag_id = event_tags.tag_id
WHERE events.status=1 AND event_date_time.date >= DATE_FORMAT(NOW(),'%Y-%m-%d') $where
GROUP BY events.event_id
ORDER BY events.event_id DESC LIMIT ". $page_limit.",".$per_page)->result();
if(count($result)>0){
$resultData = array();
foreach ($result as $rs) {
if(!empty($dates = explode(',',$rs->date_time))){
$checkTime = 0;
foreach ($dates as $date) {
$dArr = explode('#', $date);
if($dArr[1] == date("Y-m-d") &&
$dArr[1].' '.$dArr[2] < date("Y-m-d H:i", strtotime('+15 minutes'))){
$checkTime += 1;
}
}
if($checkTime == count($dates)){
continue;
}
} else {
continue;
if(count($result)>0){
$resultData = array();
foreach ($result as $rs) {
if(!empty($dates = explode(',',$rs->date_time))){
$checkTime = 0;
foreach ($dates as $date) {
$dArr = explode('#', $date);
if($dArr[1] == date("Y-m-d") &&
$dArr[1].' '.$dArr[2] < date("Y-m-d H:i", strtotime('+15 minutes'))){
$checkTime += 1;
}
}
if($checkTime == count($dates)){
continue;
}
} else {
continue;
}
$sql = "SELECT AVG(review.rate) AS rate
FROM review WHERE event_id=$rs->event_id";
$rating = $this->db->query($sql)->row_array();
$rate = isset($rating['rate'])&&!empty($rating['rate'])?
$rating['rate']:'0.0';
$sql = "SELECT SUM(booking.no_of_ticket) AS attend FROM booking
WHERE status IN (1,2) AND event_id=$rs->event_id";
$atten = $this->db->query($sql)->row_array();
$atte = isset($atten['attend'])&&!empty($atten['attend'])?
$atten['attend']:'0';
if($rs->layout!=''){
if($rs->custom_seat_layout!=''){
$pricelist = json_decode($rs->custom_seat_layout, TRUE);
$price = min(array_column($pricelist, 'price'));
} else {
$pricelist = json_decode($rs->layout_details, TRUE);
$price = min(array_column($pricelist, 'price'));
}
} else {
$pricelist = json_decode($rs->seat_pricing, TRUE);
$price = $pricelist['price'];
}
$sql = "SELECT AVG(review.rate) AS rate
FROM review WHERE event_id=$rs->event_id";
$rating = $this->db->query($sql)->row_array();
$rate = isset($rating['rate'])&&!empty($rating['rate'])?
$rating['rate']:'0.0';
$sql = "SELECT SUM(booking.no_of_ticket) AS attend FROM booking
WHERE status IN (1,2) AND event_id=$rs->event_id";
$atten = $this->db->query($sql)->row_array();
$atte = isset($atten['attend'])&&!empty($atten['attend'])?
$atten['attend']:'0';
$tags_en = !empty($rs->tag_en)? explode(',', $rs->tag_en) : '';
$tags_ar = !empty($rs->tag_ar)? explode(',', $rs->tag_ar) : '';
$resData = array(
'event_name_en'=>$rs->event_name_en,
'event_name_ar'=>$rs->event_name_ar,
'event_description_en'=>$rs->event_description_en,
'event_description_ar'=>$rs->event_description_ar,
'venue_name_en'=>$rs->venue_name_en,
'venue_name_ar'=>$rs->venue_name_ar,
'venue_location'=>$rs->location,
'media_url'=>$rs->media_url,
'fav_status'=>$rs->fav_status,
'price'=>$price,
'event_id'=>$rs->event_id,
'attendees'=>$atte,
'rate'=>$rate,
'tag_en'=>$tags_en,
'tag_ar'=>$tags_ar
);
array_push($resultData, $resData);
if($rs->layout!=''){
if($rs->custom_seat_layout!=''){
$pricelist = json_decode($rs->custom_seat_layout, TRUE);
$price = min(array_column($pricelist, 'price'));
} else {
$pricelist = json_decode($rs->layout_details, TRUE);
$price = min(array_column($pricelist, 'price'));
}
$meta = array('total_pages'=>ceil($count/$per_page),
'total'=>$count,
'current_page'=>$page,
'per_page'=>$per_page
);
$response = array('data'=>$resultData,'meta'=>$meta);
$res = array('status'=>1,'data'=>$response);
} else {
$res = array('status'=>0,'message'=>'No records found','code'=>'ER13');
$pricelist = json_decode($rs->seat_pricing, TRUE);
$price = $pricelist['price'];
}
} else {
$res = array('status'=>0,'message'=>'No records found','code'=>'ER13');
}
} else {
$res = array('status'=>0,'message'=>'No records found','code'=>'ER13');
}
/*} else {
$res = array('status'=>0,'message'=>'Invalid user','code'=>'ER19');
}*/
$tags_en = !empty($rs->tag_en)? explode(',', $rs->tag_en) : '';
$tags_ar = !empty($rs->tag_ar)? explode(',', $rs->tag_ar) : '';
$resData = array(
'event_name_en'=>$rs->event_name_en,
'event_name_ar'=>$rs->event_name_ar,
'event_description_en'=>$rs->event_description_en,
'event_description_ar'=>$rs->event_description_ar,
'venue_name_en'=>$rs->venue_name_en,
'venue_name_ar'=>$rs->venue_name_ar,
'venue_location'=>$rs->location,
'media_url'=>$rs->media_url,
'fav_status'=>$rs->fav_status,
'price'=>$price,
'event_id'=>$rs->event_id,
'attendees'=>$atte,
'rate'=>$rate,
'tag_en'=>$tags_en,
'tag_ar'=>$tags_ar
);
array_push($resultData, $resData);
}
$meta = array('total_pages'=>ceil($count/$per_page),
'total'=>$count,
'current_page'=>$page,
'per_page'=>$per_page
);
$response = array('data'=>$resultData,'meta'=>$meta);
$res = array('status'=>1,'data'=>$response);
} else {
$res = array('status'=>0,'message'=>'No records found','code'=>'ER13');
}
} else {
$res = array('status'=>0,'message'=>'No records found','code'=>'ER13');
}
} else {
$res = array('status'=>0,'message'=>'No records found','code'=>'ER13');
}
} catch(Exception $e) {
$res = array('status'=>0,'message'=>'Ohh No!! Something went South!!','code'=>'ER06');
}
......
......@@ -8,27 +8,88 @@ class Category_model extends CI_Model {
$cond = (!empty($view))?" status IN ($view) ":" status != '2' ";
$cond .= (!empty($category_id))?" AND cat_id='$category_id' ":"";
$categoryData = $this->db->query("SELECT * FROM event_category WHERE $cond ORDER BY priority");
$catData = $this->db->query("SELECT * FROM event_category WHERE $cond ORDER BY priority");
if(empty($catData)){
return 0;
}
if(!empty($categoryData)){
return (empty($category_id))?$categoryData->result():$categoryData->row();
if(empty($category_id)){
$catData = $catData->result_array();
foreach ($catData AS $key => $data) {
$rtlData = langTranslator($data['cat_id'],'CAT');
$catData[$key] = array_merge($catData[$key],$rtlData);
}
} else {
$catData = $catData->row_array();
$rtlData = langTranslator($category_id,'CAT');
$catData = array_merge($catData,$rtlData);
}
return 0;
return json_decode(json_encode($catData));
}
public function createCategory($categoryData = array()){
if(empty($categoryData)){
public function createCategory($catData = array()){
if(empty($catData)){
return 0;
}
$status = $this->db->insert('event_category',$categoryData);
$status = $this->db->insert('event_category',array(
'category_banner'=>$catData['category_banner']));
if($status){
$cat_id = $this->db->insert_id();
$languages = getLanguages();
if(!empty($languages)){
$insertArr = array();
foreach ($languages AS $lang) {
if((!isset($catData['category_name_'.$lang]) ||
empty($catData['category_name_'.$lang])) &&
(!isset($catData['category_image_'.$lang]) ||
empty($catData['category_image_'.$lang]))){
continue;
}
$catName = (isset($catData['category_name_'.$lang]) && !empty($catData['category_name_'.$lang]))?$catData['category_name_'.$lang]:'';
$catImage = (isset($catData['category_image_'.$lang]) && !empty($catData['category_image_'.$lang]))?$catData['category_image_'.$lang]:'';
$insertArr[] = array('category_id'=>$cat_id,
'category_name'=>$catName,
'language_code'=>$lang,
'category_image'=>$catImage);
}
if(!empty($insertArr)){
$this->db->insert_batch('translator_category',$insertArr);
}
}
}
return $status;
}
public function updateCategory($category_id = '', $categoryData = array()){
if(empty($category_id) || empty($categoryData)){
public function updateCategory($category_id = '', $catData = array()){
if(empty($category_id) || empty($catData)){
return 0;
}
$status = $this->db->update('event_category',$categoryData,array('cat_id'=>$category_id));
if(isset($catData['category_banner']) && !empty($catData['category_banner'])){
$status = $this->db->update('event_category',
array('category_banner'=>$catData['category_banner']),
array('cat_id'=>$category_id));
}
$languages = getLanguages();
if(!empty($languages)){
$insertArr = array();
foreach ($languages AS $lang) {
if((!isset($catData['category_name_'.$lang]) || empty($catData['category_name_'.$lang])) &&
(!isset($catData['category_image_'.$lang]) || empty($catData['category_image_'.$lang]))){
continue;
}
if(isset($catData['category_name_'.$lang]) && !empty($catData['category_name_'.$lang])){
$upArr['category_name'] = $catData['category_name_'.$lang];
}
if(isset($catData['category_image_'.$lang]) && !empty($catData['category_image_'.$lang])){
$upArr['category_image'] = $catData['category_image_'.$lang];
}
$status = $this->db->update('translator_category',$upArr,
array('category_id'=>$category_id,'language_code'=>$lang));
}
}
return $status;
}
......
......@@ -5,10 +5,17 @@ class Cms_model extends CI_Model {
}
public function getCMSdata(){
$cmsData = $this->db->query("SELECT * FROM privacy_policy");
$cmsData = $this->db->query("SELECT * FROM translator_policies")->result_array();
$respData = new StdClass();
if(!empty($cmsData)){
return $cmsData->row();
foreach ($cmsData AS $key => $data) {
$respData->{'faq_'.$data['language_code']} = $data['faq'];
$respData->{'instruction_'.$data['language_code']} = $data['instruction'];
$respData->{'privacy_policy_'.$data['language_code']} = $data['privacy_policy'];
$respData->{'terms_and_conditions_'.$data['language_code']} = $data['terms_and_conditions'];
}
return $respData;
}
return 0;
}
......@@ -17,8 +24,17 @@ class Cms_model extends CI_Model {
if(empty($cmsData)){
return 0;
}
$status = $this->db->update('privacy_policy',$cmsData);
return $status;
foreach($cmsData AS $lang => $data) {
$isAvail = $this->db->get_where('translator_policies',array('language_code'=>$lang))->num_rows();
if($isAvail <= 0){
$this->db->insert('translator_policies',$data);
} else {
$this->db->update('translator_policies',$data,array('language_code'=>$lang));
}
}
return 1;
}
}
?>
\ No newline at end of file
......@@ -36,7 +36,7 @@ class Country_model extends CI_Model {
return 0;
}
$status = $this->db->update('country',array('status'=>$status),
array('id'=>$country_id));
array('country_id'=>$country_id));
return $status;
}
......
......@@ -9,7 +9,7 @@ class Event_model extends CI_Model {
$cond .= (!empty($event_id))?" AND EVT.event_id='$event_id' ":"";
$cond .= (!empty($provider_id))?" AND EVT.provider_id='$provider_id' ":"";
$sql = "SELECT EVT.*,EVT.status AS event_status,VEN.*,REG.name_en AS region_name_en,CAT.*,PRV.*,HST.*
$sql = "SELECT EVT.*,EVT.status AS event_status,VEN.*,CAT.*,PRV.*,HST.*
FROM events AS EVT
INNER JOIN venue AS VEN ON (EVT.venue_id=VEN.id)
INNER JOIN region AS REG ON (REG.id=VEN.region_id)
......@@ -19,30 +19,45 @@ class Event_model extends CI_Model {
WHERE $cond";
$eventData = $this->db->query($sql);
if(empty($eventData)){
return 0;
}
if(empty($event_id)){
$eventData = $eventData->result();
$eventData = $eventData->result_array();
foreach ($eventData AS $index => $event) {
$respData = $this->getEventDetails($event->event_id);
$eventData[$index]->eventTags = $respData['eventTags'];
$eventData[$index]->eventMedia = $respData['eventMedia'];
$eventData[$index]->eventSchedule = $respData['eventSchedule'];
$rtlData = langTranslator($event['event_id'],'EVT');
$eventData[$index] = array_merge($eventData[$index],$rtlData);
$rtlData = langTranslator($event['venue_id'],'VEN');
$eventData[$index] = array_merge($eventData[$index],$rtlData);
$rtlData = langTranslator($event['region_id'],'REG');
$eventData[$index] = array_merge($eventData[$index],$rtlData);
$rtlData = langTranslator($event['category_id'],'CAT');
$eventData[$index] = array_merge($eventData[$index],$rtlData);
$respData = $this->getEventDetails($event['event_id']);
$eventData[$index]['eventTags'] = $respData['eventTags'];
$eventData[$index]['eventMedia'] = $respData['eventMedia'];
$eventData[$index]['eventSchedule'] = $respData['eventSchedule'];
}
} else {
$eventData = $eventData->row();
$respData = $this->getEventDetails($eventData->event_id);
$eventData->eventTags = $respData['eventTags'];
$eventData->eventMedia = $respData['eventMedia'];
$eventData->eventSchedule = $respData['eventSchedule'];
$eventData = $eventData->row_array();
$rtlData = langTranslator($eventData['event_id'],'EVT');
$eventData = array_merge($eventData,$rtlData);
$rtlData = langTranslator($eventData['venue_id'],'VEN');
$eventData = array_merge($eventData,$rtlData);
$rtlData = langTranslator($eventData['region_id'],'REG');
$eventData = array_merge($eventData,$rtlData);
$rtlData = langTranslator($eventData['category_id'],'CAT');
$eventData = array_merge($eventData,$rtlData);
$respData = $this->getEventDetails($eventData['event_id']);
$eventData['eventTags'] = $respData['eventTags'];
$eventData['eventMedia'] = $respData['eventMedia'];
$eventData['eventSchedule'] = $respData['eventSchedule'];
}
return $eventData;
return json_decode(json_encode($eventData));
}
function getEventDetails($event_id = ''){
......@@ -105,26 +120,63 @@ class Event_model extends CI_Model {
return $respArr;
}
public function createEvent($eventData = array()){
public function createEvent($eventData = array(),$languageArr = array()){
if(empty($eventData)){
return 0;
}
if($this->session->userdata('user_type') != '1'){
$eventData['status'] = '3';
}
$event_id = 0;
$status = $this->db->insert('events',$eventData);
if($status){
return $this->db->insert_id();
$event_id = $this->db->insert_id();
$languages = getLanguages();
if(!empty($languages)){
$insertArr = array();
foreach ($languages AS $lang) {
if(!isset($languageArr[$lang]) || (empty($languageArr[$lang]['event_name']) &&
empty($languageArr[$lang]['event_desc']))){
continue;
}
$eName = !empty($languageArr[$lang]['event_name'])?$languageArr[$lang]['event_name']:'';
$eDesc = !empty($languageArr[$lang]['event_desc'])?$languageArr[$lang]['event_desc']:'';
$insertArr[] = array('event_id'=>$event_id,'event_name'=>$eName,
'event_description'=>$eDesc,'language_code'=>$lang);
}
if(!empty($insertArr)){
$this->db->insert_batch('translator_event',$insertArr);
}
}
}
return 0;
return $event_id;
}
public function updateEvent($event_id = '',$eventData = array()){
if(empty($event_id) || empty($eventData)){
public function updateEvent($event_id = '',$eventData = array(),$languageArr = array()){
if(empty($event_id) || empty($eventData) || empty($languageArr)){
return 0;
}
$status = $this->db->update('events',$eventData,array('event_id'=>$event_id));
if($status){
$languages = getLanguages();
if(!empty($languages)){
$insertArr = array();
foreach ($languages AS $lang) {
if(!isset($languageArr[$lang]) || (empty($languageArr[$lang]['event_name']) &&
empty($languageArr[$lang]['event_desc']))){
continue;
}
$eName = !empty($languageArr[$lang]['event_name'])?$languageArr[$lang]['event_name']:'';
$eDesc = !empty($languageArr[$lang]['event_desc'])?$languageArr[$lang]['event_desc']:'';
$insertArr[] = array('event_id'=>$event_id,'event_name'=>$eName,
'event_description'=>$eDesc,'language_code'=>$lang);
}
$this->db->delete('translator_event',array('event_id'=>$event_id));
if(!empty($insertArr)){
$this->db->insert_batch('translator_event',$insertArr);
}
}
}
return ($status)?1:0;
}
......
......@@ -26,11 +26,11 @@ class Notification_model extends CI_Model {
return 0;
}
$cond = ($view != '')?" USR.status IN ($view)":" USR.status!='2'";
$cond .= ($cities != '')?" AND CUST.profile_city IN ($cities)":"";
$cond .= ($cities != '')?" AND CUST.city IN ($cities)":"";
$cityData = $this->db->query("SELECT CUST.* FROM customer AS CUST
INNER JOIN users AS USR ON (USR.id=CUST.customer_id)
WHERE ".$cond);
INNER JOIN users AS USR ON (USR.id=CUST.customer_id)
WHERE ".$cond);
if(!empty($cityData)){
return $cityData->result_array();
......
......@@ -7,15 +7,26 @@ class Promocode_model extends CI_Model {
public function getPromocodeData($promoId='',$view='1'){
$cond = " PM.status IN ($view) ";
$cond .= (!empty($promoId))?" AND PM.promocode_id='$promoId' ":"";
$pData = $this->db->query("SELECT *,
(SELECT count(PU.id) FROM promocode_used AS PU
WHERE PM.promocode_id=PU.promocode_id) AS used
FROM promocode_management AS PM
WHERE $cond");
if(empty($pData)){
$promoData = $this->db->query("SELECT *,(SELECT count(PU.id) FROM promocode_used AS PU
WHERE PM.promocode_id=PU.promocode_id) AS used
FROM promocode_management AS PM
WHERE $cond");
if(empty($promoData)){
return 0;
}
return (empty($promoId))? $pData->result() : $pData->row();
if(empty($promoId)){
$promoData = $promoData->result_array();
foreach ($promoData AS $key => $data) {
$rtlData = langTranslator($data['promocode_id'],'PROMO');
$promoData[$key] = array_merge($promoData[$key],$rtlData);
}
} else {
$promoData = $promoData->row_array();
$rtlData = langTranslator($promoId,'PROMO');
$promoData = array_merge($promoData,$rtlData);
}
return json_decode(json_encode($promoData));
}
public function createPromocode($promodata=array()){
......@@ -27,7 +38,44 @@ class Promocode_model extends CI_Model {
if($isExit >= 1){
return 2;
}
$status = $this->db->insert('promocode_management',$promodata);
$dataArr['city_id'] = $promodata['city_id'];
$dataArr['event_id'] = $promodata['event_id'];
//$dataArr['end_date'] = $promodata['end_date'];
$dataArr['end_date'] = date('Y-m-d',$promodata['end_date']);
$dataArr['use_limit'] = $promodata['use_limit'];
$dataArr['max_redeem'] = $promodata['max_redeem'];
//$dataArr['start_date'] = $promodata['start_date'];
$dataArr['start_date'] = date('Y-m-d',$promodata['start_date']);
$dataArr['category_id'] = $promodata['category_id'];
$dataArr['discount_type'] = $promodata['discount_type'];
$dataArr['promocode_name'] = $promodata['promocode_name'];
$dataArr['min_order_amount'] = $promodata['min_order_amount'];
$dataArr['discount_percentage'] = $promodata['discount_percentage'];
$status = $this->db->insert('promocode_management',$dataArr);
if($status){
$promo_id = $this->db->insert_id();
$languages = getLanguages();
if(!empty($languages)){
$insertArr = array();
foreach ($languages AS $lang) {
if((!isset($promodata['promocode_tc_'.$lang])||empty($promodata['promocode_tc_'.$lang]))&&
(!isset($promodata['promocode_desc_'.$lang])||empty($promodata['promocode_desc_'.$lang]))){
continue;
}
$promoTc = (isset($promodata['promocode_tc_'.$lang]) && !empty($promodata['promocode_tc_'.$lang]))?$promodata['promocode_tc_'.$lang]:'';
$promoDesc = (isset($promodata['promocode_desc_'.$lang]) && !empty($promodata['promocode_desc_'.$lang]))?$promodata['promocode_desc_'.$lang]:'';
$insertArr[] = array('language_code'=>$lang,
'promocode_tc'=>$promoTc,
'promocode_id'=>$promo_id,
'promocode_desc'=>$promoDesc);
}
if(!empty($insertArr)){
$this->db->insert_batch('translator_promocode',$insertArr);
}
}
}
return ($status)?1:0;
}
......@@ -40,8 +88,44 @@ class Promocode_model extends CI_Model {
$isExit = $this->db->query("SELECT * FROM promocode_management WHERE $cond")->num_rows();
if($isExit >= 1){
return 2;
}
$dataArr['city_id'] = $promodata['city_id'];
$dataArr['event_id'] = $promodata['event_id'];
// $dataArr['end_date'] = $promodata['end_date'];
$dataArr['end_date'] = date('Y-m-d',$promodata['end_date']);
$dataArr['use_limit'] = $promodata['use_limit'];
$dataArr['max_redeem'] = $promodata['max_redeem'];
// $dataArr['start_date'] = $promodata['start_date'];
$dataArr['start_date'] = date('Y-m-d',$promodata['start_date']);
$dataArr['category_id'] = $promodata['category_id'];
$dataArr['discount_type'] = $promodata['discount_type'];
$dataArr['promocode_name'] = $promodata['promocode_name'];
$dataArr['min_order_amount'] = $promodata['min_order_amount'];
$dataArr['discount_percentage'] = $promodata['discount_percentage'];
$status = $this->db->update('promocode_management',$dataArr,array('promocode_id'=>$promocode_id));
if($status){
$languages = getLanguages();
if(!empty($languages)){
$insertArr = array();
foreach ($languages AS $lang) {
if((!isset($promodata['promocode_tc_'.$lang])||empty($promodata['promocode_tc_'.$lang]))&&
(!isset($promodata['promocode_desc_'.$lang])||empty($promodata['promocode_desc_'.$lang]))){
continue;
}
$promoTc = (isset($promodata['promocode_tc_'.$lang]) && !empty($promodata['promocode_tc_'.$lang]))?$promodata['promocode_tc_'.$lang]:'';
$promoDesc = (isset($promodata['promocode_desc_'.$lang]) && !empty($promodata['promocode_desc_'.$lang]))?$promodata['promocode_desc_'.$lang]:'';
$insertArr[] = array('language_code'=>$lang,
'promocode_tc'=>$promoTc,
'promocode_id'=>$promocode_id,
'promocode_desc'=>$promoDesc);
}
$this->db->delete('translator_promocode',array('promocode_id'=>$promocode_id));
if(!empty($insertArr)){
$this->db->insert_batch('translator_promocode',$insertArr);
}
}
}
$status=$this->db->update('promocode_management',$promodata,array('promocode_id'=>$promocode_id));
return ($status)?1:0;
}
......
......@@ -11,16 +11,48 @@ class Region_model extends CI_Model {
$regionData = $this->db->query("SELECT * FROM region WHERE $cond");
if(!empty($regionData)){
return (empty($region_id))?$regionData->result():$regionData->row();
if(empty($region_id)){
$regionData = $regionData->result_array();
foreach ($regionData AS $key => $region) {
$regData = langTranslator($region['id'],'REG','');
$regionData[$key] = array_merge($regionData[$key],$regData);
}
} else {
$regData = langTranslator($region_id,'REG','');
$regionData = $regionData->row_array();
$regionData = array_merge($regionData,$regData);
}
return json_decode(json_encode($regionData));
} else {
return 0;
}
return 0;
}
public function createRegion($regionData = array()){
if(empty($regionData)){
return 0;
}
$status = $this->db->insert('region',$regionData);
$status = $this->db->insert('region',array('region_icon'=>$regionData['region_icon'],
'region_lat'=>$regionData['region_lat'],
'region_lng'=>$regionData['region_lng']));
if($status){
$region_id = $this->db->insert_id();
$languages = getLanguages();
if(!empty($languages)){
$insertArr = array();
foreach ($languages AS $lang) {
if(!isset($regionData['name_'.$lang]) || empty($regionData['name_'.$lang])){
continue;
}
$insertArr[] = array('region_id'=>$region_id,
'language_code'=>$lang,
'region_name'=>$regionData['name_'.$lang]);
}
if(!empty($insertArr)){
$this->db->insert_batch('translator_region',$insertArr);
}
}
}
return $status;
}
......@@ -28,6 +60,24 @@ class Region_model extends CI_Model {
if(empty($region_id) || empty($regionData)){
return 0;
}
$languages = getLanguages();
if(!empty($languages)){
$insertArr = array();
foreach ($languages AS $lang) {
if(!isset($regionData['name_'.$lang]) || empty($regionData['name_'.$lang])){
continue;
}
$insertArr[] = array('region_id'=>$region_id,
'language_code'=>$lang,
'region_name'=>$regionData['name_'.$lang]);
unset($regionData['name_'.$lang]);
}
$this->db->delete('translator_region',array('region_id'=>$region_id));
if(!empty($insertArr)){
$this->db->insert_batch('translator_region',$insertArr);
}
}
$status = $this->db->update('region',$regionData,array('id'=>$region_id));
return $status;
}
......@@ -43,14 +93,25 @@ class Region_model extends CI_Model {
public function getlocalityData($region_id = '',$locality_id = '', $status = '0'){
$cond = "status IN (".$status.") ";
if(!empty($region_id)){
$cond .= " AND region_id='$region_id' ";
}
if(!empty($locality_id)){
$cond .= " AND id='$locality_id' ";
$cond .= (!empty($region_id))?" AND region_id='$region_id' ":"";
$cond .= (!empty($locality_id))?" AND id='$locality_id' ":"";
$locData = $this->db->query("SELECT *, id AS locality_id FROM locality WHERE ".$cond);
if(!empty($locData)){
if(empty($locality_id)){
$locData = $locData->result_array();
foreach ($locData AS $key => $locality) {
$regData = langTranslator($locality['id'],'LOC','');
$locData[$key] = array_merge($locData[$key],$regData);
}
return json_decode(json_encode($locData));
} else if(!empty($locData = $locData->row_array())) {
$regData = langTranslator($locality_id,'LOC','');
$locData = array_merge($locData,$regData);
return json_decode(json_encode($locData));
}
}
$locData = $this->db->query("SELECT * FROM locality WHERE ".$cond);
return (!empty($locality_id))?$locData->row():$locData->result();
return;
}
}
?>
......@@ -9,18 +9,47 @@ class Tag_model extends CI_Model {
$cond .= (!empty($tag_id))?" AND tag_id='$tag_id' ":"";
$tagData = $this->db->query("SELECT * FROM tags WHERE $cond");
if(empty($tagData)){
return 0;
}
if(!empty($tagData)){
return (empty($tag_id))?$tagData->result():$tagData->row();
if(empty($tag_id)){
$tagData = $tagData->result_array();
foreach ($tagData AS $key => $data) {
$rtlData = langTranslator($data['tag_id'],'TAG');
$tagData[$key] = array_merge($tagData[$key],$rtlData);
}
} else {
$tagData = $tagData->row_array();
$rtlData = langTranslator($tagData['tag_id'],'TAG');
$tagData = array_merge($tagData,$rtlData);
}
return 0;
return json_decode(json_encode($tagData));
}
public function createTag($tagData = array()){
if(empty($tagData)){
return 0;
}
$status = $this->db->insert('tags',$tagData);
$status = $this->db->insert('tags',array('tag'=>$tagData['tag_en']));
if($status){
$tag_id = $this->db->insert_id();
$languages = getLanguages();
if(!empty($languages)){
$insertArr = array();
foreach ($languages AS $lang) {
if(!isset($tagData['tag_'.$lang]) || empty($tagData['tag_'.$lang])){
continue;
}
$insertArr[] = array('tag_id'=>$tag_id,
'language_code'=>$lang,
'tag'=>$tagData['tag_'.$lang]);
}
if(!empty($insertArr)){
$this->db->insert_batch('translator_tag',$insertArr);
}
}
}
return $status;
}
......@@ -28,7 +57,25 @@ class Tag_model extends CI_Model {
if(empty($tag_id) || empty($tagData)){
return 0;
}
$status = $this->db->update('tags',$tagData,array('tag_id'=>$tag_id));
$status = $this->db->update('tags',array('tag'=>$tagData['tag_en']),array('tag_id'=>$tag_id));
if($status){
$languages = getLanguages();
if(!empty($languages)){
$insertArr = array();
foreach ($languages AS $lang) {
if(!isset($tagData['tag_'.$lang]) || empty($tagData['tag_'.$lang])){
continue;
}
$insertArr[] = array('tag_id'=>$tag_id,
'language_code'=>$lang,
'tag'=>$tagData['tag_'.$lang]);
}
$this->db->delete('translator_tag',array('tag_id'=>$tag_id));
if(!empty($insertArr)){
$this->db->insert_batch('translator_tag',$insertArr);
}
}
}
return $status;
}
......
......@@ -5,83 +5,43 @@ class Validation_app_model extends CI_Model {
'login'=> array('email'=>array('required'=>array('code'=>'ER02', 'message'=>'Email id is null or empty'),
'email'=>array('code'=>'ER03', 'message'=>'Invalid Email id')),
'password'=>array('required'=>array('code'=>'ER04', 'message'=>'Password is null or empty')),
'language'=>array('required'=>array('code'=>'ER05','message'=>'Language is null or empty'))),
'country_id'=>array('required'=>array('code'=>'ER05','message'=>'Country Id is null or empty'))),
'check_email_availability'=> array('email'=>array('required'=>array('code'=>'ER02', 'message'=>'Email id is null or empty'),
'email'=>array('code'=>'ER03', 'message'=>'Invalid Email id')
),
'email'=>array('code'=>'ER03', 'message'=>'Invalid Email id')),
'phone'=>array('required'=>array('code'=>'ER07', 'message'=>'Phone no is null or empty'),
'phone'=>array('code'=>'ER08', 'message'=>'Invalid Phone no')
),
),
'phone'=>array('code'=>'ER08', 'message'=>'Invalid Phone no')),),
'registration'=> array('email'=>array('required'=>array('code'=>'ER02', 'message'=>'Email id is null or empty'),
'email'=>array('code'=>'ER03', 'message'=>'Invalid Email id')),
'phone'=>array('required'=>array('code'=>'ER07', 'message'=>'Phone no is null or empty'),
'phone'=>array('code'=>'ER08', 'message'=>'Invalid Phone no'),
),
'name'=>array('required'=>array('code'=>'ER04', 'message'=>'Name is null or empty'),
),
'phone'=>array('code'=>'ER08', 'message'=>'Invalid Phone no'),),
'name'=>array('required'=>array('code'=>'ER04', 'message'=>'Name is null or empty'),),
'password'=>array('required'=>array('code'=>'ER04','message'=>'Password is null or empty')),
'password'=>array('required'=>array('code'=>'ER04','message'=>'Password is null or empty'))),
'get_events_list'=>array('auth_token'=>array('required'=>array('code'=>'ER17', 'message'=>'User Id is null or empty'),
)
),
'filters'=>array('auth_token'=>array('required'=>array('code'=>'ER17', 'message'=>'User Id is null or empty'),
)
),
'events_details'=>array('auth_token'=>array('required'=>array('code'=>'ER17', 'message'=>'User Id is null or empty'),
)
),
'get_category_list'=>array('auth_token'=>array('required'=>array('code'=>'ER17', 'message'=>'User Id is null or empty'),
)
),
'get_events_list'=>array('auth_token'=>array('required'=>array('code'=>'ER17', 'message'=>'User Id is null or empty'),)),
'filters'=>array('auth_token'=>array('required'=>array('code'=>'ER17', 'message'=>'User Id is null or empty'),)),
'events_details'=>array('auth_token'=>array('required'=>array('code'=>'ER17', 'message'=>'User Id is null or empty'),)),
'get_category_list'=>array('auth_token'=>array('required'=>array('code'=>'ER17', 'message'=>'User Id is null or empty'),)),
'event_search'=>array(),
'get_last_booking'=>array('auth_token'=>array('required'=>array('code'=>'ER17', 'message'=>'User Id is null or empty'),
)
),
'user_language'=> array('auth_token'=>array('required'=>array('code'=>'ER17', 'message'=>'User Id is null or empty')),
'get_last_booking'=>array('auth_token'=>array('required'=>array('code'=>'ER17', 'message'=>'User Id is null or empty'),)),
'user_language'=> array('auth_token'=>array('required'=>array('code'=>'ER17', 'message'=>'User Id is null or empty')),
'language'=>array('required'=>array('code'=>'ER16', 'message'=>'Language is null or empty')),),
'add_favorites'=> array('auth_token'=>array('required'=>array('code'=>'ER17', 'message'=>'User Id is null or empty')),
'event_id'=>array('required'=>array('code'=>'ER16', 'message'=>'Event id is null or empty')),),
'get_cities_list'=>array('auth_token'=>array('required'=>array('code'=>'ER19', 'message'=>'User Id is null or empty'),
)
),
'update_city'=>array('auth_token'=>array('required'=>array('code'=>'ER19', 'message'=>'User Id is null or empty'),
)
),
'booking_summary'=>array('auth_token'=>array('required'=>array('code'=>'ER17', 'message'=>'User Id is null or empty'),
)
),
'get_cities_list'=>array('auth_token'=>array('required'=>array('code'=>'ER19', 'message'=>'User Id is null or empty'),)),
'update_city'=>array('auth_token'=>array('required'=>array('code'=>'ER19', 'message'=>'User Id is null or empty'),)),
'booking_summary'=>array('auth_token'=>array('required'=>array('code'=>'ER17', 'message'=>'User Id is null or empty'),)),
'payment'=> array('auth_token'=>array('required'=>array('code'=>'ER17', 'message'=>'User Id is null or empty')),
'booking_id'=>array('required'=>array('code'=>'ER34', 'message'=>'Booking id is null or empty'))),
'event_rating'=> array('auth_token'=>array('required'=>array('code'=>'ER17', 'message'=>'User Id is null or empty')),
'rating'=>array('required'=>array('code'=>'ER26', 'message'=>'Rating is null or empty')),
'event_id'=>array('required'=>array('code'=>'ER27', 'message'=>'Event id is null or empty')),
'description'=>array('required'=>array('code'=>'ER28', 'message'=>'description id is null or empty')),),
'update_notification_email_status'=>array('auth_token'=>array('required'=>array('code'=>'ER17', 'message'=>'User Id is null or empty'),
)
),
'get_app_version'=>array(),
'logout'=>array('auth_token'=>array('required'=>array('code'=>'ER17', 'message'=>'User Id is null or empty'))),
'update_notification_email_status'=>array('auth_token'=>array('required'=>array('code'=>'ER17',
'message'=>'User Id is null or empty'),)),
'get_app_version'=>array(),
'logout'=>array('auth_token'=>array('required'=>array('code'=>'ER17', 'message'=>'User Id is null or empty'))),
'profile_details'=>array('auth_token'=>array('required'=>array('code'=>'ER17', 'message'=>'User Id is null or empty'))),
'profile_edit'=> array('auth_token'=>array('required'=>array('code'=>'ER17', 'message'=>'User Id is null or empty')),),
'booking'=> array('auth_token'=>array('required'=>array('code'=>'ER17', 'message'=>'User Id is null or empty')),
'event_id'=>array('required'=>array('code'=>'ER20', 'message'=>'Event id is null or empty')),
'customer_id'=>array('required'=>array('code'=>'ER29', 'message'=>'Customer id is null or empty')),
......@@ -89,30 +49,15 @@ class Validation_app_model extends CI_Model {
'no_of_ticket'=>array('required'=>array('code'=>'ER31', 'message'=>'Number of ticket is null or empty')),
'ticket_details'=>array('required'=>array('code'=>'ER32', 'message'=>'Ticket details is null or empty')),
'amount'=>array('required'=>array('code'=>'ER33', 'message'=>'Amount is null or empty')),),
'cancel_booking'=> array('auth_token'=>array('required'=>array('code'=>'ER17', 'message'=>'User Id is null or empty')),
'booking_id'=>array('required'=>array('code'=>'ER34', 'message'=>'Booking Id is null or empty')),),
'update_fcm_token'=> array('auth_token'=>array('required'=>array('code'=>'ER17', 'message'=>'User Id is null or empty')),
'fcm_token'=>array('required'=>array('code'=>'ER16', 'message'=>'Fcm token is null or empty')),),
'get_favorites_list'=>array('auth_token'=>array('required'=>array('code'=>'ER17', 'message'=>'User Id is null or empty'),
)
),
'get_booking_list'=>array('auth_token'=>array('required'=>array('code'=>'ER17', 'message'=>'User Id is null or empty'),
)
),
'settings'=>array('auth_token'=>array('required'=>array('code'=>'ER17', 'message'=>'User Id is null or empty'),
)
),
'update_fcm_token'=> array('auth_token'=>array('required'=>array('code'=>'ER17', 'message'=>'User Id is null or empty')),
'fcm_token'=>array('required'=>array('code'=>'ER16', 'message'=>'Fcm token is null or empty')),),
'get_favorites_list'=>array('auth_token'=>array('required'=>array('code'=>'ER17', 'message'=>'User Id is null or empty'),)),
'get_booking_list'=>array('auth_token'=>array('required'=>array('code'=>'ER17', 'message'=>'User Id is null or empty'),)),
'settings'=>array('auth_token'=>array('required'=>array('code'=>'ER17', 'message'=>'User Id is null or empty'),)),
'forgot_password'=> array('new_password'=>array('required'=>array('code'=>'ER35', 'message'=>'New password is null or empty')),
'phone'=>array('required'=>array('code'=>'ER07', 'message'=>'Phone is null or empty')),),
'convertCurrency'=> array(),
'sync_contacts' => array(
'auth_token' => array(
......@@ -120,12 +65,12 @@ class Validation_app_model extends CI_Model {
'code' => 'ER02',
'message' => 'User id is null or empty'
)
) ,
),
'contacts' => array(
'required' => array(
'code' => 'ER04',
'message' => 'Contacts is null or empty'
) ,
),
)
),
'update_friend_request' => array(
......@@ -134,18 +79,18 @@ class Validation_app_model extends CI_Model {
'code' => 'ER02',
'message' => 'User id is null or empty'
)
) ,
),
'user_id' => array(
'required' => array(
'code' => 'ER04',
'message' => 'User Id is null or empty'
) ,
),
),
'add_as_friend' => array(
'required' => array(
'code' => 'ER04',
'message' => 'Accept/Reject value is null or empty'
) ,
),
)
),
'send_friend_request' => array(
......@@ -154,12 +99,12 @@ class Validation_app_model extends CI_Model {
'code' => 'ER02',
'message' => 'User id is null or empty'
)
) ,
),
'user_id' => array(
'required' => array(
'code' => 'ER04',
'message' => 'User Id is null or empty'
) ,
),
)
),
'get_friend_requests' => array(
......@@ -186,6 +131,45 @@ class Validation_app_model extends CI_Model {
)
)
),
'getCountry' => array(),
'validate_promo_code'=>array(
'auth_token' => array(
'required' => array(
'code' => 'ER02',
'message' => 'User id is null or empty'
)
),
'event_id' => array(
'required' => array(
'code' => 'ER04',
'message' => 'Event Id is null or empty'
),
),
'promo_code' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Promocode is null or empty'
)
),
'no_of_tickets' => array(
'required' => array(
'code' => 'ER04',
'message' => 'No of Ticket is null or empty'
)
),
'seat_class' => array(
'required' => array(
'code' => 'ER04',
'message' => 'Seat Class is null or empty'
),
),
'tot_cost' => array(
'required' => array(
'code' => 'ER04',
'message' => 'Total Cost is null or empty'
)
)
)
);
public function validation_check($method_name, $parms) {
......
......@@ -9,54 +9,98 @@ class Venue_model extends CI_Model {
$cond .= (!empty($venue_id))?" AND VNE.id='$venue_id' ":"";
$cond .= (!empty($provider_id))?" AND VNE.provider_id='$provider_id' ":"";
$sql = "SELECT VNE.id AS venue_id,VNE.*,REG.name_en AS region_name_en,HST.host_category,HST.show_layout
$sql = "SELECT VNE.id AS venue_id,VNE.*,HST.host_category,HST.show_layout
FROM venue AS VNE
INNER JOIN region AS REG ON (VNE.region_id=REG.id)
INNER JOIN host_categories AS HST ON (HST.host_cat_id=VNE.host_cat_id)
WHERE $cond";
$venueData = $this->db->query($sql);
if(empty($venueData)){
return 0;
}
if(!empty($venueData)){
return (empty($venue_id))?$venueData->result():$venueData->row();
if(empty($venue_id)){
$venueData = $venueData->result_array();
foreach ($venueData AS $key => $data) {
$rtlData = langTranslator($data['venue_id'],'VEN');
$venueData[$key] = array_merge($venueData[$key],$rtlData);
$rtlData = langTranslator($data['region_id'],'REG');
$venueData[$key] = array_merge($venueData[$key],$rtlData);
}
} else {
$venueData = $venueData->row_array();
$rtlData = langTranslator($venue_id,'VEN');
$venueData = array_merge($venueData,$rtlData);
$rtlData = langTranslator($venueData['region_id'],'REG');
$venueData = array_merge($venueData,$rtlData);
}
return 0;
return json_decode(json_encode($venueData));
}
public function createVenue($venueData = array(),$locality = array()){
public function createVenue($venueData = array()){
if(empty($venueData)){
return 0;
}
if(!empty($locality)){
$status = $this->db->insert('locality',
array('locality_en'=>$locality['locality_en'],
'locality_ar'=>$locality['locality_ar'],
'region_id'=>$venueData['region_id']));
if($status){
$venueData['locality_id'] = $this->db->insert_id();
$status = $this->db->insert('venue',array('layout'=>$venueData['layout'],
'location'=>$venueData['location'],
'region_id'=>$venueData['region_id'],
'host_cat_id'=>$venueData['host_cat_id'],
'locality_id'=>$venueData['locality_id'],
'provider_id'=>$venueData['provider_id'],
'location_lat'=>$venueData['location_lat'],
'location_lng'=>$venueData['location_lng'],
'layout_details'=>$venueData['layout_details']));
if($status){
$venue_id = $this->db->insert_id();
$languages = getLanguages();
if(!empty($languages)){
$insertArr = array();
foreach ($languages AS $lang) {
if(!isset($venueData['venue_name_'.$lang]) || empty($venueData['venue_name_'.$lang])){
continue;
}
$insertArr[] = array('venue_id'=>$venue_id,
'venue_name'=>$venueData['venue_name_'.$lang],
'language_code'=>$lang);
}
if(!empty($insertArr)){
$this->db->insert_batch('translator_venue',$insertArr);
}
}
}
$status = $this->db->insert('venue',$venueData);
}
return $status;
}
public function updateVenues($venue_id = '', $venueData = array(), $locality = array()){
public function updateVenues($venue_id = '', $venueData = array()){
if(empty($venue_id) || empty($venueData)){
return 0;
}
if(!empty($locality)){
$status = $this->db->insert('locality',
array('locality_en'=>$locality['locality_en'],
'locality_ar'=>$locality['locality_ar'],
'region_id'=>$venueData['region_id']));
if($status){
$venueData['locality_id'] = $this->db->insert_id();
}
}
$insertArr = array();
$languages = getLanguages();
if(!empty($languages)){
foreach ($languages AS $lang) {
if(!isset($venueData['venue_name_'.$lang])){
continue;
}
$vName = $venueData['venue_name_'.$lang];
unset($venueData['venue_name_'.$lang]);
unset($venueData['lolocality_name_'.$lang]);
if(empty($vName)){
continue;
}
$insertArr[] = array('venue_id'=>$venue_id,'venue_name'=>$vName,'language_code'=>$lang);
}
}
$status = $this->db->update('venue',$venueData,array('id'=>$venue_id));
$this->db->delete('translator_venue',array('venue_id'=>$venue_id));
if($status && !empty($insertArr)){
$this->db->insert_batch('translator_venue',$insertArr);
}
return $status;
}
......@@ -67,5 +111,32 @@ class Venue_model extends CI_Model {
$status = $this->db->update('venue',array('status'=>$status),array('id'=>$venue_id));
return $status;
}
public function createLocality($language,$data){
if(empty($data) || empty($language) || !isset($data['locality_name_EN']) ||
empty($data['locality_name_EN'])){
return;
}
$status = $this->db->insert('locality',array('locality'=>$data['locality_name_EN'],
'region_id'=>$data['region_id']));
if(!$status || empty($locality_id = $this->db->insert_id())) {
return;
}
$insertArr = array();
foreach($language AS $lang) {
if(isset($data['locality_name_'.$lang]) && !empty($data['locality_name_'.$lang])){
$insertArr[] = array('language_code'=>$lang,
'locality_id'=>$locality_id,
'locality_name'=>$data['locality_name_'.$lang]);
}
}
if(!empty($insertArr)){
$this->db->insert_batch('translator_locality',$insertArr);
}
return $locality_id;
}
}
?>
\ No newline at end of file
......@@ -30,21 +30,26 @@ class Webservice_model extends CI_Model {
function login($data){
try{
$this->db->select("region.id AS city_id,region.name AS city,
customer.name AS user_name,customer.phone,
customer.email,customer.profile_image AS profile_photo,
IF(customer.phone_verified=0,'false','true') AS is_phone_verified,
IF(customer.city='','false','true') AS is_location_updated,
users.id AS user_id");
$this->db->where('users.status',1);
$this->db->where('users.password',md5($data['password']));
$this->db->where('customer.email',$data['email']);
$this->db->from('users');
$this->db->join('customer','customer.customer_id=users.id');
$this->db->join('region','region.id=customer.city','left');
$result = $this->db->get()->row();
$sql = "SELECT region.id AS city_id, customer.name AS user_name,customer.phone, customer.email,
customer.profile_image AS profile_photo, IF(customer.phone_verified=0,'false', 'true') AS is_phone_verified, IF(customer.city='', 'false', 'true') AS is_location_updated,
users.id AS user_id
FROM users
INNER JOIN customer ON (customer.customer_id=users.id)
LEFT JOIN region ON (region.id=customer.city)
WHERE users.status = 1
AND users.password = '".md5($data['password'])."'
AND customer.email = '".$data['email']."'";
$result = $this->db->query($sql)->row();
if($result){
$auth_token = md5(microtime().rand());
$countryData = $this->getCountryData($result->user_id);
$lang = $countryData['language_code'];
if(!empty($lanTrans = langTranslator($result->city_id,'REG',$lang))){
$result->city = $lanTrans['region_name'];
}
if($result->city_id != ''){
$cityId = $result->city_id;
$cityName = $result->city;
......@@ -63,9 +68,8 @@ class Webservice_model extends CI_Model {
'is_phone_verified'=>$result->is_phone_verified === 'true'? true: false,
'is_location_updated'=>$result->is_location_updated === 'true'? true: false,
);
$this->db->update('customer',array('language'=>$data['language']),
$this->db->update('customer',array('country_id'=>$data['country_id']),
array('customer_id'=>$result->user_id));
$response = array('user'=>$resultArray,'auth_token'=>$auth_token);
$this->generateAuth($result->user_id,$auth_token);
$res = array('status'=>1,'data'=>$response);
......@@ -83,7 +87,7 @@ class Webservice_model extends CI_Model {
$user_id = $this->auth_token_get($data['auth_token']);
if($user_id > 0) {
$this->db->where('customer_id', $user_id);
$id = $this->db->update('customer', array('language' => $data['language']));
$id = $this->db->update('customer', array('country_id'=>$data['country_id']));
if($id) {
$res = array('status'=>1);
}else {
......@@ -98,11 +102,11 @@ class Webservice_model extends CI_Model {
return $res;
}
function availability($data) {
try{
$is_email_available = "true";
$is_phone_available = "true";
$data['phone'] = preg_replace('/\D/', '', $data['phone']);
$res_count = $this->db->where('email',$data['email'])->or_where('phone',$data['phone'])->get('customer')->result();
if(count($res_count) > 0) {
foreach ($res_count as $rs) {
......@@ -126,11 +130,10 @@ class Webservice_model extends CI_Model {
return $res;
}
function register($data) {
try{
$email = $data['email'];
$phone = $data['phone'];
$phone = preg_replace('/\D/', '', $data['phone']);
$res_count = $this->db->query("SELECT * FROM customer
INNER JOIN `users` ON users.id=customer.customer_id AND users.user_type='3'
WHERE users.status!='2' AND
......@@ -159,27 +162,23 @@ class Webservice_model extends CI_Model {
'phone'=>$data['phone'],
'email'=>$data['email'],
'name'=>$data['name'],
'language'=>$data['language']
'country_id'=>$data['country_id']
);
$this->db->insert('customer', $customer_data);
$email = $data['email'];
$subject = "New account created successfully";
$message = "Hi, Welcome to TimeOut. Please use username: ".$email.
" for access your account";
if(isset($template['registration_mail']) && !empty($template['registration_mail'])){
$message = str_replace(array('{:email}'),
array($email),$template['registration_mail']);
}
$this->send_mail($subject,$email,$message);
if(isset($template['registration_sms']) && !empty($template['registration_sms'])){
$message = str_replace(array('{:email}'),
array($email),$template['registration_sms']);
}
$this->sendSMS($data['phone'],$message);
$this->db->select("customer.name AS user_name,customer.phone,customer.email,customer.profile_image AS profile_photo,users.id AS user_id, IF(customer.phone_verified = 0,'false','true') AS is_phone_verified");
$this->db->where('users.id',$id);
$this->db->from('users');
......@@ -211,19 +210,18 @@ class Webservice_model extends CI_Model {
return $res;
}
function profile_details($data) {
try {
$user_id = $this->auth_token_get($data['auth_token']);
if($user_id > 0) {
$lang = $this->getUserLang($user_id);
$field = 'faq_en';
if($lang == 'ar'){
$field = 'faq_ar';
}
$countryData = $this->getCountryData($user_id);
$lang = $countryData['language_code'];
$settings = getSettings();
$sql = "SELECT faq FROM translator_policies WHERE language_code='$lang'";
$settingsDetails = $this->db->query($sql)->row_array();
$settingsDetails['contact_number'] = $settings['contact_number'];
$settingsDetails = $this->db->query("SELECT $field AS faq,contact_number FROM privacy_policy")->row_array();
$userDetails = $this->db->query("SELECT customer.name AS name, customer.profile_image AS profile_photo,customer.gender AS gender, customer.email, customer.dob, customer.profile_city AS city_name, users.notification_status, users.email_status FROM customer INNER JOIN users ON users.id = customer.customer_id WHERE customer.customer_id = ".$user_id." AND users.status = 1 ")->row_array();
if(count($settingsDetails)>0 && count($userDetails)){
$resultData = array();
......@@ -241,35 +239,33 @@ class Webservice_model extends CI_Model {
return $res;
}
function discover($data) {
try {
$per_page = 10;
$user_id = $this->auth_token_get($data['auth_token']);
if($user_id > 0) {
$where = '';
$lang = $this->getUserLang($user_id);
$cityField = "region.name AS city";
if($lang == 'ar') {
$cityField = 'region.name_ar AS city';
}
$sql = "SELECT region.id,$cityField FROM customer
$countryData = $this->getCountryData($user_id);
$lang = $countryData['language_code'];
$rate = (!empty($countryData['conversion_rate']))?$countryData['conversion_rate']:1;
$sql = "SELECT region.id FROM customer
INNER JOIN region ON customer.city=region.id
WHERE customer.customer_id='$user_id' AND region.status='1'";
$cityName = $this->db->query($sql)->row_array();
$cityName['city'] = (empty($cityName))?'null':$cityName['city'];
if(!empty($cityName)){
$regData = langTranslator($cityName['id'],'REG',$lang);
$cityName['city'] = $regData['region_name'];
} else {
$cityName['city'] = 'null';
}
if(isset($data['category_id'])) {
$where = ' AND events.category_id = '.$data['category_id'];
}
$case = "AND event_date_time.date >= DATE_FORMAT(NOW(),'%Y-%m-%d')";
if(isset($data['latitude']) && isset($data['longitude'])) {
$radius = 25;
$res = $this->db->query("SELECT events.event_id,venue.id,venue.status, (((acos(sin((".$data['latitude']."*pi()/180)) * sin((venue.location_lat*pi()/180)) + cos((".$data['latitude']."*pi()/180)) * cos((venue.location_lat*pi()/180)) * cos(((".$data['longitude']." - venue.location_lng)*pi()/180))))*180/pi())*60*1.1515) as distance FROM venue RIGHT JOIN events ON events.venue_id = venue.id HAVING distance < ".$radius." AND venue.status = '1'")->result_array();
$otherV = '';
foreach($res as $key => $value){
if ($otherV) $otherV .= ',';
......@@ -281,11 +277,9 @@ class Webservice_model extends CI_Model {
$where = ' AND events.category_id IN (0)';
}
}
if(isset($cityName['id'])) {
$where .= ' AND venue.region_id = '.$cityName['id'];
}
if(isset($data['filters'])){
$filtersElement = json_decode($data['filters'], true);
$locality_id_Array = $filtersElement['cities'];
......@@ -294,11 +288,9 @@ class Webservice_model extends CI_Model {
$dateId = preg_replace("/[^a-zA-Z 0-9]+/", "", $dateId_Array);
$categoryId_Array = $filtersElement['category'];
$categoryId = preg_replace("/[^a-zA-Z 0-9]+/", "", $categoryId_Array);
if($categoryId!=''){
$where = ' AND events.category_id='.$categoryId;
}
if($dateId != '') {
switch ($dateId) {
case '1':
......@@ -336,14 +328,12 @@ class Webservice_model extends CI_Model {
break;
}
}
if($locality_id!=''){
$venue_res = $this->db->select('id')->where('locality_id',$locality_id)->get('venue')->result_array();
$list = implode(',', array_map(function($v) { return $v['id']; }, $venue_res));
$where .= ' AND events.venue_id IN('.$list.')';
}
}
$resCount = $this->db->query("
SELECT GROUP_CONCAT(DISTINCT CONCAT_WS('#',event_date_time.id,event_date_time.date,
event_date_time.time)) AS date_time
......@@ -359,11 +349,9 @@ class Webservice_model extends CI_Model {
favourite.user_id = $user_id AND favourite.status = 1
WHERE events.status = 1 $where
GROUP BY events.event_id")->result();
if(empty($resCount)){
return array('status'=>1,'data'=>array('city_name'=>$cityName['city']));
}
foreach ($resCount AS $key => $rs) {
if(!empty($dates = explode(',',$rs->date_time))){
$checkTime = 0;
......@@ -386,19 +374,13 @@ class Webservice_model extends CI_Model {
}
}
$count = count($resCount);
if($count > 0) {
$page = (isset($data['page']))?$data['page']:1;
$page_limit = ($page - 1)*$per_page;
if($lang == 'ar') {
$cat_field = 'event_category.category_ar';
} else {
$cat_field = 'event_category.category_en';
}
if($count > $page_limit) {
$result = $this->db->query("
SELECT events.seat_pricing,events.custom_seat_layout,venue.location_lat AS latitude,venue.location_lng AS longitude,venue.layout,venue.layout_details,events.event_id AS event_id, events.event_name AS name,events.event_name_ar AS name_ar,`event_gallery`.`media_url` AS image, (SELECT SUM(booking.no_of_ticket) FROM booking WHERE booking.event_id = events.event_id AND booking.status IN (1,2)) AS attendees, $cat_field AS category, CAST(AVG (review.rate) AS DECIMAL (12,1)) AS rating, venue.venue_name, venue.location, IF(events.avg_price = 0, '100','150') AS rate, IF(events.provider_id = 1,'true','false') AS is_editors_choice, IF(favourite.is_favorite = 1, 'true','false') AS is_favorite, GROUP_CONCAT(DISTINCT CONCAT_WS('#',event_date_time.id,event_date_time.date,event_date_time.time)) AS date_time
SELECT events.seat_pricing,events.custom_seat_layout,event_category.cat_id,venue.id AS venue_id,venue.location_lat AS latitude,venue.location_lng AS longitude,venue.layout,venue.layout_details,events.event_id AS event_id,event_gallery.media_url AS image, (SELECT SUM(booking.no_of_ticket) FROM booking WHERE booking.event_id = events.event_id AND booking.status IN (1,2)) AS attendees,CAST(AVG (review.rate) AS DECIMAL (12,1)) AS rating,venue.location, IF(events.avg_price = 0, '100','150') AS rate, IF(events.provider_id = 1,'true','false') AS is_editors_choice, IF(favourite.is_favorite = 1, 'true','false') AS is_favorite, GROUP_CONCAT(DISTINCT CONCAT_WS('#',event_date_time.id,event_date_time.date,event_date_time.time)) AS date_time
FROM events
INNER JOIN venue ON venue.id = events.venue_id
INNER JOIN event_date_time ON events.event_id = event_date_time.event_id
......@@ -412,7 +394,6 @@ class Webservice_model extends CI_Model {
WHERE events.status = 1 $where $case
GROUP BY events.event_id
LIMIT $page_limit,$per_page")->result();
$response = array();
foreach ($result as $key=>$rs) {
if(!empty($dates = explode(',',$rs->date_time)) && count($dates) > 0){
......@@ -425,37 +406,48 @@ class Webservice_model extends CI_Model {
}
if($checkTime == count($dates)) continue;
} else continue;
if($rs->layout!=''){
if($rs->custom_seat_layout!=''){
$pricelist = json_decode($rs->custom_seat_layout, TRUE);
$price = min(array_column($pricelist, 'price'));
$price = $rate*min(array_column($pricelist, 'price'));
} else {
$pricelist = json_decode($rs->layout_details, TRUE);
$price = min(array_column($pricelist, 'price'));
$price = $rate*min(array_column($pricelist, 'price'));
}
} else {
$pricelist = json_decode($rs->seat_pricing, TRUE);
$price = $pricelist['price'];
$price = $rate*$pricelist['price'];
}
$transData = array('event'=>'','category'=>'','venue'=>'');
if(!empty($lanTrans = langTranslator($rs->event_id,'EVT',$lang))){
$transData['event'] = $lanTrans['event_name'];
}
if(!empty($lanTrans = langTranslator($rs->cat_id,'CAT',$lang))){
$transData['category'] = $lanTrans['category_name'];
}
if(!empty($lanTrans = langTranslator($rs->venue_id,'VEN',$lang))){
$transData['venue'] = $lanTrans['venue_name'];
}
$resData = array(
'id' => "$key",
'event_id'=>$rs->event_id,
'image'=>$rs->image,
'attendees'=>(!empty($rs->attendees))?$rs->attendees:'0',
'category'=>$rs->category,
'name'=>($lang == 'en')?$rs->name:$rs->name_ar,
'category'=>$transData['category'],
'name'=>$transData['event'],
'rating'=>(!empty($rs->rating))?$rs->rating:'0',
'location'=>$rs->venue_name.', '.$rs->location,
'location'=>$transData['venue'].', '.$rs->location,
'rate'=>$price,
'is_editors_choice'=>$rs->is_editors_choice,
'is_favorite'=>$rs->is_favorite === 'true'? true: false,
'latitude'=>$rs->latitude,
'longitude'=>$rs->longitude
'longitude'=>$rs->longitude,
'currency_symbol'=>$countryData['currency_symbol']
);
array_push($response, $resData);
}
$sql = "SELECT booking.id,review.rate
FROM booking
LEFT JOIN review ON review.event_id=booking.event_id AND
......@@ -463,7 +455,6 @@ class Webservice_model extends CI_Model {
WHERE booking.customer_id = ".$user_id." AND booking.status='2'
ORDER BY booking.id DESC LIMIT 1";
$lastBooking = $this->db->query($sql)->row_array();
if($lastBooking['id'] != ''){
if($lastBooking['rate'] != ''){
$lastBooking = "false";
......@@ -478,7 +469,6 @@ class Webservice_model extends CI_Model {
'current_page'=>$page,
'per_page'=>$per_page
);
if(count($result)>0){
$resultData = array();
$resultData['is_last_booking_avail'] = $lastBooking;
......@@ -505,73 +495,78 @@ class Webservice_model extends CI_Model {
return $res;
}
function event($data) {
try {
$user_id = $this->auth_token_get($data['auth_token']);
if($user_id > 0) {
$event_id = $data['event_id'];
$cTime = date("H:i", strtotime('+15 minutes'));
$countryData = $this->getCountryData($user_id);
$lang = $countryData['language_code'];
$rate = (!empty($countryData['conversion_rate']))?$countryData['conversion_rate']:1;
$this->db->query("SET SESSION group_concat_max_len = 20000");
$rs = $this->db->query("
SELECT host_categories.show_layout AS is_layout,events.has_payment AS is_payment_required,
favourite.is_favorite AS is_favorite,events.event_id, events.event_name,
events.event_name_ar,events.event_description AS event_description,
events.event_description_ar,events.seat_pricing, events.custom_seat_layout,
venue.layout, venue.layout_details,venue.venue_name,venue.venue_details,
venue.location,venue.location_lat AS lat,venue.location_lng AS lng,
venue.venue_name AS address_name,venue.venue_name_ar AS address_name_ar,
venue.location AS address, events.max_booking,
GROUP_CONCAT(DISTINCT tags.tag_name) AS tag,
GROUP_CONCAT(DISTINCT tags.tag_name_ar) AS tag_ar,
GROUP_CONCAT(DISTINCT `event_gallery`.`media_url`) AS media_url,
GROUP_CONCAT(DISTINCT CONCAT_WS('#',event_date_time.id,event_date_time.date,
event_date_time.time)) AS date_time
FROM events
INNER JOIN event_date_time ON events.event_id=event_date_time.event_id
INNER JOIN venue ON venue.id=events.venue_id
LEFT JOIN event_gallery ON events.event_id=event_gallery.event_id AND
event_gallery.status != 0
LEFT JOIN booking on booking.event_id = events.event_id
LEFT JOIN favourite ON favourite.event_id = events.event_id AND favourite.user_id=$user_id AND favourite.status = 1
LEFT JOIN event_tags ON events.event_id = event_tags.event_id
LEFT JOIN tags on tags.tag_id = event_tags.tag_id
LEFT JOIN review ON events.event_id = review.event_id
INNER JOIN host_categories ON venue.host_cat_id = host_categories.host_cat_id
WHERE event_date_time.date>='".date('Y-m-d')."' AND events.event_id=$event_id
GROUP BY events.event_id, event_date_time.event_id")->row();
if(count($rs)>0){
$sql = "SELECT host_categories.show_layout AS is_layout,venue.id AS venue_id,
events.has_payment AS is_payment_required,favourite.is_favorite AS is_favorite,
events.seat_pricing,events.custom_seat_layout,events.event_id,
venue.layout, venue.layout_details,venue.location,venue.location AS address,
venue.location_lat AS lat,venue.location_lng AS lng,events.max_booking,
GROUP_CONCAT(DISTINCT event_gallery.media_url) AS media_url,
GROUP_CONCAT(DISTINCT CONCAT_WS('#',event_date_time.id,event_date_time.date,
event_date_time.time)) AS date_time
FROM events
INNER JOIN venue ON venue.id=events.venue_id
INNER JOIN event_date_time ON events.event_id=event_date_time.event_id
INNER JOIN host_categories ON venue.host_cat_id = host_categories.host_cat_id
LEFT JOIN event_gallery ON events.event_id=event_gallery.event_id AND
event_gallery.status != 0
LEFT JOIN favourite ON favourite.event_id = events.event_id AND
favourite.user_id=$user_id AND favourite.status = 1
WHERE event_date_time.date>='".date('Y-m-d')."' AND events.event_id=$event_id
GROUP BY events.event_id, event_date_time.event_id";
$rs = $this->db->query($sql)->row();
if(count($rs) > 0){
$event_layout = '';
$colorData = array();
$resultData = array();
$sql = "SELECT AVG(review.rate) AS rate
FROM review WHERE event_id=$event_id";
$sql = "SELECT AVG(review.rate) AS rate FROM review WHERE event_id=$event_id";
$rating = $this->db->query($sql)->row_array();
$rate = isset($rating['rate'])&&!empty($rating['rate'])?
round($rating['rate'],1):'0.0';
$rate = isset($rating['rate'])&&!empty($rating['rate'])?round($rating['rate'],1):'0.0';
$sql = "SELECT SUM(booking.no_of_ticket) AS attend FROM booking
WHERE status IN (1,2) AND event_id=$event_id";
$atten = $this->db->query($sql)->row_array();
$atte = isset($atten['attend'])&&!empty($atten['attend'])?
$atten['attend']:'0';
if($rs->layout!=''){
if($rs->custom_seat_layout!=''){
$event_layout = $rs->custom_seat_layout;
$atte = isset($atten['attend'])&&!empty($atten['attend'])?$atten['attend']:'0';
if(!empty($rs->layout)){
if(!empty($rs->custom_seat_layout)){
$seatLayout = $rs->custom_seat_layout;
if(!empty($seatLayout) && !empty($seatLayout = json_decode($seatLayout,true))){
foreach ($seatLayout AS $key => $seat) {
$seatLayout[$key]['price'] = $seat['price']*$rate;
}
}
$event_layout = json_encode($seatLayout);
} else {
$event_layout = $rs->layout_details;
$seatLayout = $rs->layout_details;
if(!empty($seatLayout) && !empty($seatLayout = json_decode($seatLayout,true))){
foreach ($seatLayout AS $key => $seat) {
$seatLayout[$key]['price'] = $seat['price']*$rate;
}
}
$event_layout = json_encode($seatLayout);
}
} else {
$event_layout = $rs->seat_pricing;
$seatLayout = $rs->seat_pricing;
if(!empty($seatLayout) && !empty($seatLayout = json_decode($seatLayout,true))){
$seatLayout['price'] = $seatLayout['price']*$rate;
}
$event_layout = json_encode($seatLayout);
}
$dates = explode(',', $rs->date_time);
$time_spec = array();
$data_array = array();
foreach ($dates as $rss) {
list($id,$date,$time) = explode('#', $rss);
$sTime = $date.' '.$time;
......@@ -585,29 +580,34 @@ class Webservice_model extends CI_Model {
foreach ($data_array as $key => $value) {
$date_list[] = array('date'=>$key, 'time'=>$value);
}
$lang = $this->getUserLang($user_id);
$custDesc = '';
if($rs->is_layout == 1 && !empty($pData = json_decode($rs->seat_pricing, TRUE))){
if($lang == 'en'){
$rs->event_description .= '<p>'.$pData['price_details'].' '.'(SAR '.$pData['price'].')'.'</p>';
}
if($lang == 'ar'){
$rs->event_description_ar .= '<p>'.$pData['price_details_ar'].' '.'(SAR '.$pData['price'].')'.'</p>';
$cSymbol = $countryData['currency_symbol'];
if(isset($pData['price_details_'.$lang]) && !empty($pData['price_details_'.$lang])){
$custDesc = '<p>'.$pData['price_details_'.$lang].' ('.$cSymbol.' '.$pData['price']*$rate.')</p>';
}
}
$event_layouts = [];
if(isset($data['event_date_id']) && !empty($eDateId = $data['event_date_id'])){
$param = array('user_id'=>$user_id,'event_id'=>$event_id,'time_id'=>$eDateId);
$event_layouts = $this->checkSeatAvailability($param);
}
$tags = ($lang == 'en')? explode(',', $rs->tag) : explode(',', $rs->tag_ar);
$transData = array('event'=>'','description'=>'','category'=>'','venue'=>'');
if(!empty($lanTrans = langTranslator($rs->event_id,'EVT',$lang))){
$transData['event'] = $lanTrans['event_name'];
$transData['description'] = $lanTrans['event_description'].$custDesc;
}
if(!empty($lanTrans = langTranslator($rs->venue_id,'VEN',$lang))){
$transData['venue'] = $lanTrans['venue_name'];
}
$media_url = explode(',', $rs->media_url);
$resData = array(
'event_id'=>$rs->event_id,
'name'=>($lang == 'en')?$rs->event_name:$rs->event_name_ar,
'description'=>($lang == 'en')?$rs->event_description:$rs->event_description_ar,
'name'=>$transData['event'],
'description'=>$transData['description'],
'rating'=>$rate,
'total_attendees'=>$atte,
'layout_image'=>$rs->layout,
......@@ -620,32 +620,24 @@ class Webservice_model extends CI_Model {
'date_list'=>$date_list,
'classes'=>$event_layouts,
'latitude'=>$rs->lat,
'address_name'=>($lang == 'en')?$rs->address_name:$rs->address_name_ar,
'address_name'=>$transData['venue'],
'address'=>$rs->address,
'longitude'=>$rs->lng
'longitude'=>$rs->lng,
'currency_symbol'=>$countryData['currency_symbol']
);
$res = array('status'=>1,'data'=>$resData);
} else {
$res = array('status'=>0,'message'=>'No records found','code'=>'ER13');
}
} else {
$res = array('status'=>0,'message'=>'Invalid user','code'=>'ER19');
}
} catch(Exception $e) {
$res = array('status'=>0,'message'=>'Ohh No!! Something went South!!','code'=>'ER06');
}
return $res;
}
function getUserLang($user_id){
$lang = $this->db->select('language')->where('customer_id',$user_id)->get('customer')->row();
return $lang->language;
}
function generateAuth($userId,$auth_token) {
$this->db->insert('customer_auth',array('user_id'=>$userId, 'auth_token'=>$auth_token));
}
......@@ -671,7 +663,6 @@ class Webservice_model extends CI_Model {
'crlf' => "\r\n",
'newline' => "\r\n"
));
$ci->email->from('[email protected]', 'TimeOut');
$ci->email->to($email);
$ci->email->cc('[email protected]');
......@@ -682,7 +673,6 @@ class Webservice_model extends CI_Model {
}
return $ci->email->send();
}
function sendSMS($phone_no, $message) {
$phone_no = trim($phone_no);
......@@ -690,13 +680,11 @@ class Webservice_model extends CI_Model {
if(empty($phone_no) && count($phone_no) < 10 && empty($message)){
return;
}
$user = "eventstimeout";
$senderid = "SMSCountry";
$password = "timeout2030";
$url = "http://www.smscountry.com/SMSCwebservice_Bulk.aspx";
$message = urlencode($message);
if($ch = curl_init()){
$ret = curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_POST, 1);
......@@ -710,30 +698,22 @@ class Webservice_model extends CI_Model {
function get_category_list($data) {
try {
$user_id = $this->auth_token_get($data['auth_token']);
if($user_id > 0) {
$where = '';
$countryData = $this->getCountryData($user_id);
$lang = $countryData['language_code'];
if(isset($data['query'])) {
$where = ' AND event_category.category LIKE '."'%".$data['query'].'%'."'";
} else {
$where = '';
$where = ' AND TC.category_name LIKE '."'%".$data['query'].'%'."'";
}
$lang = $this->db->select('language')->where('customer_id', $user_id)->get('customer')->row();
if($lang->language == 'ar') {
$cat_field = 'event_category.category_ar AS category_name';
$cat_field .= ',event_category.category_image_ar AS category_image';
} else {
$cat_field = 'event_category.category_en AS category_name';
$cat_field .= ',event_category.category_image AS category_image';
}
$result = $this->db->query("SELECT events.venue_id AS region_id,event_category.cat_id AS category_id, $cat_field,event_category.category_description AS category_description FROM event_category LEFT JOIN events ON events.category_id = event_category.cat_id WHERE event_category.status = 1 ".$where." GROUP BY event_category.cat_id ORDER BY event_category.priority")->result();
if(count($result)>0){
$resultData = array();
$resultData['category'] = $result;
$res = array('status'=>1,'data'=>$resultData);
$sql = "SELECT TC.category_id,TC.category_name,TC.category_image
FROM translator_category AS TC
INNER JOIN event_category AS ECAT ON (ECAT.cat_id=TC.category_id)
WHERE ECAT.status = 1 AND TC.language_code='$lang' $where
GROUP BY ECAT.cat_id ORDER BY ECAT.priority";
$result = $this->db->query($sql)->result();
if(count($result) > 0){
$res = array('status' => 1,'data' => array('category'=>$result));
} else {
$res = array('status'=>1,'data' => []);
}
......@@ -746,37 +726,25 @@ class Webservice_model extends CI_Model {
return $res;
}
function add_favorites($data) {
try{
$user_id = $this->auth_token_get($data['auth_token']);
if($user_id > 0) {
$res_count = $this->db->where('event_id',$data['event_id'])->where('user_id',$user_id)->get('favourite')->num_rows();
$favoriteList = array('user_id'=>$user_id, 'event_id'=>$data['event_id'], 'is_favorite'=>$data['is_favorite']);
if($res_count > 0) {
$data=array('event_id'=>$data['event_id'], 'is_favorite'=>$data['is_favorite']);
$this->db->where('user_id',$user_id);
$this->db->where('event_id',$data['event_id']);
$id = $this->db->update('favourite',$data);
}else{
$id = $this->db->insert('favourite',$favoriteList);
}
if($id) {
$res = array('status'=>1);
}else {
$res = array('status'=>0,'message'=>'Add Favorite failed please try again','code'=>'ER14');
}
} else {
$res = array('status'=>0,'message'=>'Invalid user','code'=>'ER19');
}
......@@ -786,24 +754,16 @@ class Webservice_model extends CI_Model {
return $res;
}
function get_cities_list($data) {
try {
$user_id = $this->auth_token_get($data['auth_token']);
if($user_id > 0) {
// language
$lang = $this->db->select('language')->where('customer_id', $user_id)->get('customer')->row();
if($lang->language == 'ar') {
$region_name = 'region.name_ar';
} else {
$region_name = 'region.name';
}
// End
$result = $this->db->query("SELECT region.id AS city_id, $region_name AS city_name, region.region_icon AS city_image FROM region WHERE region.status = 1 GROUP BY region.name")->result();
$countryData = $this->getCountryData($user_id);
$lang = $countryData['language_code'];
$result = $this->db->query("SELECT REG.id AS city_id, REG.region_icon AS city_image,TREG.region_name AS city_name FROM region AS REG INNER JOIN translator_region AS TREG ON (TREG.region_id = REG.id) WHERE REG.status = 1 AND TREG.language_code='$lang' GROUP BY city_name")->result();
if(count($result)>0){
$resultData = array();
$resultData['cities'] = $result;
$res = array('status'=>1,'data'=>$resultData);
$res = array('status'=>1,'data'=>array('cities'=>$result));
} else {
$res = array('status'=>0,'message'=>'No records found','code'=>'ER13');
}
......@@ -816,32 +776,38 @@ class Webservice_model extends CI_Model {
return $res;
}
function update_city($data) {
try{
$user_id = $this->auth_token_get($data['auth_token']);
$countryData = $this->getCountryData($user_id);
$lang = $countryData['language_code'];
if($user_id > 0) {
if(isset($data['city_id']) && !empty($data['city_id'])){
$re = $this->db->select('name')->where('id', $data['city_id'])->where('status', 1)->get('region')->row();
$cityName = $re->name;
$re = $this->db->query("SELECT TREG.region_name FROM region AS REG
INNER JOIN translator_region AS TREG ON (TREG.region_id = REG.id)
WHERE REG.status='1' AND TREG.language_code='$lang' AND
REG.id='".$data['city_id']."'
GROUP BY REG.id")->row();
$cityName = $re->region_name;
$cityId = $data['city_id'];
}else{
$radius = 25;
$data = $this->db->query("SELECT id,name,status, (((acos(sin((".$data['latitude']."*pi()/180)) * sin((region_lat*pi()/180)) + cos((".$data['latitude']."*pi()/180)) * cos((region_lat*pi()/180)) * cos(((".$data['longitude']." - region_lng)*pi()/180))))*180/pi())*60*1.1515) as distance FROM region HAVING distance < ".$radius." AND status = '1' ORDER BY distance ASC LIMIT 1")->result_array();
$data = $this->db->query("
SELECT REG.id,TREG.region_name,REG.status, (((acos(sin((".$data['latitude']."*pi()/180)) * sin((region_lat*pi()/180)) + cos((".$data['latitude']."*pi()/180)) * cos((region_lat*pi()/180)) * cos(((".$data['longitude']." - region_lng)*pi()/180))))*180/pi())*60*1.1515) as distance
FROM region AS REG
INNER JOIN translator_region AS TREG ON (TREG.region_id = REG.id)
WHERE REG.status = '1' AND TREG.language_code='$lang'
HAVING distance < ".$radius."
ORDER BY distance ASC LIMIT 1")->row_array();
if(!empty($data)){
$cityId = $data[0]['id'];
$cityName = $data[0]['name'];
$cityId = $data['id'];
$cityName = $data['region_name'];
}
}
if(!empty($cityId)){
$this->db->where('customer_id', $user_id);
$this->db->update('customer', array('city' => $cityId));
$resultArray = array('city_id'=>$cityId,'city_name'=>$cityName);
$res = array('status'=>1, 'data'=>$resultArray);
$res = array('status'=>1, 'data'=>array('city_id'=>$cityId,'city_name'=>$cityName));
}else {
$res = array('status'=>0,'message'=>'Update failed please try again','code'=>'ER15');
}
......@@ -854,32 +820,53 @@ class Webservice_model extends CI_Model {
return $res;
}
function booking_summary($data) {
try {
$user_id = $this->auth_token_get($data['auth_token']);
if($user_id > 0) {
$bookingId = $data['booking_id'];
$ticketDetails = $this->db->query("SELECT ticket_details FROM booking WHERE bookId = '$bookingId'")->row();
$bookId = $data['booking_id'];
$countryData = $this->getCountryData($user_id);
$lang = $countryData['language_code'];
$sql = "SELECT ticket_details FROM booking WHERE bookId='$bookId'";
$ticketDetails = $this->db->query($sql)->row();
$res = json_decode($ticketDetails->ticket_details);
if(!empty($res)){
$kk['ticket_rate'] = "$res->price";
}
$settingsDetails = $this->db->query("SELECT instruction_en AS instruction,contact_number FROM privacy_policy")->row_array();
$lang = $this->getUserLang($user_id);
if($lang == 'en'){
$cat_filed = 'events.event_name AS event_name';
$cat_filed .= ',venue.venue_name AS address_name';
}else{
$cat_filed = 'events.event_name_ar AS event_name';
$cat_filed .= ',venue.venue_name_ar AS address_name';
}
$result = $this->db->query("SELECT booking.qrcode,events.event_id,events.has_payment AS is_payment_required,$cat_filed, `event_gallery`.`media_url` AS event_image,event_date_time.date, booking.bookId AS ticket_id,event_date_time.time,venue.location_lat AS latitude, venue.location_lng AS longitude,venue.location AS address, booking.amount AS total_rate, booking.no_of_ticket AS ticket_count, customer.name AS profile_name, customer.profile_image AS profile_photo FROM events LEFT JOIN `event_gallery` ON `events`.`event_id` = `event_gallery`.`event_id` AND `event_gallery`.`media_type` = 0 LEFT JOIN booking ON booking.event_id = events.event_id RIGHT JOIN event_date_time ON event_date_time.id = booking.event_date_id LEFT JOIN venue ON venue.id = events.venue_id LEFT JOIN customer ON customer.customer_id = booking.customer_id WHERE booking.bookId = '$bookingId' AND booking.customer_id = ".$user_id."")->row_array();
if(count($result)>0 && count($settingsDetails)>0){
$settings = getSettings();
$sql = "SELECT instruction FROM translator_policies WHERE language_code='$lang'";
$settingsDetails = $this->db->query($sql)->row_array();
$settingsDetails['contact_number'] = $settings['contact_number'];
$sql = "SELECT booking.qrcode,events.event_id,events.venue_id,
events.has_payment AS is_payment_required,event_date_time.date,
event_gallery.media_url AS event_image,booking.bookId AS ticket_id,
event_date_time.time,venue.location_lat AS latitude,venue.location_lng AS longitude,
venue.location AS address,booking.amount AS total_rate,customer.name AS profile_name,
booking.no_of_ticket AS ticket_count,customer.profile_image AS profile_photo
FROM events
LEFT JOIN event_gallery ON events.event_id=event_gallery.event_id AND
event_gallery.media_type=0
LEFT JOIN booking ON booking.event_id = events.event_id
RIGHT JOIN event_date_time ON event_date_time.id = booking.event_date_id
LEFT JOIN venue ON venue.id = events.venue_id
LEFT JOIN customer ON customer.customer_id = booking.customer_id
WHERE booking.bookId = '$bookId' AND booking.customer_id = ".$user_id;
$result = $this->db->query($sql)->row_array();
if(count($result) > 0 && count($settingsDetails) > 0){
if(!empty($lanTrans = langTranslator($result['event_id'],'EVT',$lang))){
$result['event_name'] = $lanTrans['event_name'];
}
if(!empty($lanTrans = langTranslator($result['venue_id'],'VEN',$lang))){
$result['address_name'] = $lanTrans['venue_name'];
}
$resultData = array();
$result['is_payment_required'] = ($result['is_payment_required'] == 1) ? true: false;
$resultData = array();
$resultData = array_merge($settingsDetails, $result,!empty($kk)?$kk:[]);
$res = array('status'=>1,'data'=>$resultData);
} else {
......@@ -894,7 +881,6 @@ class Webservice_model extends CI_Model {
return $res;
}
function payment($data) {
try{
$user_id = $this->auth_token_get($data['auth_token']);
......@@ -917,7 +903,6 @@ class Webservice_model extends CI_Model {
return $res;
}
function event_rating($data) {
try{
$user_id = $this->auth_token_get($data['auth_token']);
......@@ -943,13 +928,10 @@ class Webservice_model extends CI_Model {
return $res;
}
function update_notification_email_status($data) {
try{
$user_id = $this->auth_token_get($data['auth_token']);
if($user_id > 0) {
$notData = array('notification_status'=>$data['notification_status'], 'email_status'=>$data['email_status']);
$this->db->where('id', $user_id);
$this->db->where('status', 1);
......@@ -969,9 +951,7 @@ class Webservice_model extends CI_Model {
return $res;
}
public function update_profile($data) {
try{
$user_id = $this->auth_token_get($data['auth_token']);
$img_error = 0;
......@@ -979,7 +959,6 @@ class Webservice_model extends CI_Model {
$post_data = $data;
unset($post_data['file']);
unset($post_data['auth_token']);
if(isset($data['email'])){
$this->db->select('customer.email');
$this->db->where('customer.email',$data['email']);
......@@ -991,7 +970,6 @@ class Webservice_model extends CI_Model {
if($num > 0)
{
$res = array('status'=>0,'message'=>'Email address already exist','code'=>'ER32');
return $res;
}
}
......@@ -1023,7 +1001,6 @@ class Webservice_model extends CI_Model {
$res = array('status'=>0,'message'=>'Profile update failed','code'=>'ER32');
}
}
if($img_error == 1) {
$this->db->select('customer.name,customer.dob,customer.phone,customer.email,customer.profile_image AS image,customer.gender,users.id AS userId, customer.city');
$this->db->where('users.id',$user_id);
......@@ -1036,7 +1013,6 @@ class Webservice_model extends CI_Model {
$res = array('status'=>0,'message'=>'Invalid user','code'=>'ER19');
}
}
} else {
$res = array('status'=>0,'message'=>'Invalid user','code'=>'ER19');
}
......@@ -1047,7 +1023,6 @@ class Webservice_model extends CI_Model {
return $res;
}
function booking($data) {
try{
$user_id = $this->auth_token_get($data['auth_token']);
......@@ -1055,38 +1030,82 @@ class Webservice_model extends CI_Model {
$post_data = $data;
$post_data['customer_id'] = $user_id;
$post_data['ticket_details'] = json_encode($post_data['ticket_details']);
$post_data['status'] = (isset($post_data['has_payment']) && $post_data['has_payment'] == 0)?'1':'3';
unset($post_data['auth_token'],$post_data['has_payment']);
$post_data['status'] = '3';
if(isset($post_data['has_payment']) && $post_data['has_payment'] == 0){
$post_data['status'] = '1';
}
if(isset($post_data['promo_code']) && !empty($post_data['promo_code']) &&
isset($post_data['discounted_price']) && !empty($post_data['discounted_price'])){
$promoData = $this->db->get_where('promocode_management',array('status'=>'1',
'promocode_name'=>$post_data['promo_code']))->row_array();
$promo_id = $promoData['promocode_id'];
$redeem_amount = $post_data['amount']-$post_data['discounted_price'];
$post_data['amount'] = $redeem_amount;
$this->db->insert('promocode_used',
array('user_id'=>$user_id,'event_id'=>$post_data['event_id'],
'promocode_id'=>$promo_id,'redeem_amount'=>$redeem_amount,
'created_date'=>date('Y-m-d H:i:s')));
}
$invite_ids = (isset($post_data['friends_ids']))?$post_data['friends_ids']:'';
$invite_phone = (isset($post_data['invite_list']))?$post_data['invite_list']:'';
unset($post_data['auth_token'],$post_data['has_payment'],$post_data['friends_ids'],
$post_data['promo_code'],$post_data['discounted_price'],$post_data['invite_list']);
$code = 'TO';
$ymd = date('ymd');
$squence = rand(1111,9999);
$squence = str_pad($squence,4,0,STR_PAD_LEFT);
$post_data['bookId'] = $code.$ymd.$squence;
$book_id = $code.$ymd.$squence;
$post_data['bookId'] = $book_id;
$post_data['qrcode'] = genQRcode($post_data['bookId']);
$post_data['booking_date'] = date('Y-m-d H:i:s');
$rs = $this->db->insert('booking', $post_data);
$id = $this->db->insert_id();
if($id){
$res = array('status'=>1,'data'=>array('bookingCode'=>$post_data['bookId']));
$insertArr = array();
$inStatus = ($post_data['status'] == 1)?'1':'0';
if(!empty($invite_ids)){
foreach($invite_ids AS $userId) {
$insertArr[] = array('book_id'=>$book_id,'phone'=>'',
'user_id'=>$userId,'status'=>$inStatus);
}
}
if(!empty($invite_phone)){
foreach($invite_phone AS $key => $phone) {
$phone = preg_replace('/\D/','',$phone);
$insertArr[] = array('book_id'=>$book_id,'user_id'=>'',
'phone'=>$phone,'status'=>$inStatus);
}
}
if(!empty($insertArr)){
$this->db->insert_batch('event_invites',$insertArr);
}
if($post_data['status'] == 1){
$countryData = $this->getCountryData($user_id);
$lang = $countryData['language_code'];
$bkData = $this->db->query("
SELECT EVT.event_name,CUST.name,CUST.email,CUST.phone,
SELECT TEVT.event_name,CUST.name,CUST.email,CUST.phone,
CONCAT(EDATE.date,' ',EDATE.time) AS show_time
FROM booking AS BK
INNER JOIN events AS EVT ON (EVT.event_id=BK.event_id)
INNER JOIN translator_event AS TEVT ON (TEVT.event_id=EVT.event_id)
INNER JOIN customer AS CUST ON (CUST.customer_id=BK.customer_id)
INNER JOIN event_date_time AS EDATE ON (EDATE.id=BK.event_date_id)
WHERE BK.bookId='".$post_data['bookId']."' AND EVT.status='1' AND
BK.status='1' AND EDATE.status='1'")->row_array();
BK.status='1' AND EDATE.status='1' AND TEVT.language_code='$lang'")->row_array();
$subject = "Your Tickets - TimeOut";
$showTime = date("d'S F Y - h:i, (l)",strtotime($bkData['show_time']));
$msgContent = "Hi, Your booking is confirmed for the event '".
$bkData['event_name']."' and show is on '".$showTime."'.
Booking ID ".$post_data['bookId'];
$message = "<html><body><p>".$msgContent."</p></body></html>";
$template = getNotifTemplate();
if(isset($template['booking_mail']) && !empty($template['booking_mail'])){
$msgContent = str_replace(
......@@ -1095,7 +1114,6 @@ class Webservice_model extends CI_Model {
$template['booking_mail']);
}
$this->send_mail($subject,$bkData['email'],$message);
if(isset($template['booking_sms']) && !empty($template['booking_sms'])){
$msgContent = str_replace(
array('{:event_name}','{:booking_id}','{:time}'),
......@@ -1103,6 +1121,20 @@ class Webservice_model extends CI_Model {
$template['booking_sms']);
}
$this->sendSMS($bkData['phone'],$msgContent);
$msg = "Hi, You are invited for the event '".$bkData['event_name']."', and show is on '".$showTime."'. Booking ID ".$post_data['bookId'];
if(!empty($invite_ids)){
foreach($invite_ids AS $userId) {
$usrData = $this->db->get_where('customer',
array('customer_id'=>$userId))->row_array();
$this->sendSMS($usrData['phone'],$msg);
}
}
if(!empty($invite_phone)){
foreach($invite_phone AS $key => $phone) {
$this->sendSMS($phone,$msg);
}
}
}
} else {
$res = array('status'=>0,'message'=>'Seat booking failed','code'=>'ER37');
......@@ -1116,8 +1148,6 @@ class Webservice_model extends CI_Model {
return $res;
}
function generateQR($data) {
return 'https://www.barcodefaq.com/wp-content/uploads/2018/08/gs1-qrcode-fnc1.png';
}
......@@ -1140,30 +1170,29 @@ class Webservice_model extends CI_Model {
} else {
$res = array('status'=>0,'message'=>'Invalid user','code'=>'ER19');
}
} catch(Exception $e) {
$res = array('status'=>0,'message'=>'Ohh No!! Something went South!!','code'=>'ER06');
}
return $res;
}
function favouritelist($data) {
try {
$user_id = $this->auth_token_get($data['auth_token']);
if($user_id > 0) {
$lang = $this->getUserLang($user_id);
if($lang == 'ar') {
$cat_field = 'event_category.category_ar AS category';
$cat_field .= ',events.event_name_ar AS event_name';
} else {
$cat_field = 'event_category.category_en AS category';
$cat_field .= ',events.event_name AS event_name';
}
$countryData = $this->getCountryData($user_id);
$lang = $countryData['language_code'];
$rate = (!empty($countryData['conversion_rate']))?$countryData['conversion_rate']:1;
$result = $this->db->query("
SELECT events.event_id, event_gallery.media_url, (SELECT COUNT(booking.id) FROM booking WHERE booking.event_id = events.event_id) AS attendees, event_category.category AS category, events.event_name AS event_name, CAST(AVG (review.rate) AS DECIMAL (12, 1)) AS rating, venue.location, IF(favourite.is_favorite = 0, 'false', 'true') AS is_favorite, IF(events.provider_id = 0, 'false', 'true') AS is_editors_choice, events.seat_pricing, events.custom_seat_layout, venue.layout, venue.layout_details, GROUP_CONCAT(DISTINCT CONCAT_WS('#', event_date_time.id, event_date_time.date, event_date_time.time)) AS date_time
SELECT (SELECT COUNT(booking.id) FROM booking WHERE booking.event_id=events.event_id) AS
attendees, events.event_id, event_gallery.media_url,event_category.cat_id,
CAST(AVG (review.rate) AS DECIMAL (12, 1)) AS rating,
venue.location, IF(favourite.is_favorite = 0, 'false', 'true') AS is_favorite,
IF(events.provider_id = 0, 'false', 'true') AS is_editors_choice,
events.seat_pricing, events.custom_seat_layout, venue.layout, venue.layout_details,
GROUP_CONCAT(DISTINCT CONCAT_WS('#', event_date_time.id, event_date_time.date,
event_date_time.time)) AS date_time
FROM favourite
INNER JOIN events ON events.event_id=favourite.event_id
INNER JOIN venue ON venue.id=events.venue_id
......@@ -1177,61 +1206,60 @@ class Webservice_model extends CI_Model {
favourite.user_id='$user_id' AND events.status=1 AND
event_date_time.date>=DATE_FORMAT(NOW(),'%Y-%m-%d')
GROUP BY events.event_id")->result();
if(empty($result)){
return array('status'=>1,'data' => []);
}
foreach ($result AS $key => $rs) {
if(!empty($dates = explode(',',$rs->date_time))){
$checkTime = 0;
foreach ($dates as $date) {
if(empty($date)){
unset($result[$key]);
continue;
}
if(empty($date)){ unset($result[$key]); continue; }
$dArr = explode('#', $date);
if($dArr[1] == date("Y-m-d") &&
$dArr[1].' '.$dArr[2] < date("Y-m-d H:i", strtotime('+15 minutes'))){
$checkTime += 1;
}
}
if($checkTime == count($dates)){
unset($result[$key]);
}
} else {
unset($result[$key]);
}
if($checkTime == count($dates)){ unset($result[$key]); }
} else { unset($result[$key]); }
}
if(($count = count($result)) > 0){
$response = array();
foreach ($result as $rs) {
if($rs->layout!=''){
if($rs->custom_seat_layout!=''){
$transData = array('event'=>'','category'=>'','venue'=>'');
if(!empty($lanTrans = langTranslator($rs->event_id,'EVT',$lang))){
$transData['event'] = $lanTrans['event_name'];
}
if(!empty($lanTrans = langTranslator($rs->cat_id,'CAT',$lang))){
$transData['category'] = $lanTrans['category_name'];
}
if($rs->layout != ''){
if($rs->custom_seat_layout != ''){
$pricelist = json_decode($rs->custom_seat_layout, TRUE);
$price = min(array_column($pricelist, 'price'));
$price = min(array_column($pricelist, 'price')) * $rate;
} else {
$pricelist = json_decode($rs->layout_details, TRUE);
$price = min(array_column($pricelist, 'price'));
$price = min(array_column($pricelist, 'price')) * $rate;
}
} else {
$pricelist = json_decode($rs->seat_pricing, TRUE);
$price = $pricelist['price'];
$price = $pricelist['price'] * $rate;
}
$lang = $this->getUserLang($user_id);
$lang = $this->getCountryData($user_id);
$resData = array(
'event_id'=>$rs->event_id,
'image'=>$rs->media_url,
'attendees'=>$rs->attendees,
'category'=>$rs->category,
'name'=>$rs->event_name,
'category'=>$transData['category'],
'name'=>$transData['event'],
'rating'=>$rs->rating,
'location'=>$rs->location,
'rate'=>$price,
'location'=>$rs->location,
'is_favorite'=>$rs->is_favorite === 'true'? true: false,
'is_editors_choice'=>$rs->is_editors_choice === 'true'? true: false
'is_editors_choice'=>$rs->is_editors_choice === 'true'? true: false,
'currency_symbol'=>$countryData['currency_symbol']
);
array_push($response, $resData);
}
......@@ -1254,7 +1282,6 @@ class Webservice_model extends CI_Model {
$user_id = $this->auth_token_get($data['auth_token']);
if($user_id > 0) {
$count = $this->db->select('booking.bookId AS booking_id,booking.event_id,events.event_name,event_gallery.media_url AS event_image,venue.location,event_date_time.date,event_date_time.time,booking.no_of_ticket AS ticket_count,(CASE booking.status WHEN 1 THEN 0 WHEN 2 THEN 1 WHEN 0 THEN 2 ELSE 2 END) AS booking_status')->where('booking.customer_id',$user_id)->from('booking')->join('transaction','transaction.booking_id = booking.bookId AND transaction.status = 1', 'LEFT')->join('events','booking.event_id = events.event_id')->join('event_date_time','booking.event_date_id = event_date_time.id')->join('venue', 'venue.id = events.venue_id')->join('event_gallery', 'events.event_id = event_gallery.event_id AND event_gallery.media_type = 0', 'LEFT')->order_by('booking.id','DESC')->get()->num_rows();
if($count > 0) {
if(isset($data['page'])) {
$page = $data['page'];
......@@ -1263,14 +1290,13 @@ class Webservice_model extends CI_Model {
}
$page_limit = ($page - 1) * $per_page;
if($count > $page_limit) {
$lang = $this->getUserLang($user_id);
$lang = $this->getCountryData($user_id);
if($lang == 'en'){
$cat_field = 'events.event_name AS event_name';
}else{
$cat_field = 'events.event_name_ar AS event_name';
}
}
$result = $this->db->select("booking.bookId AS booking_id,booking.event_id,$cat_field,event_gallery.media_url AS event_image,venue.location,event_date_time.date,event_date_time.time,booking.no_of_ticket AS ticket_count,
(CASE booking.status WHEN 1 THEN 0 WHEN 2 THEN 1 WHEN 0 THEN 2 ELSE 2 END) AS booking_status")->where('booking.customer_id',$user_id)->from('booking')->join('transaction','transaction.booking_id = booking.bookId', 'LEFT')->join('events','booking.event_id = events.event_id')->join('event_date_time','booking.event_date_id = event_date_time.id')->join('venue', 'venue.id = events.venue_id')->join('event_gallery', 'events.event_id = event_gallery.event_id AND event_gallery.media_type = 0', 'LEFT')->where('booking.payment_status', 1)->order_by('booking.id','DESC')->limit($per_page,$page_limit)->get()->result();
......@@ -1303,10 +1329,11 @@ class Webservice_model extends CI_Model {
$user_id = $this->auth_token_get($data['auth_token']);
if($user_id > 0) {
$count = $this->db->query("
SELECT id FROM booking AS BOK
SELECT BOK.id FROM booking AS BOK
INNER JOIN events AS EVT ON (EVT.event_id=BOK.event_id)
WHERE BOK.customer_id='$user_id' AND BOK.status IN (0,1,2) AND
EVT.status='1'")->num_rows();
INNER JOIN event_date_time AS EDT ON (EVT.event_id=EVT.event_id)
WHERE BOK.customer_id='$user_id' AND BOK.status IN (0,1,2) AND EVT.status='1'
GROUP BY BOK.id")->num_rows();
if($count > 0) {
if(isset($data['page'])) {
......@@ -1316,29 +1343,33 @@ class Webservice_model extends CI_Model {
}
$page_limit = ($page - 1) * $per_page;
if($count > $page_limit) {
$lang = $this->getUserLang($user_id);
if($lang == 'en'){
$event_name = 'events.event_name AS event_name';
}else{
$event_name = 'events.event_name_ar AS event_name';
}
$result = $this->db->select("booking.bookId AS booking_id,booking.event_id,$event_name,event_gallery.media_url AS event_image,venue.location,event_date_time.date,event_date_time.time,booking.no_of_ticket AS ticket_count,
(CASE booking.status WHEN 1 THEN 0 WHEN 2 THEN 1 WHEN 0 THEN 2 ELSE 2 END) AS booking_status, events.has_payment")->where('booking.customer_id',$user_id)->where_in('booking.status',array(0,1,2))->from('booking')->join('events','booking.event_id = events.event_id')->join('event_date_time','booking.event_date_id = event_date_time.id')->join('venue','venue.id = events.venue_id')->join('event_gallery', 'events.event_id = event_gallery.event_id AND event_gallery.media_type = 0', 'LEFT')->group_by('booking.id')->order_by('booking.id','DESC')->limit($per_page,$page_limit)->get()->result_array();
// $data_arr = array();
// foreach ($result as $value) {
// $data_arr[] = $value;
// $bookList = array_slice($data_arr, $page_limit, $per_page, false);
// }
$countryData = $this->getCountryData($user_id);
$lang = $countryData['language_code'];
$sql = "SELECT booking.bookId AS booking_id,event_date_time.date,
translator_event.event_name,event_gallery.media_url AS event_image,
venue.location,event_date_time.time,booking.event_id,
booking.no_of_ticket AS ticket_count,events.has_payment,
(CASE booking.status WHEN 1 THEN 0 WHEN 2 THEN 1 WHEN 0 THEN 2
ELSE 2 END) AS booking_status
FROM booking
INNER JOIN events ON booking.event_id = events.event_id
INNER JOIN event_date_time ON booking.event_date_id = event_date_time.id
INNER JOIN venue ON venue.id = events.venue_id
INNER JOIN translator_event ON translator_event.event_id = events.event_id
LEFT JOIN event_gallery ON events.event_id = event_gallery.event_id AND event_gallery.media_type = 0
WHERE booking.customer_id = '$user_id' AND booking.status IN(0, 1, 2) AND
translator_event.language_code = '$lang'
GROUP BY booking.id
ORDER BY booking.id DESC
LIMIT $page_limit, $per_page";
$result = $this->db->query($sql)->result_array();
$meta = array('total_pages'=>ceil($count/$per_page),
'total'=>$count,
'current_page'=>$page,
'per_page'=>$per_page
);
$response = array('bookings'=>$result,'meta'=>$meta);
$res = array('status'=>1,'data'=>$response);
} else {
$res = array('status'=>1,'data' => []);
......@@ -1359,23 +1390,20 @@ class Webservice_model extends CI_Model {
try {
$user_id = $this->auth_token_get($data['auth_token']);
if($user_id > 0) {
$settings = getSettings();
$countryData = $this->getCountryData($user_id);
$lang = $countryData['language_code'];
$lang = $this->getUserLang($user_id);
$fields = 'privacy_policy_en AS privacy_policy,
terms_and_conditions_en AS terms_and_conditions,';
if($lang == 'ar'){
$fields = 'privacy_policy_ar AS privacy_policy,
terms_and_conditions_ar AS terms_and_conditions,';
}
$sql = "SELECT privacy_policy,terms_and_conditions
FROM translator_policies WHERE language_code='$lang'";
$setDetails = $this->db->query($sql)->row_array();
$setDetails['contact_number'] = $settings['contact_number'];
$settingsDetails = $this->db->query("SELECT $fields contact_number FROM privacy_policy")
->row_array();
$sql = "SELECT notification_status, email_status FROM users WHERE id=".$user_id;
$notifDetails = $this->db->query($sql)->row_array();
$notificationDetails = $this->db->query("SELECT notification_status, email_status
FROM users WHERE id = ".$user_id."")
->row_array();
if(count($settingsDetails)>0 && count($notificationDetails)>0){
$resultData = array_merge($settingsDetails, $notificationDetails);
if(count($setDetails) > 0 && count($notifDetails) > 0){
$resultData = array_merge($setDetails, $notifDetails);
$resultArray = array(
'privacy_policy'=>$resultData['privacy_policy'],
'terms_and_conditions'=>$resultData['terms_and_conditions'],
......@@ -1415,19 +1443,32 @@ class Webservice_model extends CI_Model {
return $res;
}
function get_last_booking($data) {
try {
$user_id = $this->auth_token_get($data['auth_token']);
if($user_id > 0) {
$cat_feild = '';
$lang = $this->getUserLang($user_id);
if($lang == 'en'){
$cat_field = 'events.event_name AS event_name';
}else{
$cat_field = 'events.event_name_ar AS event_name';
}
$result = $this->db->query("SELECT IF(review.event_id = '','false','true') AS is_last_booking_rated, booking.id AS booking_id, events.event_id AS event_id,$cat_field, `event_gallery`.`media_url` AS event_image,UNIX_TIMESTAMP(event_date_time.date) AS date, booking.amount AS amount FROM events LEFT JOIN `event_gallery` ON `events`.`event_id` = `event_gallery`.`event_id` AND `event_gallery`.`media_type` = 0 LEFT JOIN booking ON booking.event_id = events.event_id RIGHT JOIN event_date_time ON event_date_time.id = booking.event_date_id LEFT JOIN venue ON venue.id = events.venue_id LEFT JOIN customer ON customer.customer_id = booking.customer_id LEFT JOIN review ON review.event_id = booking.event_id WHERE booking.customer_id = ".$user_id." AND booking.status='2' ORDER BY booking.id DESC LIMIT 1")->row_array();
$countryData = $this->getCountryData($user_id);
$lang = $countryData['language_code'];
$sql = "SELECT IF(review.event_id = '','false','true') AS is_last_booking_rated,
booking.id AS booking_id, events.event_id AS event_id,
event_gallery.media_url AS event_image,UNIX_TIMESTAMP(event_date_time.date) AS date,
booking.amount AS amount,translator_event.event_name
FROM events
LEFT JOIN event_gallery ON events.event_id=event_gallery.event_id AND
event_gallery.media_type = 0
LEFT JOIN booking ON booking.event_id = events.event_id
RIGHT JOIN event_date_time ON event_date_time.id = booking.event_date_id
LEFT JOIN venue ON venue.id = events.venue_id
INNER JOIN translator_event ON translator_event.event_id = events.event_id
LEFT JOIN customer ON customer.customer_id = booking.customer_id
LEFT JOIN review ON review.event_id = booking.event_id
WHERE booking.customer_id = '$user_id' AND booking.status='2' AND
translator_event.language_code='$lang'
ORDER BY booking.id DESC LIMIT 1";
$result = $this->db->query($sql)->row_array();
if(count($result)>0){
$resultData = array(
'is_last_booking_rated'=>$result['is_last_booking_rated'] === 'true'? true: false,
......@@ -1438,7 +1479,6 @@ class Webservice_model extends CI_Model {
'amount'=>$result['amount'],
'date'=>$result['date']
);
$res = array('status'=>1,'data'=>$resultData);
} else {
$res = array('status'=>0,'message'=>'No records found','code'=>'ER13');
......@@ -1456,52 +1496,31 @@ class Webservice_model extends CI_Model {
try {
$user_id = $this->auth_token_get($data['auth_token']);
if($user_id > 0) {
$lang = $this->db->select('language')->where('customer_id', $user_id)->get('customer')->row();
if($lang->language == 'ar') {
$loc_field = 'locality.locality_ar AS city_name';
$cat_field = 'event_category.category_ar AS category';
$cat_field .= ',event_category.category_image_ar AS category_image';
$dateArray = [["date_id"=>'كل الأيام',"date"=>"1"],["date_id"=>'اليوم',"date"=>"2"],["date_id"=>'غدا',"date"=>"3"],["date_id"=>'هذا الاسبوع',"date"=>"4"],["date_id"=>'عطلة نهاية الاسبوع',"date"=>"5"],["date_id"=>'في وقت لاحق',"date"=>"6"]];
} else {
$loc_field = 'locality.locality_en AS city_name';
$cat_field = 'event_category.category_en AS category';
$cat_field .= ',event_category.category_image AS category_image';
$dateArray = [["date_id"=>"All Days","date"=>"1"],["date_id"=>"Today","date"=>"2"],["date_id"=>"Tomorrow","date"=>"3"],["date_id"=>"This week","date"=>"4"],["date_id"=>"Weekend","date"=>"5"],["date_id"=>"Later","date"=>"6"]];
}
$sql = "SELECT locality.id AS city_id, $loc_field FROM locality
INNER JOIN customer ON customer.city=locality.region_id
WHERE customer.customer_id='$user_id' AND locality.status='1'";
$countryData = $this->getCountryData($user_id);
$lang = $countryData['language_code'];
$sql = "SELECT LOC.id AS city_id,TLOC.locality_name AS city_name
FROM locality AS LOC
INNER JOIN customer AS CUST ON (CUST.city=LOC.region_id)
INNER JOIN translator_locality AS TLOC ON (TLOC.locality_id=LOC.id)
WHERE CUST.customer_id='$user_id' AND LOC.status='1' AND TLOC.language_code='$lang'
GROUP BY LOC.id";
$locality = $this->db->query($sql)->result();
$category = $this->db->query("SELECT cat_id AS category_id, $cat_field
FROM event_category
WHERE status = 1
ORDER BY event_category.priority")->result();
$sql = "SELECT ECAT.cat_id AS category_id,TCAT.category_name AS category,
TCAT.category_image AS category_image
FROM event_category AS ECAT
INNER JOIN translator_category AS TCAT ON (TCAT.category_id=ECAT.cat_id)
WHERE ECAT.status = 1
GROUP BY ECAT.cat_id
ORDER BY ECAT.priority";
$category = $this->db->query($sql)->result();
if(!EMPTY($locality)) {
$locality = $locality;
}else{
$locality = array();
}
if(!EMPTY($category)) {
$category = $category;
}else{
$category = array();
}
if(isset($dateArray)){
$resultData = array();
$resData = array(
'cities'=>$locality,
'categories'=>$category,
'dates'=>$dateArray
);
$res = array('status'=>1,'data'=>$resData);
$locality = (!empty($locality))?$locality:array();
$category = (!empty($category))?$category:array();
if(!empty($locality) && !empty($category)){
$res = array('status'=>1,'data'=>array('cities'=>$locality,'categories'=>$category));
} else {
$res = array('status'=>0,'message'=>'No records found','code'=>'ER13');
}
......@@ -1563,26 +1582,29 @@ class Webservice_model extends CI_Model {
if($user_id > 0) {
$per_page = 10;
$str = urldecode(strtolower($data['query']));
$countryData = $this->getCountryData($user_id);
$lang = $countryData['language_code'];
$this->db->query("SET SESSION group_concat_max_len = 20000");
$sql = "SELECT GROUP_CONCAT(DISTINCT CONCAT_WS('#',EDATE.id,EDATE.date,EDATE.time))
AS date_time
FROM events AS EVT
INNER JOIN venue AS VEN ON (VEN.id=EVT.venue_id)
INNER JOIN event_date_time AS EDATE ON (EVT.event_id=EDATE.event_id)
INNER JOIN event_gallery AS IMG ON
(IMG.event_id=EVT.event_id AND IMG.media_type=0)
WHERE (EVT.event_name LIKE '%$str%' OR
EVT.event_name_ar LIKE '%$str%') AND
EDATE.date>=DATE_FORMAT(NOW(),'%Y-%m-%d') AND EVT.status='1' AND
VEN.status='1' AND IMG.status='1' AND EDATE.status='1'
GROUP BY EVT.event_id";
LEFT JOIN event_gallery AS IMG ON (IMG.event_id=EVT.event_id AND
IMG.media_type=0 AND IMG.status='1' )
WHERE EDATE.date>=DATE_FORMAT(NOW(),'%Y-%m-%d') AND EVT.status='1' AND
VEN.status='1' AND EDATE.status='1' AND
EVT.event_id IN (SELECT event_id FROM translator_event
WHERE event_name LIKE '%$str%' OR
event_description LIKE '%$str%'
GROUP BY EVT.event_id)";
$resCount = $this->db->query($sql)->result();
if(empty($resCount)){
return array('status'=>1,'data'=>array('events'=>[],'meta'=>$meta));
}
foreach ($resCount AS $key => $rs) {
if(!empty($dates = explode(',',$rs->date_time))){
$checkTime = 0;
......@@ -1603,42 +1625,36 @@ class Webservice_model extends CI_Model {
} else {
unset($resCount[$key]);
}
}
$count = count($resCount);
$page = (isset($data['page']))?$data['page']:1;
$page_limit = ($page - 1) * $per_page;
$meta = array('total_pages'=>ceil($count/$per_page),'total'=>$count,
'current_page'=>$page,'per_page'=>$per_page);
if($count > 0 && $count > $page_limit) {
$lang = $this->getUserLang($user_id);
if($lang == 'en') $event_name = 'events.event_name AS event_name';
else $event_name = 'events.event_name_ar AS event_name';
$limit = $page_limit.','.$per_page;
$this->db->query("SET SESSION group_concat_max_len = 20000");
$sql = "SELECT EVT.event_id,EVT.event_name,VEN.location,
IMG.media_url AS event_image,
$sql = "SELECT EVT.event_id,VEN.location,IMG.media_url AS event_image,
GROUP_CONCAT(DISTINCT CONCAT_WS('#',EDATE.id,EDATE.date,EDATE.time))
AS date_time
AS date_time,TEVT.event_name
FROM events AS EVT
INNER JOIN venue AS VEN ON (VEN.id=EVT.venue_id)
INNER JOIN event_date_time AS EDATE ON (EVT.event_id=EDATE.event_id)
INNER JOIN event_gallery AS IMG ON
(IMG.event_id=EVT.event_id AND IMG.media_type=0)
WHERE (EVT.event_name LIKE '%$str%' OR
EVT.event_name_ar LIKE '%$str%') AND
EDATE.date>=DATE_FORMAT(NOW(),'%Y-%m-%d') AND EVT.status='1' AND
VEN.status='1' AND IMG.status='1' AND EDATE.status='1'
INNER JOIN translator_event AS TEVT ON (TEVT.event_id=EVT.event_id)
LEFT JOIN event_gallery AS IMG ON (IMG.event_id=EVT.event_id AND
IMG.media_type=0 AND IMG.status='1')
WHERE EDATE.date>=DATE_FORMAT(NOW(),'%Y-%m-%d') AND EVT.status='1' AND
VEN.status='1' AND EDATE.status='1' AND
EVT.event_id IN (SELECT event_id FROM translator_event
WHERE (event_name LIKE '%$str%' OR
event_description LIKE '%$str%')
GROUP BY event_id)
GROUP BY EVT.event_id
ORDER BY EVT.event_id DESC
LIMIT $limit";
$result = $this->db->query($sql)->result();
$result = $this->db->query($sql)->result();
foreach ($result AS $key => $rs) {
if(!empty($dates = explode(',',$rs->date_time)) && count($dates) > 0){
$checkTime = 0;
......@@ -1657,7 +1673,6 @@ class Webservice_model extends CI_Model {
}
unset($result[$key]->date_time);
}
$res = array('status'=>1,'data'=>array('events'=>$result,'meta'=>$meta));
} else {
$res = array('status'=>1,'data'=>array('events'=>[],'meta'=>$meta));
......@@ -1671,12 +1686,10 @@ class Webservice_model extends CI_Model {
return $res;
}
public function checkSeatAvailability($data = ''){
$user_id = $data['user_id'];
$event_id = $data['event_id'];
$evtTimeId = $data['time_id'];
$user_id = $data['user_id'];
$event_id = $data['event_id'];
$evtTimeId = $data['time_id'];
$lyCapacity = array();
$capacity = $usrBooked = $maxBooking = 0;
$sql = "SELECT EDATE.date,EDATE.time,EVT.custom_seat_layout,EVT.seat_pricing,
......@@ -1689,41 +1702,34 @@ class Webservice_model extends CI_Model {
EDATE.date >= DATE_FORMAT(NOW(),'%Y-%m-%d')";
$evtSql = $this->db->query($sql);
$evtData = $evtSql->row_array();
if(!empty($user_id)){
if(!empty($user_id)){
$sql = "SELECT SUM(BOK.no_of_ticket) AS bookCount
FROM booking AS BOK
INNER JOIN event_date_time AS EDATE ON (BOK.event_date_id=EDATE.id)
WHERE BOK.event_id='$event_id' AND BOK.customer_id='$user_id' AND
EDATE.id='$evtTimeId' AND BOK.status IN (1,2)";
$result = $this->db->query($sql)->row_array();
$usrBooked = (!empty($result))?$result['bookCount']:0;
}
$maxBooking = $evtData['max_booking']-$usrBooked;
if($evtData['show_layout'] == 0){
$lyout = json_decode($evtData['seat_pricing'],true);
$lyCapacity['price'] = $lyout['price'];
$lyCapacity['capacity'] = $lyout['capacity'];
} else {
$lyout = (!empty($evtData['custom_seat_layout']))
?json_decode($evtData['custom_seat_layout'],true)
:json_decode($evtData['layout_details'],true);
foreach($lyout AS $custLy) {
$lyCapacity[$custLy['color']] = array('price'=>$custLy['price'],
'capacity'=>$custLy['capacity'],
'weekend_price'=>$custLy['weekend_price']);
}
}
$sql = "SELECT BOOK.no_of_ticket,BOOK.ticket_details
FROM booking AS BOOK
INNER JOIN event_date_time AS EDATE ON (BOOK.event_date_id=EDATE.id)
WHERE BOOK.event_id='$event_id' AND BOOK.event_date_id='$evtTimeId'";
if(!empty($result = $this->db->query($sql)->result_array())){
foreach($result AS $value) {
if($evtData['show_layout'] == 0){
......@@ -1736,7 +1742,6 @@ class Webservice_model extends CI_Model {
}
}
}
$event_layouts = array();
if($evtData['show_layout'] == 0){
$capacity = $lyCapacity['capacity'];
......@@ -1748,7 +1753,6 @@ class Webservice_model extends CI_Model {
foreach($lyCapacity AS $block => $sData) {
$capacity = $sData['capacity'];
$lyCapacity[$block]['capacity'] = ($capacity < $maxBooking)? $capacity : $maxBooking;
$event_layouts[] = array('rate' => $lyCapacity[$block]['price'],
'class_name' => $block,
'max_ticket' => $lyCapacity[$block]['capacity']);
......@@ -1759,32 +1763,41 @@ class Webservice_model extends CI_Model {
public function sync_contacts($data){
$user_id = $this->auth_token_get($data['auth_token']);
$respArr = array('status'=>0,'code'=>'918','message'=>'Something Went Wrong..Try Again');
$respArr = array('status'=>0,'code'=>'918','message'=>'Data Missing');
if(empty($data)){
return $respArr;
}
$phNumbers = '';
foreach($data['contacts'] AS $key => $number) {
$number = preg_replace('/\D/', '', $number);
$eCond = ($key != count($data['contacts'])-1)?' OR ':'';
if(strlen($number) > 10){
$phNumbers .= " phone LIKE '%".substr($number, strlen($number)-10)."' ".$eCond;
if(strlen($number) > 9){
$phNumbers .= " phone LIKE '%".substr($number, strlen($number)-9)."' ".$eCond;
} else {
$phNumbers .= " phone LIKE '%".$number."' ".$eCond;
}
}
$result = $this->db->query("SELECT name,phone,profile_image FROM customer WHERE (".$phNumbers.") AND customer_id NOT IN (SELECT from_user FROM chats WHERE (from_user=$user_id AND type='2') OR (to_user =$user_id AND type='2')) AND customer_id NOT IN (SELECT to_user FROM chats WHERE (from_user=$user_id AND type='2') OR (to_user =$user_id AND type='2'))");
if(!empty($result) && !empty($result = $result->result_array())){
$respArr['status'] = 1;
$result = $this->db->query("SELECT CUST.customer_id,CUST.name,CUST.phone,CUST.profile_image,
CHT.type AS friend_status
FROM customer AS CUST
LEFT JOIN chats AS CHT ON ((CUST.customer_id=CHT.from_user OR CUST.customer_id=CHT.to_user) AND CHT.type=1)
WHERE (".$phNumbers.") AND
customer_id NOT IN (SELECT from_user FROM chats WHERE (from_user=$user_id AND type='2') OR (to_user =$user_id AND type='2')) AND
customer_id NOT IN (SELECT to_user FROM chats WHERE (from_user=$user_id AND type='2') OR (to_user =$user_id AND type='2'))");
$respArr['status'] = 1;
if(!empty($result) && !empty($result = $result->result_array())){
$respArr['data'] = $result;
}else{
$respArr['message'] = 'No Data Found';
}
return $respArr;
}
public function update_friend_request($data){
$user_id = $this->auth_token_get($data['auth_token']);
$status = $this->db->query("UPDATE chats SET type = ".$data['add_as_friend']." WHERE from_user = $user_id AND to_user = ".$data['user_id']);
$status = $this->db->query("UPDATE chats SET type='".$data['add_as_friend']."'
WHERE from_user='".$data['user_id']."' AND to_user='".$user_id."'");
return ($status)?1:0;
}
......@@ -1809,10 +1822,11 @@ class Webservice_model extends CI_Model {
public function get_friend_requests($data){
$respArr = array('status'=>0,'code'=>'918','message'=>'No Request for you');
$user_id = $this->auth_token_get($data['auth_token']);
$this->db->select("name,phone,profile_image");
$this->db->join('customer','customer.customer_id = chats.to_user');
$result=$this->db->get_where('chats',array('to_user'=>$user_id,'type'=>'0'))->result_array();
if(!empty($result)){
$result = $this->db->query("SELECT CUST.name,CUST.phone,CUST.profile_image,CUST.customer_id
FROM customer AS CUST
INNER JOIN chats AS CHT ON (CUST.customer_id = CHT.from_user)
WHERE type='0' AND to_user='".$user_id."'");
if(!empty($result) && !empty($result = $result->result())){
$respArr['status'] = 1;
$respArr['data'] = $result;
}
......@@ -1825,11 +1839,19 @@ class Webservice_model extends CI_Model {
$result = $this->db->query("SELECT from_user,to_user,type FROM chats WHERE (from_user=$user_id OR to_user=$user_id) AND type IN('0','1')")->result_array();
if(!empty($result)){
foreach ($result as $key => $value) {
if($value['to_user'] == $user_id && $value['type'] == 0){
if($value['type'] == 0){
continue;
}
$this->db->select("name,phone,profile_image");
$cust = $this->db->get_where('customer',array('customer_id'=>$value['to_user']));
$fromUsrId = '';
if($value['to_user']==$user_id){
$fromUsrId = $value['from_user'];
} else if ($value['from_user'] == $user_id){
$fromUsrId = $value['to_user'];
} else {
continue;
}
$this->db->select("name,phone,profile_image,customer_id");
$cust = $this->db->get_where('customer',array('customer_id'=>$fromUsrId));
if(!empty($cust) && !empty($cust = $cust->row_array())){
$custData[] = $cust;
}
......@@ -1840,8 +1862,111 @@ class Webservice_model extends CI_Model {
return $respArr;
}
}
?>
public function getCountry() {
try {
$rs = $this->db->query("SELECT * FROM country WHERE status = 1 ORDER BY country_name")->result();
if(count($rs) > 0) {
$res = array('status'=>'success','data'=>$rs);
} else {
$res = array('status'=>'error','message'=>'No records found','code'=>'ER13');
}
} catch(Exception $e) {
$res = array('status'=>'error','message'=>'Ohh No!! Something went South!!','code'=>'ER06');
}
return $res;
}
public function getCountryData($user_id){
$ctryData = '';
if(!empty($user_id)){
$sql = "SELECT CTRY.* FROM customer AS CUST
INNER JOIN country AS CTRY ON (CTRY.country_id=CUST.country_id)
WHERE CUST.customer_id='$user_id'";
$ctryData = $this->db->query($sql)->row_array();
}
if(empty($ctryData)){
$ctryData = $this->db->query("SELECT * FROM country WHERE language_code='EN'")->row_array();
}
return $ctryData;
}
public function validate_promo_code($data =array()){
$user_id = $this->auth_token_get($data['auth_token']);
if($user_id > 0){
$date = date('Y-m-d');
$promoCode = $data['promo_code'];
$tot_cost = $data['tot_cost'];
$promoData = $this->db->query("SELECT PROM.*
FROM promocode_management AS PROM
WHERE PROM.promocode_name='$promoCode' AND PROM.status='1' AND
PROM.start_date<='$date' AND PROM.end_date>='$date' AND
PROM.use_limit>(SELECT count(id) FROM promocode_used AS PU
WHERE PU.promocode_id=PROM.promocode_id AND
PU.status=1)");
if(empty($promoData) || empty($promoData = $promoData->row_array())){
$respArr['status'] = 0;
$respArr['code'] = 980;
$respArr['message'] = 'Invalid Promocode';
return $respArr;
}
$eventData = $this->db->query("SELECT VEN.region_id,EVT.category_id FROM events AS EVT
INNER JOIN venue AS VEN ON (VEN.id = EVT.venue_id)
WHERE EVT.event_id='".$promoData['event_id']."' AND EVT.status='1'");
if(empty($eventData) || empty($eventData = $eventData->row_array())){
$respArr['status'] = 0;
$respArr['code'] = 980;
$respArr['message'] = 'Promocode Invalid or Expired';
return $respArr;
}
if(!empty($promoData['event_id']) && $promoData['event_id'] != $data['event_id']){
$respArr['status'] = 0;
$respArr['code'] = 981;
$respArr['message'] = 'Promocode is not Valid for this Event';
return $respArr;
}
if(!empty($promoData['category_id']) && $promoData['category_id'] != $eventData['category_id']){
$respArr['status'] = 0;
$respArr['code'] = 982;
$respArr['message'] = 'Promocode is not Valid for this Category';
return $respArr;
}
if(!empty($promoData['city_id']) && $promoData['city_id'] != $eventData['region_id']){
$respArr['status'] = 0;
$respArr['code'] = 983;
$respArr['message'] = 'Promocode is not Valid for this City';
return $respArr;
}
if(!empty($promoData['min_order_amount']) && $promoData['min_order_amount'] > $tot_cost){
$respArr['status'] = 1;
$respArr['code'] = 984;
$respArr['data'] = array('message'=>'Minimum amount is not satisfied',
'minimum_amount'=>$promoData['min_order_amount']);
return $respArr;
}
$discAmt = 0;
if($promoData['discount_type'] == 1){
$discAmt = ($tot_cost * $promoData['discount_percentage'])/100;
} else {
$discAmt = ($tot_cost<=$promoData['discount_percentage'])?$tot_cost:$promoData['discount_percentage'];
}
$discAmt = (!empty($maxReedem = $promoData['max_redeem']) && $maxReedem < $discAmt)?$maxReedem:$discAmt;
$tot_cost = $tot_cost-$discAmt;
$tot_cost = ($tot_cost <= 0)?0:$tot_cost;
$countryData = $this->getCountryData($user_id);
$lang = $countryData['language_code'];
$promDetails = langTranslator($promoData['promocode_id'],'PROMO',$lang);
$datas['discounted_price'] = $tot_cost;
$datas['terms_and_conditions'] = $promDetails['promocode_tc'];
$datas['description'] = $promDetails['promocode_desc'];
$respArr['status'] = 1;
$respArr['data'] = $datas;
return $respArr;
}else{
$res = array('status'=>0,'message'=>'Invalid user','code'=>'ER19');
}
}
}
?>
<?php $language = getLanguages(); ?>
<div class="content-wrapper">
<section class="content-header">
<h1>
......@@ -27,73 +28,80 @@
<form role="form" action="<?= base_url('CMS/changeCMSdata') ?>" method="post"
class="validate" data-parsley-validate="" enctype="multipart/form-data">
<div class="col-sm-6">
<div class="form-group">
<label>FAQ (English)</label>
<textarea id="rich_editor" type="text" class="ip_reg_form_input form-control reset-form-custom" placeholder="FAQ English" name="faq_en" style="height:108px;" data-parsley-trigger="change" data-parsley-minlength="2"><?= $cmsData->faq_en ?></textarea>
</div>
<div class="collapsible-tab" data-toggle="collapse" data-target="#faq">FAQ</div>
<div id="faq" class="collaps-content-tab"><br>
<?php foreach ($language AS $lang) { ?>
<div class="col-sm-6">
<div class="form-group">
<label>FAQ (<?= $lang ?>)</label>
<textarea id="rich_editor_FAQ_<?= $lang ?>" type="text" class="ip_reg_form_input form-control reset-form-custom" placeholder="FAQ <?= $lang ?>" name="faq_<?= $lang ?>" style="height:108px;" data-parsley-trigger="change" data-parsley-minlength="2"><?= (isset($cmsData->{'faq_'.$lang}))?$cmsData->{'faq_'.$lang}:'' ?></textarea>
</div>
</div>
<?php } ?>
</div>
<div class="col-sm-6">
<div class="form-group">
<label>FAQ (Arabic)</label>
<textarea id="rich_editor_3" type="text" class="ip_reg_form_input form-control reset-form-custom" placeholder="FAQ Arabic" name="faq_ar" style="height:108px;" data-parsley-trigger="change" data-parsley-minlength="2"><?= $cmsData->faq_ar ?></textarea>
</div>
</div>
<div class="col-sm-6">
<div class="form-group">
<label>Instruction (English)</label>
<textarea id="rich_editor_6" type="text" class="ip_reg_form_input form-control reset-form-custom" placeholder="Instruction English" name="instruction_en" style="height:108px;" data-parsley-trigger="change" data-parsley-minlength="2"><?= $cmsData->instruction_en ?></textarea>
</div>
</div>
<div class="col-sm-6">
<div class="form-group">
<label>Instruction (Arabic)</label>
<textarea id="rich_editor_7" type="text" class="ip_reg_form_input form-control reset-form-custom" placeholder="Instruction Arabic" name="instruction_ar" style="height:108px;" data-parsley-trigger="change" data-parsley-minlength="2"><?= $cmsData->instruction_ar ?></textarea>
</div>
<br>
<div class="collapsible-tab" data-toggle="collapse" data-target="#instruction">Instruction</div>
<div id="instruction" class="collaps-content-tab"><br>
<?php foreach ($language AS $lang) { ?>
<div class="col-sm-6">
<div class="form-group">
<label>Instruction (<?= $lang ?>)</label>
<textarea id="rich_editor_INS_<?= $lang ?>" type="text" class="ip_reg_form_input form-control reset-form-custom" placeholder="Instruction <?= $lang ?>" name="instruction_<?= $lang ?>" style="height:108px;" data-parsley-trigger="change" data-parsley-minlength="2"><?= (isset($cmsData->{'instruction_'.$lang}))?$cmsData->{'instruction_'.$lang}:'' ?></textarea>
</div>
</div>
<?php } ?>
</div>
<div class="col-sm-6">
<div class="form-group">
<label>Privacy Policy (English)</label>
<textarea id="rich_editor_1" type="text" placeholder="Privacy Policy English" class="ip_reg_form_input form-control reset-form-custom" name="privacy_policy_en" style="height:108px;" data-parsley-minlength="2" data-parsley-trigger="change"><?= $cmsData->privacy_policy_en ?></textarea>
</div>
<br>
<div class="collapsible-tab" data-toggle="collapse" data-target="#privacy-policy">
Privacy Policy
</div>
<div class="col-sm-6">
<div class="form-group">
<label>Privacy Policy (Arabic)</label>
<textarea id="rich_editor_4" type="text" placeholder="Privacy Policy Arabic" class="ip_reg_form_input form-control reset-form-custom" name="privacy_policy_ar" style="height:108px;" data-parsley-minlength="2" data-parsley-trigger="change"><?= $cmsData->privacy_policy_ar ?></textarea>
</div>
<div id="privacy-policy" class="collaps-content-tab"><br>
<?php foreach ($language AS $lang) { ?>
<div class="col-sm-6">
<div class="form-group">
<label>Privacy Policy (<?= $lang ?>)</label>
<textarea id="rich_editor_PRY_<?= $lang ?>" type="text" placeholder="Privacy Policy <?= $lang ?>" class="ip_reg_form_input form-control reset-form-custom" name="privacy_policy_<?= $lang ?>" style="height:108px;" data-parsley-minlength="2" data-parsley-trigger="change"><?= (isset($cmsData->{'privacy_policy_'.$lang}))?$cmsData->{'privacy_policy_'.$lang}:'' ?></textarea>
</div>
</div>
<?php } ?>
</div>
<div class="col-sm-6">
<div class="form-group">
<label>Terms and Condition (English)</label>
<textarea id="rich_editor_2" type="text" class="ip_reg_form_input form-control reset-form-custom" placeholder="Terms and Condition English" name="terms_and_conditions_en" style="height:108px;" data-parsley-trigger="change" data-parsley-minlength="2"><?= $cmsData->terms_and_conditions_en ?></textarea>
</div>
<br>
<div class="collapsible-tab" data-toggle="collapse" data-target="#terms_and_conditions">
Terms and Condition
</div>
<div class="col-sm-6">
<div class="form-group">
<label>Terms and Condition (Arabic)</label>
<textarea id="rich_editor_5" type="text" class="ip_reg_form_input form-control reset-form-custom" placeholder="Terms and Condition Arabic" name="terms_and_conditions_ar" style="height:108px;" data-parsley-trigger="change" data-parsley-minlength="2"><?= $cmsData->terms_and_conditions_ar ?></textarea>
</div>
<div id="terms_and_conditions" class="collaps-content-tab"><br>
<?php foreach ($language AS $lang) { ?>
<div class="col-sm-6">
<div class="form-group">
<label>Terms and Condition (<?= $lang ?>)</label>
<textarea id="rich_editor_TAC_<?= $lang ?>" type="text" class="ip_reg_form_input form-control reset-form-custom" placeholder="Terms and Condition <?= $lang ?>" name="terms_and_conditions_<?= $lang ?>" style="height:108px;" data-parsley-trigger="change" data-parsley-minlength="2"><?= (isset($cmsData->{'terms_and_conditions_'.$lang}))?$cmsData->{'terms_and_conditions_'.$lang}:'' ?></textarea>
</div>
</div>
<?php } ?>
</div>
<div class="col-md-6">
<br>
<div style="float: right;">
<div class="box-footer textCenterAlign">
<button type="submit" class="btn btn-primary">Submit</button>
<a href="<?= base_url() ?>" class="btn btn-primary">Cancel</a>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</section>
</div>
\ No newline at end of file
</div>
<script type="text/javascript">
jQuery( document ).ready(function() {
<?php foreach($language AS $lang) { ?>
if(jQuery('#rich_editor_FAQ_<?= $lang ?>').length==1){CKEDITOR.replace('rich_editor_FAQ_<?= $lang ?>',{language:'<?= strtolower($lang) ?>'});}
if(jQuery('#rich_editor_INS_<?= $lang ?>').length==1){CKEDITOR.replace('rich_editor_INS_<?= $lang ?>',{language:'<?= strtolower($lang) ?>'});}
if(jQuery('#rich_editor_PRY_<?= $lang ?>').length==1){CKEDITOR.replace('rich_editor_PRY_<?= $lang ?>',{language:'<?= strtolower($lang) ?>'});}
if(jQuery('#rich_editor_TAC_<?= $lang ?>').length==1){CKEDITOR.replace('rich_editor_TAC_<?= $lang ?>',{language:'<?= strtolower($lang) ?>'});}
<?php } ?>
});
</script>
\ No newline at end of file
<?php
$language = getLanguages();
?>
<div class="content-wrapper">
<section class="content-header">
<h1>
......@@ -14,8 +17,12 @@
<div class="row">
<div class="col-md-12">
<?php
$url = (!isset($category_id)||empty($category_id))
?'Category/createCategory':'Category/updateCategory/'.$category_id;
$required = 'required';
$url = 'Category/createCategory';
if(isset($category_id) && !empty($category_id)){
$required = '';
$url = 'Category/updateCategory/'.$category_id;
}
if($this->session->flashdata('message')) {
$flashdata = $this->session->flashdata('message'); ?>
......@@ -30,67 +37,79 @@
<div class="box-body">
<form role="form" action="<?= base_url($url) ?>" method="post"
class="validate" data-parsley-validate="" enctype="multipart/form-data">
<div class="col-md-12">
<div class="col-md-12 padBottom20">
<div class="col-md-6">
<div class="form-group">
<label>Category Name (English)</label>
<label>Category Name (EN)</label>
<input type="text" class="form-control required" data-parsley-trigger="change"
data-parsley-minlength="2" data-parsley-pattern="^[a-zA-Z0-9\ . _ - ' \/]+$"
name="category_en" required="" value="<?= (isset($categoryData->category_en))?$categoryData->category_en:'' ?>" placeholder="Category Name (English)">
<span class="glyphicon form-control-feedback"></span>
</div>
<div class="form-group">
<label>Category Name (Arabic)</label>
<input type="text" class="form-control required" data-parsley-trigger="change"
data-parsley-minlength="2" name="category_ar" required placeholder="Category Name (Arabic)"
value="<?= (isset($categoryData->category_ar))?$categoryData->category_ar:''?>">
<span class="glyphicon form-control-feedback"></span>
</div>
<div class="form-group">
<label>Category Description</label>
<textarea type="text" class="form-control required" data-parsley-trigger="change"
data-parsley-minlength="2" name="category_description" required placeholder="Category Description" style="height:150px;"><?= (isset($categoryData->category_description))?$categoryData->category_description:'' ?></textarea>
name="category_name_EN" value="<?= (isset($categoryData->category_name_EN))?$categoryData->category_name_EN:'' ?>" placeholder="Category Name (EN)">
<span class="glyphicon form-control-feedback"></span>
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<label>Category Icon (English)</label>
<label>Category Banner Image</label>
<div class="col-md-12" style="padding-bottom:10px;">
<div class="col-md-3">
<img id="image_id" src="<?= (isset($categoryData->category_image))?base_url($categoryData->category_image):'' ?>" onerror="this.src='<?=base_url("assets/images/user_avatar.jpg")?>';" height="75" width="75" />
<img id="category_banner_image" src="<?= (isset($categoryData->category_banner))?base_url($categoryData->category_banner):'' ?>" onerror="this.src='<?=base_url("assets/images/user_avatar.jpg")?>';" height="75" width="75" />
</div>
<div class="col-md-9" style="padding-top: 25px;">
<input name="category_image" type="file" accept="image/*" onchange="setImg(this,'image_id');" />
<input class="<?= $required ?>" name="category_banner" type="file" accept="image/*" onchange="setImg(this,'category_banner_image');" />
</div>
</div>
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<label>Category Icon (Arabic)</label>
<label>Category Icon (EN)</label>
<div class="col-md-12" style="padding-bottom:10px;">
<div class="col-md-3">
<img id="category_image_mob" src="<?= (isset($categoryData->category_image_ar))?base_url($categoryData->category_image_ar):'' ?>" onerror="this.src='<?=base_url("assets/images/user_avatar.jpg")?>';" height="75" width="75" />
<img id="category_image_mob" src="<?= (isset($categoryData->category_image_EN))?base_url($categoryData->category_image_EN):'' ?>" onerror="this.src='<?=base_url("assets/images/user_avatar.jpg")?>';" height="75" width="75" />
</div>
<div class="col-md-9" style="padding-top: 25px;">
<input name="category_image_ar" type="file" accept="image/*" onchange="setImg(this,'category_image_mob');" />
<input class="<?= $required ?>" name="category_image_EN" type="file" accept="image/*" onchange="setImg(this,'category_image_mob');" />
</div>
</div>
</div>
</div>
</div>
<div class="padLeft30">
<a id="addMultiLang_cat" block="cat" show="0" class="cpoint noSubTypeMsg">
+ Show Add More Language Option
</a>
</div>
<div id="showMultiLangBlock_cat" class="col-md-12 hide marginTop23">
<?php foreach($language AS $lang) { if($lang == 'EN') continue; ?>
<div class="col-md-6">
<div class="form-group">
<label>Category Banner Image</label>
<label>Category Name (<?= $lang ?>)</label>
<input type="text" class="form-control" data-parsley-trigger="change"
data-parsley-minlength="2" data-parsley-pattern="^[a-zA-Z0-9\ . _ - ' \/]+$"
name="category_name_<?= $lang ?>" value="<?= (isset($categoryData->{'category_name_'.$lang}))?$categoryData->{'category_name_'.$lang}:'' ?>" placeholder="Category Name (English)">
<span class="glyphicon form-control-feedback"></span>
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<label>Category Icon (<?= $lang ?>)</label>
<div class="col-md-12" style="padding-bottom:10px;">
<div class="col-md-3">
<img id="category_banner_image" src="<?= (isset($categoryData->category_banner))?base_url($categoryData->category_banner):'' ?>" onerror="this.src='<?=base_url("assets/images/user_avatar.jpg")?>';" height="75" width="75" />
<img id="category_image_<?= $lang ?>" height="75" width="75"
src="<?= (isset($categoryData->{'category_image_'.$lang}))?base_url($categoryData->{'category_image_'.$lang}):'' ?>"
onerror="this.src='<?=base_url("assets/images/user_avatar.jpg")?>';" />
</div>
<div class="col-md-9" style="padding-top: 25px;">
<input name="category_banner" type="file" accept="image/*" onchange="setImg(this,'category_banner_image');" />
<input name="category_image_<?= $lang ?>" type="file" accept="image/*"
onchange="setImg(this,'category_image_<?= $lang ?>');" />
</div>
</div>
</div>
</div>
<?php } ?>
</div>
<div class="col-md-12">
<div class="col-md-12 marginTop10">
<div class="box-footer textCenterAlign">
<button type="submit" class="btn btn-primary">Submit</button>
<a href="<?= base_url('Category/listCategory') ?>" class="btn btn-primary">Cancel</a>
......
......@@ -33,7 +33,7 @@
<div class="box-header with-border">
<div class="col-md-6"><h3 class="box-title">Category List</h3></div>
<div class="col-md-6" align="right">
<a class="btn btn-sm btn-primary" href="<?= base_url() ?>">Back</a>
<a class="btn btn-sm btn-primary" href="<?= base_url('Category/listCategory') ?>">Back</a>
</div>
</div>
<div class="box-body">
......@@ -46,12 +46,12 @@
ondrop="dropMiddle(event,this,'child')" tmporder="<?= $category->cat_id ?>">
<div class="catEventContainer">
<div class="catOverlay">
<h5 class="catH5" class="catH5"><?= $category->category_en ?></h5>
<h5 class="catH5" class="catH5"><?= $category->category_name_EN ?></h5>
</div>
<img class="catImg"
onerror="this.src='<?=base_url("assets/images/no_image.png")?>';"
src="<?= base_url($category->category_image_en) ?>">
<p class="text"><?= $category->category_en ?></p>
src="<?= base_url($category->category_image_EN) ?>">
<p class="text"><?= $category->category_name_EN ?></p>
</div>
<input name="category_order[]" type="hidden" value="<?= $category->cat_id ?>">
</li>
......
......@@ -50,9 +50,7 @@
<tr>
<th class="hidden">ID</th>
<th width="50px;">Icon</th>
<th width="110px;">Category (En)</th>
<th width="110px;">Category (Ar)</th>
<th width="200px;">Category Description</th>
<th width="110px;">Category</th>
<th width="60px;">Status</th>
<?php if(in_array('2',$pAccess)||in_array('3',$pAccess)||in_array('4',$pAccess)){?>
<th width="200px;">Action</th>
......@@ -66,13 +64,11 @@
<tr>
<th class="hidden"><?= $category->cat_id ?></th>
<th class="center textCenterAlign">
<img id="image_id" src="<?= base_url($category->category_image_en) ?>"
<img id="image_id" src="<?= base_url($category->category_image_EN) ?>"
onerror="this.src='<?=base_url("assets/images/no_image_text.png")?>';"
height="50" width="50" />
</th>
<th class="center"><?= $category->category_en ?></th>
<th class="center"><?= $category->category_ar ?></th>
<th class="center"><?= $category->category_description ?></th>
<th class="center"><?= $category->category_name_EN ?></th>
<th class="center" id="statusFlag_<?= $category->cat_id ?>">
<?= ($category->status == 1)?'Active':'De-activate' ?>
</th>
......
......@@ -39,8 +39,6 @@
name="country_name" required="" value="<?= (isset($countryData->country_name))?$countryData->country_name:'' ?>"placeholder="Country Name">
<span class="glyphicon form-control-feedback"></span>
</div>
</div>
<div class="col-md-5">
<div class="form-group">
<label>Country Code</label>
<input type="text" class="form-control required" data-parsley-trigger="change"
......@@ -49,6 +47,19 @@
<span class="glyphicon form-control-feedback"></span>
</div>
</div>
<div class="col-md-5">
<div class="form-group">
<label>Country Flag</label>
<div class="col-md-12" style="padding-bottom:10px;padding-top:10px;">
<div class="col-md-3">
<img id="country_flag" src="<?= (isset($countryData->country_flag))?base_url($countryData->country_flag):'' ?>" onerror="this.src='<?=base_url("assets/images/flag_default.png")?>';" height="50" width="65" />
</div>
<div class="col-md-9" style="padding-top: 13px;">
<input class="<?= !empty($country_id)?'':'required' ?>" name="country_flag" type="file" accept="image/*" onchange="setImg(this,'country_flag');" />
</div>
</div>
</div>
</div>
</div>
<div class="col-md-12">
<div class="col-md-5">
......
<?php
$layoutDtls = '';
$language = getLanguages();
?>
<div class="content-wrapper">
<section class="content-header">
......@@ -41,7 +42,7 @@
foreach ($venueList as $venue) {
$select = (isset($venue->venue_id) && $venue->venue_id==$venue_id)?'selected':'';
echo '<option '.$select.' value="'.$venue->venue_id.'">'.
$venue->venue_name_en.', '.$venue->region_name_en.' - '.$venue->location.
$venue->venue_name_EN.', '.$venue->region_name_EN.' - '.$venue->location.
'</option>';
}
?>
......@@ -66,12 +67,12 @@
<div class="col-sm-6">
<div class="col-sm-4">Venue Name</div>
<div class="col-sm-1"><span>:</span></div>
<div class="col-sm-7"><strong><?= $venueData->venue_name_en ?></strong></div>
<div class="col-sm-7"><strong><?= $venueData->venue_name_EN ?></strong></div>
</div>
<div class="col-sm-6">
<div class="col-sm-4">Venue Region</div>
<div class="col-sm-1"><span>:</span></div>
<div class="col-sm-7"><strong><?= $venueData->region_name_en ?></strong></div>
<div class="col-sm-7"><strong><?= $venueData->region_name_EN ?></strong></div>
</div>
</div>
<div class="col-sm-12">
......@@ -82,13 +83,6 @@
<strong><p class="truncateText"><?= $venueData->location ?></p></strong>
</div>
</div>
<div class="col-sm-6">
<div class="col-sm-4">About Venue</div>
<div class="col-sm-1"><span>:</span></div>
<div class="col-sm-7">
<strong><p class="truncateText"><?= $venueData->venue_details ?></p></strong>
</div>
</div>
</div>
</div>
......@@ -190,18 +184,26 @@
<div class="box-body">
<div class="col-sm-12">
<div class="col-sm-4">
<div class="col-sm-6">
<div class="form-group">
<label>Event Name (English)</label>
<input type="text" class="form-control required" data-parsley-trigger="change"
data-parsley-minlength="2" name="event_name_en" required=""
placeholder="Enter Event Name (English)">
<label>Event Name (EN)</label>
<input type="text" class="form-control required" data-parsley-trigger="change" required
data-parsley-minlength="2" name="event_name_EN" placeholder="Enter Event Name (English)">
</div>
<div class="form-group">
<label>Event Name (Arabic)</label>
<input type="text" class="form-control required" data-parsley-trigger="change"
data-parsley-minlength="2" name="event_name_ar" required=""
placeholder="Enter Event Name (Arabic)">
<a id="addMultiLang_name" block="name" show="0" class="cpoint noSubTypeMsg">
+ Show Add More Language Option
</a>
</div>
<div id="showMultiLangBlock_name" class="hide marginTop10">
<?php foreach($language AS $lang) { if($lang == 'EN') continue; ?>
<div class="form-group">
<label>Event Name (<?= $lang ?>)</label>
<input type="text" class="form-control" name="event_name_<?= $lang ?>"
data-parsley-trigger="change" data-parsley-minlength="2"
placeholder="Enter Event Name (<?= $lang ?>)">
</div>
<?php } ?>
</div>
<?php if(!empty($category_data)){ ?>
......@@ -213,7 +215,7 @@
<?php
foreach ($category_data as $category) {
echo '<option value="'.$category->cat_id.'">'.
$category->category.
$category->category_name_EN.
'</option>';
}
?>
......@@ -243,18 +245,33 @@
</div>
</div>
</div>
<div class="col-sm-4">
<div class="col-sm-6">
<div class="form-group">
<label>Event Description (English)</label>
<textarea id="rich_editor" type="text" class="ip_reg_form_input form-control reset-form-custom" name="event_description_en" data-parsley-trigger="change" data-parsley-minlength="2"></textarea>
<label>Event Description (EN)</label>
<textarea id="rich_editor_EN" type="text" data-parsley-trigger="change"
class="ip_reg_form_input form-control reset-form-custom" name="event_description_EN" data-parsley-minlength="2"></textarea>
</div>
</div>
<div class="col-sm-4">
<div class="col-sm-6">
<div class="form-group">
<label>Event Description (Arabic)</label>
<textarea id="rich_editor_3" type="text" class="ip_reg_form_input form-control reset-form-custom" name="event_description_ar" data-parsley-trigger="change" data-parsley-minlength="2"></textarea>
<a id="addMultiLang_desc" block="desc" show="0" class="cpoint noSubTypeMsg">
+ Show Add More Language Option
</a>
</div>
</div>
<div id="showMultiLangBlock_desc" class="hide marginTop10">
<?php foreach($language AS $lang) { if($lang == 'EN') continue; ?>
<div class="col-sm-6"></div>
<div class="col-sm-6">
<div class="form-group">
<label>Event Description (<?= $lang ?>)</label>
<textarea id="rich_editor_<?= $lang ?>" type="text" data-parsley-trigger="change"
class="ip_reg_form_input form-control reset-form-custom"
name="event_description_<?= $lang ?>" data-parsley-minlength="2"></textarea>
</div>
</div>
<?php } ?>
</div>
</div>
</div>
......@@ -265,33 +282,49 @@
<div class="box-body">
<div class="col-sm-12">
<div class="col-sm-2">
<div class="form-group">
<label>Price</label>
<input type="text" class="form-control required" placeholder="Price"
data-parsley-trigger="change" data-parsley-minlength="1" data-parsley-pattern="^[0-9\ . \/]+$" name="price">
<div class="col-sm-4">
<div class="col-sm-6">
<div class="form-group">
<label>Price</label>
<input type="text" class="form-control required" placeholder="Price"
data-parsley-trigger="change" data-parsley-minlength="1" data-parsley-pattern="^[0-9\ . \/]+$" name="price">
</div>
</div>
</div>
<div class="col-sm-2">
<div class="form-group">
<label>Capacity</label>
<input type="text" class="form-control required" placeholder="Provide Capacity"
data-parsley-trigger="change" data-parsley-minlength="1"
name="capacity" data-parsley-pattern="^[0-9\ . \/]+$">
<div class="col-sm-6">
<div class="form-group">
<label>Capacity</label>
<input type="text" class="form-control required" placeholder="Provide Capacity"
data-parsley-trigger="change" data-parsley-minlength="1"
name="capacity" data-parsley-pattern="^[0-9\ . \/]+$">
</div>
</div>
</div>
<div class="col-sm-8">
<div class="col-sm-6">
<div class="form-group">
<label>About Price Division (EN)</label>
<textarea type="text" name="price_details_EN" required data-parsley-trigger="change"
class="ip_reg_form_input form-control reset-form-custom required custom_price" placeholder="Price Division (EN)" data-parsley-minlength="2"></textarea>
</div>
</div>
</div>
<div class="col-sm-4">
<div class="form-group">
<label>About Price Division (English)</label>
<textarea type="text" class="ip_reg_form_input form-control reset-form-custom required" placeholder="Price Division (English)" name="price_details_en" required
style="height:35px; min-height:35px; max-width: 300px; min-width: 330px;" data-parsley-trigger="change" data-parsley-minlength="2"></textarea>
<div class="col-sm-6" style="padding-top: 41px;padding-bottom: 18px;">
<div class="form-group">
<a id="addMultiLang_price" block="price" show="0" class="cpoint noSubTypeMsg">
+ Show Add More Language Option
</a>
</div>
</div>
</div>
<div class="col-sm-4">
<div class="form-group">
<label>About Price Division (Arabic)</label>
<textarea type="text" class="ip_reg_form_input form-control reset-form-custom required" placeholder="Price Division (Arabic)" name="price_details_ar" required
style="height:35px; min-height:35px; max-width: 300px; min-width: 330px;" data-parsley-trigger="change" data-parsley-minlength="2"></textarea>
<div id="showMultiLangBlock_price" class="hide">
<?php foreach($language AS $lang) { if($lang == 'EN') continue; ?>
<div class="col-sm-6">
<div class="form-group">
<label>About Price Division (<?= $lang ?>)</label>
<textarea type="text" name="price_details_<?= $lang ?>" data-parsley-minlength="2"
class="ip_reg_form_input form-control reset-form-custom custom_price"
placeholder="Price Division (<?= $lang ?>)" data-parsley-trigger="change"></textarea>
</div>
</div>
<?php } ?>
</div>
</div>
</div>
......@@ -313,7 +346,7 @@
<label class="padAll-10">For Multiple Show</label>
</div>
<div class="col-sm-6">
<div class="col-sm-7">
<div date="start" class="input-group date" data-provide="datepicker">
<input id="date" type="text" class="form-control required" required
data-parsley-trigger="change" data-parsley-minlength="5"
......@@ -327,14 +360,14 @@
id="eventEndDate">
<input id="date" type="text" class="form-control" disabled
data-parsley-trigger="change" data-parsley-minlength="5"
name="event_end_date" placeholder="Event End Date" autocomplete="off">
name="event_ENd_date" placeholder="Event End Date" autocomplete="off">
<div class="input-group-addon">
<i class="fa fa-calendar"></i>
</div>
</div>
</div>
<div class="col-sm-4" style="padding-left: initial;">
<div class="col-sm-5" style="padding-left: initial;">
<div class="col-sm-10 clockpicker" data-autoclose="true">
<input type="text" class="form-control required" data-parsley-minlength="2"
data-parsley-trigger="change" required name="event_time[]" autocomplete="off"
......@@ -355,7 +388,7 @@
<div type="parent" class="header-tag-box marginTop10">
<?php foreach($tag_data AS $tag){ ?>
<div id="tag_<?= $tag->tag_id ?>" class="header-tag cpoint" tag_id="<?= $tag->tag_id ?>" select="0" onclick="manageTags(jQuery(this))">
<?= $tag->tag_name_en ?>
<?= $tag->tag_EN ?>
</div>
<?php } ?>
</div>
......@@ -401,4 +434,14 @@
<img class="multiDropZoneOverlay" id="multiImageImg_{:count}" src=""
onerror="this.src='<?=base_url("assets/images/add-image.png")?>';" />
</div>
</div>
\ No newline at end of file
</div>
<script type="text/javascript">
jQuery( document ).ready(function() {
<?php foreach($language AS $lang) { ?>
if(jQuery('#rich_editor_<?= $lang ?>').length==1){
CKEDITOR.replace('rich_editor_<?= $lang ?>',{language:'<?= strtolower($lang) ?>'});
}
<?php } ?>
});
</script>
\ No newline at end of file
<?php
$layoutDtls = '';
$language = getLanguages();
?>
<div class="content-wrapper">
<section class="content-header">
......@@ -39,12 +40,20 @@
<div class="col-sm-6">
<div class="col-sm-4">Venue Name</div>
<div class="col-sm-1"><span>:</span></div>
<div class="col-sm-7"><strong><?= $event_data->venue_name_en ?></strong></div>
<div class="col-sm-7">
<strong>
<?= isset($event_data->venue_name_EN)?$event_data->venue_name_EN:'' ?>
</strong>
</div>
</div>
<div class="col-sm-6">
<div class="col-sm-4">Venue Region</div>
<div class="col-sm-1"><span>:</span></div>
<div class="col-sm-7"><strong><?= $event_data->region_name_en ?></strong></div>
<div class="col-sm-7">
<strong>
<?= isset($event_data->region_name_EN)?$event_data->region_name_EN:'' ?>
</strong>
</div>
</div>
</div>
<div class="row">
......@@ -55,13 +64,6 @@
<strong><p class="truncateText"><?= $event_data->location ?></p></strong>
</div>
</div>
<div class="col-sm-6">
<div class="col-sm-4">About Venue</div>
<div class="col-sm-1"><span>:</span></div>
<div class="col-sm-7">
<strong><p class="truncateText"><?= $event_data->venue_details ?></p></strong>
</div>
</div>
</div>
</div>
......@@ -181,289 +183,329 @@
<h3 class="box-title padLeft10 ">Event Details</h3>
</div>
<div class="box-body">
<div class="col-sm-12">
<div class="col-sm-4">
<div class="form-group">
<label>Event Name (English)</label>
<input type="text" class="form-control required" data-parsley-trigger="change"
data-parsley-minlength="2" name="event_name_en" required placeholder="Enter Event Name (English)" value="<?= $event_data->event_name_en ?>">
</div>
<div class="form-group">
<label>Event Name (Arabic)</label>
<input type="text" class="form-control required" data-parsley-trigger="change"
data-parsley-minlength="2" name="event_name_ar" required placeholder="Enter Event Name (Arabic)" value="<?= $event_data->event_name_ar ?>">
</div>
<?php if(!empty($category_data)){ ?>
<div class="box-body">
<div class="col-sm-12">
<div class="col-sm-6">
<div class="form-group">
<label>Event Name (EN)</label>
<input type="text" class="form-control required" data-parsley-trigger="change" required
data-parsley-minlength="2" name="event_name_EN" placeholder="Enter Event Name (English)"
value="<?= $event_data->event_name_EN ?>">
</div>
<div class="form-group">
<label>Category</label>
<select name="category_id" class="form-control required"
placeholder="Select Event Category" required>
<option selected disabled>Choose Event Category</option>
<a id="addMultiLang_name" block="name" show="0" class="cpoint noSubTypeMsg">
+ Show Add More Language Option
</a>
</div>
<div id="showMultiLangBlock_name" class="hide marginTop10 ">
<?php foreach($language AS $lang) { if($lang == 'EN') continue; ?>
<div class="form-group">
<label>Event Name (<?= $lang ?>)</label>
<input type="text" class="form-control" name="event_name_<?= $lang ?>"
data-parsley-trigger="change" data-parsley-minlength="2"
placeholder="Enter Event Name (<?= $lang ?>)"
value="<?= isset($event_data->{'event_name_'.$lang})?$event_data->{'event_name_'.$lang}:'' ?>">
</div>
<?php } ?>
</div>
<?php if(!empty($category_data)){ ?>
<div class="form-group">
<label>Category</label>
<select name="category_id" class="form-control required"
placeholder="Select Event Category" required>
<option selected disabled>Choose Event Category</option>
<?php
foreach ($category_data as $category) {
$selected = ($category->cat_id == $event_data->cat_id)?'selected':'';
echo '<option '.$selected.' value="'.$category->cat_id.'">'.
$category->category_name_EN.
'</option>';
}
?>
</select>
</div>
<?php } ?>
<div class="form-group">
<label>Maximum Seat Booking</label>
<input type="text" class="form-control" data-parsley-trigger="change"
data-parsley-minlength="2" name="max_booking" value="14"
placeholder="Maximum Seat Can Book Per Transaction (Default 14)"
value="<?= $event_data->max_booking ?>">
</div>
<div class="form-group">
<label>Payment Mode</label><br>
<input type="checkbox" name="has_payment" value="1" <?= ($event_data->has_payment == 1)?'checked':'' ?>>
<p style="display:-webkit-inline-box;padding-left: 15px;">Enable Payment</p>
</div>
<div class="form-group">
<label>Event Images</label>
<div id="multipleImageInputCntr">
<?php
$count = 1;
if(isset($event_data->eventMedia[0]) && !empty($event_data->eventMedia[0])){
foreach($event_data->eventMedia[0] AS $photos){ ?>
<div class="dropZoneContainer" id="multiImageCntr_<?= $count ?>">
<input type="hidden" name="existingImages[]" value="<?= $photos->id ?>">
<div id="multiImageClose_<?= $count ?>" class="close_custom cpoint"
onclick="removeImage('<?= $count ?>');">&times;</div>
<input disabled type="file" name="event_image[]" class="multiFileUpload"
accept="image/*" onchange="setMultiImg(this,jQuery(this));"
count="<?= $count ?>" />
<img class="multiDropZoneOverlay" id="multiImageImg_<?= $count ?>"
src="<?= base_url($photos->media_url) ?>" onerror="this.src='<?=base_url("assets/images/add-image.png")?>';" />
</div>
<?php
foreach ($category_data as $category) {
$selected = ($category->cat_id == $event_data->cat_id)?'selected':'';
echo '<option '.$selected.' value="'.$category->cat_id.'">'.
$category->category.
'</option>';
$count += 1;
}
}
if(isset($event_data->eventMedia[1]) && !empty($event_data->eventMedia[1])){
foreach($event_data->eventMedia[1] AS $photos){ ?>
<div class="dropZoneContainer" id="multiImageCntr_<?= $count ?>">
<input type="hidden" name="existingImages[]" value="<?= $photos->id ?>">
<div id="multiImageClose_<?= $count ?>" class="close_custom cpoint"
onclick="removeImage('<?= $count ?>');">&times;</div>
<input disabled type="file" name="event_image[]" class="multiFileUpload"
accept="image/*" onchange="setMultiImg(this,jQuery(this));"
count="<?= $count ?>" />
<img class="multiDropZoneOverlay" id="multiImageImg_<?= $count ?>"
src="<?= base_url($photos->media_url) ?>" onerror="this.src='<?=base_url("assets/images/add-image.png")?>';" />
</div>
<?php
$count += 1;
}
}
?>
</select>
<div class="dropZoneContainer" id="multiImageCntr_<?= $count ?>">
<div id="multiImageClose_<?= $count ?>" class="close_custom cpoint hide"
onclick="removeImage('<?= $count ?>');">&times;</div>
<input type="file" name="event_image[]" class="multiFileUpload" accept="image/*"
onchange="setMultiImg(this,jQuery(this));" count="<?= $count ?>" />
<img class="multiDropZoneOverlay" id="multiImageImg_<?= $count ?>"
src="<?=base_url("assets/images/add-image.png")?>" />
</div>
</div>
</div>
<?php } ?>
<div class="form-group">
<label>Maximum Seat Booking</label>
<input type="text" class="form-control" data-parsley-trigger="change"
data-parsley-minlength="2" name="max_booking" placeholder="Maximum Seat Can Book Per Transaction" value="<?= $event_data->max_booking ?>">
</div>
<div class="form-group">
<label>Payment Mode</label><br>
<input type="checkbox" name="has_payment" value="1"
<?= ($event_data->has_payment == 1)?'checked':'' ?>>
<p style="display:-webkit-inline-box;padding-left:15px;">Enable Payment</p>
</div>
</div>
<div class="col-sm-4">
<div class="form-group">
<label>Event Description (English)</label>
<textarea id="rich_editor" type="text" class="ip_reg_form_input form-control reset-form-custom" name="event_description_en" data-parsley-trigger="change" data-parsley-minlength="2"><?= $event_data->event_description_en ?></textarea>
<div class="col-sm-6">
<div class="form-group">
<label>Event Description (EN)</label>
<textarea id="rich_editor_EN" type="text" data-parsley-trigger="change"
class="ip_reg_form_input form-control reset-form-custom" name="event_description_EN" data-parsley-minlength="2"><?= $event_data->event_description_EN ?></textarea>
</div>
</div>
</div>
<div class="col-sm-4">
<div class="form-group">
<label>Event Description (Arabic)</label>
<textarea id="rich_editor_3" type="text" class="ip_reg_form_input form-control reset-form-custom" name="event_description_ar" data-parsley-trigger="change" data-parsley-minlength="2"><?= $event_data->event_description_ar ?></textarea>
<div class="col-sm-6">
<div class="form-group">
<a id="addMultiLang_desc" block="desc" show="0" class="cpoint noSubTypeMsg">
+ Show Add More Language Option
</a>
</div>
</div>
</div>
<div class="col-md-12">
<div class="form-group">
<label>Event Images</label>
<div id="multipleImageInputCntr">
<?php
$count = 1;
if(isset($event_data->eventMedia[0]) && !empty($event_data->eventMedia[0])){
foreach($event_data->eventMedia[0] AS $photos){ ?>
<div class="dropZoneContainer" id="multiImageCntr_<?= $count ?>">
<input type="hidden" name="existingImages[]" value="<?= $photos['id'] ?>">
<div id="multiImageClose_<?= $count ?>" class="close_custom cpoint"
onclick="removeImage('<?= $count ?>');">&times;</div>
<input disabled type="file" name="event_image[]" class="multiFileUpload"
accept="image/*" onchange="setMultiImg(this,jQuery(this));"
count="<?= $count ?>" />
<img class="multiDropZoneOverlay" id="multiImageImg_<?= $count ?>"
src="<?= base_url($photos['media_url']) ?>" onerror="this.src='<?=base_url("assets/images/add-image.png")?>';" />
</div>
<?php
$count += 1;
}
}
if(isset($event_data->eventMedia[1]) && !empty($event_data->eventMedia[1])){
foreach($event_data->eventMedia[1] AS $photos){ ?>
<div class="dropZoneContainer" id="multiImageCntr_<?= $count ?>">
<input type="hidden" name="existingImages[]" value="<?= $photos['id'] ?>">
<div id="multiImageClose_<?= $count ?>" class="close_custom cpoint"
onclick="removeImage('<?= $count ?>');">&times;</div>
<input disabled type="file" name="event_image[]" class="multiFileUpload"
accept="image/*" onchange="setMultiImg(this,jQuery(this));"
count="<?= $count ?>" />
<img class="multiDropZoneOverlay" id="multiImageImg_<?= $count ?>"
src="<?= base_url($photos['media_url']) ?>" onerror="this.src='<?=base_url("assets/images/add-image.png")?>';" />
</div>
<?php
$count += 1;
}
}
?>
<div class="dropZoneContainer" id="multiImageCntr_<?= $count ?>">
<div id="multiImageClose_<?= $count ?>" class="close_custom cpoint hide"
onclick="removeImage('<?= $count ?>');">&times;</div>
<input type="file" name="event_image[]" class="multiFileUpload" accept="image/*"
onchange="setMultiImg(this,jQuery(this));" count="<?= $count ?>" />
<img class="multiDropZoneOverlay" id="multiImageImg_<?= $count ?>"
src="<?=base_url("assets/images/add-image.png")?>" />
<div id="showMultiLangBlock_desc" class="hide marginTop10">
<?php foreach($language AS $lang) { if($lang == 'EN') continue; ?>
<div class="col-sm-6"></div>
<div class="col-sm-6">
<div class="form-group">
<label>Event Description (<?= $lang ?>)</label>
<textarea id="rich_editor_<?= $lang ?>" type="text" data-parsley-trigger="change"
class="ip_reg_form_input form-control reset-form-custom"
name="event_description_<?= $lang ?>" data-parsley-minlength="2"><?= isset($event_data->{'event_description_'.$lang})?$event_data->{'event_description_'.$lang}:'' ?></textarea>
</div>
</div>
</div>
<?php } ?>
</div>
</div>
</div>
</div>
<?php if($event_data->show_layout != 1 && !empty($event_data->seat_pricing) &&
<?php if($event_data->show_layout != 1 && !empty($event_data->seat_pricing) &&
!empty($seat_pricing = json_decode($event_data->seat_pricing,true))){ ?>
<div class="box-header with-border">
<h3 class="box-title padLeft10 ">Pricing Details</h3>
</div>
<div class="box-header with-border">
<h3 class="box-title padLeft10 ">Ticket Pricing</h3>
</div>
<div class="box-body">
<div class="col-sm-12">
<div class="col-sm-2">
<div class="form-group">
<label>Price</label>
<input type="text" class="form-control required" placeholder="Price"
name="price" data-parsley-trigger="change" data-parsley-minlength="1" data-parsley-pattern="^[0-9\ . \/]+$" value="<?= $seat_pricing['price'] ?>">
</div>
</div>
<div class="col-sm-2">
<div class="form-group">
<label>Capacity</label>
<input class="form-control required" placeholder="Provide Capacity"
type="text" data-parsley-trigger="change" data-parsley-minlength="1"
value="<?=isset($seat_pricing['capacity'])?$seat_pricing['capacity']:''?>"
name="capacity" data-parsley-pattern="^[0-9\ . \/]+$">
<div class="box-body">
<div class="col-sm-12">
<div class="col-sm-4">
<div class="col-sm-6">
<div class="form-group">
<label>Price</label>
<input type="text" class="form-control required" placeholder="Price"
data-parsley-trigger="change" data-parsley-minlength="1" data-parsley-pattern="^[0-9\ . \/]+$" name="price" value="<?= isset($seat_pricing['price'])?$seat_pricing['price']:'' ?>">
</div>
</div>
<div class="col-sm-6">
<div class="form-group">
<label>Capacity</label>
<input type="text" class="form-control required" placeholder="Provide Capacity"
data-parsley-trigger="change" data-parsley-minlength="1"
name="capacity" data-parsley-pattern="^[0-9\ . \/]+$" value="<?= isset($seat_pricing['capacity'])?$seat_pricing['capacity']:'' ?>">
</div>
</div>
</div>
<div class="col-sm-8">
<div class="col-sm-6">
<div class="form-group">
<label>About Price Division (EN)</label>
<textarea type="text" name="price_details_EN" required data-parsley-trigger="change"
class="ip_reg_form_input form-control reset-form-custom required custom_price" placeholder="Price Division (EN)" data-parsley-minlength="2"><?= isset($seat_pricing['price_details_EN'])?$seat_pricing['price_details_EN']:'' ?></textarea>
</div>
</div>
<div class="col-sm-6" style="padding-top: 41px;padding-bottom: 18px;">
<div class="form-group">
<a id="addMultiLang_price" block="price" show="0" class="cpoint noSubTypeMsg">
+ Show Add More Language Option
</a>
</div>
</div>
<div id="showMultiLangBlock_price" class="hide">
<?php foreach($language AS $lang) { if($lang == 'EN') continue; ?>
<div class="col-sm-6">
<div class="form-group">
<label>About Price Division (<?= $lang ?>)</label>
<textarea type="text" name="price_details_<?= $lang ?>" data-parsley-minlength="2"
class="ip_reg_form_input form-control reset-form-custom custom_price"
placeholder="Price Division (<?= $lang ?>)" data-parsley-trigger="change"><?= isset($seat_pricing['price_details_'.$lang])?$seat_pricing['price_details_'.$lang]:'' ?></textarea>
</div>
</div>
<?php } ?>
</div>
</div>
<div class="col-sm-4">
<div class="form-group">
<label>About Price Division (English)</label>
<textarea type="text" class="ip_reg_form_input form-control reset-form-custom required" placeholder="Price Division (English)" name="price_details_en" required
style="height:35px;" data-parsley-trigger="change" data-parsley-minlength="2"><?= (isset($seat_pricing['price_details_en']))?$seat_pricing['price_details_en']:'' ?></textarea>
</div>
</div>
<div class="col-sm-4">
<div class="form-group">
<label>About Price Division (Arabic)</label>
<textarea type="text" class="ip_reg_form_input form-control reset-form-custom required" placeholder="Price Division (Arabic)" name="price_details_ar" required
style="height:35px;" data-parsley-trigger="change" data-parsley-minlength="2"><?= (isset($seat_pricing['price_details_ar']))?$seat_pricing['price_details_ar']:'' ?></textarea>
</div>
</div>
</div>
</div>
<?php } ?>
<div class="box-header with-border">
<h3 class="box-title padLeft10 ">Scheduler and Tags</h3>
</div>
<?php } ?>
<div class="box-body">
<div class="col-sm-12">
<div class="col-sm-6">
<?php
$sType = (isset($event_data->eventSchedule) && !empty($event_data->eventSchedule['date']))?count($event_data->eventSchedule['date']):1; ?>
<div id="scheduleTypeCntr">
<input type="radio" name="schedule_type" value="0" <?= ($sType==1)?'checked':'' ?>>
<label class="padAll-10">For Single Show</label>
<input class="marginLeft15" type="radio" name="schedule_type" value="1" <?= ($sType==1)?'':'checked' ?>>
<label class="padAll-10">For Multiple Show</label>
</div>
<div class="box-header with-border">
<h3 class="box-title padLeft10 ">Scheduler and Tags</h3>
</div>
<div class="box-body">
<div class="col-sm-12">
<div class="col-sm-6">
<?php
$start_date = '';
if(isset($event_data->eventSchedule['date']) &&
isset($event_data->eventSchedule['date'][0])){
$start_date = strtotime($event_data->eventSchedule['date'][0]);
$start_date = date('m/d/Y',$start_date);
}
$sType = (isset($event_data->eventSchedule) && !empty($event_data->eventSchedule->date))?count($event_data->eventSchedule->date):1; ?>
<div id="scheduleTypeCntr">
<input type="radio" name="schedule_type" value="0" <?= ($sType==1)?'checked':'' ?>>
<label class="padAll-10">For Single Show</label>
<input class="marginLeft15" type="radio" name="schedule_type" value="1" <?= ($sType==1)?'':'checked' ?>>
<label class="padAll-10">For Multiple Show</label>
</div>
$end_date = '';
$lstIndex = count($event_data->eventSchedule['date'])-1;
if(isset($event_data->eventSchedule['date']) &&
isset($event_data->eventSchedule['date'][$lstIndex])){
$end_date = strtotime($event_data->eventSchedule['date'][$lstIndex]);
$end_date = date('m/d/Y',$end_date);
}
?>
<div class="input-group date" data-provide="datepicker">
<input id="date" type="text" class="form-control required" required
data-parsley-trigger="change" data-parsley-minlength="5"
name="event_start_date" value="<?= $start_date ?>"
placeholder="Event Start Date" autocomplete="off">
<div class="input-group-addon">
<i class="fa fa-calendar"></i>
<div class="col-sm-6">
<?php
$start_date = '';
if(isset($event_data->eventSchedule->date) &&
isset($event_data->eventSchedule->date[0])){
$start_date = strtotime($event_data->eventSchedule->date[0]);
$start_date = date('m/d/Y',$start_date);
}
$end_date = '';
$lstIndex = count($event_data->eventSchedule->date)-1;
if(isset($event_data->eventSchedule->date) &&
isset($event_data->eventSchedule->date[$lstIndex])){
$end_date = strtotime($event_data->eventSchedule->date[$lstIndex]);
$end_date = date('m/d/Y',$end_date);
}
?>
<div class="input-group date" data-provide="datepicker">
<input id="date" type="text" class="form-control required" required
data-parsley-trigger="change" data-parsley-minlength="5"
name="event_start_date" value="<?= $start_date ?>"
placeholder="Event Start Date" autocomplete="off">
<div class="input-group-addon">
<i class="fa fa-calendar"></i>
</div>
</div>
</div>
<div class="input-group date padTop10 <?= ($sType==1)?'hide':'' ?>" data-provide="datepicker"
id="eventEndDate">
<input id="date" type="text" class="form-control"
<?= ($sType != 1)?'required':'disabled' ?>
data-parsley-trigger="change" data-parsley-minlength="5" name="event_end_date"
placeholder="Event End Date" autocomplete="off" value="<?= $end_date ?>">
<div class="input-group-addon">
<i class="fa fa-calendar"></i>
<div class="input-group date padTop10 <?= ($sType==1)?'hide':'' ?>" data-provide="datepicker"
id="eventEndDate">
<input id="date" type="text" class="form-control"
<?= ($sType != 1)?'required':'disabled' ?>
data-parsley-trigger="change" data-parsley-minlength="5" name="event_ENd_date"
placeholder="Event End Date" autocomplete="off" value="<?= $end_date ?>">
<div class="input-group-addon">
<i class="fa fa-calendar"></i>
</div>
</div>
</div>
</div>
<div class="col-sm-4" style="padding-left: initial;">
<div class="col-sm-10 clockpicker" data-autoclose="true">
<input type="text" class="form-control required" data-parsley-minlength="2"
data-parsley-trigger="change" required name="event_time[]" autocomplete="off"
placeholder="Show Time" id="start_time"
value="<?= $event_data->eventSchedule['time'][0] ?>">
</div>
<div class="col-sm-2" style="padding-left: initial;">
<i class="fa fa-plus-circle cpoint fav-add-icon"
onclick="addTimePicker(jQuery(this))"
count="<?= count($event_data->eventSchedule['time']) ?>"></i>
</div>
<div class="col-sm-4" style="padding-left: initial;">
<div class="col-sm-10 clockpicker" data-autoclose="true">
<input type="text" class="form-control required" data-parsley-minlength="2"
data-parsley-trigger="change" required name="event_time[]" autocomplete="off"
placeholder="Show Time" id="start_time"
value="<?= $event_data->eventSchedule->time[0] ?>">
</div>
<div class="col-sm-2" style="padding-left: initial;">
<i class="fa fa-plus-circle cpoint fav-add-icon"
onclick="addTimePicker(jQuery(this))"
count="<?= count($event_data->eventSchedule->time) ?>"></i>
</div>
<div id="scheduleTimerCntr">
<?php $tCount = 2;
unset($event_data->eventSchedule['time'][0]);
if(!empty($event_data->eventSchedule['time'])){
foreach ($event_data->eventSchedule['time'] AS $time) { ?>
<div style="padding-left: initial;" id="timePicker_<?= $tCount ?>">
<div class="col-sm-10 padTop10 clockpicker" data-autoclose="true"
id="timePickerEnable_<?= $tCount ?>">
<input type="text" class="form-control required" data-parsley-minlength="2"
data-parsley-trigger="change" required name="event_time[]"
autocomplete="off" placeholder="Show Time" id="start_time"
value="<?= $time ?>">
<div id="scheduleTimerCntr">
<?php $tCount = 2;
unset($event_data->eventSchedule->time[0]);
if(!empty($event_data->eventSchedule->time)){
foreach ($event_data->eventSchedule->time AS $time) { ?>
<div style="padding-left: initial;" id="timePicker_<?= $tCount ?>">
<div class="col-sm-10 padTop10 clockpicker" data-autoclose="true"
id="timePickerEnable_<?= $tCount ?>">
<input type="text" class="form-control required" data-parsley-minlength="2"
data-parsley-trigger="change" required name="event_time[]"
autocomplete="off" placeholder="Show Time" id="start_time"
value="<?= $time ?>">
</div>
<div class="col-sm-2" style="padding-left: initial;">
<i class="padTop12 fa fa-times-circle-o cpoint fav-rem-icon" onclick="remTimePicker(<?= $tCount ?>)"></i>
</div>
</div>
<div class="col-sm-2" style="padding-left: initial;">
<i class="padTop12 fa fa-times-circle-o cpoint fav-rem-icon" onclick="remTimePicker(<?= $tCount ?>)"></i>
</div>
</div>
<?php $tCount +=1;
}
} ?>
<?php $tCount +=1;
}
} ?>
</div>
</div>
</div>
</div>
<?php if(!empty($tag_data)){ ?>
<div class="col-sm-6">
<div class="box-header with-border">
<h3 class="box-title padLeft10 ">Tags</h3>
</div>
<div type="parent" class="header-tag-box marginTop10">
<?php foreach($tag_data AS $tag){
$select = '0';
$cstmClass = '';
if(in_array($tag->tag_id, $event_data->eventTags)){
$select = '1';
$cstmClass = 'tagSelected';
} ?>
<div id="tag_<?= $tag->tag_id ?>" class="header-tag cpoint <?= $cstmClass ?>" tag_id="<?= $tag->tag_id ?>" select="<?= $select ?>" onclick="manageTags(jQuery(this))">
<?= $tag->tag_name_en ?>
</div>
<?php } ?>
</div>
<div id="selected_tags" class="hide">
<?php
foreach($event_data->eventTags AS $tag_id) {
echo '<input id="selTag_'.$tag_id.'" type="hidden" name="tags[]"
value="'.$tag_id.'">';
}
?>
<?php if(!empty($tag_data)){ ?>
<div class="col-sm-6">
<div class="box-header with-border">
<h3 class="box-title padLeft10 ">Tags</h3>
</div>
<div type="parent" class="header-tag-box marginTop10">
<?php foreach($tag_data AS $tag){
$select = '0';
$cstmClass = '';
if(in_array($tag->tag_id, $event_data->eventTags)){
$select = '1';
$cstmClass = 'tagSelected';
} ?>
<div id="tag_<?= $tag->tag_id ?>" class="header-tag cpoint <?= $cstmClass ?>" tag_id="<?= $tag->tag_id ?>" select="<?= $select ?>" onclick="manageTags(jQuery(this))">
<?= $tag->tag_EN ?>
</div>
<?php } ?>
</div>
<div id="selected_tags" class="hide">
<?php
foreach($event_data->eventTags AS $tag_id) {
echo '<input id="selTag_'.$tag_id.'" type="hidden" name="tags[]"
value="'.$tag_id.'">';
}
?>
</div>
</div>
</div>
<?php } ?>
</div>
<div class="col-md-12 padTop10">
<div class="box-footer">
<button type="submit" class="btn btn-primary" id="addEventButton">Submit</button>
<a href="<?= base_url('Event/listEvents') ?>" class="btn btn-primary">Cancel</a>
<?php } ?>
</div>
<div class="col-md-12 padTop10">
<div class="box-footer">
<button type="submit" class="btn btn-primary" id="addEventButton">Submit</button>
<a href="<?= base_url('Event/listEvents') ?>" class="btn btn-primary">Cancel</a>
</div>
</div>
</div>
</div>
</form>
</form>
</div>
</div>
</div>
</div>
</section>
</div>
......@@ -482,11 +524,19 @@
</div>
<div id="multipleImageInput" class="hide">
<div class="dropZoneContainer" id="multiImageCntr_{:count}">
<div class="dropZoneContainer" id="multiImageCntr_{:count}" count="{:count}">
<div id="multiImageClose_{:count}" class="close_custom hide" onclick="removeImage('{:count}');">&times;</div>
<input type="file" name="event_image[]" class="multiFileUpload" accept="image/*"
<input id="event_image_{:count}" type="file" name="event_image[]" class="multiFileUpload" accept="image/*"
onchange="setMultiImg(this,jQuery(this));" count="{:count}" />
<img class="multiDropZoneOverlay" id="multiImageImg_{:count}" src=""
onerror="this.src='<?=base_url("assets/images/add-image.png")?>';" />
</div>
</div>
\ No newline at end of file
</div>
<script type="text/javascript">
jQuery( document ).ready(function() {
<?php foreach($language AS $lang) { ?>
if(jQuery('#rich_editor_<?= $lang ?>').length==1){CKEDITOR.replace('rich_editor_<?= $lang ?>',{language:'<?= strtolower($lang) ?>'});}
<?php } ?>
});
</script>
\ No newline at end of file
......@@ -7,7 +7,9 @@
<div class="row">
<div class="col-sm-5">Event Name</div>
<div class="col-sm-1"><span>:</span></div>
<div class="col-sm-6"><strong><?= $event->event_name_en ?></strong></div>
<div class="col-sm-6">
<strong><?= isset($event->event_name_EN)?$event->event_name_EN:'' ?></strong>
</div>
</div>
<div class="row">
<div class="col-sm-5">Booking Limit</div>
......@@ -27,7 +29,7 @@
<div class="row">
<div class="col-sm-5">About Ticket</div>
<div class="col-sm-1"><span>:</span></div>
<div class="col-sm-6"><p class="truncateText"><?= $seat_pricing['price_details_en'] ?></p></div>
<div class="col-sm-6"><p class="truncateText"><?= $seat_pricing['price_details_EN'] ?></p></div>
</div>
<?php } ?>
</div>
......@@ -40,39 +42,38 @@
<div class="row">
<div class="col-sm-5">Venue Name</div>
<div class="col-sm-1"><span>:</span></div>
<div class="col-sm-6"><strong><?= $event->venue_name_en ?></strong></div>
<div class="col-sm-6">
<strong><?= isset($event->venue_name_EN)?$event->venue_name_EN:'' ?></strong>
</div>
</div>
<div class="row">
<div class="col-sm-5">Venue Region</div>
<div class="col-sm-1"><span>:</span></div>
<div class="col-sm-6"><strong><?= $event->region_name_en ?></strong></div>
<div class="col-sm-6">
<strong><?= isset($event->region_name_EN)?$event->region_name_EN:'' ?></strong>
</div>
</div>
<div class="row">
<div class="col-sm-5">Venue Location</div>
<div class="col-sm-1"><span>:</span></div>
<div class="col-sm-6"><?= $event->location ?></div>
</div>
<div class="row">
<div class="col-sm-5">About Venue</div>
<div class="col-sm-1"><span>:</span></div>
<div class="col-sm-6"><p class="truncateText"><?= $event->venue_details ?></p></div>
</div>
</div>
</div>
<?php
$start_date = '';
if(isset($event->eventSchedule['date']) &&
isset($event->eventSchedule['date'][0])){
$start_date = strtotime($event->eventSchedule['date'][0]);
if(isset($event->eventSchedule) && isset($event->eventSchedule->date) &&
isset($event->eventSchedule->date[0])){
$start_date = strtotime($event->eventSchedule->date[0]);
$start_date = date('m/d/Y',$start_date);
}
$end_date = '';
$lstIndex = count($event->eventSchedule['date'])-1;
if(isset($event->eventSchedule['date']) &&
isset($event->eventSchedule['date'][$lstIndex])){
$end_date = strtotime($event->eventSchedule['date'][$lstIndex]);
$lstIndex = count($event->eventSchedule->date)-1;
if(isset($event->eventSchedule->date) &&
isset($event->eventSchedule->date[$lstIndex])){
$end_date = strtotime($event->eventSchedule->date[$lstIndex]);
$end_date = date('m/d/Y',$end_date);
}
?>
......@@ -94,7 +95,7 @@
<div class="col-sm-5">Show Timing</div>
<div class="col-sm-1"><span>:</span></div>
<div class="col-sm-6">
<?php foreach($event->eventSchedule['time'] AS $time){ ?>
<?php foreach($event->eventSchedule->time AS $time){ ?>
<div class="header-tag"><?= $time ?></div>
<?php } ?>
</div>
......@@ -110,7 +111,7 @@
<?php foreach($tag_data AS $tag){
if(in_array($tag->tag_id, $event->eventTags)){ ?>
<div class="header-tag">
<?= $tag->tag_name_en ?>
<?= isset($tag->tag_EN)?$tag->tag_EN:'' ?>
</div>
<?php } } ?>
</div>
......
......@@ -53,10 +53,10 @@
foreach($event_data as $event) { ?>
<tr>
<td class="hidden"><?= $event->event_id ?></td>
<td><?= $event->event_name_en ?></td>
<td><?= $event->category_en ?></td>
<td><?= $event->region_name_en ?></td>
<td><?= $event->venue_name_en ?></td>
<td><?= isset($event->event_name_EN)?$event->event_name_EN:'' ?></td>
<td><?= isset($event->category_name_EN)?$event->category_name_EN:'' ?></td>
<td><?= isset($event->region_name_EN)?$event->region_name_EN:'' ?></td>
<td><?= isset($event->venue_name_EN)?$event->venue_name_EN:'' ?></td>
<?php
switch($event->event_status){
case 1 :
......
......@@ -36,7 +36,7 @@
<option selected disabled>Choose an Event</option>
<?php
foreach ($event_data as $event) {
echo '<option value="'.$event->event_id.'">'.$event->event_name_en.'</option>';
echo '<option value="'.$event->event_id.'">'.$event->event_name_EN.'</option>';
}
?>
</select>
......@@ -56,9 +56,9 @@
<label>Tags</label>
<div type="parent" class="header-tag-box marginTop10" style="height:82px;">
<?php foreach($regionData AS $region){ ?>
<div id="tag_<?= $region->id ?>" class="header-tag cpoint"
tag_id="<?= $region->name_en ?>" select="0" onclick="manageTags(jQuery(this))">
<?= $region->name_en ?>
<div id="tag_<?= $region->id ?>" class="header-tag cpoint" select="0"
tag_id="<?= $region->id ?>" onclick="manageTags(jQuery(this))">
<?= $region->region_name_EN ?>
</div>
<?php } ?>
</div>
......
<?php
$language = getLanguages();
?>
<div class="content-wrapper">
<section class="content-header">
<h1>
......@@ -62,8 +65,23 @@
</div>
<div class="col-md-6">
<div class="form-group">
<label>About Promocode</label>
<textarea type="text" class="form-control required" required placeholder="About Promocode" name="promocode_desc" style="height:107px;" data-parsley-trigger="change" data-parsley-minlength="2"><?= (isset($promo->promocode_desc))?$promo->promocode_desc:'' ?></textarea>
<label>About Promocode (EN)
<a id="addMultiLang_desc" block="desc" show="0" class="cpoint noSubTypeMsg">
<small> + Show Add More Language Option</small>
</a>
</label>
<textarea id="rich_editor_desc_EN" type="text" class="form-control"
placeholder="About Promocode" name="promocode_desc_EN" style="height:107px;" data-parsley-trigger="change" data-parsley-minlength="2"><?= (isset($promo->{'promocode_desc_EN'}))?$promo->{'promocode_desc_EN'}:'' ?></textarea>
<div id="showMultiLangBlock_desc" class="hide marginTop10">
<?php foreach($language AS $lang) { if($lang == 'EN') continue; ?>
<div class="form-group">
<label>About Promocode (<?= $lang ?>)</label>
<textarea id="rich_editor_desc_<?= $lang ?>" type="text" class="form-control"
style="height:107px;" placeholder="About Promocode" data-parsley-minlength="2"
name="promocode_desc_<?= $lang ?>" data-parsley-trigger="change"><?= (isset($promo->{'promocode_desc_'.$lang}))?$promo->{'promocode_desc_'.$lang}:'' ?></textarea>
</div>
<?php } ?>
</div>
</div>
</div>
<div class="row"></div>
......@@ -74,7 +92,9 @@
<option selected disabled>Choose an City</option>
<?php foreach($regionData as $city) {
$selected = (isset($promo->city_id) && $city->id == $promo->city_id)?'selected':'';
echo '<option '.$selected.' value="'.$city->id.'">'.$city->name.'</option>';
echo '<option name="city_id" '.$selected.' value="'.$city->id.'">'.
$city->region_name_EN.
'</option>';
} ?>
</select>
</div>
......@@ -85,8 +105,10 @@
<select name="category_id" class="form-control" placeholder="Category">
<option selected disabled>Choose an Category</option>
<?php foreach($categoryData as $cat) {
$selected = (isset($promo->city_id) && $cat->cat_id == $promo->category_id)?'selected':'';
echo '<option '.$selected.' value="'.$cat->cat_id.'">'.$cat->category.'</option>';
$selected = (isset($promo->category_id) && $cat->cat_id == $promo->category_id)?'selected':'';
echo '<option name="category_id" '.$selected.' value="'.$cat->cat_id.'">'.
$cat->category_name_EN.
'</option>';
} ?>
</select>
</div>
......@@ -97,8 +119,8 @@
<select name="event_id" class="form-control" placeholder="Category">
<option selected disabled>Choose an Event</option>
<?php foreach($event_data as $event) {
$selected = (isset($promo->city_id) && $event->event_id == $promo->event_id)?'selected':'';
echo '<option '.$selected.' value="'.$event->event_id.'">'.$event->event_name_en.'</option>';
$selected = (isset($promo->event_id) && $event->event_id==$promo->event_id)?'selected':'';
echo '<option name="event_id" '.$selected.' value="'.$event->event_id.'">'.$event->event_name_EN.'</option>';
} ?>
</select>
</div>
......@@ -156,15 +178,26 @@
<div class="row"></div>
<div class="col-sm-6">
<div class="form-group">
<label>Terms and Conditions (English)</label>
<textarea id="rich_editor" type="text" class="ip_reg_form_input form-control reset-form-custom" name="promocode_tc_en" data-parsley-trigger="change" data-parsley-minlength="2"><?= (isset($promo->promocode_tc_en))?$promo->promocode_tc_en:'' ?></textarea>
<label>Terms and Conditions (EN)
<a id="addMultiLang_tc" block="tc" show="0" class="cpoint noSubTypeMsg">
<small> + Show Add More Language Option</small>
</a>
</label>
<textarea id="rich_editor_tc_EN" type="text" name="promocode_tc_EN"
data-parsley-trigger="change" data-parsley-minlength="2"
class="ip_reg_form_input form-control reset-form-custom"><?= (isset($promo->{'promocode_tc_EN'}))?$promo->{'promocode_tc_EN'}:'' ?></textarea>
</div>
</div>
<div class="col-sm-6">
<div class="form-group">
<label>Terms and Conditions (Arabic)</label>
<textarea id="rich_editor_3" type="text" class="ip_reg_form_input form-control reset-form-custom" name="promocode_tc_ar" data-parsley-trigger="change" data-parsley-minlength="2"><?= (isset($promo->promocode_tc_ar))?$promo->promocode_tc_ar:'' ?></textarea>
</div>
<div id="showMultiLangBlock_tc" class="hide">
<?php foreach($language AS $lang) { if($lang == 'EN') continue; ?>
<div class="col-sm-6">
<div class="form-group">
<label>About Promocode (<?= $lang ?>)</label>
<textarea id="rich_editor_tc_<?= $lang ?>" type="text" name="promocode_tc_<?= $lang ?>"
data-parsley-trigger="change" class="ip_reg_form_input form-control reset-form-custom"data-parsley-minlength="2"><?= (isset($promo->{'promocode_tc_'.$lang}))?$promo->{'promocode_tc_'.$lang}:'' ?></textarea>
</div>
</div>
<?php } ?>
</div>
<div class="col-md-12">
<div class="box-footer textCenterAlign">
......@@ -178,4 +211,17 @@
</div>
</div>
</section>
</div>
\ No newline at end of file
</div>
<script type="text/javascript">
jQuery( document ).ready(function() {
<?php foreach($language AS $lang) { ?>
if(jQuery('#rich_editor_desc_<?= $lang ?>').length==1){
CKEDITOR.replace('rich_editor_desc_<?= $lang ?>',{language:'<?= strtolower($lang) ?>'});
}
if(jQuery('#rich_editor_tc_<?= $lang ?>').length==1){
CKEDITOR.replace('rich_editor_tc_<?= $lang ?>',{language:'<?= strtolower($lang) ?>'});
}
<?php } ?>
});
</script>
\ No newline at end of file
<?php
$language = getLanguages();
?>
<div class="content-wrapper">
<section class="content-header">
<h1>
......@@ -30,21 +33,21 @@
<div class="box-body">
<form role="form" action="<?= base_url($url) ?>" method="post"
class="validate" data-parsley-validate="" enctype="multipart/form-data">
<div class="col-md-3">
<div class="form-group">
<label>Region Name (En)</label>
<input type="text" class="form-control required" data-parsley-trigger="change"
data-parsley-minlength="2" data-parsley-pattern="^[a-zA-Z0-9\ . _ - ' \/]+$"
name="name_en" required="" value="<?= (isset($regionData->name_en))?$regionData->name_en:'' ?>"placeholder="Region Name">
<span class="glyphicon form-control-feedback"></span>
</div>
</div>
<div class="col-md-3">
<div class="col-md-6">
<div class="form-group">
<label>Region Name (Ar)</label>
<input type="text" class="form-control required" data-parsley-trigger="change"
data-parsley-minlength="2" name="name_ar" required value="<?= (isset($regionData->name_ar))?$regionData->name_ar:'' ?>"placeholder="Region Name">
<span class="glyphicon form-control-feedback"></span>
<label>Region Name</label>
<?php foreach($language AS $lang) {
$regionName = (isset($regionData->{'region_name_'.$lang}))?$regionData->{'region_name_'.$lang}:'' ?>
<div class="row">
<div class="col-md-12">
<input type="text" class="form-control <?= ($lang == 'EN')?'required':'' ?>"
name="name_<?= $lang ?>" data-parsley-trigger="change" data-parsley-minlength="2" data-parsley-pattern="^[a-zA-Z0-9\ . _ - ' \/]+$"
placeholder="Region Name (<?= $lang ?>)" value="<?= $regionName ?>">
<span class="glyphicon form-control-feedback"></span>
</div>
</div>
<br>
<?php } ?>
</div>
</div>
<div class="col-md-6">
......@@ -55,7 +58,8 @@
<img id="image_id" src="<?= (isset($regionData->region_icon))?base_url($regionData->region_icon):'' ?>" onerror="this.src='<?=base_url("assets/images/no_image_text.png")?>';" height="75" width="75" />
</div>
<div class="col-md-9" style="padding-top: 25px;">
<input name="region_icon" type="file" accept="image/*" onchange="setImg(this,'image_id');" />
<input name="region_icon"
class="<?= (!isset($regionData->region_icon) || empty(isset($regionData->region_icon)))?'required':'' ?>" type="file" accept="image/*" onchange="setImg(this,'image_id');" />
</div>
</div>
</div>
......
......@@ -48,7 +48,6 @@
<th class="hidden">ID</th>
<th width="50px;">Icon</th>
<th width="125px;">Region (English)</th>
<th width="125px;">Region (Arabic)</th>
<th width="100px;">Status</th>
<?php if(in_array('2',$pAccess)||in_array('3',$pAccess)||in_array('4',$pAccess)){?>
<th width="200px;">Action</th>
......@@ -66,8 +65,7 @@
onerror="this.src='<?=base_url("assets/images/no_image_text.png")?>';"
height="50" width="50" />
</th>
<th class="center"><?= $region->name_en ?></th>
<th class="center"><?= $region->name_ar ?></th>
<th class="center"><?= (isset($region->region_name_EN))?$region->region_name_EN:'' ?></th>
<th class="center" id="statusFlag_<?= $region->id ?>">
<?= ($region->status == 1)?'Active':'De-activate' ?>
</th>
......
<?php
$language = getLanguages();
?>
<div class="content-wrapper">
<section class="content-header">
<h1>
......@@ -29,24 +32,19 @@
<div class="box-body">
<form role="form" action="<?= base_url($url) ?>" method="post"
class="validate" data-parsley-validate="" enctype="multipart/form-data">
<div class="col-md-4">
<div class="form-group">
<label>Tag (English)</label>
<input type="text" class="form-control required" data-parsley-trigger="change"
data-parsley-minlength="2" name="tag_name_en" required=""
placeholder="Enter Tag Title" value="<?= (isset($tag_data->tag_name_en))?$tag_data->tag_name_en:'' ?>">
<span class="glyphicon form-control-feedback"></span>
<div class="col-md-12"><label>Tag</label></div>
<?php foreach($language AS $lang) { ?>
<div class="col-md-4">
<div class="form-group">
<?php $tagName = (isset($tag_data->{'tag_'.strtolower($lang)}))?$tag_data->{'tag_'.strtolower($lang)}:''; ?>
<input type="text" class="form-control <?= ($lang == 'EN')?'required':'' ?>"
data-parsley-trigger="change" data-parsley-minlength="2"
name="<?= 'tag_'.strtolower($lang)?>" placeholder="Tag (<?= $lang ?>)"
value="<?= $tagName ?>">
<span class="glyphicon form-control-feedback"></span>
</div>
</div>
</div>
<div class="col-md-4">
<div class="form-group">
<label>Tag (Arabic)</label>
<input type="text" class="form-control required" data-parsley-trigger="change"
data-parsley-minlength="2" name="tag_name_ar" required=""
placeholder="Enter Tag Title" value="<?= (isset($tag_data->tag_name_ar))?$tag_data->tag_name_ar:'' ?>">
<span class="glyphicon form-control-feedback"></span>
</div>
</div>
<?php } ?>
<div class="col-md-12 padTop10">
<div class="box-footer textCenterAlign">
<button type="submit" class="btn btn-primary">Submit</button>
......
......@@ -46,8 +46,7 @@
<thead>
<tr>
<th class="hidden">ID</th>
<th width="150px;">Tag (English)</th>
<th width="150px;">Tag (Arabic)</th>
<th width="150px;">Tag</th>
<th width="100px;">Status</th>
<?php if(in_array('2',$pAccess)||in_array('3',$pAccess)||in_array('4',$pAccess)){?>
<th width="200px;">Action</th>
......@@ -60,8 +59,7 @@
foreach($tag_data as $tag) { ?>
<tr>
<th class="hidden"><?= $tag->tag_id ?></th>
<th class="center"><?= $tag->tag_name_en ?></th>
<th class="center"><?= $tag->tag_name_ar ?></th>
<th class="center"><?= $tag->tag ?></th>
<th class="center" id="statusFlag_<?= $tag->tag_id ?>">
<?= ($tag->status == 1)?'Active':'De-activate' ?>
</th>
......
<?php
$settings = getSettings();
$languages = getLanguages();
$gKey = $settings['google_api_key'];
?>
<script>
base_url = "<?= base_url() ?>";
languages = <?= json_encode($languages) ?>;
country_flag = '<?= $settings['country_flag'] ?>';
</script>
<script src="https://maps.googleapis.com/maps/api/js?key=<?= $gKey ?>&libraries=places"></script>
<script src="<?= base_url('assets/js/bootstrap.min.js') ?>"></script>
<script src="<?= base_url('assets/js/pace.js') ?>"></script>
......@@ -17,7 +20,6 @@
<script src="<?= base_url('assets/js/locationpicker.js') ?>" type="text/javascript"></script>
<script src="<?= base_url('assets/js/custom-script.js?ts='.time()) ?>"></script>
<script src="<?= base_url('assets/js/parsley.min.js') ?>"></script>
<script src="https://cdn.ckeditor.com/4.5.7/standard/ckeditor.js"></script>
<script src="<?= base_url('assets/js/bootstrap-datepicker.js') ?>"></script>
<script src="<?= base_url('assets/js/clockpicker.js') ?>" type="text/javascript"></script>
<script src="<?= base_url('assets/js/slick.min.js') ?>" type="text/javascript"></script>
......@@ -25,22 +27,7 @@
<script>
jQuery('.clockpicker').clockpicker();
jQuery( document ).ready(function() {
if(jQuery('#rich_editor').length==1){CKEDITOR.replace('rich_editor');}
if(jQuery('#rich_editor_1').length==1){CKEDITOR.replace('rich_editor_1');}
if(jQuery('#rich_editor_2').length==1){CKEDITOR.replace('rich_editor_2');}
if(jQuery('#rich_editor_6').length==1){CKEDITOR.replace('rich_editor_6');}
if(jQuery('#rich_editor_8').length==1){CKEDITOR.replace('rich_editor_8');}
if(jQuery('#rich_editor_9').length==1){CKEDITOR.replace('rich_editor_9');}
if(jQuery('#rich_editor_10').length==1){CKEDITOR.replace('rich_editor_10');}
if(jQuery('#rich_editor_11').length==1){CKEDITOR.replace('rich_editor_11');}
if(jQuery('#rich_editor_3').length==1){CKEDITOR.replace('rich_editor_3',{language:'ar'});}
if(jQuery('#rich_editor_4').length==1){CKEDITOR.replace('rich_editor_4',{language:'ar'});}
if(jQuery('#rich_editor_5').length==1){CKEDITOR.replace('rich_editor_5',{language:'ar'});}
if(jQuery('#rich_editor_7').length==1){CKEDITOR.replace('rich_editor_7',{language:'ar'});}
});
function doconfirm(){
action = confirm("Are you sure to delete permanently?");
if(action != true) return false;
......
<!-- POP-UP VIEW MODAL END -->
<div class="modal fade" id="popup_modal" role="dialog">
<div class="modal-dialog modal-lg">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">&times;</button>
<h4 class="modal-title" id="modal_header"></h4>
</div>
<div class="modal-body col-md-12" id="modal_content" style="border-bottom:1px solid #e5e5e5;">
<!-- POP-UP VIEW MODAL CONTENT -->
</div>
<div class="modal-footer">
<div>&nbsp;</div>
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
</div>
</div>
</div>
</div>
<!-- POP-UP VIEW MODAL END -->
<footer class="main-footer">
<!-- <div class="pull-right hidden-xs">
<b>Version</b> 1.0
</div>
<strong>Copyright &copy; 2015-2016 <a href="#">Techware Solution</a>.</strong> All rights reserved. -->
</footer>
\ No newline at end of file
<!-- POP-UP VIEW MODAL END -->
<div class="modal fade" id="popup_modal" role="dialog">
<div class="modal-dialog modal-lg">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">&times;</button>
<h4 class="modal-title" id="modal_header"></h4>
</div>
<div class="modal-body col-md-12" id="modal_content" style="border-bottom:1px solid #e5e5e5;">
<!-- POP-UP VIEW MODAL CONTENT -->
</div>
<div class="modal-footer">
<div>&nbsp;</div>
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
</div>
</div>
</div>
</div>
<!-- POP-UP VIEW MODAL END -->
<footer class="main-footer"></footer>
\ No newline at end of file
......@@ -27,6 +27,7 @@
<link rel="stylesheet" href="<?= base_url('assets/css/slick.min.css') ?>" type="text/css" >
<script src="<?= base_url('assets/js/jQuery-2.1.4.min.js') ?>"></script>
<script src="https://cdn.ckeditor.com/4.5.7/standard/ckeditor.js"></script>
<script type="text/javascript">
report_data = ride_ids = [];
......
<?php
$language = getLanguages();
?>
<div class="content-wrapper">
<section class="content-header">
<h1>
......@@ -40,7 +43,7 @@
foreach ($regionData as $region) {
$select = (isset($venue_data->region_id) && $venue_data->region_id==$region->id)?'selected':'';
echo '<option '.$select.' value="'.$region->id.'">'.
$region->name.
$region->region_name_EN.
'</option>';
}
?>
......@@ -66,22 +69,28 @@
</div>
<?php } ?>
<div class="form-group">
<label>Venue Name (English)</label>
<label>Venue Name (EN)</label>
<input type="text" class="form-control required" data-parsley-trigger="change"
data-parsley-minlength="1" name="venue_name" required="" placeholder="Enter Venue Name (English)"
value="<?= (isset($venue_data->venue_name))?$venue_data->venue_name:'' ?>">
data-parsley-minlength="1" name="venue_name_EN" required="" placeholder="Enter Venue Name (EN)"
value="<?= (isset($venue_data->venue_name_EN))?$venue_data->venue_name_EN:'' ?>">
</div>
<div class="form-group">
<label>Venue Name (Arabic)</label>
<input type="text" class="form-control required" data-parsley-trigger="change"
data-parsley-minlength="1" name="venue_name_ar" required="" placeholder="Enter Name (Arabic)"
value="<?= (isset($venue_data->venue_name_ar))?$venue_data->venue_name_ar:'' ?>">
<div class="padLeft10">
<a id="addMultiLang_name" class="cpoint noSubTypeMsg" block="name" show="0">
+ Show Add More Language Option
</a>
</div>
<div class="form-group">
<label>Venue Details</label>
<textarea type="text" class="ip_reg_form_input form-control reset-form-custom required" placeholder="Venue Details" name="venue_details" data-parsley-trigger="change" data-parsley-minlength="1" required="" style="height:106px;"><?= (isset($venue_data->venue_details))?$venue_data->venue_details:'' ?></textarea>
<span class="glyphicon form-control-feedback"></span>
</div>
<div id="showMultiLangBlock_name" class="hide marginTop10 ">
<?php foreach($language AS $lang) { if($lang == 'EN') continue; ?>
<div class="form-group">
<label>Venue Name (<?= $lang ?>)</label>
<input type="text" class="form-control" name="venue_name_<?= $lang ?>"
placeholder="Enter Venue Name (<?= $lang ?>)"
value="<?= (isset($venue_data->{'venue_name_'.$lang}))?$venue_data->{'venue_name_'.$lang}:'' ?>">
</div>
<?php } ?>
</div>
<?php if(!isset($venue_id) || empty($venue_id)){ ?>
<div id="locality_block" class="form-group disable-div" style="padding-top: 5px;">
<label id="localityLabel">Venue Locality</label>
......@@ -96,14 +105,16 @@
</div>
</div>
<div id="addNew" class="form-group">
<div style="width:49%;display:inline-block;">
<input type="text" class="form-control required" data-parsley-trigger="change"
name="locality_en" placeholder="Locality (English)">
</div>
<div style="width:49%;display:inline-block;">
<div class="locality_fields">
<input type="text" class="form-control required" data-parsley-trigger="change"
name="locality_ar" placeholder="Locality (Arabic)">
name="locality_name_EN" placeholder="Locality (EN)">
</div>
<?php foreach($language AS $lang) { if($lang == 'EN') continue; ?>
<div class="locality_fields hide">
<input type="text" class="form-control" name="locality_name_<?= $lang ?>"
placeholder="Locality (<?= $lang ?>)">
</div>
<?php } ?>
</div>
<div id="useExist" class="form-group hide">
<select name="locality_id" class="form-control" placeholder="Select Locality"></select>
......@@ -123,14 +134,16 @@
</div>
</div>
<div id="addNew" class="form-group hide">
<div style="width:49%;display:inline-block;">
<div class="locality_fields">
<input type="text" class="form-control" data-parsley-trigger="change"
name="locality_en" placeholder="Locality (English)">
</div>
<div style="width:49%;display:inline-block;">
<input type="text" class="form-control" data-parsley-trigger="change"
name="locality_ar" placeholder="Locality (Arabic)">
name="locality_name_EN" placeholder="Locality (EN)">
</div>
<?php foreach($language AS $lang) { if($lang == 'EN') continue; ?>
<div class="locality_fields">
<input type="text" class="form-control" name="locality_name_<?= $lang ?>"
placeholder="Locality (<?= $lang ?>)">
</div>
<?php } ?>
</div>
<div id="useExist" class="form-group">
<select name="locality_id" class="form-control required"
......@@ -139,10 +152,10 @@
<?php
if(!empty($localityData)){
foreach ($localityData as $locality) {
$select = (isset($venue_data->locality_id) && $venue_data->locality_id == $locality->id)?'selected':'';
$select = (isset($venue_data->locality_id) && $venue_data->locality_id == $locality->locality_id)?'selected':'';
echo '<option '.$select.' value="'.$locality->id.'">'.
$locality->locality_en.
$locality->locality_name_EN.
'</option>';
}
}
......
......@@ -53,8 +53,8 @@
foreach($venue_data as $venue) { ?>
<tr>
<th class="hidden"><?= $venue->venue_id ?></th>
<th class="center"><?= $venue->venue_name_en ?></th>
<th class="center"><?= $venue->region_name_en ?></th>
<th class="center"><?= $venue->venue_name_EN ?></th>
<th class="center"><?= $venue->region_name_EN ?></th>
<th class="center"><?= $venue->host_category ?></th>
<th class="center"><?= $venue->location ?></th>
<th class="center" id="statusFlag_<?= $venue->venue_id ?>">
......
<!DOCTYPE html>
<html>
<?php
$this->load->view('Templates/header-script');
?>
<?php $this->load->view('Templates/header-script'); ?>
<body class="hold-transition <?php echo $this->config->item("theme_color"); ?> sidebar-mini">
<div class="wrapper">
<?php
$this->load->view('Templates/header-menu');
//$this->load->view('Templates/left-menu');
$this->load->view('Templates/left-menu');
$this->load->view($page);
$this->load->view('Templates/footer');
<div class="wrapper">
<?php
$this->load->view('Templates/header-menu');
$this->load->view('Templates/left-menu');
$this->load->view($page);
$this->load->view('Templates/footer');
?>
</div>
<?php
$this->load->view('Templates/footer-script');
?>
<?php $this->load->view('Templates/footer-script'); ?>
</body>
</html>
......@@ -341,6 +341,10 @@
padding-left:10px !important;
}
.padLeft30 {
padding-left: 30px !important;
}
.padLeft40 {
padding-left: 40px !important;
}
......@@ -348,6 +352,10 @@
.padLeft15 {
padding-left:15px !important;
}
.padBottom20 {
padding-bottom:20px !important;
}
/* .padBottom10 {
padding-bottom:10px !important;
......@@ -768,4 +776,40 @@
height:100%;
object-fit: cover;
object-position: center;
}
.locality_fields {
width:100%;
display:inline-block;
padding-top:4px;
}
.custom_price {
height:35px;
min-height:35px;
max-width: 300px;
min-width: 330px;
}
.collapsible-tab {
background-color: #777;
color: white;
cursor: pointer;
padding: 18px;
width: 100%;
border: none;
text-align: left;
outline: none;
font-size: 15px;
}
.collapsible-tab :hover {
background-color: #555;
}
.collaps-content-tab {
padding: 0 18px;
display: none;
overflow: hidden;
background-color: #f1f1f1;
}
\ No newline at end of file
......@@ -195,12 +195,12 @@ jQuery('[id="viewVenueDetails"]').on('click',function() {
'<div class="row">'+
'<div class="col-md-4">Venue Name</div>'+
'<div class="col-md-1">:</div>'+
'<div class="col-md-6"><label>'+ venue_data['venue_name_en']+'</label></div>'+
'<div class="col-md-6"><label>'+ venue_data['venue_name_EN']+'</label></div>'+
'</div> '+
'<div class="row">'+
'<div class="col-md-4">Venue Region</div>'+
'<div class="col-md-1">:</div>'+
'<div class="col-md-6"><label>'+venue_data['region_name_en']+'</label></div>'+
'<div class="col-md-6"><label>'+venue_data['region_name_EN']+'</label></div>'+
'</div> '+
'<div class="row">'+
'<div class="col-md-4">Host Type</div>'+
......@@ -212,11 +212,6 @@ jQuery('[id="viewVenueDetails"]').on('click',function() {
'<div class="col-md-1">:</div>'+
'<div class="col-md-6"><label>'+venue_data['location']+'</label></div>'+
'</div> '+
'<div class="row">'+
'<div class="col-md-4">Venue Details</div>'+
'<div class="col-md-1">:</div>'+
'<div class="col-md-6"><p class="truncateText">'+ venue_data['venue_details']+'</p></div>'+
'</div> '+
'</div> '+
''+
layoutHtml
......@@ -756,16 +751,12 @@ jQuery('[name="locality_type"]').on('click',function(event) {
jQuery('[name="locality_id"]').addClass("required");
jQuery('[id="addNew"]').addClass('hide');
jQuery('[name="locality_en"]').prop("disabled",true);
jQuery('[name="locality_en"]').removeClass("required");
jQuery('[name="locality_ar"]').prop("disabled",true);
jQuery('[name="locality_ar"]').removeClass("required");
jQuery('[name="locality_name_EN"]').prop("disabled",true);
jQuery('[name="locality_name_EN"]').removeClass("required");
} else {
jQuery('[id="addNew"]').removeClass('hide');
jQuery('[name="locality_en"]').prop("disabled",false);
jQuery('[name="locality_en"]').addClass("required");
jQuery('[name="locality_ar"]').prop("disabled",false);
jQuery('[name="locality_ar"]').addClass("required");
jQuery('[name="locality_name_EN"]').prop("disabled",false);
jQuery('[name="locality_name_EN"]').addClass("required");
jQuery('[id="useExist"]').addClass('hide');
jQuery('[name="locality_id"]').prop("disabled",true);
......@@ -796,24 +787,21 @@ jQuery('[name="region_id"]').on('change',function(){
jQuery('[id="localityLabel"]').removeClass('hide');
jQuery('[id="addNew"]').removeClass('hide');
jQuery('[name="locality_en"]').prop("disabled",false);
jQuery('[name="locality_en"]').addClass("required");
jQuery('[name="locality_ar"]').prop("disabled",false);
jQuery('[name="locality_ar"]').addClass("required");
jQuery('[name="locality_name_EN"]').prop("disabled",false);
jQuery('[name="locality_name_EN"]').addClass("required");
jQuery('[id="useExist"]').addClass('hide');
jQuery('[name="locality_id"]').prop("disabled",true);
jQuery('[name="locality_id"]').removeClass("required");
jQuery('.locality_fields').removeClass("hide");
jQuery('[id="locality_block"]').removeClass("disable-div");
}
if(resp_data['status'] == 1){
jQuery('[id="addNew"]').addClass('hide');
jQuery('[name="locality_en"]').prop("disabled",true);
jQuery('[name="locality_en"]').removeClass("required");
jQuery('[name="locality_ar"]').prop("disabled",true);
jQuery('[name="locality_ar"]').removeClass("required");
jQuery('[name="locality_name_EN"]').prop("disabled",true);
jQuery('[name="locality_name_EN"]').removeClass("required");
jQuery('[id="useExist"]').removeClass('hide');
jQuery('[name="locality_id"]').prop("disabled",false);
......@@ -825,9 +813,10 @@ jQuery('[name="region_id"]').on('change',function(){
jQuery('[name="locality_id"]').html('');
jQuery('[name="locality_id"]').html('<option selected disabled>Choose Venue Locality</option>');
jQuery.each(resp_data['data'], function(key, data) {
jQuery('[name="locality_id"]').append(jQuery("<option></option>").attr("value",data['id']).text(data['locality_en']));
jQuery('[name="locality_id"]').append(jQuery("<option></option>").attr("value",data['id']).text(data['locality_name_EN']));
});
jQuery('.locality_fields').removeClass("hide");
jQuery('[id="locality_block"]').removeClass("disable-div");
}
}
......@@ -1007,4 +996,19 @@ jQuery('[name="discount_type"]').on('click',function() {
} else {
jQuery('[name="discount_percentage"]').addClass('required');
}
});
jQuery('[id^="addMultiLang"]').on('click',function() {
var thisObj = jQuery(this), block = thisObj.attr('block'), disp = thisObj.attr('show');
if(disp == '1'){
thisObj.attr('show','0');
thisObj.html('+ Show Add More Language Option');
jQuery('[id="showMultiLangBlock_'+block+'"]').addClass('hide');
} else {
thisObj.attr('show','1');
thisObj.html('+ Hide Add More Language Option');
jQuery('[id="showMultiLangBlock_'+block+'"]').removeClass('hide');
}
});
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment