CRUD Queries

SELECT

$builder = $this->db_conn->table('app_ads_availability availability');
$builder->select('
	availability.version aval_version,
	open_hours.hour_from, 
	open_hours.hour_to, 
	open_hours.day_of_week,
	prices.hourly_price,
	prices.day_price,
');

$builder->join('app_ads_availability_open_hours open_hours', 'open_hours.ads_id = availability.ads_id' , 'left');
$builder->join('app_ads_prices prices', 'prices.ads_id = availability.ads_id' , 'left');

$builder->where('availability.ads_id', $row_id);

//p($builder->getCompiledSelect()); //!!! RESET SELECTION IF ON !!!

$query = $builder->get();
$result = $query->getResultArray();

return $result;

INSERT

start_datetime = convert_to_iso_8601($start_datetime);
$end_datetime = convert_to_iso_8601($end_datetime);

$data_to_insert	= [
	'ads_id' => $row_id,
	'user_id' => getUserId(),
	'start_datetime' => $start_datetime,
	'end_datetime' => $end_datetime,
]; 		
//p($data_to_insert, '$data_to_insert');
$builder = $this->db_conn->table('app_reservations');

//$sql = $builder->set($data_to_insert)->getCompiledInsert();	
//p($sql);

$builder->set($data_to_insert);
$builder->insert();
$inserted_id = $this->db_conn->insertID();
return $inserted_id;

UPDATE

$builder = $this->db_conn->table('app_reservations');

$builder->set('status', 'occupied');
$builder->where('id', $payment_data['reservation_id']);
//$sql = $builder->getCompiledUpdate();// - !!! RESET UPDATE IF ON !!!
//p($sql);
$builder->update();

DELETE

$builder = $this->db->table($table_name);
$builder->where($key,$val);
//p($builder->getCompiledDelete());
$builder->delete();		
return true;