Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- class Orders extends CI_Model {
- public function __construct(){
- $this->load->model('Apa');
- $this->load->model('Cartel');
- }
- public function cinfo($id = null){
- $id = ($id == null ? $this->session->userdata('auth') : $id);
- $orderan = $this->db->get_where('orderan',array('user_id' => $id))->num_rows();
- $ordersukses = $this->db->get_where('orderan',array('user_id' => $id,'status' => 'completed'))->num_rows();
- $array = array('biasa' => $orderan,'sukses' => $ordersukses);
- return $array;
- }
- public function _InfoOrder($id){
- foreach($this->db->query("SELECT * FROM orderan where id = '$id'")->result() as $order);
- if(!$id){
- return array('error' => true,'msg' => "Order ID Not Found");
- } else if(!$order){
- return array('error' => true,"msg" => "Order ID Not Found");
- } else {
- return array('start_count' => (int)$order->start,'status' => $order->status ,'remains' => (int)$order->remains);
- }
- }
- public function UpdateAll(){
- foreach($this->db->query("SELECT * FROM orderan WHERE status <> 'Completed' AND status <> 'Canceled' AND status <> 'Partial'")->result() as $data){
- echo $data->id." - ".$data->status." - ".$this->_CheckOrder($data->id);
- }
- }
- public function _CheckOrder($id){
- $order = false;
- foreach($this->db->query("SELECT * FROM orderan where id = '$id'")->result() as $order);
- if(!$id){
- return false;
- } else if(!$order){
- return false;
- } else if($order->status == "Completed" || $order->status == "Partial" || $order->status == "Canceled" ){
- return false;
- } else {
- echo "CALLED";
- foreach($this->db->query("SELECT * FROM service where id = '$order->service_id'")->result() as $service);
- $aps = $service->api_id;
- if($aps !== '0'){
- foreach($this->db->query("SELECT * FROM api where id ='$aps'")->result() as $api);
- if($api->type == 'Basic'){
- $this->Apa->set($api->url,$api->api);
- $data= $this->Apa->status($order->order_id_pro);
- if(array_key_exists('status',$data)) {
- $status= $data->status;
- if($status == 'Pending'){
- $s = "Pending";
- } else if($status == "In progress"){
- $s = "Processing";
- } else if($status == "Completed"){
- $s = "Completed";
- } else if($status == "Partial"){
- $s = "Partial";
- } else if($status == "Canceled"){
- $s = "Canceled";
- } else {
- $s = $status;
- }
- if($s == "Canceled"){
- $refund = $order->quantity*$service->price;
- $this->db->query("UPDATE user set balance = balance + $refund WHERE id ='$order->user_id'");
- } else if($status == "Partial"){
- $refund = $data->remains*$service->price;
- $this->db->query("UPDATE user set balance = balance + $refund WHERE id ='$order->user_id'");
- }
- $this->db->where('id',$id)->update('orderan',array('status' => $s,'start' => $data->start_count,'remains' => $data->remains));
- return $s;
- } else {
- return $s;
- }
- } else if($api->type == 'IrvanKede'){
- $this->Apa->set($api->url,$api->api);
- $data= $this->Apa->status_irvan($order->order_id_pro);
- if(array_key_exists('status',$data)) {
- $status= $data->data->status;
- if($status == 'Pending'){
- $s = "Pending";
- } else if($status == "Processing"){
- $s = "In progress";
- } else if($status == "Success"){
- $s = "Completed";
- } else if($status == "Partial"){
- $s = "Partial";
- } else if($status == "Error"){
- $s = "Canceled";
- } else {
- $s = $status;
- }
- if($s == "Canceled"){
- $refund = $order->quantity*$service->price;
- $this->db->query("UPDATE user set balance = balance + $refund WHERE id ='$order->user_id'");
- } else if($status == "Partial"){
- $refund = $data->remains*$service->price;
- $this->db->query("UPDATE user set balance = balance + $refund WHERE id ='$order->user_id'");
- }
- $this->db->where('id',$id)->update('orderan',array('status' => $s,'start' => $data->data->start_count,'remains' => $data->data->remains_count));
- return $s;
- } else {
- return $s;
- }
- } else if($api->type == '2Cartel'){
- $Arrder = array('KEY' => $order->order_id_pro);
- $this->Cartel->set($api->url,$api->api);
- $data= $this->Cartel->get("orders/status",$Arrder);
- if($data['error'] == false){
- $status = $data['data']['result'][$order->order_id_pro][0]['status'];
- if($status == '0'){
- $s = "Pending";
- } else if($status == "1"){
- $s = "Processing";
- } else if($status == "2"){
- $s = "Processing";
- } else if($status == "3"){
- $s = "Processing";
- } else if($status == "4"){
- $s = "Completed";
- } else if($status == "5"){
- $s = "Canceled";
- } else if($status == "6"){
- $s = "Canceled";
- } else {
- print_r($data);
- }
- if($status == "5" || $status == "6"){
- $refund = $order->quantity*$service->price;
- $this->db->query("UPDATE user set balance = balance + $refund WHERE id ='$order->user_id'");
- }
- $this->db->where('id',$id)->update('orderan',array('status' => $s));
- return $s;
- } else {
- return false;
- }
- }
- }
- }
- }
- public function _AddOrder($service,$link,$quantity,$key = null){
- if(!$key){
- if(!$this->session->userdata('auth')){
- return true;
- }
- }
- $s = $service;
- $q = $quantity;
- $l = $link;
- $service = array();
- $api = array();
- $User = ($key == null ? $this->Users->info() : $this->Users->info_token($key));
- if(!$User){
- return true;
- }
- foreach($this->db->query("SELECT * FROM service where id = ? AND status = ?",array($s,"0"))->result() as $service);
- if(!$s || !$q || !$l){
- $res = array('error' => true,"msg" => "Empty Data");
- } else if(is_int($q) || is_int($s) || !is_string($l)){
- $res = array('error' => true,"msg" => "Invalid Data ");
- } else if(count($service) == 0){
- $res = array('error' => true,"msg" => "Service Not Found");
- } else if($User->balance < $service->price*$q){
- $res = array('error' => true,"msg" => "Insufficient balance");
- } else if($q < $service->min-1){
- $res = array('error' => true,"msg" => "Invalid Quantity");
- } else if($q > $service->max){
- $res = array('error' => true,"msg" => "Invalid Quantity");
- } else {
- if($service->api_id !== '0'){
- $aps = $service->api_id;
- foreach($this->db->query("SELECT * FROM api where id ='$aps'")->result() as $api);
- if($api->type == 'Basic'){
- if($service->type == 'Default'){
- $Arrder = array('service' => $service->pro_id, 'link' => $l, 'quantity' => $q);
- }
- $this->Apa->set($api->url,$api->api);
- $data = $this->Apa->order($Arrder);
- if(array_key_exists('order',$data)){
- $rand = rand(11111,99999);
- $order_id = $data->order;
- $res = array('error' => false,'id' => $rand,"msg" => "OK","price" => $service->price*$q,"service" => $service->name);
- $this->db->insert('orderan',array('user_id' => $User->id,'service_id' => $s,'target' => $l,'quantity' => $q,'extends_form' => '','date' => date('Y-m-d H:i:s'),'data'=> "PRO",'status' => "Pending","order_id_pro" => $order_id));
- $this->db->where('id',$User->id)->update('user',array('balance' => $User->balance - $q*$service->price));
- $this->db->query("UPDATE user set balance_used = balance_used + $q*$service->price WHERE id = '$User->id'");
- } else {
- $res = array('error' => true,'msg' =>
- //"Can't Contacting Server"
- $data->error
- );
- }
- } else if($api->type == 'IrvanKede'){
- if($service->type == 'Default'){
- $Arrder = array('service' => $service->pro_id, 'data' => $l, 'quantity' => $q);
- }
- $this->Apa->set($api->url,$api->api);
- $data = $this->Apa->order_irvan($Arrder);
- if($data->status){
- $rand = rand(11111,99999);
- $order_id = $data->data->order_id;
- $res = array('error' => false,'id' => $rand,"msg" => "OK","price" => $service->price*$q,"service" => $service->name);
- $this->db->insert('orderan',array('user_id' => $User->id,'service_id' => $s,'target' => $l,'quantity' => $q,'extends_form' => '','date' => date('Y-m-d H:i:s'),'data'=> "PRO",'status' => "Pending","order_id_pro" => $order_id));
- $this->db->where('id',$User->id)->update('user',array('balance' => $User->balance - $q*$service->price));
- $this->db->query("UPDATE user set balance_used = balance_used + $q*$service->price WHERE id = '$User->id'");
- } else {
- $res = array('error' => true,'msg' =>
- // "Silahkan Hubungi Admin"
- $data->data->msg
- );
- }
- } else if($api->type == '2Cartel'){
- if($service->type == 'Default'){
- $Arrder = array('type' => $service->pro_id,'link' => $l,'quantity' => $q);
- }
- $this->Cartel->set($api->url,$api->api);
- $data= $this->Cartel->post("orders/add",$Arrder);
- if($data['error'] == false){
- $rand = rand(11111,99999);
- $order_id = $data['orders']['add'][0]['order_key'];
- $res = array('error' => false,'id' => $rand,"msg" => "OK","price" => $service->price*$q,"service" => $service->name);
- $this->db->insert('orderan',array('user_id' => $User->id,'service_id' => $s,'target' => $l,'quantity' => $q,'extends_form' => '','date' => date('Y-m-d H:i:s'),'data'=> "PRO",'status' => "Pending","order_id_pro" => $order_id));
- $this->db->where('id',$User->id)->update('user',array('balance' => $User->balance - $q*$service->price));
- $this->db->query("UPDATE user set balance_used = balance_used + $q*$service->price WHERE id = '$User->id'");
- } else {
- $error = $data['msg'];
- if($error == "Saldo Tidak Cukup"){
- $error = "Silahkan Kontak Admin";
- }
- $res = array('error' => true,'msg' => "Server ERROR");
- }
- }
- } else {
- $rand = rand(11111,99999);
- if($service->id == "480"){
- $Date = date('Y-m-d H:i:s');
- $D = new DateTime($Date);
- $D->modify("+$q day");
- $Date = $D->format("Y-m-d H:i:s");
- $this->db->insert('autolikes_user',array('username' => $l,'expired_date' => $Date));
- $this->db->insert('orderan',array('id' => $rand,'user_id' => $User->id,'service_id' => $s,'target' => $l,'quantity' => $q,'extends_form' => '','date' => date('Y-m-d H:i:s'),'data'=> "PRO",'status' => "Completed","order_id_pro" => $rand));
- } else {
- $this->db->insert('orderan',array('id' => $rand,'user_id' => $User->id,'service_id' => $s,'target' => $l,'quantity' => $q,'extends_form' => '','date' => date('Y-m-d H:i:s'),'data'=> "PRO",'status' => "Pending","order_id_pro" => $rand));
- }
- $res = array('error' => false,'id' => $rand,"msg" => "OK","price" => $service->price*$q,"service" => $service->name);
- $this->db->where('id',$User->id)->update('user',array('balance' => $User->balance - $q*$service->price));
- $this->db->query("UPDATE user set balance_used = balance_used + $q*$service->price WHERE id = '$User->id'");
- }
- }
- return $res;
- }
- public function _GetCountOrder($id = null,$Action = null){
- if($Action == null){
- if($id){
- return $this->db->get_where('orderan',array('user_id' => $id))->num_rows();
- }
- return $this->db->get_where('orderan',array())->num_rows();
- } else if($Action == "Complete"){
- if($id){
- return $this->db->get_where('orderan',array('status' => "Completed"))->num_rows();
- }
- return $this->db->get_where('orderan',array('status' => "Completed"))->num_rows();
- } else if($Action == "Cancel"){
- if($id){
- return $this->db->get_where('orderan',array('status' => "Canceled"))->num_rows();
- }
- return $this->db->get_where('orderan',array('status' => "Canceled"))->num_rows();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement