mirror of
https://github.com/e107inc/e107.git
synced 2025-08-06 14:46:56 +02:00
Download plugin clean-up mostly complete. (cache still needs to be done)
This commit is contained in:
@@ -1247,11 +1247,11 @@ class e_shortcode
|
||||
/**
|
||||
* Set external array data to be used in the batch
|
||||
* Use setVars() - preferred.
|
||||
*
|
||||
* //XXX will soon become private. Use setVars() instead.
|
||||
* @param array $eVars
|
||||
* @return e_shortcode
|
||||
*/
|
||||
public function setParserVars($eVars) //XXX will soon become private. Use setVars() instead.
|
||||
public function setParserVars($eVars)
|
||||
{
|
||||
$this->var = $eVars;
|
||||
return $this;
|
||||
|
@@ -2,16 +2,10 @@
|
||||
/*
|
||||
* e107 website system
|
||||
*
|
||||
* Copyright (C) 2008-2009 e107 Inc (e107.org)
|
||||
* Copyright (C) 2008-2013 e107 Inc (e107.org)
|
||||
* Released under the terms and conditions of the
|
||||
* GNU General Public License (http://www.gnu.org/licenses/gpl.txt)
|
||||
*
|
||||
*
|
||||
*
|
||||
* $Source: /cvs_backup/e107_0.8/e107_plugins/download/download.php,v $
|
||||
* $Revision$
|
||||
* $Date$
|
||||
* $Author$
|
||||
*/
|
||||
|
||||
if (!defined('e107_INIT'))
|
||||
@@ -24,664 +18,60 @@ if (!e107::isInstalled('download'))
|
||||
header("location:".e_BASE."index.php");
|
||||
}
|
||||
|
||||
include_lan(e_PLUGIN.'download/languages/'.e_LANGUAGE.'/download.php');
|
||||
require_once(e_PLUGIN.'download/handlers/download_class.php');
|
||||
require_once(e_PLUGIN.'download/handlers/category_class.php');
|
||||
require_once(e_PLUGIN.'download/download_shortcodes.php');
|
||||
require_once(e_HANDLER.'comment_class.php');
|
||||
|
||||
$dl = new download();
|
||||
$cobj = new comment();
|
||||
$dl_text = ''; // Output variable
|
||||
|
||||
if(!defined("USER_WIDTH")) { define("USER_WIDTH","width:100%"); }
|
||||
|
||||
/* define images */
|
||||
define("IMAGE_DOWNLOAD", (file_exists(THEME."images/download.png") ? THEME."images/download.png" : e_IMAGE."generic/download.png"));
|
||||
define("IMAGE_NEW", (file_exists(THEME."images/new.png") ? THEME."images/new.png" : e_IMAGE."generic/new.png"));
|
||||
|
||||
$template_load_core = '
|
||||
$template_name = $load_template.".php";
|
||||
if (is_readable(THEME."templates/".$template_name))
|
||||
{
|
||||
require_once(THEME."templates/".$template_name);
|
||||
}
|
||||
elseif (is_readable(THEME.$template_name))
|
||||
{
|
||||
require_once(THEME.$template_name);
|
||||
}
|
||||
else
|
||||
{
|
||||
require_once(e_PLUGIN."download/templates/".$template_name);
|
||||
}
|
||||
';
|
||||
|
||||
$order_options = array('download_id','download_datestamp','download_requested','download_name','download_author','download_requested');
|
||||
$sort_options = array('ASC', 'DESC');
|
||||
|
||||
if (!e_QUERY || $_GET['elan'])
|
||||
{
|
||||
$action = 'maincats'; // List categories
|
||||
$maincatval = ''; // Show all main categories
|
||||
}
|
||||
else
|
||||
{ // Get parameters from the query
|
||||
$maincatval = ''; // Show all main categories
|
||||
$tmp = explode(".", e_QUERY);
|
||||
|
||||
$dl->init();
|
||||
|
||||
if(isset($_GET['action'])) // v2.x
|
||||
{
|
||||
$dl->init();
|
||||
$action = $_GET['action'];
|
||||
$id = intval($_GET['id']);
|
||||
}
|
||||
elseif (is_numeric($tmp[0])) //legacy // $tmp[0] at least must be valid
|
||||
{
|
||||
$dl_from = intval($tmp[0]);
|
||||
$action = varset(preg_replace("#\W#", "", $tp->toDB($tmp[1])),'list');
|
||||
$id = intval($tmp[2]);
|
||||
$view = intval($tmp[3]);
|
||||
$order = preg_replace("#\W#", "", $tp->toDB($tmp[4]));
|
||||
$sort = preg_replace("#\W#", "", $tp->toDB($tmp[5]));
|
||||
}
|
||||
else
|
||||
{
|
||||
$action = preg_replace("#\W#", "", $tp->toDB($tmp[0]));
|
||||
$id = intval($tmp[1]);
|
||||
$errnum = intval(varset($tmp[2],0));
|
||||
}
|
||||
|
||||
|
||||
|
||||
switch ($action)
|
||||
{
|
||||
case 'list' : // Category-based listing
|
||||
|
||||
|
||||
if (isset($_GET['view']))
|
||||
{
|
||||
// $view = intval($_GET['view']);
|
||||
// $sort = varset($_GET['sort'],'DESC');
|
||||
// $order = varset($_POST['order']) ? 'download_'.$_POST['order'] : 'download_datestamp';
|
||||
|
||||
// $order = preg_replace("#\W#", "", $order);
|
||||
// $sort = preg_replace("#\W#", "", $sort);
|
||||
|
||||
|
||||
}
|
||||
|
||||
if (!isset($dl_from)) $dl_from = 0;
|
||||
|
||||
// Get category type, page title
|
||||
if ($sql->db_Select("download_category", "download_category_name,download_category_description,download_category_parent,download_category_class", "(download_category_id='{$id}') AND (download_category_class IN (".USERCLASS_LIST."))") )
|
||||
{
|
||||
$dlrow = $sql->db_Fetch();
|
||||
extract($dlrow);
|
||||
$type = $download_category_name;
|
||||
define("e_PAGETITLE", PAGE_NAME." / ".$download_category_name);
|
||||
}
|
||||
else
|
||||
{ // No access to this category
|
||||
define("e_PAGETITLE", PAGE_NAME);
|
||||
require_once(HEADERF);
|
||||
$ns->tablerender(LAN_dl_18, "<div style='text-align:center'>".LAN_dl_3."</div>");
|
||||
require_once(FOOTERF);
|
||||
exit;
|
||||
}
|
||||
if ($download_category_parent == 0)
|
||||
{ // It's a main category - change the listing type required
|
||||
$action = 'maincats';
|
||||
$maincatval = $id;
|
||||
}
|
||||
break;
|
||||
case 'view' : // Details of individual download
|
||||
break;
|
||||
case 'report' :
|
||||
break;
|
||||
case 'mirror' :
|
||||
break;
|
||||
case 'error' : // Errors passed from request.php
|
||||
define("e_PAGETITLE", PAGE_NAME);
|
||||
require_once(HEADERF);
|
||||
switch ($errnum)
|
||||
{
|
||||
case 1 : // No permissions
|
||||
if (strlen($pref['download_denied']) > 0) {
|
||||
$errmsg = $tp->toHTML($pref['download_denied'],true);
|
||||
} else {
|
||||
$errmsg = LAN_dl_63;
|
||||
}
|
||||
break;
|
||||
case 2 : // Quota exceeded
|
||||
$errmsg = LAN_dl_62;
|
||||
break;
|
||||
default:
|
||||
$errmsg = LAN_dl_61." ".$errnum; // Generic error - shouldn't happen
|
||||
}
|
||||
$ns->tablerender(LAN_dl_61, "<div style='text-align:center'>".$errmsg."</div>");
|
||||
require_once(FOOTERF);
|
||||
exit;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
if (isset($order) && !in_array($order,$order_options)) unset($order);
|
||||
if (isset($sort) && !in_array($sort,$sort_options)) unset($sort);
|
||||
if (!isset($order)) $order = vartrue($pref['download_order'],'download_datestamp');
|
||||
if (!isset($sort)) $sort = vartrue($pref['download_sort'], 'DESC');
|
||||
if (!isset($view)) $view = vartrue($pref['download_view'], '10');
|
||||
*/
|
||||
|
||||
//--------------------------------------------------
|
||||
// GENERATE DISPLAY TEXT
|
||||
//--------------------------------------------------
|
||||
switch ($action)
|
||||
{ // Displaying main category or categories
|
||||
case 'maincats' :
|
||||
// require_once(HEADERF);
|
||||
/*
|
||||
if ($cacheData = $e107cache->retrieve("download_cat".$maincatval,720)) // expires every 12 hours. //TODO make this an option
|
||||
{
|
||||
echo $cacheData;
|
||||
require_once(FOOTERF);
|
||||
exit;
|
||||
}
|
||||
// Load the theme
|
||||
$load_template = 'download_template';
|
||||
if (!isset($DOWNLOAD_CAT_PARENT_TABLE)) eval($template_load_core);
|
||||
if(!defined("DL_IMAGESTYLE")){ define("DL_IMAGESTYLE","border:1px solid blue");}
|
||||
// Read in tree of categories which this user is allowed to see
|
||||
$dlcat = new downloadCategory(varset($pref['download_subsub'],1),USERCLASS_LIST,$maincatval,varset($pref['download_incinfo'],FALSE));
|
||||
if ($dlcat->down_count == 0)
|
||||
{
|
||||
$ns->tablerender(LAN_dl_18, "<div style='text-align:center'>".LAN_dl_2."</div>");
|
||||
require_once(FOOTERF);
|
||||
exit;
|
||||
}
|
||||
$download_cat_table_string = "";
|
||||
foreach($dlcat->cat_tree as $dlrow)
|
||||
{ // Display main category headings, then sub-categories, optionally with sub-sub categories expanded
|
||||
$download_cat_table_string .= $tp->parseTemplate($DOWNLOAD_CAT_PARENT_TABLE, TRUE, vartrue($download_shortcodes));
|
||||
foreach($dlrow['subcats'] as $dlsubrow)
|
||||
{
|
||||
$download_cat_table_string .= $tp->parseTemplate($DOWNLOAD_CAT_CHILD_TABLE, TRUE, $download_shortcodes);
|
||||
foreach($dlsubrow['subsubcats'] as $dlsubsubrow)
|
||||
{
|
||||
$download_cat_table_string .= $tp->parseTemplate($DOWNLOAD_CAT_SUBSUB_TABLE, TRUE, $download_shortcodes);
|
||||
}
|
||||
}
|
||||
}
|
||||
$dl_text = $tp->parseTemplate($DOWNLOAD_CAT_TABLE_START, TRUE, $download_shortcodes);
|
||||
$dl_text .= $download_cat_table_string;
|
||||
$dl_text .= $tp->parseTemplate($DOWNLOAD_CAT_TABLE_END, TRUE, $download_shortcodes);
|
||||
$dlbreadcrumb = $dl->getBreadcrumb(array(LAN_dl_18));
|
||||
$dl_title = $tp->parseTemplate("{BREADCRUMB=dlbreadcrumb}", TRUE, $download_shortcodes);
|
||||
ob_start();
|
||||
$ns->tablerender($dl_title, $dl_text);
|
||||
$cache_data = ob_get_flush();
|
||||
$e107cache->set("download_cat".$maincatval, $cache_data);*/
|
||||
include_lan(e_PLUGIN.'download/languages/'.e_LANGUAGE.'/download.php');
|
||||
|
||||
// require_once(FOOTERF);
|
||||
// exit;
|
||||
// Add other 'cases' here
|
||||
} // End switch ($action)
|
||||
require_once(e_PLUGIN.'download/handlers/download_class.php');
|
||||
require_once(e_PLUGIN.'download/handlers/category_class.php');
|
||||
|
||||
|
||||
if (isset($_POST['commentsubmit']))
|
||||
{
|
||||
if (!$sql->db_Select("download", "download_comment", "download_id = '{$id}' "))
|
||||
$dl = new download();
|
||||
|
||||
|
||||
if(!defined("USER_WIDTH")) { define("USER_WIDTH","width:100%"); }
|
||||
|
||||
/* define images */
|
||||
|
||||
/** @Deprecated **/
|
||||
define("IMAGE_DOWNLOAD", (file_exists(THEME."images/download.png") ? THEME."images/download.png" : e_IMAGE."generic/download.png"));
|
||||
|
||||
/** @Deprecated **/
|
||||
define("IMAGE_NEW", (file_exists(THEME."images/new.png") ? THEME."images/new.png" : e_IMAGE."generic/new.png"));
|
||||
|
||||
|
||||
$dl->init();
|
||||
|
||||
// Legacy Comment Save.
|
||||
if (isset($_POST['commentsubmit']))
|
||||
{
|
||||
header("location:".e_BASE."index.php");
|
||||
exit;
|
||||
}
|
||||
else
|
||||
{
|
||||
$dlrow = $sql->db_Fetch();
|
||||
if ($dlrow['download_comment'] && (ANON === TRUE || USER === TRUE))
|
||||
if (!$sql->select("download", "download_comment", "download_id = '{$id}' "))
|
||||
{
|
||||
$clean_authorname = $_POST['author_name'];
|
||||
$clean_comment = $_POST['comment'];
|
||||
$clean_subject = $_POST['subject'];
|
||||
|
||||
$cobj->enter_comment($clean_authorname, $clean_comment, "download", $id, $pid, $clean_subject);
|
||||
// $e107cache->clear("comment.download.{$sub_action}"); $sub_action not used here
|
||||
$e107cache->clear("comment.download");
|
||||
header("location:".e_BASE."index.php");
|
||||
exit;
|
||||
}
|
||||
else
|
||||
{
|
||||
$dlrow = $sql->fetch();
|
||||
if ($dlrow['download_comment'] && (ANON === TRUE || USER === TRUE))
|
||||
{
|
||||
$clean_authorname = $_POST['author_name'];
|
||||
$clean_comment = $_POST['comment'];
|
||||
$clean_subject = $_POST['subject'];
|
||||
|
||||
e107::getComment()->enter_comment($clean_authorname, $clean_comment, "download", $id, $pid, $clean_subject);
|
||||
// $e107cache->clear("comment.download.{$sub_action}"); $sub_action not used here
|
||||
$e107cache->clear("comment.download");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$texts = $dl->render(); // Load before header.
|
||||
|
||||
|
||||
require_once (HEADERF);
|
||||
|
||||
if($action == 'maincats')
|
||||
{
|
||||
$dl->renderCategories();
|
||||
}
|
||||
|
||||
if($action == 'list')
|
||||
{
|
||||
$dl->renderList();
|
||||
}
|
||||
require_once (HEADERF);
|
||||
|
||||
if($action == 'view')
|
||||
{
|
||||
$dl->renderView();
|
||||
}
|
||||
echo $texts;
|
||||
|
||||
require_once (FOOTERF);
|
||||
|
||||
if ($action == "report" && check_class($pref['download_reportbroken']))
|
||||
{
|
||||
$dl->renderReport();
|
||||
}
|
||||
|
||||
if($action == 'mirror')
|
||||
{
|
||||
$dl->renderMirror();
|
||||
}
|
||||
|
||||
require_once (FOOTERF);
|
||||
exit ;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//====================================================
|
||||
//LIST//====================================================
|
||||
if($action == "list")
|
||||
{
|
||||
|
||||
|
||||
/* SHOW SUBCATS ... */
|
||||
/*
|
||||
*
|
||||
*
|
||||
$total_downloads = $sql->db_Count("download", "(*)", "WHERE download_category = '{$id}' AND download_active > 0 AND download_visible REGEXP '" . e_CLASS_REGEXP . "'");
|
||||
|
||||
require_once (HEADERF);
|
||||
|
||||
if($sql->db_Select("download_category", "download_category_id", "download_category_parent='{$id}' "))
|
||||
{
|
||||
// there are subcats - display them ...
|
||||
$qry = "
|
||||
SELECT dc.*, dc2.download_category_name AS parent_name, dc2.download_category_icon as parent_icon, SUM(d.download_filesize) AS d_size,
|
||||
COUNT(d.download_id) AS d_count,
|
||||
MAX(d.download_datestamp) as d_last,
|
||||
SUM(d.download_requested) as d_requests
|
||||
FROM #download_category AS dc
|
||||
LEFT JOIN #download AS d ON dc.download_category_id = d.download_category AND d.download_active > 0 AND d.download_visible IN (" . USERCLASS_LIST . ")
|
||||
LEFT JOIN #download_category as dc2 ON dc2.download_category_id='{$id}'
|
||||
WHERE dc.download_category_class IN (" . USERCLASS_LIST . ") AND dc.download_category_parent='{$id}'
|
||||
GROUP by dc.download_category_id ORDER by dc.download_category_order
|
||||
";
|
||||
|
||||
$sql->db_Select_gen($qry);
|
||||
$scArray = $sql->db_getList();
|
||||
$load_template = 'download_template';
|
||||
|
||||
if(!isset($DOWNLOAD_CAT_PARENT_TABLE))
|
||||
{
|
||||
eval($template_load_core);
|
||||
}
|
||||
|
||||
if(!defined("DL_IMAGESTYLE"))
|
||||
{
|
||||
define("DL_IMAGESTYLE", "border:1px solid blue");
|
||||
}
|
||||
|
||||
$download_cat_table_string = "";
|
||||
$dl_text = $tp->parseTemplate($DOWNLOAD_CAT_TABLE_PRE, TRUE, $download_shortcodes);
|
||||
$dl_text .= $tp->parseTemplate($DOWNLOAD_CAT_TABLE_START, TRUE, $download_shortcodes);
|
||||
|
||||
foreach($scArray as $dlsubsubrow)
|
||||
{
|
||||
$dl_text .= $tp->parseTemplate($DOWNLOAD_CAT_SUBSUB_TABLE, TRUE, $download_shortcodes);
|
||||
}
|
||||
|
||||
$dl_text .= $tp->parseTemplate($DOWNLOAD_CAT_TABLE_END, TRUE, $download_shortcodes);
|
||||
|
||||
$dlbreadcrumb = $dl->getBreadcrumb(array(LAN_dl_18 => e_SELF,$type));
|
||||
$dl_title = $tp->parseTemplate("{BREADCRUMB=dlbreadcrumb}", TRUE, $download_shortcodes);
|
||||
|
||||
$ns->tablerender($dl_title, $dl_text);
|
||||
$text = "";
|
||||
// If other files, show in a separate block
|
||||
$dl_title = "";
|
||||
// Cancel title once displayed
|
||||
}// End of subcategory display
|
||||
|
||||
// Now display individual downloads
|
||||
if(!check_class($download_category_class))
|
||||
{
|
||||
$ns->tablerender(LAN_dl_18, "
|
||||
<div style='text-align:center'>
|
||||
" . LAN_dl_3 . "
|
||||
</div>");
|
||||
require_once (FOOTERF);
|
||||
exit ;
|
||||
}
|
||||
if($total_downloads < $view)
|
||||
{
|
||||
$dl_from = 0;
|
||||
}
|
||||
|
||||
$load_template = 'download_template';
|
||||
if(!isset($DOWNLOAD_LIST_TABLE))
|
||||
eval($template_load_core);
|
||||
if(!defined("DL_IMAGESTYLE"))
|
||||
{
|
||||
define("DL_IMAGESTYLE", "border:1px solid blue");
|
||||
}
|
||||
|
||||
require_once (e_HANDLER . "rate_class.php");
|
||||
$dltdownloads = 0;
|
||||
|
||||
// $dl_from - first entry to show (note - can get reset due to reuse of query,
|
||||
// even if values overridden this time)
|
||||
// $view - number of entries per page
|
||||
// $total_downloads - total number of entries matching search criteria
|
||||
$filetotal = $sql->select("download", "*", "download_category='{$id}' AND download_active > 0 AND download_visible IN (" . USERCLASS_LIST . ") ORDER BY {$order} {$sort} LIMIT {$dl_from}, {$view}");
|
||||
|
||||
if($filetotal)
|
||||
{
|
||||
// Only show list if some files in it
|
||||
$dl_text = $tp->parseTemplate($DOWNLOAD_LIST_TABLE_START, TRUE, $download_shortcodes);
|
||||
|
||||
$dlft = ($filetotal < $view? $filetotal: $view);
|
||||
while($dlrow = $sql->db_Fetch())
|
||||
{
|
||||
$agreetext = $tp->toHTML($pref['agree_text'], TRUE, 'DESCRIPTION');
|
||||
$current_row = ($current_row)? 0: 1;
|
||||
// Alternating CSS for each row.(backwards compatible)
|
||||
$template = ($current_row == 1)? $DOWNLOAD_LIST_TABLE: str_replace("forumheader3", "forumheader3 forumheader3_alt", $DOWNLOAD_LIST_TABLE);
|
||||
$dl_text .= $tp->parseTemplate($template, TRUE, $download_shortcodes);
|
||||
;
|
||||
$dltdownloads += $dlrow['download_requested'];
|
||||
}
|
||||
|
||||
$dl_text .= $tp->parseTemplate($DOWNLOAD_LIST_TABLE_END, TRUE, $download_shortcodes);
|
||||
|
||||
if($sql->db_Select("download_category", "*", "download_category_id='{$download_category_parent}' "))
|
||||
{
|
||||
$parent = $sql->db_Fetch();
|
||||
}
|
||||
$dlbreadcrumb = $dl->getBreadcrumb(array(
|
||||
LAN_dl_18 => e_SELF,
|
||||
$parent['download_category_name'] => e_SELF . "?list." . $parent['download_category_id'],
|
||||
$type
|
||||
));
|
||||
$dl_title .= $tp->parseTemplate("{BREADCRUMB=dlbreadcrumb}", TRUE, $download_shortcodes);
|
||||
$ns->tablerender($dl_title, $dl_text);
|
||||
}
|
||||
|
||||
if(!isset($DOWNLOAD_LIST_NEXTPREV))
|
||||
{
|
||||
$sc_style['DOWNLOAD_LIST_NEXTPREV']['pre'] = "
|
||||
<div class='nextprev'>
|
||||
";
|
||||
$sc_style['DOWNLOAD_LIST_NEXTPREV']['post'] = "
|
||||
</div>";
|
||||
|
||||
$DOWNLOAD_LIST_NEXTPREV = "
|
||||
<div style='text-align:center;margin-left:auto;margin-right:auto'>
|
||||
{DOWNLOAD_BACK_TO_CATEGORY_LIST}
|
||||
<br />
|
||||
<br />
|
||||
{DOWNLOAD_LIST_NEXTPREV}
|
||||
</div>";
|
||||
}
|
||||
|
||||
$nextprev_parms = $total_downloads . "," . $view . "," . $dl_from . "," . e_SELF . "?[FROM].list.{$id}.{$view}.{$order}.{$sort}.";
|
||||
echo $tp->parseTemplate($DOWNLOAD_LIST_NEXTPREV, TRUE, $download_shortcodes);
|
||||
*/
|
||||
require_once (FOOTERF);
|
||||
exit ;
|
||||
} // end of action=="list"
|
||||
|
||||
//====================================================
|
||||
// VIEW
|
||||
//====================================================
|
||||
if ($action == "view")
|
||||
{
|
||||
/*
|
||||
$gen = new convert;
|
||||
|
||||
$highlight_search = FALSE;
|
||||
if (isset($_POST['highlight_search'])) {
|
||||
$highlight_search = TRUE;
|
||||
}
|
||||
|
||||
$query = "
|
||||
SELECT d.*, dc.* FROM #download AS d
|
||||
LEFT JOIN #download_category AS dc ON d.download_category = dc.download_category_id
|
||||
WHERE d.download_id = {$id} AND d.download_active > 0
|
||||
AND d.download_visible IN (".USERCLASS_LIST.")
|
||||
AND dc.download_category_class IN (".USERCLASS_LIST.")
|
||||
LIMIT 1";
|
||||
|
||||
if(!$sql->db_Select_gen($query)){
|
||||
require_once(HEADERF);
|
||||
$ns->tablerender(LAN_dl_18, "<div style='text-align:center'>".LAN_dl_3."</div>");
|
||||
require_once(FOOTERF);
|
||||
exit;
|
||||
}
|
||||
|
||||
$dlrow = $sql->db_Fetch();
|
||||
|
||||
$comment_edit_query = 'comment.download.'.$id;
|
||||
|
||||
$load_template = 'download_template';
|
||||
if (!isset($DOWNLOAD_VIEW_TABLE)) eval($template_load_core);
|
||||
if(!defined("DL_IMAGESTYLE")){ define("DL_IMAGESTYLE","border:0px");}
|
||||
if(!isset($DL_VIEW_PAGETITLE))
|
||||
{
|
||||
$DL_VIEW_PAGETITLE = PAGE_NAME." / {DOWNLOAD_CATEGORY} / {DOWNLOAD_VIEW_NAME}";
|
||||
}
|
||||
|
||||
$DL_TITLE = $tp->parseTemplate($DL_VIEW_PAGETITLE, TRUE, $download_shortcodes);
|
||||
|
||||
define("e_PAGETITLE", $DL_TITLE);
|
||||
|
||||
require_once(HEADERF);
|
||||
$DL_TEMPLATE = $DOWNLOAD_VIEW_TABLE_START.$DOWNLOAD_VIEW_TABLE.$DOWNLOAD_VIEW_TABLE_END;
|
||||
$text = $tp->parseTemplate($DL_TEMPLATE, TRUE, $download_shortcodes);
|
||||
|
||||
if(!isset($DL_VIEW_NEXTPREV))
|
||||
{
|
||||
$DL_VIEW_NEXTPREV = "
|
||||
<div style='text-align:center'>
|
||||
<table style='".USER_WIDTH."'>
|
||||
<tr>
|
||||
<td style='width:40%;'>{DOWNLOAD_VIEW_PREV}</td>
|
||||
<td style='width:20%; text-align: center;'>{DOWNLOAD_BACK_TO_LIST}</td>
|
||||
<td style='width:40%; text-align: right;'>{DOWNLOAD_VIEW_NEXT}</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
";
|
||||
}
|
||||
// ------- Next/Prev -----------
|
||||
$text .= $tp->parseTemplate($DL_VIEW_NEXTPREV,TRUE,$download_shortcodes);
|
||||
|
||||
$dlbreadcrumb = $dl->getBreadcrumb(array(LAN_dl_18=>e_SELF, $dlrow['download_category_name']=>e_SELF."?list.".$dlrow['download_category_id'], $dlrow['download_name']));
|
||||
$dl_title .= $tp->parseTemplate("{BREADCRUMB=dlbreadcrumb}", TRUE, $download_shortcodes);
|
||||
$ns->tablerender($dl_title, $text);
|
||||
|
||||
unset($text);
|
||||
|
||||
if ($dlrow['download_comment']) {
|
||||
$cobj->compose_comment("download", "comment", $id, $width,$dlrow['download_name'], $showrate=FALSE);
|
||||
}
|
||||
|
||||
require_once(FOOTERF);
|
||||
exit;
|
||||
*/
|
||||
}
|
||||
|
||||
//====================================================
|
||||
// REPORT BROKEN LINKS
|
||||
//====================================================
|
||||
if ($action == "report" && check_class($pref['download_reportbroken']))
|
||||
{
|
||||
/*
|
||||
$query = "
|
||||
SELECT d.*, dc.* FROM #download AS d
|
||||
LEFT JOIN #download_category AS dc ON d.download_category = dc.download_category_id
|
||||
WHERE d.download_id = {$id}
|
||||
AND download_active > 0
|
||||
LIMIT 1";
|
||||
|
||||
if(!$sql->db_Select_gen($query))
|
||||
{
|
||||
//if (!$sql->db_Select("download", "*", "download_id = {$id} AND download_active > 0")) {
|
||||
require_once(HEADERF);
|
||||
require_once(FOOTERF);
|
||||
exit;
|
||||
}
|
||||
|
||||
$dlrow = $sql->db_Fetch();
|
||||
extract($dlrow);
|
||||
|
||||
if (isset($_POST['report_download'])) {
|
||||
$report_add = $tp->toDB($_POST['report_add']);
|
||||
$download_name = $tp->toDB($download_name);
|
||||
$user = USER ? USERNAME : LAN_dl_52;
|
||||
|
||||
if ($pref['download_email']) { // this needs to be moved into the NOTIFY, with an event.
|
||||
require_once(e_HANDLER."mail.php");
|
||||
$subject = LAN_dl_60." ".SITENAME;
|
||||
$report = LAN_dl_58." ".SITENAME.":\n".(substr(SITEURL, -1) == "/" ? SITEURL : SITEURL."/")."download.php?view.".$download_id."\n
|
||||
".LAN_dl_59." ".$user."\n".$report_add;
|
||||
sendemail(SITEADMINEMAIL, $subject, $report);
|
||||
}
|
||||
|
||||
$sql->db_Insert('generic', "0, 'Broken Download', ".time().",'".USERID."', '{$download_name}', {$id}, '{$report_add}'");
|
||||
|
||||
define("e_PAGETITLE", PAGE_NAME." / ".LAN_dl_47);
|
||||
require_once(HEADERF);
|
||||
|
||||
$text = LAN_dl_48."<br /><br /><a href='".e_PLUGIN."download/download.php?view.".$download_id."'>".LAN_dl_49."</a>";
|
||||
$dlbreadcrumb = $dl->getBreadcrumb(array(LAN_dl_18=>e_SELF, $dlrow['download_category_name']=>e_SELF."?list.".$dlrow['download_category_id'], $dlrow['download_name']=>e_SELF."?view.".$dlrow['download_id'], LAN_dl_50));
|
||||
$dl_title .= $tp->parseTemplate("{BREADCRUMB=dlbreadcrumb}", TRUE, $download_shortcodes);
|
||||
$ns->tablerender($dl_title, $text);
|
||||
} else {
|
||||
define("e_PAGETITLE", PAGE_NAME." / ".LAN_dl_51." ".$download_name);
|
||||
require_once(HEADERF);
|
||||
|
||||
$text = "<form action='".e_SELF."?report.{$download_id}' method='post'>
|
||||
<table style='".USER_WIDTH."'>
|
||||
<tr>
|
||||
<td style='width:50%' >
|
||||
".LAN_dl_32.": ".$download_name."<br />
|
||||
<a href='".e_PLUGIN."download/download?view.{$download_id}'>
|
||||
<span class='smalltext'>".LAN_dl_53."</span>
|
||||
</a>
|
||||
</td>
|
||||
<td style='text-align:center;width:50%'>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>".LAN_dl_54."<br />".LAN_dl_55."</td>
|
||||
<td style='text-align:center;'>
|
||||
<textarea cols='40' rows='10' class='tbox' name='report_add'></textarea>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan='2' style='text-align:center;'><br />
|
||||
<input class='btn button' type='submit' name='report_download' value=\"".LAN_dl_45."\" />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>";
|
||||
$dlbreadcrumb = $dl->getBreadcrumb(array(LAN_dl_18=>e_SELF, $dlrow['download_category_name']=>e_SELF."?list.".$dlrow['download_category_id'], $dlrow['download_name']=>e_SELF."?view.".$dlrow['download_id'], LAN_dl_50));
|
||||
$dl_title .= $tp->parseTemplate("{BREADCRUMB=dlbreadcrumb}", TRUE, $download_shortcodes);
|
||||
$ns->tablerender($dl_title, $text);
|
||||
}*/
|
||||
|
||||
require_once(FOOTERF);
|
||||
exit;
|
||||
}
|
||||
|
||||
//====================================================
|
||||
// MIRRORS
|
||||
//====================================================
|
||||
|
||||
//TODO Move into download_class.php
|
||||
|
||||
if($action == "mirror")
|
||||
{
|
||||
//require_once(HEADERF);
|
||||
|
||||
/*
|
||||
$load_template = 'download_template';
|
||||
if (!isset($DOWNLOAD_MIRROR_START)) eval($template_load_core);
|
||||
|
||||
$sql->db_Select("download_mirror");
|
||||
$mirrorList = $sql->db_getList("ALL", 0, 200, "mirror_id");
|
||||
|
||||
$query = "
|
||||
SELECT d.*, dc.* FROM #download AS d
|
||||
LEFT JOIN #download_category AS dc ON d.download_category = dc.download_category_id
|
||||
WHERE d.download_id = {$id}
|
||||
LIMIT 1";
|
||||
|
||||
if($sql->db_Select_gen($query))
|
||||
{
|
||||
$dlrow = $sql->db_Fetch();
|
||||
$array = explode(chr(1), $dlrow['download_mirror']);
|
||||
if (2 == varset($pref['mirror_order']))
|
||||
{
|
||||
// Order by name, sort array manually
|
||||
usort($array, "sort_download_mirror_order");
|
||||
}
|
||||
//elseif (1 == varset($pref['mirror_order']))
|
||||
//{
|
||||
// // Order by ID - do nothing order is as stored in DB
|
||||
//}
|
||||
elseif (0 == varset($pref['mirror_order'], 0))
|
||||
{
|
||||
// Shuffle the mirror list into a random order
|
||||
$c = count($array);
|
||||
for ($i=1; $i<$c; $i++)
|
||||
{
|
||||
$d = mt_rand(0, $i);
|
||||
$tmp = $array[$i];
|
||||
$array[$i] = $array[$d];
|
||||
$array[$d] = $tmp;
|
||||
}
|
||||
}
|
||||
|
||||
$dl_text = $tp->parseTemplate($DOWNLOAD_MIRROR_START, TRUE, $download_shortcodes);
|
||||
$download_mirror = 1;
|
||||
foreach($array as $mirrorstring)
|
||||
{
|
||||
if($mirrorstring)
|
||||
{
|
||||
$dlmirrorfile = explode(",", $mirrorstring);
|
||||
$dlmirror = $mirrorList[$dlmirrorfile[0]];
|
||||
$dl_text .= $tp->parseTemplate($DOWNLOAD_MIRROR, TRUE, $download_shortcodes);
|
||||
}
|
||||
}
|
||||
$dl_text .= $tp->parseTemplate($DOWNLOAD_MIRROR_END, TRUE, $download_shortcodes);
|
||||
$dlbreadcrumb = $dl->getBreadcrumb(array(LAN_dl_18=>e_SELF, $dlrow['download_category_name']=>e_SELF."?list.".$dlrow['download_category_id'], $dlrow['download_name']=>e_SELF."?view.".$dlrow['download_id'], LAN_dl_67));
|
||||
$dl_title .= $tp->parseTemplate("{BREADCRUMB=dlbreadcrumb}", TRUE, $download_shortcodes);
|
||||
$ns->tablerender($dl_title, $dl_text);*/
|
||||
|
||||
// require_once(FOOTERF);
|
||||
//}
|
||||
}
|
||||
|
||||
function sort_download_mirror_order($a, $b)
|
||||
{
|
||||
$a = explode(",", $a);
|
||||
$b = explode(",", $b);
|
||||
if ($a[1] == $b[1]) {
|
||||
return 0;
|
||||
}
|
||||
return ($a[1] < $b[1]) ? -1 : 1;
|
||||
}
|
||||
?>
|
@@ -15,50 +15,49 @@
|
||||
*/
|
||||
|
||||
if (!defined('e107_INIT')) { exit; }
|
||||
require_once(e_HANDLER.'shortcode_handler.php');
|
||||
//register_shortcode('download_shortcodes', true);
|
||||
//initShortcodeClass('download_shortcodes');
|
||||
|
||||
/**
|
||||
* download_shortcodes
|
||||
*/
|
||||
class download_shortcodes extends e_shortcode
|
||||
{
|
||||
var $e107;
|
||||
var $postInfo;
|
||||
var $qry;
|
||||
|
||||
public $qry;
|
||||
public $dlsubrow;
|
||||
public $dlsubsubrow;
|
||||
public $mirror;
|
||||
|
||||
/**
|
||||
* download_shortcodes constructor
|
||||
*/
|
||||
function __construct()
|
||||
{
|
||||
$this->e107 = e107::getInstance();
|
||||
$this->postInfo = array();
|
||||
|
||||
}
|
||||
|
||||
function sc_download_breadcrumb($parm='')
|
||||
{
|
||||
$tp = e107::getParser();
|
||||
$frm = e107::getForm();
|
||||
|
||||
global $dlrow;
|
||||
|
||||
|
||||
$breadcrumb = array();
|
||||
|
||||
switch ($this->qry['action'])
|
||||
{
|
||||
case 'mirror':
|
||||
$breadcrumb[] = array('text' => LAN_dl_18, 'url' => e_SELF);
|
||||
$breadcrumb[] = array('text' => $dlrow['download_category_name'], 'url' => e_SELF."?action=list&id=".$dlrow['download_category_id']);
|
||||
$breadcrumb[] = array('text' => $dlrow['download_name'], 'url' => e_SELF."?action=view&id=".$dlrow['download_id']);
|
||||
$breadcrumb[] = array('text' => LAN_dl_67, 'url' => null);
|
||||
$breadcrumb[] = array('text' => LAN_dl_18, 'url' => e_SELF);
|
||||
$breadcrumb[] = array('text' => $this->var['download_category_name'], 'url' => e_SELF."?action=list&id=".$this->var['download_category_id']);
|
||||
$breadcrumb[] = array('text' => $this->var['download_name'], 'url' => e_SELF."?action=view&id=".$this->var['download_id']);
|
||||
$breadcrumb[] = array('text' => LAN_dl_67, 'url' => null);
|
||||
break;
|
||||
|
||||
case 'maincats':
|
||||
$breadcrumb[] = array('text' => LAN_dl_18, 'url' => e_SELF);
|
||||
break;
|
||||
|
||||
default:
|
||||
$breadcrumb[] = array('text' => LAN_dl_18, 'url' => e_SELF);
|
||||
$breadcrumb[] = array('text' => $dlrow['download_category_name'], 'url' => e_SELF."?action=list&id=".$dlrow['download_category_id']);
|
||||
$breadcrumb[] = array('text' => $dlrow['download_name'], 'url' => null);
|
||||
$breadcrumb[] = array('text' => LAN_dl_18, 'url' => e_SELF);
|
||||
$breadcrumb[] = array('text' => $this->var['download_category_name'], 'url' => e_SELF."?action=list&id=".$this->var['download_category_id']);
|
||||
$breadcrumb[] = array('text' => $this->var['download_name'], 'url' => null);
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -68,95 +67,109 @@ class download_shortcodes extends e_shortcode
|
||||
|
||||
|
||||
// Category ************************************************************************************
|
||||
function sc_download_cat_main_name() {
|
||||
global $tp, $dlrow;
|
||||
return $tp->toHTML($dlrow['download_category_name'], FALSE, 'TITLE');
|
||||
function sc_download_cat_main_name()
|
||||
{
|
||||
$tp = e107::getParser();
|
||||
return $tp->toHTML($this->var['download_category_name'], FALSE, 'TITLE');
|
||||
}
|
||||
function sc_download_cat_main_description() {
|
||||
global $tp, $dlrow;
|
||||
return $tp->toHTML($dlrow['download_category_description'], TRUE, 'DESCRIPTION');
|
||||
|
||||
function sc_download_cat_main_description()
|
||||
{
|
||||
$tp = e107::getParser();
|
||||
return $tp->toHTML($this->var['download_category_description'], TRUE, 'DESCRIPTION');
|
||||
}
|
||||
function sc_download_cat_main_icon() {
|
||||
global $dlrow;
|
||||
|
||||
function sc_download_cat_main_icon()
|
||||
{
|
||||
// Pass count as 1 to force non-empty icon
|
||||
return $this->_sc_cat_icons($dlrow['download_category_icon'], 1, $dlrow['download_category_name']);
|
||||
return $this->_sc_cat_icons($this->var['download_category_icon'], 1, $this->var['download_category_name']);
|
||||
}
|
||||
|
||||
// Sub-Category ********************************************************************************
|
||||
function sc_download_cat_sub_name() {
|
||||
global $tp, $dlsubrow;
|
||||
if ($dlsubrow['d_count'])
|
||||
function sc_download_cat_sub_name()
|
||||
{
|
||||
$tp = e107::getParser();
|
||||
if ($this->dlsubrow['d_count'])
|
||||
{
|
||||
return "<a href='".e_PLUGIN."download/download.php?action=list&id=".$dlsubrow['download_category_id']."'>".$tp->toHTML($dlsubrow['download_category_name'], FALSE, 'TITLE')."</a>";
|
||||
return "<a href='".e_PLUGIN_ABS."download/download.php?action=list&id=".$this->dlsubrow['download_category_id']."'>".$tp->toHTML($this->dlsubrow['download_category_name'], FALSE, 'TITLE')."</a>";
|
||||
}
|
||||
else
|
||||
{
|
||||
return $tp->toHTML($dlsubrow['download_category_name'], FALSE, 'TITLE');
|
||||
return $tp->toHTML($this->dlsubrow['download_category_name'], FALSE, 'TITLE');
|
||||
}
|
||||
}
|
||||
function sc_download_cat_sub_description() {
|
||||
global $tp, $dlsubrow;
|
||||
return $tp->toHTML($dlsubrow['download_category_description'], TRUE, 'DESCRIPTION');
|
||||
|
||||
function sc_download_cat_sub_description()
|
||||
{
|
||||
$tp = e107::getParser();
|
||||
return $tp->toHTML($this->dlsubrow['download_category_description'], TRUE, 'DESCRIPTION');
|
||||
}
|
||||
function sc_download_cat_sub_icon() {
|
||||
global $dlsubrow;
|
||||
return $this->_sc_cat_icons($dlsubrow['download_category_icon'], $dlsubrow['d_count'], $dlsubrow['download_category_name']);
|
||||
|
||||
function sc_download_cat_sub_icon()
|
||||
{
|
||||
return $this->_sc_cat_icons($this->dlsubrow['download_category_icon'], $this->dlsubrow['d_count'], $this->dlsubrow['download_category_name']);
|
||||
}
|
||||
function sc_download_cat_sub_new_icon() {
|
||||
global $dlsubrow;
|
||||
return $this->_check_new_download($dlsubrow['d_last_subs']);
|
||||
|
||||
function sc_download_cat_sub_new_icon()
|
||||
{
|
||||
return $this->_check_new_download($this->dlsubrow['d_last_subs']);
|
||||
}
|
||||
function sc_download_cat_sub_count() {
|
||||
global $dlsubrow;
|
||||
return $dlsubrow['d_count'];
|
||||
|
||||
function sc_download_cat_sub_count()
|
||||
{
|
||||
return $this->dlsubrow['d_count'];
|
||||
}
|
||||
function sc_download_cat_sub_size() {
|
||||
global $e107, $dlsubrow;
|
||||
return $this->e107->parseMemorySize($dlsubrow['d_size']);
|
||||
|
||||
function sc_download_cat_sub_size()
|
||||
{
|
||||
return eHelper::parseMemorySize($this->dlsubrow['d_size']);
|
||||
}
|
||||
function sc_download_cat_sub_downloaded() {
|
||||
global $dlsubrow;
|
||||
return intval($dlsubrow['d_requests']);
|
||||
|
||||
function sc_download_cat_sub_downloaded()
|
||||
{
|
||||
return intval($this->dlsubrow['d_requests']);
|
||||
}
|
||||
|
||||
|
||||
// Sub-Sub-Category ****************************************************************************
|
||||
|
||||
|
||||
function sc_download_cat_subsub_name() {
|
||||
global $tp, $dlsubsubrow;
|
||||
if ($dlsubsubrow['d_count'])
|
||||
function sc_download_cat_subsub_name()
|
||||
{
|
||||
$tp = e107::getParser();
|
||||
if ($this->dlsubsubrow['d_count'])
|
||||
{
|
||||
return "<a href='".e_PLUGIN."download/download.php?action=list&id=".$dlsubsubrow['download_category_id']."'>".$tp->toHTML($dlsubsubrow['download_category_name'], FALSE, 'TITLE')."</a>";
|
||||
return "<a href='".e_PLUGIN_ABS."download/download.php?action=list&id=".$this->dlsubsubrow['download_category_id']."'>".$tp->toHTML($this->dlsubsubrow['download_category_name'], FALSE, 'TITLE')."</a>";
|
||||
}
|
||||
else
|
||||
{
|
||||
return $tp->toHTML($dlsubsubrow['download_category_name'], FALSE, 'TITLE');
|
||||
return $tp->toHTML($this->dlsubsubrow['download_category_name'], FALSE, 'TITLE');
|
||||
}
|
||||
}
|
||||
|
||||
function sc_download_cat_subsub_description() {
|
||||
global $tp, $dlsubsubrow;
|
||||
return $tp->toHTML($dlsubsubrow['download_category_description'], TRUE, 'DESCRIPTION');
|
||||
function sc_download_cat_subsub_description()
|
||||
{
|
||||
return e107::getParser()->toHTML($this->dlsubsubrow['download_category_description'], TRUE, 'DESCRIPTION');
|
||||
}
|
||||
|
||||
function sc_download_cat_subsub_icon() {
|
||||
global $dlsubsubrow;
|
||||
return $this->_sc_cat_icons($dlsubsubrow['download_category_icon'], $dlsubsubrow['d_count'], $dlsubsubrow['download_category_name']);
|
||||
function sc_download_cat_subsub_icon()
|
||||
{
|
||||
return $this->_sc_cat_icons($this->dlsubsubrow['download_category_icon'], $this->dlsubsubrow['d_count'], $this->dlsubsubrow['download_category_name']);
|
||||
}
|
||||
|
||||
function sc_download_cat_subsub_count() {
|
||||
global $dlsubsubrow;
|
||||
return $dlsubsubrow['d_count'];
|
||||
function sc_download_cat_subsub_count()
|
||||
{
|
||||
return $this->dlsubsubrow['d_count'];
|
||||
}
|
||||
|
||||
function sc_download_cat_subsub_size() {
|
||||
global $e107, $dlsubsubrow;
|
||||
return $this->e107->parseMemorySize($dlsubsubrow['d_size']);
|
||||
function sc_download_cat_subsub_size()
|
||||
{
|
||||
return eHelper::parseMemorySize($this->dlsubsubrow['d_size']);
|
||||
}
|
||||
|
||||
function sc_download_cat_subsub_downloaded() {
|
||||
global $dlsubsubrow;
|
||||
return intval($dlsubsubrow['d_requests']);
|
||||
function sc_download_cat_subsub_downloaded()
|
||||
{
|
||||
return intval($this->dlsubsubrow['d_requests']);
|
||||
}
|
||||
|
||||
|
||||
@@ -216,71 +229,79 @@ class download_shortcodes extends e_shortcode
|
||||
|
||||
|
||||
|
||||
function sc_download_list_name()
|
||||
function sc_download_list_name($parm='')
|
||||
{
|
||||
global $dlrow,$tp,$pref,$parm;
|
||||
if ($parm == "nolink"){
|
||||
return $tp->toHTML($dlrow['download_name'],TRUE,'LINKTEXT');
|
||||
$tp = e107::getParser();
|
||||
$pref = e107::getPref();
|
||||
|
||||
if ($parm == "nolink")
|
||||
{
|
||||
return $tp->toHTML($this->var['download_name'],TRUE,'LINKTEXT');
|
||||
}
|
||||
if ($parm == "request"){
|
||||
|
||||
if ($parm == "request")
|
||||
{
|
||||
$agreetext = $tp->toJS($tp->toHTML($pref['agree_text'],FALSE,'DESCRIPTION'));
|
||||
if ($dlrow['download_mirror_type']){
|
||||
$text = ($pref['agree_flag'] ? "<a href='".e_PLUGIN."download/download.php?mirror.".$dlrow['download_id']."' onclick= \"return confirm('{$agreetext}');\">" : "<a href='".e_PLUGIN."download/download.php?mirror.".$dlrow['download_id']."' title='".LAN_dl_32."'>");
|
||||
}else{
|
||||
$text = ($pref['agree_flag'] ? "<a href='".e_BASE."request.php?".$dlrow['download_id']."' onclick= \"return confirm('{$agreetext}');\">" : "<a href='".e_BASE."request.php?".$dlrow['download_id']."' title='".LAN_dl_32."'>");
|
||||
|
||||
if ($this->var['download_mirror_type'])
|
||||
{
|
||||
$text = ($pref['agree_flag'] ? "<a href='".e_PLUGIN_ABS."download/download.php?mirror.".$this->var['download_id']."' onclick= \"return confirm('{$agreetext}');\">" : "<a href='".e_PLUGIN_ABS."download/download.php?mirror.".$this->var['download_id']."' title='".LAN_dl_32."'>");
|
||||
}
|
||||
$text .= $tp->toHTML($dlrow['download_name'], FALSE, 'TITLE')."</a>";
|
||||
else
|
||||
{
|
||||
$text = ($pref['agree_flag'] ? "<a href='".e_PLUGIN_ABS."download/request.php?".$this->var['download_id']."' onclick= \"return confirm('{$agreetext}');\">" : "<a href='".e_PLUGIN_ABS."download/request.php?".$this->var['download_id']."' title='".LAN_dl_32."'>");
|
||||
}
|
||||
|
||||
$text .= $tp->toHTML($this->var['download_name'], FALSE, 'TITLE')."</a>";
|
||||
|
||||
return $text;
|
||||
}
|
||||
return "<a href='".e_PLUGIN."download/download.php?action=view&id=".$dlrow['download_id']."'>".$tp->toHTML($dlrow['download_name'],TRUE,'LINKTEXT')."</a>";
|
||||
return "<a href='".e_PLUGIN_ABS."download/download.php?action=view&id=".$this->var['download_id']."'>".$tp->toHTML($this->var['download_name'],TRUE,'LINKTEXT')."</a>";
|
||||
}
|
||||
|
||||
function sc_download_list_author()
|
||||
{
|
||||
global $dlrow;
|
||||
return $dlrow['download_author'];
|
||||
return $this->var['download_author'];
|
||||
}
|
||||
|
||||
function sc_download_list_requested()
|
||||
{
|
||||
global $dlrow;
|
||||
return $dlrow['download_requested'];
|
||||
return $this->var['download_requested'];
|
||||
}
|
||||
|
||||
function sc_download_list_newicon()
|
||||
{
|
||||
global $dlrow;
|
||||
return (USER && $dlrow['download_datestamp'] > USERLV ? "<img src='".IMAGE_NEW."' alt='*' style='vertical-align:middle' />" : "");
|
||||
return (USER && $this->var['download_datestamp'] > USERLV ? "<img src='".IMAGE_NEW."' alt='*' style='vertical-align:middle' />" : "");
|
||||
}
|
||||
|
||||
function sc_download_list_recenticon()
|
||||
{
|
||||
global $dlrow, $pref;
|
||||
$pref = e107::getPref();
|
||||
// convert "recent_download_days" to seconds
|
||||
return ($dlrow['download_datestamp'] > time()-($pref['recent_download_days']*86400) ? '<img src="'.IMAGE_NEW.'" alt="" style="vertical-align:middle" />' : '');
|
||||
return ($this->var['download_datestamp'] > time()-($pref['recent_download_days']*86400) ? '<img src="'.IMAGE_NEW.'" alt="" style="vertical-align:middle" />' : '');
|
||||
}
|
||||
|
||||
function sc_download_list_filesize()
|
||||
{
|
||||
global $dlrow, $e107;
|
||||
return $e107->parseMemorySize($dlrow['download_filesize']);
|
||||
return eHelper::parseMemorySize($this->var['download_filesize']);
|
||||
}
|
||||
|
||||
function sc_download_list_datestamp()
|
||||
{
|
||||
global $dlrow;
|
||||
|
||||
$tp = e107::getParser();
|
||||
return $tp->toDate($dlrow['download_datestamp'], "short");
|
||||
return $tp->toDate($this->var['download_datestamp'], "short");
|
||||
}
|
||||
|
||||
function sc_download_list_thumb()
|
||||
function sc_download_list_thumb($parm='')
|
||||
{
|
||||
global $dlrow,$parm;
|
||||
$tp = e107::getParser();
|
||||
|
||||
$img = ($dlrow['download_thumb']) ? "<img src='".$tp->replaceConstants($dlrow['download_thumb'])."' alt='*' style='".DL_IMAGESTYLE."' />" : "";
|
||||
if ($parm == "link" && $dlrow['download_thumb']){
|
||||
return "<a href='".e_PLUGIN."download/download.php?action=view&id=".$dlrow['download_id']."'>".$img."</a>";
|
||||
$img = ($this->var['download_thumb']) ? "<img class='download-thumb' src='".$tp->replaceConstants($this->var['download_thumb'])."' alt='*' />" : "";
|
||||
|
||||
if ($parm == "link" && $this->var['download_thumb'])
|
||||
{
|
||||
return "<a href='".e_PLUGIN_ABS."download/download.php?action=view&id=".$this->var['download_id']."'>".$img."</a>";
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -290,50 +311,44 @@ class download_shortcodes extends e_shortcode
|
||||
|
||||
function sc_download_list_id()
|
||||
{
|
||||
global $dlrow;
|
||||
return $dlrow['download_id'];
|
||||
return $this->var['download_id'];
|
||||
}
|
||||
|
||||
function sc_download_list_rating()
|
||||
{
|
||||
global $dlrow;
|
||||
|
||||
return e107::getForm()->rate("download", $dlrow['download_id']);
|
||||
|
||||
|
||||
$rater = new rater();
|
||||
$ratearray = $rater->getrating("download", $dlrow['download_id']);
|
||||
if (!$ratearray[0]) {
|
||||
return LAN_dl_13;
|
||||
}
|
||||
else
|
||||
{
|
||||
return ($ratearray[2] ? "{$ratearray[1]}.{$ratearray[2]}/{$ratearray[0]}" : "{$ratearray[1]}/{$ratearray[0]}");
|
||||
}
|
||||
return e107::getForm()->rate("download", $this->var['download_id']);
|
||||
}
|
||||
|
||||
function sc_download_list_link()
|
||||
function sc_download_list_link($parm='')
|
||||
{
|
||||
global $tp, $dlrow, $pref, $parm;
|
||||
$agreetext = $tp->toJS($tp->toHTML($pref['agree_text'],FALSE,'DESCRIPTION'));
|
||||
$tp = e107::getParser();
|
||||
$pref = e107::getPref();
|
||||
|
||||
$img = "<img src='".IMAGE_DOWNLOAD."' alt='".LAN_dl_32."' title='".LAN_dl_32."' />";
|
||||
if ($dlrow['download_mirror_type'])
|
||||
$agreetext = $tp->toJS($tp->toHTML($pref['agree_text'],FALSE,'DESCRIPTION'));
|
||||
|
||||
$img = "<img src='".IMAGE_DOWNLOAD."' alt='".LAN_dl_32."' title='".LAN_dl_32."' />";
|
||||
|
||||
if(deftrue('BOOTSTRAP'))
|
||||
{
|
||||
$img = '<i class="icon-download"></i>';
|
||||
}
|
||||
|
||||
if ($this->var['download_mirror_type'])
|
||||
{
|
||||
return "<a href='".e_PLUGIN."download/download.php?mirror.".$dlrow['download_id']."'>{$img}</a>";
|
||||
return "<a class='e-tip' title='".LAN_dl_32."' href='".e_PLUGIN_ABS."download/download.php?mirror.".$this->var['download_id']."'>{$img}</a>";
|
||||
}
|
||||
else
|
||||
{
|
||||
return ($pref['agree_flag'] ? "<a href='".e_BASE."request.php?".$dlrow['download_id']."' onclick= \"return confirm('{$agreetext}');\">{$img}</a>" : "<a href='".e_BASE."request.php?".$dlrow['download_id']."' >{$img}</a>");
|
||||
return ($pref['agree_flag'] ? "<a class='e-tip' title='".LAN_dl_32."' href='".e_PLUGIN_ABS."download/request.php?".$this->var['download_id']."' onclick= \"return confirm('{$agreetext}');\">{$img}</a>" : "<a class='e-tip' title='".LAN_dl_32."' href='".e_PLUGIN_ABS."download/request.php?".$this->var['download_id']."' >{$img}</a>");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function sc_download_list_icon()
|
||||
function sc_download_list_icon($parm='')
|
||||
{
|
||||
global $dlrow,$parm;
|
||||
if ($parm == "link"){
|
||||
return "<a href='".e_PLUGIN."download/download.php?action=view&id=".$dlrow['download_id']."' >".$img."</a>";
|
||||
if ($parm == "link")
|
||||
{
|
||||
return "<a href='".e_PLUGIN_ABS."download/download.php?action=view&id=".$this->var['download_id']."' >".$img."</a>";
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -342,16 +357,14 @@ class download_shortcodes extends e_shortcode
|
||||
return;
|
||||
}
|
||||
|
||||
function sc_download_list_imagefull()
|
||||
function sc_download_list_imagefull($parm='')
|
||||
{
|
||||
global $dlrow,$parm;
|
||||
$tp = e107::getParser();
|
||||
|
||||
$img = ($this->var['download_image']) ? "<img class='download-image dl_image' src='".e107::getParser()->replaceConstants($this->var['download_image'])."' alt='' />" : "";
|
||||
|
||||
$img = ($dlrow['download_image']) ? "<img class='dl_image' src='".$tp->replaceConstants($dlrow['download_image'])."' alt='' style='".DL_IMAGESTYLE."' />" : "";
|
||||
|
||||
if($parm == "link" && $dlrow['download_image'])
|
||||
if($parm == "link" && $this->var['download_image'])
|
||||
{
|
||||
return "<a href='".e_BASE."download.php?action=view&id=".$dlrow['download_id']."'>".$img."</a>";
|
||||
return "<a href='".e_BASE."download.php?action=view&id=".$this->var['download_id']."'>".$img."</a>";
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -362,16 +375,18 @@ class download_shortcodes extends e_shortcode
|
||||
|
||||
function sc_download_list_nextprev()
|
||||
{
|
||||
global $nextprev_parms,$tp;
|
||||
return $tp->parseTemplate("{NEXTPREV={$nextprev_parms}}");
|
||||
global $nextprev_parms;
|
||||
return e107::getParser()->parseTemplate("{NEXTPREV={$nextprev_parms}}");
|
||||
}
|
||||
|
||||
function sc_download_list_total_amount() {
|
||||
function sc_download_list_total_amount()
|
||||
{
|
||||
global $dltdownloads;
|
||||
return intval($dltdownloads)." ".LAN_dl_16;
|
||||
}
|
||||
|
||||
function sc_download_list_total_files() {
|
||||
function sc_download_list_total_files()
|
||||
{
|
||||
global $dlft;
|
||||
return intval($dlft)." ".LAN_dl_17;
|
||||
}
|
||||
@@ -384,22 +399,23 @@ class download_shortcodes extends e_shortcode
|
||||
|
||||
function sc_download_view_id()
|
||||
{
|
||||
global $dlrow;
|
||||
return $dlrow['download_id'];
|
||||
return $this->var['download_id'];
|
||||
}
|
||||
|
||||
function sc_download_admin_edit()
|
||||
{
|
||||
global $dlrow;
|
||||
return (ADMIN && getperms('6')) ? "<a href='".e_ADMIN."download.php?create.edit.".$dlrow['download_id']."' title='edit'><img src='".e_IMAGE."generic/lite/edit.png' alt='*' style='padding:0px;border:0px' /></a>" : "";
|
||||
return (ADMIN && getperms('6')) ? "<a href='".e_ADMIN."download.php?create.edit.".$this->var['download_id']."' title='edit'><img src='".e_IMAGE."generic/lite/edit.png' alt='*' style='padding:0px;border:0px' /></a>" : "";
|
||||
}
|
||||
|
||||
function sc_download_category()
|
||||
{
|
||||
global $dlrow;
|
||||
return $dlrow['download_category_name'];
|
||||
return $this->var['download_category_name'];
|
||||
}
|
||||
|
||||
function sc_download_category_description()
|
||||
{
|
||||
global $tp,$dl,$parm;
|
||||
|
||||
$text = $tp -> toHTML($dl['download_category_description'], TRUE,'DESCRIPTION');
|
||||
if ($parm){
|
||||
return substr($text,0,$parm);
|
||||
@@ -407,128 +423,164 @@ class download_shortcodes extends e_shortcode
|
||||
return $text;
|
||||
}
|
||||
}
|
||||
function sc_download_view_name()
|
||||
function sc_download_view_name($parm='')
|
||||
{
|
||||
global $dlrow,$parm;
|
||||
$link['view'] = "<a href='".e_PLUGIN."download/download.php?action=view&id=".$dlrow['download_id']."'>".$dlrow['download_name']."</a>";
|
||||
$link['request'] = "<a href='".e_BASE."request.php?".$dlrow['download_id']."' title='".LAN_dl_46."'>".$dlrow['download_name']."</a>";
|
||||
if ($parm){
|
||||
return $link[$parm];
|
||||
$tp = e107::getParser();
|
||||
|
||||
$link['view'] = "<a href='".e_PLUGIN_ABS."download/download.php?action=view&id=".$this->var['download_id']."'>".$this->var['download_name']."</a>";
|
||||
$link['request'] = "<a href='".e_PLUGIN_ABS."download/request.php?".$this->var['download_id']."' title='".LAN_dl_46."'>".$this->var['download_name']."</a>";
|
||||
|
||||
if ($parm)
|
||||
{
|
||||
return $tp->toHTML($link[$parm],true, 'TITLE');
|
||||
}
|
||||
return $dlrow['download_name'];
|
||||
|
||||
return $this->var['download_name'];
|
||||
}
|
||||
|
||||
function sc_download_view_name_linked()
|
||||
{
|
||||
global $pref,$dl,$tp;
|
||||
if ($pref['agree_flag'] == 1) {
|
||||
return "<a href='".e_BASE."request.php?".$dl['download_id']."' onclick= \"return confirm('".$tp->toJS($tp->toHTML($pref['agree_text'],FALSE,'DESCRIPTION'))."');\" title='".LAN_dl_46."'>".$dl['download_name']."</a>";
|
||||
} else {
|
||||
return "<a href='".e_BASE."request.php?".$dl['download_id']."' title='".LAN_dl_46."'>".$dl['download_name']."</a>";
|
||||
global $dl;
|
||||
$tp = e107::getParser();
|
||||
$pref = e107::getPref();
|
||||
|
||||
if ($pref['agree_flag'] == 1)
|
||||
{
|
||||
return "<a href='".e_PLUGIN_ABS."download/request.php?".$dl['download_id']."' onclick= \"return confirm('".$tp->toJS($tp->toHTML($pref['agree_text'],FALSE,'DESCRIPTION'))."');\" title='".LAN_dl_46."'>".$dl['download_name']."</a>";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "<a href='".e_PLUGIN_ABS."download/request.php?".$dl['download_id']."' title='".LAN_dl_46."'>".$dl['download_name']."</a>";
|
||||
}
|
||||
}
|
||||
|
||||
function sc_download_view_author()
|
||||
{
|
||||
global $dlrow;
|
||||
return ($dlrow['download_author'] ? $dlrow['download_author'] : "");
|
||||
return ($this->var['download_author'] ? $this->var['download_author'] : "");
|
||||
}
|
||||
|
||||
function sc_download_view_authoremail()
|
||||
{
|
||||
global $tp,$dlrow;
|
||||
return ($dlrow['download_author_email']) ? $tp -> toHTML($dlrow['download_author_email'], TRUE, 'LINKTEXT') : "";
|
||||
return ($this->var['download_author_email']) ? e107::getParser()->toHTML($this->var['download_author_email'], TRUE, 'LINKTEXT') : "";
|
||||
}
|
||||
|
||||
function sc_download_view_authorwebsite()
|
||||
{
|
||||
global $tp,$dlrow;
|
||||
return ($dlrow['download_author_website']) ? $tp -> toHTML($dlrow['download_author_website'], TRUE,'LINKTEXT') : "";
|
||||
return ($this->var['download_author_website']) ? e107::getParser()->toHTML($this->var['download_author_website'], TRUE,'LINKTEXT') : "";
|
||||
}
|
||||
function sc_download_view_description()
|
||||
|
||||
function sc_download_view_description($parm='')
|
||||
{
|
||||
global $tp,$dlrow,$parm;
|
||||
$maxlen = ($parm ? intval($parm) : 0);
|
||||
$text = ($dlrow['download_description'] ? $tp->toHTML($dlrow['download_description'], TRUE, 'DESCRIPTION') : "");
|
||||
if ($maxlen){
|
||||
$text = ($this->var['download_description'] ? e107::getParser()->toHTML($this->var['download_description'], TRUE, 'DESCRIPTION') : "");
|
||||
|
||||
if ($maxlen)
|
||||
{
|
||||
return substr($text, 0, $maxlen);
|
||||
}else{
|
||||
}
|
||||
else
|
||||
{
|
||||
return $text;
|
||||
}
|
||||
|
||||
return $text;
|
||||
}
|
||||
function sc_download_view_date()
|
||||
|
||||
function sc_download_view_date($parm='')
|
||||
{
|
||||
global $gen,$dlrow,$parm;
|
||||
$tp = e107::getParser();
|
||||
return ($dlrow['download_datestamp']) ? $tp->toDate($dlrow['download_datestamp'], $parm) : "";
|
||||
return ($this->var['download_datestamp']) ? e107::getParser()->toDate($this->var['download_datestamp'], $parm) : "";
|
||||
}
|
||||
|
||||
/**
|
||||
* @Deprecated DOWNLOAD_VIEW_DATE should be used instead.
|
||||
*/
|
||||
function sc_download_view_date_short()
|
||||
{
|
||||
// deprecated: DOWNLOAD_VIEW_DATE should be used instead.
|
||||
global $gen,$dlrow;
|
||||
return ($dlrow['download_datestamp']) ? $gen->convert_date($dlrow['download_datestamp'], "short") : "";
|
||||
return $this->sc_download_view_date('short');
|
||||
}
|
||||
|
||||
/**
|
||||
* @Deprecated DOWNLOAD_VIEW_DATE should be used instead.
|
||||
*/
|
||||
function sc_download_view_date_long()
|
||||
{
|
||||
// deprecated: DOWNLOAD_VIEW_DATE should be used instead.
|
||||
global $gen,$dlrow;
|
||||
return ($dlrow['download_datestamp']) ? $gen->convert_date($dlrow['download_datestamp'], "long") : "";
|
||||
return $this->sc_download_view_date('long');
|
||||
}
|
||||
|
||||
function sc_download_view_image()
|
||||
{
|
||||
global $dlrow;
|
||||
$tp = e107::getParser();
|
||||
|
||||
if ($dlrow['download_thumb']) {
|
||||
return ($dlrow['download_image'] ? "<a href='".e_BASE."request.php?download.".$dlrow['download_id']."'><img class='dl_image' src='".$tp->replaceConstants($dlrow['download_thumb'])."' alt='*' style='".DL_IMAGESTYLE."' /></a>" : "<img class='dl_image' src='".$tp->replaceConstants($dlrow['download_thumb'])."' alt='*' style='".DL_IMAGESTYLE."' />");
|
||||
if ($this->var['download_thumb'])
|
||||
{
|
||||
return ($this->var['download_image'] ? "<a href='".e_PLUGIN_ABS."download/request.php?download.".$this->var['download_id']."'><img class='download-image dl_image' src='".$tp->replaceConstants($this->var['download_thumb'])."' alt='*' /></a>" : "<img class='download-image dl_image' src='".$tp->replaceConstants($this->var['download_thumb'])."' alt='*' />");
|
||||
}
|
||||
else if ($dlrow['download_image']) {
|
||||
return "<a href='".e_BASE."request.php?download.".$dlrow['download_id']."'>".LAN_dl_40."</a>";
|
||||
elseif ($this->var['download_image'])
|
||||
{
|
||||
return "<a href='".e_PLUGIN_ABS."download/request.php?download.".$this->var['download_id']."'>".LAN_dl_40."</a>";
|
||||
}
|
||||
else
|
||||
{
|
||||
return LAN_dl_75;
|
||||
}
|
||||
}
|
||||
|
||||
function sc_download_view_imagefull()
|
||||
{
|
||||
global $dlrow;
|
||||
$tp = e107::getParser();
|
||||
return ($dlrow['download_image']) ? "<img class='dl_image' src='".$tp->replaceConstants($dlrow['download_image'])."' alt='*' style='".DL_IMAGESTYLE."' />" : "";
|
||||
return ($this->var['download_image']) ? "<img class='download-image dl_image' src='".$tp->replaceConstants($this->var['download_image'])."' alt='*' />" : "";
|
||||
}
|
||||
function sc_download_view_link()
|
||||
{
|
||||
global $pref,$dlrow,$tp;
|
||||
$click = "";
|
||||
if ($pref['agree_flag'] == 1) {
|
||||
$click = " onclick='return confirm(\"".$tp->toJS($tp->toHTML($pref['agree_text'],true,'emotes, no_tags'))."\")'";
|
||||
}
|
||||
$dnld_link = "<a href='".e_BASE."request.php?".$dlrow['download_id']."'{$click}>";
|
||||
if ($dlrow['download_mirror'])
|
||||
{
|
||||
if ($dlrow['download_mirror_type'])
|
||||
{
|
||||
return "<a href='".e_PLUGIN."download/download.php?mirror.".$dlrow['download_id']."'>".LAN_dl_66."</a>";
|
||||
}
|
||||
else
|
||||
{
|
||||
return $dnld_link."<img src='".IMAGE_DOWNLOAD."' alt='*' /></a>";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
return $dnld_link."<img src='".IMAGE_DOWNLOAD."' alt='*' /></a>";
|
||||
}
|
||||
}
|
||||
function sc_download_view_filesize()
|
||||
{
|
||||
global $dlrow, $e107;
|
||||
return ($dlrow['download_filesize']) ? $e107->parseMemorySize($dlrow['download_filesize']) : "";
|
||||
}
|
||||
function sc_download_view_rating()
|
||||
{
|
||||
global $dlrow;
|
||||
|
||||
function sc_download_view_link()
|
||||
{
|
||||
$tp = e107::getParser();
|
||||
$pref = e107::getPref();
|
||||
|
||||
$click = "";
|
||||
|
||||
$img = "<img src='".IMAGE_DOWNLOAD."' alt='".LAN_dl_32."' title='".LAN_dl_32."' />";
|
||||
|
||||
if(deftrue('BOOTSTRAP'))
|
||||
{
|
||||
$img = '<i class="icon-download"></i>';
|
||||
}
|
||||
|
||||
if ($pref['agree_flag'] == 1)
|
||||
{
|
||||
$click = " onclick='return confirm(\"".$tp->toJS($tp->toHTML($pref['agree_text'],true,'emotes, no_tags'))."\")'";
|
||||
}
|
||||
$dnld_link = "<a href='".e_PLUGIN_ABS."download/request.php?".$this->var['download_id']."'{$click}>";
|
||||
|
||||
if ($this->var['download_mirror'])
|
||||
{
|
||||
if ($this->var['download_mirror_type'])
|
||||
{
|
||||
return "<a href='".e_PLUGIN_ABS."download/download.php?mirror.".$this->var['download_id']."'>".LAN_dl_66."</a>";
|
||||
}
|
||||
else
|
||||
{
|
||||
return $dnld_link.$img."</a>";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
return $dnld_link.$img."</a>";
|
||||
}
|
||||
}
|
||||
|
||||
function sc_download_view_filesize()
|
||||
{
|
||||
return ($this->var['download_filesize']) ? eHelper::parseMemorySize($this->var['download_filesize']) : "";
|
||||
}
|
||||
|
||||
function sc_download_view_rating()
|
||||
{
|
||||
|
||||
$frm = e107::getForm();
|
||||
$options = array('label'=>' ','template'=>'RATE|VOTES|STATUS');
|
||||
return $frm->rate("download", $dlrow['download_id'],$options);
|
||||
return $frm->rate("download", $this->var['download_id'], $options);
|
||||
|
||||
/*
|
||||
require_once(e_HANDLER."rate_class.php");
|
||||
$rater = new rater;
|
||||
|
||||
@@ -536,7 +588,7 @@ class download_shortcodes extends e_shortcode
|
||||
<table style='width:100%'>
|
||||
<tr>
|
||||
<td style='width:50%'>";
|
||||
if ($ratearray = $rater->getrating("download", $dlrow['download_id'])) {
|
||||
if ($ratearray = $rater->getrating("download", $this->var['download_id'])) {
|
||||
for($c = 1; $c <= $ratearray[1]; $c++) {
|
||||
$text .= "<img src='".e_IMAGE."rate/star.png' alt='*' />";
|
||||
}
|
||||
@@ -552,8 +604,8 @@ class download_shortcodes extends e_shortcode
|
||||
$text .= LAN_dl_13;
|
||||
}
|
||||
$text .= "</td><td style='width:50%; text-align:right'>";
|
||||
if (!$rater->checkrated("download", $dlrow['download_id']) && USER) {
|
||||
$text .= $rater->rateselect(" <b>".LAN_dl_14, "download", $dlrow['download_id'])."</b>";
|
||||
if (!$rater->checkrated("download", $this->var['download_id']) && USER) {
|
||||
$text .= $rater->rateselect(" <b>".LAN_dl_14, "download", $this->var['download_id'])."</b>";
|
||||
}
|
||||
else if (!USER) {
|
||||
$text .= " ";
|
||||
@@ -562,85 +614,86 @@ class download_shortcodes extends e_shortcode
|
||||
}
|
||||
$text .= "</td></tr></table>";
|
||||
return $text;
|
||||
}
|
||||
function sc_download_report_link()
|
||||
{
|
||||
global $dlrow,$pref;
|
||||
return (check_class($pref['download_reportbroken'])) ? "<a href='".e_PLUGIN."download/download.php?action=report&id=".$dlrow['download_id']."'>".LAN_dl_45."</a>" : "";
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
||||
function sc_download_report_link()
|
||||
{
|
||||
$pref = e107::getPref();
|
||||
return (check_class($pref['download_reportbroken'])) ? "<a href='".e_PLUGIN_ABS."download/download.php?action=report&id=".$this->var['download_id']."'>".LAN_dl_45."</a>" : "";
|
||||
}
|
||||
|
||||
function sc_download_view_caption()
|
||||
{
|
||||
global $dlrow;
|
||||
$text = $dlrow['download_category_name'];
|
||||
$text .= ($dlrow['download_category_description']) ? " [ ".$dlrow['download_category_description']." ]" : "";
|
||||
return $text;
|
||||
}
|
||||
function sc_download_view_caption()
|
||||
{
|
||||
$text = $this->var['download_category_name'];
|
||||
$text .= ($this->var['download_category_description']) ? " [ ".$this->var['download_category_description']." ]" : "";
|
||||
return $text;
|
||||
}
|
||||
|
||||
|
||||
// Mirror **************************************************************************************
|
||||
|
||||
function sc_download_mirror_request()
|
||||
{
|
||||
global $dlrow;
|
||||
return $dlrow['download_name'];
|
||||
return $this->var['download_name'];
|
||||
}
|
||||
|
||||
function sc_download_mirror_request_icon()
|
||||
{
|
||||
global $dlrow;
|
||||
$tp = e107::getParser();
|
||||
return ($dlrow['download_thumb'] ? "<img src='".$tp->replaceConstants($dlrow['download_thumb'])."' alt='*'/>" : "");
|
||||
return ($this->var['download_thumb'] ? "<img src='".e107::getParser()->replaceConstants($this->var['download_thumb'])."' alt='*'/>" : "");
|
||||
}
|
||||
|
||||
function sc_download_mirror_name()
|
||||
{
|
||||
global $dlmirror;
|
||||
return "<a href='{$dlmirror['mirror_url']}' rel='external'>".$dlmirror['mirror_name']."</a>";
|
||||
return "<a href='{$this->mirror['dlmirror']['mirror_url']}' rel='external'>".$this->mirror['dlmirror']['mirror_name']."</a>";
|
||||
}
|
||||
|
||||
function sc_download_mirror_image()
|
||||
{
|
||||
global $dlrow, $dlmirror;
|
||||
$tp = e107::getParser();
|
||||
return ($dlmirror['mirror_image'] ? "<a href='{$dlmirror['mirror_url']}' rel='external'><img src='".$tp->replaceConstants($dlmirror['mirror_image'])."' alt='*'/></a>" : "");
|
||||
return ($this->mirror['dlmirror']['mirror_image'] ? "<a href='{$this->mirror['dlmirror']['mirror_url']}' rel='external'><img src='".$tp->replaceConstants($this->mirror['dlmirror']['mirror_image'])."' alt='*'/></a>" : "");
|
||||
}
|
||||
|
||||
function sc_download_mirror_location() {
|
||||
global $dlmirror;
|
||||
return ($dlmirror['mirror_location'] ? $dlmirror['mirror_location'] : "");
|
||||
function sc_download_mirror_location()
|
||||
{
|
||||
return ($this->mirror['dlmirror']['mirror_location'] ? $this->mirror['dlmirror']['mirror_location'] : "");
|
||||
}
|
||||
|
||||
function sc_download_mirror_description()
|
||||
{
|
||||
global $dlmirror,$tp;
|
||||
return ($dlmirror['mirror_description'] ? $tp->toHTML($dlmirror['mirror_description'], TRUE) : "");
|
||||
return ($this->mirror['dlmirror']['mirror_description'] ? e107::getParser()->toHTML($this->mirror['dlmirror']['mirror_description'], TRUE) : "");
|
||||
}
|
||||
|
||||
function sc_download_mirror_filesize()
|
||||
{
|
||||
global $e107, $dlmirrorfile;
|
||||
return $e107->parseMemorySize($dlmirrorfile[3]);
|
||||
return eHelper::parseMemorySize($this->mirror['dlmirrorfile'][3]);
|
||||
}
|
||||
|
||||
function sc_download_mirror_link()
|
||||
{
|
||||
global $dlrow, $dlmirrorfile, $tp, $pref;
|
||||
$click = " onclick='return confirm(\"".$tp->toJS($tp->toHTML($pref['agree_text'],FALSE,'DESCRIPTION'))."\")'";
|
||||
return "<a href='".e_PLUGIN."download/download.php?mirror.{$dlrow['download_id']}.{$dlmirrorfile[0]}' title='".LAN_dl_32."'{$click}>
|
||||
<img src='".IMAGE_DOWNLOAD."' alt='*' title='".LAN_dl_32."' /></a>";
|
||||
$tp = e107::getParser();
|
||||
$pref = e107::getPref();
|
||||
|
||||
$click = " onclick='return confirm(\"".$tp->toJS($tp->toHTML($pref['agree_text'],FALSE,'DESCRIPTION'))."\")'";
|
||||
|
||||
$img = "<img src='".IMAGE_DOWNLOAD."' alt='".LAN_dl_32."' title='".LAN_dl_32."' />";
|
||||
|
||||
if(deftrue('BOOTSTRAP'))
|
||||
{
|
||||
$img = '<i class="icon-download"></i>';
|
||||
}
|
||||
|
||||
return "<a href='".e_PLUGIN_ABS."download/download.php?mirror.{$this->var['download_id']}.{$this->mirror['dlmirrorfile'][0]}' title='".LAN_dl_32."'{$click}>".$img."</a>";
|
||||
}
|
||||
|
||||
function sc_download_mirror_requests()
|
||||
{
|
||||
global $dlmirrorfile;
|
||||
return (ADMIN ? LAN_dl_73.$dlmirrorfile[2] : "");
|
||||
return (ADMIN ? LAN_dl_73.$this->mirror['dlmirrorfile'][2] : "");
|
||||
}
|
||||
|
||||
function sc_download_total_mirror_requests()
|
||||
{
|
||||
global $dlmirror;
|
||||
return (ADMIN ? LAN_dl_74.$dlmirror['mirror_count'] : "");
|
||||
return (ADMIN ? LAN_dl_74.$this->mirror['dlmirror']['mirror_count'] : "");
|
||||
}
|
||||
|
||||
|
||||
@@ -648,26 +701,26 @@ class download_shortcodes extends e_shortcode
|
||||
|
||||
function sc_download_view_author_lan()
|
||||
{
|
||||
global $dlrow;
|
||||
return ($dlrow['download_author']) ? LAN_dl_24 : "";
|
||||
|
||||
return ($this->var['download_author']) ? LAN_dl_24 : "";
|
||||
}
|
||||
|
||||
function sc_download_view_authoremail_lan()
|
||||
{
|
||||
global $dlrow;
|
||||
return ($dlrow['download_author_email']) ? LAN_dl_30 : "";
|
||||
|
||||
return ($this->var['download_author_email']) ? LAN_dl_30 : "";
|
||||
}
|
||||
|
||||
function sc_download_view_authorwebsite_lan()
|
||||
{
|
||||
global $dlrow;
|
||||
return ($dlrow['download_author_website']) ? LAN_dl_31 : "";
|
||||
|
||||
return ($this->var['download_author_website']) ? LAN_dl_31 : "";
|
||||
}
|
||||
|
||||
function sc_download_view_date_lan()
|
||||
{
|
||||
global $dlrow;
|
||||
return ($dlrow['download_datestamp']) ? LAN_dl_22 : "";
|
||||
|
||||
return ($this->var['download_datestamp']) ? LAN_dl_22 : "";
|
||||
}
|
||||
|
||||
function sc_download_view_image_lan()
|
||||
@@ -677,8 +730,8 @@ class download_shortcodes extends e_shortcode
|
||||
|
||||
function sc_download_view_requested()
|
||||
{
|
||||
global $dlrow;
|
||||
return $dlrow['download_requested'];
|
||||
|
||||
return $this->var['download_requested'];
|
||||
}
|
||||
|
||||
function sc_download_view_rating_lan()
|
||||
@@ -711,33 +764,43 @@ class download_shortcodes extends e_shortcode
|
||||
|
||||
function sc_download_view_prev()
|
||||
{
|
||||
global $dlrow,$sql;
|
||||
$dlrow_id = intval($dlrow['download_id']);
|
||||
if ($sql->db_Select("download", "*", "download_category='".intval($dlrow['download_category_id'])."' AND download_id < {$dlrow_id} AND download_active > 0 && download_visible IN (".USERCLASS_LIST.") ORDER BY download_datestamp DESC LIMIT 1")) {
|
||||
$dlrowrow = $sql->db_Fetch();
|
||||
return "<a href='".e_PLUGIN."download/download.php?action=view&id=".$dlrowrow['download_id']."'><< ".LAN_dl_33." [".$dlrowrow['download_name']."]</a>\n";
|
||||
} else {
|
||||
$sql = e107::getDb();
|
||||
|
||||
$dlrow_id = intval($this->var['download_id']);
|
||||
|
||||
if ($sql->select("download", "*", "download_category='".intval($this->var['download_category_id'])."' AND download_id < {$dlrow_id} AND download_active > 0 && download_visible IN (".USERCLASS_LIST.") ORDER BY download_datestamp DESC LIMIT 1"))
|
||||
{
|
||||
$dlrowrow = $sql->fetch();
|
||||
|
||||
return "<a href='".e_PLUGIN_ABS."download/download.php?action=view&id=".$dlrowrow['download_id']."'><< ".LAN_dl_33." [".$dlrowrow['download_name']."]</a>\n";
|
||||
}
|
||||
else
|
||||
{
|
||||
return " ";
|
||||
}
|
||||
}
|
||||
|
||||
function sc_download_view_next()
|
||||
{
|
||||
global $dlrow,$sql;
|
||||
$dlrow_id = intval($dlrow['download_id']);
|
||||
if ($sql->db_Select("download", "*", "download_category='".intval($dlrow['download_category_id'])."' AND download_id > {$dlrow_id} AND download_active > 0 && download_visible IN (".USERCLASS_LIST.") ORDER BY download_datestamp ASC LIMIT 1")) {
|
||||
$dlrowrow = $sql->db_Fetch();
|
||||
function sc_download_view_next()
|
||||
{
|
||||
$sql = e107::getDb();
|
||||
$dlrow_id = intval($this->var['download_id']);
|
||||
|
||||
if ($sql->select("download", "*", "download_category='".intval($this->var['download_category_id'])."' AND download_id > {$dlrow_id} AND download_active > 0 && download_visible IN (".USERCLASS_LIST.") ORDER BY download_datestamp ASC LIMIT 1"))
|
||||
{
|
||||
$dlrowrow = $sql->fetch();
|
||||
extract($dlrowrow);
|
||||
return "<a href='".e_PLUGIN."download/download.php?action=view&id=".$dlrowrow['download_id']."'>[".$dlrowrow['download_name']."] ".LAN_dl_34." >></a>\n";
|
||||
} else {
|
||||
|
||||
return "<a href='".e_PLUGIN_ABS."download/download.php?action=view&id=".$dlrowrow['download_id']."'>[".$dlrowrow['download_name']."] ".LAN_dl_34." >></a>\n";
|
||||
}
|
||||
else
|
||||
{
|
||||
return " ";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function sc_download_back_to_list()
|
||||
{
|
||||
global $dlrow;
|
||||
return "<a class='btn' href='".e_PLUGIN."download/download.php?action=list&id=".$dlrow['download_category']."'>".LAN_dl_35."</a>";
|
||||
return "<a class='btn' href='".e_PLUGIN_ABS."download/download.php?action=list&id=".$this->var['download_category']."'>".LAN_dl_35."</a>";
|
||||
}
|
||||
|
||||
function sc_download_back_to_category_list()
|
||||
|
@@ -13,16 +13,12 @@ if (!e107::isInstalled('download')) { exit(); }
|
||||
class download
|
||||
{
|
||||
|
||||
var $e107;
|
||||
|
||||
private $qry = array();
|
||||
|
||||
private $orderOptions = array('download_id','download_datestamp','download_filesize','download_name','download_author','download_requested');
|
||||
|
||||
function __construct()
|
||||
{
|
||||
$this->e107 = e107::getInstance();
|
||||
|
||||
|
||||
require_once(e_PLUGIN."download/download_shortcodes.php");
|
||||
}
|
||||
@@ -31,35 +27,17 @@ class download
|
||||
{
|
||||
|
||||
$tp = e107::getParser();
|
||||
$pref = e107::getPref();
|
||||
|
||||
$tmp = explode('.', e_QUERY);
|
||||
|
||||
$pref = e107::getPref();
|
||||
|
||||
|
||||
// Set Defaults
|
||||
$this->qry['action'] = 'maincats';
|
||||
$this->qry['order'] = vartrue($pref['download_order'],'download_datestamp');
|
||||
$this->qry['sort'] = vartrue($pref['download_sort'], 'desc');
|
||||
$this->qry['view'] = vartrue($pref['download_view'], 10);
|
||||
|
||||
|
||||
// v1.x
|
||||
if (is_numeric($tmp[0])) //legacy // $tmp[0] at least must be valid
|
||||
{
|
||||
$dl_from = intval($tmp[0]);
|
||||
$this->qry['action'] = varset(preg_replace("#\W#", "", $tp->toDB($tmp[1])),'list');
|
||||
$this->qry['id'] = intval($tmp[2]);
|
||||
$this->qry['view'] = intval($tmp[3]);
|
||||
$this->qry['order'] = preg_replace("#\W#", "", $tp->toDB($tmp[4]));
|
||||
$this->qry['sort'] = preg_replace("#\W#", "", $tp->toDB($tmp[5]));
|
||||
}
|
||||
elseif($tmp[1])
|
||||
{
|
||||
$this->qry['action'] = preg_replace("#\W#", "", $tp->toDB($tmp[0]));
|
||||
$this->qry['id'] = intval($tmp[1]);
|
||||
// $errnum = intval(varset($tmp[2],0));
|
||||
}
|
||||
|
||||
|
||||
$this->qry['from'] = 0;
|
||||
|
||||
// v2.x
|
||||
if(varset($_GET['action']))
|
||||
{
|
||||
@@ -68,6 +46,25 @@ class download
|
||||
$this->qry['id'] = intval($_GET['id']);
|
||||
$this->qry['order'] = vartrue($_GET['order']) && in_array("download_".$_GET['order'],$this->orderOptions) ? $_GET['order'] : 'datestamp';
|
||||
$this->qry['sort'] = (varset($_GET['sort']) == 'asc') ? "asc" : 'desc';
|
||||
$this->qry['from'] = vartrue($_GET['from'],0);
|
||||
}
|
||||
else // v1.x Legacy URL support.
|
||||
{
|
||||
if (is_numeric($tmp[0])) //legacy // $tmp[0] at least must be valid
|
||||
{
|
||||
$this->qry['action'] = varset(preg_replace("#\W#", "", $tp->toDB($tmp[1])),'list');
|
||||
$this->qry['id'] = intval($tmp[2]);
|
||||
$this->qry['view'] = intval($tmp[3]);
|
||||
$this->qry['order'] = preg_replace("#\W#", "", $tp->toDB($tmp[4]));
|
||||
$this->qry['sort'] = preg_replace("#\W#", "", $tp->toDB($tmp[5]));
|
||||
}
|
||||
elseif($tmp[1])
|
||||
{
|
||||
$this->qry['action'] = preg_replace("#\W#", "", $tp->toDB($tmp[0]));
|
||||
$this->qry['id'] = intval($tmp[1]);
|
||||
$this->qry['error'] = intval(varset($tmp[2],0));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// v1.x
|
||||
@@ -78,15 +75,66 @@ class download
|
||||
$this->qry['sort'] = (strtolower($_POST['sort']) == 'asc') ? "asc" : 'desc';
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
public function renderCategories()
|
||||
|
||||
|
||||
/**
|
||||
* Auto-detected Render of the appropriate download page.
|
||||
*/
|
||||
public function render()
|
||||
{
|
||||
|
||||
$pref = e107::getPref();
|
||||
|
||||
if($this->qry['action'] == 'maincats')
|
||||
{
|
||||
return $this->renderCategories();
|
||||
}
|
||||
|
||||
if($this->qry['action'] == 'list')
|
||||
{
|
||||
return $this->renderList();
|
||||
}
|
||||
|
||||
if($this->qry['action'] == 'view')
|
||||
{
|
||||
return $this->renderView();
|
||||
}
|
||||
|
||||
if ($this->qry['action'] == "report" && check_class($pref['download_reportbroken']))
|
||||
{
|
||||
return $this->renderReport();
|
||||
}
|
||||
|
||||
if($this->qry['action'] == 'mirror')
|
||||
{
|
||||
return $this->renderMirror();
|
||||
}
|
||||
|
||||
if($this->qry['action'] == 'error')
|
||||
{
|
||||
return $this->renderError();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Render Download Categories.
|
||||
* @todo Cache
|
||||
*/
|
||||
private function renderCategories()
|
||||
{
|
||||
$tp = e107::getParser();
|
||||
$ns = e107::getRender();
|
||||
$pref = e107::getPref();
|
||||
|
||||
|
||||
// if ($cacheData = $e107cache->retrieve("download_cat".$maincatval,720)) // expires every 12 hours. //TODO make this an option
|
||||
@@ -128,7 +176,8 @@ class download
|
||||
}
|
||||
}
|
||||
|
||||
$download_shortcodes = new download_shortcodes;
|
||||
$download_shortcodes = e107::getScBatch('download',true);
|
||||
$download_shortcodes->wrapper('download/categories');
|
||||
$download_shortcodes->qry = $this->qry;
|
||||
|
||||
|
||||
@@ -140,25 +189,25 @@ class download
|
||||
|
||||
if ($dlcat->down_count == 0)
|
||||
{
|
||||
$ns->tablerender(LAN_dl_18, "<div style='text-align:center'>".LAN_dl_2."</div>");
|
||||
return;
|
||||
// require_once(FOOTERF);
|
||||
// exit;
|
||||
return $ns->tablerender(LAN_dl_18, "<div style='text-align:center'>".LAN_dl_2."</div>",'download-categories',true);
|
||||
}
|
||||
|
||||
global $dlrow, $dlsubrow;
|
||||
|
||||
|
||||
$download_cat_table_string = "";
|
||||
foreach($dlcat->cat_tree as $dlrow) // Display main category headings, then sub-categories, optionally with sub-sub categories expanded
|
||||
{
|
||||
{
|
||||
$download_shortcodes->setVars($dlrow);
|
||||
$download_cat_table_string .= $tp->parseTemplate($DOWNLOAD_CAT_PARENT_TABLE, TRUE, vartrue($download_shortcodes));
|
||||
|
||||
foreach($dlrow['subcats'] as $dlsubrow)
|
||||
{
|
||||
$download_shortcodes->dlsubrow = $dlsubrow;
|
||||
|
||||
|
||||
$download_cat_table_string .= $tp->parseTemplate($DOWNLOAD_CAT_CHILD_TABLE, TRUE, $download_shortcodes);
|
||||
|
||||
foreach($dlsubrow['subsubcats'] as $dlsubsubrow)
|
||||
{
|
||||
$download_shortcodes->dlsubsubrow = $dlsubsubrow;
|
||||
$download_cat_table_string .= $tp->parseTemplate($DOWNLOAD_CAT_SUBSUB_TABLE, TRUE, $download_shortcodes);
|
||||
}
|
||||
}
|
||||
@@ -172,7 +221,7 @@ class download
|
||||
|
||||
//ob_start();
|
||||
|
||||
$ns->tablerender($caption, $dl_text);
|
||||
return $ns->tablerender($caption, $dl_text, 'download-categories',true);
|
||||
|
||||
// $cache_data = ob_get_flush();
|
||||
// $e107cache->set("download_cat".$maincatval, $cache_data);
|
||||
@@ -188,8 +237,11 @@ class download
|
||||
|
||||
|
||||
|
||||
|
||||
public function renderView()
|
||||
/**
|
||||
* Render a single download
|
||||
* @todo cache
|
||||
*/
|
||||
private function renderView()
|
||||
{
|
||||
if(deftrue('BOOTSTRAP')) // v2.x
|
||||
{
|
||||
@@ -199,7 +251,7 @@ class download
|
||||
$DOWNLOAD_VIEW_TABLE = $template['item'];
|
||||
$DOWNLOAD_VIEW_TABLE_END = varset($template['end']);
|
||||
$DL_VIEW_NEXTPREV = varset($template['nextprev']);
|
||||
$DL_VIEW_PAGETITLE = varset($template['pagetitle']);
|
||||
// $DL_VIEW_PAGETITLE = varset($template['pagetitle']);
|
||||
$DL_VIEW_CAPTION = varset($template['caption'],"{DOWNLOAD_VIEW_CAPTION}");
|
||||
}
|
||||
else // Legacy v1.x
|
||||
@@ -225,8 +277,9 @@ class download
|
||||
$ns = e107::getRender();
|
||||
|
||||
$gen = new convert;
|
||||
|
||||
$download_shortcodes = new download_shortcodes;
|
||||
|
||||
$download_shortcodes = e107::getScBatch('download',true);
|
||||
$download_shortcodes->wrapper('download/view');
|
||||
$download_shortcodes->qry = $this->qry;
|
||||
|
||||
$highlight_search = FALSE;
|
||||
@@ -246,19 +299,19 @@ class download
|
||||
if(!$sql->gen($query))
|
||||
{
|
||||
//require_once(HEADERF);
|
||||
$ns->tablerender(LAN_dl_18, "<div style='text-align:center'>".LAN_dl_3."</div>");
|
||||
return;
|
||||
return $ns->tablerender(LAN_dl_18, "<div style='text-align:center'>".LAN_dl_3."</div>", 'download-view', true);
|
||||
//require_once(FOOTERF);
|
||||
//exit;
|
||||
}
|
||||
|
||||
global $dlrow;
|
||||
|
||||
$dlrow = $sql->fetch();
|
||||
$download_shortcodes->setVars($dlrow);
|
||||
|
||||
$comment_edit_query = 'comment.download.'.$id;
|
||||
|
||||
if(!defined("DL_IMAGESTYLE")){ define("DL_IMAGESTYLE","border:0px");}
|
||||
|
||||
if(!isset($DL_VIEW_PAGETITLE))
|
||||
{
|
||||
$DL_VIEW_PAGETITLE = PAGE_NAME." / {DOWNLOAD_CATEGORY} / {DOWNLOAD_VIEW_NAME}";
|
||||
@@ -294,16 +347,22 @@ class download
|
||||
|
||||
$caption = $tp->parseTemplate($DL_VIEW_CAPTION, TRUE, $download_shortcodes);
|
||||
|
||||
$ns->tablerender($caption, $text);
|
||||
$ret = $ns->tablerender($caption, $text, 'download-view', true);
|
||||
|
||||
unset($text);
|
||||
|
||||
if ($dlrow['download_comment'])
|
||||
{
|
||||
e107::getComment()->compose_comment("download", "comment", $id, $width,$dlrow['download_name'], $showrate=FALSE);
|
||||
$comments = e107::getComment()->compose_comment("download", "comment", $id, $width,$dlrow['download_name'], FALSE, true);
|
||||
$ret .= $ns->tablerender($comments['caption'], $comments['comment'].$comments['comment_form'], 'download-comments', true);
|
||||
}
|
||||
|
||||
|
||||
|
||||
// print_a($comments);
|
||||
|
||||
return $ret;
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -316,8 +375,11 @@ class download
|
||||
|
||||
|
||||
|
||||
|
||||
public function renderList()
|
||||
/**
|
||||
* Render a list of files in a particular download category.
|
||||
*
|
||||
*/
|
||||
private function renderList()
|
||||
{
|
||||
|
||||
if(deftrue('BOOTSTRAP')) // v2.x
|
||||
@@ -352,14 +414,42 @@ class download
|
||||
$tp = e107::getParser();
|
||||
$ns = e107::getRender();
|
||||
|
||||
$download_shortcodes = new download_shortcodes;
|
||||
// $download_shortcodes = new download_shortcodes;
|
||||
$download_shortcodes = e107::getScBatch('download',true);
|
||||
$download_shortcodes->wrapper('download/list');
|
||||
$download_shortcodes->qry = $this->qry;
|
||||
|
||||
|
||||
|
||||
|
||||
//if (!isset($this->qry['from'])) $this->qry['from'] = 0;
|
||||
|
||||
// Get category type, page title
|
||||
if ($sql->select("download_category", "download_category_name,download_category_description,download_category_parent,download_category_class", "(download_category_id='{$this->qry['id']}') AND (download_category_class IN (".USERCLASS_LIST."))") )
|
||||
{
|
||||
$dlrow = $sql->fetch();
|
||||
$download_shortcodes->setVars($dlrow); // Used below for header / breadcrumb.
|
||||
$type = $dlrow['download_category_name'];
|
||||
define("e_PAGETITLE", PAGE_NAME." / ".$dlrow['download_category_name']);
|
||||
}
|
||||
else
|
||||
{ // No access to this category
|
||||
define("e_PAGETITLE", PAGE_NAME);
|
||||
return $ns->tablerender(LAN_dl_18, "<div class='alert alert-info' style='text-align:center'>".LAN_dl_3."</div>",'download-list',true);
|
||||
}
|
||||
|
||||
if ($dlrow['download_category_parent'] == 0) // It's a main category - change the listing type required
|
||||
{
|
||||
$action = 'maincats';
|
||||
$maincatval = $id;
|
||||
}
|
||||
|
||||
|
||||
$total_downloads = $sql->count("download", "(*)", "WHERE download_category = '{$this->qry['id']}' AND download_active > 0 AND download_visible REGEXP '" . e_CLASS_REGEXP . "'");
|
||||
|
||||
|
||||
/* SHOW SUBCATS ... */
|
||||
$qry = "SELECT download_category_id,download_category_class FROM #download_category WHERE download_category_parent=".intval($this->qry['id']);
|
||||
|
||||
if($sql->gen($qry))
|
||||
{
|
||||
/* there are subcats - display them ... */
|
||||
@@ -385,10 +475,11 @@ class download
|
||||
eval($template_load_core);
|
||||
}
|
||||
|
||||
if(!defined("DL_IMAGESTYLE"))
|
||||
{
|
||||
define("DL_IMAGESTYLE", "border:1px solid blue");
|
||||
}
|
||||
/** @DEPRECATED **/
|
||||
// if(!defined("DL_IMAGESTYLE"))
|
||||
// {
|
||||
// define("DL_IMAGESTYLE", "border:1px solid blue");
|
||||
// }
|
||||
|
||||
$download_cat_table_string = "";
|
||||
|
||||
@@ -402,14 +493,9 @@ class download
|
||||
|
||||
$dl_text .= $tp->parseTemplate($DOWNLOAD_CAT_TABLE_END, TRUE, $download_shortcodes);
|
||||
|
||||
$dlbreadcrumb = $this->getBreadcrumb(array(LAN_dl_18 => e_SELF,$type));
|
||||
$dl_title = $tp->parseTemplate("{BREADCRUMB=dlbreadcrumb}", TRUE, $download_shortcodes);
|
||||
$text = $ns->tablerender($dl_title, $dl_text, 'download-list', true);
|
||||
|
||||
|
||||
$ns->tablerender($dl_title, $dl_text);
|
||||
$text = "";
|
||||
// If other files, show in a separate block
|
||||
$dl_title = "";
|
||||
// Cancel title once displayed
|
||||
}// End of subcategory display
|
||||
|
||||
// Now display individual downloads
|
||||
@@ -430,7 +516,7 @@ class download
|
||||
}
|
||||
if($total_downloads < $this->qry['view'])
|
||||
{
|
||||
$dl_from = 0;
|
||||
$this->qry['from'] = 0;
|
||||
}
|
||||
|
||||
|
||||
@@ -442,23 +528,25 @@ class download
|
||||
require_once (e_HANDLER . "rate_class.php");
|
||||
$dltdownloads = 0;
|
||||
|
||||
// $dl_from - first entry to show (note - can get reset due to reuse of query,
|
||||
// $this->qry['from'] - first entry to show (note - can get reset due to reuse of query,
|
||||
// even if values overridden this time)
|
||||
// $this->qry['view'] - number of entries per page
|
||||
// $total_downloads - total number of entries matching search criteria
|
||||
$filetotal = $sql->select("download", "*", "download_category='{$this->qry['id']}' AND download_active > 0 AND download_visible IN (" . USERCLASS_LIST . ") ORDER BY download_{$this->qry['order']} {$this->qry['sort']} LIMIT {$dl_from}, ".$this->qry['view']);
|
||||
$filetotal = $sql->select("download", "*", "download_category='{$this->qry['id']}' AND download_active > 0 AND download_visible IN (" . USERCLASS_LIST . ") ORDER BY download_{$this->qry['order']} {$this->qry['sort']} LIMIT {$this->qry['from']}, ".$this->qry['view']);
|
||||
|
||||
if($filetotal)
|
||||
{
|
||||
// Only show list if some files in it
|
||||
$dl_text = $tp->parseTemplate($DOWNLOAD_LIST_TABLE_START, TRUE, $download_shortcodes);
|
||||
|
||||
global $dlrow, $dlft, $dltdownloads;
|
||||
global $dlft, $dltdownloads;
|
||||
|
||||
$dlft = ($filetotal < $this->qry['view'] ? $filetotal: $this->qry['view']);
|
||||
|
||||
while($dlrow = $sql->fetch())
|
||||
{
|
||||
$download_shortcodes->setVars($dlrow);
|
||||
|
||||
$agreetext = $tp->toHTML($pref['agree_text'], TRUE, 'DESCRIPTION');
|
||||
$current_row = ($current_row)? 0: 1;
|
||||
// Alternating CSS for each row.(backwards compatible)
|
||||
@@ -479,7 +567,7 @@ class download
|
||||
}
|
||||
|
||||
|
||||
$ns->tablerender(LAN_dl_18, $dl_text, 'download-list');
|
||||
$text = $ns->tablerender(LAN_dl_18, $dl_text, 'download-list', true);
|
||||
}
|
||||
|
||||
if(!isset($DOWNLOAD_LIST_NEXTPREV))
|
||||
@@ -501,16 +589,20 @@ class download
|
||||
|
||||
global $nextprev_parms;
|
||||
|
||||
$nextprev_parms = $total_downloads . "," . $this->qry['view'] . "," . $dl_from . "," . e_SELF . "?[FROM].list.{$this->qry['id']}.{$this->qry['view']}.{$this->qry['order']}.{$this->qry['sort']}.";
|
||||
|
||||
echo $tp->parseTemplate($DOWNLOAD_LIST_NEXTPREV, TRUE, $download_shortcodes);
|
||||
$nextprev_parms = $total_downloads . "," . $this->qry['view'] . "," . $this->qry['from'] . "," . e_SELF . "?[FROM].list.{$this->qry['id']}.{$this->qry['view']}.{$this->qry['order']}.{$this->qry['sort']}.";
|
||||
|
||||
$text .= $tp->parseTemplate($DOWNLOAD_LIST_NEXTPREV, TRUE, $download_shortcodes);
|
||||
|
||||
return $text;
|
||||
|
||||
}
|
||||
|
||||
|
||||
function renderReport()
|
||||
|
||||
/**
|
||||
* Render a 'Broken Download' Report form.
|
||||
*/
|
||||
private function renderReport()
|
||||
{
|
||||
$sql = e107::getDb();
|
||||
$tp = e107::getParser();
|
||||
@@ -553,13 +645,11 @@ class download
|
||||
|
||||
define("e_PAGETITLE", PAGE_NAME." / ".LAN_dl_47);
|
||||
|
||||
// require_once(HEADERF);
|
||||
|
||||
$text = LAN_dl_48."<br /><br /><a href='".e_PLUGIN."download/download.php?view.".$download_id."'>".LAN_dl_49."</a>";
|
||||
// $dlbreadcrumb = $dl->getBreadcrumb(array(LAN_dl_18=>e_SELF, $dlrow['download_category_name']=>e_SELF."?list.".$dlrow['download_category_id'], $dlrow['download_name']=>e_SELF."?view.".$dlrow['download_id'], LAN_dl_50));
|
||||
// $dl_title .= $tp->parseTemplate("{BREADCRUMB=dlbreadcrumb}", TRUE, $download_shortcodes);
|
||||
$text = LAN_dl_48."<br /><br /><a href='".e_PLUGIN."download/download.php?action=view&id=".$download_id."'>".LAN_dl_49."</a>";
|
||||
|
||||
|
||||
$ns->tablerender(LAN_dl_18, $text);
|
||||
return $ns->tablerender(LAN_dl_18, $text, 'download-report', true);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -585,13 +675,15 @@ class download
|
||||
</div>
|
||||
</form>";
|
||||
|
||||
$ns->tablerender(LAN_dl_18, $text);
|
||||
return $ns->tablerender(LAN_dl_18, $text, 'download-report', true);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
function renderMirror()
|
||||
/**
|
||||
* Render Download Mirrors for the selected file.
|
||||
*/
|
||||
private function renderMirror()
|
||||
{
|
||||
|
||||
$sql = e107::getDb();
|
||||
@@ -625,7 +717,9 @@ class download
|
||||
}
|
||||
|
||||
}
|
||||
$download_shortcodes = new download_shortcodes;
|
||||
|
||||
$download_shortcodes = e107::getScBatch('download',true);
|
||||
$download_shortcodes->wrapper('download/mirror');
|
||||
$download_shortcodes->qry = $this->qry;
|
||||
|
||||
// $load_template = 'download_template';
|
||||
@@ -640,12 +734,15 @@ class download
|
||||
WHERE d.download_id = ".$this->qry['id']."
|
||||
LIMIT 1";
|
||||
|
||||
global $dlmirrorfile, $dlrow, $dlmirror;
|
||||
// global $dlmirrorfile, $dlmirror;
|
||||
|
||||
|
||||
if($sql->gen($query))
|
||||
{
|
||||
$dlrow = $sql->fetch();
|
||||
// $dlrow['mirrorlist'] = $mirrorList;
|
||||
$download_shortcodes->setVars($dlrow);
|
||||
|
||||
|
||||
$array = explode(chr(1), $dlrow['download_mirror']);
|
||||
|
||||
@@ -681,7 +778,10 @@ class download
|
||||
if($mirrorstring)
|
||||
{
|
||||
$dlmirrorfile = explode(",", $mirrorstring);
|
||||
$dlmirror = $mirrorList[$dlmirrorfile[0]];
|
||||
// $dlmirror = $mirrorList[$dlmirrorfile[0]];
|
||||
|
||||
$download_shortcodes->mirror['dlmirrorfile'] = $dlmirrorfile;
|
||||
$download_shortcodes->mirror['dlmirror'] = $mirrorList[$dlmirrorfile[0]];
|
||||
|
||||
$dl_text .= $tp->parseTemplate($DOWNLOAD_MIRROR, TRUE, $download_shortcodes);
|
||||
}
|
||||
@@ -689,7 +789,7 @@ class download
|
||||
|
||||
$dl_text .= $tp->parseTemplate($DOWNLOAD_MIRROR_END, TRUE, $download_shortcodes);
|
||||
|
||||
$ns->tablerender(LAN_dl_18, $dl_text);
|
||||
return $ns->tablerender(LAN_dl_18, $dl_text, 'download-mirror', true);
|
||||
|
||||
|
||||
}
|
||||
@@ -698,43 +798,38 @@ class download
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* @DEPRECATED
|
||||
*/
|
||||
function getBreadcrumb($arr)
|
||||
{
|
||||
$dlbreadcrumb = array();
|
||||
$ix = 0;
|
||||
foreach ($arr as $key=>$crumb) {
|
||||
$dlbreadcrumb[$ix]['sep'] = " :: ";
|
||||
$ix++;
|
||||
if (is_int($key))
|
||||
{
|
||||
$dlbreadcrumb[$ix]['value'] = $crumb;
|
||||
}
|
||||
else
|
||||
{
|
||||
$dlbreadcrumb[$ix]['value'] = "<a href='{$crumb}'>".$key."</a>";
|
||||
}
|
||||
}
|
||||
$dlbreadcrumb['fieldlist'] = implode(",", array_keys($dlbreadcrumb));
|
||||
return $dlbreadcrumb;
|
||||
}
|
||||
|
||||
/**
|
||||
* Render Download Errors.
|
||||
*/
|
||||
private function renderError()
|
||||
{
|
||||
$ns = e107::getRender();
|
||||
$pref = e107::getPref();
|
||||
|
||||
switch ($this->qry['error'])
|
||||
{
|
||||
case 1 : // No permissions
|
||||
if (strlen($pref['download_denied']) > 0)
|
||||
{
|
||||
$errmsg = $tp->toHTML($pref['download_denied'],true);
|
||||
}
|
||||
else
|
||||
{
|
||||
$errmsg = LAN_dl_63;
|
||||
}
|
||||
break;
|
||||
|
||||
case 2 : // Quota exceeded
|
||||
$errmsg = LAN_dl_62;
|
||||
break;
|
||||
|
||||
default: // Generic error - shouldn't happen
|
||||
$errmsg = LAN_dl_61." ".$this->qry['error'];
|
||||
}
|
||||
|
||||
$ns->tablerender(LAN_dl_61, "<div class='alert alert-error alert-block' style='text-align:center'>".$errmsg."</div>");
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -836,4 +931,14 @@ class download
|
||||
return $boxinfo;
|
||||
}
|
||||
}
|
||||
|
||||
function sort_download_mirror_order($a, $b)
|
||||
{
|
||||
$a = explode(",", $a);
|
||||
$b = explode(",", $b);
|
||||
if ($a[1] == $b[1]) {
|
||||
return 0;
|
||||
}
|
||||
return ($a[1] < $b[1]) ? -1 : 1;
|
||||
}
|
||||
?>
|
@@ -351,7 +351,7 @@ if(!isset($DOWNLOAD_MIRROR_END))
|
||||
// v2.x Bootstrap Template. - Overrides the above templates.
|
||||
|
||||
|
||||
$DOWNLOAD_TEMPLATE['categories']['start'] = "
|
||||
$DOWNLOAD_TEMPLATE['categories']['start'] = "{DOWNLOAD_BREADCRUMB}
|
||||
<table class='table table-striped fborder'>
|
||||
<colgroup>
|
||||
<col style='width:3%'/>
|
||||
@@ -460,7 +460,7 @@ $DOWNLOAD_TEMPLATE['view']['item'] = "
|
||||
</colgroup>
|
||||
<tr>
|
||||
<td colspan='2' class='fcaption' style='text-align:left;'>
|
||||
{DOWNLOAD_VIEW_NAME} {DOWNLOAD_ADMIN_EDIT}
|
||||
<h4>{DOWNLOAD_VIEW_NAME} {DOWNLOAD_ADMIN_EDIT}</h4>
|
||||
</td>
|
||||
</tr>
|
||||
{DOWNLOAD_VIEW_AUTHOR_LAN}
|
||||
@@ -550,7 +550,7 @@ $DOWNLOAD_TEMPLATE['list']['start'] = "{DOWNLOAD_BREADCRUMB}
|
||||
<th>{DOWNLOAD_LIST_CAPTION=filesize}</th>
|
||||
<th>{DOWNLOAD_LIST_CAPTION=requested}</th>
|
||||
<th>{DOWNLOAD_LIST_CAPTION=rating}</th>
|
||||
<th>{DOWNLOAD_LIST_CAPTION=link}</th>
|
||||
<th class='text-center'>{DOWNLOAD_LIST_CAPTION=link}</th>
|
||||
</tr>";
|
||||
|
||||
|
||||
@@ -575,7 +575,7 @@ $DOWNLOAD_TEMPLATE['list']['item'] = "
|
||||
<td>
|
||||
{DOWNLOAD_LIST_RATING}
|
||||
</td>
|
||||
<td>
|
||||
<td class='text-center'>
|
||||
{DOWNLOAD_LIST_LINK}
|
||||
</td>
|
||||
</tr>";
|
||||
@@ -584,7 +584,7 @@ $DOWNLOAD_TEMPLATE['list']['item'] = "
|
||||
|
||||
$DOWNLOAD_TEMPLATE['list']['end'] = "
|
||||
<tr>
|
||||
<td class='forumheader3' colspan='7' style='text-align:right;'>{DOWNLOAD_LIST_TOTAL_AMOUNT} {DOWNLOAD_LIST_TOTAL_FILES}</td>
|
||||
<td class='forumheader3' colspan='7' style='text-align:right;'><small class='muted text-muted'>{DOWNLOAD_LIST_TOTAL_AMOUNT} {DOWNLOAD_LIST_TOTAL_FILES}</small></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
@@ -619,7 +619,7 @@ $DOWNLOAD_TEMPLATE['mirror']['start'] = "{DOWNLOAD_BREADCRUMB}
|
||||
</colgroup>
|
||||
<tr>
|
||||
<th class='fcaption'>{DOWNLOAD_MIRROR_REQUEST_ICON}</th>
|
||||
<th class='fcaption' colspan='5'>".LAN_dl_72."{DOWNLOAD_MIRROR_REQUEST}</th>
|
||||
<th class='fcaption' colspan='5'><h4>{DOWNLOAD_MIRROR_REQUEST}</h4></th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th class='forumheader' colspan='2'>".LAN_dl_68."</th>
|
||||
@@ -644,7 +644,7 @@ $DOWNLOAD_TEMPLATE['mirror']['item'] = "
|
||||
<td>{DOWNLOAD_MIRROR_DESCRIPTION}</td>
|
||||
<td>{DOWNLOAD_MIRROR_LOCATION}</td>
|
||||
<td>{DOWNLOAD_MIRROR_FILESIZE}</td>
|
||||
<td>{DOWNLOAD_MIRROR_LINK}</td>
|
||||
<td class='center text-center'>{DOWNLOAD_MIRROR_LINK}</td>
|
||||
</tr>
|
||||
";
|
||||
|
||||
|
Reference in New Issue
Block a user