/
var
/
www
/
vhosts
/
nabawater
/
backend
/
controllers
/
/var/www/vhosts/nabawater/backend/controllers
mkdir
upload
Name
Size
Mode
Actions
ActivityLogController.php
1650
0644
edit
dl
rm
AddressTypeController.php
6466
0644
edit
dl
rm
AdminOrderReportController.php
3592
0644
edit
dl
rm
AdminUserController.php
12523
0644
edit
dl
rm
AdsController.php
9743
0644
edit
dl
rm
AreaController.php
7019
0644
edit
dl
rm
BannerController.php
7100
0644
edit
dl
rm
BranchController.php
33989
0644
edit
dl
rm
BranchReviewController.php
2209
0644
edit
dl
rm
CashBackPromotionsController.php
12051
0644
edit
dl
rm
CategoryController.php
8795
0644
edit
dl
rm
CityController.php
5518
0644
edit
dl
rm
CmsController.php
6026
0644
edit
dl
rm
ConfigurationController.php
10564
0644
edit
dl
rm
CountryController.php
5234
0644
edit
dl
rm
CouponController.php
15245
0644
edit
dl
rm
CuisineController.php
8207
0644
edit
dl
rm
DashboardController.php
5805
0644
edit
dl
rm
DeliveryAreaController.php
7506
0644
edit
dl
rm
DeliveryboyController.php
7662
0644
edit
dl
rm
DeliveryChargeSettingsController.php
4556
0644
edit
dl
rm
DriverOrderController.php
3585
0644
edit
dl
rm
EnquiryController.php
2541
0644
edit
dl
rm
FaqController.php
6571
0644
edit
dl
rm
IngredientController.php
6954
0644
edit
dl
rm
ItemController.php
34150
0644
edit
dl
rm
ItemImportController.php
3848
0644
edit
dl
rm
ItemIngredientGroupController.php
11105
0644
edit
dl
rm
ItemMappingController.php
12160
0644
edit
dl
rm
ItemTypeController.php
7445
0644
edit
dl
rm
LanguageController.php
3847
0644
edit
dl
rm
LoginController.php
1684
0644
edit
dl
rm
LoyalityPointController.php
6655
0644
edit
dl
rm
MallProductController.php
6398
0644
edit
dl
rm
MetaTagController.php
5039
0644
edit
dl
rm
MobileTranslationController.php
4451
0644
edit
dl
rm
NewsLetterController.php
5207
0664
edit
dl
rm
NewsletterController.php
5207
0644
edit
dl
rm
NewsletterSubscriberController.php
1747
0644
edit
dl
rm
NotificationController.php
8382
0644
edit
dl
rm
OrderController.php
93713
0644
edit
dl
rm
OrderMallProductController.php
7661
0644
edit
dl
rm
OrderParcelController.php
2752
0644
edit
dl
rm
OrderReportController.php
3904
0644
edit
dl
rm
ParcelItemTypeController.php
4357
0644
edit
dl
rm
PromotionController.php
6710
0644
edit
dl
rm
PushNotificationController.php
2990
0644
edit
dl
rm
RatingController.php
623
0644
edit
dl
rm
RefundRequestController.php
2964
0644
edit
dl
rm
reject-index.php
42931
0644
edit
dl
rm
RejectedOrderReportController.php
566
0644
edit
dl
rm
ReportController.php
42232
0644
edit
dl
rm
RoleController.php
5230
0644
edit
dl
rm
SiteController.php
357
0644
edit
dl
rm
StockController.php
2067
0644
edit
dl
rm
TaxController.php
4568
0644
edit
dl
rm
TodaySpecialController.php
7473
0644
edit
dl
rm
TopOrderItemReportController.php
3866
0644
edit
dl
rm
TopupController.php
4619
0644
edit
dl
rm
UnitController.php
7115
0644
edit
dl
rm
UserController.php
13566
0644
edit
dl
rm
UserLevelController.php
3787
0644
edit
dl
rm
VendorBankController.php
2880
0644
edit
dl
rm
VendorController.php
24491
0644
edit
dl
rm
VendorOrderReportController.php
5146
0644
edit
dl
rm
VendorPaymentController.php
6094
0644
edit
dl
rm
VendorTypeController.php
8428
0644
edit
dl
rm
WalletController.php
1791
0644
edit
dl
rm
WalletTranscationController.php
2282
0644
edit
dl
rm
WebpushNotificationController.php
2563
0644
edit
dl
rm
Edit:
/var/www/vhosts/nabawater/backend/controllers/reject-index.php
(42931B)
<?php use backend\components\CGridView; use backend\models\Order; use backend\models\AdminUser; use yii\helpers\Html; use yii\helpers\Url; use common\helpers\Com; use common\helpers\UploadHelper; use common\helpers\DateTimeHelper; use backend\models\Configuration; /* @var $this \yii\web\View */ /* @var $model \backend\models\Order*/ /* @var $dataProvider \backend\models\OrderSearch */ $this->title = yii::t('backend','Order Management'); ?> <div class="card order-icon"> <div class="card-body"> <div class="d-flex"> <div> <h4 class="card-title"><?= $this->title ?></h4> </div> <div class="ml-auto"> <!-- ?= Html::a( Yii::t('backend', 'Export'), ['export'], ['class' => 'btn btn-success btn-sm ']) ?> ?= Html::a( '<i class="fa fa-plus-circle"></i> ' . Yii::t('backend', 'Create'), ['create'], ['class' => 'btn btn-info btn-sm']) ?>--> </div> </div> <hr/> <?= $this->render('_search', ['model' => $searchModel]) ?> </div> <?php if(!AdminUser::isVendor()) { ?> <?php echo CGridView::widget([ 'dataProvider' => $dataProvider, 'filterModel' => $searchModel, 'hideFilterRow' => true, 'columns' => [ //['class' => \yii\grid\SerialColumn::className()], [ 'label' => Yii::t('backend', 'Order Number'), 'attribute' => 'order_number', 'format' => 'raw', 'value' => function ( \backend\models\Order $model ) { if ($model->order_type == $model::ORDER_TYPE_PICKUP) { $html = Html::img('https://s3.amazonaws.com/ontabee/ontabee/backend/pickup.png', [ 'alt' => 'Pickup', 'data-toggle' => 'tooltip', 'title' => '', 'data-original-title' => Yii::t('backend', 'Pickup'), ]); } else { $html = Html::img('https://s3.amazonaws.com/ontabee/ontabee/backend/delivery.png', [ 'alt' => 'Delivery', 'data-toggle' => 'tooltip', 'title' => '', 'data-original-title' => Yii::t('backend', 'Delivery'), ]); } $delivery_option = ''; if ((int)$model->delivery_option === $model::DELIVERY_OPTION_ASAP) { $delivery_option = Html::tag('span', 'ASAP', ['class' => 'badge badge-danger']); } else { $delivery_option = Html::tag('span', 'Later', ['class' => 'badge badge-warning']);; } return $model->order_number." - ".$html." - ".$delivery_option; } ], [ 'attribute' => 'username', 'filterInputOptions' => ['class' => 'form-control col-md-10'], 'value' => function (Order $model) { return $model->customer_email; } ], [ 'attribute' => 'branch_name', //'filterInputOptions' => ['class' => 'form-control col-md-12'], 'value' => function (Order $model) { return $model->branch_name; } ], [ 'attribute' => 'order_date_time', 'label' => yii::t('backend','Order Date Time'), 'value' => 'order_date_time', //'filterInputOptions' => ['class' => 'bootstrapMaterialDatePicker form-control' ], ], [ 'attribute' => 'order_total', 'label' => yii::t('backend','Order Total'), 'format' => 'raw', 'value' => function ( \backend\models\Order $model ) { return Com::setPriceFormat($model->order_total); } ], [ 'attribute' => 'order_status', 'label' => yii::t('backend','Order Status'), 'filter' => [ Order::ORDER_STATUS_ACCEPTED => 'Accepted', Order::ORDER_STATUS_PENDING => 'Pending', Order::ORDER_STATUS_PREPARED => 'Prepared', Order::ORDER_STATUS_ONTHEWAY => 'On the Way', Order::ORDER_STATUS_DELIVERED => 'Delivered', Order::ORDER_STATUS_REJECTED => 'Rejected', Order::ORDER_STATUS_DELIVERYBOY_ASSIGNED => 'Delivery Boy Assigned', Order::ORDER_STATUS_DELIVERYBOY_ACCEPTED => 'Delivery Boy Accepted', Order::ORDER_STATUS_DELIVERYBOY_REJECTED => 'Delivery Boy Rejected', Order::ORDER_STATUS_DELIVERYBOY_REQUESTED => 'Delivery Boy Requested', Order::ORDER_STATUS_READY_TO_PICKUP => 'Ready To Pickup' ], 'filterInputOptions' => [ 'class' => 'select2 form-control ', 'prompt' => 'All' ], 'format' => 'raw', 'value' => function (Order $model) { return Html::activeDropDownList($model, 'order_status', $model->getOrderStatus('', $model->order_status, $model->order_type), ['class'=>'select2 form-control order-status']); } ], [ 'attribute' => 'payment_status', 'filterInputOptions' => ['class' => 'select2 form-control', 'prompt'=> yii::t('backend','All')], 'filter' => [ Order::PAYMENT_STATUS_PENDING => yii::t('backend','Pending'), Order::PAYMENT_STATUS_SUCCESS => yii::t('backend','Success'), Order::PAYMENT_STATUS_FAILURE => yii::t('backend','Failure') ], 'format' => 'raw', 'value' => function (Order $model) { return Html::activeDropDownList($model, 'payment_status', $model->getPaymentStatus(), ['class' => 'select2 form-control col-md-10 payment-status'] ); } ], [ 'class' => \yii\grid\ActionColumn::className(), 'header' => Yii::t('backend', 'Actions'), 'template' => '{view}{assign}{track}', 'buttons' => [ 'view' => function ($url, $model, $key) { return Html::a('<i class="fa fa-eye" data-toggle="modal" title="View" data-target="#printpreview"></i>' ,'javascript:;', [ 'data-toggle' => 'tooltip', 'class' => 'quick-view' ]); }, 'assign' => function ($url, $model, $key) { if ($model->order_type == $model::ORDER_TYPE_PICKUP) { return ; } else { if ( ( (int)Order::ORDER_STATUS_DELIVERED != (int)$model->order_status && (int)Order::ORDER_STATUS_PENDING != (int)$model->order_status && (int)Order::ORDER_STATUS_REJECTED != (int)$model->order_status && (int)Order::ORDER_STATUS_ONTHEWAY != (int)$model->order_status && (int)Order::ORDER_STATUS_DELIVERED_TO_RIDER != (int)$model->order_status && (int)Order::ORDER_STATUS_DELIVERYBOY_ASSIGNED != (int)$model->order_status && (int)Order::ORDER_STATUS_DELIVERYBOY_ACCEPTED != (int)$model->order_status && (int)Order::ORDER_STATUS_PREPARED != (int)$model->order_status && (int)Order::ORDER_STATUS_READY_TO_PICKUP != (int)$model->order_status ) || (int)Order::ORDER_STATUS_DELIVERYBOY_REJECTED == (int)$model->order_status ) { return Html::a('<button class="btn btn-success" data-toggle="modal" data-target="#delivery_boy">'.Yii::t('backend', 'Assign').'</button>' ,'javascript:;', [ 'data-toggle' => 'tooltip', 'class' => 'assign-order' ]); } else { return ; } } }, 'track' => function ($url, $model, $key) { if ($model->order_type == $model::ORDER_TYPE_PICKUP) { return ; } else { if ( $model->order_status == $model::ORDER_STATUS_ONTHEWAY || $model->order_status == $model::ORDER_STATUS_DELIVERED_TO_RIDER) { return Html::a('<button class= "btn btn-info" data-toggle = "modal" data-target = "#track_delivery_boy">Track Delivery Boy</button>','javascript:;', [ 'class' => 'track-delivery-boy', 'onclick' => '$("#track_order_key").val("'. $key . '")' ]); } else { return; } } } ], ], ], ]); ?> <?php } else { ?> <?php echo CGridView::widget([ 'dataProvider' => $dataProvider, 'filterModel' => $searchModel, 'hideFilterRow' => true, 'columns' => [ //['class' => \yii\grid\SerialColumn::className()], [ 'label' => Yii::t('backend', 'Order Number'), 'attribute' => 'order_number', 'format' => 'raw', 'value' => function ( \backend\models\Order $model ) { if ($model->order_type == $model::ORDER_TYPE_PICKUP) { $html = Html::img('https://s3.amazonaws.com/ontabee/ontabee/backend/pickup.png', [ 'alt' => 'Pickup', 'data-toggle' => 'tooltip', 'title' => '', 'data-original-title' => Yii::t('backend', 'Pickup'), ]); } else { $html = Html::img('https://s3.amazonaws.com/ontabee/ontabee/backend/delivery.png', [ 'alt' => 'Delivery', 'data-toggle' => 'tooltip', 'title' => '', 'data-original-title' => Yii::t('backend', 'Delivery'), ]); } $delivery_option = ''; if ((int)$model->delivery_option === $model::DELIVERY_OPTION_ASAP) { $delivery_option = Html::tag('span', 'ASAP', ['class' => 'badge badge-danger']); } else { $delivery_option = Html::tag('span', 'Later', ['class' => 'badge badge-warning']);; } return $model->order_number." - ".$html." - ".$delivery_option; } ], [ 'attribute' => 'username', 'label' => yii::t('backend','Name'), 'filterInputOptions' => ['class' => 'form-control col-md-10'], 'value' => function (Order $model) { return 'Delivery Squad'; } ], [ 'attribute' => 'branch_name', //'filterInputOptions' => ['class' => 'form-control col-md-12'], 'value' => function (Order $model) { return $model->branch_name; } ], [ 'attribute' => 'order_date_time', 'label' => yii::t('backend','Order Date Time'), 'value' => 'order_date_time', //'filterInputOptions' => ['class' => 'bootstrapMaterialDatePicker form-control' ], ], [ 'attribute' => 'order_total', 'label' => yii::t('backend','Order Total'), 'format' => 'raw', 'value' => function ( \backend\models\Order $model ) { return Com::setPriceFormat($model->order_total); } ], [ 'attribute' => 'order_status', 'label' => yii::t('backend','Order Status'), 'filter' => [ Order::ORDER_STATUS_ACCEPTED => 'Accepted', Order::ORDER_STATUS_PENDING => 'Pending', Order::ORDER_STATUS_PREPARED => 'Prepared', Order::ORDER_STATUS_ONTHEWAY => 'On the Way', Order::ORDER_STATUS_DELIVERED => 'Delivered', Order::ORDER_STATUS_REJECTED => 'Rejected', Order::ORDER_STATUS_DELIVERYBOY_ASSIGNED => 'Delivery Boy Assigned', Order::ORDER_STATUS_DELIVERYBOY_ACCEPTED => 'Delivery Boy Accepted', Order::ORDER_STATUS_DELIVERYBOY_REJECTED => 'Delivery Boy Rejected', Order::ORDER_STATUS_DELIVERYBOY_REQUESTED => 'Delivery Boy Requested', Order::ORDER_STATUS_READY_TO_PICKUP => 'Ready To Pickup' ], 'filterInputOptions' => [ 'class' => 'select2 form-control ', 'prompt' => 'All' ], 'format' => 'raw', 'value' => function (Order $model) { return Html::activeDropDownList($model, 'order_status', $model->getOrderStatus('', $model->order_status, $model->order_type), ['class'=>'select2 form-control order-status']); } ], [ 'attribute' => 'payment_status', 'filterInputOptions' => ['class' => 'select2 form-control', 'prompt'=> yii::t('backend','All')], 'filter' => [ Order::PAYMENT_STATUS_PENDING => yii::t('backend','Pending'), Order::PAYMENT_STATUS_SUCCESS => yii::t('backend','Success'), Order::PAYMENT_STATUS_FAILURE => yii::t('backend','Failure') ], 'format' => 'raw', 'value' => function (Order $model) { return Html::activeDropDownList($model, 'payment_status', $model->getPaymentStatus(), ['class' => 'select2 form-control col-md-10 payment-status'] ); } ], [ 'class' => \yii\grid\ActionColumn::className(), 'header' => Yii::t('backend', 'Actions'), 'template' => '{view}{assign}{track}', 'buttons' => [ 'view' => function ($url, $model, $key) { return Html::a('<i class="fa fa-eye" data-toggle="modal" title="View" data-target="#printpreview"></i>' ,'javascript:;', [ 'data-toggle' => 'tooltip', 'class' => 'quick-view' ]); }, 'assign' => function ($url, $model, $key) { if ($model->order_type == $model::ORDER_TYPE_PICKUP) { return ; } else { if ( ( (int)Order::ORDER_STATUS_DELIVERED != (int)$model->order_status && (int)Order::ORDER_STATUS_PENDING != (int)$model->order_status && (int)Order::ORDER_STATUS_REJECTED != (int)$model->order_status && (int)Order::ORDER_STATUS_ONTHEWAY != (int)$model->order_status && (int)Order::ORDER_STATUS_DELIVERED_TO_RIDER != (int)$model->order_status && (int)Order::ORDER_STATUS_DELIVERYBOY_ASSIGNED != (int)$model->order_status && (int)Order::ORDER_STATUS_DELIVERYBOY_ACCEPTED != (int)$model->order_status && (int)Order::ORDER_STATUS_PREPARED != (int)$model->order_status && (int)Order::ORDER_STATUS_READY_TO_PICKUP != (int)$model->order_status ) || (int)Order::ORDER_STATUS_DELIVERYBOY_REJECTED == (int)$model->order_status ) { return Html::a('<button class="btn btn-success" data-toggle="modal" data-target="#delivery_boy">'.Yii::t('backend', 'Assign').'</button>' ,'javascript:;', [ 'data-toggle' => 'tooltip', 'class' => 'assign-order' ]); } else { return ; } } }, 'track' => function ($url, $model, $key) { if ($model->order_type == $model::ORDER_TYPE_PICKUP) { return ; } else { if ( $model->order_status == $model::ORDER_STATUS_ONTHEWAY || $model->order_status == $model::ORDER_STATUS_DELIVERED_TO_RIDER) { return Html::a('<button class= "btn btn-info" data-toggle = "modal" data-target = "#track_delivery_boy">Track Delivery Boy</button>','javascript:;', [ 'class' => 'track-delivery-boy', 'onclick' => '$("#track_order_key").val("'. $key . '")' ]); } else { return; } } } ], ], ], ]); ?> <?php } ?> </div> <!--modal-quick-view--> <div id="printpreview" class="modal fade" role="dialog" data-backdrop="static"> <div class="modal-dialog modal-lg"> <div class="modal-content"> <div class="modal-header"> <h4 class="modal-title"><b><?= yii::t('backend','Order Details' ) ?></b></h4> <button type="button" class="close" data-dismiss="modal">×</button> </div><!--modal-header--> <div class="modal-body" id="print_content"> </div><!--modal-body--> <div class="modal-footer"> <button id="print" onclick="printDiv('printableArea', this)" class="btn btn-default btn-outline" type="button"> <span><i class="fa fa-print"></i><?= Yii::t('backend', 'Print') ?></span></button> <button class="btn btn-danger" id ="cancel-order-modal" data-dismiss="modal" ><?= Yii::t('backend', 'Cancel') ?></button> </div><!--modal-footer--> </div><!--modal-content--> </div><!--modal-dialog--> </div><!--modal-quick-view--> <div id="delivery_boy" class="modal fade" role="dialog" data-backdrop="static"> <div class="modal-dialog modal-lg"> <div class="modal-content"> <div class="modal-header"> <h4 class="modal-title"><?= yii::t('backend','Delivery Boy Details') ?></h4> <button type="button" class="close" data-dismiss="modal">×</button> </div><!--modal-header--> <div class="modal-body"> </div><!--modal-body--> <div class="modal-footer"> <button class="btn btn-secondary" data-dismiss="modal"><?= yii::t('backend','Cancel' ) ?> </button> </div><!--modal-footer--> </div><!--modal-content--> </div><!--modal-dialog--> </div><!--modal-quick-view--> <div id="reject_order" class="modal fade" role="dialog" data-backdrop="static"> <div class="modal-dialog modal-lg"> <div class="modal-content"> <div class="modal-header"> <h4 class="modal-title"><?= yii::t('backend','Reject Reason') ?></h4> <button type="button" class="close" data-dismiss="modal">×</button> </div><!--modal-header--> <div class="modal-body"> <div class="row"> <div class="form-group"> <textarea id="reject_reason" name="reject_reason" class="form-control"></textarea> <input type="hidden" id="order_key" name="order_key" value=""> </div> </div> </div><!--modal-body--> <div class="modal-footer"> <button class="btn btn-primary" type="button" id="reject_save" ><?= yii::t('backend','Submit' ) ?> </button> </div><!--modal-footer--> </div><!--modal-content--> </div><!--modal-dialog--> </div><!--modal-quick-view--> <div id="track_delivery_boy" class="modal fade" role="dialog" data-backdrop="static"> <div class="modal-dialog modal-lg"> <div class="modal-content"> <div class="modal-header"> <h4 class="modal-title"><?= yii::t('backend','Live Delivery Boy Tracking') ?></h4> <button onclick="myStopFunction()" type="button" class="close" data-dismiss="modal">×</button> <input type="hidden" id="track_order_key" name="track_order_key"> </div><!--modal-header--> <div class="modal-body"> <div class="row" id="order_data"> </div> <div class="row"> <div id="map" style="width:100%;height:420px;"></div> </div> </div><!--modal-body--> <div class="modal-footer"> <button onclick="myStopFunction()" id="close-assign_order" class="btn btn-secondary" data-dismiss="modal"><?= yii::t('backend','Cancel' ) ?></button> </div><!--modal-footer--> </div><!--modal-content--> </div><!--modal-dialog--> </div><!--modal-quick-view--> <?php $this->registerJsFile("https://maps.googleapis.com/maps/api/js?key=".Configuration::get(Configuration::MAP_KEY)); ?> <script type="text/javascript"> runOnLoad(function () { $('#printpreview').on('show.bs.modal', function (e) { $(this).find('button#print').attr('data-key', $(e.relatedTarget).closest('tr').attr('data-key')) }); $('body').on('click', '.quick-view', function () { $this = $(this); Core.ajax({ url : '<?= Url::to(['order/quick-view']) ?>', data : { id : $this.closest('tr').attr('data-key')}, done : function (json) { if ( parseInt(json.status) === 1 ) { $('#printpreview .modal-body').html('show'); $('#printpreview .modal-body').html(json.data); return; } Core.handleInvalidServerResponse(json); } }); }); $('.order-status').on('change', function() { var status = $(this).val(); var key = $(this).closest('tr').attr('data-key'); Core.ajax({ url:'<?= Url::to(['order/get-order-status?env=dev'])?>', type: 'POST', data: { status: status, id:key }, done: function (json) { if (parseInt(json.status) === 1) { Core.success(json.msg); location.reload(); return; } else if(parseInt(json.status) === 6) { $('#reject_order').modal('show'); $('#order_key').val(json.order_key) $("#reject_order").toggle(); } else { Core.handleInvalidServerResponse(json); } } }); }); $('#reject_save').on('click', function() { var status = 6; var key = $("#order_key").val(); var reject_reason = $("#reject_reason").val(); if(reject_reason == '' || reject_reason == undefined) { Core.error('Please type reject reason'); return false; } Core.ajax({ url:'<?= Url::to(['order/reject-order-status'])?>', type: 'POST', data: { status: status, id:key , reject_reason:reject_reason }, done: function (json) { if (parseInt(json.status) === 1) { Core.success(json.msg); setTimeout(function() { location.reload(); },2000); } else { Core.handleInvalidServerResponse(json); } } }); }); $('.payment-status').on('change', function() { var status = $(this).val(); var key = $(this).closest('tr').attr('data-key'); Core.ajax({ url:'<?= Url::to(['order/get-payment-status'])?>', type: 'POST', data: { status: status, id:key }, done: function (json) { if (parseInt(json.status) === 1) { Core.success(json.msg); location.reload(); return; } Core.handleInvalidServerResponse(json); } }); }); $('body').on('click', '.assign-order', function () { $this = $(this); Core.ajax({ url : '<?= Url::to(['order/assign-order']) ?>', type : 'POST', data : { id : $this.closest('tr').attr('data-key')}, done : function (json) { if ( parseInt(json.status) === 1 ) { if (json.data === 1) { Core.success(json.msg);$('#delivery_boy').modal('hide'); $("#delivery_boy").removeClass("in"); $(".modal-backdrop").remove(); $("#delivery_boy").hide(); return false; } $('#delivery_boy .modal-body').html(''); $('#delivery_boy .modal-body').html(json.data); return; } Core.handleInvalidServerResponse(json); } }); }); $('body').on('click', '.delivery-boy-assign', function () { $this = $(this); Core.ajax({ url : '<?= Url::to(['order/assign-delivery-boy']) ?>', data : { id : $this.attr('data-key'), order_id : $this.attr('data-order-key')}, done : function (json) { if ( parseInt(json.status) === 1 ) { $('#delivery_boy .modal-body').html(''); $('#delivery_boy').modal('hide'); Core.success(json.msg); return; } Core.handleInvalidServerResponse(json); } }); }); $('.select2').select2(); var position = [11.000896, 76.948025]; var marker; var infowindow; $('#track_delivery_boy').on('shown.bs.modal', function () { $this = $(this); Core.ajax({ url: '<?= Url::to(['order/track?env=dev']) ?>', data: {id: $('#track_order_key').val()}, type: "post", done: function (json) { if (parseInt(json.status) === 1) { $('#track_delivery_boy .modal-body').slideDown(); if (json.count == 1) { mapTracking(json.count, json.locations); } return; } else { $('#track_delivery_boy').modal('hide'); } }, error: function () { $('#track_delivery_boy').modal('hide'); }, }); }); $('.bootstrapMaterialDatePicker').bootstrapMaterialDatePicker({ format: 'YYYY-MM-DD', clearButton: true, time:false }); }); function initialize(locations) { var driver_location; var count = ''; console.log(locations); window.icon = { //url: <?php //Com::res('img/deliveryboy_green.png', false) ?>, scaledSize: new google.maps.Size(45, 45), // scaled size origin: new google.maps.Point(0, 0), // origin anchor: new google.maps.Point(22, 45) // anchor }; window.bounds = new google.maps.LatLngBounds(); var mapProp = { center: new google.maps.LatLng(locations[0][1],locations[0][2]), zoom:10, mapTypeId:google.maps.MapTypeId.ROADMAP }; window.map=new google.maps.Map(document.getElementById("map"), mapProp); window.is_map_init = true; } function mapTracking(count, locations) { var count = 2; var locations = JSON.parse(locations); var mapProp = { mapTypeId: 'roadmap', center: new google.maps.LatLng(locations[0][1], locations[0][2]), zoom: 15, styles: [ {elementType: 'geometry', stylers: [{color: '#242f3e'}]}, {elementType: 'labels.text.stroke', stylers: [{color: '#242f3e'}]}, {elementType: 'labels.text.fill', stylers: [{color: '#fd7833'}]}, { featureType: 'administrative.locality', elementType: 'labels.text.fill', stylers: [{color: '#7ab338'}] }, { featureType: 'poi', elementType: 'labels.text.fill', stylers: [{color: '#d59563'}] }, { featureType: 'poi.park', elementType: 'geometry', stylers: [{color: '#263c3f'}] }, { featureType: 'poi.park', elementType: 'labels.text.fill', stylers: [{color: '#6b9a76'}] }, { featureType: 'road', elementType: 'geometry', stylers: [{color: '#38414e'}] }, { featureType: 'road', elementType: 'geometry.stroke', stylers: [{color: '#212a37'}] }, { featureType: 'road', elementType: 'labels.text.fill', stylers: [{color: '#9ca5b3'}] }, { featureType: 'road.highway', elementType: 'geometry', stylers: [{color: '#746855'}] }, { featureType: 'road.highway', elementType: 'geometry.stroke', stylers: [{color: '#1f2835'}] }, { featureType: 'road.highway', elementType: 'labels.text.fill', stylers: [{color: '#f3d19c'}] }, { featureType: 'transit', elementType: 'geometry', stylers: [{color: '#2f3948'}] }, { featureType: 'transit.station', elementType: 'labels.text.fill', stylers: [{color: '#d59563'}] }, { featureType: 'water', elementType: 'geometry', stylers: [{color: '#17263c'}] }, { featureType: 'water', elementType: 'labels.text.fill', stylers: [{color: '#515c6d'}] }, { featureType: 'water', elementType: 'labels.text.stroke', stylers: [{color: '#17263c'}] } ] }; var map = new google.maps.Map(document.getElementById("map"), mapProp); for (l = 0; l <= count; l++) { if (locations[l]['type'] == 1) { marker = new google.maps.Marker({ position: new google.maps.LatLng(locations[l][1], locations[l][2]), map: map, title: locations[l]['name'], animation:google.maps.Animation.BOUNCE }); infowindow = new google.maps.InfoWindow({map: map}); infowindow.setContent('<div class="custmer-div"><h4>Customer</h4><p style="margin-bottom: 10px;">Name : ' + locations[l]['name'] + '</p><p style="margin-bottom: 10px;" >Phone : ' + locations[l]['no'] + '</p></div>'); infowindow.open(map, marker); } else if (locations[l]['type'] == 2) { var orderKey = $('#track_order_key').val(); marker = new google.maps.Marker({ position: new google.maps.LatLng(locations[l][1], locations[l][2]), map: map, title: locations[l]['name'], }); infowindow = new google.maps.InfoWindow({map: map}); infowindow.setContent('<div class="custmer-div"><h4>Vendor</h4><p style="margin-bottom: 10px;">Name : ' + locations[l]['name'] + '</p><p>Phone : ' + locations[l]['no'] + '</p></div>'); infowindow.open(map, marker); } else if (locations[l]['type'] == 3) { const socket = io("<?= Configuration::get(Configuration::SOCKET_URL) ?>"); var order_number = locations[l]['order_no']; socket.on('connect',function() { window.driver_marker = []; window.drivers = []; }); var company_key = "<?= Configuration::get(Configuration::COMPANY_KEY) ?>"; var data_val = {"company_id":company_key, "order_key":orderKey}; socket.emit('driver_location',data_val); socket.on('driver_location',function(data) { marker = new google.maps.Marker({ position: new google.maps.LatLng(data.latitude, data.longitude), map: map, title: data.driver_name, }); infowindow = new google.maps.InfoWindow({map: map}); infowindow.setContent('<div class="custmer-div"><h4>Delivery Boy</h4><p>Name : ' + data.driver_name + '</p><p>Phone : ' + data.driver_phone + '</p></div>'); infowindow.open(map, marker); }); } } /* myInterval = setInterval(function () { $this = $(this); Core.ajax({ url: '<?= Url::to(['order/driver-lat-long?env=dev']) ?>', data: {id: $('#track_order_key').val()}, type: 'post', done: function (json) { if (parseInt(json.status) === 1) { if (json.count == 1) { updated_locations = JSON.parse(json.locations); result = [updated_locations[2][1], updated_locations[2][2]]; //transition(result); } return; } }, error: function () { }, }); // window.clearInterval(counter); //pause }, 3000);*/ } var numDeltas = 100; var delay = 10; //milliseconds var i = 0; var deltaLat; var deltaLng; function attachDetails(marker, details) { var infowindow = new google.maps.InfoWindow({ content: details }); marker.addListener('click', function () { infowindow.open(marker.get('googleMap'), marker); }); google.maps.event.addListener(marker.get('googleMap'), 'click', function () { infowindow.close(marker.get('googleMap'), marker); }); google.maps.event.addListener(infowindow, 'domready', function () { }); } window.myStopFunction = function () { //clearInterval(myInterval); /*resume*/ //count = 30; //counter = setInterval(timer, 1000); } window.printDiv = function (divName, $this) { var url = '<?= Url::to(['print', 'print' => 1, 'id' => '']) ?>' + $($this).attr('data-key'); window.open(url, 'Print') return false; } </script>
Save
cmd:
run