Advertisement
Guest User

c

a guest
Aug 29th, 2017
492
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 22.05 KB | None | 0 0
  1. <?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
  2.  
  3. class Api extends CI_Controller {
  4. function __construct(){
  5. parent::__construct();
  6.  
  7. date_default_timezone_set('Asia/Jakarta');
  8. error_reporting(E_ALL);
  9. ini_set('display_errors', 1);
  10.  
  11. }
  12.  
  13. private function check_sesi(){
  14. $token = $this->input->post('f_token');
  15. $device = $this->input->post('f_device');
  16.  
  17. //$token = 'a6bccee9979eef5c66532b5a36880d39';
  18. //$device = 'ffffffff-be46-4574-ffff-ffffbdceeae1';
  19.  
  20. if($token || $device){
  21. $sql = "SELECT * FROM sesi WHERE
  22. sesi_key = ? AND sesi_device = ?
  23. AND sesi_status = ?";
  24. // $this->db->where('sesi_key', $token);
  25. // $this->db->where('sesi_status', 1);
  26. // $this->db->where('sesi_device', $device);
  27. $query = $this->db->query($sql, array($token, $device, 1));
  28. if($query->num_rows() > 0){
  29. return true;
  30. }else{
  31. return false;
  32. }
  33. }else{
  34. return false;
  35. }
  36.  
  37.  
  38.  
  39. }
  40.  
  41. public function daftar($isDriver = ''){
  42. $data = array();
  43. $nama = $this->input->post('nama');
  44. $email = $this->input->post('email');
  45. $password = $this->input->post('password');
  46. $hp = $this->input->post('phone');
  47.  
  48. //check email in di database
  49. $this->db->where('user_email', $email);
  50. $this->db->where_not_in('user_status', array(9));
  51. $q = $this->db->get('user');
  52.  
  53. if($q->num_rows() > 0) {
  54. $data['result'] = 'false';
  55. $data['msg'] = 'Email anda sudah terdaftar, silahkan untuk login.';
  56. }else{
  57. $simpan = array();
  58.  
  59. if($isDriver != ''){
  60. $level = 2;
  61. }else{
  62. $level = 3;
  63. }
  64. $simpan['user_level'] = $level;
  65. $simpan['user_password'] = md5x($password);
  66. $simpan['user_nama'] = $nama;
  67. $simpan['user_email'] = $email;
  68. $simpan['user_register'] = date('Y-m-d H:i:s');
  69. $simpan['user_hp'] = $hp;
  70.  
  71. $status = $this->db->insert('user',$simpan);
  72.  
  73. if($status){
  74. $data['result'] = '1';
  75. $data['msg'] = 'Pendaftaran berhasil, silahkan untuk login';
  76.  
  77.  
  78.  
  79. }else{
  80. $data['result'] = 'false';
  81. $data['msg'] = 'Pendafatran gagal, silahkan coba kembali';
  82. }
  83.  
  84. }
  85.  
  86. #pre($this->db->last_query());
  87. echo json_encode($data);
  88. }
  89.  
  90.  
  91. public function send_notification($penerima, $message) {
  92. $api_key = "AAAAR0NS_kw:APA91bFbE0WWBpNn3bpm2TiPH26DajrmrQCbzcI7Tz9YX3CZNYniz8UL78PDyk2cL3JU_FhGQ6i93qQSwdousgAPBA735-4BIhidsbDk3m1b7KIKiGw1-aaEbObSGZmQYKy4bpbLpbR7 ";
  93.  
  94. $url = 'https://fcm.googleapis.com/fcm/send';
  95. $fields = array(
  96. 'registration_ids' => $penerima,
  97. 'data' => array( "message" => $message ),
  98. );
  99.  
  100.  
  101.  
  102.  
  103. $headers = array(
  104. 'Authorization: key=' . $api_key,
  105. 'Content-Type: application/json');
  106. //echo $headers ;
  107.  
  108. $ch = curl_init();
  109. curl_setopt($ch, CURLOPT_URL, $url);
  110. curl_setopt( $ch, CURLOPT_POST, true );
  111. curl_setopt($ch,CURLOPT_SSL_VERIFYHOST, 0);
  112. curl_setopt( $ch, CURLOPT_HTTPHEADER, $headers);
  113. curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
  114. curl_setopt( $ch, CURLOPT_POSTFIELDS, json_encode($fields));
  115. $result = curl_exec($ch);
  116.  
  117.  
  118. curl_close($ch);
  119.  
  120. return $result;
  121. }
  122.  
  123. public function login(){
  124. $data = array();
  125. $device = $this->input->post('device');
  126. $email = $this->input->post("f_email");
  127. $password = $this->input->post("f_password");
  128.  
  129. //$email = 'riyadi.rb@gmail.com';
  130. //$password = '123456';
  131.  
  132. if($email == '' || $password == ''){
  133. $data['result'] = 'false';
  134. $data['msg'] = 'Silahkan isi email dan atau password anda.';
  135. echo json_encode($data);
  136. return;
  137.  
  138. }
  139.  
  140. $this->db->where('user_email', $email);
  141. $this->db->where('user_password', md5x($password));
  142. $this->db->where('user_status', 1);
  143. $this->db->where('user_level', 3);
  144. $query = $this->db->get('user');
  145. if($query->num_rows() > 0){
  146. $q = $query->row();
  147.  
  148. //delete semua sesi user ini sebelumnya
  149. $this->db->where('id_user' , $q->id_user);
  150. $this->db->update('sesi', array('sesi_status' => 9));
  151. //create token
  152. $key = md5(date('Y-m-d H:i:s').$device);
  153. //masukkan kedlam tabel sesi
  154. $simpan = array();
  155. $simpan['sesi_key'] = $key;
  156. $simpan['id_user'] = $q->id_user;
  157. $simpan['sesi_device'] = $device;
  158. $status = $this->db->insert('sesi', $simpan);
  159. if($status){
  160. $data['result'] = 'true';
  161. $data['token'] = $key;
  162. $data['data'] = $q;
  163. $data['msg'] = 'Login berhasil.';
  164. $data['idUser'] = $q->id_user;
  165. }else{
  166. $data['result'] = 'false';
  167. $data['token'] = '';
  168. $data['idUser'] = '';
  169. $data['msg'] = 'Error create sesi login, Silahkan coba lagi.';
  170. }
  171. }else{
  172. $data['result'] = 'false';
  173. $data['msg'] = 'Username atau password salah.';
  174.  
  175. }
  176. echo json_encode($data);
  177. }
  178.  
  179. public function registerGcm(){
  180. $data = array();
  181.  
  182. $this->db->where('id_user', $this->input->post("f_idUser"));
  183. $data_simpan['user_gcm'] = $this->input->post("f_gcm");
  184. $simpan = $this->db->update('user', $data_simpan);
  185. if($simpan){
  186. $data['result'] = 'true';
  187. $data['msg'] = 'gcm berhasil disimpan';
  188. }else{
  189. $data['result'] = 'false';
  190. $data['msg'] = 'id Gcm gagal disimpan.';
  191. }
  192.  
  193. echo json_encode($data);
  194. }
  195.  
  196.  
  197. public function upload($folder = 'produk')
  198. {
  199. $status = "gagal, upload file";
  200. $file_element_name = $this->input->post('userfile');
  201. #pre($_FILES);
  202. $folder = 'img/'.$folder.'/';
  203.  
  204.  
  205. if (!empty($_FILES)) {
  206. buatDir($folder);
  207. $file_path = $folder . basename( $_FILES['userfile']['name']);
  208. //file_put_contents('f.txt',$file_path);
  209. if(move_uploaded_file($_FILES['userfile']['tmp_name'], $file_path)) {
  210. $status = "success";
  211. } else{
  212. $status = "fail";
  213. }
  214. }
  215. #pre($status);
  216. return $status;
  217. }
  218.  
  219. public function insert_booking(){
  220. $data = array();
  221.  
  222. if(!$this->check_sesi()){
  223. $data['result'] = 'false';
  224. $data['msg'] = 'Sesi login expired, silahkan login kembali';
  225. #pre($this->db->last_query());
  226. echo json_encode($data);
  227. return;
  228. }
  229.  
  230. $idUser = $this->input->post('f_idUser');
  231. $latAwal = $this->input->post('f_latAwal');
  232. $lngAwal = $this->input->post('f_lngAwal');
  233. $awal = $this->input->post('f_awal');
  234. $latAkhir = $this->input->post('f_latAkhir');
  235. $lngAkhir = $this->input->post('f_lngAkhir');
  236. $akhir = $this->input->post('f_akhir');
  237. $alamat = $this->input->post('f_alamat');
  238. $jarak = $this->input->post('f_jarak');
  239. $tarifUser =$this->input->post('f_tarif');
  240.  
  241. //$tarifUser = $jarak * 10000;
  242. // $tarifDriver = $jarak * 15000;
  243. $waktu = date('Y-m-d H:i:s');
  244. $simpan['booking_user'] = $idUser;
  245. $simpan['booking_tanggal'] = $waktu;
  246. $simpan['booking_from'] = $awal;
  247. $simpan['booking_from_lat'] = $latAwal;
  248. $simpan['booking_from_lng'] = $lngAwal;
  249. $simpan['booking_from_alamat'] = $alamat;
  250. $simpan['booking_tujuan'] = $akhir;
  251. $simpan['booking_tujuan_lat'] = $latAkhir;
  252. $simpan['booking_tujuan_lng'] = $lngAkhir;
  253. $simpan['booking_biaya_user'] = $tarifUser;
  254. $simpan['booking_biaya_driver'] = $tarifUser;
  255. $simpan['booking_jarak'] = $jarak;
  256.  
  257. $status = $this->db->insert('booking',$simpan);
  258.  
  259. if($status){
  260. $idBooking = $this->db->insert_id();
  261. $data['result'] = 'true';
  262. $data['msg'] = 'Booking berhasil';
  263.  
  264. $data['id_booking'] = $idBooking;
  265. $data['waktu']=$waktu ;
  266.  
  267. //kirimkan pushnotif kepada driver
  268. //$this->push_notif($idBooking);
  269. }else{
  270. $data['result'] = 'false';
  271. $data['msg'] = 'Booking gagal, silahkan coba kembali';
  272. }
  273.  
  274. #pre($this->db->last_query());
  275. echo json_encode($data);
  276. }
  277.  
  278. public function check_booking(){
  279. $data = array();
  280.  
  281. $id = $this->input->post('id_booking');
  282.  
  283.  
  284. if(!$this->check_sesi()){
  285. $data['result'] = 'false';
  286. $data['msg'] = 'Sesi login expired, silahkan login kembali';
  287. #pre($this->db->last_query());
  288. echo json_encode($data);
  289. return;
  290. }
  291.  
  292. if($id == ''){
  293. $data['result'] = 'false';
  294. $data['msg'] = 'Booking tidak dikenali';
  295. #pre($this->db->last_query());
  296. echo json_encode($data);
  297. return;
  298. }
  299. $simpan = array();
  300. $this->db->where('booking_status', 2);
  301. $this->db->where('id_booking', $id);
  302. $status = $this->db->get('booking');
  303.  
  304. if($status -> num_rows()> 0){
  305. $data['result'] = 'true';
  306. $data['msg'] = 'data ada';
  307. $data['data'] = $status -> result();
  308.  
  309. }else{
  310. $data['result'] = 'false';
  311. $data['msg'] = 'ndk da ';
  312. }
  313.  
  314. #pre($this->db->last_query());
  315. echo json_encode($data);
  316. }
  317.  
  318.  
  319. public function cancel_booking(){
  320. $data = array();
  321.  
  322. $id = $this->input->post('id_booking');
  323.  
  324.  
  325. if(!$this->check_sesi()){
  326. $data['result'] = 'false';
  327. $data['msg'] = 'Sesi login expired, silahkan login kembali';
  328. #pre($this->db->last_query());
  329. echo json_encode($data);
  330. return;
  331. }
  332.  
  333. if($id == ''){
  334. $data['result'] = 'false';
  335. $data['msg'] = 'Booking tidak dikenali';
  336. #pre($this->db->last_query());
  337. echo json_encode($data);
  338. return;
  339. }
  340. $simpan = array();
  341. $simpan['booking_status'] = 3; //3. Booking cancel
  342. $this->db->where('id_booking', $id);
  343. $status = $this->db->update('booking',$simpan);
  344.  
  345. if($status){
  346. $data['result'] = 'true';
  347. $data['msg'] = 'Booking berhasil dicancel';
  348. }else{
  349. $data['result'] = 'false';
  350. $data['msg'] = 'Cancel Booking gagal.';
  351. }
  352.  
  353. #pre($this->db->last_query());
  354. echo json_encode($data);
  355. }
  356.  
  357. public function get_booking(){
  358. $data = array();
  359.  
  360. // if(!$this->check_sesi()){
  361. // $data['result'] = 'false';
  362. // $data['msg'] = 'Sesi login expired, silahkan login kembali';
  363. // #pre($this->db->last_query());
  364. // echo json_encode($data);
  365. // return;
  366. // }
  367.  
  368. $status = $this->input->post('status');
  369. $idUser = $this->input->post('f_idUser');
  370. if($status == 1){
  371. $this->db->where_in('booking_status', array(1,2));
  372. }else if($status == 4){
  373. //$this->db->join('user', 'user.id_user=booking.booking_driver');
  374. $this->db->where('booking_status', $status);
  375. }else{
  376. $this->db->where('booking_status', $status);
  377. }
  378.  
  379. $this->db->where('booking_user', $idUser);
  380. $this->db->order_by('id_booking', 'DESC');
  381. $q = $this->db->get('booking ');
  382.  
  383. if($q->num_rows() > 0){
  384. $data['result'] = 'true';
  385. $data['msg'] = 'Data booking ada';
  386. $data['data'] = $q->result();
  387. }else{
  388. $data['result'] = 'false';
  389. $data['msg'] = 'Data booking tidak ada.';
  390. }
  391.  
  392. #pre($this->db->last_query());
  393. echo json_encode($data);
  394. }
  395.  
  396. // ===================== xrb21 | riyadi.rb@gmail.com ======================
  397. // Training Android "5 Hari Membangun aplikasi Ojeg Online" IMASTUDIO Jogja
  398. // Yogyakarta, 8-12 Feb 2016
  399.  
  400. // API for DRIVER
  401. public function login_driver(){
  402. $data = array();
  403. $device = $this->input->post('device');
  404. $email = $this->input->post("f_email");
  405. $password = $this->input->post("f_password");
  406.  
  407.  
  408. //$email = 'riyadi.rb@gmail.com';
  409. //$password = '123456';
  410.  
  411. if($email == '' || $password == ''){
  412. $data['result'] = 'false';
  413. $data['msg'] = 'Silahkan isi email dan atau password anda.';
  414. echo json_encode($data);
  415. return;
  416.  
  417. }
  418.  
  419. $this->db->where('user_email', $email);
  420. $this->db->where('user_password', md5x($password));
  421. $this->db->where('user_level', 2);
  422. $this->db->where('user_status', 1);
  423. $query = $this->db->get('user');
  424. if($query->num_rows() > 0){
  425. $q = $query->row();
  426.  
  427. //delete semua sesi user ini sebelumnya
  428. $this->db->where('id_user' , $q->id_user);
  429. $this->db->update('sesi', array('sesi_status' => 9));
  430. //create token
  431. $key = md5(date('Y-m-d H:i:s').$device);
  432. //masukkan kedlam tabel sesi
  433. $simpan = array();
  434. $simpan['sesi_key'] = $key;
  435. $simpan['id_user'] = $q->id_user;
  436. $simpan['sesi_device'] = $device;
  437. $status = $this->db->insert('sesi', $simpan);
  438. if($status){
  439. $data['result'] = 'true';
  440. $data['token'] = $key;
  441. $data['data'] = $q;
  442. $data['msg'] = 'Login berhasil.';
  443. $data['idUser'] = $q->id_user;
  444. }else{
  445. $data['result'] = 'false';
  446. $data['token'] = '';
  447. $data['idUser'] = '';
  448. $data['msg'] = 'Error create sesi login, Silahkan coba lagi.';
  449. }
  450. }else{
  451. $data['result'] = 'false';
  452. $data['msg'] = 'Username atau password salah.';
  453.  
  454. }
  455. echo json_encode($data);
  456. }
  457.  
  458. public function get_request_booking(){
  459. $data = array();
  460.  
  461. if(!$this->check_sesi()){
  462. $data['result'] = 'false';
  463. $data['msg'] = 'Sesi login expired, silahkan login kembali';
  464. #pre($this->db->last_query());
  465. echo json_encode($data);
  466. return;
  467. }
  468.  
  469. $this->db->join('user', 'user.id_user=booking.booking_user');
  470. $this->db->where('booking_status', 1);
  471. $this->db->order_by('id_booking', 'DESC');
  472. $q = $this->db->get('booking');
  473.  
  474. if($q->num_rows() > 0){
  475. $data['result'] = 'true';
  476. $data['msg'] = 'Data booking ada';
  477. $data['data'] = $q->result();
  478. }else{
  479. $data['result'] = 'false';
  480. $data['msg'] = 'Data booking tidak ada.';
  481. }
  482.  
  483. #pre($this->db->last_query());
  484. echo json_encode($data);
  485. }
  486.  
  487. public function booking_Driver(){
  488. $data = array();
  489. //inputan id driver
  490. $iduser = $this->input->post('f_idUser');
  491.  
  492. //get data table booking sesuai dengan id driver dan booking status 2
  493. $this->db->where('booking_driver',$iduser);
  494. $this->db->where('booking_status',2);
  495. $q =$this->db->get('booking');
  496.  
  497. if($q-> num_rows>0){
  498. $data['result'] = 'false';
  499. $data['msg'] = 'silakan di complete orderan lama anda dulu';
  500. }
  501. else{
  502. $data['result'] = 'true';
  503. $data['msg'] = 'ok';
  504.  
  505.  
  506. }
  507. echo json_encode($data);
  508.  
  509.  
  510. }
  511.  
  512. public function take_booking(){
  513. $data = array();
  514. $id =$this->input->post('idbooking');
  515. $idUser = $this->input->post('f_idUser');
  516. if(!$this->check_sesi()){
  517. $data['result'] = 'false';
  518. $data['msg'] = 'Sesi login expired, silahkan login kembali';
  519. #pre($this->db->last_query());
  520. echo json_encode($data);
  521. return;
  522. }
  523.  
  524. if($id == ''){
  525. $data['result'] = 'false';
  526. $data['msg'] = 'Booking tidak dikenali';
  527. #pre($this->db->last_query());
  528. echo json_encode($data);
  529. return;
  530. }
  531.  
  532. //check apakah booking sudah ada yang ambil atau tidak
  533. $this->db->where('id_booking', $id);
  534. $this->db->where('booking_status', 1);
  535. $q = $this->db->get('booking');
  536. if($q->num_rows() == 0){
  537. $data['result'] = 'false';
  538. $data['msg'] = 'Booking sudah ada yang take,coba booking yang lainnya.';
  539. #pre($this->db->last_query());
  540. echo json_encode($data);
  541. return;
  542. }
  543.  
  544.  
  545. $simpan = array();
  546. $simpan['booking_status'] = 2; //2. Booking diambil oleh driver
  547. $simpan['booking_driver'] = $idUser;
  548. $simpan['booking_take_tanggal'] = date('Y-m-d H:i:s');
  549. $this->db->where('id_booking', $id);
  550. $status = $this->db->update('booking',$simpan);
  551.  
  552. if($status){
  553. $data['result'] = 'true';
  554. $data['msg'] = 'Take Booking berhasil';
  555. }else{
  556. $data['result'] = 'false';
  557. $data['msg'] = 'Take Booking gagal.';
  558. }
  559.  
  560. #pre($this->db->last_query());
  561. echo json_encode($data);
  562. }
  563.  
  564. public function get_handle_booking(){
  565. $data = array();
  566.  
  567. if(!$this->check_sesi()){
  568. $data['result'] = 'false';
  569. $data['msg'] = 'Sesi login expired, silahkan login kembali';
  570. #pre($this->db->last_query());
  571. echo json_encode($data);
  572. return;
  573. }
  574.  
  575. $idUser = $this->input->post('f_idUser');
  576. $this->db->join('user', 'user.id_user=booking.booking_user');
  577. $this->db->where('booking_status', 2);
  578. $this->db->where('booking_driver', $idUser);
  579. $this->db->order_by('id_booking', 'DESC');
  580. $q = $this->db->get('booking');
  581.  
  582. if($q->num_rows() > 0){
  583. $data['result'] = 'true';
  584. $data['msg'] = 'Data handle booking ada';
  585. $data['data'] = $q->result();
  586. }else{
  587. $data['result'] = 'false';
  588. $data['msg'] = 'Data handle booking tidak ada.';
  589. }
  590.  
  591. #pre($this->db->last_query());
  592. echo json_encode($data);
  593. }
  594.  
  595. public function complete_booking(){
  596. $data = array();
  597.  
  598. $id =$this->input->post('idbooking');
  599. if(!$this->check_sesi()){
  600. $data['result'] = 'false';
  601. $data['msg'] = 'Sesi login expired, silahkan login kembali';
  602. #pre($this->db->last_query());
  603. echo json_encode($data);
  604. return;
  605. }
  606.  
  607. if($id == ''){
  608. $data['result'] = 'false';
  609. $data['msg'] = 'Booking tidak dikenali';
  610. #pre($this->db->last_query());
  611. echo json_encode($data);
  612. return;
  613. }
  614.  
  615. //check apakah booking sudah ada yang ambil atau tidak
  616. $idUser = $this->input->post('f_idUser');
  617. $this->db->where('id_booking', $id);
  618. $this->db->where('booking_status', 2);
  619. $this->db->where('booking_driver', $idUser);
  620. $q = $this->db->get('booking');
  621. if($q->num_rows() == 0){
  622. $data['result'] = 'false';
  623. $data['msg'] = 'Ini bukan data booking ada.';
  624. #pre($this->db->last_query());
  625. echo json_encode($data);
  626. return;
  627. }
  628.  
  629. $simpan = array();
  630. $simpan['booking_status'] = 4; //2. Booking diambil oleh driver
  631. $simpan['booking_complete_tanggal'] = date('Y-m-d H:i:s');
  632. $this->db->where('id_booking', $id);
  633. $status = $this->db->update('booking',$simpan);
  634.  
  635. if($status){
  636. $data['result'] = 'true';
  637. $data['msg'] = 'Booking Completed';
  638. }else{
  639. $data['result'] = 'false';
  640. $data['msg'] = 'Complete booking gagal.';
  641. }
  642.  
  643. #pre($this->db->last_query());
  644. echo json_encode($data);
  645. }
  646.  
  647. public function get_complete_booking(){
  648. $data = array();
  649.  
  650. if(!$this->check_sesi()){
  651. $data['result'] = 'false';
  652. $data['msg'] = 'Sesi login expired, silahkan login kembali';
  653. #pre($this->db->last_query());
  654. echo json_encode($data);
  655. return;
  656. }
  657.  
  658. $idUser = $this->input->post('f_idUser');
  659. $this->db->join('user', 'user.id_user=booking.booking_user');
  660. $this->db->where('booking_status', 4);
  661. $this->db->where('booking_driver', $idUser);
  662. $this->db->order_by('id_booking', 'DESC');
  663. $q = $this->db->get('booking');
  664.  
  665. if($q->num_rows() > 0){
  666. $data['result'] = 'true';
  667. $data['msg'] = 'Data complete ada';
  668. $data['data'] = $q->result();
  669. }else{
  670. $data['result'] = 'false';
  671. $data['msg'] = 'Data complete tidak ada.';
  672. }
  673.  
  674. #pre($this->db->last_query());
  675. echo json_encode($data);
  676. }
  677.  
  678. //send totikasi kepada driver
  679. public function push_notif($idBooking){
  680. $last = $idBooking;
  681. if (isCurl()){
  682. //ambil semua id dari data gcm
  683. $datax = array();
  684. $this->db->join('user', 'user.id_user=booking.booking_user');
  685. $this->db->where('booking_status', 1);
  686. $this->db->where('id_booking', $idBooking);
  687. $q = $this->db->get('booking');
  688.  
  689. if($q->num_rows() > 0){
  690. $datax['result'] = 'true';
  691. $datax['msg'] = 'Data booking ada';
  692. $datax['data'] = $q->row();
  693. }else{
  694. $datax['result'] = 'false';
  695. $datax['msg'] = 'Data booking tidak ada.';
  696. }
  697.  
  698.  
  699. //echo json_encode($datax);
  700.  
  701. $this->db->where('user_level', 2);
  702. $this->db->where('user_status', 1);
  703. $this->db->where_not_in('user_gcm', array(""));
  704. $qq = $this->db->get('user');
  705. #pre($datax);
  706. if($qq->num_rows() > 0){
  707.  
  708. $receivers = array();
  709. $message = array("datax" => $datax);
  710.  
  711. echo $message ;
  712. foreach ($qq->result() as $r) {
  713. $receivers[] = $r->user_gcm;
  714. }
  715. #pre($receivers);
  716. $hasil = $this->send_notification($receivers, $message);
  717. #pre($hasil);
  718. }else{
  719. echo "data tidak ada";
  720. }
  721. }else{
  722. $pesan .= ' Curl tidak aktif tidak bisa kirim notifikasi berita ke user.';
  723. }
  724. }
  725.  
  726. public function insert_posisi(){
  727. $data = array();
  728.  
  729. if(!$this->check_sesi()){
  730. $data['result'] = 'false';
  731. $data['msg'] = 'Sesi login expired, silahkan login kembali';
  732. #pre($this->db->last_query());
  733. echo json_encode($data);
  734. return;
  735. }
  736.  
  737. $idUser = $this->input->post('f_idUser');
  738. $lat = $this->input->post('f_lat');
  739. $lng = $this->input->post('f_lng');
  740.  
  741. $waktu = date('Y-m-d H:i:s');
  742. $simpan['tracking_driver'] = $idUser;
  743. $simpan['tracking_waktu'] = $waktu;
  744. $simpan['tracking_lat'] = $lat;
  745. $simpan['tracking_lng'] = $lng;
  746.  
  747. $status = $this->db->insert('tracking',$simpan);
  748.  
  749. if($status){
  750. $data['result'] = 'true';
  751. $data['msg'] = 'input tracking berhasil';
  752. }else{
  753. $data['result'] = 'false';
  754. $data['msg'] = 'input tracking gagal, silahkan coba kembali';
  755. }
  756.  
  757. #pre($this->db->last_query());
  758. echo json_encode($data);
  759. }
  760.  
  761. public function get_driver(){
  762. $data = array();
  763.  
  764. $this->db->join('user', 'user.id_user=tracking.tracking_driver');
  765. $this->db->where('tracking_status', 1);
  766. $this->db->order_by('id_tracking', 'DESC');
  767. $this->db->group_by('tracking_driver');
  768. $q = $this->db->get('tracking');
  769.  
  770. if($q->num_rows() > 0){
  771. $data['result'] = 'true';
  772. $data['msg'] = 'Data driver ada';
  773. $data['data'] = $q->result();
  774. }else{
  775. $data['result'] = 'false';
  776. $data['msg'] = 'Data driver tidak ada.';
  777. }
  778.  
  779. #pre($this->db->last_query());
  780. echo json_encode($data);
  781. }
  782.  
  783. public function insert_review(){
  784. $data = array();
  785.  
  786. if(!$this->check_sesi()){
  787. $data['result'] = 'false';
  788. $data['msg'] = 'Sesi login expired, silahkan login kembali';
  789. #pre($this->db->last_query());
  790. echo json_encode($data);
  791. return;
  792. }
  793.  
  794. $idUser = $this->input->post('f_idUser');
  795. $driver = $this->input->post('f_driver');
  796. $idBooking = $this->input->post('f_idBooking');
  797. $rating = $this->input->post('f_ratting');
  798. $comment = $this->input->post('f_comment');
  799.  
  800. $waktu = date('Y-m-d H:i:s');
  801. $simpan['review_driver'] = $driver;
  802. $simpan['review_user'] = $idUser;
  803. $simpan['review_waktu'] = $waktu;
  804. $simpan['review_rating'] = $rating;
  805. $simpan['review_komentar'] = $comment;
  806. $simpan['review_booking'] = $idBooking;
  807.  
  808. $status = $this->db->insert('review',$simpan);
  809.  
  810. if($status){
  811. $data['result'] = 'true';
  812. $data['msg'] = 'input review berhasil';
  813. }else{
  814. $data['result'] = 'false';
  815. $data['msg'] = 'input review gagal, silahkan coba kembali';
  816. }
  817.  
  818. #pre($this->db->last_query());
  819. echo json_encode($data);
  820. }
  821.  
  822.  
  823.  
  824. }
  825.  
  826. /* End of file welcome.php */
  827. /* Location: ./application/controllers/welcome.php */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement