Esempio n. 1
0
 static function loadCartTotals($db, $customer_id)
 {
     $totals = [];
     $sql = 'SELECT SUM(product_price * cart_count) AS p FROM viewProductsInCart WHERE cart_customer_id = ?';
     $statement = SqlQuery::executeSQL($db, $sql, [$customer_id]);
     $result = $statement->get_result();
     if ($row = $result->fetch_assoc()) {
         $totals = $row;
         $selected_currency = Currency::getSelectedCurrency($db);
         $totals['pf'] = formatPrice($row['p'], $selected_currency);
         $totals['pc'] = $row['p'] / $selected_currency->fval('currency_value');
     }
     $statement->close();
     return $totals;
 }
Esempio n. 2
0
 public function execute()
 {
     if (isset($this->orderby)) {
         $this->orderbySQL = sprintf('ORDER BY %s', $this->orderby);
     }
     if (isset($this->paging)) {
         $this->limitSQL = sprintf('LIMIT %d,%d', $this->paging->offset, $this->paging->limit);
     }
     if (isset($this->where)) {
         $this->whereSQL = sprintf('WHERE %s', $this->where);
     }
     if (isset($this->data)) {
         $columns = [];
         $bindings = [];
         foreach ($this->data as $key => $value) {
             $columns[] = SqlQuery::validateColumn($key) . ' = ?';
             $bindings[] =& $value;
         }
         // prepend bindings because SET comes before WHERE
         $this->bindings = array_merge($bindings, $this->bindings);
         $this->setSQL = sprintf('SET %s', implode(',', $columns));
     }
     switch ($this->query_type) {
         case 'update':
             $sql = sprintf('UPDATE %s %s %s', $this->table_name, $this->setSQL, $this->whereSQL);
             break;
         case 'select':
         default:
             $sql = sprintf('SELECT * FROM %s %s %s %s', $this->table_name, $this->whereSQL, $this->orderbySQL, $this->limitSQL);
     }
     if (isset($this->paging) && !isset($this->paging->total_records)) {
         $this->paging->total_records = SqlQuery::getRecordCount($this->db, $this->table_name, $this->whereSQL, $this->bindings, $this->types);
     }
     //dbg($sql);
     //var_dump($this->bindings);
     return SqlQuery::executeSQL($this->db, $sql, $this->bindings, $this->types);
 }