[10.0.052] RFM éditeur image actif + mise à jour config

This commit is contained in:
Fred Tempez 2020-04-06 07:14:52 +02:00
parent f1e5ae5367
commit bf9ba87c37
96 changed files with 3506 additions and 13193 deletions

View File

@ -33,7 +33,7 @@ class common {
const TEMP_DIR = 'site/tmp/'; const TEMP_DIR = 'site/tmp/';
// Numéro de version // Numéro de version
const ZWII_VERSION = '10.0.051'; const ZWII_VERSION = '10.0.052';
const ZWII_UPDATE_CHANNEL = "v10"; const ZWII_UPDATE_CHANNEL = "v10";
public static $actions = []; public static $actions = [];

File diff suppressed because it is too large Load Diff

View File

@ -4,15 +4,13 @@ $config = include 'config/config.php';
require_once 'include/utils.php'; require_once 'include/utils.php';
if ($_SESSION['RF']["verify"] != "RESPONSIVEfilemanager") if ($_SESSION['RF']["verify"] != "RESPONSIVEfilemanager") {
{ response(trans('forbidden').AddErrorLocation())->send();
response(trans('forbiden').AddErrorLocation())->send();
exit; exit;
} }
$languages = include 'lang/languages.php'; $languages = include 'lang/languages.php';
if (isset($_SESSION['RF']['language']) && file_exists('lang/' . basename($_SESSION['RF']['language']) . '.php')) if (isset($_SESSION['RF']['language']) && file_exists('lang/' . basename($_SESSION['RF']['language']) . '.php')) {
{
if (array_key_exists($_SESSION['RF']['language'], $languages)) { if (array_key_exists($_SESSION['RF']['language'], $languages)) {
include 'lang/' . basename($_SESSION['RF']['language']) . '.php'; include 'lang/' . basename($_SESSION['RF']['language']) . '.php';
} else { } else {
@ -40,10 +38,8 @@ if(isset($_POST['path']) && !checkRelativePath($_POST['path'])) {
$ftp = ftp_con($config); $ftp = ftp_con($config);
if(isset($_GET['action'])) if (isset($_GET['action'])) {
{ switch ($_GET['action']) {
switch($_GET['action'])
{
case 'new_file_form': case 'new_file_form':
echo trans('Filename') . ': <input type="text" id="create_text_file_name" style="height:30px"> <select id="create_text_file_extension" style="margin:0;width:100px;">'; echo trans('Filename') . ': <input type="text" id="create_text_file_name" style="height:30px"> <select id="create_text_file_extension" style="margin:0;width:100px;">';
foreach ($config['editable_text_file_exts'] as $ext) { foreach ($config['editable_text_file_exts'] as $ext) {
@ -51,33 +47,29 @@ if(isset($_GET['action']))
} }
echo '</select><br><hr><textarea id="textfile_create_area" style="width:100%;height:150px;"></textarea>'; echo '</select><br><hr><textarea id="textfile_create_area" style="width:100%;height:150px;"></textarea>';
break; break;
case 'view': case 'view':
if(isset($_GET['type'])) if (isset($_GET['type'])) {
{
$_SESSION['RF']["view_type"] = $_GET['type']; $_SESSION['RF']["view_type"] = $_GET['type'];
} } else {
else
{
response(trans('view type number missing').AddErrorLocation())->send(); response(trans('view type number missing').AddErrorLocation())->send();
exit; exit;
} }
break; break;
case 'filter': case 'filter':
if (isset($_GET['type'])) if (isset($_GET['type'])) {
{ if (isset($config['remember_text_filter']) && $config['remember_text_filter']) {
if (isset($config['remember_text_filter']) && $config['remember_text_filter'])
{
$_SESSION['RF']["filter"] = $_GET['type']; $_SESSION['RF']["filter"] = $_GET['type'];
} }
} } else {
else {
response(trans('view type number missing').AddErrorLocation())->send(); response(trans('view type number missing').AddErrorLocation())->send();
exit; exit;
} }
break; break;
case 'sort': case 'sort':
if (isset($_GET['sort_by'])) if (isset($_GET['sort_by'])) {
{
$_SESSION['RF']["sort_by"] = $_GET['sort_by']; $_SESSION['RF']["sort_by"] = $_GET['sort_by'];
} }
@ -88,19 +80,25 @@ if(isset($_GET['action']))
break; break;
case 'save_img': case 'save_img':
$info = pathinfo($_POST['name']); $info = pathinfo($_POST['name']);
$image_data = $_POST['url'];
if ((strpos($_POST['url'], 'http://s3.amazonaws.com/feather') !== 0 && strpos($_POST['url'], 'https://s3.amazonaws.com/feather') !== 0) if (preg_match('/^data:image\/(\w+);base64,/', $image_data, $type)) {
|| $_POST['name'] != fix_filename($_POST['name'], $config) $image_data = substr($image_data, strpos($image_data, ',') + 1);
|| ! in_array(strtolower($info['extension']), array( 'jpg', 'jpeg', 'png' )) $type = strtolower($type[1]); // jpg, png, gif
)
{ $image_data = base64_decode($image_data);
response(trans('wrong data').AddErrorLocation())->send();
if ($image_data === false) {
response(trans('TUI_Decode_Failed').AddErrorLocation())->send();
exit; exit;
} }
$image_data = get_file_by_url($_POST['url']); } else {
if ($image_data === false) response(trans('').AddErrorLocation())->send();
{ exit;
response(trans('Aviary_No_Save').AddErrorLocation())->send(); }
if ($image_data === false) {
response(trans('').AddErrorLocation())->send();
exit; exit;
} }
@ -109,7 +107,6 @@ if(isset($_GET['action']))
exit; exit;
} }
if ($ftp) { if ($ftp) {
$temp = tempnam('/tmp', 'RF'); $temp = tempnam('/tmp', 'RF');
unlink($temp); unlink($temp);
$temp .=".".substr(strrchr($_POST['url'], '.'), 1); $temp .=".".substr(strrchr($_POST['url'], '.'), 1);
@ -122,7 +119,6 @@ if(isset($_GET['action']))
unlink($temp); unlink($temp);
} else { } else {
file_put_contents($config['current_path'] . $_POST['path'] . $_POST['name'], $image_data); file_put_contents($config['current_path'] . $_POST['path'] . $_POST['name'], $image_data);
create_img($config['current_path'] . $_POST['path'] . $_POST['name'], $config['thumbs_base_path'].$_POST['path'].$_POST['name'], 122, 91); create_img($config['current_path'] . $_POST['path'] . $_POST['name'], $config['thumbs_base_path'].$_POST['path'].$_POST['name'], 122, 91);
// TODO something with this function cause its blowing my mind // TODO something with this function cause its blowing my mind
@ -135,6 +131,7 @@ if(isset($_GET['action']))
); );
} }
break; break;
case 'extract': case 'extract':
if (!$config['extract_files']) { if (!$config['extract_files']) {
response(trans('wrong action').AddErrorLocation())->send(); response(trans('wrong action').AddErrorLocation())->send();
@ -163,16 +160,13 @@ if(isset($_GET['action']))
$info = pathinfo($path); $info = pathinfo($path);
switch ($info['extension']) switch ($info['extension']) {
{
case "zip": case "zip":
$zip = new ZipArchive; $zip = new ZipArchive;
if ($zip->open($path) === true) if ($zip->open($path) === true) {
{
//get total size //get total size
$sizeTotalFinal = 0; $sizeTotalFinal = 0;
for ($i = 0; $i < $zip->numFiles; $i++) for ($i = 0; $i < $zip->numFiles; $i++) {
{
$aStat = $zip->statIndex($i); $aStat = $zip->statIndex($i);
$sizeTotalFinal += $aStat['size']; $sizeTotalFinal += $aStat['size'];
} }
@ -182,23 +176,18 @@ if(isset($_GET['action']))
} }
//make all the folders and unzip into the folders //make all the folders and unzip into the folders
for ($i = 0; $i < $zip->numFiles; $i++) for ($i = 0; $i < $zip->numFiles; $i++) {
{
$FullFileName = $zip->statIndex($i); $FullFileName = $zip->statIndex($i);
if (checkRelativePath($FullFileName['name'])) { if (checkRelativePath($FullFileName['name'])) {
if (substr($FullFileName['name'], -1, 1) == "/") if (substr($FullFileName['name'], -1, 1) == "/") {
{
create_folder($base_folder . $FullFileName['name']); create_folder($base_folder . $FullFileName['name']);
} }
if ( ! (substr($FullFileName['name'], -1, 1) == "/")) if (! (substr($FullFileName['name'], -1, 1) == "/")) {
{
$fileinfo = pathinfo($FullFileName['name']); $fileinfo = pathinfo($FullFileName['name']);
if (in_array(strtolower($fileinfo['extension']), $config['ext'])) if (in_array(strtolower($fileinfo['extension']), $config['ext'])) {
{ copy('zip://' . $path . '#' . $FullFileName['name'], $base_folder . $FullFileName['name']);
//copy('zip://' . $path . '#' . $FullFileName['name'], $base_folder . $FullFileName['name']);
$zip->extractTo($base_folder , $FullFileName['name']);
} }
} }
} }
@ -215,7 +204,6 @@ if(isset($_GET['action']))
// No resulting size pre-control available // No resulting size pre-control available
$p = new PharData($path); $p = new PharData($path);
$p->decompress(); // creates files.tar $p->decompress(); // creates files.tar
break; break;
case "tar": case "tar":
@ -226,7 +214,6 @@ if(isset($_GET['action']))
$files = array(); $files = array();
check_files_extensions_on_phar($phar, $files, '', $config); check_files_extensions_on_phar($phar, $files, '', $config);
$phar->extractTo($base_folder, $files, true); $phar->extractTo($base_folder, $files, true);
break; break;
default: default:
@ -361,14 +348,12 @@ if(isset($_GET['action']))
break; break;
case 'copy_cut': case 'copy_cut':
if ($_POST['sub_action'] != 'copy' && $_POST['sub_action'] != 'cut') if ($_POST['sub_action'] != 'copy' && $_POST['sub_action'] != 'cut') {
{
response(trans('wrong sub-action').AddErrorLocation())->send(); response(trans('wrong sub-action').AddErrorLocation())->send();
exit; exit;
} }
if (trim($_POST['path']) == '') if (trim($_POST['path']) == '') {
{
response(trans('no path').AddErrorLocation())->send(); response(trans('no path').AddErrorLocation())->send();
exit; exit;
} }
@ -376,11 +361,9 @@ if(isset($_GET['action']))
$msg_sub_action = ($_POST['sub_action'] == 'copy' ? trans('Copy') : trans('Cut')); $msg_sub_action = ($_POST['sub_action'] == 'copy' ? trans('Copy') : trans('Cut'));
$path = $config['current_path'] . $_POST['path']; $path = $config['current_path'] . $_POST['path'];
if (is_dir($path)) if (is_dir($path)) {
{
// can't copy/cut dirs // can't copy/cut dirs
if ($config['copy_cut_dirs'] === false) if ($config['copy_cut_dirs'] === false) {
{
response(sprintf(trans('Copy_Cut_Not_Allowed'), $msg_sub_action, trans('Folders')).AddErrorLocation())->send(); response(sprintf(trans('Copy_Cut_Not_Allowed'), $msg_sub_action, trans('Folders')).AddErrorLocation())->send();
exit; exit;
} }
@ -395,10 +378,8 @@ if(isset($_GET['action']))
} }
// file count over limit // file count over limit
if ($config['copy_cut_max_count'] !== false && is_int($config['copy_cut_max_count'])) if ($config['copy_cut_max_count'] !== false && is_int($config['copy_cut_max_count'])) {
{ if ($config['copy_cut_max_count'] < $fileNum) {
if ($config['copy_cut_max_count'] < $fileNum)
{
response(sprintf(trans('Copy_Cut_Count_Limit'), $msg_sub_action, $config['copy_cut_max_count']).AddErrorLocation())->send(); response(sprintf(trans('Copy_Cut_Count_Limit'), $msg_sub_action, $config['copy_cut_max_count']).AddErrorLocation())->send();
exit; exit;
} }
@ -410,8 +391,7 @@ if(isset($_GET['action']))
} }
} else { } else {
// can't copy/cut files // can't copy/cut files
if ($config['copy_cut_files'] === false) if ($config['copy_cut_files'] === false) {
{
response(sprintf(trans('Copy_Cut_Not_Allowed'), $msg_sub_action, trans('Files')).AddErrorLocation())->send(); response(sprintf(trans('Copy_Cut_Not_Allowed'), $msg_sub_action, trans('Files')).AddErrorLocation())->send();
exit; exit;
} }
@ -430,8 +410,7 @@ if(isset($_GET['action']))
if ( if (
($_POST['folder']==1 && $config['chmod_dirs'] === false) ($_POST['folder']==1 && $config['chmod_dirs'] === false)
|| ($_POST['folder']==0 && $config['chmod_files'] === false) || ($_POST['folder']==0 && $config['chmod_files'] === false)
|| (is_function_callable("chmod") === false) ) || (is_function_callable("chmod") === false)) {
{
response(sprintf(trans('File_Permission_Not_Allowed'), (is_dir($path) ? trans('Folders') : trans('Files')), 403).AddErrorLocation())->send(); response(sprintf(trans('File_Permission_Not_Allowed'), (is_dir($path) ? trans('Folders') : trans('Files')), 403).AddErrorLocation())->send();
exit; exit;
} }
@ -441,8 +420,7 @@ if(isset($_GET['action']))
if ( if (
(is_dir($path) && $config['chmod_dirs'] === false) (is_dir($path) && $config['chmod_dirs'] === false)
|| (is_file($path) && $config['chmod_files'] === false) || (is_file($path) && $config['chmod_files'] === false)
|| (is_function_callable("chmod") === false) ) || (is_function_callable("chmod") === false)) {
{
response(sprintf(trans('File_Permission_Not_Allowed'), (is_dir($path) ? trans('Folders') : trans('Files')), 403).AddErrorLocation())->send(); response(sprintf(trans('File_Permission_Not_Allowed'), (is_dir($path) ? trans('Folders') : trans('Files')), 403).AddErrorLocation())->send();
exit; exit;
} }
@ -471,7 +449,6 @@ if(isset($_GET['action']))
$info .= (($perms & 0x0001) ? $info .= (($perms & 0x0001) ?
(($perms & 0x0200) ? 't' : 'x') : (($perms & 0x0200) ? 't' : 'x') :
(($perms & 0x0200) ? 'T' : '-')); (($perms & 0x0200) ? 'T' : '-'));
} }
@ -512,8 +489,7 @@ if(isset($_GET['action']))
</tbody> </tbody>
</table>'; </table>';
if ((!$ftp && is_dir($path)) ) if ((!$ftp && is_dir($path))) {
{
$ret .= '<div class="hero-unit" style="padding:10px;">'.trans('File_Permission_Recursive').'<br/><br/> $ret .= '<div class="hero-unit" style="padding:10px;">'.trans('File_Permission_Recursive').'<br/><br/>
<ul class="unstyled"> <ul class="unstyled">
<li><label class="radio"><input value="none" name="apply_recursive" type="radio" checked> '.trans('No').'</label></li> <li><label class="radio"><input value="none" name="apply_recursive" type="radio" checked> '.trans('No').'</label></li>
@ -531,15 +507,13 @@ if(isset($_GET['action']))
break; break;
case 'get_lang': case 'get_lang':
if ( ! file_exists('lang/languages.php')) if (! file_exists('lang/languages.php')) {
{
response(trans('Lang_Not_Found').AddErrorLocation())->send(); response(trans('Lang_Not_Found').AddErrorLocation())->send();
exit; exit;
} }
$languages = include 'lang/languages.php'; $languages = include 'lang/languages.php';
if ( ! isset($languages) || ! is_array($languages)) if (! isset($languages) || ! is_array($languages)) {
{
response(trans('Lang_Not_Found').AddErrorLocation())->send(); response(trans('Lang_Not_Found').AddErrorLocation())->send();
exit; exit;
} }
@ -547,8 +521,7 @@ if(isset($_GET['action']))
$curr = $_SESSION['RF']['language']; $curr = $_SESSION['RF']['language'];
$ret = '<select id="new_lang_select">'; $ret = '<select id="new_lang_select">';
foreach ($languages as $code => $name) foreach ($languages as $code => $name) {
{
$ret .= '<option value="' . $code . '"' . ($code == $curr ? ' selected' : '') . '>' . $name . '</option>'; $ret .= '<option value="' . $code . '"' . ($code == $curr ? ' selected' : '') . '>' . $name . '</option>';
} }
$ret .= '</select>'; $ret .= '</select>';
@ -561,8 +534,7 @@ if(isset($_GET['action']))
$choosen_lang = (!empty($_POST['choosen_lang']))? $_POST['choosen_lang']:"en_EN"; $choosen_lang = (!empty($_POST['choosen_lang']))? $_POST['choosen_lang']:"en_EN";
if (array_key_exists($choosen_lang, $languages)) { if (array_key_exists($choosen_lang, $languages)) {
if ( ! file_exists('lang/' . $choosen_lang . '.php')) if (! file_exists('lang/' . $choosen_lang . '.php')) {
{
response(trans('Lang_Not_Found').AddErrorLocation())->send(); response(trans('Lang_Not_Found').AddErrorLocation())->send();
exit; exit;
} else { } else {
@ -577,8 +549,7 @@ if(isset($_GET['action']))
} else { } else {
$selected_file = $config['current_path'] . $_GET['file']; $selected_file = $config['current_path'] . $_GET['file'];
if ( ! file_exists($selected_file)) if (! file_exists($selected_file)) {
{
response(trans('File_Not_Found').AddErrorLocation())->send(); response(trans('File_Not_Found').AddErrorLocation())->send();
exit; exit;
} }
@ -598,8 +569,7 @@ if(isset($_GET['action']))
$sub_action = $_GET['sub_action']; $sub_action = $_GET['sub_action'];
$preview_mode = $_GET["preview_mode"]; $preview_mode = $_GET["preview_mode"];
if ($sub_action != 'preview' && $sub_action != 'edit') if ($sub_action != 'preview' && $sub_action != 'edit') {
{
response(trans('wrong action').AddErrorLocation())->send(); response(trans('wrong action').AddErrorLocation())->send();
exit; exit;
} }
@ -609,8 +579,7 @@ if(isset($_GET['action']))
} else { } else {
$selected_file = ($sub_action == 'preview' ? $config['current_path'] . $_GET['file'] : $config['current_path'] . $_POST['path']); $selected_file = ($sub_action == 'preview' ? $config['current_path'] . $_GET['file'] : $config['current_path'] . $_POST['path']);
if ( ! file_exists($selected_file)) if (! file_exists($selected_file)) {
{
response(trans('File_Not_Found').AddErrorLocation())->send(); response(trans('File_Not_Found').AddErrorLocation())->send();
exit; exit;
} }
@ -618,8 +587,7 @@ if(isset($_GET['action']))
$info = pathinfo($selected_file); $info = pathinfo($selected_file);
if ($preview_mode == 'text') if ($preview_mode == 'text') {
{
$is_allowed = ($sub_action == 'preview' ? $config['preview_text_files'] : $config['edit_text_files']); $is_allowed = ($sub_action == 'preview' ? $config['preview_text_files'] : $config['edit_text_files']);
$allowed_file_exts = ($sub_action == 'preview' ? $config['previewable_text_file_exts'] : $config['editable_text_file_exts']); $allowed_file_exts = ($sub_action == 'preview' ? $config['previewable_text_file_exts'] : $config['editable_text_file_exts']);
} elseif ($preview_mode == 'google') { } elseif ($preview_mode == 'google') {
@ -627,8 +595,7 @@ if(isset($_GET['action']))
$allowed_file_exts = $config['googledoc_file_exts']; $allowed_file_exts = $config['googledoc_file_exts'];
} }
if ( ! isset($allowed_file_exts) || ! is_array($allowed_file_exts)) if (! isset($allowed_file_exts) || ! is_array($allowed_file_exts)) {
{
$allowed_file_exts = array(); $allowed_file_exts = array();
} }
@ -639,15 +606,12 @@ if(isset($_GET['action']))
|| ! isset($is_allowed) || ! isset($is_allowed)
|| $is_allowed === false || $is_allowed === false
|| (!$ftp && ! is_readable($selected_file)) || (!$ftp && ! is_readable($selected_file))
) ) {
{
response(sprintf(trans('File_Open_Edit_Not_Allowed'), ($sub_action == 'preview' ? strtolower(trans('Open')) : strtolower(trans('Edit')))).AddErrorLocation())->send(); response(sprintf(trans('File_Open_Edit_Not_Allowed'), ($sub_action == 'preview' ? strtolower(trans('Open')) : strtolower(trans('Edit')))).AddErrorLocation())->send();
exit; exit;
} }
if ($sub_action == 'preview') if ($sub_action == 'preview') {
{ if ($preview_mode == 'text') {
if ($preview_mode == 'text')
{
// get and sanities // get and sanities
$data = file_get_contents($selected_file); $data = file_get_contents($selected_file);
$data = htmlspecialchars(htmlspecialchars_decode($data)); $data = htmlspecialchars(htmlspecialchars_decode($data));
@ -655,9 +619,7 @@ if(isset($_GET['action']))
$ret .= '<script src="https://rawgit.com/google/code-prettify/master/loader/run_prettify.js?autoload=true&skin=sunburst"></script>'; $ret .= '<script src="https://rawgit.com/google/code-prettify/master/loader/run_prettify.js?autoload=true&skin=sunburst"></script>';
$ret .= '<?prettify lang='.$info['extension'].' linenums=true?><pre class="prettyprint"><code class="language-'.$info['extension'].'">'.$data.'</code></pre>'; $ret .= '<?prettify lang='.$info['extension'].' linenums=true?><pre class="prettyprint"><code class="language-'.$info['extension'].'">'.$data.'</code></pre>';
} elseif ($preview_mode == 'google') {
}
elseif ($preview_mode == 'google') {
if ($ftp) { if ($ftp) {
$url_file = $selected_file; $url_file = $selected_file;
} else { } else {
@ -670,8 +632,7 @@ if(isset($_GET['action']))
}else{ }else{
$data = stripslashes(htmlspecialchars(file_get_contents($selected_file))); $data = stripslashes(htmlspecialchars(file_get_contents($selected_file)));
if(in_array($info['extension'],array('html','html'))){ if(in_array($info['extension'],array('html','html'))){
$ret = '<script src="https://cdn.ckeditor.com/ckeditor5/11.1.1/classic/ckeditor.js"></script><textarea id="textfile_edit_area" style="width:100%;height:300px;">'.$data.'</textarea><script>setTimeout(function(){ ClassicEditor $ret = '<script src="https://cdn.ckeditor.com/ckeditor5/12.1.0/classic/ckeditor.js"></script><textarea id="textfile_edit_area" style="width:100%;height:300px;">'.$data.'</textarea><script>setTimeout(function(){ ClassicEditor.create( document.querySelector( "#textfile_edit_area" )).catch( function(error){ console.error( error ); } ); }, 500);</script>';
.create( document.querySelector( "#textfile_edit_area" ),{ }).then( newEditor => { window.editor = newEditor; } ); }, 500);</script>';
}else{ }else{
$ret = '<textarea id="textfile_edit_area" style="width:100%;height:300px;">'.$data.'</textarea>'; $ret = '<textarea id="textfile_edit_area" style="width:100%;height:300px;">'.$data.'</textarea>';
} }

View File

@ -97,6 +97,17 @@ $config = array(
*/ */
'thumbs_base_path' => '../../../site/file/thumb/', 'thumbs_base_path' => '../../../site/file/thumb/',
/*
|--------------------------------------------------------------------------
| path from base_url to base of thumbs folder
|--------------------------------------------------------------------------
|
| with final /
| DO NOT put inside upload folder
|
*/
'thumbs_upload_dir' => '/thumb/',
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
@ -396,15 +407,78 @@ $config = array(
'files_without_extension' => false, 'files_without_extension' => false,
/****************** /******************
* AVIARY config * TUI Image Editor config
*******************/ *******************/
'aviary_active' => false, // Add or modify the options below as needed - they will be json encoded when added to the configuration so arrays can be utilized as needed
'aviary_apiKey' => "2444282ef4344e3dacdedc7a78f8877d", 'tui_active' => true,
'aviary_language' => "fr", 'tui_position' => 'bottom',
'aviary_theme' => "light", // 'common.bi.image' => "../assets/images/logo.png",
'aviary_tools' => "all", // 'common.bisize.width' => '70px',
'aviary_maxSize' => "1400", // 'common.bisize.height' => '25px',
// Add or modify the Aviary options below as needed - they will be json encoded when added to the configuration so arrays can be utilized as needed 'common.backgroundImage' => 'none',
'common.backgroundColor' => '#ececec',
'common.border' => '1px solid #E6E7E8',
// header
'header.backgroundImage' => 'none',
'header.backgroundColor' => '#ececec',
'header.border' => '0px',
// main icons
'menu.normalIcon.path' => 'svg/icon-d.svg',
'menu.normalIcon.name' => 'icon-d',
'menu.activeIcon.path' => 'svg/icon-b.svg',
'menu.activeIcon.name' => 'icon-b',
'menu.disabledIcon.path' => 'svg/icon-a.svg',
'menu.disabledIcon.name' => 'icon-a',
'menu.hoverIcon.path' => 'svg/icon-c.svg',
'menu.hoverIcon.name' => 'icon-c',
'menu.iconSize.width' => '24px',
'menu.iconSize.height' => '24px',
// submenu primary color
'submenu.backgroundColor' => '#ececec',
'submenu.partition.color' => '#000000',
// submenu icons
'submenu.normalIcon.path' => 'svg/icon-d.svg',
'submenu.normalIcon.name' => 'icon-d',
'submenu.activeIcon.path' => 'svg/icon-b.svg',
'submenu.activeIcon.name' => 'icon-b',
'submenu.iconSize.width' => '32px',
'submenu.iconSize.height' => '32px',
// submenu labels
'submenu.normalLabel.color' => '#000',
'submenu.normalLabel.fontWeight' => 'normal',
'submenu.activeLabel.color' => '#000',
'submenu.activeLabel.fontWeight' => 'normal',
// checkbox style
'checkbox.border' => '1px solid #E6E7E8',
'checkbox.backgroundColor' => '#000',
// rango style
'range.pointer.color' => '#333',
'range.bar.color' => '#ccc',
'range.subbar.color' => '#606060',
'range.disabledPointer.color' => '#d3d3d3',
'range.disabledBar.color' => 'rgba(85,85,85,0.06)',
'range.disabledSubbar.color' => 'rgba(51,51,51,0.2)',
'range.value.color' => '#000',
'range.value.fontWeight' => 'normal',
'range.value.fontSize' => '11px',
'range.value.border' => '0',
'range.value.backgroundColor' => '#f5f5f5',
'range.title.color' => '#000',
'range.title.fontWeight' => 'lighter',
// colorpicker style
'colorpicker.button.border' => '0px',
'colorpicker.title.color' => '#000',
//The filter and sorter are managed through both javascript and php scripts because if you have a lot of //The filter and sorter are managed through both javascript and php scripts because if you have a lot of
//file in a folder the javascript script can't sort all or filter all, so the filemanager switch to php script. //file in a folder the javascript script can't sort all or filter all, so the filemanager switch to php script.
@ -488,13 +562,55 @@ return array_merge(
$config['ext_video'], $config['ext_video'],
$config['ext_music'] $config['ext_music']
), ),
// For a list of options see: https://developers.aviary.com/docs/web/setup-guide#constructor-config 'tui_defaults_config' => array(
'aviary_defaults_config' => array( //'common.bi.image' => $config['common.bi.image'],
'apiKey' => $config['aviary_apiKey'], //'common.bisize.width' => $config['common.bisize.width'],
'language' => $config['aviary_language'], //'common.bisize.height' => $config['common.bisize.height'],
'theme' => $config['aviary_theme'], 'common.backgroundImage' => $config['common.backgroundImage'],
'tools' => $config['aviary_tools'], 'common.backgroundColor' => $config['common.backgroundColor'],
'maxSize' => $config['aviary_maxSize'] 'common.border' => $config['common.border'],
'header.backgroundImage' => $config['header.backgroundImage'],
'header.backgroundColor' => $config['header.backgroundColor'],
'header.border' => $config['header.border'],
'menu.normalIcon.path' => $config['menu.normalIcon.path'],
'menu.normalIcon.name' => $config['menu.normalIcon.name'],
'menu.activeIcon.path' => $config['menu.activeIcon.path'],
'menu.activeIcon.name' => $config['menu.activeIcon.name'],
'menu.disabledIcon.path' => $config['menu.disabledIcon.path'],
'menu.disabledIcon.name' => $config['menu.disabledIcon.name'],
'menu.hoverIcon.path' => $config['menu.hoverIcon.path'],
'menu.hoverIcon.name' => $config['menu.hoverIcon.name'],
'menu.iconSize.width' => $config['menu.iconSize.width'],
'menu.iconSize.height' => $config['menu.iconSize.height'],
'submenu.backgroundColor' => $config['submenu.backgroundColor'],
'submenu.partition.color' => $config['submenu.partition.color'],
'submenu.normalIcon.path' => $config['submenu.normalIcon.path'],
'submenu.normalIcon.name' => $config['submenu.normalIcon.name'],
'submenu.activeIcon.path' => $config['submenu.activeIcon.path'],
'submenu.activeIcon.name' => $config['submenu.activeIcon.name'],
'submenu.iconSize.width' => $config['submenu.iconSize.width'],
'submenu.iconSize.height' => $config['submenu.iconSize.height'],
'submenu.normalLabel.color' => $config['submenu.normalLabel.color'],
'submenu.normalLabel.fontWeight' => $config['submenu.normalLabel.fontWeight'],
'submenu.activeLabel.color' => $config['submenu.activeLabel.color'],
//'submenu.activeLabel.fontWeight' => $config['submenu.activeLabel.fontWeightcommon.bi.image'],
'checkbox.border' => $config['checkbox.border'],
'checkbox.backgroundColor' => $config['checkbox.backgroundColor'],
'range.pointer.color' => $config['range.pointer.color'],
'range.bar.color' => $config['range.bar.color'],
'range.subbar.color' => $config['range.subbar.color'],
'range.disabledPointer.color' => $config['range.disabledPointer.color'],
'range.disabledBar.color' => $config['range.disabledBar.color'],
'range.disabledSubbar.color' => $config['range.disabledSubbar.color'],
'range.value.color' => $config['range.value.color'],
'range.value.fontWeight' => $config['range.value.fontWeight'],
'range.value.fontSize' => $config['range.value.fontSize'],
'range.value.border' => $config['range.value.border'],
'range.value.backgroundColor' => $config['range.value.backgroundColor'],
'range.title.color' => $config['range.title.color'],
'range.title.fontWeight' => $config['range.title.fontWeight'],
'colorpicker.button.border' => $config['colorpicker.button.border'],
'colorpicker.title.color' => $config['colorpicker.title.color']
), ),
) )
); );

Binary file not shown.

File diff suppressed because one or more lines are too long

373
core/vendor/filemanager/dialog.php vendored Executable file → Normal file
View File

@ -1,10 +1,9 @@
<?php <?php
$time = time(); $time = time();
$config = include 'config/config.php'; $config = include 'config/config.php';
if (USE_ACCESS_KEYS == TRUE){ if (USE_ACCESS_KEYS == true){
if (!isset($_GET['akey'], $config['access_keys']) || empty($config['access_keys'])){ if (!isset($_GET['akey'], $config['access_keys']) || empty($config['access_keys'])){
die('Access Denied!'); die('Access Denied!');
} }
@ -21,7 +20,6 @@ $_SESSION['RF']["verify"] = "RESPONSIVEfilemanager";
if (isset($_POST['submit'])) { if (isset($_POST['submit'])) {
include 'upload.php'; include 'upload.php';
} else { } else {
$config['default_language'] = $config['default_language'];
$available_languages = include 'lang/languages.php'; $available_languages = include 'lang/languages.php';
list($preferred_language) = array_values(array_filter(array( list($preferred_language) = array_values(array_filter(array(
@ -30,34 +28,32 @@ if(isset($_POST['submit'])){
$config['default_language'] $config['default_language']
))); )));
if(array_key_exists($preferred_language, $available_languages)) if (array_key_exists($preferred_language, $available_languages)) {
{
$_SESSION['RF']['language'] = $preferred_language; $_SESSION['RF']['language'] = $preferred_language;
} } else {
else
{
$_SESSION['RF']['language'] = $config['default_language']; $_SESSION['RF']['language'] = $config['default_language'];
} }
} }
include 'include/utils.php'; include 'include/utils.php';
$subdir_path = ''; $subdir_path = '';
if (isset($_GET['fldr']) && !empty($_GET['fldr'])) { if (isset($_GET['fldr']) && !empty($_GET['fldr'])) {
$subdir_path = rawurldecode(trim(strip_tags($_GET['fldr']), "/")); $subdir_path = rawurldecode(trim(strip_tags($_GET['fldr']), "/"));
} elseif (isset($_SESSION['RF']['fldr']) && !empty($_SESSION['RF']['fldr'])) { } elseif (isset($_SESSION['RF']['fldr']) && !empty($_SESSION['RF']['fldr'])) {
$subdir_path = rawurldecode(trim(strip_tags($_SESSION['RF']['fldr']), "/")); $subdir_path = rawurldecode(trim(strip_tags($_SESSION['RF']['fldr']), "/"));
} }
if ( checkRelativePath($subdir_path)) if (checkRelativePath($subdir_path)) {
{
$subdir = strip_tags($subdir_path) . "/"; $subdir = strip_tags($subdir_path) . "/";
$_SESSION['RF']['fldr'] = $subdir_path; $_SESSION['RF']['fldr'] = $subdir_path;
$_SESSION['RF']["filter"] = ''; $_SESSION['RF']["filter"] = '';
} else {
$subdir = '';
} }
else { $subdir = ''; }
if($subdir == "") if ($subdir == "") {
{
if (!empty($_COOKIE['last_position']) && strpos($_COOKIE['last_position'], '.') === FALSE) { if (!empty($_COOKIE['last_position']) && strpos($_COOKIE['last_position'], '.') === FALSE) {
$subdir = trim($_COOKIE['last_position']); $subdir = trim($_COOKIE['last_position']);
} }
@ -83,11 +79,11 @@ if(count($config['hidden_folders'])){
if ($config['show_total_size']) { if ($config['show_total_size']) {
list($sizeCurrentFolder, $fileCurrentNum, $foldersCurrentCount) = folder_info($config['current_path'], false); list($sizeCurrentFolder, $fileCurrentNum, $foldersCurrentCount) = folder_info($config['current_path'], false);
} }
/*** /***
* SUB-DIR CODE * SUB-DIR CODE
***/ ***/
if (!isset($_SESSION['RF']["subfolder"])) if (!isset($_SESSION['RF']["subfolder"])) {
{
$_SESSION['RF']["subfolder"] = ''; $_SESSION['RF']["subfolder"] = '';
} }
$rfm_subfolder = ''; $rfm_subfolder = '';
@ -95,31 +91,31 @@ $rfm_subfolder = '';
if (!empty($_SESSION['RF']["subfolder"]) if (!empty($_SESSION['RF']["subfolder"])
&& strpos($_SESSION['RF']["subfolder"], "/") !== 0 && strpos($_SESSION['RF']["subfolder"], "/") !== 0
&& strpos($_SESSION['RF']["subfolder"], '.') === FALSE && strpos($_SESSION['RF']["subfolder"], '.') === FALSE
) ) {
{
$rfm_subfolder = $_SESSION['RF']['subfolder']; $rfm_subfolder = $_SESSION['RF']['subfolder'];
} }
if ($rfm_subfolder != "" && $rfm_subfolder[strlen($rfm_subfolder)-1] != "/") { $rfm_subfolder .= "/"; } if ($rfm_subfolder != "" && $rfm_subfolder[strlen($rfm_subfolder) - 1] != "/") {
$rfm_subfolder .= "/";
}
$ftp = ftp_con($config); $ftp = ftp_con($config);
if (($ftp && !$ftp->isDir($config['ftp_base_folder'].$config['upload_dir'].$rfm_subfolder.$subdir)) || (!$ftp && !file_exists($config['current_path'].$rfm_subfolder.$subdir))) if (($ftp && !$ftp->isDir($config['ftp_base_folder'] . $config['upload_dir'] . $rfm_subfolder . $subdir)) || (!$ftp && !file_exists($config['current_path'] . $rfm_subfolder . $subdir))) {
{
$subdir = ''; $subdir = '';
$rfm_subfolder = ""; $rfm_subfolder = "";
} }
$cur_dir = $config['upload_dir'].$rfm_subfolder.$subdir; $cur_dir = $config['upload_dir'].$rfm_subfolder.$subdir;
$cur_path = $config['current_path'].$rfm_subfolder.$subdir; $cur_dir_thumb = $config['thumbs_upload_dir'].$rfm_subfolder.$subdir;
$thumbs_path = $config['thumbs_base_path'].$rfm_subfolder; $thumbs_path = $config['thumbs_base_path'].$rfm_subfolder.$subdir;
$parent = $rfm_subfolder.$subdir; $parent = $rfm_subfolder.$subdir;
if ($ftp) { if ($ftp) {
$cur_dir = $config['ftp_base_folder'] . $cur_dir; $cur_dir = $config['ftp_base_folder'] . $cur_dir;
$cur_path = str_replace(array('/..','..'),'',$cur_dir); $cur_dir_thumb = $config['ftp_base_folder'] . $cur_dir_thumb;
$thumbs_path = str_replace(array('/..','..'),'',$config['ftp_base_folder'].$config['ftp_thumbs_dir'].$rfm_subfolder); $thumbs_path = str_replace(array('/..', '..'), '', $cur_dir_thumb);
$parent = $config['ftp_base_folder'] . $parent; $parent = $config['ftp_base_folder'] . $parent;
} }
@ -129,25 +125,31 @@ if(!$ftp){
$i = 0; $i = 0;
while ($cycle && $i < $max_cycles) { while ($cycle && $i < $max_cycles) {
$i++; $i++;
if ($parent=="./") $parent="";
if (file_exists($config['current_path'].$parent."config.php")) if ($parent == "./") {
{ $parent = "";
}
if (file_exists($config['current_path'] . $parent . "config.php")) {
$configTemp = include $config['current_path'] . $parent . 'config.php'; $configTemp = include $config['current_path'] . $parent . 'config.php';
$config = array_merge($config, $configTemp); $config = array_merge($config, $configTemp);
$cycle = FALSE; $cycle = FALSE;
} }
if ($parent == "") $cycle = FALSE; if ($parent == "") {
else $parent = fix_dirname($parent)."/"; $cycle = FALSE;
} else {
$parent = fix_dirname($parent) . "/";
}
} }
if (!is_dir($thumbs_path.$subdir)) if (!is_dir($thumbs_path)) {
{ create_folder(FALSE, $thumbs_path, $ftp, $config);
create_folder(FALSE, $thumbs_path.$subdir,$ftp,$config);
} }
} }
$multiple = null; $multiple = null;
if (isset($_GET['multiple'])) { if (isset($_GET['multiple'])) {
if ($_GET['multiple'] == 1) { if ($_GET['multiple'] == 1) {
$multiple = 1; $multiple = 1;
@ -159,31 +161,23 @@ if (isset($_GET['multiple'])){
$config['multiple_selection_action_button'] = false; $config['multiple_selection_action_button'] = false;
} }
} }
if (isset($_GET['callback']))
{ if (isset($_GET['callback'])) {
$callback = strip_tags($_GET['callback']); $callback = strip_tags($_GET['callback']);
$_SESSION['RF']["callback"] = $callback; $_SESSION['RF']["callback"] = $callback;
} else{
if(isset($_SESSION['RF']["callback"]))
{
$callback = $_SESSION['RF']["callback"];
} else { } else {
$callback = 0; $callback = 0;
if (isset($_SESSION['RF']["callback"])) {
$callback = $_SESSION['RF']["callback"];
} }
} }
if (isset($_GET['popup'])) $popup = isset($_GET['popup']) ? strip_tags($_GET['popup']) : 0;
{
$popup = strip_tags($_GET['popup']);
} else $popup=0;
//Sanitize popup //Sanitize popup
$popup = !!$popup; $popup = !!$popup;
if (isset($_GET['crossdomain'])) $crossdomain = isset($_GET['crossdomain']) ? strip_tags($_GET['crossdomain']) : 0;
{
$crossdomain = strip_tags($_GET['crossdomain']);
} else $crossdomain=0;
//Sanitize crossdomain //Sanitize crossdomain
$crossdomain=!!$crossdomain; $crossdomain=!!$crossdomain;
@ -219,25 +213,24 @@ if (!isset($_SESSION['RF']['sort_by']))
$_SESSION['RF']['sort_by'] = 'name'; $_SESSION['RF']['sort_by'] = 'name';
} }
if (isset($_GET["sort_by"])) if (isset($_GET["sort_by"])) {
{
$sort_by = $_SESSION['RF']['sort_by'] = fix_get_params($_GET["sort_by"]); $sort_by = $_SESSION['RF']['sort_by'] = fix_get_params($_GET["sort_by"]);
} else $sort_by = $_SESSION['RF']['sort_by']; } else {
$sort_by = $_SESSION['RF']['sort_by'];
}
if (!isset($_SESSION['RF']['descending'])) if (!isset($_SESSION['RF']['descending'])) {
{
$_SESSION['RF']['descending'] = TRUE; $_SESSION['RF']['descending'] = TRUE;
} }
if (isset($_GET["descending"])) if (isset($_GET["descending"])) {
{
$descending = $_SESSION['RF']['descending'] = fix_get_params($_GET["descending"]) == 1; $descending = $_SESSION['RF']['descending'] = fix_get_params($_GET["descending"]) == 1;
} else { } else {
$descending = $_SESSION['RF']['descending']; $descending = $_SESSION['RF']['descending'];
} }
$boolarray = Array(false => 'false', true => 'true'); $boolarray = array(false => 'false', true => 'true');
$return_relative_url = isset($_GET['relative_url']) && $_GET['relative_url'] == "1" ? true : false; $return_relative_url = isset($_GET['relative_url']) && $_GET['relative_url'] == "1" ? true : false;
@ -257,32 +250,36 @@ if (isset($_GET['extensions'])){
} }
if ($extensions) { if ($extensions) {
$ext = $ext_tmp; $ext = $ext_tmp;
$config['ext'] = $ext_tmp;
$config['show_filter_buttons'] = false; $config['show_filter_buttons'] = false;
} }
} }
if (isset($_GET['editor'])) if (isset($_GET['editor'])) {
{
$editor = strip_tags($_GET['editor']); $editor = strip_tags($_GET['editor']);
} else { } else {
if($_GET['type']==0){ $editor = $_GET['type'] == 0 ? null : 'tinymce';
$editor=null;
} else {
$editor='tinymce';
}
} }
$field_id = isset($_GET['field_id']) ? fix_get_params($_GET['field_id']) : null; $field_id = isset($_GET['field_id']) ? fix_get_params($_GET['field_id']) : null;
$type_param = fix_get_params($_GET['type']); $type_param = fix_get_params($_GET['type']);
$apply = null; $apply = null;
if ($multiple) { if ($multiple) {
$apply = 'apply_multiple'; $apply = 'apply_multiple';
} }
if ($type_param==1) $apply_type = 'apply_img';
elseif($type_param==2) $apply_type = 'apply_link'; if ($type_param == 1) {
elseif($type_param==0 && !$field_id) $apply_type = 'apply_none'; $apply_type = 'apply_img';
elseif($type_param==3) $apply_type = 'apply_video'; } elseif ($type_param == 2) {
else $apply_type = 'apply'; $apply_type = 'apply_link';
} elseif ($type_param == 0 && !$field_id) {
$apply_type = 'apply_none';
} elseif ($type_param == 3) {
$apply_type = 'apply_video';
} else {
$apply_type = 'apply';
}
if(!$apply){ if(!$apply){
$apply = $apply_type; $apply = $apply_type;
@ -311,7 +308,7 @@ $get_params = http_build_query($get_params);
<!DOCTYPE html> <!DOCTYPE html>
<html> <html>
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" > <meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"/> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"/>
<meta name="robots" content="noindex,nofollow"> <meta name="robots" content="noindex,nofollow">
@ -323,75 +320,41 @@ $get_params = http_build_query($get_params);
<!-- CSS adjustments for browsers with JavaScript disabled --> <!-- CSS adjustments for browsers with JavaScript disabled -->
<noscript><link rel="stylesheet" href="css/jquery.fileupload-noscript.css"></noscript> <noscript><link rel="stylesheet" href="css/jquery.fileupload-noscript.css"></noscript>
<noscript><link rel="stylesheet" href="css/jquery.fileupload-ui-noscript.css"></noscript> <noscript><link rel="stylesheet" href="css/jquery.fileupload-ui-noscript.css"></noscript>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jplayer/2.2.0/skin/blue.monday/jplayer.blue.monday.min.css" /> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jplayer/2.7.1/skin/blue.monday/jplayer.blue.monday.min.css" />
<link rel="stylesheet" href="https://uicdn.toast.com/tui-image-editor/latest/tui-image-editor.css">
<link href="css/style.css?v=<?php echo $version; ?>" rel="stylesheet" type="text/css" /> <link href="css/style.css?v=<?php echo $version; ?>" rel="stylesheet" type="text/css" />
<!--[if lt IE 8]><style> <!--[if lt IE 8]>
<style>
.img-container span, .img-container-mini span { .img-container span, .img-container-mini span {
display: inline-block; display: inline-block;
height: 100%; height: 100%;
} }
</style><![endif]--> </style>
<![endif]-->
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script> <script src="https://code.jquery.com/jquery-1.12.4.min.js" integrity="sha256-ZosEbRLbNQzLpnKIkEdrPv7lOy9C27hHQ+Xp8a4MxAQ=" crossorigin="anonymous"></script>
<script src="//ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.js" type="text/javascript"></script> <script src="https://code.jquery.com/ui/1.12.1/jquery-ui.min.js" integrity="sha256-VazP97ZCwtekAsvgPBSUwPFKdrwD3unUfSGVYrahUqU=" crossorigin="anonymous"></script>
<script src="js/plugins.js?v=<?php echo $version; ?>"></script> <script src="js/plugins.js?v=<?php echo $version; ?>"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jplayer/2.9.2/jplayer/jquery.jplayer.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/jplayer/2.9.2/jplayer/jquery.jplayer.min.js"></script>
<link type="text/css" href="https://uicdn.toast.com/tui-color-picker/v2.2.0/tui-color-picker.css" rel="stylesheet">
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/1.6.7/fabric.js"></script>
<script type="text/javascript" src="https://uicdn.toast.com/tui.code-snippet/v1.5.0/tui-code-snippet.min.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/FileSaver.js/1.3.3/FileSaver.min.js"></script>
<script type="text/javascript" src="https://uicdn.toast.com/tui-color-picker/v2.2.0/tui-color-picker.js"></script>
<script src="https://uicdn.toast.com/tui-image-editor/latest/tui-image-editor.js"></script>
<script src="js/modernizr.custom.js"></script> <script src="js/modernizr.custom.js"></script>
<?php
if ($config['aviary_active']){
if (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off' || $_SERVER['SERVER_PORT'] == 443) { ?>
<script src="https://dme0ih8comzn4.cloudfront.net/imaging/v3/editor.js"></script>
<?php }else{ ?>
<script src="http://feather.aviary.com/imaging/v3/editor.js"></script>
<?php }} ?>
<!-- Le HTML5 shim, for IE6-8 support of HTML5 elements --> <!-- Le HTML5 shim, for IE6-8 support of HTML5 elements -->
<!--[if lt IE 9]> <!--[if lt IE 9]>
<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.6.2/html5shiv.js"></script> <script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.6.2/html5shiv.js"></script>
<![endif]--> <![endif]-->
<script> <script type="text/javascript">
var ext_img=new Array('<?php echo implode("','", $config['ext_img'])?>'); var ext_img=new Array('<?php echo implode("','", $config['ext_img'])?>');
var image_editor=<?php echo $config['aviary_active']?"true":"false";?>; var image_editor= <?php echo $config['tui_active']?"true":"false";?>;
if (image_editor) {
var featherEditor = new Aviary.Feather({
<?php
foreach ($config['aviary_defaults_config'] as $aopt_key => $aopt_val) {
echo $aopt_key.": ".json_encode($aopt_val).",";
} ?>
onReady: function() {
hide_animation();
},
onSave: function(imageID, newURL) {
show_animation();
var img = document.getElementById(imageID);
img.src = newURL;
$.ajax({
type: "POST",
url: "ajax_calls.php?action=save_img",
data: { url: newURL, path:$('#sub_folder').val()+$('#fldr_value').val(), name:$('#aviary_img').attr('data-name') }
}).done(function( msg ) {
featherEditor.close();
d = new Date();
$("figure[data-name='"+$('#aviary_img').attr('data-name')+"']").find('img').each(function(){
$(this).attr('src',$(this).attr('src')+"?"+d.getTime());
});
$("figure[data-name='"+$('#aviary_img').attr('data-name')+"']").find('figcaption a.preview').each(function(){
$(this).attr('data-url',$(this).data('url')+"?"+d.getTime());
});
hide_animation();
});
return false;
},
onError: function(errorObj) {
bootbox.alert(errorObj.message);
hide_animation();
}
});
}
</script> </script>
<script src="js/include.js?v=<?php echo $version; ?>"></script> <script src="js/include.js?v=<?php echo $version; ?>"></script>
</head> </head>
<body> <body>
@ -430,7 +393,7 @@ $get_params = http_build_query($get_params);
<input type="hidden" id="type_param" value="<?php echo $type_param;?>" /> <input type="hidden" id="type_param" value="<?php echo $type_param;?>" />
<input type="hidden" id="upload_dir" value="<?php echo $config['upload_dir'];?>" /> <input type="hidden" id="upload_dir" value="<?php echo $config['upload_dir'];?>" />
<input type="hidden" id="cur_dir" value="<?php echo $cur_dir;?>" /> <input type="hidden" id="cur_dir" value="<?php echo $cur_dir;?>" />
<input type="hidden" id="cur_dir_thumb" value="<?php echo $thumbs_path.$subdir;?>" /> <input type="hidden" id="cur_dir_thumb" value="<?php echo $cur_dir_thumb;?>" />
<input type="hidden" id="insert_folder_name" value="<?php echo trans('Insert_Folder_Name');?>" /> <input type="hidden" id="insert_folder_name" value="<?php echo trans('Insert_Folder_Name');?>" />
<input type="hidden" id="rename_existing_folder" value="<?php echo trans('Rename_existing_folder');?>" /> <input type="hidden" id="rename_existing_folder" value="<?php echo trans('Rename_existing_folder');?>" />
<input type="hidden" id="new_folder" value="<?php echo trans('New_Folder');?>" /> <input type="hidden" id="new_folder" value="<?php echo trans('New_Folder');?>" />
@ -447,7 +410,7 @@ $get_params = http_build_query($get_params);
<input type="hidden" id="file_number_limit_js" value="<?php echo $config['file_number_limit_js'];?>" /> <input type="hidden" id="file_number_limit_js" value="<?php echo $config['file_number_limit_js'];?>" />
<input type="hidden" id="sort_by" value="<?php echo $sort_by;?>" /> <input type="hidden" id="sort_by" value="<?php echo $sort_by;?>" />
<input type="hidden" id="descending" value="<?php echo $descending?1:0;?>" /> <input type="hidden" id="descending" value="<?php echo $descending?1:0;?>" />
<input type="hidden" id="current_url" value="<?php echo str_replace(array('&filter='.$filter,'&sort_by='.$sort_by,'&descending='.intval($descending)),array(''),$config['base_url'].$_SERVER['REQUEST_URI']);?>" /> <input type="hidden" id="current_url" value="<?php echo str_replace(array('&filter='.$filter,'&sort_by='.$sort_by,'&descending='.intval($descending)),array(''),$config['base_url'].htmlspecialchars($_SERVER['REQUEST_URI']));?>" />
<input type="hidden" id="lang_show_url" value="<?php echo trans('Show_url');?>" /> <input type="hidden" id="lang_show_url" value="<?php echo trans('Show_url');?>" />
<input type="hidden" id="copy_cut_files_allowed" value="<?php if($config['copy_cut_files']) echo 1; else echo 0;?>" /> <input type="hidden" id="copy_cut_files_allowed" value="<?php if($config['copy_cut_files']) echo 1; else echo 0;?>" />
<input type="hidden" id="copy_cut_dirs_allowed" value="<?php if($config['copy_cut_dirs']) echo 1; else echo 0;?>" /> <input type="hidden" id="copy_cut_dirs_allowed" value="<?php if($config['copy_cut_dirs']) echo 1; else echo 0;?>" />
@ -506,7 +469,7 @@ $get_params = http_build_query($get_params);
<div class="container2"> <div class="container2">
<div class="fileupload-buttonbar"> <div class="fileupload-buttonbar">
<!-- The global progress state --> <!-- The global progress state -->
<div class="fileupload-progress fade"> <div class="fileupload-progress">
<!-- The global progress bar --> <!-- The global progress bar -->
<div class="progress progress-striped active" role="progressbar" aria-valuemin="0" aria-valuemax="100"> <div class="progress progress-striped active" role="progressbar" aria-valuemin="0" aria-valuemax="100">
<div class="bar bar-success" style="width:0%;"></div> <div class="bar bar-success" style="width:0%;"></div>
@ -539,7 +502,7 @@ $get_params = http_build_query($get_params);
<!-- The template to display files available for upload --> <!-- The template to display files available for upload -->
<script id="template-upload" type="text/x-tmpl"> <script id="template-upload" type="text/x-tmpl">
{% for (var i=0, file; file=o.files[i]; i++) { %} {% for (var i=0, file; file=o.files[i]; i++) { %}
<tr class="template-upload fade"> <tr class="template-upload">
<td> <td>
<span class="preview"></span> <span class="preview"></span>
</td> </td>
@ -570,7 +533,7 @@ $get_params = http_build_query($get_params);
<!-- The template to display files available for download --> <!-- The template to display files available for download -->
<script id="template-download" type="text/x-tmpl"> <script id="template-download" type="text/x-tmpl">
{% for (var i=0, file; file=o.files[i]; i++) { %} {% for (var i=0, file; file=o.files[i]; i++) { %}
<tr class="template-download fade"> <tr class="template-download">
<td> <td>
<span class="preview"> <span class="preview">
{% if (file.error) { %} {% if (file.error) { %}
@ -700,6 +663,7 @@ foreach($files as $k=>$file){
'permissions' => '', 'permissions' => '',
'extension' => fix_strtolower($file_ext) 'extension' => fix_strtolower($file_ext)
); );
if ($config['show_folder_size']) { if ($config['show_folder_size']) {
$sorted[$k]['nfiles'] = $nfiles; $sorted[$k]['nfiles'] = $nfiles;
$sorted[$k]['nfolders'] = $nfolders; $sorted[$k]['nfolders'] = $nfolders;
@ -724,7 +688,8 @@ foreach($files as $k=>$file){
} }
} }
function filenameSort($x, $y) { function filenameSort($x, $y)
{
global $descending; global $descending;
if ($x['is_dir'] !== $y['is_dir']) { if ($x['is_dir'] !== $y['is_dir']) {
@ -736,7 +701,8 @@ function filenameSort($x, $y) {
} }
} }
function dateSort($x, $y) { function dateSort($x, $y)
{
global $descending; global $descending;
if ($x['is_dir'] !== $y['is_dir']) { if ($x['is_dir'] !== $y['is_dir']) {
@ -748,7 +714,8 @@ function dateSort($x, $y) {
} }
} }
function sizeSort($x, $y) { function sizeSort($x, $y)
{
global $descending; global $descending;
if ($x['is_dir'] !== $y['is_dir']) { if ($x['is_dir'] !== $y['is_dir']) {
@ -760,7 +727,8 @@ function sizeSort($x, $y) {
} }
} }
function extensionSort($x, $y) { function extensionSort($x, $y)
{
global $descending; global $descending;
if ($x['is_dir'] !== $y['is_dir']) { if ($x['is_dir'] !== $y['is_dir']) {
@ -790,9 +758,8 @@ switch($sort_by){
if ($subdir != "") { if ($subdir != "") {
$sorted = array_merge(array(array('file' => '..')), $sorted); $sorted = array_merge(array(array('file' => '..')), $sorted);
} }
$files = $sorted; $files = $sorted;
?> ?>
<!-- header div start --> <!-- header div start -->
<div class="navbar navbar-fixed-top"> <div class="navbar navbar-fixed-top">
@ -866,7 +833,7 @@ $files=$sorted;
<input accesskey="f" type="text" class="filter-input <?php echo (($_GET['type']!=1 && $_GET['type']!=3) ? '' : 'filter-input-notype');?>" id="filter-input" name="filter" placeholder="<?php echo fix_strtolower(trans('Text_filter'));?>..." value="<?php echo $filter;?>"/><?php if($n_files>$config['file_number_limit_js']){ ?><label id="filter" class="btn"><i class="icon-play"></i></label><?php } ?> <input accesskey="f" type="text" class="filter-input <?php echo (($_GET['type']!=1 && $_GET['type']!=3) ? '' : 'filter-input-notype');?>" id="filter-input" name="filter" placeholder="<?php echo fix_strtolower(trans('Text_filter'));?>..." value="<?php echo $filter;?>"/><?php if($n_files>$config['file_number_limit_js']){ ?><label id="filter" class="btn"><i class="icon-play"></i></label><?php } ?>
<input id="select-type-all" name="radio-sort" type="radio" data-item="ff-item-type-all" class="hide" /> <input id="select-type-all" name="radio-sort" type="radio" data-item="ff-item-type-all" class="hide" />
<label id="ff-item-type-all" title="<?php echo trans('All');?>" <?php if($_GET['type']==1 || $_GET['type']==3){ ?>style="visibility: hidden;" <?php } ?> data-item="ff-item-type-all" for="select-type-all" style="margin-rigth:0px;" class="tip btn btn-inverse ff-label-type-all"><i class="icon-remove icon-white"></i></label> <label id="ff-item-type-all" title="<?php echo trans('All');?>" <?php if($_GET['type']==1 || $_GET['type']==3){ ?>style="visibility: hidden;" <?php } ?> data-item="ff-item-type-all" for="select-type-all" style="margin-rigth:0px;" class="tip btn btn-inverse ff-label-type-all"><?php echo trans('All');?></label>
</div> </div>
</div> </div>
@ -971,8 +938,8 @@ $files=$sorted;
} }
//add in thumbs folder if not exist //add in thumbs folder if not exist
if($file!='..'){ if($file!='..'){
if(!$ftp && !file_exists($thumbs_path.$subdir.$file)){ if(!$ftp && !file_exists($thumbs_path.$file)){
create_folder(false,$thumbs_path.$subdir.$file,$ftp,$config); create_folder(false,$thumbs_path.$file,$ftp,$config);
} }
} }
@ -998,7 +965,7 @@ $files=$sorted;
?><figure data-name="<?php echo $file ?>" data-path="<?php echo $rfm_subfolder.$subdir.$file;?>" class="<?php if($file=="..") echo "back-";?>directory" data-type="<?php if($file!=".."){ echo "dir"; } ?>"> ?><figure data-name="<?php echo $file ?>" data-path="<?php echo $rfm_subfolder.$subdir.$file;?>" class="<?php if($file=="..") echo "back-";?>directory" data-type="<?php if($file!=".."){ echo "dir"; } ?>">
<?php if($file==".."){ ?> <?php if($file==".."){ ?>
<input type="hidden" class="path" value="<?php echo str_replace('.','',dirname($rfm_subfolder.$subdir));?>"/> <input type="hidden" class="path" value="<?php echo str_replace('.','',dirname($rfm_subfolder.$subdir));?>"/>
<input type="hidden" class="path_thumb" value="<?php echo dirname($thumbs_path.$subdir)."/";?>"/> <input type="hidden" class="path_thumb" value="<?php echo dirname($thumbs_path)."/";?>"/>
<?php } ?> <?php } ?>
<a class="folder-link" href="dialog.php?<?php echo $get_params.rawurlencode($src)."&".($callback?'callback='.$callback."&":'').uniqid() ?>"> <a class="folder-link" href="dialog.php?<?php echo $get_params.rawurlencode($src)."&".($callback?'callback='.$callback."&":'').uniqid() ?>">
<div class="img-precontainer"> <div class="img-precontainer">
@ -1110,7 +1077,7 @@ $files=$sorted;
$creation_thumb_path = "/".$config['ftp_base_folder'].$config['ftp_thumbs_dir'].$subdir. $file; $creation_thumb_path = "/".$config['ftp_base_folder'].$config['ftp_thumbs_dir'].$subdir. $file;
}else{ }else{
$creation_thumb_path = $mini_src = $src_thumb = $thumbs_path.$subdir. $file; $creation_thumb_path = $mini_src = $src_thumb = $thumbs_path. $file;
if (!file_exists($src_thumb)) { if (!file_exists($src_thumb)) {
if (!create_img($file_path, $creation_thumb_path, 122, 91, 'crop', $config)) { if (!create_img($file_path, $creation_thumb_path, 122, 91, 'crop', $config)) {
@ -1174,9 +1141,6 @@ $files=$sorted;
} }
?> ?>
<figure data-name="<?php echo $file ?>" data-path="<?php echo $rfm_subfolder.$subdir.$file;?>" data-type="<?php if($is_img){ echo "img"; }else{ echo "file"; } ?>"> <figure data-name="<?php echo $file ?>" data-path="<?php echo $rfm_subfolder.$subdir.$file;?>" data-type="<?php if($is_img){ echo "img"; }else{ echo "file"; } ?>">
<a href="javascript:void('')" class="link" data-file="<?php echo $file;?>" data-function="<?php echo $apply;?>">
<div class="img-precontainer">
<?php if($is_icon_thumb){ ?><div class="filetype"><?php echo $file_array['extension'] ?></div><?php } ?>
<?php if($config['multiple_selection']){ ?><div class="selector"> <?php if($config['multiple_selection']){ ?><div class="selector">
<label class="cont"> <label class="cont">
<input type="checkbox" class="selection" name="selection[]" value="<?php echo $file;?>"> <input type="checkbox" class="selection" name="selection[]" value="<?php echo $file;?>">
@ -1184,17 +1148,16 @@ $files=$sorted;
</label> </label>
</div> </div>
<?php } ?> <?php } ?>
<a href="javascript:void('')" class="link" data-file="<?php echo $file;?>" data-function="<?php echo $apply;?>">
<div class="img-precontainer">
<?php if($is_icon_thumb){ ?><div class="filetype"><?php echo $file_array['extension'] ?></div><?php } ?>
<div class="img-container"> <div class="img-container">
<img class="<?php echo $show_original ? "original" : "" ?><?php echo $is_icon_thumb ? " icon" : "" ?>" data-src="<?php echo $src_thumb;?>"> <img class="<?php echo $show_original ? "original" : "" ?><?php echo $is_icon_thumb ? " icon" : "" ?>" data-src="<?php echo $src_thumb;?>">
</div> </div>
</div> </div>
<div class="img-precontainer-mini <?php if($is_img) echo 'original-thumb' ?>"> <div class="img-precontainer-mini <?php if($is_img) echo 'original-thumb' ?>">
<?php if($config['multiple_selection']){ ?><div class="selector"> <?php if($config['multiple_selection']){ ?>
<label class="cont">
<input type="checkbox" class="selection" name="selection[]" value="<?php echo $file;?>">
<span class="checkmark"></span>
</label>
</div>
<?php } ?> <?php } ?>
<div class="filetype <?php echo $file_array['extension'] ?> <?php if(in_array($file_array['extension'], $config['editable_text_file_exts'])) echo 'edit-text-file-allowed' ?> <?php if(!$is_icon_thumb){ echo "hide"; }?>"><?php echo $file_array['extension'] ?></div> <div class="filetype <?php echo $file_array['extension'] ?> <?php if(in_array($file_array['extension'], $config['editable_text_file_exts'])) echo 'edit-text-file-allowed' ?> <?php if(!$is_icon_thumb){ echo "hide"; }?>"><?php echo $file_array['extension'] ?></div>
<div class="img-container-mini"> <div class="img-container-mini">
@ -1226,7 +1189,7 @@ $files=$sorted;
<a title="<?php echo trans('Download')?>" class="tip-right" href="javascript:void('')" <?php if($config['download_files']) echo "onclick=\"$('#form".$nu."').submit();\"" ?>><i class="icon-download <?php if(!$config['download_files']) echo 'icon-white'; ?>"></i></a> <a title="<?php echo trans('Download')?>" class="tip-right" href="javascript:void('')" <?php if($config['download_files']) echo "onclick=\"$('#form".$nu."').submit();\"" ?>><i class="icon-download <?php if(!$config['download_files']) echo 'icon-white'; ?>"></i></a>
<?php if($is_img && $src_thumb!=""){ ?> <?php if($is_img && $src_thumb!=""){ ?>
<a class="tip-right preview" title="<?php echo trans('Preview')?>" data-url="<?php echo $src;?>" data-toggle="lightbox" href="#previewLightbox"><i class=" icon-eye-open"></i></a> <a class="tip-right preview" title="<?php echo trans('Preview')?>" data-featherlight="<?php echo $src;?>" href="#"><i class=" icon-eye-open"></i></a>
<?php }elseif(($is_video || $is_audio) && in_array($file_array['extension'],$config['jplayer_exts'])){ ?> <?php }elseif(($is_video || $is_audio) && in_array($file_array['extension'],$config['jplayer_exts'])){ ?>
<a class="tip-right modalAV <?php if($is_audio){ echo "audio"; }else{ echo "video"; } ?>" <a class="tip-right modalAV <?php if($is_audio){ echo "audio"; }else{ echo "video"; } ?>"
title="<?php echo trans('Preview')?>" data-url="ajax_calls.php?action=media_preview&title=<?php echo $filename;?>&file=<?php echo $rfm_subfolder.$subdir.$file;?>" title="<?php echo trans('Preview')?>" data-url="ajax_calls.php?action=media_preview&title=<?php echo $filename;?>&file=<?php echo $rfm_subfolder.$subdir.$file;?>"
@ -1265,30 +1228,21 @@ $files=$sorted;
</div> </div>
<script> <script>
var files_prevent_duplicate = new Array(); var files_prevent_duplicate = [];
<?php <?php foreach ($files_prevent_duplicate as $key => $value): ?>
foreach ($files_prevent_duplicate as $key => $value): ?>
files_prevent_duplicate[<?php echo $key;?>] = '<?php echo $value;?>'; files_prevent_duplicate[<?php echo $key;?>] = '<?php echo $value;?>';
<?php endforeach;?> <?php endforeach;?>
</script> </script>
<!-- lightbox div start -->
<div id="previewLightbox" class="lightbox hide fade" tabindex="-1" role="dialog" aria-hidden="true">
<div class='lightbox-content'>
<img id="full-img" src="">
</div>
</div>
<!-- lightbox div end -->
<!-- loading div start --> <!-- loading div start -->
<div id="loading_container" style="display:none;"> <div id="loading_container" style="display:none;">
<div id="loading" style="background-color:#000; position:fixed; width:100%; height:100%; top:0px; left:0px;z-index:100000"></div> <div id="loading" style="background-color:#000; position:fixed; width:100%; height:100%; top:0px; left:0px;z-index:100000"></div>
<img id="loading_animation" src="img/storing_animation.gif" alt="loading" style="z-index:10001; margin-left:-32px; margin-top:-32px; position:fixed; left:50%; top:50%"/> <img id="loading_animation" src="img/storing_animation.gif" alt="loading" style="z-index:10001; margin-left:-32px; margin-top:-32px; position:fixed; left:50%; top:50%">
</div> </div>
<!-- loading div end --> <!-- loading div end -->
<!-- player div start --> <!-- player div start -->
<div class="modal hide fade" id="previewAV"> <div class="modal hide" id="previewAV">
<div class="modal-header"> <div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button> <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
<h3><?php echo trans('Preview'); ?></h3> <h3><?php echo trans('Preview'); ?></h3>
@ -1297,10 +1251,107 @@ $files=$sorted;
<div class="row-fluid body-preview"> <div class="row-fluid body-preview">
</div> </div>
</div> </div>
</div> </div>
<!-- player div end --> <!-- player div end -->
<img id='aviary_img' src='' class="hide"/> <?php if ( $config['tui_active'] ) { ?>
<div id="tui-image-editor" style="height: 800px;" class="hide">
<canvas></canvas>
</div>
<script>
var tuiTheme = {
<?php foreach ($config['tui_defaults_config'] as $aopt_key => $aopt_val) {
if ( !empty($aopt_val) ) {
echo "'$aopt_key':".json_encode($aopt_val).",";
}
} ?>
};
</script>
<script>
if (image_editor) {
//TUI initial init with a blank image (Needs to be initiated before a dynamic image can be loaded into it)
var imageEditor = new tui.ImageEditor('#tui-image-editor', {
includeUI: {
loadImage: {
path: 'data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7',
name: 'Blank'
},
theme: tuiTheme,
initMenu: 'filter',
menuBarPosition: '<?php echo $config['tui_position'] ?>'
},
cssMaxWidth: 1000, // Component default value: 1000
cssMaxHeight: 800, // Component default value: 800
selectionStyle: {
cornerSize: 20,
rotxatingPointOffset: 70
}
});
//cache loaded image
imageEditor.loadImageFromURL = (function() {
var cached_function = imageEditor.loadImageFromURL;
function waitUntilImageEditorIsUnlocked(imageEditor) {
return new Promise((resolve,reject)=>{
const interval = setInterval(()=>{
if (!imageEditor._invoker._isLocked) {
clearInterval(interval);
resolve();
}
}, 100);
})
}
return function() {
return waitUntilImageEditorIsUnlocked(imageEditor).then(()=>cached_function.apply(this, arguments));
};
})();
//Replace Load button with exit button
$('.tui-image-editor-header-buttons div').
replaceWith('<button class="tui-image-editor-exit-btn" ><?php echo trans('Image_Editor_Exit');?></button>');
$('.tui-image-editor-exit-btn').on('click', function() {
exitTUI();
});
//Replace download button with save
$('.tui-image-editor-download-btn').
replaceWith('<button class="tui-image-editor-save-btn" ><?php echo trans('Image_Editor_Save');?></button>');
$('.tui-image-editor-save-btn').on('click', function() {
saveTUI();
});
function exitTUI()
{
imageEditor.clearObjects();
imageEditor.discardSelection();
$('#tui-image-editor').addClass('hide');
}
function saveTUI()
{
show_animation();
newURL = imageEditor.toDataURL();
$.ajax({
type: "POST",
url: "ajax_calls.php?action=save_img",
data: { url: newURL, path:$('#sub_folder').val()+$('#fldr_value').val(), name:$('#tui-image-editor').attr('data-name') }
}).done(function( msg ) {
exitTUI();
d = new Date();
$("figure[data-name='"+$('#tui-image-editor').attr('data-name')+"']").find('.img-container img').each(function(){
$(this).attr('src',$(this).attr('src')+"?"+d.getTime());
});
$("figure[data-name='"+$('#tui-image-editor').attr('data-name')+"']").find('figcaption a.preview').each(function(){
$(this).attr('data-url',$(this).data('url')+"?"+d.getTime());
});
hide_animation();
});
return false;
}
}
</script>
<?php } ?>
<script> <script>
var ua = navigator.userAgent.toLowerCase(); var ua = navigator.userAgent.toLowerCase();
var isAndroid = ua.indexOf("android") > -1; //&& ua.indexOf("mobile"); var isAndroid = ua.indexOf("android") > -1; //&& ua.indexOf("mobile");

View File

@ -3,20 +3,17 @@ $config = include 'config/config.php';
include 'include/utils.php'; include 'include/utils.php';
if ($_SESSION['RF']["verify"] != "RESPONSIVEfilemanager") if ($_SESSION['RF']["verify"] != "RESPONSIVEfilemanager") {
{ response(trans('forbidden') . AddErrorLocation())->send();
response(trans('forbiden').AddErrorLocation())->send();
exit; exit;
} }
if (!checkRelativePath($_POST['path'])) if (!checkRelativePath($_POST['path'])) {
{
response(trans('wrong path') . AddErrorLocation())->send(); response(trans('wrong path') . AddErrorLocation())->send();
exit; exit;
} }
if (isset($_SESSION['RF']['language']) && file_exists('lang/' . basename($_SESSION['RF']['language']) . '.php')) if (isset($_SESSION['RF']['language']) && file_exists('lang/' . basename($_SESSION['RF']['language']) . '.php')) {
{
$languages = include 'lang/languages.php'; $languages = include 'lang/languages.php';
if (array_key_exists($_SESSION['RF']['language'], $languages)) { if (array_key_exists($_SESSION['RF']['language'], $languages)) {
include 'lang/' . basename($_SESSION['RF']['language']) . '.php'; include 'lang/' . basename($_SESSION['RF']['language']) . '.php';
@ -24,9 +21,7 @@ if (isset($_SESSION['RF']['language']) && file_exists('lang/' . basename($_SESSI
response(trans('Lang_Not_Found') . AddErrorLocation())->send(); response(trans('Lang_Not_Found') . AddErrorLocation())->send();
exit; exit;
} }
} } else {
else
{
response(trans('Lang_Not_Found') . AddErrorLocation())->send(); response(trans('Lang_Not_Found') . AddErrorLocation())->send();
exit; exit;
} }
@ -35,23 +30,25 @@ $ftp = ftp_con($config);
$base = $config['current_path']; $base = $config['current_path'];
$path = $base . $_POST['path']; $path = $base . $_POST['path'];
$cycle = TRUE; $cycle = true;
$max_cycles = 50; $max_cycles = 50;
$i = 0; $i = 0;
while($cycle && $i<$max_cycles)
{
$i++;
if ($path == $base) $cycle=FALSE;
if (file_exists($path."config.php")) while ($cycle && $i < $max_cycles) {
{ $i++;
if ($path == $base) {
$cycle = false;
}
if (file_exists($path . "config.php")) {
require_once $path . "config.php"; require_once $path . "config.php";
$cycle = FALSE; $cycle = false;
} }
$path = fix_dirname($path) . "/"; $path = fix_dirname($path) . "/";
} }
function returnPaths($_path,$_name,$config){ function returnPaths($_path, $_name, $config)
{
global $ftp; global $ftp;
$path = $config['current_path'] . $_path; $path = $config['current_path'] . $_path;
$path_thumb = $config['thumbs_base_path'] . $_path; $path_thumb = $config['thumbs_base_path'] . $_path;
@ -60,11 +57,9 @@ function returnPaths($_path,$_name,$config){
$path = $config['ftp_base_folder'] . $config['upload_dir'] . $_path; $path = $config['ftp_base_folder'] . $config['upload_dir'] . $_path;
$path_thumb = $config['ftp_base_folder'] . $config['ftp_thumbs_dir'] . $_path; $path_thumb = $config['ftp_base_folder'] . $config['ftp_thumbs_dir'] . $_path;
} }
if ($_name) if ($_name) {
{
$name = fix_filename($_name, $config); $name = fix_filename($_name, $config);
if (strpos($name,'../') !== FALSE || strpos($name,'..\\') !== FALSE) if (strpos($name, '../') !== false || strpos($name, '..\\') !== false) {
{
response(trans('wrong name') . AddErrorLocation())->send(); response(trans('wrong name') . AddErrorLocation())->send();
exit; exit;
} }
@ -101,21 +96,19 @@ if(isset($_POST['paths'])){
$info = pathinfo($path); $info = pathinfo($path);
if (isset($info['extension']) && !(isset($_GET['action']) && $_GET['action'] == 'delete_folder') && if (isset($info['extension']) && !(isset($_GET['action']) && $_GET['action'] == 'delete_folder') &&
!check_extension($info['extension'], $config) !check_extension($info['extension'], $config)
&& $_GET['action'] != 'create_file' ) && $_GET['action'] != 'create_file') {
{
response(trans('wrong extension') . AddErrorLocation())->send(); response(trans('wrong extension') . AddErrorLocation())->send();
exit; exit;
} }
if (isset($_GET['action'])) if (isset($_GET['action'])) {
{ switch ($_GET['action']) {
switch($_GET['action'])
{
case 'delete_file': case 'delete_file':
deleteFile($path, $path_thumb, $config); deleteFile($path, $path_thumb, $config);
break; break;
case 'delete_files': case 'delete_files':
foreach ($paths as $key => $p) { foreach ($paths as $key => $p) {
deleteFile($p, $paths_thumb[$key], $config); deleteFile($p, $paths_thumb[$key], $config);
@ -173,15 +166,16 @@ if (isset($_GET['action']))
$name = str_replace('.', '', $name); $name = str_replace('.', '', $name);
if (!empty($name)) { if (!empty($name)) {
if (!rename_folder($path,$name,$ftp,$config)) if (!rename_folder($path, $name, $ftp, $config)) {
{
response(trans('Rename_existing_folder') . AddErrorLocation())->send(); response(trans('Rename_existing_folder') . AddErrorLocation())->send();
exit; exit;
} }
rename_folder($path_thumb, $name, $ftp, $config); rename_folder($path_thumb, $name, $ftp, $config);
if (!$ftp && $config['fixed_image_creation']) { if (!$ftp && $config['fixed_image_creation']) {
foreach ($config['fixed_path_from_filemanager'] as $k => $paths) { foreach ($config['fixed_path_from_filemanager'] as $k => $paths) {
if ($paths!="" && $paths[strlen($paths)-1] != "/") $paths.="/"; if ($paths != "" && $paths[strlen($paths) - 1] != "/") {
$paths .= "/";
}
$base_dir = $paths . substr_replace($path, '', 0, strlen($config['current_path'])); $base_dir = $paths . substr_replace($path, '', 0, strlen($config['current_path']));
rename_folder($base_dir, $name, $ftp, $config); rename_folder($base_dir, $name, $ftp, $config);
@ -193,8 +187,9 @@ if (isset($_GET['action']))
} }
} }
break; break;
case 'create_file': case 'create_file':
if ($config['create_text_files'] === FALSE) { if ($config['create_text_files'] === false) {
response(sprintf(trans('File_Open_Edit_Not_Allowed'), strtolower(trans('Edit'))) . AddErrorLocation())->send(); response(sprintf(trans('File_Open_Edit_Not_Allowed'), strtolower(trans('Edit'))) . AddErrorLocation())->send();
exit; exit;
} }
@ -204,7 +199,7 @@ if (isset($_GET['action']))
} }
// check if user supplied extension // check if user supplied extension
if (strpos($name, '.') === FALSE){ if (strpos($name, '.') === false) {
response(trans('No_Extension') . ' ' . sprintf(trans('Valid_Extensions'), implode(', ', $config['editable_text_file_exts'])) . AddErrorLocation())->send(); response(trans('No_Extension') . ' ' . sprintf(trans('Valid_Extensions'), implode(', ', $config['editable_text_file_exts'])) . AddErrorLocation())->send();
exit; exit;
} }
@ -212,8 +207,7 @@ if (isset($_GET['action']))
// correct name // correct name
$old_name = $name; $old_name = $name;
$name = fix_filename($name, $config); $name = fix_filename($name, $config);
if (empty($name)) if (empty($name)) {
{
response(trans('Empty_name') . AddErrorLocation())->send(); response(trans('Empty_name') . AddErrorLocation())->send();
exit; exit;
} }
@ -244,11 +238,11 @@ if (isset($_GET['action']))
exit; exit;
} }
if (@file_put_contents($path.$name, $content) === FALSE) { if (@file_put_contents($path . $name, $content) === false) {
response(trans('File_Save_Error') . AddErrorLocation())->send(); response(trans('File_Save_Error') . AddErrorLocation())->send();
exit; exit;
} else { } else {
if (is_function_callable('chmod') !== FALSE){ if (is_function_callable('chmod') !== false) {
chmod($path . $name, 0644); chmod($path . $name, 0644);
} }
response(trans('File_Save_OK'))->send(); response(trans('File_Save_OK'))->send();
@ -257,30 +251,28 @@ if (isset($_GET['action']))
} }
break; break;
case 'rename_file': case 'rename_file':
if ($config['rename_files']) { if ($config['rename_files']) {
$name = fix_filename($name, $config); $name = fix_filename($name, $config);
if (!empty($name)) if (!empty($name)) {
{ if (!rename_file($path, $name, $ftp, $config)) {
if (!rename_file($path,$name,$ftp,$config))
{
response(trans('Rename_existing_file') . AddErrorLocation())->send(); response(trans('Rename_existing_file') . AddErrorLocation())->send();
exit; exit;
} }
rename_file($path_thumb, $name, $ftp, $config); rename_file($path_thumb, $name, $ftp, $config);
if ($config['fixed_image_creation']) if ($config['fixed_image_creation']) {
{
$info = pathinfo($path); $info = pathinfo($path);
foreach($config['fixed_path_from_filemanager'] as $k=>$paths) foreach ($config['fixed_path_from_filemanager'] as $k => $paths) {
{ if ($paths != "" && $paths[strlen($paths) - 1] != "/") {
if ($paths!="" && $paths[strlen($paths)-1] != "/") $paths.="/"; $paths .= "/";
}
$base_dir = $paths . substr_replace($info['dirname'] . "/", '', 0, strlen($config['current_path'])); $base_dir = $paths . substr_replace($info['dirname'] . "/", '', 0, strlen($config['current_path']));
if (file_exists($base_dir.$config['fixed_image_creation_name_to_prepend'][$k].$info['filename'].$config['fixed_image_creation_to_append'][$k].".".$info['extension'])) if (file_exists($base_dir . $config['fixed_image_creation_name_to_prepend'][$k] . $info['filename'] . $config['fixed_image_creation_to_append'][$k] . "." . $info['extension'])) {
{
rename_file($base_dir . $config['fixed_image_creation_name_to_prepend'][$k] . $info['filename'] . $config['fixed_image_creation_to_append'][$k] . "." . $info['extension'], $config['fixed_image_creation_name_to_prepend'][$k] . $name . $config['fixed_image_creation_to_append'][$k], $ftp, $config); rename_file($base_dir . $config['fixed_image_creation_name_to_prepend'][$k] . $info['filename'] . $config['fixed_image_creation_to_append'][$k] . "." . $info['extension'], $config['fixed_image_creation_name_to_prepend'][$k] . $name . $config['fixed_image_creation_to_append'][$k], $ftp, $config);
} }
} }
@ -291,35 +283,32 @@ if (isset($_GET['action']))
} }
} }
break; break;
case 'duplicate_file': case 'duplicate_file':
if ($config['duplicate_files']) if ($config['duplicate_files']) {
{
$name = fix_filename($name, $config); $name = fix_filename($name, $config);
if (!empty($name)) if (!empty($name)) {
{
if (!$ftp && !checkresultingsize(filesize($path))) { if (!$ftp && !checkresultingsize(filesize($path))) {
response(sprintf(trans('max_size_reached'), $config['MaxSizeTotal']) . AddErrorLocation())->send(); response(sprintf(trans('max_size_reached'), $config['MaxSizeTotal']) . AddErrorLocation())->send();
exit; exit;
} }
if (!duplicate_file($path,$name,$ftp,$config)) if (!duplicate_file($path, $name, $ftp, $config)) {
{
response(trans('Rename_existing_file') . AddErrorLocation())->send(); response(trans('Rename_existing_file') . AddErrorLocation())->send();
exit; exit;
} }
duplicate_file($path_thumb, $name, $ftp, $config); duplicate_file($path_thumb, $name, $ftp, $config);
if (!$ftp && $config['fixed_image_creation']) if (!$ftp && $config['fixed_image_creation']) {
{
$info = pathinfo($path); $info = pathinfo($path);
foreach($config['fixed_path_from_filemanager'] as $k=>$paths) foreach ($config['fixed_path_from_filemanager'] as $k => $paths) {
{ if ($paths != "" && $paths[strlen($paths) - 1] != "/") {
if ($paths!="" && $paths[strlen($paths)-1] != "/") $paths.= "/"; $paths .= "/";
}
$base_dir = $paths . substr_replace($info['dirname'] . "/", '', 0, strlen($config['current_path'])); $base_dir = $paths . substr_replace($info['dirname'] . "/", '', 0, strlen($config['current_path']));
if (file_exists($base_dir.$config['fixed_image_creation_name_to_prepend'][$k].$info['filename'].$config['fixed_image_creation_to_append'][$k].".".$info['extension'])) if (file_exists($base_dir . $config['fixed_image_creation_name_to_prepend'][$k] . $info['filename'] . $config['fixed_image_creation_to_append'][$k] . "." . $info['extension'])) {
{
duplicate_file($base_dir . $config['fixed_image_creation_name_to_prepend'][$k] . $info['filename'] . $config['fixed_image_creation_to_append'][$k] . "." . $info['extension'], $config['fixed_image_creation_name_to_prepend'][$k] . $name . $config['fixed_image_creation_to_append'][$k]); duplicate_file($base_dir . $config['fixed_image_creation_name_to_prepend'][$k] . $info['filename'] . $config['fixed_image_creation_to_append'][$k] . "." . $info['extension'], $config['fixed_image_creation_name_to_prepend'][$k] . $name . $config['fixed_image_creation_to_append'][$k]);
} }
} }
@ -334,8 +323,7 @@ if (isset($_GET['action']))
case 'paste_clipboard': case 'paste_clipboard':
if (!isset($_SESSION['RF']['clipboard_action'], $_SESSION['RF']['clipboard']['path']) if (!isset($_SESSION['RF']['clipboard_action'], $_SESSION['RF']['clipboard']['path'])
|| $_SESSION['RF']['clipboard_action'] == '' || $_SESSION['RF']['clipboard_action'] == ''
|| $_SESSION['RF']['clipboard']['path'] == '') || $_SESSION['RF']['clipboard']['path'] == '') {
{
response()->send(); response()->send();
exit; exit;
} }
@ -367,7 +355,7 @@ if (isset($_GET['action']))
} }
// user wants to paste folder to it's own sub folder.. baaaah. // user wants to paste folder to it's own sub folder.. baaaah.
if (is_dir($data['path']) && strpos($path, $data['path']) !== FALSE){ if (is_dir($data['path']) && strpos($path, $data['path']) !== false) {
response()->send(); response()->send();
exit; exit;
} }
@ -378,8 +366,7 @@ if (isset($_GET['action']))
exit; exit;
} }
if ($ftp) { if ($ftp) {
if ($action == 'copy') if ($action == 'copy') {
{
$tmp = time() . basename($data['path']); $tmp = time() . basename($data['path']);
$ftp->get($tmp, $data['path'], FTP_BINARY); $ftp->get($tmp, $data['path'], FTP_BINARY);
$ftp->put(DIRECTORY_SEPARATOR . $path, $tmp, FTP_BINARY); $ftp->put(DIRECTORY_SEPARATOR . $path, $tmp, FTP_BINARY);
@ -391,7 +378,6 @@ if (isset($_GET['action']))
@$ftp->put(DIRECTORY_SEPARATOR . $path_thumb, $tmp, FTP_BINARY); @$ftp->put(DIRECTORY_SEPARATOR . $path_thumb, $tmp, FTP_BINARY);
unlink($tmp); unlink($tmp);
} }
} elseif ($action == 'cut') { } elseif ($action == 'cut') {
$ftp->rename($data['path'], DIRECTORY_SEPARATOR . $path); $ftp->rename($data['path'], DIRECTORY_SEPARATOR . $path);
if (url_exists($data['path_thumb'])) { if (url_exists($data['path_thumb'])) {
@ -400,18 +386,17 @@ if (isset($_GET['action']))
} }
} else { } else {
// check for writability // check for writability
if (is_really_writable($path) === FALSE || is_really_writable($path_thumb) === FALSE){ if (is_really_writable($path) === false || is_really_writable($path_thumb) === false) {
response(trans('Dir_No_Write') . '<br/>' . str_replace('../', '', $path) . '<br/>' . str_replace('../', '', $path_thumb) . AddErrorLocation())->send(); response(trans('Dir_No_Write') . '<br/>' . str_replace('../', '', $path) . '<br/>' . str_replace('../', '', $path_thumb) . AddErrorLocation())->send();
exit; exit;
} }
// check if server disables copy or rename // check if server disables copy or rename
if (is_function_callable(($action == 'copy' ? 'copy' : 'rename')) === FALSE){ if (is_function_callable(($action == 'copy' ? 'copy' : 'rename')) === false) {
response(sprintf(trans('Function_Disabled'), ($action == 'copy' ? (trans('Copy')) : (trans('Cut')))) . AddErrorLocation())->send(); response(sprintf(trans('Function_Disabled'), ($action == 'copy' ? (trans('Copy')) : (trans('Cut')))) . AddErrorLocation())->send();
exit; exit;
} }
if ($action == 'copy') if ($action == 'copy') {
{
list($sizeFolderToCopy, $fileNum, $foldersCount) = folder_info($path, false); list($sizeFolderToCopy, $fileNum, $foldersCount) = folder_info($path, false);
if (!checkresultingsize($sizeFolderToCopy)) { if (!checkresultingsize($sizeFolderToCopy)) {
response(sprintf(trans('max_size_reached'), $config['MaxSizeTotal']) . AddErrorLocation())->send(); response(sprintf(trans('max_size_reached'), $config['MaxSizeTotal']) . AddErrorLocation())->send();
@ -432,10 +417,11 @@ if (isset($_GET['action']))
} }
// cleanup // cleanup
$_SESSION['RF']['clipboard']['path'] = NULL; $_SESSION['RF']['clipboard']['path'] = null;
$_SESSION['RF']['clipboard_action'] = NULL; $_SESSION['RF']['clipboard_action'] = null;
break; break;
case 'chmod': case 'chmod':
$mode = $_POST['new_mode']; $mode = $_POST['new_mode'];
$rec_option = $_POST['is_recursive']; $rec_option = $_POST['is_recursive'];
@ -443,7 +429,7 @@ if (isset($_GET['action']))
$chmod_perm = ($_POST['folder'] ? $config['chmod_dirs'] : $config['chmod_files']); $chmod_perm = ($_POST['folder'] ? $config['chmod_dirs'] : $config['chmod_files']);
// check perm // check perm
if ($chmod_perm === FALSE) { if ($chmod_perm === false) {
response(sprintf(trans('File_Permission_Not_Allowed'), (is_dir($path) ? (trans('Folders')) : (trans('Files')))) . AddErrorLocation())->send(); response(sprintf(trans('File_Permission_Not_Allowed'), (is_dir($path) ? (trans('Folders')) : (trans('Files')))) . AddErrorLocation())->send();
exit; exit;
} }
@ -458,7 +444,7 @@ if (isset($_GET['action']))
exit; exit;
} }
// check if server disabled chmod // check if server disabled chmod
if (!$ftp && is_function_callable('chmod') === FALSE){ if (!$ftp && is_function_callable('chmod') === false) {
response(sprintf(trans('Function_Disabled'), 'chmod') . AddErrorLocation())->send(); response(sprintf(trans('Function_Disabled'), 'chmod') . AddErrorLocation())->send();
exit; exit;
} }
@ -472,6 +458,7 @@ if (isset($_GET['action']))
} }
break; break;
case 'save_text_file': case 'save_text_file':
$content = $_POST['new_content']; $content = $_POST['new_content'];
// $content = htmlspecialchars($content); not needed // $content = htmlspecialchars($content); not needed
@ -480,11 +467,7 @@ if (isset($_GET['action']))
if ($ftp) { if ($ftp) {
$tmp = time(); $tmp = time();
file_put_contents($tmp, $content); file_put_contents($tmp, $content);
try{
$ftp->put("/" . $path, $tmp, FTP_BINARY); $ftp->put("/" . $path, $tmp, FTP_BINARY);
}catch(FtpClient\FtpException $e){
echo $e->getMessage();
}
unlink($tmp); unlink($tmp);
response(trans('File_Save_OK'))->send(); response(trans('File_Save_OK'))->send();
} else { } else {
@ -495,7 +478,7 @@ if (isset($_GET['action']))
} }
// not writable or edit not allowed // not writable or edit not allowed
if (!is_writable($path) || $config['edit_text_files'] === FALSE) { if (!is_writable($path) || $config['edit_text_files'] === false) {
response(sprintf(trans('File_Open_Edit_Not_Allowed'), strtolower(trans('Edit'))) . AddErrorLocation())->send(); response(sprintf(trans('File_Open_Edit_Not_Allowed'), strtolower(trans('Edit'))) . AddErrorLocation())->send();
exit; exit;
} }
@ -504,7 +487,7 @@ if (isset($_GET['action']))
response(sprintf(trans('max_size_reached'), $config['MaxSizeTotal']) . AddErrorLocation())->send(); response(sprintf(trans('max_size_reached'), $config['MaxSizeTotal']) . AddErrorLocation())->send();
exit; exit;
} }
if (@file_put_contents($path, $content) === FALSE) { if (@file_put_contents($path, $content) === false) {
response(trans('File_Save_Error') . AddErrorLocation())->send(); response(trans('File_Save_Error') . AddErrorLocation())->send();
exit; exit;
} else { } else {
@ -514,6 +497,7 @@ if (isset($_GET['action']))
} }
break; break;
default: default:
response(trans('wrong action') . AddErrorLocation())->send(); response(trans('wrong action') . AddErrorLocation())->send();
exit; exit;

View File

@ -5,27 +5,23 @@ $config = include 'config/config.php';
include 'include/utils.php'; include 'include/utils.php';
include 'include/mime_type_lib.php'; include 'include/mime_type_lib.php';
$ftp = ftp_con($config);
if ($_SESSION['RF']["verify"] != "RESPONSIVEfilemanager") { if ($_SESSION['RF']["verify"] != "RESPONSIVEfilemanager") {
response(trans('forbiden') . AddErrorLocation(), 403)->send(); response(trans('forbidden') . AddErrorLocation(), 403)->send();
exit; exit;
} }
if (!checkRelativePath($_POST['path']) || strpos($_POST['path'], '/') === 0) {
if (!checkRelativePath($_POST['path']) ||
strpos($_POST['path'], '/') === 0
) {
response(trans('wrong path') . AddErrorLocation(), 400)->send(); response(trans('wrong path') . AddErrorLocation(), 400)->send();
exit; exit;
} }
if (strpos($_POST['name'], '/') !== false) { if (strpos($_POST['name'], '/') !== false) {
response(trans('wrong path') . AddErrorLocation(), 400)->send(); response(trans('wrong path') . AddErrorLocation(), 400)->send();
exit; exit;
} }
$ftp = ftp_con($config);
if ($ftp) { if ($ftp) {
$path = $config['ftp_base_url'] . $config['upload_dir'] . $_POST['path']; $path = $config['ftp_base_url'] . $config['upload_dir'] . $_POST['path'];
} else { } else {
@ -102,6 +98,7 @@ if ($ftp) {
$chunksize = 1 * (1024 * 1024); $chunksize = 1 * (1024 * 1024);
$bytes_send = 0; $bytes_send = 0;
if ($file = fopen($file_path, 'r')) { if ($file = fopen($file_path, 'r')) {
if (isset($_SERVER['HTTP_RANGE'])) { if (isset($_SERVER['HTTP_RANGE'])) {
fseek($file, $range); fseek($file, $range);

0
core/vendor/filemanager/img/ico_dark/ac3.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 3.4 KiB

0
core/vendor/filemanager/img/ico_dark/accdb.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 4.0 KiB

After

Width:  |  Height:  |  Size: 4.0 KiB

0
core/vendor/filemanager/img/ico_dark/ade.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 4.0 KiB

After

Width:  |  Height:  |  Size: 4.0 KiB

0
core/vendor/filemanager/img/ico_dark/adp.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 4.0 KiB

After

Width:  |  Height:  |  Size: 4.0 KiB

0
core/vendor/filemanager/img/ico_dark/ai.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 3.3 KiB

0
core/vendor/filemanager/img/ico_dark/aiff.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 3.4 KiB

0
core/vendor/filemanager/img/ico_dark/avi.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 3.4 KiB

0
core/vendor/filemanager/img/ico_dark/bmp.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.7 KiB

After

Width:  |  Height:  |  Size: 3.7 KiB

0
core/vendor/filemanager/img/ico_dark/css.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 3.4 KiB

0
core/vendor/filemanager/img/ico_dark/csv.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 4.1 KiB

After

Width:  |  Height:  |  Size: 4.1 KiB

0
core/vendor/filemanager/img/ico_dark/default.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.7 KiB

After

Width:  |  Height:  |  Size: 3.7 KiB

0
core/vendor/filemanager/img/ico_dark/dmg.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 3.5 KiB

0
core/vendor/filemanager/img/ico_dark/doc.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 4.0 KiB

After

Width:  |  Height:  |  Size: 4.0 KiB

0
core/vendor/filemanager/img/ico_dark/docx.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 4.0 KiB

After

Width:  |  Height:  |  Size: 4.0 KiB

0
core/vendor/filemanager/img/ico_dark/favicon.ico vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

0
core/vendor/filemanager/img/ico_dark/fla.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 3.5 KiB

0
core/vendor/filemanager/img/ico_dark/flv.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 3.5 KiB

0
core/vendor/filemanager/img/ico_dark/folder.png vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 535 B

After

Width:  |  Height:  |  Size: 535 B

0
core/vendor/filemanager/img/ico_dark/folder_back.png vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

0
core/vendor/filemanager/img/ico_dark/gif.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.7 KiB

After

Width:  |  Height:  |  Size: 3.7 KiB

0
core/vendor/filemanager/img/ico_dark/gz.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 3.3 KiB

0
core/vendor/filemanager/img/ico_dark/html.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.6 KiB

After

Width:  |  Height:  |  Size: 3.6 KiB

0
core/vendor/filemanager/img/ico_dark/iso.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 3.5 KiB

0
core/vendor/filemanager/img/ico_dark/jpeg.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.6 KiB

After

Width:  |  Height:  |  Size: 3.6 KiB

0
core/vendor/filemanager/img/ico_dark/jpg.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.7 KiB

After

Width:  |  Height:  |  Size: 3.7 KiB

0
core/vendor/filemanager/img/ico_dark/log.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.7 KiB

After

Width:  |  Height:  |  Size: 3.7 KiB

0
core/vendor/filemanager/img/ico_dark/m4a.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 3.3 KiB

0
core/vendor/filemanager/img/ico_dark/mdb.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 4.0 KiB

After

Width:  |  Height:  |  Size: 4.0 KiB

0
core/vendor/filemanager/img/ico_dark/mid.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 3.3 KiB

0
core/vendor/filemanager/img/ico_dark/mov.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 3.4 KiB

0
core/vendor/filemanager/img/ico_dark/mp3.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 3.3 KiB

0
core/vendor/filemanager/img/ico_dark/mp4.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 3.3 KiB

0
core/vendor/filemanager/img/ico_dark/mpeg.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 3.4 KiB

0
core/vendor/filemanager/img/ico_dark/mpg.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 3.4 KiB

0
core/vendor/filemanager/img/ico_dark/odb.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 3.5 KiB

0
core/vendor/filemanager/img/ico_dark/odf.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 3.5 KiB

0
core/vendor/filemanager/img/ico_dark/odg.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 3.5 KiB

0
core/vendor/filemanager/img/ico_dark/odp.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 3.5 KiB

0
core/vendor/filemanager/img/ico_dark/ods.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 3.5 KiB

0
core/vendor/filemanager/img/ico_dark/odt.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 3.5 KiB

0
core/vendor/filemanager/img/ico_dark/ogg.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 3.4 KiB

0
core/vendor/filemanager/img/ico_dark/otg.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 3.5 KiB

0
core/vendor/filemanager/img/ico_dark/otp.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 3.5 KiB

0
core/vendor/filemanager/img/ico_dark/ots.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 3.5 KiB

0
core/vendor/filemanager/img/ico_dark/ott.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 3.5 KiB

0
core/vendor/filemanager/img/ico_dark/pdf.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.6 KiB

After

Width:  |  Height:  |  Size: 3.6 KiB

0
core/vendor/filemanager/img/ico_dark/png.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.7 KiB

After

Width:  |  Height:  |  Size: 3.7 KiB

0
core/vendor/filemanager/img/ico_dark/ppt.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 3.9 KiB

0
core/vendor/filemanager/img/ico_dark/pptx.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 4.0 KiB

After

Width:  |  Height:  |  Size: 4.0 KiB

0
core/vendor/filemanager/img/ico_dark/psd.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.8 KiB

After

Width:  |  Height:  |  Size: 3.8 KiB

0
core/vendor/filemanager/img/ico_dark/rar.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 3.3 KiB

0
core/vendor/filemanager/img/ico_dark/rtf.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 4.0 KiB

After

Width:  |  Height:  |  Size: 4.0 KiB

0
core/vendor/filemanager/img/ico_dark/sql.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.7 KiB

After

Width:  |  Height:  |  Size: 3.7 KiB

0
core/vendor/filemanager/img/ico_dark/svg.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.7 KiB

After

Width:  |  Height:  |  Size: 3.7 KiB

0
core/vendor/filemanager/img/ico_dark/tar.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 3.3 KiB

0
core/vendor/filemanager/img/ico_dark/tiff.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.7 KiB

After

Width:  |  Height:  |  Size: 3.7 KiB

0
core/vendor/filemanager/img/ico_dark/txt.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.7 KiB

After

Width:  |  Height:  |  Size: 3.7 KiB

0
core/vendor/filemanager/img/ico_dark/wav.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 3.4 KiB

0
core/vendor/filemanager/img/ico_dark/webm.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 3.4 KiB

0
core/vendor/filemanager/img/ico_dark/wma.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 3.4 KiB

0
core/vendor/filemanager/img/ico_dark/xhtml.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.6 KiB

After

Width:  |  Height:  |  Size: 3.6 KiB

0
core/vendor/filemanager/img/ico_dark/xls.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 4.1 KiB

After

Width:  |  Height:  |  Size: 4.1 KiB

0
core/vendor/filemanager/img/ico_dark/xlsx.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 4.2 KiB

After

Width:  |  Height:  |  Size: 4.2 KiB

0
core/vendor/filemanager/img/ico_dark/xml.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.7 KiB

After

Width:  |  Height:  |  Size: 3.7 KiB

0
core/vendor/filemanager/img/ico_dark/zip.jpg vendored Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 3.3 KiB

10
core/vendor/filemanager/index.php vendored Normal file
View File

@ -0,0 +1,10 @@
<?php
header("Expires: Mon, 26 Jul 2019 05:00:00 GMT");
header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
header("Location: ../");
exit;

File diff suppressed because one or more lines are too long

1
core/vendor/filemanager/js/jquery.fileupload-angular.js vendored Executable file → Normal file
View File

@ -315,6 +315,7 @@
'fileuploadpaste', 'fileuploadpaste',
'fileuploaddrop', 'fileuploaddrop',
'fileuploaddragover', 'fileuploaddragover',
'fileuploadchunkbeforesend',
'fileuploadchunksend', 'fileuploadchunksend',
'fileuploadchunkdone', 'fileuploadchunkdone',
'fileuploadchunkfail', 'fileuploadchunkfail',

0
core/vendor/filemanager/js/jquery.fileupload-audio.js vendored Executable file → Normal file
View File

0
core/vendor/filemanager/js/jquery.fileupload-image.js vendored Executable file → Normal file
View File

0
core/vendor/filemanager/js/jquery.fileupload-jquery-ui.js vendored Executable file → Normal file
View File

0
core/vendor/filemanager/js/jquery.fileupload-process.js vendored Executable file → Normal file
View File

0
core/vendor/filemanager/js/jquery.fileupload-ui.js vendored Executable file → Normal file
View File

0
core/vendor/filemanager/js/jquery.fileupload-validate.js vendored Executable file → Normal file
View File

0
core/vendor/filemanager/js/jquery.fileupload-video.js vendored Executable file → Normal file
View File

16
core/vendor/filemanager/js/jquery.fileupload.js vendored Executable file → Normal file
View File

@ -261,6 +261,9 @@
// Callback for dragover events of the dropZone(s): // Callback for dragover events of the dropZone(s):
// dragover: function (e) {}, // .bind('fileuploaddragover', func); // dragover: function (e) {}, // .bind('fileuploaddragover', func);
// Callback before the start of each chunk upload request (before form data initialization):
// chunkbeforesend: function (e, data) {}, // .bind('fileuploadchunkbeforesend', func);
// Callback for the start of each chunk upload request: // Callback for the start of each chunk upload request:
// chunksend: function (e, data) {}, // .bind('fileuploadchunksend', func); // chunksend: function (e, data) {}, // .bind('fileuploadchunksend', func);
@ -434,6 +437,13 @@
} }
}, },
_deinitProgressListener: function (options) {
var xhr = options.xhr ? options.xhr() : $.ajaxSettings.xhr();
if (xhr.upload) {
$(xhr.upload).unbind('progress');
}
},
_isInstanceOf: function (type, obj) { _isInstanceOf: function (type, obj) {
// Cross-frame instanceof check // Cross-frame instanceof check
return Object.prototype.toString.call(obj) === '[object ' + type + ']'; return Object.prototype.toString.call(obj) === '[object ' + type + ']';
@ -766,6 +776,8 @@
// Expose the chunk bytes position range: // Expose the chunk bytes position range:
o.contentRange = 'bytes ' + ub + '-' + o.contentRange = 'bytes ' + ub + '-' +
(ub + o.chunkSize - 1) + '/' + fs; (ub + o.chunkSize - 1) + '/' + fs;
// Trigger chunkbeforesend to allow form data to be updated for this chunk
that._trigger('chunkbeforesend', null, o);
// Process the upload data (the blob and potential form data): // Process the upload data (the blob and potential form data):
that._initXHRData(o); that._initXHRData(o);
// Add progress listeners for this chunk upload: // Add progress listeners for this chunk upload:
@ -812,6 +824,9 @@
o.context, o.context,
[jqXHR, textStatus, errorThrown] [jqXHR, textStatus, errorThrown]
); );
})
.always(function () {
that._deinitProgressListener(o);
}); });
}; };
this._enhancePromise(promise); this._enhancePromise(promise);
@ -913,6 +928,7 @@
}).fail(function (jqXHR, textStatus, errorThrown) { }).fail(function (jqXHR, textStatus, errorThrown) {
that._onFail(jqXHR, textStatus, errorThrown, options); that._onFail(jqXHR, textStatus, errorThrown, options);
}).always(function (jqXHRorResult, textStatus, jqXHRorError) { }).always(function (jqXHRorResult, textStatus, jqXHRorError) {
that._deinitProgressListener(options);
that._onAlways( that._onAlways(
jqXHRorResult, jqXHRorResult,
textStatus, textStatus,

0
core/vendor/filemanager/js/jquery.iframe-transport.js vendored Executable file → Normal file
View File

9158
core/vendor/filemanager/js/plugins.js vendored Executable file → Normal file

File diff suppressed because one or more lines are too long

View File

@ -95,7 +95,9 @@ return array(
'Copy_Cut_Size_Limit' => 'Les fichiers/dossiers sélectionnés sont trop gros pour %1$s. Limite: %2$d MB/opération', // %1$s = cut or copy, %2$d = max size 'Copy_Cut_Size_Limit' => 'Les fichiers/dossiers sélectionnés sont trop gros pour %1$s. Limite: %2$d MB/opération', // %1$s = cut or copy, %2$d = max size
'Copy_Cut_Count_Limit' => 'Vous avez sélectionné trop de fichiers/dossier pour %1$s. Limite: %2$d fichiers/opération', // %1$s = cut or copy, %2$d = max count 'Copy_Cut_Count_Limit' => 'Vous avez sélectionné trop de fichiers/dossier pour %1$s. Limite: %2$d fichiers/opération', // %1$s = cut or copy, %2$d = max count
'Copy_Cut_Not_Allowed' => 'Vous n\'êtes pas autorisé à %1$s des %2$s.', // %12$s = cut or copy, %2$s = files or folders 'Copy_Cut_Not_Allowed' => 'Vous n\'êtes pas autorisé à %1$s des %2$s.', // %12$s = cut or copy, %2$s = files or folders
'Aviary_No_Save' => 'Impossible d\'enregistrer l\'image', 'Image_Editor_No_Save' => 'Impossible d\'enregistrer l\'image',
'Image_Editor_Exit' => "Sortie",
'Image_Editor_Save' => "Sauvegarder",
'Zip_No_Extract' => 'Extraction impossible. Le fichier est peut-être corrompu.', 'Zip_No_Extract' => 'Extraction impossible. Le fichier est peut-être corrompu.',
'Zip_Invalid' => 'Cette extension n\'est pas supportée. Extensions valides: zip, gz, tar.', 'Zip_Invalid' => 'Cette extension n\'est pas supportée. Extensions valides: zip, gz, tar.',
'Dir_No_Write' => 'Le répertoire que vous avez sélectionné n\'est pas accessible en écriture.', 'Dir_No_Write' => 'Le répertoire que vous avez sélectionné n\'est pas accessible en écriture.',
@ -122,7 +124,7 @@ return array(
'Upload_message' => 'Glissez les fichiers ici pour les ajouter', 'Upload_message' => 'Glissez les fichiers ici pour les ajouter',
'SERVER ERROR' => "ERREUR SERVEUR", 'SERVER ERROR' => "ERREUR SERVEUR",
'forbiden' => "Interdit", 'forbidden' => "Interdit",
'wrong path' => "Chemin invalide", 'wrong path' => "Chemin invalide",
'wrong name' => "Nom invalide", 'wrong name' => "Nom invalide",
'wrong extension' => "Extension invalide", 'wrong extension' => "Extension invalide",

View File

@ -9,7 +9,8 @@
tinymce.PluginManager.add('filemanager', function(editor) { tinymce.PluginManager.add('filemanager', function(editor) {
editor.settings.file_browser_callback = filemanager; editor.settings.file_picker_types = 'file image media';
editor.settings.file_picker_callback = filemanager;
function filemanager_onMessage(event){ function filemanager_onMessage(event){
if(editor.settings.external_filemanager_path.toLowerCase().indexOf(event.origin.toLowerCase()) === 0){ if(editor.settings.external_filemanager_path.toLowerCase().indexOf(event.origin.toLowerCase()) === 0){
@ -27,7 +28,7 @@ tinymce.PluginManager.add('filemanager', function(editor) {
} }
} }
function filemanager (id, value, type, win) { function filemanager(callback, value, meta) {
var width = window.innerWidth-30; var width = window.innerWidth-30;
var height = window.innerHeight-60; var height = window.innerHeight-60;
if(width > 1800) width=1800; if(width > 1800) width=1800;
@ -39,8 +40,9 @@ tinymce.PluginManager.add('filemanager', function(editor) {
// DEFAULT AS FILE // DEFAULT AS FILE
urltype=2; urltype=2;
if (type=='image') { urltype=1; } if (meta.filetype === 'image' || meta.mediaType === 'image') { urltype=1; }
if (type=='media') { urltype=3; } if (meta.filetype === 'media' || meta.mediaType === 'media') { urltype=3; }
var title="RESPONSIVE FileManager"; var title="RESPONSIVE FileManager";
if (typeof editor.settings.filemanager_title !== "undefined" && editor.settings.filemanager_title) { if (typeof editor.settings.filemanager_title !== "undefined" && editor.settings.filemanager_title) {
title=editor.settings.filemanager_title; title=editor.settings.filemanager_title;
@ -73,27 +75,37 @@ tinymce.PluginManager.add('filemanager', function(editor) {
} }
} }
tinymce.activeEditor.windowManager.open({ window.addEventListener('message', function receiveMessage(event) {
window.removeEventListener('message', receiveMessage, false);
if (event.data.sender === 'responsivefilemanager') {
callback(event.data.url);
}
}, false);
var dialogUrl = editor.settings.external_filemanager_path+'dialog.php?type='+urltype+'&descending='+descending+sort_by+fldr+crossdomain+'&lang='+editor.settings.language+'&akey='+akey;
if (tinymce.majorVersion > 4) {
tinymce.activeEditor.windowManager.openUrl({
title: title, title: title,
file: editor.settings.external_filemanager_path+'dialog.php?type='+urltype+'&descending='+descending+sort_by+fldr+crossdomain+'&lang='+editor.settings.language+'&akey='+akey, url: dialogUrl,
width: width, width: width,
height: height, height: height,
resizable: true, resizable: true,
maximizable: true, maximizable: true,
inline: 1 inline: 1,
}, {
setUrl: function (url) {
var fieldElm = win.document.getElementById(id);
fieldElm.value = editor.convertURL(url);
if ("createEvent" in document) {
var evt = document.createEvent("HTMLEvents");
evt.initEvent("change", false, true);
fieldElm.dispatchEvent(evt)
} else {
fieldElm.fireEvent("onchange")
}
}
}); });
}; } else {
tinymce.activeEditor.windowManager.open({
title: title,
file: dialogUrl,
width: width,
height: height,
resizable: true,
maximizable: true,
inline: 1,
});
}
}
return false; return false;
}); });

235
core/vendor/filemanager/svg/icon-a.svg vendored Normal file
View File

@ -0,0 +1,235 @@
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><defs>
<circle id="a" cx="16" cy="16" r="16"/>
</defs><symbol id="icon-a-ic-apply" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h24v24H0z"/>
<path stroke="#434343" d="M4 12.011l5 5L20.011 6"/>
</g>
</symbol><symbol id="icon-a-ic-cancel" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h24v24H0z"/>
<path stroke="#434343" d="M6 6l12 12M18 6L6 18"/>
</g>
</symbol><symbol id="icon-a-ic-color-transparent-w" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<g>
<use fill="#FFF" xlink:href="#a"/>
<circle cx="16" cy="16" r="15.5" stroke="#D5D5D5"/>
</g>
<path stroke="#FF4040" stroke-width="1.5" d="M27 5L5 27"/>
</g>
</symbol><symbol id="icon-a-ic-crop" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h24v24H0z"/>
<path fill="#434343" d="M4 0h1v20a1 1 0 0 1-1-1V0zM20 17h-1V5h1v12zm0 2v5h-1v-5h1z"/>
<path fill="#434343" d="M5 19h19v1H5zM4.762 4v1H0V4h4.762zM7 4h12a1 1 0 0 1 1 1H7V4z"/>
</g>
</symbol><symbol id="icon-a-ic-delete-all" viewBox="0 0 24 24">
<g fill="#434343" fill-rule="evenodd">
<path d="M5 23H3a1 1 0 0 1-1-1V6h1v16h2v1zm16-10h-1V6h1v7zM9 13H8v-3h1v3zm3 0h-1v-3h1v3zm3 0h-1v-3h1v3zM14.794 3.794L13 2h-3L8.206 3.794A.963.963 0 0 1 8 2.5l.703-1.055A1 1 0 0 1 9.535 1h3.93a1 1 0 0 1 .832.445L15 2.5a.965.965 0 0 1-.206 1.294zM14.197 4H8.803h5.394z"/>
<path d="M0 3h23v1H0zM11.286 21H8.714L8 23H7l1-2.8V20h.071L9.5 16h1l1.429 4H12v.2l1 2.8h-1l-.714-2zm-.357-1L10 17.4 9.071 20h1.858zM20 22h3v1h-4v-7h1v6zm-5 0h3v1h-4v-7h1v6z"/>
</g>
</symbol><symbol id="icon-a-ic-delete" viewBox="0 0 24 24">
<g fill="#434343" fill-rule="evenodd">
<path d="M3 6v16h17V6h1v16a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V6h1zM14.794 3.794L13 2h-3L8.206 3.794A.963.963 0 0 1 8 2.5l.703-1.055A1 1 0 0 1 9.535 1h3.93a1 1 0 0 1 .832.445L15 2.5a.965.965 0 0 1-.206 1.294zM14.197 4H8.803h5.394z"/>
<path d="M0 3h23v1H0zM8 10h1v6H8v-6zm3 0h1v6h-1v-6zm3 0h1v6h-1v-6z"/>
</g>
</symbol><symbol id="icon-a-ic-draw-free" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#434343" d="M2.5 20.929C2.594 10.976 4.323 6 7.686 6c5.872 0 2.524 19 7.697 19s1.89-14.929 6.414-14.929 1.357 10.858 5.13 10.858c1.802 0 2.657-2.262 2.566-6.786"/>
</g>
</symbol><symbol id="icon-a-ic-draw-line" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#434343" d="M2 15.5h28"/>
</g>
</symbol><symbol id="icon-a-ic-draw" viewBox="0 0 24 24">
<g fill="none">
<path stroke="#434343" d="M2.5 21.5H5c.245 0 .48-.058.691-.168l.124-.065.14.01c.429.028.85-.127 1.16-.437L22.55 5.405a.5.5 0 0 0 0-.707l-3.246-3.245a.5.5 0 0 0-.707 0L3.162 16.888a1.495 1.495 0 0 0-.437 1.155l.01.14-.065.123c-.111.212-.17.448-.17.694v2.5z"/>
<path fill="#434343" d="M16.414 3.707l3.89 3.89-.708.706-3.889-3.889z"/>
</g>
</symbol><symbol id="icon-a-ic-filter" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h24v24H0z"/>
<path fill="#434343" d="M12 7v1H2V7h10zm6 0h4v1h-4V7zM12 16v1h10v-1H12zm-6 0H2v1h4v-1z"/>
<path fill="#434343" d="M8.5 20a3.5 3.5 0 1 1 0-7 3.5 3.5 0 0 1 0 7zm0-1a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5zM15.5 11a3.5 3.5 0 1 1 0-7 3.5 3.5 0 0 1 0 7zm0-1a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5z"/>
</g>
</symbol><symbol id="icon-a-ic-flip-reset" viewBox="0 0 31 32">
<g fill="none" fill-rule="evenodd">
<path d="M31 0H0v32h31z"/>
<path fill="#434343" d="M28 16a8 8 0 0 1-8 8H3v-1h1v-7H3a8 8 0 0 1 8-8h17v1h-1v7h1zM11 9a7 7 0 0 0-7 7v7h16a7 7 0 0 0 7-7V9H11z"/>
<path stroke="#434343" stroke-linecap="square" d="M24 5l3.5 3.5L24 12M7 20l-3.5 3.5L7 27"/>
</g>
</symbol><symbol id="icon-a-ic-flip-x" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M32 32H0V0h32z"/>
<path fill="#434343" d="M17 32h-1V0h1zM27.167 11l.5 3h-1.03l-.546-3h1.076zm-.5-3h-1.122L25 5h-5V4h5.153a1 1 0 0 1 .986.836L26.667 8zm1.5 9l.5 3h-.94l-.545-3h.985zm1 6l.639 3.836A1 1 0 0 1 28.819 28H26v-1h3l-.726-4h.894zM23 28h-3v-1h3v1zM13 4v1H7L3 27h10v1H3.18a1 1 0 0 1-.986-1.164l3.666-22A1 1 0 0 1 6.847 4H13z"/>
</g>
</symbol><symbol id="icon-a-ic-flip-y" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M0 0v32h32V0z"/>
<path fill="#434343" d="M0 16v1h32v-1zM11 27.167l3 .5v-1.03l-3-.546v1.076zm-3-.5v-1.122L5 25v-5H4v5.153a1 1 0 0 0 .836.986L8 26.667zm9 1.5l3 .5v-.94l-3-.545v.985zm6 1l3.836.639A1 1 0 0 0 28 28.82V26h-1v3l-4-.727v.894zM28 23v-3h-1v3h1zM4 13h1V7l22-4v10h1V3.18a1 1 0 0 0-1.164-.986l-22 3.667A1 1 0 0 0 4 6.847V13z"/>
</g>
</symbol><symbol id="icon-a-ic-flip" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h24v24H0z"/>
<path fill="#434343" d="M11 0h1v24h-1zM19 21v-1h2v-2h1v2a1 1 0 0 1-1 1h-2zm-2 0h-3v-1h3v1zm5-5h-1v-3h1v3zm0-5h-1V8h1v3zm0-5h-1V4h-2V3h2a1 1 0 0 1 1 1v2zm-5-3v1h-3V3h3zM9 3v1H2v16h7v1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h7z"/>
</g>
</symbol><symbol id="icon-a-ic-icon-arrow-2" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#434343" stroke-linecap="round" stroke-linejoin="round" d="M21.793 18.5H2.5v-5h18.935l-7.6-8h5.872l10.5 10.5-10.5 10.5h-5.914l8-8z"/>
</g>
</symbol><symbol id="icon-a-ic-icon-arrow-3" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#434343" stroke-linecap="round" stroke-linejoin="round" d="M25.288 16.42L14.208 27.5H6.792l11.291-11.291L6.826 4.5h7.381l11.661 11.661-.58.258z"/>
</g>
</symbol><symbol id="icon-a-ic-icon-arrow" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#434343" d="M2.5 11.5v9h18v5.293L30.293 16 20.5 6.207V11.5h-18z"/>
</g>
</symbol><symbol id="icon-a-ic-icon-bubble" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#434343" stroke-linecap="round" stroke-linejoin="round" d="M22.207 24.5L16.5 30.207V24.5H8A6.5 6.5 0 0 1 1.5 18V9A6.5 6.5 0 0 1 8 2.5h16A6.5 6.5 0 0 1 30.5 9v9a6.5 6.5 0 0 1-6.5 6.5h-1.793z"/>
</g>
</symbol><symbol id="icon-a-ic-icon-heart" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path fill-rule="nonzero" stroke="#434343" d="M15.996 30.675l1.981-1.79c7.898-7.177 10.365-9.718 12.135-13.012.922-1.716 1.377-3.37 1.377-5.076 0-4.65-3.647-8.297-8.297-8.297-2.33 0-4.86 1.527-6.817 3.824l-.38.447-.381-.447C13.658 4.027 11.126 2.5 8.797 2.5 4.147 2.5.5 6.147.5 10.797c0 1.714.46 3.375 1.389 5.098 1.775 3.288 4.26 5.843 12.123 12.974l1.984 1.806z"/>
</g>
</symbol><symbol id="icon-a-ic-icon-load" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#434343" stroke-linecap="round" stroke-linejoin="round" d="M17.314 18.867l1.951-2.53 4 5.184h-17l6.5-8.84 4.549 6.186z"/>
<path fill="#434343" d="M18.01 4a11.798 11.798 0 0 0 0 1H3v24h24V14.986a8.738 8.738 0 0 0 1 0V29a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h15.01z"/>
<path fill="#434343" d="M25 3h1v9h-1z"/>
<path stroke="#434343" d="M22 6l3.5-3.5L29 6"/>
</g>
</symbol><symbol id="icon-a-ic-icon-location" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<g stroke="#434343">
<path d="M16 31.28C23.675 23.302 27.5 17.181 27.5 13c0-6.351-5.149-11.5-11.5-11.5S4.5 6.649 4.5 13c0 4.181 3.825 10.302 11.5 18.28z"/>
<circle cx="16" cy="13" r="4.5"/>
</g>
</g>
</symbol><symbol id="icon-a-ic-icon-polygon" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#434343" d="M.576 16L8.29 29.5h15.42L31.424 16 23.71 2.5H8.29L.576 16z"/>
</g>
</symbol><symbol id="icon-a-ic-icon-star-2" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#434343" d="M19.446 31.592l2.265-3.272 3.946.25.636-3.94 3.665-1.505-1.12-3.832 2.655-2.962-2.656-2.962 1.12-3.832-3.664-1.505-.636-3.941-3.946.25-2.265-3.271L16 3.024 12.554 1.07 10.289 4.34l-3.946-.25-.636 3.941-3.665 1.505 1.12 3.832L.508 16.33l2.656 2.962-1.12 3.832 3.664 1.504.636 3.942 3.946-.25 2.265 3.27L16 29.638l3.446 1.955z"/>
</g>
</symbol><symbol id="icon-a-ic-icon-star" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#434343" d="M25.292 29.878l-1.775-10.346 7.517-7.327-10.388-1.51L16 1.282l-4.646 9.413-10.388 1.51 7.517 7.327-1.775 10.346L16 24.993l9.292 4.885z"/>
</g>
</symbol><symbol id="icon-a-ic-icon" viewBox="0 0 24 24">
<g fill="none">
<path stroke="#434343" stroke-linecap="round" stroke-linejoin="round" d="M11.923 19.136L5.424 22l.715-7.065-4.731-5.296 6.94-1.503L11.923 2l3.574 6.136 6.94 1.503-4.731 5.296L18.42 22z"/>
</g>
</symbol><symbol id="icon-a-ic-mask-load" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h32v32H0z"/>
<path fill="#434343" d="M18.01 4a11.798 11.798 0 0 0 0 1H3v24h24V14.986a8.738 8.738 0 0 0 1 0V29a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h15.01zM15 23a6 6 0 1 1 0-12 6 6 0 0 1 0 12zm0-1a5 5 0 1 0 0-10 5 5 0 0 0 0 10z"/>
<path fill="#434343" d="M25 3h1v9h-1z"/>
<path stroke="#434343" d="M22 6l3.5-3.5L29 6"/>
</g>
</symbol><symbol id="icon-a-ic-mask" viewBox="0 0 24 24">
<g fill="none">
<circle cx="12" cy="12" r="4.5" stroke="#434343"/>
<path fill="#434343" d="M2 1h20a1 1 0 0 1 1 1v20a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zm0 1v20h20V2H2z"/>
</g>
</symbol><symbol id="icon-a-ic-redo" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h24v24H0z" opacity=".5"/>
<path fill="#434343" d="M21 6H9a6 6 0 1 0 0 12h12v1H9A7 7 0 0 1 9 5h12v1z"/>
<path stroke="#434343" stroke-linecap="square" d="M19 3l2.5 2.5L19 8"/>
</g>
</symbol><symbol id="icon-a-ic-reset" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h24v24H0z" opacity=".5"/>
<path fill="#434343" d="M2 13v-1a7 7 0 0 1 7-7h13v1h-1v5h1v1a7 7 0 0 1-7 7H2v-1h1v-5H2zm7-7a6 6 0 0 0-6 6v6h12a6 6 0 0 0 6-6V6H9z"/>
<path stroke="#434343" stroke-linecap="square" d="M19 3l2.5 2.5L19 8M5 16l-2.5 2.5L5 21"/>
</g>
</symbol><symbol id="icon-a-ic-rotate-clockwise" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path fill="#434343" d="M29 17h-.924c0 6.627-5.373 12-12 12-6.628 0-12-5.373-12-12C4.076 10.398 9.407 5.041 16 5V4C8.82 4 3 9.82 3 17s5.82 13 13 13 13-5.82 13-13z"/>
<path stroke="#434343" stroke-linecap="square" d="M16 1.5l4 3-4 3"/>
<path fill="#434343" fill-rule="nonzero" d="M16 4h4v1h-4z"/>
</g>
</symbol><symbol id="icon-a-ic-rotate-counterclockwise" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path fill="#434343" d="M3 17h.924c0 6.627 5.373 12 12 12 6.628 0 12-5.373 12-12 0-6.602-5.331-11.96-11.924-12V4c7.18 0 13 5.82 13 13s-5.82 13-13 13S3 24.18 3 17z"/>
<path fill="#434343" fill-rule="nonzero" d="M12 4h4v1h-4z"/>
<path stroke="#434343" stroke-linecap="square" d="M16 1.5l-4 3 4 3"/>
</g>
</symbol><symbol id="icon-a-ic-rotate" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h24v24H0z"/>
<path fill="#434343" d="M8.349 22.254a10.002 10.002 0 0 1-2.778-1.719l.65-.76a9.002 9.002 0 0 0 2.495 1.548l-.367.931zm2.873.704l.078-.997a9 9 0 1 0-.557-17.852l-.14-.99A10.076 10.076 0 0 1 12.145 3c5.523 0 10 4.477 10 10s-4.477 10-10 10c-.312 0-.62-.014-.924-.042zm-7.556-4.655a9.942 9.942 0 0 1-1.253-2.996l.973-.234a8.948 8.948 0 0 0 1.124 2.693l-.844.537zm-1.502-5.91A9.949 9.949 0 0 1 2.88 9.23l.925.382a8.954 8.954 0 0 0-.644 2.844l-.998-.062zm2.21-5.686c.687-.848 1.51-1.58 2.436-2.166l.523.852a9.048 9.048 0 0 0-2.188 1.95l-.771-.636z"/>
<path stroke="#434343" stroke-linecap="square" d="M13 1l-2.5 2.5L13 6"/>
</g>
</symbol><symbol id="icon-a-ic-shape-circle" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<circle cx="16" cy="16" r="14.5" stroke="#434343"/>
</g>
</symbol><symbol id="icon-a-ic-shape-rectangle" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<rect width="27" height="27" x="2.5" y="2.5" stroke="#434343" rx="1"/>
</g>
</symbol><symbol id="icon-a-ic-shape-triangle" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#434343" stroke-linecap="round" stroke-linejoin="round" d="M16 2.5l15.5 27H.5z"/>
</g>
</symbol><symbol id="icon-a-ic-shape" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path fill="#434343" d="M14.706 8H21a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H9a1 1 0 0 1-1-1v-4h1v4h12V9h-5.706l-.588-1z"/>
<path stroke="#434343" stroke-linecap="round" stroke-linejoin="round" d="M8.5 1.5l7.5 13H1z"/>
</g>
</symbol><symbol id="icon-a-ic-text-align-center" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h32v32H0z"/>
<path fill="#434343" d="M2 5h28v1H2zM8 12h16v1H8zM2 19h28v1H2zM8 26h16v1H8z"/>
</g>
</symbol><symbol id="icon-a-ic-text-align-left" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h32v32H0z"/>
<path fill="#434343" d="M2 5h28v1H2zM2 12h16v1H2zM2 19h28v1H2zM2 26h16v1H2z"/>
</g>
</symbol><symbol id="icon-a-ic-text-align-right" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h32v32H0z"/>
<path fill="#434343" d="M2 5h28v1H2zM14 12h16v1H14zM2 19h28v1H2zM14 26h16v1H14z"/>
</g>
</symbol><symbol id="icon-a-ic-text-bold" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h32v32H0z"/>
<path fill="#434343" d="M7 2h2v2H7zM7 28h2v2H7z"/>
<path stroke="#434343" stroke-width="2" d="M9 3v12h9a6 6 0 1 0 0-12H9zM9 15v14h10a7 7 0 0 0 0-14H9z"/>
</g>
</symbol><symbol id="icon-a-ic-text-italic" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h32v32H0z"/>
<path fill="#434343" d="M15 2h5v1h-5zM11 29h5v1h-5zM17 3h1l-4 26h-1z"/>
</g>
</symbol><symbol id="icon-a-ic-text-underline" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h32v32H0z"/>
<path fill="#434343" d="M8 2v14a8 8 0 1 0 16 0V2h1v14a9 9 0 0 1-18 0V2h1zM3 29h26v1H3z"/>
<path fill="#434343" d="M5 2h5v1H5zM22 2h5v1h-5z"/>
</g>
</symbol><symbol id="icon-a-ic-text" viewBox="0 0 24 24">
<g fill="#434343" fill-rule="evenodd">
<path d="M4 3h15a1 1 0 0 1 1 1H3a1 1 0 0 1 1-1zM3 4h1v1H3zM19 4h1v1h-1z"/>
<path d="M11 3h1v18h-1z"/>
<path d="M10 20h3v1h-3z"/>
</g>
</symbol><symbol id="icon-a-ic-undo" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M24 0H0v24h24z" opacity=".5"/>
<path fill="#434343" d="M3 6h12a6 6 0 1 1 0 12H3v1h12a7 7 0 0 0 0-14H3v1z"/>
<path stroke="#434343" stroke-linecap="square" d="M5 3L2.5 5.5 5 8"/>
</g>
</symbol><symbol id="icon-a-img-bi" viewBox="0 0 257 26">
<g fill="#FDBA3B">
<path d="M26 5a8.001 8.001 0 0 0 0 16 8.001 8.001 0 0 0 0-16M51.893 19.812L43.676 5.396A.78.78 0 0 0 43 5a.78.78 0 0 0-.677.396l-8.218 14.418a.787.787 0 0 0 0 .792c.14.244.396.394.676.394h16.436c.28 0 .539-.15.678-.396a.796.796 0 0 0-.002-.792M15.767 5.231A.79.79 0 0 0 15.21 5H.791A.791.791 0 0 0 0 5.79v6.42a.793.793 0 0 0 .791.79h3.21v7.21c.001.21.082.408.234.56.147.148.347.23.558.23h6.416a.788.788 0 0 0 .792-.79V13h3.006c.413 0 .611-.082.762-.232.15-.149.23-.35.231-.559V5.791a.787.787 0 0 0-.233-.56M85.767 5.231A.79.79 0 0 0 85.21 5H70.791a.791.791 0 0 0-.791.79v6.42a.793.793 0 0 0 .791.79h3.21v7.21c.001.21.082.408.234.56.147.148.347.23.558.23h6.416a.788.788 0 0 0 .792-.79V13h3.006c.413 0 .611-.082.762-.232.15-.149.23-.35.231-.559V5.791a.787.787 0 0 0-.233-.56M65.942 9.948l2.17-3.76a.78.78 0 0 0 0-.792.791.791 0 0 0-.684-.396h-8.54A5.889 5.889 0 0 0 53 10.86a5.887 5.887 0 0 0 3.07 5.17l-2.184 3.782A.792.792 0 0 0 54.571 21h8.54a5.89 5.89 0 0 0 2.831-11.052M105.7 21h2.3V5h-2.3zM91 5h2.4v10.286c0 1.893 1.612 3.429 3.6 3.429s3.6-1.536 3.6-3.429V5h2.4v10.286c0 3.156-2.686 5.714-6 5.714-3.313 0-6-2.558-6-5.714V5zM252.148 21.128h-2.377V9.659h2.27v1.64c.69-1.299 1.792-1.938 3.304-1.938.497 0 .95.065 1.382.192l-.215 2.277a3.734 3.734 0 0 0-1.275-.213c-1.814 0-3.089 1.234-3.089 3.638v5.873zm-7.095-5.744a3.734 3.734 0 0 0-1.101-2.703c-.714-.766-1.6-1.149-2.658-1.149-1.058 0-1.944.383-2.679 1.149a3.803 3.803 0 0 0-1.08 2.703c0 1.063.368 1.978 1.08 2.722.735.746 1.62 1.128 2.68 1.128 1.058 0 1.943-.382 2.657-1.128.734-.744 1.101-1.659 1.101-2.722zm-9.916 0c0-1.682.583-3.086 1.729-4.256 1.166-1.17 2.635-1.767 4.428-1.767 1.793 0 3.262.597 4.407 1.767 1.167 1.17 1.75 2.574 1.75 4.256 0 1.7-.583 3.127-1.75 4.297-1.145 1.17-2.614 1.745-4.407 1.745-1.793 0-3.262-.575-4.428-1.745-1.146-1.17-1.729-2.596-1.729-4.297zm-1.5 3.233l.821 1.83c-.864.638-1.944.958-3.22.958-2.526 0-3.822-1.554-3.822-4.383V11.66h-2.01v-2h2.031V5.595h2.355v4.063h4.018v2h-4.018v5.405c0 1.469.605 2.191 1.793 2.191.626 0 1.318-.212 2.052-.638zm-12.43 2.51h2.375V9.66h-2.376v11.469zm1.23-12.977c-.929 0-1.642-.682-1.642-1.596 0-.873.713-1.554 1.643-1.554.885 0 1.576.681 1.576 1.554 0 .914-.69 1.596-1.576 1.596zm-6.49 7.234c0-1.086-.346-1.98-1.037-2.724-.692-.745-1.599-1.128-2.7-1.128-1.102 0-2.01.383-2.7 1.128-.692.744-1.037 1.638-1.037 2.724 0 1.084.345 2.02 1.036 2.766.691.744 1.6 1.105 2.7 1.105 1.102 0 2.01-.361 2.7-1.105.692-.746 1.038-1.682 1.038-2.766zm-.173-4.129V5h2.397v16.128h-2.354v-1.596c-1.015 1.255-2.333 1.873-3.91 1.873-1.663 0-3.068-.575-4.169-1.724-1.102-1.17-1.663-2.596-1.663-4.297 0-1.682.561-3.107 1.663-4.256 1.101-1.17 2.485-1.745 4.148-1.745 1.534 0 2.83.617 3.888 1.872zm-11.48 9.873h-10.218V5.405h10.195v2.318h-7.711V12h7.15v2.32h-7.15v4.489h7.733v2.319zm-23.891-9.724c-1.793 0-3.132 1.192-3.478 2.979h6.783c-.194-1.808-1.555-2.979-3.305-2.979zm5.703 3.766c0 .32-.021.703-.086 1.128h-9.095c.346 1.787 1.62 3 3.867 3 1.318 0 2.916-.49 3.953-1.234l.994 1.724c-1.189.872-3.067 1.595-5.033 1.595-4.364 0-6.243-3-6.243-6.021 0-1.724.54-3.15 1.642-4.277 1.101-1.127 2.548-1.702 4.298-1.702 1.664 0 3.046.511 4.105 1.553 1.058 1.043 1.598 2.447 1.598 4.234zm-19.949 3.894c1.08 0 1.966-.362 2.68-1.085.712-.724 1.058-1.617 1.058-2.703 0-1.084-.346-2-1.059-2.701-.713-.702-1.599-1.064-2.679-1.064-1.058 0-1.944.362-2.656 1.085-.714.702-1.059 1.596-1.059 2.68 0 1.086.345 2 1.059 2.724.712.702 1.598 1.064 2.656 1.064zm3.673-7.936V9.66h2.29v10.299c0 1.85-.584 3.32-1.728 4.404-1.146 1.085-2.68 1.638-4.58 1.638-1.945 0-3.672-.553-5.206-1.638l1.037-1.808c1.296.915 2.679 1.36 4.126 1.36 2.484 0 3.996-1.51 3.996-3.637v-.83c-1.015 1.127-2.311 1.702-3.91 1.702-1.684 0-3.089-.554-4.19-1.68-1.102-1.128-1.642-2.532-1.642-4.214 0-1.68.561-3.085 1.706-4.191 1.145-1.128 2.571-1.681 4.234-1.681 1.534 0 2.83.575 3.867 1.745zm-18.07 8.127c1.102 0 1.988-.382 2.7-1.128.714-.744 1.06-1.659 1.06-2.743 0-1.065-.346-1.98-1.06-2.724-.712-.745-1.598-1.128-2.7-1.128-1.101 0-2.008.383-2.7 1.128-.691.744-1.036 1.66-1.036 2.745 0 1.084.345 2 1.037 2.745.691.744 1.598 1.105 2.7 1.105zm3.652-8V9.66h2.29v11.469h-2.29v-1.575c-1.059 1.234-2.399 1.852-3.976 1.852-1.663 0-3.067-.575-4.168-1.745-1.102-1.17-1.642-2.617-1.642-4.34 0-1.724.54-3.128 1.642-4.256 1.1-1.128 2.505-1.681 4.168-1.681 1.577 0 2.917.617 3.976 1.872zM138.79 9.34c1.404 0 2.527.448 3.37 1.34.863.873 1.295 2.086 1.295 3.596v6.852h-2.376V14.66c0-2.021-1.036-3.128-2.657-3.128-1.727 0-2.915 1.255-2.915 3.192v6.404h-2.377v-6.426c0-1.978-1.037-3.17-2.679-3.17-1.728 0-2.937 1.277-2.937 3.234v6.362h-2.377V9.659h2.333v1.66c.692-1.212 1.988-1.979 3.522-1.979 1.533.021 2.958.767 3.586 2.107.798-1.277 2.419-2.107 4.212-2.107zm-19.517 11.788h2.484V5.405h-2.484v15.723z"/>
</g>
</symbol></svg>

After

Width:  |  Height:  |  Size: 20 KiB

224
core/vendor/filemanager/svg/icon-b.svg vendored Normal file
View File

@ -0,0 +1,224 @@
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><defs/><symbol id="icon-b-ic-apply" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h24v24H0z"/>
<path stroke="#555555" d="M4 12.011l5 5L20.011 6"/>
</g>
</symbol><symbol id="icon-b-ic-cancel" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h24v24H0z"/>
<path stroke="#555555" d="M6 6l12 12M18 6L6 18"/>
</g>
</symbol><symbol id="icon-b-ic-crop" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h24v24H0z"/>
<path fill="#555555" d="M4 0h1v20a1 1 0 0 1-1-1V0zM20 17h-1V5h1v12zm0 2v5h-1v-5h1z"/>
<path fill="#555555" d="M5 19h19v1H5zM4.762 4v1H0V4h4.762zM7 4h12a1 1 0 0 1 1 1H7V4z"/>
</g>
</symbol><symbol id="icon-b-ic-delete-all" viewBox="0 0 24 24">
<g fill="#555555" fill-rule="evenodd">
<path d="M5 23H3a1 1 0 0 1-1-1V6h1v16h2v1zm16-10h-1V6h1v7zM9 13H8v-3h1v3zm3 0h-1v-3h1v3zm3 0h-1v-3h1v3zM14.794 3.794L13 2h-3L8.206 3.794A.963.963 0 0 1 8 2.5l.703-1.055A1 1 0 0 1 9.535 1h3.93a1 1 0 0 1 .832.445L15 2.5a.965.965 0 0 1-.206 1.294zM14.197 4H8.803h5.394z"/>
<path d="M0 3h23v1H0zM11.286 21H8.714L8 23H7l1-2.8V20h.071L9.5 16h1l1.429 4H12v.2l1 2.8h-1l-.714-2zm-.357-1L10 17.4 9.071 20h1.858zM20 22h3v1h-4v-7h1v6zm-5 0h3v1h-4v-7h1v6z"/>
</g>
</symbol><symbol id="icon-b-ic-delete" viewBox="0 0 24 24">
<g fill="#555555" fill-rule="evenodd">
<path d="M3 6v16h17V6h1v16a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V6h1zM14.794 3.794L13 2h-3L8.206 3.794A.963.963 0 0 1 8 2.5l.703-1.055A1 1 0 0 1 9.535 1h3.93a1 1 0 0 1 .832.445L15 2.5a.965.965 0 0 1-.206 1.294zM14.197 4H8.803h5.394z"/>
<path d="M0 3h23v1H0zM8 10h1v6H8v-6zm3 0h1v6h-1v-6zm3 0h1v6h-1v-6z"/>
</g>
</symbol><symbol id="icon-b-ic-draw-free" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#555555" d="M2.5 20.929C2.594 10.976 4.323 6 7.686 6c5.872 0 2.524 19 7.697 19s1.89-14.929 6.414-14.929 1.357 10.858 5.13 10.858c1.802 0 2.657-2.262 2.566-6.786"/>
</g>
</symbol><symbol id="icon-b-ic-draw-line" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#555555" d="M2 15.5h28"/>
</g>
</symbol><symbol id="icon-b-ic-draw" viewBox="0 0 24 24">
<g fill="none">
<path stroke="#555555" d="M2.5 21.5H5c.245 0 .48-.058.691-.168l.124-.065.14.01c.429.028.85-.127 1.16-.437L22.55 5.405a.5.5 0 0 0 0-.707l-3.246-3.245a.5.5 0 0 0-.707 0L3.162 16.888a1.495 1.495 0 0 0-.437 1.155l.01.14-.065.123c-.111.212-.17.448-.17.694v2.5z"/>
<path fill="#555555" d="M16.414 3.707l3.89 3.89-.708.706-3.889-3.889z"/>
</g>
</symbol><symbol id="icon-b-ic-filter" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h24v24H0z"/>
<path fill="#555555" d="M12 7v1H2V7h10zm6 0h4v1h-4V7zM12 16v1h10v-1H12zm-6 0H2v1h4v-1z"/>
<path fill="#555555" d="M8.5 20a3.5 3.5 0 1 1 0-7 3.5 3.5 0 0 1 0 7zm0-1a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5zM15.5 11a3.5 3.5 0 1 1 0-7 3.5 3.5 0 0 1 0 7zm0-1a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5z"/>
</g>
</symbol><symbol id="icon-b-ic-flip-reset" viewBox="0 0 31 32">
<g fill="none" fill-rule="evenodd">
<path d="M31 0H0v32h31z"/>
<path fill="#555555" d="M28 16a8 8 0 0 1-8 8H3v-1h1v-7H3a8 8 0 0 1 8-8h17v1h-1v7h1zM11 9a7 7 0 0 0-7 7v7h16a7 7 0 0 0 7-7V9H11z"/>
<path stroke="#555555" stroke-linecap="square" d="M24 5l3.5 3.5L24 12M7 20l-3.5 3.5L7 27"/>
</g>
</symbol><symbol id="icon-b-ic-flip-x" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M32 32H0V0h32z"/>
<path fill="#555555" d="M17 32h-1V0h1zM27.167 11l.5 3h-1.03l-.546-3h1.076zm-.5-3h-1.122L25 5h-5V4h5.153a1 1 0 0 1 .986.836L26.667 8zm1.5 9l.5 3h-.94l-.545-3h.985zm1 6l.639 3.836A1 1 0 0 1 28.819 28H26v-1h3l-.726-4h.894zM23 28h-3v-1h3v1zM13 4v1H7L3 27h10v1H3.18a1 1 0 0 1-.986-1.164l3.666-22A1 1 0 0 1 6.847 4H13z"/>
</g>
</symbol><symbol id="icon-b-ic-flip-y" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M0 0v32h32V0z"/>
<path fill="#555555" d="M0 16v1h32v-1zM11 27.167l3 .5v-1.03l-3-.546v1.076zm-3-.5v-1.122L5 25v-5H4v5.153a1 1 0 0 0 .836.986L8 26.667zm9 1.5l3 .5v-.94l-3-.545v.985zm6 1l3.836.639A1 1 0 0 0 28 28.82V26h-1v3l-4-.727v.894zM28 23v-3h-1v3h1zM4 13h1V7l22-4v10h1V3.18a1 1 0 0 0-1.164-.986l-22 3.667A1 1 0 0 0 4 6.847V13z"/>
</g>
</symbol><symbol id="icon-b-ic-flip" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h24v24H0z"/>
<path fill="#555555" d="M11 0h1v24h-1zM19 21v-1h2v-2h1v2a1 1 0 0 1-1 1h-2zm-2 0h-3v-1h3v1zm5-5h-1v-3h1v3zm0-5h-1V8h1v3zm0-5h-1V4h-2V3h2a1 1 0 0 1 1 1v2zm-5-3v1h-3V3h3zM9 3v1H2v16h7v1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h7z"/>
</g>
</symbol><symbol id="icon-b-ic-icon-arrow-2" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#555555" stroke-linecap="round" stroke-linejoin="round" d="M21.793 18.5H2.5v-5h18.935l-7.6-8h5.872l10.5 10.5-10.5 10.5h-5.914l8-8z"/>
</g>
</symbol><symbol id="icon-b-ic-icon-arrow-3" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#555555" stroke-linecap="round" stroke-linejoin="round" d="M25.288 16.42L14.208 27.5H6.792l11.291-11.291L6.826 4.5h7.381l11.661 11.661-.58.258z"/>
</g>
</symbol><symbol id="icon-b-ic-icon-arrow" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#555555" d="M2.5 11.5v9h18v5.293L30.293 16 20.5 6.207V11.5h-18z"/>
</g>
</symbol><symbol id="icon-b-ic-icon-bubble" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#555555" stroke-linecap="round" stroke-linejoin="round" d="M22.207 24.5L16.5 30.207V24.5H8A6.5 6.5 0 0 1 1.5 18V9A6.5 6.5 0 0 1 8 2.5h16A6.5 6.5 0 0 1 30.5 9v9a6.5 6.5 0 0 1-6.5 6.5h-1.793z"/>
</g>
</symbol><symbol id="icon-b-ic-icon-heart" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path fill-rule="nonzero" stroke="#555555" d="M15.996 30.675l1.981-1.79c7.898-7.177 10.365-9.718 12.135-13.012.922-1.716 1.377-3.37 1.377-5.076 0-4.65-3.647-8.297-8.297-8.297-2.33 0-4.86 1.527-6.817 3.824l-.38.447-.381-.447C13.658 4.027 11.126 2.5 8.797 2.5 4.147 2.5.5 6.147.5 10.797c0 1.714.46 3.375 1.389 5.098 1.775 3.288 4.26 5.843 12.123 12.974l1.984 1.806z"/>
</g>
</symbol><symbol id="icon-b-ic-icon-load" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#555555" stroke-linecap="round" stroke-linejoin="round" d="M17.314 18.867l1.951-2.53 4 5.184h-17l6.5-8.84 4.549 6.186z"/>
<path fill="#555555" d="M18.01 4a11.798 11.798 0 0 0 0 1H3v24h24V14.986a8.738 8.738 0 0 0 1 0V29a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h15.01z"/>
<path fill="#555555" d="M25 3h1v9h-1z"/>
<path stroke="#555555" d="M22 6l3.5-3.5L29 6"/>
</g>
</symbol><symbol id="icon-b-ic-icon-location" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<g stroke="#555555">
<path d="M16 31.28C23.675 23.302 27.5 17.181 27.5 13c0-6.351-5.149-11.5-11.5-11.5S4.5 6.649 4.5 13c0 4.181 3.825 10.302 11.5 18.28z"/>
<circle cx="16" cy="13" r="4.5"/>
</g>
</g>
</symbol><symbol id="icon-b-ic-icon-polygon" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#555555" d="M.576 16L8.29 29.5h15.42L31.424 16 23.71 2.5H8.29L.576 16z"/>
</g>
</symbol><symbol id="icon-b-ic-icon-star-2" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#555555" d="M19.446 31.592l2.265-3.272 3.946.25.636-3.94 3.665-1.505-1.12-3.832 2.655-2.962-2.656-2.962 1.12-3.832-3.664-1.505-.636-3.941-3.946.25-2.265-3.271L16 3.024 12.554 1.07 10.289 4.34l-3.946-.25-.636 3.941-3.665 1.505 1.12 3.832L.508 16.33l2.656 2.962-1.12 3.832 3.664 1.504.636 3.942 3.946-.25 2.265 3.27L16 29.638l3.446 1.955z"/>
</g>
</symbol><symbol id="icon-b-ic-icon-star" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#555555" d="M25.292 29.878l-1.775-10.346 7.517-7.327-10.388-1.51L16 1.282l-4.646 9.413-10.388 1.51 7.517 7.327-1.775 10.346L16 24.993l9.292 4.885z"/>
</g>
</symbol><symbol id="icon-b-ic-icon" viewBox="0 0 24 24">
<g fill="none">
<path stroke="#555555" stroke-linecap="round" stroke-linejoin="round" d="M11.923 19.136L5.424 22l.715-7.065-4.731-5.296 6.94-1.503L11.923 2l3.574 6.136 6.94 1.503-4.731 5.296L18.42 22z"/>
</g>
</symbol><symbol id="icon-b-ic-mask-load" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h32v32H0z"/>
<path fill="#555555" d="M18.01 4a11.798 11.798 0 0 0 0 1H3v24h24V14.986a8.738 8.738 0 0 0 1 0V29a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h15.01zM15 23a6 6 0 1 1 0-12 6 6 0 0 1 0 12zm0-1a5 5 0 1 0 0-10 5 5 0 0 0 0 10z"/>
<path fill="#555555" d="M25 3h1v9h-1z"/>
<path stroke="#555555" d="M22 6l3.5-3.5L29 6"/>
</g>
</symbol><symbol id="icon-b-ic-mask" viewBox="0 0 24 24">
<g fill="none">
<circle cx="12" cy="12" r="4.5" stroke="#555555"/>
<path fill="#555555" d="M2 1h20a1 1 0 0 1 1 1v20a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zm0 1v20h20V2H2z"/>
</g>
</symbol><symbol id="icon-b-ic-redo" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h24v24H0z" opacity=".5"/>
<path fill="#555555" d="M21 6H9a6 6 0 1 0 0 12h12v1H9A7 7 0 0 1 9 5h12v1z"/>
<path stroke="#555555" stroke-linecap="square" d="M19 3l2.5 2.5L19 8"/>
</g>
</symbol><symbol id="icon-b-ic-reset" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h24v24H0z" opacity=".5"/>
<path fill="#555555" d="M2 13v-1a7 7 0 0 1 7-7h13v1h-1v5h1v1a7 7 0 0 1-7 7H2v-1h1v-5H2zm7-7a6 6 0 0 0-6 6v6h12a6 6 0 0 0 6-6V6H9z"/>
<path stroke="#555555" stroke-linecap="square" d="M19 3l2.5 2.5L19 8M5 16l-2.5 2.5L5 21"/>
</g>
</symbol><symbol id="icon-b-ic-rotate-clockwise" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path fill="#555555" d="M29 17h-.924c0 6.627-5.373 12-12 12-6.628 0-12-5.373-12-12C4.076 10.398 9.407 5.041 16 5V4C8.82 4 3 9.82 3 17s5.82 13 13 13 13-5.82 13-13z"/>
<path stroke="#555555" stroke-linecap="square" d="M16 1.5l4 3-4 3"/>
<path fill="#555555" fill-rule="nonzero" d="M16 4h4v1h-4z"/>
</g>
</symbol><symbol id="icon-b-ic-rotate-counterclockwise" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path fill="#555555" d="M3 17h.924c0 6.627 5.373 12 12 12 6.628 0 12-5.373 12-12 0-6.602-5.331-11.96-11.924-12V4c7.18 0 13 5.82 13 13s-5.82 13-13 13S3 24.18 3 17z"/>
<path fill="#555555" fill-rule="nonzero" d="M12 4h4v1h-4z"/>
<path stroke="#555555" stroke-linecap="square" d="M16 1.5l-4 3 4 3"/>
</g>
</symbol><symbol id="icon-b-ic-rotate" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h24v24H0z"/>
<path fill="#555555" d="M8.349 22.254a10.002 10.002 0 0 1-2.778-1.719l.65-.76a9.002 9.002 0 0 0 2.495 1.548l-.367.931zm2.873.704l.078-.997a9 9 0 1 0-.557-17.852l-.14-.99A10.076 10.076 0 0 1 12.145 3c5.523 0 10 4.477 10 10s-4.477 10-10 10c-.312 0-.62-.014-.924-.042zm-7.556-4.655a9.942 9.942 0 0 1-1.253-2.996l.973-.234a8.948 8.948 0 0 0 1.124 2.693l-.844.537zm-1.502-5.91A9.949 9.949 0 0 1 2.88 9.23l.925.382a8.954 8.954 0 0 0-.644 2.844l-.998-.062zm2.21-5.686c.687-.848 1.51-1.58 2.436-2.166l.523.852a9.048 9.048 0 0 0-2.188 1.95l-.771-.636z"/>
<path stroke="#555555" stroke-linecap="square" d="M13 1l-2.5 2.5L13 6"/>
</g>
</symbol><symbol id="icon-b-ic-shape-circle" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<circle cx="16" cy="16" r="14.5" stroke="#555555"/>
</g>
</symbol><symbol id="icon-b-ic-shape-rectangle" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<rect width="27" height="27" x="2.5" y="2.5" stroke="#555555" rx="1"/>
</g>
</symbol><symbol id="icon-b-ic-shape-triangle" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#555555" stroke-linecap="round" stroke-linejoin="round" d="M16 2.5l15.5 27H.5z"/>
</g>
</symbol><symbol id="icon-b-ic-shape" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path fill="#555555" d="M14.706 8H21a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H9a1 1 0 0 1-1-1v-4h1v4h12V9h-5.706l-.588-1z"/>
<path stroke="#555555" stroke-linecap="round" stroke-linejoin="round" d="M8.5 1.5l7.5 13H1z"/>
</g>
</symbol><symbol id="icon-b-ic-text-align-center" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h32v32H0z"/>
<path fill="#555555" d="M2 5h28v1H2zM8 12h16v1H8zM2 19h28v1H2zM8 26h16v1H8z"/>
</g>
</symbol><symbol id="icon-b-ic-text-align-left" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h32v32H0z"/>
<path fill="#555555" d="M2 5h28v1H2zM2 12h16v1H2zM2 19h28v1H2zM2 26h16v1H2z"/>
</g>
</symbol><symbol id="icon-b-ic-text-align-right" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h32v32H0z"/>
<path fill="#555555" d="M2 5h28v1H2zM14 12h16v1H14zM2 19h28v1H2zM14 26h16v1H14z"/>
</g>
</symbol><symbol id="icon-b-ic-text-bold" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h32v32H0z"/>
<path fill="#555555" d="M7 2h2v2H7zM7 28h2v2H7z"/>
<path stroke="#555555" stroke-width="2" d="M9 3v12h9a6 6 0 1 0 0-12H9zM9 15v14h10a7 7 0 0 0 0-14H9z"/>
</g>
</symbol><symbol id="icon-b-ic-text-italic" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h32v32H0z"/>
<path fill="#555555" d="M15 2h5v1h-5zM11 29h5v1h-5zM17 3h1l-4 26h-1z"/>
</g>
</symbol><symbol id="icon-b-ic-text-underline" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h32v32H0z"/>
<path fill="#555555" d="M8 2v14a8 8 0 1 0 16 0V2h1v14a9 9 0 0 1-18 0V2h1zM3 29h26v1H3z"/>
<path fill="#555555" d="M5 2h5v1H5zM22 2h5v1h-5z"/>
</g>
</symbol><symbol id="icon-b-ic-text" viewBox="0 0 24 24">
<g fill="#555555" fill-rule="evenodd">
<path d="M4 3h15a1 1 0 0 1 1 1H3a1 1 0 0 1 1-1zM3 4h1v1H3zM19 4h1v1h-1z"/>
<path d="M11 3h1v18h-1z"/>
<path d="M10 20h3v1h-3z"/>
</g>
</symbol><symbol id="icon-b-ic-undo" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M24 0H0v24h24z" opacity=".5"/>
<path fill="#555555" d="M3 6h12a6 6 0 1 1 0 12H3v1h12a7 7 0 0 0 0-14H3v1z"/>
<path stroke="#555555" stroke-linecap="square" d="M5 3L2.5 5.5 5 8"/>
</g>
</symbol><symbol id="icon-b-img-bi" viewBox="0 0 257 26">
<g fill="#FDBA3B">
<path d="M26 5a8.001 8.001 0 0 0 0 16 8.001 8.001 0 0 0 0-16M51.893 19.812L43.676 5.396A.78.78 0 0 0 43 5a.78.78 0 0 0-.677.396l-8.218 14.418a.787.787 0 0 0 0 .792c.14.244.396.394.676.394h16.436c.28 0 .539-.15.678-.396a.796.796 0 0 0-.002-.792M15.767 5.231A.79.79 0 0 0 15.21 5H.791A.791.791 0 0 0 0 5.79v6.42a.793.793 0 0 0 .791.79h3.21v7.21c.001.21.082.408.234.56.147.148.347.23.558.23h6.416a.788.788 0 0 0 .792-.79V13h3.006c.413 0 .611-.082.762-.232.15-.149.23-.35.231-.559V5.791a.787.787 0 0 0-.233-.56M85.767 5.231A.79.79 0 0 0 85.21 5H70.791a.791.791 0 0 0-.791.79v6.42a.793.793 0 0 0 .791.79h3.21v7.21c.001.21.082.408.234.56.147.148.347.23.558.23h6.416a.788.788 0 0 0 .792-.79V13h3.006c.413 0 .611-.082.762-.232.15-.149.23-.35.231-.559V5.791a.787.787 0 0 0-.233-.56M65.942 9.948l2.17-3.76a.78.78 0 0 0 0-.792.791.791 0 0 0-.684-.396h-8.54A5.889 5.889 0 0 0 53 10.86a5.887 5.887 0 0 0 3.07 5.17l-2.184 3.782A.792.792 0 0 0 54.571 21h8.54a5.89 5.89 0 0 0 2.831-11.052M105.7 21h2.3V5h-2.3zM91 5h2.4v10.286c0 1.893 1.612 3.429 3.6 3.429s3.6-1.536 3.6-3.429V5h2.4v10.286c0 3.156-2.686 5.714-6 5.714-3.313 0-6-2.558-6-5.714V5zM252.148 21.128h-2.377V9.659h2.27v1.64c.69-1.299 1.792-1.938 3.304-1.938.497 0 .95.065 1.382.192l-.215 2.277a3.734 3.734 0 0 0-1.275-.213c-1.814 0-3.089 1.234-3.089 3.638v5.873zm-7.095-5.744a3.734 3.734 0 0 0-1.101-2.703c-.714-.766-1.6-1.149-2.658-1.149-1.058 0-1.944.383-2.679 1.149a3.803 3.803 0 0 0-1.08 2.703c0 1.063.368 1.978 1.08 2.722.735.746 1.62 1.128 2.68 1.128 1.058 0 1.943-.382 2.657-1.128.734-.744 1.101-1.659 1.101-2.722zm-9.916 0c0-1.682.583-3.086 1.729-4.256 1.166-1.17 2.635-1.767 4.428-1.767 1.793 0 3.262.597 4.407 1.767 1.167 1.17 1.75 2.574 1.75 4.256 0 1.7-.583 3.127-1.75 4.297-1.145 1.17-2.614 1.745-4.407 1.745-1.793 0-3.262-.575-4.428-1.745-1.146-1.17-1.729-2.596-1.729-4.297zm-1.5 3.233l.821 1.83c-.864.638-1.944.958-3.22.958-2.526 0-3.822-1.554-3.822-4.383V11.66h-2.01v-2h2.031V5.595h2.355v4.063h4.018v2h-4.018v5.405c0 1.469.605 2.191 1.793 2.191.626 0 1.318-.212 2.052-.638zm-12.43 2.51h2.375V9.66h-2.376v11.469zm1.23-12.977c-.929 0-1.642-.682-1.642-1.596 0-.873.713-1.554 1.643-1.554.885 0 1.576.681 1.576 1.554 0 .914-.69 1.596-1.576 1.596zm-6.49 7.234c0-1.086-.346-1.98-1.037-2.724-.692-.745-1.599-1.128-2.7-1.128-1.102 0-2.01.383-2.7 1.128-.692.744-1.037 1.638-1.037 2.724 0 1.084.345 2.02 1.036 2.766.691.744 1.6 1.105 2.7 1.105 1.102 0 2.01-.361 2.7-1.105.692-.746 1.038-1.682 1.038-2.766zm-.173-4.129V5h2.397v16.128h-2.354v-1.596c-1.015 1.255-2.333 1.873-3.91 1.873-1.663 0-3.068-.575-4.169-1.724-1.102-1.17-1.663-2.596-1.663-4.297 0-1.682.561-3.107 1.663-4.256 1.101-1.17 2.485-1.745 4.148-1.745 1.534 0 2.83.617 3.888 1.872zm-11.48 9.873h-10.218V5.405h10.195v2.318h-7.711V12h7.15v2.32h-7.15v4.489h7.733v2.319zm-23.891-9.724c-1.793 0-3.132 1.192-3.478 2.979h6.783c-.194-1.808-1.555-2.979-3.305-2.979zm5.703 3.766c0 .32-.021.703-.086 1.128h-9.095c.346 1.787 1.62 3 3.867 3 1.318 0 2.916-.49 3.953-1.234l.994 1.724c-1.189.872-3.067 1.595-5.033 1.595-4.364 0-6.243-3-6.243-6.021 0-1.724.54-3.15 1.642-4.277 1.101-1.127 2.548-1.702 4.298-1.702 1.664 0 3.046.511 4.105 1.553 1.058 1.043 1.598 2.447 1.598 4.234zm-19.949 3.894c1.08 0 1.966-.362 2.68-1.085.712-.724 1.058-1.617 1.058-2.703 0-1.084-.346-2-1.059-2.701-.713-.702-1.599-1.064-2.679-1.064-1.058 0-1.944.362-2.656 1.085-.714.702-1.059 1.596-1.059 2.68 0 1.086.345 2 1.059 2.724.712.702 1.598 1.064 2.656 1.064zm3.673-7.936V9.66h2.29v10.299c0 1.85-.584 3.32-1.728 4.404-1.146 1.085-2.68 1.638-4.58 1.638-1.945 0-3.672-.553-5.206-1.638l1.037-1.808c1.296.915 2.679 1.36 4.126 1.36 2.484 0 3.996-1.51 3.996-3.637v-.83c-1.015 1.127-2.311 1.702-3.91 1.702-1.684 0-3.089-.554-4.19-1.68-1.102-1.128-1.642-2.532-1.642-4.214 0-1.68.561-3.085 1.706-4.191 1.145-1.128 2.571-1.681 4.234-1.681 1.534 0 2.83.575 3.867 1.745zm-18.07 8.127c1.102 0 1.988-.382 2.7-1.128.714-.744 1.06-1.659 1.06-2.743 0-1.065-.346-1.98-1.06-2.724-.712-.745-1.598-1.128-2.7-1.128-1.101 0-2.008.383-2.7 1.128-.691.744-1.036 1.66-1.036 2.745 0 1.084.345 2 1.037 2.745.691.744 1.598 1.105 2.7 1.105zm3.652-8V9.66h2.29v11.469h-2.29v-1.575c-1.059 1.234-2.399 1.852-3.976 1.852-1.663 0-3.067-.575-4.168-1.745-1.102-1.17-1.642-2.617-1.642-4.34 0-1.724.54-3.128 1.642-4.256 1.1-1.128 2.505-1.681 4.168-1.681 1.577 0 2.917.617 3.976 1.872zM138.79 9.34c1.404 0 2.527.448 3.37 1.34.863.873 1.295 2.086 1.295 3.596v6.852h-2.376V14.66c0-2.021-1.036-3.128-2.657-3.128-1.727 0-2.915 1.255-2.915 3.192v6.404h-2.377v-6.426c0-1.978-1.037-3.17-2.679-3.17-1.728 0-2.937 1.277-2.937 3.234v6.362h-2.377V9.659h2.333v1.66c.692-1.212 1.988-1.979 3.522-1.979 1.533.021 2.958.767 3.586 2.107.798-1.277 2.419-2.107 4.212-2.107zm-19.517 11.788h2.484V5.405h-2.484v15.723z"/>
</g>
</symbol></svg>

After

Width:  |  Height:  |  Size: 19 KiB

224
core/vendor/filemanager/svg/icon-c.svg vendored Normal file
View File

@ -0,0 +1,224 @@
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><defs/><symbol id="icon-c-ic-apply" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h24v24H0z"/>
<path stroke="#e9e9e9" d="M4 12.011l5 5L20.011 6"/>
</g>
</symbol><symbol id="icon-c-ic-cancel" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h24v24H0z"/>
<path stroke="#e9e9e9" d="M6 6l12 12M18 6L6 18"/>
</g>
</symbol><symbol id="icon-c-ic-crop" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h24v24H0z"/>
<path fill="#e9e9e9" d="M4 0h1v20a1 1 0 0 1-1-1V0zM20 17h-1V5h1v12zm0 2v5h-1v-5h1z"/>
<path fill="#e9e9e9" d="M5 19h19v1H5zM4.762 4v1H0V4h4.762zM7 4h12a1 1 0 0 1 1 1H7V4z"/>
</g>
</symbol><symbol id="icon-c-ic-delete-all" viewBox="0 0 24 24">
<g fill="#e9e9e9" fill-rule="evenodd">
<path d="M5 23H3a1 1 0 0 1-1-1V6h1v16h2v1zm16-10h-1V6h1v7zM9 13H8v-3h1v3zm3 0h-1v-3h1v3zm3 0h-1v-3h1v3zM14.794 3.794L13 2h-3L8.206 3.794A.963.963 0 0 1 8 2.5l.703-1.055A1 1 0 0 1 9.535 1h3.93a1 1 0 0 1 .832.445L15 2.5a.965.965 0 0 1-.206 1.294zM14.197 4H8.803h5.394z"/>
<path d="M0 3h23v1H0zM11.286 21H8.714L8 23H7l1-2.8V20h.071L9.5 16h1l1.429 4H12v.2l1 2.8h-1l-.714-2zm-.357-1L10 17.4 9.071 20h1.858zM20 22h3v1h-4v-7h1v6zm-5 0h3v1h-4v-7h1v6z"/>
</g>
</symbol><symbol id="icon-c-ic-delete" viewBox="0 0 24 24">
<g fill="#e9e9e9" fill-rule="evenodd">
<path d="M3 6v16h17V6h1v16a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V6h1zM14.794 3.794L13 2h-3L8.206 3.794A.963.963 0 0 1 8 2.5l.703-1.055A1 1 0 0 1 9.535 1h3.93a1 1 0 0 1 .832.445L15 2.5a.965.965 0 0 1-.206 1.294zM14.197 4H8.803h5.394z"/>
<path d="M0 3h23v1H0zM8 10h1v6H8v-6zm3 0h1v6h-1v-6zm3 0h1v6h-1v-6z"/>
</g>
</symbol><symbol id="icon-c-ic-draw-free" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#e9e9e9" d="M2.5 20.929C2.594 10.976 4.323 6 7.686 6c5.872 0 2.524 19 7.697 19s1.89-14.929 6.414-14.929 1.357 10.858 5.13 10.858c1.802 0 2.657-2.262 2.566-6.786"/>
</g>
</symbol><symbol id="icon-c-ic-draw-line" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#e9e9e9" d="M2 15.5h28"/>
</g>
</symbol><symbol id="icon-c-ic-draw" viewBox="0 0 24 24">
<g fill="none">
<path stroke="#e9e9e9" d="M2.5 21.5H5c.245 0 .48-.058.691-.168l.124-.065.14.01c.429.028.85-.127 1.16-.437L22.55 5.405a.5.5 0 0 0 0-.707l-3.246-3.245a.5.5 0 0 0-.707 0L3.162 16.888a1.495 1.495 0 0 0-.437 1.155l.01.14-.065.123c-.111.212-.17.448-.17.694v2.5z"/>
<path fill="#e9e9e9" d="M16.414 3.707l3.89 3.89-.708.706-3.889-3.889z"/>
</g>
</symbol><symbol id="icon-c-ic-filter" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h24v24H0z"/>
<path fill="#e9e9e9" d="M12 7v1H2V7h10zm6 0h4v1h-4V7zM12 16v1h10v-1H12zm-6 0H2v1h4v-1z"/>
<path fill="#e9e9e9" d="M8.5 20a3.5 3.5 0 1 1 0-7 3.5 3.5 0 0 1 0 7zm0-1a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5zM15.5 11a3.5 3.5 0 1 1 0-7 3.5 3.5 0 0 1 0 7zm0-1a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5z"/>
</g>
</symbol><symbol id="icon-c-ic-flip-reset" viewBox="0 0 31 32">
<g fill="none" fill-rule="evenodd">
<path d="M31 0H0v32h31z"/>
<path fill="#e9e9e9" d="M28 16a8 8 0 0 1-8 8H3v-1h1v-7H3a8 8 0 0 1 8-8h17v1h-1v7h1zM11 9a7 7 0 0 0-7 7v7h16a7 7 0 0 0 7-7V9H11z"/>
<path stroke="#e9e9e9" stroke-linecap="square" d="M24 5l3.5 3.5L24 12M7 20l-3.5 3.5L7 27"/>
</g>
</symbol><symbol id="icon-c-ic-flip-x" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M32 32H0V0h32z"/>
<path fill="#e9e9e9" d="M17 32h-1V0h1zM27.167 11l.5 3h-1.03l-.546-3h1.076zm-.5-3h-1.122L25 5h-5V4h5.153a1 1 0 0 1 .986.836L26.667 8zm1.5 9l.5 3h-.94l-.545-3h.985zm1 6l.639 3.836A1 1 0 0 1 28.819 28H26v-1h3l-.726-4h.894zM23 28h-3v-1h3v1zM13 4v1H7L3 27h10v1H3.18a1 1 0 0 1-.986-1.164l3.666-22A1 1 0 0 1 6.847 4H13z"/>
</g>
</symbol><symbol id="icon-c-ic-flip-y" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M0 0v32h32V0z"/>
<path fill="#e9e9e9" d="M0 16v1h32v-1zM11 27.167l3 .5v-1.03l-3-.546v1.076zm-3-.5v-1.122L5 25v-5H4v5.153a1 1 0 0 0 .836.986L8 26.667zm9 1.5l3 .5v-.94l-3-.545v.985zm6 1l3.836.639A1 1 0 0 0 28 28.82V26h-1v3l-4-.727v.894zM28 23v-3h-1v3h1zM4 13h1V7l22-4v10h1V3.18a1 1 0 0 0-1.164-.986l-22 3.667A1 1 0 0 0 4 6.847V13z"/>
</g>
</symbol><symbol id="icon-c-ic-flip" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h24v24H0z"/>
<path fill="#e9e9e9" d="M11 0h1v24h-1zM19 21v-1h2v-2h1v2a1 1 0 0 1-1 1h-2zm-2 0h-3v-1h3v1zm5-5h-1v-3h1v3zm0-5h-1V8h1v3zm0-5h-1V4h-2V3h2a1 1 0 0 1 1 1v2zm-5-3v1h-3V3h3zM9 3v1H2v16h7v1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h7z"/>
</g>
</symbol><symbol id="icon-c-ic-icon-arrow-2" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#e9e9e9" stroke-linecap="round" stroke-linejoin="round" d="M21.793 18.5H2.5v-5h18.935l-7.6-8h5.872l10.5 10.5-10.5 10.5h-5.914l8-8z"/>
</g>
</symbol><symbol id="icon-c-ic-icon-arrow-3" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#e9e9e9" stroke-linecap="round" stroke-linejoin="round" d="M25.288 16.42L14.208 27.5H6.792l11.291-11.291L6.826 4.5h7.381l11.661 11.661-.58.258z"/>
</g>
</symbol><symbol id="icon-c-ic-icon-arrow" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#e9e9e9" d="M2.5 11.5v9h18v5.293L30.293 16 20.5 6.207V11.5h-18z"/>
</g>
</symbol><symbol id="icon-c-ic-icon-bubble" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#e9e9e9" stroke-linecap="round" stroke-linejoin="round" d="M22.207 24.5L16.5 30.207V24.5H8A6.5 6.5 0 0 1 1.5 18V9A6.5 6.5 0 0 1 8 2.5h16A6.5 6.5 0 0 1 30.5 9v9a6.5 6.5 0 0 1-6.5 6.5h-1.793z"/>
</g>
</symbol><symbol id="icon-c-ic-icon-heart" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path fill-rule="nonzero" stroke="#e9e9e9" d="M15.996 30.675l1.981-1.79c7.898-7.177 10.365-9.718 12.135-13.012.922-1.716 1.377-3.37 1.377-5.076 0-4.65-3.647-8.297-8.297-8.297-2.33 0-4.86 1.527-6.817 3.824l-.38.447-.381-.447C13.658 4.027 11.126 2.5 8.797 2.5 4.147 2.5.5 6.147.5 10.797c0 1.714.46 3.375 1.389 5.098 1.775 3.288 4.26 5.843 12.123 12.974l1.984 1.806z"/>
</g>
</symbol><symbol id="icon-c-ic-icon-load" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#e9e9e9" stroke-linecap="round" stroke-linejoin="round" d="M17.314 18.867l1.951-2.53 4 5.184h-17l6.5-8.84 4.549 6.186z"/>
<path fill="#e9e9e9" d="M18.01 4a11.798 11.798 0 0 0 0 1H3v24h24V14.986a8.738 8.738 0 0 0 1 0V29a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h15.01z"/>
<path fill="#e9e9e9" d="M25 3h1v9h-1z"/>
<path stroke="#e9e9e9" d="M22 6l3.5-3.5L29 6"/>
</g>
</symbol><symbol id="icon-c-ic-icon-location" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<g stroke="#e9e9e9">
<path d="M16 31.28C23.675 23.302 27.5 17.181 27.5 13c0-6.351-5.149-11.5-11.5-11.5S4.5 6.649 4.5 13c0 4.181 3.825 10.302 11.5 18.28z"/>
<circle cx="16" cy="13" r="4.5"/>
</g>
</g>
</symbol><symbol id="icon-c-ic-icon-polygon" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#e9e9e9" d="M.576 16L8.29 29.5h15.42L31.424 16 23.71 2.5H8.29L.576 16z"/>
</g>
</symbol><symbol id="icon-c-ic-icon-star-2" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#e9e9e9" d="M19.446 31.592l2.265-3.272 3.946.25.636-3.94 3.665-1.505-1.12-3.832 2.655-2.962-2.656-2.962 1.12-3.832-3.664-1.505-.636-3.941-3.946.25-2.265-3.271L16 3.024 12.554 1.07 10.289 4.34l-3.946-.25-.636 3.941-3.665 1.505 1.12 3.832L.508 16.33l2.656 2.962-1.12 3.832 3.664 1.504.636 3.942 3.946-.25 2.265 3.27L16 29.638l3.446 1.955z"/>
</g>
</symbol><symbol id="icon-c-ic-icon-star" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#e9e9e9" d="M25.292 29.878l-1.775-10.346 7.517-7.327-10.388-1.51L16 1.282l-4.646 9.413-10.388 1.51 7.517 7.327-1.775 10.346L16 24.993l9.292 4.885z"/>
</g>
</symbol><symbol id="icon-c-ic-icon" viewBox="0 0 24 24">
<g fill="none">
<path stroke="#e9e9e9" stroke-linecap="round" stroke-linejoin="round" d="M11.923 19.136L5.424 22l.715-7.065-4.731-5.296 6.94-1.503L11.923 2l3.574 6.136 6.94 1.503-4.731 5.296L18.42 22z"/>
</g>
</symbol><symbol id="icon-c-ic-mask-load" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h32v32H0z"/>
<path fill="#e9e9e9" d="M18.01 4a11.798 11.798 0 0 0 0 1H3v24h24V14.986a8.738 8.738 0 0 0 1 0V29a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h15.01zM15 23a6 6 0 1 1 0-12 6 6 0 0 1 0 12zm0-1a5 5 0 1 0 0-10 5 5 0 0 0 0 10z"/>
<path fill="#e9e9e9" d="M25 3h1v9h-1z"/>
<path stroke="#e9e9e9" d="M22 6l3.5-3.5L29 6"/>
</g>
</symbol><symbol id="icon-c-ic-mask" viewBox="0 0 24 24">
<g fill="none">
<circle cx="12" cy="12" r="4.5" stroke="#e9e9e9"/>
<path fill="#e9e9e9" d="M2 1h20a1 1 0 0 1 1 1v20a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zm0 1v20h20V2H2z"/>
</g>
</symbol><symbol id="icon-c-ic-redo" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h24v24H0z" opacity=".5"/>
<path fill="#e9e9e9" d="M21 6H9a6 6 0 1 0 0 12h12v1H9A7 7 0 0 1 9 5h12v1z"/>
<path stroke="#e9e9e9" stroke-linecap="square" d="M19 3l2.5 2.5L19 8"/>
</g>
</symbol><symbol id="icon-c-ic-reset" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h24v24H0z" opacity=".5"/>
<path fill="#e9e9e9" d="M2 13v-1a7 7 0 0 1 7-7h13v1h-1v5h1v1a7 7 0 0 1-7 7H2v-1h1v-5H2zm7-7a6 6 0 0 0-6 6v6h12a6 6 0 0 0 6-6V6H9z"/>
<path stroke="#e9e9e9" stroke-linecap="square" d="M19 3l2.5 2.5L19 8M5 16l-2.5 2.5L5 21"/>
</g>
</symbol><symbol id="icon-c-ic-rotate-clockwise" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path fill="#e9e9e9" d="M29 17h-.924c0 6.627-5.373 12-12 12-6.628 0-12-5.373-12-12C4.076 10.398 9.407 5.041 16 5V4C8.82 4 3 9.82 3 17s5.82 13 13 13 13-5.82 13-13z"/>
<path stroke="#e9e9e9" stroke-linecap="square" d="M16 1.5l4 3-4 3"/>
<path fill="#e9e9e9" fill-rule="nonzero" d="M16 4h4v1h-4z"/>
</g>
</symbol><symbol id="icon-c-ic-rotate-counterclockwise" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path fill="#e9e9e9" d="M3 17h.924c0 6.627 5.373 12 12 12 6.628 0 12-5.373 12-12 0-6.602-5.331-11.96-11.924-12V4c7.18 0 13 5.82 13 13s-5.82 13-13 13S3 24.18 3 17z"/>
<path fill="#e9e9e9" fill-rule="nonzero" d="M12 4h4v1h-4z"/>
<path stroke="#e9e9e9" stroke-linecap="square" d="M16 1.5l-4 3 4 3"/>
</g>
</symbol><symbol id="icon-c-ic-rotate" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h24v24H0z"/>
<path fill="#e9e9e9" d="M8.349 22.254a10.002 10.002 0 0 1-2.778-1.719l.65-.76a9.002 9.002 0 0 0 2.495 1.548l-.367.931zm2.873.704l.078-.997a9 9 0 1 0-.557-17.852l-.14-.99A10.076 10.076 0 0 1 12.145 3c5.523 0 10 4.477 10 10s-4.477 10-10 10c-.312 0-.62-.014-.924-.042zm-7.556-4.655a9.942 9.942 0 0 1-1.253-2.996l.973-.234a8.948 8.948 0 0 0 1.124 2.693l-.844.537zm-1.502-5.91A9.949 9.949 0 0 1 2.88 9.23l.925.382a8.954 8.954 0 0 0-.644 2.844l-.998-.062zm2.21-5.686c.687-.848 1.51-1.58 2.436-2.166l.523.852a9.048 9.048 0 0 0-2.188 1.95l-.771-.636z"/>
<path stroke="#e9e9e9" stroke-linecap="square" d="M13 1l-2.5 2.5L13 6"/>
</g>
</symbol><symbol id="icon-c-ic-shape-circle" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<circle cx="16" cy="16" r="14.5" stroke="#e9e9e9"/>
</g>
</symbol><symbol id="icon-c-ic-shape-rectangle" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<rect width="27" height="27" x="2.5" y="2.5" stroke="#e9e9e9" rx="1"/>
</g>
</symbol><symbol id="icon-c-ic-shape-triangle" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#e9e9e9" stroke-linecap="round" stroke-linejoin="round" d="M16 2.5l15.5 27H.5z"/>
</g>
</symbol><symbol id="icon-c-ic-shape" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path fill="#e9e9e9" d="M14.706 8H21a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H9a1 1 0 0 1-1-1v-4h1v4h12V9h-5.706l-.588-1z"/>
<path stroke="#e9e9e9" stroke-linecap="round" stroke-linejoin="round" d="M8.5 1.5l7.5 13H1z"/>
</g>
</symbol><symbol id="icon-c-ic-text-align-center" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h32v32H0z"/>
<path fill="#e9e9e9" d="M2 5h28v1H2zM8 12h16v1H8zM2 19h28v1H2zM8 26h16v1H8z"/>
</g>
</symbol><symbol id="icon-c-ic-text-align-left" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h32v32H0z"/>
<path fill="#e9e9e9" d="M2 5h28v1H2zM2 12h16v1H2zM2 19h28v1H2zM2 26h16v1H2z"/>
</g>
</symbol><symbol id="icon-c-ic-text-align-right" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h32v32H0z"/>
<path fill="#e9e9e9" d="M2 5h28v1H2zM14 12h16v1H14zM2 19h28v1H2zM14 26h16v1H14z"/>
</g>
</symbol><symbol id="icon-c-ic-text-bold" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h32v32H0z"/>
<path fill="#e9e9e9" d="M7 2h2v2H7zM7 28h2v2H7z"/>
<path stroke="#e9e9e9" stroke-width="2" d="M9 3v12h9a6 6 0 1 0 0-12H9zM9 15v14h10a7 7 0 0 0 0-14H9z"/>
</g>
</symbol><symbol id="icon-c-ic-text-italic" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h32v32H0z"/>
<path fill="#e9e9e9" d="M15 2h5v1h-5zM11 29h5v1h-5zM17 3h1l-4 26h-1z"/>
</g>
</symbol><symbol id="icon-c-ic-text-underline" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h32v32H0z"/>
<path fill="#e9e9e9" d="M8 2v14a8 8 0 1 0 16 0V2h1v14a9 9 0 0 1-18 0V2h1zM3 29h26v1H3z"/>
<path fill="#e9e9e9" d="M5 2h5v1H5zM22 2h5v1h-5z"/>
</g>
</symbol><symbol id="icon-c-ic-text" viewBox="0 0 24 24">
<g fill="#e9e9e9" fill-rule="evenodd">
<path d="M4 3h15a1 1 0 0 1 1 1H3a1 1 0 0 1 1-1zM3 4h1v1H3zM19 4h1v1h-1z"/>
<path d="M11 3h1v18h-1z"/>
<path d="M10 20h3v1h-3z"/>
</g>
</symbol><symbol id="icon-c-ic-undo" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M24 0H0v24h24z" opacity=".5"/>
<path fill="#e9e9e9" d="M3 6h12a6 6 0 1 1 0 12H3v1h12a7 7 0 0 0 0-14H3v1z"/>
<path stroke="#e9e9e9" stroke-linecap="square" d="M5 3L2.5 5.5 5 8"/>
</g>
</symbol><symbol id="icon-c-img-bi" viewBox="0 0 257 26">
<g fill="#FDBA3B">
<path d="M26 5a8.001 8.001 0 0 0 0 16 8.001 8.001 0 0 0 0-16M51.893 19.812L43.676 5.396A.78.78 0 0 0 43 5a.78.78 0 0 0-.677.396l-8.218 14.418a.787.787 0 0 0 0 .792c.14.244.396.394.676.394h16.436c.28 0 .539-.15.678-.396a.796.796 0 0 0-.002-.792M15.767 5.231A.79.79 0 0 0 15.21 5H.791A.791.791 0 0 0 0 5.79v6.42a.793.793 0 0 0 .791.79h3.21v7.21c.001.21.082.408.234.56.147.148.347.23.558.23h6.416a.788.788 0 0 0 .792-.79V13h3.006c.413 0 .611-.082.762-.232.15-.149.23-.35.231-.559V5.791a.787.787 0 0 0-.233-.56M85.767 5.231A.79.79 0 0 0 85.21 5H70.791a.791.791 0 0 0-.791.79v6.42a.793.793 0 0 0 .791.79h3.21v7.21c.001.21.082.408.234.56.147.148.347.23.558.23h6.416a.788.788 0 0 0 .792-.79V13h3.006c.413 0 .611-.082.762-.232.15-.149.23-.35.231-.559V5.791a.787.787 0 0 0-.233-.56M65.942 9.948l2.17-3.76a.78.78 0 0 0 0-.792.791.791 0 0 0-.684-.396h-8.54A5.889 5.889 0 0 0 53 10.86a5.887 5.887 0 0 0 3.07 5.17l-2.184 3.782A.792.792 0 0 0 54.571 21h8.54a5.89 5.89 0 0 0 2.831-11.052M105.7 21h2.3V5h-2.3zM91 5h2.4v10.286c0 1.893 1.612 3.429 3.6 3.429s3.6-1.536 3.6-3.429V5h2.4v10.286c0 3.156-2.686 5.714-6 5.714-3.313 0-6-2.558-6-5.714V5zM252.148 21.128h-2.377V9.659h2.27v1.64c.69-1.299 1.792-1.938 3.304-1.938.497 0 .95.065 1.382.192l-.215 2.277a3.734 3.734 0 0 0-1.275-.213c-1.814 0-3.089 1.234-3.089 3.638v5.873zm-7.095-5.744a3.734 3.734 0 0 0-1.101-2.703c-.714-.766-1.6-1.149-2.658-1.149-1.058 0-1.944.383-2.679 1.149a3.803 3.803 0 0 0-1.08 2.703c0 1.063.368 1.978 1.08 2.722.735.746 1.62 1.128 2.68 1.128 1.058 0 1.943-.382 2.657-1.128.734-.744 1.101-1.659 1.101-2.722zm-9.916 0c0-1.682.583-3.086 1.729-4.256 1.166-1.17 2.635-1.767 4.428-1.767 1.793 0 3.262.597 4.407 1.767 1.167 1.17 1.75 2.574 1.75 4.256 0 1.7-.583 3.127-1.75 4.297-1.145 1.17-2.614 1.745-4.407 1.745-1.793 0-3.262-.575-4.428-1.745-1.146-1.17-1.729-2.596-1.729-4.297zm-1.5 3.233l.821 1.83c-.864.638-1.944.958-3.22.958-2.526 0-3.822-1.554-3.822-4.383V11.66h-2.01v-2h2.031V5.595h2.355v4.063h4.018v2h-4.018v5.405c0 1.469.605 2.191 1.793 2.191.626 0 1.318-.212 2.052-.638zm-12.43 2.51h2.375V9.66h-2.376v11.469zm1.23-12.977c-.929 0-1.642-.682-1.642-1.596 0-.873.713-1.554 1.643-1.554.885 0 1.576.681 1.576 1.554 0 .914-.69 1.596-1.576 1.596zm-6.49 7.234c0-1.086-.346-1.98-1.037-2.724-.692-.745-1.599-1.128-2.7-1.128-1.102 0-2.01.383-2.7 1.128-.692.744-1.037 1.638-1.037 2.724 0 1.084.345 2.02 1.036 2.766.691.744 1.6 1.105 2.7 1.105 1.102 0 2.01-.361 2.7-1.105.692-.746 1.038-1.682 1.038-2.766zm-.173-4.129V5h2.397v16.128h-2.354v-1.596c-1.015 1.255-2.333 1.873-3.91 1.873-1.663 0-3.068-.575-4.169-1.724-1.102-1.17-1.663-2.596-1.663-4.297 0-1.682.561-3.107 1.663-4.256 1.101-1.17 2.485-1.745 4.148-1.745 1.534 0 2.83.617 3.888 1.872zm-11.48 9.873h-10.218V5.405h10.195v2.318h-7.711V12h7.15v2.32h-7.15v4.489h7.733v2.319zm-23.891-9.724c-1.793 0-3.132 1.192-3.478 2.979h6.783c-.194-1.808-1.555-2.979-3.305-2.979zm5.703 3.766c0 .32-.021.703-.086 1.128h-9.095c.346 1.787 1.62 3 3.867 3 1.318 0 2.916-.49 3.953-1.234l.994 1.724c-1.189.872-3.067 1.595-5.033 1.595-4.364 0-6.243-3-6.243-6.021 0-1.724.54-3.15 1.642-4.277 1.101-1.127 2.548-1.702 4.298-1.702 1.664 0 3.046.511 4.105 1.553 1.058 1.043 1.598 2.447 1.598 4.234zm-19.949 3.894c1.08 0 1.966-.362 2.68-1.085.712-.724 1.058-1.617 1.058-2.703 0-1.084-.346-2-1.059-2.701-.713-.702-1.599-1.064-2.679-1.064-1.058 0-1.944.362-2.656 1.085-.714.702-1.059 1.596-1.059 2.68 0 1.086.345 2 1.059 2.724.712.702 1.598 1.064 2.656 1.064zm3.673-7.936V9.66h2.29v10.299c0 1.85-.584 3.32-1.728 4.404-1.146 1.085-2.68 1.638-4.58 1.638-1.945 0-3.672-.553-5.206-1.638l1.037-1.808c1.296.915 2.679 1.36 4.126 1.36 2.484 0 3.996-1.51 3.996-3.637v-.83c-1.015 1.127-2.311 1.702-3.91 1.702-1.684 0-3.089-.554-4.19-1.68-1.102-1.128-1.642-2.532-1.642-4.214 0-1.68.561-3.085 1.706-4.191 1.145-1.128 2.571-1.681 4.234-1.681 1.534 0 2.83.575 3.867 1.745zm-18.07 8.127c1.102 0 1.988-.382 2.7-1.128.714-.744 1.06-1.659 1.06-2.743 0-1.065-.346-1.98-1.06-2.724-.712-.745-1.598-1.128-2.7-1.128-1.101 0-2.008.383-2.7 1.128-.691.744-1.036 1.66-1.036 2.745 0 1.084.345 2 1.037 2.745.691.744 1.598 1.105 2.7 1.105zm3.652-8V9.66h2.29v11.469h-2.29v-1.575c-1.059 1.234-2.399 1.852-3.976 1.852-1.663 0-3.067-.575-4.168-1.745-1.102-1.17-1.642-2.617-1.642-4.34 0-1.724.54-3.128 1.642-4.256 1.1-1.128 2.505-1.681 4.168-1.681 1.577 0 2.917.617 3.976 1.872zM138.79 9.34c1.404 0 2.527.448 3.37 1.34.863.873 1.295 2.086 1.295 3.596v6.852h-2.376V14.66c0-2.021-1.036-3.128-2.657-3.128-1.727 0-2.915 1.255-2.915 3.192v6.404h-2.377v-6.426c0-1.978-1.037-3.17-2.679-3.17-1.728 0-2.937 1.277-2.937 3.234v6.362h-2.377V9.659h2.333v1.66c.692-1.212 1.988-1.979 3.522-1.979 1.533.021 2.958.767 3.586 2.107.798-1.277 2.419-2.107 4.212-2.107zm-19.517 11.788h2.484V5.405h-2.484v15.723z"/>
</g>
</symbol></svg>

After

Width:  |  Height:  |  Size: 19 KiB

224
core/vendor/filemanager/svg/icon-d.svg vendored Normal file
View File

@ -0,0 +1,224 @@
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><defs/><symbol id="icon-d-ic-apply" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h24v24H0z"/>
<path stroke="#8a8a8a" d="M4 12.011l5 5L20.011 6"/>
</g>
</symbol><symbol id="icon-d-ic-cancel" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h24v24H0z"/>
<path stroke="#8a8a8a" d="M6 6l12 12M18 6L6 18"/>
</g>
</symbol><symbol id="icon-d-ic-crop" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h24v24H0z"/>
<path fill="#8a8a8a" d="M4 0h1v20a1 1 0 0 1-1-1V0zM20 17h-1V5h1v12zm0 2v5h-1v-5h1z"/>
<path fill="#8a8a8a" d="M5 19h19v1H5zM4.762 4v1H0V4h4.762zM7 4h12a1 1 0 0 1 1 1H7V4z"/>
</g>
</symbol><symbol id="icon-d-ic-delete-all" viewBox="0 0 24 24">
<g fill="#8a8a8a" fill-rule="evenodd">
<path d="M5 23H3a1 1 0 0 1-1-1V6h1v16h2v1zm16-10h-1V6h1v7zM9 13H8v-3h1v3zm3 0h-1v-3h1v3zm3 0h-1v-3h1v3zM14.794 3.794L13 2h-3L8.206 3.794A.963.963 0 0 1 8 2.5l.703-1.055A1 1 0 0 1 9.535 1h3.93a1 1 0 0 1 .832.445L15 2.5a.965.965 0 0 1-.206 1.294zM14.197 4H8.803h5.394z"/>
<path d="M0 3h23v1H0zM11.286 21H8.714L8 23H7l1-2.8V20h.071L9.5 16h1l1.429 4H12v.2l1 2.8h-1l-.714-2zm-.357-1L10 17.4 9.071 20h1.858zM20 22h3v1h-4v-7h1v6zm-5 0h3v1h-4v-7h1v6z"/>
</g>
</symbol><symbol id="icon-d-ic-delete" viewBox="0 0 24 24">
<g fill="#8a8a8a" fill-rule="evenodd">
<path d="M3 6v16h17V6h1v16a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V6h1zM14.794 3.794L13 2h-3L8.206 3.794A.963.963 0 0 1 8 2.5l.703-1.055A1 1 0 0 1 9.535 1h3.93a1 1 0 0 1 .832.445L15 2.5a.965.965 0 0 1-.206 1.294zM14.197 4H8.803h5.394z"/>
<path d="M0 3h23v1H0zM8 10h1v6H8v-6zm3 0h1v6h-1v-6zm3 0h1v6h-1v-6z"/>
</g>
</symbol><symbol id="icon-d-ic-draw-free" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#8a8a8a" d="M2.5 20.929C2.594 10.976 4.323 6 7.686 6c5.872 0 2.524 19 7.697 19s1.89-14.929 6.414-14.929 1.357 10.858 5.13 10.858c1.802 0 2.657-2.262 2.566-6.786"/>
</g>
</symbol><symbol id="icon-d-ic-draw-line" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#8a8a8a" d="M2 15.5h28"/>
</g>
</symbol><symbol id="icon-d-ic-draw" viewBox="0 0 24 24">
<g fill="none">
<path stroke="#8a8a8a" d="M2.5 21.5H5c.245 0 .48-.058.691-.168l.124-.065.14.01c.429.028.85-.127 1.16-.437L22.55 5.405a.5.5 0 0 0 0-.707l-3.246-3.245a.5.5 0 0 0-.707 0L3.162 16.888a1.495 1.495 0 0 0-.437 1.155l.01.14-.065.123c-.111.212-.17.448-.17.694v2.5z"/>
<path fill="#8a8a8a" d="M16.414 3.707l3.89 3.89-.708.706-3.889-3.889z"/>
</g>
</symbol><symbol id="icon-d-ic-filter" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h24v24H0z"/>
<path fill="#8a8a8a" d="M12 7v1H2V7h10zm6 0h4v1h-4V7zM12 16v1h10v-1H12zm-6 0H2v1h4v-1z"/>
<path fill="#8a8a8a" d="M8.5 20a3.5 3.5 0 1 1 0-7 3.5 3.5 0 0 1 0 7zm0-1a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5zM15.5 11a3.5 3.5 0 1 1 0-7 3.5 3.5 0 0 1 0 7zm0-1a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5z"/>
</g>
</symbol><symbol id="icon-d-ic-flip-reset" viewBox="0 0 31 32">
<g fill="none" fill-rule="evenodd">
<path d="M31 0H0v32h31z"/>
<path fill="#8a8a8a" d="M28 16a8 8 0 0 1-8 8H3v-1h1v-7H3a8 8 0 0 1 8-8h17v1h-1v7h1zM11 9a7 7 0 0 0-7 7v7h16a7 7 0 0 0 7-7V9H11z"/>
<path stroke="#8a8a8a" stroke-linecap="square" d="M24 5l3.5 3.5L24 12M7 20l-3.5 3.5L7 27"/>
</g>
</symbol><symbol id="icon-d-ic-flip-x" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M32 32H0V0h32z"/>
<path fill="#8a8a8a" d="M17 32h-1V0h1zM27.167 11l.5 3h-1.03l-.546-3h1.076zm-.5-3h-1.122L25 5h-5V4h5.153a1 1 0 0 1 .986.836L26.667 8zm1.5 9l.5 3h-.94l-.545-3h.985zm1 6l.639 3.836A1 1 0 0 1 28.819 28H26v-1h3l-.726-4h.894zM23 28h-3v-1h3v1zM13 4v1H7L3 27h10v1H3.18a1 1 0 0 1-.986-1.164l3.666-22A1 1 0 0 1 6.847 4H13z"/>
</g>
</symbol><symbol id="icon-d-ic-flip-y" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M0 0v32h32V0z"/>
<path fill="#8a8a8a" d="M0 16v1h32v-1zM11 27.167l3 .5v-1.03l-3-.546v1.076zm-3-.5v-1.122L5 25v-5H4v5.153a1 1 0 0 0 .836.986L8 26.667zm9 1.5l3 .5v-.94l-3-.545v.985zm6 1l3.836.639A1 1 0 0 0 28 28.82V26h-1v3l-4-.727v.894zM28 23v-3h-1v3h1zM4 13h1V7l22-4v10h1V3.18a1 1 0 0 0-1.164-.986l-22 3.667A1 1 0 0 0 4 6.847V13z"/>
</g>
</symbol><symbol id="icon-d-ic-flip" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h24v24H0z"/>
<path fill="#8a8a8a" d="M11 0h1v24h-1zM19 21v-1h2v-2h1v2a1 1 0 0 1-1 1h-2zm-2 0h-3v-1h3v1zm5-5h-1v-3h1v3zm0-5h-1V8h1v3zm0-5h-1V4h-2V3h2a1 1 0 0 1 1 1v2zm-5-3v1h-3V3h3zM9 3v1H2v16h7v1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h7z"/>
</g>
</symbol><symbol id="icon-d-ic-icon-arrow-2" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#8a8a8a" stroke-linecap="round" stroke-linejoin="round" d="M21.793 18.5H2.5v-5h18.935l-7.6-8h5.872l10.5 10.5-10.5 10.5h-5.914l8-8z"/>
</g>
</symbol><symbol id="icon-d-ic-icon-arrow-3" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#8a8a8a" stroke-linecap="round" stroke-linejoin="round" d="M25.288 16.42L14.208 27.5H6.792l11.291-11.291L6.826 4.5h7.381l11.661 11.661-.58.258z"/>
</g>
</symbol><symbol id="icon-d-ic-icon-arrow" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#8a8a8a" d="M2.5 11.5v9h18v5.293L30.293 16 20.5 6.207V11.5h-18z"/>
</g>
</symbol><symbol id="icon-d-ic-icon-bubble" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#8a8a8a" stroke-linecap="round" stroke-linejoin="round" d="M22.207 24.5L16.5 30.207V24.5H8A6.5 6.5 0 0 1 1.5 18V9A6.5 6.5 0 0 1 8 2.5h16A6.5 6.5 0 0 1 30.5 9v9a6.5 6.5 0 0 1-6.5 6.5h-1.793z"/>
</g>
</symbol><symbol id="icon-d-ic-icon-heart" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path fill-rule="nonzero" stroke="#8a8a8a" d="M15.996 30.675l1.981-1.79c7.898-7.177 10.365-9.718 12.135-13.012.922-1.716 1.377-3.37 1.377-5.076 0-4.65-3.647-8.297-8.297-8.297-2.33 0-4.86 1.527-6.817 3.824l-.38.447-.381-.447C13.658 4.027 11.126 2.5 8.797 2.5 4.147 2.5.5 6.147.5 10.797c0 1.714.46 3.375 1.389 5.098 1.775 3.288 4.26 5.843 12.123 12.974l1.984 1.806z"/>
</g>
</symbol><symbol id="icon-d-ic-icon-load" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#8a8a8a" stroke-linecap="round" stroke-linejoin="round" d="M17.314 18.867l1.951-2.53 4 5.184h-17l6.5-8.84 4.549 6.186z"/>
<path fill="#8a8a8a" d="M18.01 4a11.798 11.798 0 0 0 0 1H3v24h24V14.986a8.738 8.738 0 0 0 1 0V29a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h15.01z"/>
<path fill="#8a8a8a" d="M25 3h1v9h-1z"/>
<path stroke="#8a8a8a" d="M22 6l3.5-3.5L29 6"/>
</g>
</symbol><symbol id="icon-d-ic-icon-location" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<g stroke="#8a8a8a">
<path d="M16 31.28C23.675 23.302 27.5 17.181 27.5 13c0-6.351-5.149-11.5-11.5-11.5S4.5 6.649 4.5 13c0 4.181 3.825 10.302 11.5 18.28z"/>
<circle cx="16" cy="13" r="4.5"/>
</g>
</g>
</symbol><symbol id="icon-d-ic-icon-polygon" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#8a8a8a" d="M.576 16L8.29 29.5h15.42L31.424 16 23.71 2.5H8.29L.576 16z"/>
</g>
</symbol><symbol id="icon-d-ic-icon-star-2" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#8a8a8a" d="M19.446 31.592l2.265-3.272 3.946.25.636-3.94 3.665-1.505-1.12-3.832 2.655-2.962-2.656-2.962 1.12-3.832-3.664-1.505-.636-3.941-3.946.25-2.265-3.271L16 3.024 12.554 1.07 10.289 4.34l-3.946-.25-.636 3.941-3.665 1.505 1.12 3.832L.508 16.33l2.656 2.962-1.12 3.832 3.664 1.504.636 3.942 3.946-.25 2.265 3.27L16 29.638l3.446 1.955z"/>
</g>
</symbol><symbol id="icon-d-ic-icon-star" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#8a8a8a" d="M25.292 29.878l-1.775-10.346 7.517-7.327-10.388-1.51L16 1.282l-4.646 9.413-10.388 1.51 7.517 7.327-1.775 10.346L16 24.993l9.292 4.885z"/>
</g>
</symbol><symbol id="icon-d-ic-icon" viewBox="0 0 24 24">
<g fill="none">
<path stroke="#8a8a8a" stroke-linecap="round" stroke-linejoin="round" d="M11.923 19.136L5.424 22l.715-7.065-4.731-5.296 6.94-1.503L11.923 2l3.574 6.136 6.94 1.503-4.731 5.296L18.42 22z"/>
</g>
</symbol><symbol id="icon-d-ic-mask-load" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h32v32H0z"/>
<path fill="#8a8a8a" d="M18.01 4a11.798 11.798 0 0 0 0 1H3v24h24V14.986a8.738 8.738 0 0 0 1 0V29a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h15.01zM15 23a6 6 0 1 1 0-12 6 6 0 0 1 0 12zm0-1a5 5 0 1 0 0-10 5 5 0 0 0 0 10z"/>
<path fill="#8a8a8a" d="M25 3h1v9h-1z"/>
<path stroke="#8a8a8a" d="M22 6l3.5-3.5L29 6"/>
</g>
</symbol><symbol id="icon-d-ic-mask" viewBox="0 0 24 24">
<g fill="none">
<circle cx="12" cy="12" r="4.5" stroke="#8a8a8a"/>
<path fill="#8a8a8a" d="M2 1h20a1 1 0 0 1 1 1v20a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zm0 1v20h20V2H2z"/>
</g>
</symbol><symbol id="icon-d-ic-redo" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h24v24H0z" opacity=".5"/>
<path fill="#8a8a8a" d="M21 6H9a6 6 0 1 0 0 12h12v1H9A7 7 0 0 1 9 5h12v1z"/>
<path stroke="#8a8a8a" stroke-linecap="square" d="M19 3l2.5 2.5L19 8"/>
</g>
</symbol><symbol id="icon-d-ic-reset" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h24v24H0z" opacity=".5"/>
<path fill="#8a8a8a" d="M2 13v-1a7 7 0 0 1 7-7h13v1h-1v5h1v1a7 7 0 0 1-7 7H2v-1h1v-5H2zm7-7a6 6 0 0 0-6 6v6h12a6 6 0 0 0 6-6V6H9z"/>
<path stroke="#8a8a8a" stroke-linecap="square" d="M19 3l2.5 2.5L19 8M5 16l-2.5 2.5L5 21"/>
</g>
</symbol><symbol id="icon-d-ic-rotate-clockwise" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path fill="#8a8a8a" d="M29 17h-.924c0 6.627-5.373 12-12 12-6.628 0-12-5.373-12-12C4.076 10.398 9.407 5.041 16 5V4C8.82 4 3 9.82 3 17s5.82 13 13 13 13-5.82 13-13z"/>
<path stroke="#8a8a8a" stroke-linecap="square" d="M16 1.5l4 3-4 3"/>
<path fill="#8a8a8a" fill-rule="nonzero" d="M16 4h4v1h-4z"/>
</g>
</symbol><symbol id="icon-d-ic-rotate-counterclockwise" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path fill="#8a8a8a" d="M3 17h.924c0 6.627 5.373 12 12 12 6.628 0 12-5.373 12-12 0-6.602-5.331-11.96-11.924-12V4c7.18 0 13 5.82 13 13s-5.82 13-13 13S3 24.18 3 17z"/>
<path fill="#8a8a8a" fill-rule="nonzero" d="M12 4h4v1h-4z"/>
<path stroke="#8a8a8a" stroke-linecap="square" d="M16 1.5l-4 3 4 3"/>
</g>
</symbol><symbol id="icon-d-ic-rotate" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h24v24H0z"/>
<path fill="#8a8a8a" d="M8.349 22.254a10.002 10.002 0 0 1-2.778-1.719l.65-.76a9.002 9.002 0 0 0 2.495 1.548l-.367.931zm2.873.704l.078-.997a9 9 0 1 0-.557-17.852l-.14-.99A10.076 10.076 0 0 1 12.145 3c5.523 0 10 4.477 10 10s-4.477 10-10 10c-.312 0-.62-.014-.924-.042zm-7.556-4.655a9.942 9.942 0 0 1-1.253-2.996l.973-.234a8.948 8.948 0 0 0 1.124 2.693l-.844.537zm-1.502-5.91A9.949 9.949 0 0 1 2.88 9.23l.925.382a8.954 8.954 0 0 0-.644 2.844l-.998-.062zm2.21-5.686c.687-.848 1.51-1.58 2.436-2.166l.523.852a9.048 9.048 0 0 0-2.188 1.95l-.771-.636z"/>
<path stroke="#8a8a8a" stroke-linecap="square" d="M13 1l-2.5 2.5L13 6"/>
</g>
</symbol><symbol id="icon-d-ic-shape-circle" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<circle cx="16" cy="16" r="14.5" stroke="#8a8a8a"/>
</g>
</symbol><symbol id="icon-d-ic-shape-rectangle" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<rect width="27" height="27" x="2.5" y="2.5" stroke="#8a8a8a" rx="1"/>
</g>
</symbol><symbol id="icon-d-ic-shape-triangle" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path stroke="#8a8a8a" stroke-linecap="round" stroke-linejoin="round" d="M16 2.5l15.5 27H.5z"/>
</g>
</symbol><symbol id="icon-d-ic-shape" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path fill="#8a8a8a" d="M14.706 8H21a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H9a1 1 0 0 1-1-1v-4h1v4h12V9h-5.706l-.588-1z"/>
<path stroke="#8a8a8a" stroke-linecap="round" stroke-linejoin="round" d="M8.5 1.5l7.5 13H1z"/>
</g>
</symbol><symbol id="icon-d-ic-text-align-center" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h32v32H0z"/>
<path fill="#8a8a8a" d="M2 5h28v1H2zM8 12h16v1H8zM2 19h28v1H2zM8 26h16v1H8z"/>
</g>
</symbol><symbol id="icon-d-ic-text-align-left" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h32v32H0z"/>
<path fill="#8a8a8a" d="M2 5h28v1H2zM2 12h16v1H2zM2 19h28v1H2zM2 26h16v1H2z"/>
</g>
</symbol><symbol id="icon-d-ic-text-align-right" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h32v32H0z"/>
<path fill="#8a8a8a" d="M2 5h28v1H2zM14 12h16v1H14zM2 19h28v1H2zM14 26h16v1H14z"/>
</g>
</symbol><symbol id="icon-d-ic-text-bold" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h32v32H0z"/>
<path fill="#8a8a8a" d="M7 2h2v2H7zM7 28h2v2H7z"/>
<path stroke="#8a8a8a" stroke-width="2" d="M9 3v12h9a6 6 0 1 0 0-12H9zM9 15v14h10a7 7 0 0 0 0-14H9z"/>
</g>
</symbol><symbol id="icon-d-ic-text-italic" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h32v32H0z"/>
<path fill="#8a8a8a" d="M15 2h5v1h-5zM11 29h5v1h-5zM17 3h1l-4 26h-1z"/>
</g>
</symbol><symbol id="icon-d-ic-text-underline" viewBox="0 0 32 32">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h32v32H0z"/>
<path fill="#8a8a8a" d="M8 2v14a8 8 0 1 0 16 0V2h1v14a9 9 0 0 1-18 0V2h1zM3 29h26v1H3z"/>
<path fill="#8a8a8a" d="M5 2h5v1H5zM22 2h5v1h-5z"/>
</g>
</symbol><symbol id="icon-d-ic-text" viewBox="0 0 24 24">
<g fill="#8a8a8a" fill-rule="evenodd">
<path d="M4 3h15a1 1 0 0 1 1 1H3a1 1 0 0 1 1-1zM3 4h1v1H3zM19 4h1v1h-1z"/>
<path d="M11 3h1v18h-1z"/>
<path d="M10 20h3v1h-3z"/>
</g>
</symbol><symbol id="icon-d-ic-undo" viewBox="0 0 24 24">
<g fill="none" fill-rule="evenodd">
<path d="M24 0H0v24h24z" opacity=".5"/>
<path fill="#8a8a8a" d="M3 6h12a6 6 0 1 1 0 12H3v1h12a7 7 0 0 0 0-14H3v1z"/>
<path stroke="#8a8a8a" stroke-linecap="square" d="M5 3L2.5 5.5 5 8"/>
</g>
</symbol><symbol id="icon-d-img-bi" viewBox="0 0 257 26">
<g fill="#FDBA3B">
<path d="M26 5a8.001 8.001 0 0 0 0 16 8.001 8.001 0 0 0 0-16M51.893 19.812L43.676 5.396A.78.78 0 0 0 43 5a.78.78 0 0 0-.677.396l-8.218 14.418a.787.787 0 0 0 0 .792c.14.244.396.394.676.394h16.436c.28 0 .539-.15.678-.396a.796.796 0 0 0-.002-.792M15.767 5.231A.79.79 0 0 0 15.21 5H.791A.791.791 0 0 0 0 5.79v6.42a.793.793 0 0 0 .791.79h3.21v7.21c.001.21.082.408.234.56.147.148.347.23.558.23h6.416a.788.788 0 0 0 .792-.79V13h3.006c.413 0 .611-.082.762-.232.15-.149.23-.35.231-.559V5.791a.787.787 0 0 0-.233-.56M85.767 5.231A.79.79 0 0 0 85.21 5H70.791a.791.791 0 0 0-.791.79v6.42a.793.793 0 0 0 .791.79h3.21v7.21c.001.21.082.408.234.56.147.148.347.23.558.23h6.416a.788.788 0 0 0 .792-.79V13h3.006c.413 0 .611-.082.762-.232.15-.149.23-.35.231-.559V5.791a.787.787 0 0 0-.233-.56M65.942 9.948l2.17-3.76a.78.78 0 0 0 0-.792.791.791 0 0 0-.684-.396h-8.54A5.889 5.889 0 0 0 53 10.86a5.887 5.887 0 0 0 3.07 5.17l-2.184 3.782A.792.792 0 0 0 54.571 21h8.54a5.89 5.89 0 0 0 2.831-11.052M105.7 21h2.3V5h-2.3zM91 5h2.4v10.286c0 1.893 1.612 3.429 3.6 3.429s3.6-1.536 3.6-3.429V5h2.4v10.286c0 3.156-2.686 5.714-6 5.714-3.313 0-6-2.558-6-5.714V5zM252.148 21.128h-2.377V9.659h2.27v1.64c.69-1.299 1.792-1.938 3.304-1.938.497 0 .95.065 1.382.192l-.215 2.277a3.734 3.734 0 0 0-1.275-.213c-1.814 0-3.089 1.234-3.089 3.638v5.873zm-7.095-5.744a3.734 3.734 0 0 0-1.101-2.703c-.714-.766-1.6-1.149-2.658-1.149-1.058 0-1.944.383-2.679 1.149a3.803 3.803 0 0 0-1.08 2.703c0 1.063.368 1.978 1.08 2.722.735.746 1.62 1.128 2.68 1.128 1.058 0 1.943-.382 2.657-1.128.734-.744 1.101-1.659 1.101-2.722zm-9.916 0c0-1.682.583-3.086 1.729-4.256 1.166-1.17 2.635-1.767 4.428-1.767 1.793 0 3.262.597 4.407 1.767 1.167 1.17 1.75 2.574 1.75 4.256 0 1.7-.583 3.127-1.75 4.297-1.145 1.17-2.614 1.745-4.407 1.745-1.793 0-3.262-.575-4.428-1.745-1.146-1.17-1.729-2.596-1.729-4.297zm-1.5 3.233l.821 1.83c-.864.638-1.944.958-3.22.958-2.526 0-3.822-1.554-3.822-4.383V11.66h-2.01v-2h2.031V5.595h2.355v4.063h4.018v2h-4.018v5.405c0 1.469.605 2.191 1.793 2.191.626 0 1.318-.212 2.052-.638zm-12.43 2.51h2.375V9.66h-2.376v11.469zm1.23-12.977c-.929 0-1.642-.682-1.642-1.596 0-.873.713-1.554 1.643-1.554.885 0 1.576.681 1.576 1.554 0 .914-.69 1.596-1.576 1.596zm-6.49 7.234c0-1.086-.346-1.98-1.037-2.724-.692-.745-1.599-1.128-2.7-1.128-1.102 0-2.01.383-2.7 1.128-.692.744-1.037 1.638-1.037 2.724 0 1.084.345 2.02 1.036 2.766.691.744 1.6 1.105 2.7 1.105 1.102 0 2.01-.361 2.7-1.105.692-.746 1.038-1.682 1.038-2.766zm-.173-4.129V5h2.397v16.128h-2.354v-1.596c-1.015 1.255-2.333 1.873-3.91 1.873-1.663 0-3.068-.575-4.169-1.724-1.102-1.17-1.663-2.596-1.663-4.297 0-1.682.561-3.107 1.663-4.256 1.101-1.17 2.485-1.745 4.148-1.745 1.534 0 2.83.617 3.888 1.872zm-11.48 9.873h-10.218V5.405h10.195v2.318h-7.711V12h7.15v2.32h-7.15v4.489h7.733v2.319zm-23.891-9.724c-1.793 0-3.132 1.192-3.478 2.979h6.783c-.194-1.808-1.555-2.979-3.305-2.979zm5.703 3.766c0 .32-.021.703-.086 1.128h-9.095c.346 1.787 1.62 3 3.867 3 1.318 0 2.916-.49 3.953-1.234l.994 1.724c-1.189.872-3.067 1.595-5.033 1.595-4.364 0-6.243-3-6.243-6.021 0-1.724.54-3.15 1.642-4.277 1.101-1.127 2.548-1.702 4.298-1.702 1.664 0 3.046.511 4.105 1.553 1.058 1.043 1.598 2.447 1.598 4.234zm-19.949 3.894c1.08 0 1.966-.362 2.68-1.085.712-.724 1.058-1.617 1.058-2.703 0-1.084-.346-2-1.059-2.701-.713-.702-1.599-1.064-2.679-1.064-1.058 0-1.944.362-2.656 1.085-.714.702-1.059 1.596-1.059 2.68 0 1.086.345 2 1.059 2.724.712.702 1.598 1.064 2.656 1.064zm3.673-7.936V9.66h2.29v10.299c0 1.85-.584 3.32-1.728 4.404-1.146 1.085-2.68 1.638-4.58 1.638-1.945 0-3.672-.553-5.206-1.638l1.037-1.808c1.296.915 2.679 1.36 4.126 1.36 2.484 0 3.996-1.51 3.996-3.637v-.83c-1.015 1.127-2.311 1.702-3.91 1.702-1.684 0-3.089-.554-4.19-1.68-1.102-1.128-1.642-2.532-1.642-4.214 0-1.68.561-3.085 1.706-4.191 1.145-1.128 2.571-1.681 4.234-1.681 1.534 0 2.83.575 3.867 1.745zm-18.07 8.127c1.102 0 1.988-.382 2.7-1.128.714-.744 1.06-1.659 1.06-2.743 0-1.065-.346-1.98-1.06-2.724-.712-.745-1.598-1.128-2.7-1.128-1.101 0-2.008.383-2.7 1.128-.691.744-1.036 1.66-1.036 2.745 0 1.084.345 2 1.037 2.745.691.744 1.598 1.105 2.7 1.105zm3.652-8V9.66h2.29v11.469h-2.29v-1.575c-1.059 1.234-2.399 1.852-3.976 1.852-1.663 0-3.067-.575-4.168-1.745-1.102-1.17-1.642-2.617-1.642-4.34 0-1.724.54-3.128 1.642-4.256 1.1-1.128 2.505-1.681 4.168-1.681 1.577 0 2.917.617 3.976 1.872zM138.79 9.34c1.404 0 2.527.448 3.37 1.34.863.873 1.295 2.086 1.295 3.596v6.852h-2.376V14.66c0-2.021-1.036-3.128-2.657-3.128-1.727 0-2.915 1.255-2.915 3.192v6.404h-2.377v-6.426c0-1.978-1.037-3.17-2.679-3.17-1.728 0-2.937 1.277-2.937 3.234v6.362h-2.377V9.659h2.333v1.66c.692-1.212 1.988-1.979 3.522-1.979 1.533.021 2.958.767 3.586 2.107.798-1.277 2.419-2.107 4.212-2.107zm-19.517 11.788h2.484V5.405h-2.484v15.723z"/>
</g>
</symbol></svg>

After

Width:  |  Height:  |  Size: 19 KiB

1
core/vendor/filemanager/svg/svg.svg vendored Normal file
View File

@ -0,0 +1 @@
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><defs/></svg>

After

Width:  |  Height:  |  Size: 232 B

View File

@ -8,7 +8,7 @@ try {
include 'include/utils.php'; include 'include/utils.php';
if ($_SESSION['RF']["verify"] != "RESPONSIVEfilemanager") { if ($_SESSION['RF']["verify"] != "RESPONSIVEfilemanager") {
response(trans('forbiden') . AddErrorLocation(), 403)->send(); response(trans('forbidden') . AddErrorLocation(), 403)->send();
exit; exit;
} }
@ -118,8 +118,10 @@ try {
} }
$_FILES['files']['name'][0] = fix_filename($filename, $config); $_FILES['files']['name'][0] = fix_filename($filename, $config);
if(!$_FILES['files']['type'][0]){
$_FILES['files']['type'][0] = $mime_type;
}
// LowerCase // LowerCase
if ($config['lower_case']) { if ($config['lower_case']) {
$_FILES['files']['name'][0] = fix_strtolower($_FILES['files']['name'][0]); $_FILES['files']['name'][0] = fix_strtolower($_FILES['files']['name'][0]);
@ -146,13 +148,16 @@ try {
'correct_image_extensions' => true, 'correct_image_extensions' => true,
'print_response' => false 'print_response' => false
); );
if (!$config['ext_blacklist']) { if (!$config['ext_blacklist']) {
$uploadConfig['accept_file_types'] = '/\.(' . implode('|', $config['ext']) . ')$/i'; $uploadConfig['accept_file_types'] = '/\.(' . implode('|', $config['ext']) . ')$/i';
if ($config['files_without_extension']) { if ($config['files_without_extension']) {
$uploadConfig['accept_file_types'] = '/((\.(' . implode('|', $config['ext']) . ')$)|(^[^.]+$))$/i'; $uploadConfig['accept_file_types'] = '/((\.(' . implode('|', $config['ext']) . ')$)|(^[^.]+$))$/i';
} }
} else { } else {
$uploadConfig['accept_file_types'] = '/\.(?!' . implode('|', $config['ext_blacklist']) . '$)/i'; $uploadConfig['accept_file_types'] = '/\.(?!' . implode('|', $config['ext_blacklist']) . '$)/i';
if ($config['files_without_extension']) { if ($config['files_without_extension']) {
$uploadConfig['accept_file_types'] = '/((\.(?!' . implode('|', $config['ext_blacklist']) . '$))|(^[^.]+$))/i'; $uploadConfig['accept_file_types'] = '/((\.(?!' . implode('|', $config['ext_blacklist']) . '$))|(^[^.]+$))/i';
} }
@ -162,15 +167,19 @@ try {
if (!is_dir($config['ftp_temp_folder'])) { if (!is_dir($config['ftp_temp_folder'])) {
mkdir($config['ftp_temp_folder'], $config['folderPermission'], true); mkdir($config['ftp_temp_folder'], $config['folderPermission'], true);
} }
if (!is_dir($config['ftp_temp_folder'] . "thumbs")) { if (!is_dir($config['ftp_temp_folder'] . "thumbs")) {
mkdir($config['ftp_temp_folder'] . "thumbs", $config['folderPermission'], true); mkdir($config['ftp_temp_folder'] . "thumbs", $config['folderPermission'], true);
} }
$uploadConfig['upload_dir'] = $config['ftp_temp_folder']; $uploadConfig['upload_dir'] = $config['ftp_temp_folder'];
} }
//print_r($_FILES);die();
$upload_handler = new UploadHandler($uploadConfig, true, $messages); $upload_handler = new UploadHandler($uploadConfig, true, $messages);
} catch (Exception $e) { } catch (Exception $e) {
$return = array(); $return = array();
if ($_FILES['files']) { if ($_FILES['files']) {
foreach ($_FILES['files']['name'] as $i => $name) { foreach ($_FILES['files']['name'] as $i => $name) {
$return[] = array( $return[] = array(