public function delete()
 {
     global $db;
     $sql = "DELETE FROM " . static::$table_name . " WHERE id=" . Database::escape_value($this->id) . " LIMIT 1";
     $db->query($sql);
     return $db->affected_rows() == 1 ? true : false;
 }
Example #2
0
 public static function add_new($c_name, $info, $ini_s_price, $thres_stock_val = 20, $total_stocks = 1000000)
 {
     $database = new Database();
     $c_name = $database->escape_value($c_name);
     $info = $database->escape_value($info);
     $ini_s_price = $database->escape_value($ini_s_price);
     $thres_stock_val = (int) $thres_stock_val;
     $total_stocks = (int) $total_stocks;
     $query = "INSERT INTO " . self::$table . " (c_name,info,ini_s_price,thres_stock_val,total_stocks,day_open_price,prev_day_close_price,bought_stocks) ";
     $query .= " VALUES ('{$c_name}','{$info}',{$ini_s_price},{$thres_stock_val},{$total_stocks},{$ini_s_price},0,0)";
     $insert = $database->query($query);
     if ($insert) {
         $query = "SELECT id FROM " . self::$table;
         $query .= " WHERE c_name = '" . $c_name . "' LIMIT 1";
         $find = $database->query($query);
         if ($find) {
             $sc_id = $database->fetch_array($find);
             $sc_id = $sc_id['id'];
             if (Stock::addToMarket($sc_id, $ini_s_price)) {
                 if (StockHistory::add($sc_id, $ini_s_price)) {
                     if (StockControl::add($sc_id)) {
                         return true;
                     } else {
                         Log::add("Failed to add to StockControl - {$sc_id}", LOG_MANUAL);
                         return false;
                     }
                 } else {
                     Log::add("Failed to add to StockHistory,StockControl - {$sc_id}", LOG_MANUAL);
                     return false;
                 }
             } else {
                 Log::add("Failed to add to StockMarket,StockHistory,StockControl - {$sc_id}", LOG_MANUAL);
                 return false;
             }
         } else {
             Log::add("Failed to find new stockCompany record (add in StockMarket,StockHistory,StockControl)-{$sc_id} ", LOG_MANUAL);
         }
     } else {
         return false;
     }
 }
Example #3
0
 public static function authenticate($email = "", $password = "")
 {
     global $db;
     $email = Database::escape_value(trim($email));
     $password = Database::escape_value(trim($password));
     $hashed_pass = sha1($password);
     $sql = "SELECT * FROM " . static::$table_name . " ";
     $sql .= "WHERE email='{$email}' ";
     $sql .= "AND hashed_pass='******' ";
     $sql .= "LIMIT 1";
     $result_array = self::find_by_sql($sql);
     return !empty($result_array) ? array_shift($result_array) : false;
 }
Example #4
0
 public static function get_id_by_uid($u_id)
 {
     $database = new Database();
     $u_id = $database->escape_value(trim($u_id));
     $query = "SELECT id FROM " . self::$table;
     $query .= " WHERE user_id = '{$u_id}'";
     $success = $database->query($query);
     if ($success) {
         $uid = $database->fetch_array($success);
         if (!empty($uid)) {
             $uid = array_shift($uid);
             unset($database);
             return $uid;
         } else {
             unset($database);
             return false;
         }
     } else {
         unset($database);
         return false;
     }
 }
Example #5
0
 public function sell($sh_id, $qty = 0)
 {
     global $session;
     $database = new Database();
     $sh_id = $database->escape_value($sh_id);
     $qty = (int) $qty;
     if ($this->isFound()) {
         $StockCompany = new StockCompany($this->sc_id);
         /*
         Check if the user has the stock or not
         */
         $holder_stocks = new HolderStocks($sh_id);
         $holder = new StockHolder($sh_id);
         if ($holder_stocks->isFound()) {
             if ($holder_stocks->hasStock($this->sc_id)) {
                 $index = array_search($this->sc_id, array_column($holder_stocks->holder_stocks, 'sc_id'));
                 $qty_having = $holder_stocks->holder_stocks[$index]['s_qty'];
                 if ($qty <= $qty_having) {
                     $stock_cur_price = Stock::getCurPrice($this->sc_id);
                     //This removes stocks from holder's list
                     $holder_stocks->removeStock($this->sc_id, $qty, $stock_cur_price);
                     //Updates the price of the holder
                     $holder->amtUpdate($holder->cur_amt + $stock_cur_price * $qty);
                     return true;
                 } else {
                     $session->message("You Dont have {$qty} stocks of {$StockCompany->c_name} to sell, You only have {$qty_having} stocks");
                     return false;
                 }
             } else {
                 $session->message("You Dont have {$StockCompany->c_name} stocks to sell");
                 return false;
             }
         } else {
             return false;
         }
     } else {
         return false;
     }
 }