Файл: adultscript-2.0.3-pro/files/admin/modules/channel/models/network.php
Строк: 139
<?php
class VModel_Admin_network extends VModel
{
public function __construct()
{
parent::__construct();
}
public function add($network)
{
$this->db->query("
INSERT INTO #__channel_networks
SET user_id = ".(int) $network['user_id'].",
name = '".$this->db->escape($network['name'])."',
slug = '".$this->db->escape($network['slug'])."',
description = '".$this->db->escape($network['description'])."',
add_time = ".time()
);
if ($this->db->affected_rows()) {
return $this->db->get_last_insert_id('#__channel_networks');
}
return false;
}
public function update($network_id, $network)
{
$this->db->query("UPDATE #__channel_networks
SET user_id = ".$network['user_id'].",
name = '".$this->db->escape($network['name'])."',
slug = '".$this->db->escape($network['slug'])."',
description = '".$this->db->escape($network['description'])."',
total_channels = ".$network['total_channels'].",
total_videos = ".$network['total_videos'].",
update_time = ".time()."
WHERE network_id = ".$network_id."
LIMIT 1");
return true;
}
public function get($network_id, $fields = array())
{
$fields = ($fields) ? $fields : array(
'n.network_id', 'n.user_id', 'n.name', 'n.slug', 'n.description',
'n.total_channels', 'n.total_videos', 'u.username'
);
$this->db->query("SELECT ".implode(', ', $fields)."
FROM #__channel_networks AS n
LEFT JOIN #__user AS u ON (u.user_id = n.user_id)
WHERE network_id = ".$network_id."
LIMIT 1");
if ($this->db->affected_rows()) {
return $this->db->fetch_assoc();
}
return false;
}
public function exists($column, $value, $network_id = 0)
{
$value = (ctype_digit($value) or is_int($value)) ? (int) $value : "'".$this->db->escape($value)."'";
$this->db->query("
SELECT network_id
FROM #__channel_networks
WHERE ".$column." = ".$value."
AND network_id != ".(int) $network_id."
LIMIT 1"
);
if ($this->db->affected_rows()) {
return $this->db->fetch_field('network_id');
}
return false;
}
public function delete($network_id)
{
$comp = (is_array($network_id))
? "IN (".implode(',', $network_id).")"
: "= ".$network_id;
$this->db->query("DELETE FROM #__channel_networks WHERE network_id ".$comp);
return $this->db->affected_rows();
}
public function count($params)
{
$where = ($params['where']) ? 'WHERE '.$params['where'] : '';
$this->db->query("
SELECT COUNT(*) AS total_networks
FROM #__channel_networks AS n".$where
);
return $this->db->fetch_field('total_networks');
}
public function networks($fields = array(), $params = array(), $limit = 0)
{
$fields = ($fields) ? $fields : array(
'n.network_id',
'n.name',
'n.slug',
'n.total_channels',
'n.total_videos',
'n.add_time',
'u.username'
);
$where = (isset($params['where']) && $params['where']) ? 'WHERE '.$params['where'] : '';
if (!isset($params['sort'])) {
$params['sort'] = 'n.network_id';
}
if (!isset($params['order'])) {
$params['order'] = 'ASC';
}
$limit = ($limit !== 0) ? " LIMIT ".$limit : '';
$this->db->query("
SELECT ".implode(', ', $fields)."
FROM #__channel_networks AS n
LEFT JOIN #__user AS u ON (u.user_id = n.user_id)".$where."
ORDER BY ".$params['sort'].' '.$params['order'].$limit
);
return ($this->db->affected_rows())
? $this->db->fetch_rows()
: array();
}
}