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; } }
$stocks = Stock::getAllStocks(); foreach ($stocks as $stock) { $histories[] = new StockHistory($stock->sc_id); $companies[] = new StockCompany($stock->sc_id); } /* S_history created or updated here */ //TODO: fetch the day_opening value from company instead from stock market foreach ($histories as $key => $history) { $day_open = $companies[$key]->day_open; if (strtotime(str_replace("-", "/", $history->date)) == strtotime(strftime("{$Y}/%m/%d", time()))) { //so the entry for this record already exists $history->update($day_open, 0); } else { StockHistory::add($history->sc_id, $day_open); } } /* * Update the bought stockss of the company inn the current market scenario! */ foreach ($companies as $company) { $company->writeBoughtStocks(); } /* * Free up space which otherwise will go unused forever */ unset($histories); unset($companies); unset($history); unset($key);