Файл: adultscript-2.0.3-pro/files/mobile/components/video_rss.php
Строк: 133
<?php
defined('_VALID') or die('Restricted Acess!');
class VComponent_mobile_video_rss extends VComponent_mobile_video
{
public function __construct()
{
parent::__construct();
}
public function render()
{
$sql = "SELECT v.video_id, v.title, v.rating, v.rated_by, v.duration, v.thumb,
v.thumbs, v.total_views, v.add_date, u.username,
GROUP_CONCAT(DISTINCT c.slug) AS slug,
GROUP_CONCAT(DISTINCT c.name) AS name,
GROUP_CONCAT(DISTINCT t.name) AS tags
FROM #__video AS v
LEFT JOIN #__video_category AS vc ON (vc.video_id = v.video_id)
LEFT JOIN #__video_categories AS c ON (vc.cat_id = c.cat_id)
LEFT JOIN #__video_tags AS t ON (t.video_id = v.video_id)
LEFT JOIN #__user AS u ON (u.user_id = v.video_id)
WHERE v.mobile = '1'
AND v.status = 1
ORDER BY v.video_id DESC
LIMIT 20";
if (!$videos = $this->cache->get($sql, 3600)) {
$videos = $this->db->get_rows($sql);
if ($this->db->affected_rows()) {
$this->cache->store($sql, $videos, 3600);
}
}
header('Content-Type: text/xml');
ob_start();
print "<?xml version="1.0" encoding="utf-8" ?>n";
print "<rss version="2.0" xmlns:media="http://search.yahoo.com/mrss/">n";
print "<channel>n";
print "<title>".htmlspecialchars($cfg['site_name'], ENT_QUOTES, 'UTF-8')."</title>n";
print "<link>".BASE_URL."/</link>n";
print "<description>".htmlspecialchars($cfg['meta_desc'])."</description>n";
print "<copyright>Copyright (c) 2009 by ".htmlspecialchars($cfg['site_name'], ENT_QUOTES, 'UTF-8')." - All rights reserved.</copyright>n";
print "<pubDate>".date('r')."</pubDate>n";
print "<lastBuildDate>".date('r')."</lastBuildDate>n";
print "<language>en-us</language>n";
print "<image>n";
print "<url>".BASE_URL."/templates/".$cfg['template']."/images/logo.png</url>n";
print "<title>".htmlspecialchars($cfg['site_name'], ENT_QUOTES, 'UTF-8')."</title>n";
print "<link>".BASE_URL."/</link>n";
print "</image>n";
foreach ($videos as $video) {
$link = BASE_URL.'/'.$video['video_id'].'/'.prepare_string($video['title'], true).'/';
$tags = explode(',', $video['tags']);
$count = count($tags)-1;
$tag_string = '';
foreach ($tags as $index => $tag) {
$tag = trim($tag);
$tag_string .= "<a href="".BASE_URL."/tag/".str_replace(' ', '-', $tag)."/">".$tag."</a> ";
if ($index !== $count) {
$tag_string .= ', ';
}
}
$categories = explode(',', $video['name']);
$slugs = explode(',', $video['slug']);
$count = count($categories)-1;
$cat_string = '';
foreach ($categories as $index => $name) {
$cat_string .= "<a href="".BASE_URL."/".$slugs[$index]."">".htmlspecialchars($name, ENT_QUOTES, 'UTF-8')."</a>";
if ($index !== $count) {
$cat_string .= ', ';
}
}
print "<item>n";
print " <title>".htmlspecialchars($video['title'], ENT_QUOTES, 'UTF-8')."</title>n";
print " <link>".$link."</link>n";
print " <guid>".$link."</guid>n";
print " <description>n";
print " <![CDATA[";
print "<img src="".MEDIA_URL."/videos/tmb/".path($video['video_id'])."/".$video['thumb'].".jpg" align="left" border="0" width="160" height="120" vspace="4" hspace="4" />
<br />
Category: ".$cat_string."<br />
Tags: ".$tag_string."<br />
Date: ".$video['add_date']."<br /></p>";
print " ]]>n";
print " </description>n";
print " <pubDate>".date('r', strtotime($video['add_date']))."</pubDate>n";
print "</item>n";
}
print "</channel>n";
print "</rss>";
ob_end_flush();
}
}