<?php

if(!isset($CRON_GUVENLIK)){
    echo "cron dosyasını manuel çalıştıramazsınız";
    exit;
}


require_once "mp-content/init.php";

$autos = $db->query("SELECT A.*, S.service_id, S.api_id, S.api_service, S.service_charge, S.service_type, S.service_package FROM `auto_orders` AS A INNER JOIN `services` AS S ON S.service_id = A.service_id WHERE A.auto_status = 1 AND S.service_status = 1")->fetchAll(PDO::FETCH_ASSOC);

foreach($autos as $auto){

	$expiration_time = ($auto["auto_expiration"] != null ? $auto["auto_expiration"] : time() + 3600);

	if((($auto["auto_limit"] != null && $auto["auto_completed"] < $auto["auto_limit"]) || $auto["auto_limit"] == null) && (time() < $expiration_time)){

		$service_type = $auto["service_type"];

		if($service_type != null){

			$object = ProxyOtoSiparis($auto['auto_link']);

			if($object){

				$photoCount		=  $object['data']['user']["edge_owner_to_timeline_media"]["count"];
				$photos    		=  $object['data']['user']["edge_owner_to_timeline_media"]["edges"];

				if($photos){

					$types = $photos[0]['node']['__typename'];
					$posts = $photos[0]['node']['shortcode'];

					if($auto["last_post"] !== $posts){

						$lastPost = [];
						foreach($photos as $row => $data){

							if($data['node']['shortcode'] == $auto['last_post']){

								$lastPost['shortcode'] 	= $data['node']['shortcode'];
								$lastPost['type']		= $data['node']['__typename'];
								$lastPost['number']		= $row;
							}

						}

						$postData = $lastPost;
                        $i = 0;
						foreach($photos as $row => $data){

                            if($auto['last_post'] == null){
                                if($service_type == 1 && $data['node']['__typename'] == "GraphVideo"){
    
    									$link = "https://www.instagram.com/p/".$data['node']['shortcode']."/";
    									$user = $db->from('users')->where('user_id', $auto['user_id'])->first();
    
    									if($user){
    										
    										$charge = offer($auto, $auto["user_id"]);
    										$amount = ($charge / 1000) * $auto['auto_quantity'];
    
    										if($auto['service_package']){
    											$amount = $charge;
    										}
    
    										if($user['user_balance'] >= $amount){
    
    											$order = add_order($auto, $auto['user_id'], $link, $auto['auto_quantity'], $amount);
    
    											if($order){
    
    												$completed = $auto['auto_completed'] + 1;
    												$new_balance = $user['user_balance'] - $amount;
    
    												$update_user = $db->update('users')
    												->where('user_id', $user['user_id'])
    												->set(array(
    													'user_balance' => $new_balance
    												));
    
    												$extra = "";
    
    												if($completed == $auto['auto_limit']){
    
    													$update_auto = $db->update('auto_orders')
    													->where('auto_id', $auto['auto_id'])
    													->set(array(
    														'last_post' => $posts,
    														'auto_completed' => $completed,
    														'auto_status' => 0
    													));
    
    													echo "5<br>";
    
    												}else{
    
    													$update_auto = $db->update('auto_orders')
    													->where('auto_id', $auto['auto_id'])
    													->set(array(
    														'last_post' => $posts,
    														'auto_completed' => $completed
    													));
    
    													print_r('<pre>');
    													print_r('<b>'. $link . ' bağlantısına sipariş oluşturuldu.</b><br>');
    													print_r('</pre>');
    
    												}
    
    											}else{
    
    												print_r('order koşulu karşılanamadı.');
    
    											}
    
    										}else{
    
    											print_r('bakiye koşulu karşılanamadı. Kullanıcı bakiyesi:' . $user['user_balance']);
    
    										}
    
    									}
    
    								}elseif($service_type == 2 && ($data['node']['__typename'] == "GraphImage" || $data['node']['__typename'] == "GraphSidecar")){
    
    									$link = "https://www.instagram.com/p/".$data['node']['shortcode']."/";
    									$user = $db->from('users')->where('user_id', $auto['user_id'])->first();
    
    									if($user){
    										
    										$charge = offer($auto, $auto["user_id"]);
    										$amount = ($charge / 1000) * $auto['auto_quantity'];
    
    										if($auto['service_package']){
    											$amount = $charge;
    										}
    
    										if($user['user_balance'] >= $amount){
    
    											$order = add_order($auto, $auto['user_id'], $link, $auto['auto_quantity'], $amount);
    
    											if($order){
    
    												$completed = $auto['auto_completed'] + 1;
    												$new_balance = $user['user_balance'] - $amount;
    
    												$update_user = $db->update('users')
    												->where('user_id', $user['user_id'])
    												->set(array(
    													'user_balance' => $new_balance
    												));
    
    												$extra = "";
    
    												if($completed == $auto['auto_limit']){
    
    													$update_auto = $db->update('auto_orders')
    													->where('auto_id', $auto['auto_id'])
    													->set(array(
    														'last_post' => $posts,
    														'auto_completed' => $completed,
    														'auto_status' => 0
    													));
    
    													echo "5<br>";
    
    												}else{
    
    													$update_auto = $db->update('auto_orders')
    													->where('auto_id', $auto['auto_id'])
    													->set(array(
    														'last_post' => $posts,
    														'auto_completed' => $completed
    													));
    
    													print_r('<pre>');
    													print_r('<b>'. $link . ' bağlantısına sipariş oluşturuldu.</b><br>');
    													print_r('</pre>');
    
    												}
    
    											}else{
    
    												print_r('order koşulu karşılanamadı.');
    
    											}
    
    										}else{
    
    											print_r('bakiye koşulu karşılanamadı. Kullanıcı bakiyesi:' . $user['user_balance']);
    
    										}
    
    									}
    
    								}
    								break;
                            }
                            else
                            {
                                
                                if($postData['number'] == $i){
								    break;
						    	}
    							if($data['node']['shortcode'] !== $auto['last_post']){
    
    								if($service_type == 1 && $data['node']['__typename'] == "GraphVideo"){
    
    									$link = "https://www.instagram.com/p/".$data['node']['shortcode']."/";
    									$user = $db->from('users')->where('user_id', $auto['user_id'])->first();
    
    									if($user){
    										
    										$charge = offer($auto, $auto["user_id"]);
    										$amount = ($charge / 1000) * $auto['auto_quantity'];
    
    										if($auto['service_package']){
    											$amount = $charge;
    										}
    
    										if($user['user_balance'] >= $amount){
    
    											$order = add_order($auto, $auto['user_id'], $link, $auto['auto_quantity'], $amount);
    
    											if($order){
    
    												$completed = $auto['auto_completed'] + $postData['number'];
    												$new_balance = $user['user_balance'] - $amount;
    
    												$update_user = $db->update('users')
    												->where('user_id', $user['user_id'])
    												->set(array(
    													'user_balance' => $new_balance
    												));
    
    												$extra = "";
    
    												if($completed == $auto['auto_limit']){
    
    													$update_auto = $db->update('auto_orders')
    													->where('auto_id', $auto['auto_id'])
    													->set(array(
    														'last_post' => $posts,
    														'auto_completed' => $completed,
    														'auto_status' => 0
    													));
    
    													echo "5<br>";
    
    												}else{
    
    													$update_auto = $db->update('auto_orders')
    													->where('auto_id', $auto['auto_id'])
    													->set(array(
    														'last_post' => $posts,
    														'auto_completed' => $completed
    													));
    
    													print_r('<pre>');
    													print_r('<b>'. $link . ' bağlantısına sipariş oluşturuldu.</b><br>');
    													print_r('</pre>');
    
    												}
    
    											}else{
    
    												print_r('order koşulu karşılanamadı.');
    
    											}
    
    										}else{
    
    											print_r('bakiye koşulu karşılanamadı. Kullanıcı bakiyesi:' . $user['user_balance']);
    
    										}
    
    									}
    
    								}elseif($service_type == 2 && ($data['node']['__typename'] == "GraphImage" || $data['node']['__typename'] == "GraphSidecar" || $data['node']['__typename'] == "GraphVideo")){
    
    									$link = "https://www.instagram.com/p/".$data['node']['shortcode']."/";
    									$user = $db->from('users')->where('user_id', $auto['user_id'])->first();
    
    									if($user){
    										
    										$charge = offer($auto, $auto["user_id"]);
    										$amount = ($charge / 1000) * $auto['auto_quantity'];
    
    										if($auto['service_package']){
    											$amount = $charge;
    										}
    
    										if($user['user_balance'] >= $amount){
    
    											$order = add_order($auto, $auto['user_id'], $link, $auto['auto_quantity'], $amount);
    
    											if($order){
    
    												$completed = $auto['auto_completed'] + $postData['number'];
    												$new_balance = $user['user_balance'] - $amount;
    
    												$update_user = $db->update('users')
    												->where('user_id', $user['user_id'])
    												->set(array(
    													'user_balance' => $new_balance
    												));
    
    												$extra = "";
    
    												if($completed == $auto['auto_limit']){
    
    													$update_auto = $db->update('auto_orders')
    													->where('auto_id', $auto['auto_id'])
    													->set(array(
    														'last_post' => $posts,
    														'auto_completed' => $completed,
    														'auto_status' => 0
    													));
    
    													echo "5<br>";
    
    												}else{
    
    													$update_auto = $db->update('auto_orders')
    													->where('auto_id', $auto['auto_id'])
    													->set(array(
    														'last_post' => $posts,
    														'auto_completed' => $completed
    													));
    
    													print_r('<pre>');
    													print_r('<b>'. $link . ' bağlantısına sipariş oluşturuldu.</b><br>');
    													print_r('</pre>');
    
    												}
    
    											}else{
    
    												print_r('order koşulu karşılanamadı.');
    
    											}
    
    										}else{
    
    											print_r('bakiye koşulu karşılanamadı. Kullanıcı bakiyesi:' . $user['user_balance']);
    
    										}
    
    									}
    
    								}
    
    							}
                            }
    					$i++;

						}

					}

				}

			}

		}else{

			$update_auto = $db->query("UPDATE `auto_orders` SET auto_status = 2 WHERE auto_id = $auto[auto_id]");

		}

	}else{

		$update_auto = $db->query("UPDATE `auto_orders` SET auto_status = 0 WHERE auto_id = $auto[auto_id]");

	}

}
?>