mirror of
https://github.com/e107inc/e107.git
synced 2025-08-06 14:46:56 +02:00
Download RSS feed upgraded to v2 standards
This commit is contained in:
@@ -6,17 +6,111 @@
|
|||||||
* Released under the terms and conditions of the
|
* Released under the terms and conditions of the
|
||||||
* GNU General Public License (http://www.gnu.org/licenses/gpl.txt)
|
* GNU General Public License (http://www.gnu.org/licenses/gpl.txt)
|
||||||
*
|
*
|
||||||
*
|
|
||||||
*
|
|
||||||
* $Source: /cvs_backup/e107_0.8/e107_plugins/download/e_rss.php,v $
|
|
||||||
* $Revision$
|
|
||||||
* $Date$
|
|
||||||
* $Author$
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
if (!defined('e107_INIT')) { exit; }
|
if (!defined('e107_INIT')) { exit; }
|
||||||
|
|
||||||
//FIXME TODO - Use v2 method. See chatbox_menu/e_rss.php
|
// v2.x Standard
|
||||||
|
class download_rss // plugin-folder + '_rss'
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Admin RSS Configuration
|
||||||
|
*/
|
||||||
|
function config()
|
||||||
|
{
|
||||||
|
$sql = e107::getDb();
|
||||||
|
$config = array();
|
||||||
|
|
||||||
|
// All download items
|
||||||
|
$config[] = array(
|
||||||
|
'name' => LAN_PLUGIN_DOWNLOAD_NAME,
|
||||||
|
'url' => 'download',
|
||||||
|
'topic_id' => '',
|
||||||
|
'description' => RSS_PLUGIN_LAN_8,
|
||||||
|
'class' => '0',
|
||||||
|
'limit' => '9'
|
||||||
|
);
|
||||||
|
|
||||||
|
// Specific categories
|
||||||
|
if($items = $sql->select("download_category", "*","download_category_id != '' ORDER BY download_category_order"))
|
||||||
|
{
|
||||||
|
while($row = $sql->fetch())
|
||||||
|
{
|
||||||
|
$config[] = array(
|
||||||
|
'name' => LAN_PLUGIN_DOWNLOAD_NAME.' > '.$row['download_category_name'],
|
||||||
|
'url' => 'download',
|
||||||
|
'topic_id' => $row['download_category_id'],
|
||||||
|
'path' => 'download',
|
||||||
|
'text' => RSS_PLUGIN_LAN_11.' '.$row['download_category_name'],
|
||||||
|
'class' => '0',
|
||||||
|
'limit' => '9',
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return $config;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Compile RSS Data
|
||||||
|
* @param $parms array url, limit, id
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
function data($parms='')
|
||||||
|
{
|
||||||
|
$sql = e107::getDb();
|
||||||
|
$limit = $parms['limit'];
|
||||||
|
$topic_id = $parms['id'];
|
||||||
|
|
||||||
|
$rss = array();
|
||||||
|
$i = 0;
|
||||||
|
|
||||||
|
// Individual download items for admin import
|
||||||
|
if($topic_id && is_numeric($topic_id))
|
||||||
|
{
|
||||||
|
$topic = "d.download_category='" . intval($topic_id) . "' AND ";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$topic = "";
|
||||||
|
}
|
||||||
|
|
||||||
|
$query = "SELECT d.*, dc.* FROM #download AS d LEFT JOIN #download_category AS dc ON d.download_category = dc.download_category_id WHERE {$topic} d.download_active > 0 AND d.download_class IN (".USERCLASS_LIST.") ORDER BY d.download_datestamp DESC LIMIT 0,".$limit;
|
||||||
|
|
||||||
|
$sql->gen($query);
|
||||||
|
$error = $sql->getLastErrorText();
|
||||||
|
|
||||||
|
$tmp = $sql->db_getList();
|
||||||
|
|
||||||
|
|
||||||
|
foreach($tmp as $value)
|
||||||
|
{
|
||||||
|
if($value['download_author'])
|
||||||
|
{
|
||||||
|
$nick = preg_replace("/[0-9]+\./", "", $value['download_author']);
|
||||||
|
$rss[$i]['author'] = $nick;
|
||||||
|
}
|
||||||
|
|
||||||
|
$rss[$i]['author_email'] = $value['download_author_email'];
|
||||||
|
$rss[$i]['title'] = $value['download_name'];
|
||||||
|
$rss[$i]['link'] = $e107->base_path."download/download.php?view.".$value['download_id']; // TODO SEF URL
|
||||||
|
$rss[$i]['description'] = $value['download_description'];
|
||||||
|
$rss[$i]['category_name'] = $value['download_category_name'];
|
||||||
|
$rss[$i]['category_link'] = $e107->base_path."download/download.php?list.".$value['download_category_id']; // TODO SEF URL
|
||||||
|
$rss[$i]['enc_url'] = $e107->base_path."download/request.php?".$value['download_id']; // TODO SEF URL
|
||||||
|
$rss[$i]['enc_leng'] = $value['download_filesize'];
|
||||||
|
//$rss[$i]['enc_type'] = $this->getmime($value['download_url']);
|
||||||
|
$rss[$i]['enc_type'] = '';
|
||||||
|
$rss[$i]['datestamp'] = $value['download_datestamp'];
|
||||||
|
|
||||||
|
$i++;
|
||||||
|
}
|
||||||
|
|
||||||
|
return $rss;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* OLD V1 CODE LEFT FOR REFERENCE - TO BE DELETED
|
||||||
|
|
||||||
//##### create feed for admin, return array $eplug_rss_feed --------------------------------
|
//##### create feed for admin, return array $eplug_rss_feed --------------------------------
|
||||||
// Download
|
// Download
|
||||||
@@ -90,4 +184,4 @@ if (!defined('e107_INIT')) { exit; }
|
|||||||
|
|
||||||
//##### ------------------------------------------------------------------------------------
|
//##### ------------------------------------------------------------------------------------
|
||||||
|
|
||||||
$eplug_rss_data[] = $rss;
|
$eplug_rss_data[] = $rss;
|
Reference in New Issue
Block a user