mirror of
https://github.com/e107inc/e107.git
synced 2025-07-26 01:11:28 +02:00
Moved filetypes.xml path to e_SYSTEM directory and auto-generate file if not found.
This commit is contained in:
@@ -1,5 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<e107Filetypes>
|
||||
<class name='253' type='zip,gz,jpg,png,gif' maxupload='2M' />
|
||||
</e107Filetypes>
|
||||
|
@@ -1057,6 +1057,19 @@ function update_706_to_800($type='')
|
||||
mkdir(e_TEMP,0755);
|
||||
}
|
||||
|
||||
// Autogenerate filetypes.xml if not found.
|
||||
if(!is_readable(e_SYSTEM."filetypes.xml"))
|
||||
{
|
||||
$data = '<?xml version="1.0" encoding="utf-8"?>
|
||||
<e107Filetypes>
|
||||
<class name="253" type="zip,gz,jpg,jpeg,png,gif,xml" maxupload="2M" />
|
||||
</e107Filetypes>';
|
||||
|
||||
file_put_contents(e_SYSTEM."filetypes.xml",$data);
|
||||
}
|
||||
|
||||
|
||||
|
||||
$root_media = str_replace(basename(e_MEDIA)."/","",e_MEDIA);
|
||||
$user_media_dirs = array("images","avatars","files","temp","videos","icons");
|
||||
|
||||
|
@@ -515,6 +515,7 @@ function file_upload($uploaddir, $avatar = FALSE, $fileinfo = "", $overwrite = "
|
||||
* 9 - unacceptable file type (prone to exploits)
|
||||
*/
|
||||
|
||||
//TODO - Move this function to file_class.php
|
||||
function vet_file($filename, $target_name, $allowed_filetypes = '', $unknown = FALSE)
|
||||
{
|
||||
// 1. Start by checking against filetypes - that's the easy one!
|
||||
@@ -692,12 +693,12 @@ function vet_file($filename, $target_name, $allowed_filetypes = '', $unknown = F
|
||||
}
|
||||
}
|
||||
|
||||
if ($def_file && is_readable(e_ADMIN.$def_file))
|
||||
if ($def_file && is_readable(e_SYSTEM.$def_file))
|
||||
{
|
||||
$xml = e107::getXml();
|
||||
// class tag should be always array
|
||||
$xml->setOptArrayTags('class');
|
||||
$temp_vars = $xml->loadXMLfile(e_ADMIN.$def_file, 'filetypes', false);
|
||||
$temp_vars = $xml->loadXMLfile(e_SYSTEM.$def_file, 'filetypes', false);
|
||||
if ($temp_vars === FALSE)
|
||||
{
|
||||
echo "Error reading XML file: {$def_file}<br />";
|
||||
@@ -785,6 +786,7 @@ function vet_file($filename, $target_name, $allowed_filetypes = '', $unknown = F
|
||||
{
|
||||
if ($filename != '')
|
||||
{
|
||||
|
||||
if (strtolower(substr($filename, -4) == '.xml'))
|
||||
{
|
||||
return get_XML_filetypes($filename, $file_mask);
|
||||
@@ -792,7 +794,7 @@ function vet_file($filename, $target_name, $allowed_filetypes = '', $unknown = F
|
||||
return get_allowed_filetypes($filename, $file_mask);
|
||||
}
|
||||
|
||||
if (is_readable(e_ADMIN.e_READ_FILETYPES))
|
||||
if (is_readable(e_SYSTEM.e_READ_FILETYPES))
|
||||
{
|
||||
return get_XML_filetypes(e_READ_FILETYPES, $file_mask);
|
||||
}
|
||||
|
Reference in New Issue
Block a user