Commit 8bc59552 by Jansa Jose

Merge branch 'master' into 'dev_production'

Master See merge request !201
parents 1c4bb87f c391942d
......@@ -232,6 +232,11 @@ class Api extends CI_Controller {
$data['auth_token'] = $this->auth_token;
$res = $this->Api_model->tempbooking($data);
if($res['status']!=0){
if(isset($res['data']['reqData']) && !empty($res['data']['reqData'])){
$reqData = $this->encrypt(json_encode($res['data']['reqData']),$this->local_key,$this->local_iv);
$reqData = urlencode(base64_encode($reqData));
$res['data']['reqData'] = $reqData;
}
$this->response($res['data']);
}
else{
......@@ -320,34 +325,68 @@ class Api extends CI_Controller {
}
}
public function payNow($auth_token='',$amount=0,$booking_id='',$event_id='',$cardData=''){
public function payNow($reqData=''){
$settings = getSettings();
$redUrl = $settings['web_base_url'];
if(empty($auth_token) || empty($amount) || empty($booking_id)){
if(empty($reqData) || empty($reqData = urldecode($reqData)) ||
empty($reqData = base64_decode($reqData))){
redirect($redUrl.'failure');
}
$reqData = $this->decrypt($reqData,$this->local_key,$this->local_iv);
if(empty($reqData) || empty($reqData = json_decode($reqData,true)) ||
!isset($reqData['amount']) || empty($amount = $reqData['amount']) ||
!isset($reqData['event_id']) || empty($event_id = $reqData['event_id']) ||
!isset($reqData['cardData']) || empty($cardData = $reqData['cardData']) ||
!isset($reqData['auth_token']) || empty($auth_token = $reqData['auth_token']) ||
!isset($reqData['booking_id']) || empty($booking_id = $reqData['booking_id'])){
redirect($redUrl.'failure');
}
$payData = array('auth_token'=>$auth_token,'amount'=>$amount,'booking_id'=>$booking_id);
$res = $this->Api_model->payNow($payData);
if($res['status']==1){
$this->paymentGateway($amount,$res['transaction_id'],$event_id,$booking_id,$res['custData'],$cardData);
}
else{
redirect($redUrl.'failure?event_id='.$eventid);
$params = array('amount'=>$amount,'last_id'=>$res['transaction_id'],'event_id'=>$event_id,
'booking_id'=>$booking_id,'custData'=>$res['custData'],'cardData'=>$cardData);
$reqData = $this->encrypt(json_encode($params),$this->local_key,$this->local_iv);
$reqData = urlencode(base64_encode($reqData));
$this->paymentGateway($reqData);
} else {
redirect($redUrl.'failure?event_id='.$event_id);
}
}
public function paymentGateway($amount='0',$last_id='0',$event_id='0',$booking_id='0',
$custData=array(),$cardData=''){
public function paymentGateway($reqData=''){
$settings = getSettings();
$redUrl = $settings['web_base_url'];
if(empty($reqData) || empty($reqData = urldecode($reqData)) ||
empty($reqData = base64_decode($reqData))){
redirect($redUrl.'failure');
}
$customerName = array();
if(isset($custData->name) && !empty($custData->name)){
$customerName = explode(' ',$custData->name);
$reqData = $this->decrypt($reqData,$this->local_key,$this->local_iv);
if(empty($reqData) || empty($reqData = json_decode($reqData,true)) ||
!isset($reqData['amount']) || empty($amount = $reqData['amount']) ||
!isset($reqData['last_id']) || empty($last_id = $reqData['last_id']) ||
!isset($reqData['event_id']) || empty($event_id = $reqData['event_id']) ||
!isset($reqData['custData']) || empty($custData = $reqData['custData']) ||
!isset($reqData['cardData']) || empty($cardData = $reqData['cardData']) ||
!isset($reqData['booking_id']) || empty($booking_id = $reqData['booking_id'])){
redirect($redUrl.'failure');
}
if(isset($custData['name']) && !empty($custData['name'])){
$customerName = explode(' ',$custData['name']);
}
$amount = $amount;
$phone = (isset($custData->phone))?$custData->phone:'';
$email = (isset($custData->email))?$custData->email:'';
$userId = (isset($custData->userId))?$custData->userId:'';
$phone = (isset($custData['phone']))?$custData['phone']:'';
$email = (isset($custData['email']))?$custData['email']:'';
$userId = (isset($custData['userId']))?$custData['userId']:'';
$f_Name = (isset($customerName[0]))?$customerName[0]:'';
$l_Name = (isset($customerName[1]))?$customerName[1]:'T';
$add1 = $add2 = $city = $state = 'Saudi Arabia';
......@@ -355,41 +394,39 @@ class Api extends CI_Controller {
$saveCard = 1;
$savedCard = 0;
$cardMode = 'DD';
$cvv = $token = $cardNo = $holder = $cardType = $expMonth = $expYear = '';
if(!empty($cardData) && !empty($cardData = urldecode($cardData))){
$cardData = $this->decrypt($cardData,$this->local_key,$this->local_iv);
if(empty($cardData) || empty($cardData = json_decode($cardData,true))){
redirect($redUrl.'failure');
} else if (isset($cardData['cvv']) && !empty($cardData['cvv']) &&
isset($cardData['token']) && !empty($cardData['token'])){
$cvv = $cardData['cvv'];
$token = $cardData['token'];
$savedCard = 1;
} else if(isset($cardData['cvv']) && !empty($cardData['cvv']) ||
isset($cardData['cardType']) && !empty($cardData['cardType']) ||
isset($cardData['cardNumber']) && !empty($cardData['cardNumber']) ||
isset($cardData['expMonthYear']) && !empty($cardData['expMonthYear']) ||
isset($cardData['cardHolderName']) && !empty($cardData['cardHolderName'])){
$cvv = $cardData['cvv'];
$cardNo = $cardData['cardNumber'];
$holder = $cardData['cardHolderName'];
$cardType = $cardData['cardType'];
$expMonth = substr($cardData['expMonthYear'],0,2);
$expYear = '20'.substr($cardData['expMonthYear'],2,2);
$saveCard = (isset($cardData['saveCard']) && $cardData['saveCard'] == 0)?0:1;
} else {
redirect($redUrl.'failure');
}
if (isset($cardData['cvv']) && !empty($cardData['cvv']) &&
isset($cardData['token']) && !empty($cardData['token'])){
$cvv = $cardData['cvv'];
$token = $cardData['token'];
$savedCard = 1;
} else if(isset($cardData['cvv']) && !empty($cardData['cvv']) ||
isset($cardData['cardType']) && !empty($cardData['cardType']) ||
isset($cardData['cardMode']) && !empty($cardData['cardMode']) ||
isset($cardData['cardNumber']) && !empty($cardData['cardNumber']) ||
isset($cardData['expMonthYear']) && !empty($cardData['expMonthYear']) ||
isset($cardData['cardHolderName']) && !empty($cardData['cardHolderName'])){
$cvv = $cardData['cvv'];
$cardNo = $cardData['cardNumber'];
$holder = $cardData['cardHolderName'];
$cardType = $cardData['cardType'];
$cardMode = $cardData['cardMode'];
$expMonth = substr($cardData['expMonthYear'],0,2);
$expYear = '20'.substr($cardData['expMonthYear'],2,2);
$saveCard = (isset($cardData['saveCard']) && $cardData['saveCard'] == 0)?0:1;
} else {
redirect($redUrl.'failure');
redirect($redUrl.'failure?event_id='.$event_id);
}
$failureUrl = base_url('Api/paymentFailureUrl');
$successUrl = base_url('Api/paymentSuccessUrl');
$pText = '1111110||';
$pText .= '11111111|'.$last_id.'|'.$amount.'|'.$successUrl.'|'.$failureUrl.'|INTERNET|DD|01|SAR||';
$pText .= '11111111|'.$last_id.'|'.$amount.'|'.$successUrl.'|'.$failureUrl.'|INTERNET|'.$cardMode.'
|01|SAR||';
$pText .= '1111111111111|'.$f_Name.'|'.$l_Name.'|'.$add1.'|'.$add2.'|'.$city.'|'.$state.'|'.$pincode.
'|SA|'.$email.'|'.$phone.'|34|344|34355344||';
$pText .= '111111111111|'.$f_Name.'|'.$l_Name.'|'.$add1.'|'.$add2.'|'.$city.'|'.$state.'|'.$pincode.
......@@ -663,24 +700,22 @@ class Api extends CI_Controller {
public function addCard(){
$data = (array) json_decode(file_get_contents('php://input'));
// $dmyData = '{"auth_token":"cc731b6bd572eb452d85c96aaec77898","cardNumber":"5111111111111118",
// "expMonthYear":"0622","cardHolderName":"John","cvv":"100","cardType":"MasterCard"}';
// $data['requestData'] = $this->encrypt($dmyData,$this->local_key,$this->local_iv);
$settings = getSettings();
$merchant_iv = $settings['merchant_iv'];
$merchant_key = $settings['merchant_key'];
$reqData = $this->decrypt($data['requestData'],$this->local_key,$this->local_iv);
if(empty($reqData) || empty($reqData=json_decode($reqData,true))){
if(empty($reqData) || empty($reqData = json_decode($reqData,true)) ||
!isset($reqData['auth_token']) || empty($reqData['auth_token'])){
redirect($redUrl.'failure');
}
$payData = array('auth_token'=>$reqData['auth_token'],'amount'=>'1','booking_id'=>'ADD_CARD');
$res = $this->Api_model->payNow($payData);
if($res['status']==1){
unset($reqData['auth_token']);
$this->paymentGateway(1,$res['transaction_id'],'test','ADD_CARD',$res['custData'],$reqData);
$params = array('amount'=>1,'last_id'=>$res['transaction_id'],'event_id'=>'test',
'booking_id'=>'ADD_CARD','custData'=>$res['custData'],'cardData'=>$reqData);
$reqData = $this->encrypt(json_encode($params),$this->local_key,$this->local_iv);
$reqData = urlencode(base64_encode($reqData));
$this->paymentGateway($reqData);
}else{
redirect($redUrl.'failure');
}
......
......@@ -593,6 +593,28 @@ class Webservice extends CI_Controller {
}
}
public function update_user_location(){
$data = (array)json_decode(file_get_contents('php://input'));
$data['auth_token'] = $this->auth_token;
$res = $this->Webservice_model->update_user_location($data);
if($res['status'] != 0){
$this->successResponse();
}else{
$this->errorResponse($res['code'],$res['message']);
}
}
public function get_nearby_users(){
$data = (array)json_decode(file_get_contents('php://input'));
$data['auth_token'] = $this->auth_token;
$res = $this->Webservice_model->get_nearby_users($data);
if($res['status'] == 'success'){
$this->response($res['data']);
}else{
$this->errorResponse($res['code'],$res['message']);
}
}
public function get_hotel_city_list(){
$data = $_GET;
$data['auth_token'] = $this->auth_token;
......@@ -717,6 +739,50 @@ class Webservice extends CI_Controller {
}
}
public function flight_book(){
$data = (array)json_decode(file_get_contents('php://input'));
$data['auth_token'] = $this->auth_token;
$res = $thia->Webservice_model->flight_book($data);
if($res['status'] == 1){
$this->response($res['data']);
}else{
$this->errorResponse($res['code'],$res['message']);
}
}
public function flight_ticket_order(){
$data = (array)json_decode(file_get_contents('php://input'));
$data['auth_token'] = $this->auth_token;
$res = $this->Webservice_model->flight_ticket_order($data);
if($res['status'] == 1){
$this->response($res['data']);
}else{
$this->errorResponse($res['code'],$res['message']);
}
}
public function flight_trip_details(){
$data = (array)json_decode(file_get_contents('php://input'));
$data['auth_token'] = $this->auth_token;
$res = $this->Webservice_model->flight_trip_details($data);
if($res['status'] == 1){
$this->response($res['data']);
}else{
$this->errorResponse($res['code'],$res['message']);
}
}
public function cancel_flights(){
$data = (array)json_decode(file_get_contents('php://input'));
$data['auth_token'] = $this->auth_token;
$res = $this->Webservice_model->cancel_flights($data);
if($res['status'] == 1){
$this->response($res['data']);
}else{
$this->errorResponse($res['code'],$res['message']);
}
}
......
......@@ -626,7 +626,9 @@ class Api_model extends CI_Model {
'redeem_amount'=>$post_data['redeem_amount'],
'created_date'=>date('Y-m-d H:i:s'),'status'=>$promoStatus);
}
unset($post_data['auth_token'],$post_data['has_payment'],
$card_data = $post_data['cardData'];
$auth_token = $post_data['auth_token'];
unset($post_data['auth_token'],$post_data['has_payment'],$post_data['cardData'],
$post_data['promocode_id'],$post_data['redeem_amount']);
$rs = $this->db->insert('booking', $post_data);
......@@ -634,8 +636,34 @@ class Api_model extends CI_Model {
if(!empty($promocodeData)){
$this->db->insert('promocode_used',$promocodeData);
}
$cardDetails = array();
if(!empty($card_data)){
// (CC)-Credit ,(DC)-Debit ,(DD)-Direct Debit,(PAYPAL)-PayPal,(NB)-Net Banking
switch($card_data->card_type) {
case '1': $cardDetails['cardMode'] = 'CC'; break;
case '2': $cardDetails['cardMode'] = 'DC'; break;
case '3': $cardDetails['cardMode'] = 'DD'; break;
default : $cardDetails['cardMode'] = 'DD'; break;
}
switch(substr($card_data->card_number,0,1)) {
case '4': $cardDetails['cardType'] = 'VisaCard'; break;
case '5': $cardDetails['cardType'] = 'Mastercard'; break;
case '6': $cardDetails['cardType'] = 'DiscoverCard'; break;
default : $cardDetails['cardType'] = 'Mastercard'; break;
}
$cardDetails['cvv'] = $card_data->card_cvv;
$cardDetails['cardNumber'] = $card_data->card_number;
$cardDetails['expMonthYear'] = $card_data->exp_date.$card_data->exp_year;
$cardDetails['cardHolderName'] = $card_data->holder_name;
}
$reqData = array('amount'=>$post_data['amount'],'event_id'=>$post_data['event_id'],
'cardData'=>$cardDetails,'auth_token'=>$auth_token,
'booking_id'=>$post_data['bookId']);
$res = array('status'=>1,'data'=>array('user_id'=>$user_id,
'bookingCode'=>$post_data['bookId']));
'bookingCode'=>$post_data['bookId'],'reqData'=>$reqData));
if($status == 1){
$sql = "SELECT TEVT.event_name,CUST.name,CUST.email,CUST.phone,
......@@ -932,8 +960,7 @@ class Api_model extends CI_Model {
}
if(!empty($user_id)) {
$sql = "SELECT SUM(no_of_ticket) AS bookCount
FROM booking AS BOK
$sql = "SELECT SUM(no_of_ticket) AS bookCount FROM booking AS BOK
WHERE event_id='$event_id' AND customer_id='$user_id' AND status IN (1)";
$result = $this->db->query($sql)->row_array();
if(!empty($result)){
......
......@@ -164,9 +164,9 @@ class Organizer_model extends CI_Model {
set_time_limit(0);
$languages = getLanguages();
$postData['seat_pricing'] = $postData['custom_seat_layout'] = '';
if(isset($postData['layout_type']) && $postData['layout_type'] == 1){
if(isset($postData['layout_type'],$postData['fare_type']) && $postData['layout_type'] == 1 && $postData['fare_type'] == 2){
$postData['custom_seat_layout'] = $postData['layout'];
} else {
} else if($postData['layout_type'] == 2) {
$postData['seat_pricing'] = $postData['layout'];
}
$eventData = array('venue_id'=>(!empty($postData['venue_id']))?$postData['venue_id']:'',
......@@ -464,7 +464,12 @@ class Organizer_model extends CI_Model {
public function signIn($data){
try{
if($data['user_type'] == '2'){
$sql = $this->db->query("SELECT USR.* FROM users AS USR INNER JOIN provider AS PDR ON (PDR.provider_id = USR.id) WHERE USR.password='".md5($data['password'])."' AND PDR.email='".$data['email_id']."' AND USR.user_type='".$data['user_type']."'");
$sql = $this->db->query("SELECT USR.* FROM users AS USR
INNER JOIN provider AS PDR ON (PDR.provider_id = USR.id)
WHERE USR.password='".md5($data['password'])."' AND
PDR.email='".$data['email_id']."' AND
USR.user_type='".$data['user_type']."' AND
USR.status='1'");
}else{
$sql = $this->db->query("SELECT * FROM checker WHERE username='".$data['email_id']."' AND password='".md5($data['password'])."' AND status='1'");
}
......@@ -485,11 +490,20 @@ class Organizer_model extends CI_Model {
$res = array('status'=>0,'message'=>'New Password and Confirm Password Doesnot Match','code'=>'ER10');
return $res;
}
if($data['user_type'] == '2'){
$status = $this->db->query("UPDATE users SET password='".md5($data['confirm_password'])."' WHERE id='".$data['user_id']."' AND user_type='".$data['user_type']."'");
}else{
$status = $this->db->query("UPDATE checker SET password ='".md5($data['confirm_password'])."' WHERE id='".$data['user_id']."'");
$sql = "SELECT * FROM provider AS PDR
INNER JOIN users AS USR ON (USR.id=PDR.provider_id)
WHERE phone LIKE '%".$data['phone_number']."' AND
USR.user_type='2' AND USR.status='1'";
$usrData = $this->db->query($sql);
if(empty($usrData) || empty($usrData = $usrData->row_array())){
$res = array('status'=>0,'message'=>'Provider Doesnot Exist','code'=>'ER08');
return $res;
}
$sql = "UPDATE users SET password='".md5($data['confirm_password'])."'
WHERE id='".$usrData['provider_id']."' AND user_type='".$data['user_type']."'";
$status = $this->db->query($sql);
if($status){
$res = array('status'=>1,'message'=>'Password Updated Successfully');
}
......@@ -854,7 +868,7 @@ class Organizer_model extends CI_Model {
public function getCountryCode(){
try{
$sql = "SELECT country_id,country_name,country_code,phone_code FROM country WHERE status='1'";
$sql = "SELECT country_id,country_name,country_code,phone_code FROM country WHERE status=1";
$ctryData = $this->db->query($sql);
if(empty($ctryData) || empty($ctryData = $ctryData->result_array())){
$res = array('status'=>0,'message'=>'No Data Found','code'=>'ER06');
......@@ -865,7 +879,7 @@ class Organizer_model extends CI_Model {
$res = array('status'=>0,'message'=>'Ohh No!! Something Went South','code'=>'ER08');
}
return $res;
}
}
public function getCheckerList($data){
try{
......
......@@ -415,15 +415,6 @@ class Validation_app_model extends CI_Model {
'code' => 'ER02',
'message' => 'User id is null or empty'
)
),
'create_guest_user' => array(),
'update_user_visibility' => array(
'visible' => array(
'required' => array(
'code' => 'ER18',
'message' => 'Required field is null or empty'
)
)
)
),
'upload_audio_message' => array(
......@@ -914,6 +905,369 @@ class Validation_app_model extends CI_Model {
)
),
),
'update_user_location'=>array(
'auth_token' => array(
'required' => array(
'code' => 'ER02',
'message' => 'User Id is null or empty'
)
),
'latitude' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Latitude Field is null or empty'
)
),
'longitude' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Longitude Field is null or empty'
)
),
),
'get_nearby_users'=>array(
'auth_token' => array(
'required' => array(
'code' => 'ER02',
'message' => 'User Id is null or empty'
)
),
'latitude' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Latitude Field is null or empty'
)
),
'longitude' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Longitude Field is null or empty'
)
),
),
'flight_book'=>array(
'auth_token' => array(
'required' => array(
'code' => 'ER02',
'message' => 'User Id is null or empty'
)
),
'target' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Target Field is null or empty'
)
),
'session_id' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Session Id is null or empty'
)
),
'area_code' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Area Code is null or empty'
)
),
'country_code' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Country Code is null or empty'
)
),
'first_name' => array(
'required' => array(
'code' => 'ER02',
'message' => 'First Name is null or empty'
)
),
'last_name' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Last Name is null or empty'
)
),
'title' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Title Field is null or empty'
)
),
'email_id' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Email ID is null or empty'
)
),
'mobile_no' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Mobile Number is null or empty'
)
),
'dob' => array(
'required' => array(
'code' => 'ER02',
'message' => 'DOB is null or empty'
)
),
'gender' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Gender is null or empty'
)
),
'issue_country' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Issue Country is null or empty'
)
),
'passport_expiry' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Passport Expiry Field is null or empty'
)
),
'passport_no' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Passport Number is null or empty'
)
),
'type' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Type Field is null or empty'
)
),
'IsPassportMandatory' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Is Passport Mandatory Field is null or empty'
)
),
'adult_flight' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Adult flight is null or empty'
)
),
'child_flight' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Child Flight is null or empty'
)
),
'infant_flight' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Infant Flight is null or empty'
)
),
'frequentFlyrNum' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Frequent Flyr Number Field is null or empty'
)
),
'adultmealplan' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Adult Meal Plan Field is null or empty'
)
),
'child_dob' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Child Dob is null or empty'
)
),
'child_gender' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Child Gender is null or empty'
)
),
'child_title' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Child Title is null or empty'
)
),
'child_first_name' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Child First Name is null or empty'
)
),
'child_last_name' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Child Last Name is null or empty'
)
),
'child_passport_expiry_date' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Child Passport Expiry Date is null or empty'
)
),
'child_passport_no' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Child Passport Number is null or empty'
)
),
'child_frequentFlyrNum' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Child Frequent Flyr Number is null or empty'
)
),
'childMealplan' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Child Meal Plan is null or empty'
)
),
'infant_dob' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Infant Dob is null or empty'
)
),
'infant_gender' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Infant Gender is null or empty'
)
),
'infant_first_name' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Infant First Name is null or empty'
)
),
'infant_last_name' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Infant Last Name is null or empty'
)
),
'infant_title' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Infant Title is null or empty'
)
),
'infantMealplan' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Infant Meal Plan is null or empty'
)
),
'FareSourceCode' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Fare Source Code is null or empty'
)
),
'PostCode' => array(
'required' => array(
'code' => 'ER02',
'message' => 'PostCode is null or empty'
)
),
),
'flight_ticket_order'=>array(
'auth_token' => array(
'required' => array(
'code' => 'ER02',
'message' => 'User Id is null or empty'
)
),
'target' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Target Field is null or empty'
)
),
'session_id' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Session Id is null or empty'
)
),
'UniqueID' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Unique Id is null or empty'
)
),
),
'flight_trip_details'=>array(
'auth_token' => array(
'required' => array(
'code' => 'ER02',
'message' => 'User Id is null or empty'
)
),
'target' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Target Field is null or empty'
)
),
'session_id' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Session Id is null or empty'
)
),
'UniqueID' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Unique Id is null or empty'
)
),
),
'cancel_flights'=>array(
'auth_token' => array(
'required' => array(
'code' => 'ER02',
'message' => 'User Id is null or empty'
)
),
'target' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Target Field is null or empty'
)
),
'session_id' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Session Field is null or empty'
)
),
'UniqueID' => array(
'required' => array(
'code' => 'ER02',
'message' => 'Unique ID is null or empty'
)
),
),
'create_guest_user' => array(),
'update_user_visibility' => array(
'visible' => array(
'required' => array(
'code' => 'ER18',
'message' => 'Required field is null or empty'
)
)
)
);
public function validation_check($method_name, $parms) {
......
......@@ -428,4 +428,4 @@ class Validation_model extends CI_Model {
}
}
?>
\ No newline at end of file
?>
......@@ -166,10 +166,10 @@ class Validation_organizer_model extends CI_Model {
'message' => 'Confirm Password is null or empty'
)
),
'user_id' => array(
'phone_number' => array(
'required' => array(
'code' => 'ER18',
'message' => 'User Id is null or empty'
'message' => 'Phone Number is null or empty'
)
),
'user_type' => array(
......
......@@ -224,7 +224,8 @@ class Webservice_model extends CI_Model {
$lang = $countryData['language_code'];
$settings = getSettings();
$sql = "SELECT faq FROM translator_policies WHERE language_code='$lang'";
$sql = "SELECT faq FROM translator_policies
WHERE language_code='$lang' OR language_code='EN'";
$settingsDetails = $this->db->query($sql)->row_array();
$settingsDetails['contact_number'] = $settings['contact_number'];
......@@ -388,7 +389,8 @@ class Webservice_model extends CI_Model {
if($count > $page_limit) {
$this->db->query("SET SESSION group_concat_max_len = 200000");
$result = $this->db->query("
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
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,
events.has_payment
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
......@@ -452,6 +454,7 @@ class Webservice_model extends CI_Model {
'is_favorite'=>$rs->is_favorite === 'true'? true: false,
'latitude'=>$rs->latitude,
'longitude'=>$rs->longitude,
'has_payment'=>$rs->has_payment,
'currency_symbol'=>$countryData['currency_symbol']
);
array_push($response, $resData);
......@@ -719,7 +722,8 @@ class Webservice_model extends CI_Model {
$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' OR TC.language_code='EN') $where
WHERE ECAT.status = 1 AND (TC.language_code='$lang' OR TC.language_code='EN')
$where
GROUP BY ECAT.cat_id ORDER BY ECAT.priority";
$result = $this->db->query($sql)->result();
if(count($result) > 0){
......@@ -771,7 +775,13 @@ class Webservice_model extends CI_Model {
$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();
$sql = "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' OR TREG.language_code='EN')
GROUP BY city_name";
$result = $this->db->query($sql)->result();
if(count($result)>0){
$res = array('status'=>1,'data'=>array('cities'=>$result));
} else {
......@@ -793,11 +803,13 @@ class Webservice_model extends CI_Model {
$lang = $countryData['language_code'];
if($user_id > 0) {
if(isset($data['city_id']) && !empty($data['city_id'])){
$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();
$city_id = $data['city_id'];
$sql = "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 REG.id='$city_id' AND
(TREG.language_code='$lang' OR TREG.language_code='EN')
GROUP BY REG.id";
$re = $this->db->query($sql)->row();
$cityName = $re->region_name;
$cityId = $data['city_id'];
}else{
......@@ -806,7 +818,8 @@ class Webservice_model extends CI_Model {
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'
WHERE REG.status = '1' AND
(TREG.language_code='$lang' OR TREG.language_code='EN')
HAVING distance < ".$radius."
ORDER BY distance ASC LIMIT 1")->row_array();
if(!empty($data)){
......@@ -848,7 +861,8 @@ class Webservice_model extends CI_Model {
}
$settings = getSettings();
$sql = "SELECT instruction FROM translator_policies WHERE language_code='$lang'";
$sql = "SELECT instruction FROM translator_policies
WHERE language_code='$lang' OR language_code='EN'";
$settingsDetails = $this->db->query($sql)->row_array();
$settingsDetails['contact_number'] = $settings['contact_number'];
......@@ -1138,18 +1152,21 @@ class Webservice_model extends CI_Model {
if($status == 1){
$countryData = $this->getCountryData($user_id);
$lang = $countryData['language_code'];
$bkData = $this->db->query("
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' AND TEVT.language_code='$lang'")->row_array();
$bookId = $post_data['bookId'];
$lang = $countryData['language_code'];
$sql = "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='$bookId' AND EVT.status='1' AND
BK.status='1' AND EDATE.status='1' AND
(TEVT.language_code='$lang' OR TEVT.language_code='EN')";
$bkData = $this->db->query($sql)->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 '".
......@@ -1396,15 +1413,15 @@ class Webservice_model extends CI_Model {
translator_event.event_name,booking.qrcode 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
booking.status 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
WHERE booking.customer_id = '$user_id' AND booking.status IN(0,1,2,6) AND
(translator_event.language_code='$lang' OR translator_event.language_code='EN')
INNER JOIN translator_event ON translator_event.event_id=events.event_id
WHERE booking.customer_id = '$user_id' AND booking.status IN(0,1,2,6)
AND (translator_event.language_code='$lang' OR
translator_event.language_code='EN')
GROUP BY booking.id
ORDER BY booking.id DESC
LIMIT $page_limit, $per_page";
......@@ -1440,7 +1457,7 @@ class Webservice_model extends CI_Model {
$lang = $countryData['language_code'];
$sql = "SELECT privacy_policy,terms_and_conditions
FROM translator_policies WHERE language_code='$lang'";
FROM translator_policies WHERE (language_code='$lang' OR language_code='EN')";
$setDetails = $this->db->query($sql)->row_array();
$setDetails['contact_number'] = $settings['contact_number'];
......@@ -1553,7 +1570,8 @@ class Webservice_model extends CI_Model {
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'
WHERE CUST.customer_id='$user_id' AND LOC.status='1' AND
(TLOC.language_code='$lang' OR TLOC.language_code='EN')
GROUP BY LOC.id";
$locality = $this->db->query($sql)->result();
......@@ -2106,6 +2124,47 @@ class Webservice_model extends CI_Model {
return $res;
}
public function update_user_location($data){
$res = array('status'=>0,'message'=>'Ohh No!! Something Went South!!','code'=>'ER06');
try{
$user_id = $this->auth_token_get($data['auth_token']);
if($user_id > 0){
$this->db->update('customer',array('cust_lat'=>$data['latitude'],'cust_lng'=>$data['longitude']),array('customer_id'=>$user_id));
$res = array('status'=>1);
}else{
$res = array('status'=>0,'message'=>'User Authentication Error','code'=>'ER06');
}
}catch(Exception $e){
$res = array('status'=>0,'message'=>'Ohh No!! Something Went South','code'=>'ER06');
}
return $res;
}
public function get_nearby_users($data){
$res = array('status'=>'error','message'=>'Ohh No!! Something Went South!!','code'=>'ER06');
try{
$user_id = $this->auth_token_get($data['auth_token']);
if($user_id > 0){
$sql = "SELECT CUST.customer_id AS user_id,CUST.name,CUST.profile_image AS user_image,CUST.cust_lat AS latitude,CUST.cust_lng AS longitude, (((acos(sin((".$data['latitude']."*pi()/180)) * sin((CUST.cust_lat*pi()/180)) + cos((".$data['latitude']."*pi()/180)) * cos((CUST.cust_lat*pi()/180)) * cos(((".$data['longitude']." - CUST.cust_lng)*pi()/180))))*180/pi())*60*1.1515) as distance
FROM customer AS CUST
INNER JOIN users AS USR ON (USR.id = CUST.customer_id)
WHERE USR.user_type='3' AND USR.status='1' AND CUST.customer_id != '$user_id'
HAVING distance < 5";
$result = $this->db->query($sql);
if(!empty($result) && !empty($result = $result->result_array())){
$res = array('status'=>'success','data'=>$result);
} else {
$res = array('status'=>'error','message'=>'No Data Found','code'=>'ER12');
}
}else{
$res = array('status'=>'error','message'=>'Invalid User','code'=>'ER010');
}
}catch(Exception $e){
$res = array('status'=>'error','message'=>'Ohh No!! Something Went South','code'=>'ER08');
}
return $res;
}
public function get_hotel_city_list($data){
try{
$user_id = $this->auth_token_get($data['auth_token']);
......@@ -2442,6 +2501,96 @@ class Webservice_model extends CI_Model {
return $res;
}
public function flight_book($data){
try{
$user_id = $this->auth_token_get($data['auth_token']);
if($user_id > 0){
$settings = getSettings();
$data['first_name'] = str_replace(" ","<br>",$data['first_name']);
$data['last_name'] = str_replace(" ","<br>",$data['last_name']);
$data['title'] = str_replace(" ","<br>",$data['title']);
$data['dob'] = str_replace(" ","<br>",$data['dob']);
$data['gender'] = str_replace(" ","<br>",$data['gender']);
$data['issue_country'] = str_replace(" ","<br>",$data['issue_country']);
$data['passport_expiry'] = str_replace(" ","<br>",$data['passport_expiry']);
$data['passport_no'] = str_replace(" ","<br>",$data['passport_no']);
$url = "https://trawex.biz/api/flight_trawex/book?user_id=".$settings['trawex_user_id']."&user_password=".$settings['trawex_user_password']."&access=".$settings['trawex_access']."&ip_address=".$settings['trawex_ip_address']."&target=".$data['target']."&session_id=".$data['session_id']."&area_code=".$data['area_code']."&country_code=".$data['country_code']."&first_name=".$data['first_name']."&last_name=".$data['last_name']."&title=".$data['title']."&email_id=".$data['email_id']."&mobile_no=".$data['mobile_no']."&dob=".$data['dob']."&gender=".$data['gender']."&issue_country=".$data['issue_country']."&passport_expiry=".$data['passport_expiry']."&passport_no=".$data['passport_no']."&type=".$data['type']."&IsPassportMandatory=".$data['IsPassportMandatory']."&adult_flight=".$data['adult_flight']."&child_flight=".$data['child_flight']."&infant_flight=".$data['infant_flight']."&frequentFlyrNum=".$data['frequentFlyrNum']."&adultmealplan=".$data['adultmealplan']."&child_dob=".$data['child_dob']."&child_gender=".$data['child_gender']."&child_title=".$data['child_title']."&child_first_name=".$data['child_first_name']."&child_last_name=".$data['child_last_name']."&child_passport_expiry_date=".$data['child_passport_expiry_date']."&child_passport_no=".$data['child_passport_no']."&child_frequentFlyrNum=".$data['child_frequentFlyrNum']."&childMealplan=".$data['childMealplan']."&infant_dob=".$data['infant_dob']."&infant_gender=".$data['infant_gender']."&infant_first_name=".$data['infant_first_name']."&infant_last_name=".$data['infant_last_name']."&infant_title=".$data['infant_title']."&infantMealplan=".$data['infantMealplan']."&FareSourceCode=".$data['FareSourceCode']."&PostCode=".$data['PostCode']."";
$result = $this->passToJsonCurl($url,'');
if(!empty($result)){
$result = json_decode($result);
$res = array('status'=>1,'result'=>$result);
}else{
$res = array('status'=>0,'message'=>'No Data Found','code'=>'ER08');
}
}else{
$res = array('status'=>0,'message'=>'User Authentication Error','code'=>'ER06');
}
}catch(Exception $e){
$res = array('status'=>0,'message'=>'Ohh No!! Something Went South','code'=>'ER10');
}
return $res;
}
public function flight_ticket_order($data){
try{
$user_id = $this->auth_token_get($data['auth_token']);
if($user_id > 0){
$settings = getSettings();
$url = "https://trawex.biz/api/flight_trawex/ticket_order?user_id=".$settings['trawex_user_id']."&user_password=".$settings['trawex_user_password']."&access=".$settings['trawex_access']."&ip_address=".$settings['trawex_ip_address']."&UniqueID=".$data['UniqueID']."&target=".$data['target']."&session_id=".$data['session_id']."";
$result = $this->passToJsonCurl($url,'');
if(!empty($result)){
$result = json_decode($result);
$res = array('status'=>1,'result'=>$result);
}else{
$res = array('status'=>0,'message'=>'No data Found','code'=>'ER08');
}
}else{
$res = array('status'=>0,'message'=>'User Authentication Error','code'=>'ER06');
}
}catch(Exception $e){
$res = array('status'=>0,'message'=>'Ohh No!! Something Went South','code'=>'ER10');
}
return $res;
}
public function flight_trip_details($data){
try{
$user_id = $this->auth_token_get($data['auth_token']);
if($user_id > 0){
$settings = getSettings();
$url = "https://trawex.biz/api/flight_trawex/trip_details?user_id=".$settings['trawex_user_id']."&user_password=".$settings['trawex_user_password']."&access=".$settings['trawex_access']."&ip_address=".$settings['trawex_ip_address']."&UniqueID=".$data['UniqueID']."&target=".$data['target']."&session_id=".$data['session_id']."";
$result = $this->passToJsonCurl($url,'');
if(!empty($result)){
$result = json_decode($result);
$res = array('status'=>1,'result'=>$result);
}else{
$res = array('status'=>0,'message'=>'No Data Found','code'=>'ER08');
}
}else{
$res = array('status'=>0,'message'=>'User Authentication Error','code'=>'ER06');
}
}catch(Exception $e){
$res = array('status'=>0,'message'=>'Ohh No!! Something Went South','code'=>'ER10');
}
return $res;
}
public function cancel_flights($data){
try{
$user_id = $this->auth_token_get($data['auth_token']);
if($user_id > 0){
$settings = getSettings();
$url = "https://trawex.biz/api/flight_trawex/cancel_flights?user_id=".$settings['trawex_user_id']."&user_password=".$settings['trawex_user_password']."&access=".$settings['trawex_access']."&ip_address=".$settings['trawex_ip_address']."&UniqueID=".$data['UniqueID']."&target=".$data['target']."&session_id=".$data['session_id']."";
}else{
$res = array('status'=>0,'message'=>'User Authentication Error','code'=>'ER06');
}
}catch(Exception $e){
$res = array('status'=>0,'message'=>'Ohh No!! Something Went South','code'=>'ER10');
}
return $res;
}
public function passToJsonCurl($url='',$postData=array()){
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,$url);
......
......@@ -78,7 +78,9 @@
<i class="fa fa-fw fa-eye"></i>View
</a> <br>
<?php
if($this->session->userdata('user_type')==2 && $booking->book_status == '6'){
if(($this->session->userdata('user_type')==1 && $booking->provider_id==1 &&
$booking->book_status=='6') ||
($this->session->userdata('user_type')==2 && $booking->book_status=='6')){
$msg = "Are you sure to Aprove this booking ?";
$bookId = encode_param($booking->booking_id);
$param = "{'booking_id':'$bookId','alertMsg':'$msg'}"; ?>
......
......@@ -85,8 +85,8 @@
<div class="form-group">
<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)">
data-parsley-minlength="2" 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>
......
......@@ -68,7 +68,7 @@
<?= ($host->status == 1)?'Active':'De-activate' ?>
</th>
<?php if(in_array('2',$pAccess)||in_array('3',$pAccess)||in_array('4',$pAccess)){?> <td class="center">
<?php if(in_array('2',$pAccess)){ ?>
<?php if(in_array('NILL',$pAccess)){ ?>
<a class="btn btn-sm btn-primary"
href="<?= base_url('Host/editHostCategory/'.encode_param($host->host_cat_id))?>">
<i class="fa fa-fw fa-edit"></i>Edit
......
......@@ -59,12 +59,12 @@
<div class="col-md-3">
<input type="radio" class="required padLeft10" data-parsley-trigger="change"
required value="4" name="user_type" checked>
<label class="padLeft10">Staff User</label>
<label class="padLeft10">Staff</label>
</div>
<div class="col-md-5">
<input type="radio" class="required padLeft10" data-parsley-trigger="change"
required value="5" name="user_type">
<label class="padLeft10">Customer User</label>
<label class="padLeft10">Customer Care</label>
</div>
</div>
</div>
......
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