mirror of
https://github.com/e107inc/e107.git
synced 2025-08-02 20:57:26 +02:00
Added import from URL to Media-Manager.
This commit is contained in:
@@ -937,6 +937,8 @@ class media_admin_ui extends e_admin_ui
|
|||||||
$mes->addDebug("For:".$cat);
|
$mes->addDebug("For:".$cat);
|
||||||
$mes->addDebug("Bbcode: ".$this->getQuery('bbcode'));
|
$mes->addDebug("Bbcode: ".$this->getQuery('bbcode'));
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if($file)
|
if($file)
|
||||||
{
|
{
|
||||||
@@ -976,12 +978,26 @@ class media_admin_ui extends e_admin_ui
|
|||||||
function uploadPage()
|
function uploadPage()
|
||||||
{
|
{
|
||||||
if(!ADMIN){ exit; } //TODO check for upload-access in perms.
|
if(!ADMIN){ exit; } //TODO check for upload-access in perms.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// if 'for' has no value, files are placed in /temp and not added to the db.
|
// if 'for' has no value, files are placed in /temp and not added to the db.
|
||||||
$text = '<div id="uploader" rel="'.e_JS.'plupload/upload.php?for='.$this->getQuery('for').'">
|
$text = '<div id="uploader" rel="'.e_JS.'plupload/upload.php?for='.$this->getQuery('for').'">
|
||||||
<p>No HTML5 support.</p>
|
<p>No HTML5 support.</p>
|
||||||
</div>';
|
</div>';
|
||||||
|
|
||||||
|
$frm = e107::getForm();
|
||||||
|
|
||||||
|
$text .= $frm->open('upload-url-form','post');
|
||||||
|
$text .= '<div class="plupload_header_content">';
|
||||||
|
$text .= "<div class='plupload_header_text form-inline' style='padding:20px'>Or upload a remote image or file ";
|
||||||
|
$text .= "<input type='text' name='upload_url' size='255' style='width:70%' placeholder='eg. http://website.com/some-image.jpg' />";
|
||||||
|
$text .= $frm->admin_button('upload_remote_url',1,'create','Start Upload');
|
||||||
|
$text .= "</div>";
|
||||||
|
|
||||||
|
$text .= "</div>";
|
||||||
|
|
||||||
return $text;
|
return $text;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1588,7 +1604,16 @@ class media_admin_ui extends e_admin_ui
|
|||||||
$frm = e107::getForm();
|
$frm = e107::getForm();
|
||||||
$mes = e107::getMessage();
|
$mes = e107::getMessage();
|
||||||
$fl = e107::getFile();
|
$fl = e107::getFile();
|
||||||
|
|
||||||
|
if(vartrue($_POST['upload_remote_url']))
|
||||||
|
{
|
||||||
|
if(!$fl->getRemoteFile($_POST['upload_url'], basename($_POST['upload_url']), 'import'))
|
||||||
|
{
|
||||||
|
$mes->addError("There was a problem grabbing the file");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
$fl->setFileInfo('all');
|
$fl->setFileInfo('all');
|
||||||
$rejectArray = array('^\.ftpquota$','^index\.html$','^null\.txt$','\.bak$','^.tmp','.*\.xml$','^\.$','^\.\.$','^\/$','^CVS$','thumbs\.db','.*\._$','^\.htaccess$','index\.html','null\.txt');
|
$rejectArray = array('^\.ftpquota$','^index\.html$','^null\.txt$','\.bak$','^.tmp','.*\.xml$','^\.$','^\.\.$','^\/$','^CVS$','thumbs\.db','.*\._$','^\.htaccess$','index\.html','null\.txt');
|
||||||
$fl->setFileFilter($rejectArray);
|
$fl->setFileFilter($rejectArray);
|
||||||
|
@@ -318,7 +318,9 @@ class e_file
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Grab a remote file and save it in the /temp directory. requires CURL
|
* Grab a remote file and save it in the /temp directory. requires CURL
|
||||||
*
|
* @param $remote_url
|
||||||
|
* @param $local_file
|
||||||
|
* @param $type media, temp, or import
|
||||||
* @return boolean TRUE on success, FALSE on failure (which includes absence of CURL functions)
|
* @return boolean TRUE on success, FALSE on failure (which includes absence of CURL functions)
|
||||||
*/
|
*/
|
||||||
function getRemoteFile($remote_url, $local_file, $type='temp')
|
function getRemoteFile($remote_url, $local_file, $type='temp')
|
||||||
@@ -335,6 +337,11 @@ class e_file
|
|||||||
|
|
||||||
$path = ($type == 'media') ? e_MEDIA : e_TEMP;
|
$path = ($type == 'media') ? e_MEDIA : e_TEMP;
|
||||||
|
|
||||||
|
if($type == 'import')
|
||||||
|
{
|
||||||
|
$path = e_IMPORT;
|
||||||
|
}
|
||||||
|
|
||||||
$fp = fopen($path.$local_file, 'w'); // media-directory is the root.
|
$fp = fopen($path.$local_file, 'w'); // media-directory is the root.
|
||||||
|
|
||||||
$cp = curl_init($remote_url);
|
$cp = curl_init($remote_url);
|
||||||
|
Reference in New Issue
Block a user