<?php header("Access-Control-Allow-Origin: *");
  header("Access-Control-Allow-Headers: *");  

  header('Content-Type: application/json');

  $json = file_get_contents('php://input');
  $obj = json_decode($json, true);

  include '../db/connectMe.php';   
  include '../function/function.php';  

  // (C) GENERATE JWT TOKEN
  require "../vendor/autoload.php";
  use Firebase\JWT\JWT;

  // (A) NO data
  if (!isset($_GET["search"])  || !isset($_GET["st"])) {

    $error = array("error"=> "no");
    exit( json_encode($error) ); 
 
  }

  if( AuthorizeMe(@substr(getallheaders()["Authorization"], 7)) ){

    $jwt = substr(getallheaders()["Authorization"], 7);

    //Decoding data
    $decodeToken = (json_decode(base64_decode(str_replace('_', '/', str_replace('-','+',explode('.', $jwt)[1]))))->data);

    if(!isset($decodeToken)){

      exit(json_encode(array("error" => "unauthorised") ));

    }



    ////////////////////////products


    if (  (mysql_prep(@$_GET['search']) != "") && (mysql_prep(@$_GET['st']) != "")     ) {


      @$search = trim(htmlentities($_GET['search'])); 
      @$status  = mysql_prep($_GET['st']); 

      if ( $decodeToken->UT== 'wsadmin' ) { 

        $foundPro = search_product($search, $status); 

      } else if($decodeToken->UT== 'admin' ){ 

        //find user by id 
        $userInfo = find_user_by_id($decodeToken->ID);


        //find_branch_by_id
        $branchInfo = find_branch_by_id($userInfo->tbl_brandId);


        $foundPro = search_product_for_business($search, $status, $branchInfo->tbl_businessId); 

      
      }else if($decodeToken->UT== 'manager' || $decodeToken->UT== 'technician'){

        //find user by id 
        $userInfo = find_user_by_id($decodeToken->ID);


        //find_branch_by_id
        $branchInfo = find_branch_by_id($userInfo->tbl_brandId);


        $foundPro = search_product_for_business($search, $status, $branchInfo->tbl_businessId); 

      }

      $i = 0;

      if(empty($foundPro)){
        exit(json_encode([]));
      }


      foreach ($foundPro as $pro[]) {



        if(@$decodeToken->UT== 'admin'){

          //all quantity for product
          $AllProdQty = (float) countAllProductsQty( $pro[$i]->tbl_productId, 1 )->qty;

          //all quantity for product and store
          $AllStoreProdQty = (float) countAllStoreProductsQty( $pro[$i]->tbl_productId, 1 )->qty;


          $overall= $AllProdQty + $AllStoreProdQty; 
          $pro[$i]->tbl_productQty = $overall;


        }else if(@$decodeToken->UT== 'manager' || @$decodeToken->UT== 'technician'){


          //all quantity for product
          $AllProdQty = (float) countAllProductsQtyForBranch($decodeToken->BID, $pro[$i]->tbl_productId, 1 )->qty;


          $overall= $AllProdQty ; 
          $pro[$i]->tbl_productQty = $overall;

        }






        $item = $pro;
        $json = json_encode($item);

        $i++;

      }


      exit($json) ;


    }


  }else{


    exit(json_encode(array("error" => "unauthorised") ));


  }




