Viewing file: Api_model.php (3.76 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
class Api_model extends CI_Model
{
public function insertTransaction($type,$user_id) {
return $this->db->insert('transactions', array(
"id" => null,
"type" => $type,
"user" => $user_id,
"time" => time()
));
}
public function insertNumber($number, $number_id, $service_id, $price, $user_id, $operator = "", $cost) {
$this->db->set('balance', 'balance-'.$price, FALSE)->where('id', $user_id)->update('users');
$this->db->insert('activations', array(
"id" => null,
"number" => $number,
"number_id" => $number_id,
"service_id" => $service_id,
"message" => "",
"user" => $user_id,
"status" => 0,
"time" => time(),
"cost" => $cost,
"operator" => $operator
));
return $this->db->insert_id();
}
public function updateActivationCode($code, $id) {
$this->db->set('message', $code)->set('status', 1)->where('id', $id)->update('activations');
}
public function getServices($category_id = null) {
if(is_null($category_id)) {
return $this->db->order_by("id", "DESC")->query("SELECT services.id,services.name,categories.icon FROM services INNER JOIN categories ON services.category = categories.id")->result_array();
}
else {
return $this->db->order_by("id", "DESC")->get_where('services', array('category' => $category_id))->result_array();
}
}
public function getServicesMaxPrice($category_id = null, $maxPrice = 100) {
if(is_null($category_id)) {
return $this->db->order_by("id", "DESC")->query("SELECT services.id,services.name,categories.icon FROM services INNER JOIN categories ON services.category = categories.id")->result_array();
}
else {
return $this->db->order_by("id", "DESC")->get_where('services', array('category' => $category_id, 'price <=' => $maxPrice))->result_array();
}
}
public function getActivations($user_id) {
$this->db->order_by('id', 'DESC');
return $this->db->get_where('activations', array('user' => $user_id))->result_array();
}
public function getCategories() {
$this->db->order_by('id');
return $this->db->get_where('categories')->result_array();
}
public function getCategoryById($category) {
$result = $this->db->get_where('categories', array('id' => $category))->result_array();
return count($result) > 0 ? $result[0] : null;
}
public function getServiceById($service_id) {
$result = $this->db->get_where('services', array('id' => $service_id))->result_array();
return count($result) > 0 ? $result[0] : null;
}
public function getUserByApiKey($api_key) {
$result = $this->db->get_where('users', array('api_key' => $api_key))->result_array();
return count($result) > 0 ? $result[0] : null;
}
public function getActivationById($id) {
$result = $this->db->select('activations.*, services.callback')->from('activations')->join('services', 'services.id=activations.service_id')->where(array('activations.id' => $id))->get()->result_array();
return $result[0];
}
public function cancelNumber($id, $user_id) {
$this->db->set('status', -1)->where('id', $id)->update('activations');
$this->db->query('UPDATE users INNER JOIN activations ON activations.id = '.$id.' SET users.balance = users.balance + activations.cost WHERE users.id = activations.user');
}
public function cancel_number_without_refund($id) {
$this->db->set('status', -1)->where('id', $id)->update('activations');
}
}
?>
|