Файл: adultscript-2.0.3-pro/files/admin/modules/channel/components/rebuild.php
Строк: 108
<?php
defined('_VALID') or die('Restricted Access!');
class VComponent_Admin_channel_rebuild extends VModule_Admin_channel
{
public function __construct()
{
parent::__construct();
}
public function render()
{
$errors = array();
$messages = array();
$warnings = array();
$cmodel = VModel::load('channel', 'channel', true);
$nmodel = VModel::load('network', 'channel', true);
$channels = $cmodel->channels(array('c.channel_id', 'c.total_videos'));
foreach ($channels as $channel) {
$channel_id = (int) $channel['channel_id'];
$this->db->query("SELECT COUNT(*) AS total_videos
FROM #__video
WHERE channel_id = ".$channel_id."
AND status = 1");
$total_videos = (int) $this->db->fetch_field('total_videos');
$this->db->query("UPDATE #__channel
SET total_videos = ".$total_videos."
WHERE channel_id = ".$channel_id."
LIMIT 1");
}
$networks = $nmodel->networks(array('n.network_id'));
foreach ($networks as $network) {
$network_id = (int) $network['network_id'];
$this->db->query("SELECT SUM(total_videos) AS total_videos
FROM #__channel
WHERE network_id = ".$network_id);
$total_videos = (int) $this->db->fetch_field('total_videos');
$this->db->query("SELECT COUNT(*) AS total_channels
FROM #__channel
WHERE network_id = ".$network_id);
$total_channels = (int) $this->db->fetch_field('total_channels');
$this->db->query("UPDATE #__channel_networks
SET total_channels = ".$total_channels.",
total_videos = ".$total_videos."
WHERE network_id = ".$network_id."
LIMIT 1");
}
$tpl = VF::factory('template');
$tpl->menu = 'channel';
$tpl->submenu = 'channel_rebuild';
$tpl->meta_title = 'Admin::Channel::Rebuild';
$tpl->errors = $errors;
$tpl->messages = $messages;
$tpl->warnings = $warnings;
$tpl->load(array('header', 'channel_rebuild', 'footer'));
$tpl->display();
}
}
?>