Please upload your files into the ".e_DOWNLOAD." folder, your images into the ".e_FILE."downloadimages folder and thumbnail images into the ".e_FILE."downloadthumbs folder.
To submit a download, first create a parent, then create a category under that parent, you will then be able to make the download available.
";
diff --git a/e107_plugins/download/handlers/adminDownload_class.php b/e107_plugins/download/handlers/adminDownload_class.php
index 7cbfb9743..22092adf1 100644
--- a/e107_plugins/download/handlers/adminDownload_class.php
+++ b/e107_plugins/download/handlers/adminDownload_class.php
@@ -10,14 +10,16 @@
| GNU General Public License (http://gnu.org).
|
| $Source: /cvs_backup/e107_0.8/e107_plugins/download/handlers/adminDownload_class.php,v $
- | $Revision: 1.23 $
- | $Date: 2009-11-09 16:54:29 $
- | $Author: secretr $
+ | $Revision: 1.24 $
+ | $Date: 2009-11-12 21:46:13 $
+ | $Author: bugrain $
+----------------------------------------------------------------------------+
*/
if (!e107::isInstalled('download')) { exit(); }
require_once(e_PLUGIN.'download/handlers/download_class.php');
+require_once(e_HANDLER.'upload_handler.php');
+require_once(e_HANDLER.'xml_class.php');
class adminDownload extends download
{
@@ -537,7 +539,7 @@ class adminDownload extends download
$file_array[] = str_replace(e_UPLOAD,"",$val);
}
}
-/* if ($sql->db_Select("rbinary")) //TODO Remove me.
+/* if ($sql->db_Select("rbinary")) //TODO Remove me.
{
while ($row = $sql->db_Fetch())
{
@@ -1445,7 +1447,7 @@ class adminDownload extends download
$ns->tablerender(DOWLAN_39, $text);
}
- function show_options() {
+ function show_download_options() {
global $pref, $ns;
require_once(e_HANDLER."form_handler.php");
@@ -1522,8 +1524,8 @@ class adminDownload extends download
@@ -1590,10 +1592,270 @@ class adminDownload extends download
-
+
+
+
+
+ ";
+ $ns->tablerender(LAN_DL_OPTIONS, $text);
+ }
+
+ function show_upload_list() {
+ global $ns, $sql, $gen, $e107, $tp;
+
+ $frm = new e_form(true); //enable inner tabindex counter
+ $imgd = e_BASE.$IMAGES_DIRECTORY;
+ $columnInfo = array(
+ "checkboxes" => array("title" => "", "forced"=> TRUE, "width" => "3%", "thclass" => "center first", "toggle" => "dl_selected"),
+ "upload_id" => array("title"=>DOWLAN_67, "type"=>"", "width"=>"auto", "thclass"=>"", "forced"=>true),
+ "upload_date" => array("title"=>DOWLAN_78, "type"=>"", "width"=>"auto", "thclass"=>""),
+ "upload_uploader" => array("title"=>DOWLAN_79, "type"=>"", "width"=>"auto", "thclass"=>""),
+ "upload_name" => array("title"=>DOWLAN_12, "type"=>"", "width"=>"auto", "thclass"=>""),
+ "upload_file_name" => array("title"=>DOWLAN_59, "type"=>"", "width"=>"auto", "thclass"=>""),
+ "upload_size" => array("title"=>DOWLAN_66, "type"=>"", "width"=>"auto", "thclass"=>"right"),
+ "options" => array("title"=>LAN_OPTIONS,"width"=>"15%", "thclass"=>"center last", "forced"=>true)
+ );
+ //TODO $filterColumns = ($user_pref['admin_download_disp'] ? $user_pref['admin_download_disp'] : array("download_name","download_class"));
+ $filterColumns = array("upload_id","upload_date","upload_uploader","upload_name","upload_file_name","upload_size");
+ $text = "
+ ";
+
+ $ns->tablerender(DOWLAN_22, $text);
+ }
+
+ function show_upload_filetypes() {
+ global $ns;
+
+ //TODO is there an e107:: copy of this
+ if (!is_object($e_userclass))
+ {
+ $e_userclass = new user_class;
+ }
+
+ if(!getperms("0")) exit; //TODO still needed?
+
+ $definition_source = DOWLAN_71;
+ $source_file = '';
+ $edit_upload_list = varset($_POST['upload_do_edit'], false);
+
+ if (isset($_POST['generate_filetypes_xml']))
+ { // Write back edited data to filetypes_.xml
+ $file_text = "\n";
+ foreach ($_POST['file_class_select'] as $k => $c)
+ {
+ if (!isset($_POST['file_line_delete_'.$c]) && varsettrue($_POST['file_type_list'][$k]))
+ {
+ $file_text .= " \n";
+ }
+ }
+ $file_text .= "";
+ if ((($handle = fopen(e_UPLOAD_TEMP_DIR.e_SAVE_FILETYPES,'wt')) == FALSE)
+ || (fwrite($handle,$file_text) == FALSE)
+ || (fclose($handle) == FALSE))
+ {
+ $text = DOWLAN_88.e_UPLOAD_TEMP_DIR.e_SAVE_FILETYPES;
+ }
+ else
+ {
+ $text = DOWLAN_86.e_UPLOAD_TEMP_DIR.e_SAVE_FILETYPES.' '.DOWLAN_87.e_ADMIN.e_READ_FILETYPES.' ';
+ }
+ $ns->tablerender(DOWLAN_49, $text);
+ }
+
+ $current_perms = array();
+ if (($edit_upload_list && is_readable(e_UPLOAD_TEMP_DIR.e_SAVE_FILETYPES)) || (!$edit_upload_list && is_readable(e_ADMIN.e_READ_FILETYPES)))
+ {
+ require_once(e_HANDLER.'xml_class.php');
+ $xml = new xmlClass;
+ $xml->setOptArrayTags('class');
+ $source_file = $edit_upload_list ? e_UPLOAD_TEMP_DIR.e_SAVE_FILETYPES : e_ADMIN.e_READ_FILETYPES;
+ $temp_vars = $xml->loadXMLfile($source_file, true, false);
+ if ($temp_vars === FALSE)
+ {
+ echo "Error parsing XML file!";
+ }
+ else
+ {
+ foreach ($temp_vars['class'] as $v1)
+ {
+ $v = $v1['@attributes'];
+ $current_perms[$v['name']] = array('type' => $v['type'],'maxupload' => $v['maxupload']);
+ }
+ }
+ }
+ elseif (is_readable(e_ADMIN.'filetypes.php'))
+ {
+ $source_file = 'filetypes.php';
+ $current_perms[e_UC_MEMBER] = array('type' => implode(',',array_keys(get_allowed_filetypes('filetypes.php', ''))),'maxupload' => '2M');
+ if (is_readable(e_ADMIN.'admin_filetypes.php'))
+ {
+ $current_perms[e_UC_ADMIN] = array('type' => implode(',',array_keys(get_allowed_filetypes('admin_filetypes.php', ''))),'maxupload' => '2M');
+ $source_file .= ' + admin_filetypes.php';
+ }
+ }
+ else
+ { // Set a default
+ $current_perms[e_UC_MEMBER] = array('type' => 'zip,tar,gz,jpg,png','maxupload' => '2M');
+ }
+
+ $frm = new e_form(true); //enable inner tabindex counter
+ $columnInfo = array(
+ "ftypes_userclass" => array("title"=>DOWLAN_73, "type"=>"", "width"=>"auto", "thclass"=>"", "forced"=>true),
+ "ftypes_extension" => array("title"=>DOWLAN_74, "type"=>"", "width"=>"auto", "thclass"=>""),
+ "ftypes_max_size" => array("title"=>DOWLAN_75, "type"=>"", "width"=>"auto", "thclass"=>""),
+ "ftypes_confirm_del" => array("title"=>DOWLAN_76, "type"=>"", "width"=>"auto", "thclass"=>"last"),
+ );
+ $filterColumns = array("ftypes_userclass", "ftypes_extension", "ftypes_max_size", "ftypes_confirm_del");
+ $text = "
+
+ ";
+
+ $ns->tablerender(DOWLAN_23, $text);
+ }
+ function show_upload_options() {
+ global $pref, $ns;
+
+ require_once(e_HANDLER."form_handler.php");
+ $frm = new e_form(true); //enable inner tabindex counter
+
+ $text = "
+
";
$ns->tablerender(LAN_DL_OPTIONS, $text);
}
diff --git a/e107_plugins/download/languages/English/admin_download.php b/e107_plugins/download/languages/English/admin_download.php
index 0f011e698..27c9c60b8 100644
--- a/e107_plugins/download/languages/English/admin_download.php
+++ b/e107_plugins/download/languages/English/admin_download.php
@@ -4,8 +4,8 @@
| e107 website system - Language File.
|
| $Source: /cvs_backup/e107_0.8/e107_plugins/download/languages/English/admin_download.php,v $
-| $Revision: 1.7 $
-| $Date: 2009-08-14 23:22:38 $
+| $Revision: 1.8 $
+| $Date: 2009-11-12 21:46:14 $
| $Author: bugrain $
+----------------------------------------------------------------------------+
*/
@@ -21,75 +21,96 @@ define("LAN_DL_SUBSUB_CAT_INFO", "Checking this will show the sub-sub-cate
define("LAN_DL_SUBSUB_COUNT", "Combine category counts");
define("LAN_DL_SUBSUB_COUNT_INFO", "Include sub-sub-category counts in sub-category counts");
-define("DOWLAN_1", "Download added to database.");
-define("DOWLAN_2", "Download updated in database.");
-define("DOWLAN_3", "Download deleted.");
-define("DOWLAN_4", "Please tick the confirm box to delete the download");
-define("DOWLAN_5", "There are no download categories defined yet, until you define some you cannot enter any downloads.");
-define("DOWLAN_6", "No existing downloads");
-define("DOWLAN_7", "Existing Downloads");
-define("DOWLAN_8", "Nothing changed - not saved");
-define('DOWLAN_9', 'Download detail:');
+define("DOWLAN_1", "Download added to database.");
+define("DOWLAN_2", "Download updated in database.");
+define("DOWLAN_3", "Download deleted.");
+define("DOWLAN_4", "Please tick the confirm box to delete the download");
+define("DOWLAN_5", "There are no download categories defined yet, until you define some you cannot enter any downloads.");
+define("DOWLAN_6", "No existing downloads");
+define("DOWLAN_7", "Existing Downloads");
+define("DOWLAN_8", "Nothing changed - not saved");
+define("DOWLAN_9", "Download detail:");
+define("DOWLAN_10", "Uploads");
+define("DOWLAN_11", "Category");
+define("DOWLAN_12", "Name");
+define("DOWLAN_13", "File");
+define("DOWLAN_14", "Enter address if download is an external file");
+define("DOWLAN_15", "Author");
+define("DOWLAN_16", "Author Email");
+define("DOWLAN_17", "Author Website");
+define("DOWLAN_18", "Description");
+define("DOWLAN_19", "Main image");
+define("DOWLAN_20", "Thumbnail image");
+define("DOWLAN_21", "Status");
+define("DOWLAN_22", "List uploads");
+define("DOWLAN_23", "File types");
+define("DOWLAN_24", "Update Download");
+define("DOWLAN_25", "Submit Download");
+define("DOWLAN_26", "Uploads enabled?");
+define("DOWLAN_27", "Download");
+define("DOWLAN_28", "None");
+define("DOWLAN_29", "Downloads");
+define("DOWLAN_30", "Create Download");
+define("DOWLAN_31", "Categories");
+define("DOWLAN_32", "Downloads");
+define("DOWLAN_33", "Are you sure you want to delete this download?");
+define("DOWLAN_34", "Are you sure you want to delete this download category?");
+define("DOWLAN_35", "Maximum file size");
+define("DOWLAN_36", "deleted");
+define("DOWLAN_37", "Parent");
+define("DOWLAN_38", "No existing categories");
+define("DOWLAN_39", "Download categories");
+define("DOWLAN_40", "None - main parent");
+define("DOWLAN_41", "Icon");
+define("DOWLAN_42", "View Images");
+define("DOWLAN_43", "Visible to");
+define("DOWLAN_44", "Selection will make the category visible to only users in that class");
+define("DOWLAN_45", "Create Category");
+define("DOWLAN_46", "Update Category");
+define("DOWLAN_47", "Category created");
+define("DOWLAN_48", "Category Updated");
+define("DOWLAN_49", "Download Category");
+define("DOWLAN_50", "Download Category");
+define("DOWLAN_51", "No public uploads will be permitted if disabled");
+define("DOWLAN_52", "Files");
+define("DOWLAN_53", "Subcategory");
+define("DOWLAN_54", "Subcategories");
+define("DOWLAN_55", "Number of downloads to display per page");
+define("DOWLAN_56", "Sort by ");
+define("DOWLAN_57", "Clear filters");
+define("DOWLAN_58", "Absolute maximum upload size in bytes. Further limited by settings from php.ini, and by the settings in filetypes.xml (upload_max_filesize = %1, post_max_size = %2)");
+define("DOWLAN_59", "Filename");
+define("DOWLAN_60", "Select to allow only certain users to upload");
+define("DOWLAN_61", "Permissions");
+define("DOWLAN_62", "Ascending");
+define("DOWLAN_63", "Descending");
+define("DOWLAN_64", "Update Options");
+define("DOWLAN_65", "Options Updated");
+define("DOWLAN_66", "Filesize");
+define("DOWLAN_67", "ID");
+define("DOWLAN_68", "File Missing!");
+define("DOWLAN_69", "Downloads handled by PHP");
+define("DOWLAN_70", "Checking this will send all download requests through PHP.");
+define("DOWLAN_71", "This page helps you create a file for managing file upload permissions. The file is saved as ../e107_files/temp/filetypes_.xml, and must be copied to ../e107_admin/filetypes.xml before it takes effect.");
+define("DOWLAN_72", "Source for values: ");
+define("DOWLAN_73", "Userclass");
+define("DOWLAN_74", "File extensions");
+define("DOWLAN_75", "Max upload size");
+define("DOWLAN_76", "Delete");
+define("DOWLAN_77", "Save and generate file");
+define("DOWLAN_78", "Date");
+define("DOWLAN_79", "Uploader");
+define("DOWLAN_80", "There");
+define("DOWLAN_81", "is");
+define("DOWLAN_82", "are");
+define("DOWLAN_83", "unmoderated public download");
+define("DOWLAN_84", "unmoderated public downloads");
+define('DOWLAN_85', 'This page helps you create a file for managing file upload permissions. The file is saved as --SOURCE--, and must be copied to --DEST-- before it takes effect.');
+define('DOWLAN_86', 'Settings written to ');
+define('DOWLAN_87', 'Now move this file to ');
+define('DOWLAN_88', 'Error writing file: ');
+define('DOWLAN_90', 'Add new entry');
-define("DOWLAN_11", "Category");
-define("DOWLAN_12", "Name");
-define("DOWLAN_13", "File");
-define("DOWLAN_14", "Enter address if download is an external file");
-define("DOWLAN_15", "Author");
-define("DOWLAN_16", "Author Email");
-define("DOWLAN_17", "Author Website");
-define("DOWLAN_18", "Description");
-define("DOWLAN_19", "Main image");
-define("DOWLAN_20", "Thumbnail image");
-define("DOWLAN_21", "Status");
-
-define("DOWLAN_24", "Update Download");
-define("DOWLAN_25", "Submit Download");
-
-define("DOWLAN_27", "Download");
-define("DOWLAN_28", "None");
-define("DOWLAN_29", "Downloads");
-define("DOWLAN_30", "Create Download");
-define("DOWLAN_31", "Categories");
-define("DOWLAN_32", "Downloads Options");
-define("DOWLAN_33", "Are you sure you want to delete this download?");
-define("DOWLAN_34", "Are you sure you want to delete this download category?");
-
-define("DOWLAN_36", "deleted");
-define("DOWLAN_37", "Parent");
-define("DOWLAN_38", "No existing categories");
-define("DOWLAN_39", "Download categories");
-define("DOWLAN_40", "None - main parent");
-define("DOWLAN_41", "Icon");
-define("DOWLAN_42", "View Images");
-define("DOWLAN_43", "Visible to");
-define("DOWLAN_44", "Selection will make the category visible to only users in that class");
-define("DOWLAN_45", "Create Category");
-define("DOWLAN_46", "Update Category");
-define("DOWLAN_47", "Category created");
-define("DOWLAN_48", "Category Updated");
-define("DOWLAN_49", "Download Category");
-
-define("DOWLAN_51", "Search downloads");
-define("DOWLAN_52", "Files");
-define("DOWLAN_53", "Subcategory");
-define("DOWLAN_54", "Subcategories");
-define("DOWLAN_55", "Number of downloads to display per page");
-define("DOWLAN_56", "Sort by ");
-define("DOWLAN_57", "Clear filters");
-
-
-define("DOWLAN_59", "Filename");
-
-define("DOWLAN_62", "Ascending");
-define("DOWLAN_63", "Descending");
-define("DOWLAN_64", "Update Options");
-define("DOWLAN_65", "Options Updated");
-define("DOWLAN_66", "Filesize");
-define("DOWLAN_67", "ID");
-define("DOWLAN_68", "File Missing!");
-define("DOWLAN_69", "Downloads handled by PHP");
-define("DOWLAN_70", "Checking this will send all download requests through PHP.");
define("DOWLAN_100", "Activate Download Agreement");
define("DOWLAN_101", "Agreement Text");
define("DOWLAN_102", "Allow Comments?");
@@ -123,7 +144,6 @@ define("DOWLAN_129", "leave blank if not using mirrors");
define("DOWLAN_130", "Add another mirror");
define("DOWLAN_131", "Select local file");
define("DOWLAN_132", "Please enter mirror to use, then address to download and filesize");
-
define("DOWLAN_133", "Mirror updated in database");
define("DOWLAN_134", "Mirror saved in database");
define("DOWLAN_135", "Mirror deleted");
@@ -136,42 +156,32 @@ define("DOWLAN_141", "Location");
define("DOWLAN_142", "Update Mirror");
define("DOWLAN_143", "Create Mirror");
define("DOWLAN_144", "No mirrors defined in mirror section.");
-
define("DOWLAN_145", "Download visible to");
define("DOWLAN_146", "Custom Download-denial message or URL");
-
-
define("DOWLAN_147", "Icon for empty category");
define("DOWLAN_148", "Check to update date stamp to current time");
define("DOWLAN_149", "URL");
-
define("DOWLAN_150", "Email admin when broken download reported");
define("DOWLAN_151", "Broken-download reporting available to");
-
define("DOWLAN_152", "Couldn't move file");
define("DOWLAN_153", "Move file into download folder");
-
define("DOWLAN_154", "if using mirrors, select how they will be displayed");
define("DOWLAN_155", "Mirror display type:");
define("DOWLAN_156", "show mirror list, allow user to choose mirror");
define("DOWLAN_157", "use random mirror - no user choice");
-
define("DOWLAN_158", "Show sub-sub-categories on main download page");
define("DOWLAN_159", "Include sub-sub-category counts in subcategory counts");
-
define("DOWLAN_160", "Mirror list order");
define("DOWLAN_161", "Random");
-define("DOWLAN_162", "ID");
-define("DOWLAN_163", "Name");
+
define("DOWLAN_164", "Recent downloads age (in days)");
-
-define("DOWLAN_165", "Download Maintenance - ");
+define("DOWLAN_165", "Download Maintenance");
define("DOWLAN_166", "Duplicates");
define("DOWLAN_167", "Orphans");
define("DOWLAN_168", "Missing");
define("DOWLAN_169", "Inactive");
-define("DOWLAN_170", "File size");
+
define("DOWLAN_171", "Log");
define("DOWLAN_172", "No entries");
define("DOWLAN_173", "Are you sure you want to delete this file?");
@@ -201,15 +211,16 @@ define("DOWLAN_196", "list");
define("DOWLAN_197", "random");
define("DOWLAN_198", "Filter");
-define("DOWLAN_HELP_1", "Download Help");
+define("DOWLAN_HELP_1", "Help");
define("DOWLAN_HELP_2", "
Create/edit a download.
Enter only one of: File, URL or Mirror.
Ensure you select a category, otherwise your download will not be visible on the downloads page.
");
define("DOWLAN_HELP_3", "Help for cat");
define("DOWLAN_HELP_4", "Help for opt");
define("DOWLAN_HELP_5", "Use the maintenance pages to find duplicate downloads, find orphaned files, find missing (broken) entries, manage inactive downloads, refresh file sizes and view the downlaod log.");
define("DOWLAN_HELP_6", "Help for limits");
define("DOWLAN_HELP_7", "Help for mirror");
-define("DOWLAN_HELP_8", "Help for ");
-define("DOWLAN_HELP_9", "Help for ");
+define("DOWLAN_HELP_8", "Help for upload list");
+define("DOWLAN_HELP_9", "Help for upload types");
+define("DOWLAN_HELP_10", "Help for upload options");
define("DOWLAN_INSTALL_DONE", "Your download plugin is now installed");
define("DOWLAN_DESCRIPTION", "This plugin is a fully featured Download system");