Reformulation

This commit is contained in:
fredtempez 2018-11-20 22:57:52 +01:00
commit 07760364e4
139 changed files with 5954 additions and 529 deletions

10
.gitignore vendored
View File

@ -1,3 +1,4 @@
<<<<<<< HEAD
# Fichiers temporaires # Fichiers temporaires
site/tmp/* site/tmp/*
@ -11,8 +12,17 @@ site/data/*
site/file/source/* site/file/source/*
site/file/thumb/* site/file/thumb/*
# Fichiers de données
site/*
# Dossiers vides dans GitHub # Dossiers vides dans GitHub
!.gitkeep !.gitkeep
# PHPStorm # PHPStorm
.idea/ .idea/
#Visual Code
.vscode

3
.htaccess Executable file → Normal file
View File

@ -1,7 +1,8 @@
# Cache le PHPSESSID de l'url # Cache le PHPSESSID de l'url
SetEnv SESSION_USE_TRANS_SID 0 SetEnv SESSION_USE_TRANS_SID 0
# Bloque l'accès à la liste des fichiers # Bloque l'accès à la liste des fichiers
Options -Indexes Options -Indexes
# Attention, surtout ne rien modifier ci-dessous ! # Attention, surtout ne rien modifier ci-dessous !
# URL rewriting

View File

@ -1,12 +1,63 @@
# ChangeLog # ChangeLog
## Version 8.4.6
* corrections :
- Encodage des dates dans la liste des articles news et blog
- Variable itemsperpage stockée dans le mauvais type
## Préversion 8.3.13 : ## Version 8.4.5
* corrections :
- nettoyage du code core.php
- W3C ajout de balise title manquante
- Inversion de deux balises dans Socials
## Version 8.4.4
* Correction :
- Valeur par défaut et d'update des éléments du footer dans les blocks
## Version 8.4.3
* Correction :
- URL incorrecte dans Metaimage
- Erreur dans la génération du sitemap
- Taille du texte de la bannnière maximale relative (vmax)
- Préfixe des en-têtes html pour OpenGraph
- Balise Titre dans Socials
- Conformité W3C des URL dans socials
## Version 8.4.2
* Correction :
- Modifications de la présentation des en-têtes d'articles de Blog et de News
- Format du mois au format long et en français
## Version 8.4.1
* Correction :
- Erreur de type empêchant l'affichage des articles du blog (nombre d'articles par page)
## Version 8.4.0
* Modifications :
- Footer dans 3 blocs contenant dans l'ordre : Texte, Réseaux sociaux, Copyright
- Pagination variable du nombres d'articles par page (news, blog et form)
- Position des modules Galerie et Form dans une page ; haut ; bas ou libre avec les doubles crochets insérés dans l'article []
- Prise en compte des balises OpenGraph obligatoires title , description, type et images
- Modification de la position des boutons retour et éditer lors de l'affichage d'un article si connecté
- Mise en forme de la composition des articles et des news
- Suppression du message de l'édition des redirections
* Corrections :
- Accès aux pages désactivées par le sitemap
- Réduction du temps d'affichage des notifications
- Image responsive en en-tête de l'article d'un blog
- Mise à jour du gestionnaire de fichiers en version 9.13.1
## version 8.3.13 :
* Modifications : * Modifications :
- Bannière "responsive", nouvelles options de positionnement - Bannière "responsive", nouvelles options de positionnement
- Bouton Edit dans Blog - Bouton Edit dans Blog
- Options de position des menus selon la position de la bannière - Options de position des menus selon la position de la bannière
- Mise à jour TinyMCE - Bouton Edition dans un article du blog
- Balise ALT dans les images du menu
- Correction RFM
## version 8.3.12 : ## version 8.3.12 :
* Modification : * Modification :

View File

@ -192,11 +192,11 @@ core.start = function() {
// Disparition de la notification // Disparition de la notification
notificationTimer = setTimeout(function() { notificationTimer = setTimeout(function() {
$("#notification").fadeOut(); $("#notification").fadeOut();
}, 4000); }, 1500);
// Barre de progression // Barre de progression
$("#notificationProgress").animate({ $("#notificationProgress").animate({
"width": "0%" "width": "0%"
}, 4000, "linear"); }, 1500, "linear");
}) })
.trigger("mouseleave"); .trigger("mouseleave");
$("#notificationClose").on("click", function() { $("#notificationClose").on("click", function() {

View File

@ -24,7 +24,7 @@ class common {
const GROUP_MEMBER = 1; const GROUP_MEMBER = 1;
const GROUP_MODERATOR = 2; const GROUP_MODERATOR = 2;
const GROUP_ADMIN = 3; const GROUP_ADMIN = 3;
const ZWII_VERSION = '8.3.13'; const ZWII_VERSION = '8.4.6';
public static $actions = []; public static $actions = [];
public static $coreModuleIds = [ public static $coreModuleIds = [
@ -55,7 +55,8 @@ class common {
'youtubeId' => '' 'youtubeId' => ''
], ],
'timezone' => 'Europe/Paris', 'timezone' => 'Europe/Paris',
'title' => 'Zwii, votre site en quelques clics !' 'title' => 'Zwii, votre site en quelques clics !',
'ItemsperPage' => 10
], ],
'core' => [ 'core' => [
'dataVersion' => 0, 'dataVersion' => 0,
@ -74,6 +75,7 @@ class common {
'metaDescription' => '', 'metaDescription' => '',
'metaTitle' => '', 'metaTitle' => '',
'moduleId' => '', 'moduleId' => '',
'modulePosition' => 'bottom',
'parentPageId' => '', 'parentPageId' => '',
'position' => 1, 'position' => 1,
'group' => self::GROUP_VISITOR, 'group' => self::GROUP_VISITOR,
@ -91,6 +93,7 @@ class common {
'metaDescription' => '', 'metaDescription' => '',
'metaTitle' => '', 'metaTitle' => '',
'moduleId' => '', 'moduleId' => '',
'modulePosition' => 'bottom',
'parentPageId' => 'accueil', 'parentPageId' => 'accueil',
'position' => 1, 'position' => 1,
'group' => self::GROUP_VISITOR, 'group' => self::GROUP_VISITOR,
@ -109,21 +112,24 @@ class common {
'metaTitle' => '', 'metaTitle' => '',
'moduleId' => '', 'moduleId' => '',
'parentPageId' => '', 'parentPageId' => '',
'modulePosition' => 'bottom',
'position' => 2, 'position' => 2,
'group' => self::GROUP_MEMBER, 'group' => self::GROUP_MEMBER,
'targetBlank' => false, 'targetBlank' => false,
'title' => 'Cachée' 'title' => 'Cachée'
], ],
'blog' => [ 'blog' => [
// menu image
'typeMenu' => 'text', 'typeMenu' => 'text',
'iconUrl' => '', 'iconUrl' => '',
'disable' => false, 'disable' => false,
// menu image
'content' => "<p>Cette page contient une instance du module de blog. Cliquez sur un article afin de le lire et de poster des commentaires.</p>", 'content' => "<p>Cette page contient une instance du module de blog. Cliquez sur un article afin de le lire et de poster des commentaires.</p>",
'hideTitle' => false, 'hideTitle' => false,
'metaDescription' => '', 'metaDescription' => '',
'metaTitle' => '', 'metaTitle' => '',
'moduleId' => 'blog', 'moduleId' => 'blog',
'modulePosition' => 'bottom',
'parentPageId' => '', 'parentPageId' => '',
'position' => 3, 'position' => 3,
'group' => self::GROUP_VISITOR, 'group' => self::GROUP_VISITOR,
@ -141,6 +147,7 @@ class common {
'metaDescription' => '', 'metaDescription' => '',
'metaTitle' => '', 'metaTitle' => '',
'moduleId' => 'gallery', 'moduleId' => 'gallery',
'modulePosition' => 'bottom',
'parentPageId' => '', 'parentPageId' => '',
'position' => 4, 'position' => 4,
'group' => self::GROUP_VISITOR, 'group' => self::GROUP_VISITOR,
@ -158,6 +165,7 @@ class common {
'metaDescription' => '', 'metaDescription' => '',
'metaTitle' => '', 'metaTitle' => '',
'moduleId' => 'redirection', 'moduleId' => 'redirection',
'modulePosition' => 'bottom',
'parentPageId' => '', 'parentPageId' => '',
'position' => 5, 'position' => 5,
'group' => self::GROUP_VISITOR, 'group' => self::GROUP_VISITOR,
@ -175,6 +183,7 @@ class common {
'metaDescription' => '', 'metaDescription' => '',
'metaTitle' => '', 'metaTitle' => '',
'moduleId' => 'form', 'moduleId' => 'form',
'modulePosition' => 'bottom',
'parentPageId' => '', 'parentPageId' => '',
'position' => 6, 'position' => 6,
'group' => self::GROUP_VISITOR, 'group' => self::GROUP_VISITOR,
@ -307,7 +316,10 @@ class common {
'socialsAlign' => 'center', 'socialsAlign' => 'center',
'text' => '', 'text' => '',
'textAlign' => 'center', 'textAlign' => 'center',
'textColor' => 'rgba(33, 34, 35, 1)' 'textColor' => 'rgba(33, 34, 35, 1)',
'copyrightPosition' => 'center',
'textPosition' => 'hide',
'socialsPosition' => 'hide'
], ],
'header' => [ 'header' => [
'backgroundColor' => 'rgba(255, 255, 255, 1)', 'backgroundColor' => 'rgba(255, 255, 255, 1)',
@ -589,6 +601,28 @@ class common {
} }
} }
/**
* Récupérer une copie d'écran du site Web pour le tag image si le fichier n'existe pas
* En local, copie du site décran de ZwiiCMS
*/
public function makeImageTag () {
if (!file_exists('site/file/source/screenshot.png'))
{
if ( strpos(helper::baseUrl(false),'localhost') == 0 AND strpos(helper::baseUrl(false),'127.0.0.1') == 0) {
$googlePagespeedData = file_get_contents('https://www.googleapis.com/pagespeedonline/v2/runPagespeed?url='. helper::baseUrl(false) .'&screenshot=true');
$googlePagespeedData = json_decode($googlePagespeedData, true);
$screenshot = $googlePagespeedData['screenshot']['data'];
$screenshot = str_replace(array('_','-'),array('/','+'),$screenshot);
$data = 'data:image/jpeg;base64,'.$screenshot;
$data = base64_decode(preg_replace('#^data:image/\w+;base64,#i', '', $data));
file_put_contents( 'site/file/source/screenshot.png',$data);
}
}
}
/** /**
* Accède aux données * Accède aux données
* @param array $keys Clé(s) des données * @param array $keys Clé(s) des données
@ -865,8 +899,33 @@ class common {
$this->setData(['theme','header','imageContainer','auto']); $this->setData(['theme','header','imageContainer','auto']);
$this->setData(['core', 'dataVersion', 8313]); $this->setData(['core', 'dataVersion', 8313]);
$this->SaveData(); $this->SaveData();
} }
// Version 8.4.0
if($this->getData(['core', 'dataVersion']) < 840) {
$this->setData(['theme','footer','socialsPosition','1']);
$this->setData(['theme','footer','textPosition','2']);
$this->setData(['theme','footer','copyrightPosition','3']);
$this->setData(['config','ItemsperPage',10]);
$this->setData(['core', 'dataVersion', 840]);
$this->SaveData();
}
// Version 8.4.4
if($this->getData(['core', 'dataVersion']) < 844) {
$this->setData(['theme','footer','socialsPosition','none']);
$this->setData(['theme','footer','textPosition','none']);
$this->setData(['theme','footer','copyrightPosition','center']);
$this->setData(['core', 'dataVersion', 844]);
$this->SaveData();
}
// Version 8.4.6
if($this->getData(['core', 'dataVersion']) < 846) {
$this->setData(['config','ItemsperPage',10]);
$this->setData(['core', 'dataVersion', 846]);
$this->SaveData();
}
} }
} }
@ -977,9 +1036,7 @@ class core extends common {
} }
$css .= 'header{background-size:' . $this->getData(['theme','header','imageContainer']).'}'; $css .= 'header{background-size:' . $this->getData(['theme','header','imageContainer']).'}';
$css .= 'header{background-color:' . $colors['normal'] . ';height:' . $this->getData(['theme', 'header', 'height']) . ';line-height:' . $this->getData(['theme', 'header', 'height']) . ';text-align:' . $this->getData(['theme', 'header', 'textAlign']) . '}'; $css .= 'header{background-color:' . $colors['normal'] . ';height:' . $this->getData(['theme', 'header', 'height']) . ';line-height:' . $this->getData(['theme', 'header', 'height']) . ';text-align:' . $this->getData(['theme', 'header', 'textAlign']) . '}';
// Modif CrowueWeb pour la bannière
$css .= '@media (max-width: 767px) {header{height:' . $this->getData(['theme', 'header', 'height'])/2 . 'px;line-height:' . $this->getData(['theme', 'header', 'height'])/2 . 'px;}}'; $css .= '@media (max-width: 767px) {header{height:' . $this->getData(['theme', 'header', 'height'])/2 . 'px;line-height:' . $this->getData(['theme', 'header', 'height'])/2 . 'px;}}';
// Fin modif Croque Web
if($themeHeaderImage = $this->getData(['theme', 'header', 'image'])) { if($themeHeaderImage = $this->getData(['theme', 'header', 'image'])) {
$css .= 'header{background-image:url("../file/source/' . $themeHeaderImage . '");background-position:' . $this->getData(['theme', 'header', 'imagePosition']) . ';background-repeat:' . $this->getData(['theme', 'header', 'imageRepeat']) . '}'; $css .= 'header{background-image:url("../file/source/' . $themeHeaderImage . '");background-position:' . $this->getData(['theme', 'header', 'imagePosition']) . ';background-repeat:' . $this->getData(['theme', 'header', 'imageRepeat']) . '}';
} }
@ -1251,9 +1308,22 @@ class core extends common {
if(file_exists($viewPath)) { if(file_exists($viewPath)) {
ob_start(); ob_start();
include $viewPath; include $viewPath;
$modpos = $this->getData(['page', $this->getUrl(0), 'modulePosition']);
if ($modpos === 'top') {
$this->addOutput([ $this->addOutput([
'content' => ($output['showPageContent'] ? $pageContent : '') . ob_get_clean() 'content' => ob_get_clean() . ($output['showPageContent'] ? $pageContent : '')]);
]); }
else if ($modpos === 'free') {
$begin = strstr($pageContent, '[]', true);
$end = strstr($pageContent, '[]');
$cut=2;
$end=substr($end,-strlen($end)+$cut);
$this->addOutput([
'content' => ($output['showPageContent'] ? $begin : '') . ob_get_clean() . ($output['showPageContent'] ? $end : '')]); }
else {
$this->addOutput([
'content' => ($output['showPageContent'] ? $pageContent : '') . ob_get_clean()]);
}
} }
} }
// Librairies // Librairies
@ -1604,10 +1674,11 @@ class helper {
* Crée un système de pagination (retourne un tableau contenant les informations sur la pagination (first, last, pages)) * Crée un système de pagination (retourne un tableau contenant les informations sur la pagination (first, last, pages))
* @param array $array Tableau de donnée à utiliser * @param array $array Tableau de donnée à utiliser
* @param string $url URL à utiliser, la dernière partie doit correspondre au numéro de page, par défaut utiliser $this->getUrl() * @param string $url URL à utiliser, la dernière partie doit correspondre au numéro de page, par défaut utiliser $this->getUrl()
* @param string $item pagination nombre d'éléments par page
* @param null|int $sufix Suffixe de l'url * @param null|int $sufix Suffixe de l'url
* @return array * @return array
*/ */
public static function pagination($array, $url, $sufix = null) { public static function pagination($array, $url, $item, $sufix = null) {
// Scinde l'url // Scinde l'url
$url = explode('/', $url); $url = explode('/', $url);
// Url de pagination // Url de pagination
@ -1617,13 +1688,13 @@ class helper {
// Nombre d'éléments à afficher // Nombre d'éléments à afficher
$nbElements = count($array); $nbElements = count($array);
// Nombre de page // Nombre de page
$nbPage = ceil($nbElements / 10); $nbPage = ceil($nbElements / $item);
// Page courante // Page courante
$currentPage = is_numeric($urlPagination) ? self::filter($urlPagination, self::FILTER_INT) : 1; $currentPage = is_numeric($urlPagination) ? self::filter($urlPagination, self::FILTER_INT) : 1;
// Premier élément de la page // Premier élément de la page
$firstElement = ($currentPage - 1) * 10; $firstElement = ($currentPage - 1) * $item;
// Dernier élément de la page // Dernier élément de la page
$lastElement = $firstElement + 10; $lastElement = $firstElement + $item;
$lastElement = ($lastElement > $nbElements) ? $nbElements : $lastElement; $lastElement = ($lastElement > $nbElements) ? $nbElements : $lastElement;
// Mise en forme de la liste des pages // Mise en forme de la liste des pages
$pages = ''; $pages = '';
@ -1765,8 +1836,8 @@ class layout extends common {
*/ */
public function showCopyright() { public function showCopyright() {
$items = '<div id="footerCopyright">'; $items = '<div id="footerCopyright">';
$items .= 'Motorisé par <a href="http://zwiicms.com/" target="_blank">Zwii</a>'; $items .= 'Motorisé par <a href="http://zwiicms.com/" onclick="window.open(this.href);return false" title="Zwii CMS sans base de données, très léger et performant">Zwii</a>';
$items .= ' | <a href="' . helper::baseUrl() . 'sitemap">Plan du site</a>'; $items .= ' | <a href="' . helper::baseUrl() . 'sitemap" title="Plan du site" >Plan du site</a>';
if( if(
( (
$this->getData(['theme', 'footer', 'loginLink']) $this->getData(['theme', 'footer', 'loginLink'])
@ -1774,7 +1845,7 @@ class layout extends common {
) )
OR $this->getUrl(0) === 'theme' OR $this->getUrl(0) === 'theme'
) { ) {
$items .= '<span id="footerLoginLink" ' . ($this->getUrl(0) === 'theme' ? 'class="displayNone"' : '') . '> | <a href="' . helper::baseUrl() . 'user/login/' . str_replace('/', '_', $this->getUrl()) . '">Connexion</a></span>'; $items .= '<span id="footerLoginLink" ' . ($this->getUrl(0) === 'theme' ? 'class="displayNone"' : '') . '> | <a href="' . helper::baseUrl() . 'user/login/' . str_replace('/', '_', $this->getUrl()) . '" title="Connexion à l\'administration" >Connexion</a></span>';
} }
$items .= '</div>'; $items .= '</div>';
echo $items; echo $items;
@ -1818,7 +1889,7 @@ class layout extends common {
{$items .= '<a href="#">';} {$items .= '<a href="#">';}
else { else {
$items .= '<a href="' . helper::baseUrl() . $parentPageId . '"' . $active . $targetBlank . '>'; } $items .= '<a href="' . helper::baseUrl() . $parentPageId . '" title="'.$this->getData(['page', $parentPageId, 'title']).'" ' . $active . $targetBlank . '>'; }
switch ($this->getData(['page', $parentPageId, 'typeMenu'])) { switch ($this->getData(['page', $parentPageId, 'typeMenu'])) {
@ -1830,14 +1901,14 @@ class layout extends common {
break; break;
case 'icon' : case 'icon' :
if ($this->getData(['page', $parentPageId, 'iconUrl']) != "") { if ($this->getData(['page', $parentPageId, 'iconUrl']) != "") {
$items .= '<img src="'. helper::baseUrl(false) .'site/file/source/'.$this->getData(['page', $parentPageId, 'iconUrl']).'" />'; $items .= '<img alt="'.$this->getData(['page', $parentPageId, 'title']).'" src="'. helper::baseUrl(false) .'site/file/source/'.$this->getData(['page', $parentPageId, 'iconUrl']).'" />';
} else { } else {
$items .= $this->getData(['page', $parentPageId, 'title']); $items .= $this->getData(['page', $parentPageId, 'title']);
} }
break; break;
case 'icontitle' : case 'icontitle' :
if ($this->getData(['page', $parentPageId, 'iconUrl']) != "") { if ($this->getData(['page', $parentPageId, 'iconUrl']) != "") {
$items .= '<img src="'. helper::baseUrl(false) .'site/file/source/'.$this->getData(['page', $parentPageId, 'iconUrl']).'" title="'; $items .= '<img alt="'.$this->getData(['page', $parentPageId, 'title']).'" src="'. helper::baseUrl(false) .'site/file/source/'.$this->getData(['page', $parentPageId, 'iconUrl']).'" title="';
$items .= $this->getData(['page', $parentPageId, 'title']).'"/>'; $items .= $this->getData(['page', $parentPageId, 'title']).'"/>';
} else { } else {
$items .= $this->getData(['page', $parentPageId, 'title']); $items .= $this->getData(['page', $parentPageId, 'title']);
@ -1845,7 +1916,7 @@ class layout extends common {
break; break;
case 'icontext' : case 'icontext' :
if ($this->getData(['page', $parentPageId, 'iconUrl']) != "") { if ($this->getData(['page', $parentPageId, 'iconUrl']) != "") {
$items .= '<img src="'. helper::baseUrl(false) .'site/file/source/'.$this->getData(['page', $parentPageId, 'iconUrl']).'" />'; $items .= '<img alt="'.$this->getData(['page', $parentPageId, 'title']).'" src="'. helper::baseUrl(false) .'site/file/source/'.$this->getData(['page', $parentPageId, 'iconUrl']).'" />';
$items .= $this->getData(['page', $parentPageId, 'title']); $items .= $this->getData(['page', $parentPageId, 'title']);
} else { } else {
$items .= $this->getData(['page', $parentPageId, 'title']); $items .= $this->getData(['page', $parentPageId, 'title']);
@ -1888,14 +1959,14 @@ class layout extends common {
break; break;
case 'icon' : case 'icon' :
if ($this->getData(['page', $childKey, 'iconUrl']) != "") { if ($this->getData(['page', $childKey, 'iconUrl']) != "") {
$items .= '<img src="'. helper::baseUrl(false) .'site/file/source/'.$this->getData(['page', $childKey, 'iconUrl']).'" />'; $items .= '<img alt="'.$this->getData(['page', $parentPageId, 'title']).'" src="'. helper::baseUrl(false) .'site/file/source/'.$this->getData(['page', $childKey, 'iconUrl']).'" />';
} else { } else {
$items .= $this->getData(['page', $parentPageId, 'title']); $items .= $this->getData(['page', $parentPageId, 'title']);
} }
break; break;
case 'icontitle' : case 'icontitle' :
if ($this->getData(['page', $childKey, 'iconUrl']) != "") { if ($this->getData(['page', $childKey, 'iconUrl']) != "") {
$items .= '<img src="'. helper::baseUrl(false) .'site/file/source/'.$this->getData(['page', $childKey, 'iconUrl']).'" title="'; $items .= '<img alt="'.$this->getData(['page', $parentPageId, 'title']).'" src="'. helper::baseUrl(false) .'site/file/source/'.$this->getData(['page', $childKey, 'iconUrl']).'" title="';
$items .= $this->getData(['page', $childKey, 'title']).'"/>'; $items .= $this->getData(['page', $childKey, 'title']).'"/>';
} else { } else {
$items .= $this->getData(['page', $childKey, 'title']); $items .= $this->getData(['page', $childKey, 'title']);
@ -1903,7 +1974,7 @@ class layout extends common {
break; break;
case 'icontext' : case 'icontext' :
if ($this->getData(['page', $childKey, 'iconUrl']) != "") { if ($this->getData(['page', $childKey, 'iconUrl']) != "") {
$items .= '<img src="'. helper::baseUrl(false) .'site/file/source/'.$this->getData(['page', $childKey, 'iconUrl']).'" />'; $items .= '<img alt="'.$this->getData(['page', $parentPageId, 'title']).'" src="'. helper::baseUrl(false) .'site/file/source/'.$this->getData(['page', $childKey, 'iconUrl']).'" />';
$items .= $this->getData(['page', $childKey, 'title']); $items .= $this->getData(['page', $childKey, 'title']);
} else { } else {
$items .= $this->getData(['page', $childKey, 'title']); $items .= $this->getData(['page', $childKey, 'title']);
@ -1937,15 +2008,33 @@ class layout extends common {
*/ */
public function showMetaTitle() { public function showMetaTitle() {
echo '<title>' . $this->core->output['metaTitle'] . '</title>'; echo '<title>' . $this->core->output['metaTitle'] . '</title>';
echo '<meta property="og:title" content="' . $this->core->output['metaTitle'] . '" />';
} }
/** /**
* Affiche la meta description * Affiche la meta description
*/ */
public function showMetaDescription() { public function showMetaDescription() {
echo '<meta name="description" content="' . $this->core->output['metaDescription'] . '">'; echo '<meta name="description" content="' . $this->core->output['metaDescription'] . '" />';
echo '<meta property="og:description" content="' . $this->core->output['metaDescription'] . '" />';
} }
/**
* Affiche le meta type
*/
public function showMetaType() {
echo '<meta property="og:type" content="website" />';
}
/**
* Affiche la meta image (site screenshot)
*/
public function showMetaImage() {
echo '<meta property="og:image" content="' . helper::baseUrl() .'/site/file/source/screenshot.png" />';
}
/** /**
* Affiche la notification * Affiche la notification
*/ */
@ -2055,18 +2144,23 @@ class layout extends common {
switch($socialName) { switch($socialName) {
case 'facebookId': case 'facebookId':
$socialUrl = 'https://www.facebook.com/'; $socialUrl = 'https://www.facebook.com/';
$title = 'Facebook';
break; break;
case 'googleplusId': case 'googleplusId':
$socialUrl = 'https://plus.google.com/'; $socialUrl = 'https://plus.google.com/';
$title = 'Google +';
break; break;
case 'instagramId': case 'instagramId':
$socialUrl = 'https://www.instagram.com/'; $socialUrl = 'https://www.instagram.com/';
$title = 'Instagram';
break; break;
case 'pinterestId': case 'pinterestId':
$socialUrl = 'https://pinterest.com/'; $socialUrl = 'https://pinterest.com/';
$title = 'Pinterest';
break; break;
case 'twitterId': case 'twitterId':
$socialUrl = 'https://twitter.com/'; $socialUrl = 'https://twitter.com/';
$title = 'Twitter';
break; break;
case 'youtubeId': case 'youtubeId':
$socialUrl = 'https://www.youtube.com/channel/'; $socialUrl = 'https://www.youtube.com/channel/';
@ -2075,7 +2169,7 @@ class layout extends common {
$socialUrl = ''; $socialUrl = '';
} }
if($socialId !== '') { if($socialId !== '') {
$socials .= '<a href="' . $socialUrl . $socialId . '" target="_blank">' . template::ico(substr($socialName, 0, -2)) . '</a>'; $socials .= '<a href="' . $socialUrl . $socialId . '" onclick="window.open(this.href);return false" title="' . $title . '">' . template::ico(substr($socialName, 0, -2)) . '</a>';
} }
} }
if($socials !== '') { if($socials !== '') {

View File

@ -1,11 +1,13 @@
<?php $layout = new layout($this); ?> <?php $layout = new layout($this); ?>
<!DOCTYPE html> <!DOCTYPE html>
<html> <html prefix="og: http://ogp.me/ns#" lang="fr">
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<?php $layout->showMetaTitle(); ?> <?php $layout->showMetaTitle(); ?>
<?php $layout->showMetaDescription(); ?> <?php $layout->showMetaDescription(); ?>
<?php $layout->showMetaType(); ?>
<?php $layout->showMetaImage(); ?>
<?php $layout->showFavicon(); ?> <?php $layout->showFavicon(); ?>
<?php $layout->showVendor(); ?> <?php $layout->showVendor(); ?>
<link rel="stylesheet" href="<?php echo helper::baseUrl(false); ?>core/layout/common.css"> <link rel="stylesheet" href="<?php echo helper::baseUrl(false); ?>core/layout/common.css">

View File

@ -45,7 +45,7 @@ h3 {
font-size: 1.4em; font-size: 1.4em;
} }
h4 { h4 {
font-size: 1.2em; font-size: 1.0em;
} }
/* Listes */ /* Listes */
@ -86,6 +86,16 @@ img[align='right'] {
margin-left: 10px; margin-left: 10px;
} }
/*
Signature dans les articles blog et news
*/
.signature {
font-size: 0.8em;
font-style: italic;
text-align: right;
}
/* Tableau */ /* Tableau */
:not([class^="col"]) > .tableWrapper { :not([class^="col"]) > .tableWrapper {
margin: 10px 0; margin: 10px 0;
@ -305,6 +315,11 @@ header .container {
body > nav { body > nav {
margin: 0 -10px; margin: 0 -10px;
} }
/* Items du menu */
nav a > img {
margin: -4px 0;
vertical-align: middle;
}
nav #toggle { nav #toggle {
cursor: pointer; cursor: pointer;
text-align: right; text-align: right;
@ -398,9 +413,15 @@ footer {
text-align: center; text-align: center;
font-size: .8em; font-size: .8em;
padding: 10px 20px; padding: 10px 20px;
vertical-align:middle;
} }
footer .col4 {
vertical-align: middle;
}
footer #footerSocials { footer #footerSocials {
font-size: 1.6em; font-size: 1.0em;
} }
footer #footerSocials span { footer #footerSocials span {
color: #FFF; color: #FFF;

View File

@ -1,11 +1,13 @@
<?php $layout = new layout($this); ?> <?php $layout = new layout($this); ?>
<!DOCTYPE html> <!DOCTYPE html>
<html> <html prefix="og: http://ogp.me/ns#" lang="fr">
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<?php $layout->showMetaTitle(); ?> <?php $layout->showMetaTitle(); ?>
<?php $layout->showMetaDescription(); ?> <?php $layout->showMetaDescription(); ?>
<?php $layout->showMetaType(); ?>
<?php $layout->showMetaImage(); ?>
<?php $layout->showFavicon(); ?> <?php $layout->showFavicon(); ?>
<?php $layout->showVendor(); ?> <?php $layout->showVendor(); ?>
<link rel="stylesheet" href="<?php echo helper::baseUrl(false); ?>core/layout/common.css"> <link rel="stylesheet" href="<?php echo helper::baseUrl(false); ?>core/layout/common.css">

View File

@ -1,11 +1,13 @@
<?php $layout = new layout($this); ?> <?php $layout = new layout($this); ?>
<!DOCTYPE html> <!DOCTYPE html>
<html> <html prefix="og: http://ogp.me/ns#" lang="fr">
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<?php $layout->showMetaTitle(); ?> <?php $layout->showMetaTitle(); ?>
<?php $layout->showMetaDescription(); ?> <?php $layout->showMetaDescription(); ?>
<?php $layout->showMetaType(); ?>
<?php $layout->showMetaImage(); ?>
<?php $layout->showFavicon(); ?> <?php $layout->showFavicon(); ?>
<?php $layout->showVendor(); ?> <?php $layout->showVendor(); ?>
<link rel="stylesheet" href="<?php echo helper::baseUrl(false); ?>core/layout/common.css"> <link rel="stylesheet" href="<?php echo helper::baseUrl(false); ?>core/layout/common.css">
@ -135,11 +137,53 @@
) )
): ?> ): ?>
<!-- Pied de page dans le site --> <!-- Pied de page dans le site -->
<footer <?php if($this->getData(['theme', 'footer', 'position']) === 'hide'): ?>class="displayNone"<?php endif; ?>> <footer <?php if($this->getData(['theme', 'footer', 'position']) === 'hide'): ?>class="displayNone"<?php endif; ?>>
<div class="container"> <div class="container">
<?php $layout->showSocials(); ?> <div class="row">
<?php $layout->showFooterText(); ?> <div class="col4" id="siteLeft"> <!-- bloc gauche -->
<?php $layout->showCopyright(); ?> <?php
if($this->getData(['theme', 'footer', 'textPosition']) === 'left') {
$layout->showFooterText();}
?>
<?php
if($this->getData(['theme', 'footer', 'socialsPosition']) === 'left') {
$layout->showSocials(); }
?>
<?php
if($this->getData(['theme', 'footer', 'copyrightPosition']) === 'left') {
$layout->showCopyright(); }
?>
</div>
<div class="col4" id="siteCenter"> <!-- bloc central -->
<?php
if($this->getData(['theme', 'footer', 'textPosition']) === 'center') {
$layout->showFooterText(); }
?>
<?php
if($this->getData(['theme', 'footer', 'socialsPosition']) === 'center') {
$layout->showSocials(); }
?>
<?php
if($this->getData(['theme', 'footer', 'copyrightPosition']) === 'center') {
$layout->showCopyright(); }
?>
</div>
<div class="col4" id="siteRight"> <!-- bloc droite -->
<?php
if($this->getData(['theme', 'footer', 'textPosition']) === 'right') {
$layout->showFooterText(); }
?>
<?php
if($this->getData(['theme', 'footer', 'socialsPosition']) === 'right') {
$layout->showSocials(); }
?>
<?php
if($this->getData(['theme', 'footer', 'copyrightPosition']) === 'right') {
$layout->showCopyright(); }
?>
</div>
</div>
</div> </div>
</footer> </footer>
<?php endif; ?> <?php endif; ?>
@ -147,10 +191,51 @@
<?php if($this->getData(['theme', 'footer', 'position']) === 'body'): ?> <?php if($this->getData(['theme', 'footer', 'position']) === 'body'): ?>
<!-- Pied de page dans le fond du site --> <!-- Pied de page dans le fond du site -->
<footer> <footer>
<div class="container"> <div class="container-large">
<?php $layout->showSocials(); ?> <div class="row">
<?php $layout->showFooterText(); ?> <div class="col4" id="bodyLeft"> <!-- bloc gauche -->
<?php $layout->showCopyright(); ?> <?php
if($this->getData(['theme', 'footer', 'textPosition']) === 'left') {
$layout->showFooterText(); }
?>
<?php
if($this->getData(['theme', 'footer', 'socialsPosition']) === 'left') {
$layout->showSocials(); }
?>
<?php
if($this->getData(['theme', 'footer', 'copyrightPosition']) === 'left') {
$layout->showCopyright(); }
?>
</div>
<div class="col4" id="bodyCenter"> <!-- bloc central -->
<?php
if($this->getData(['theme', 'footer', 'textPosition']) === 'center') {
$layout->showFooterText(); }
?>
<?php
if($this->getData(['theme', 'footer', 'socialsPosition']) === 'center') {
$layout->showSocials(); }
?>
<?php
if($this->getData(['theme', 'footer', 'copyrightPosition']) === 'center') {
$layout->showCopyright(); }
?>
</div>
<div class="col4" id="bodyRight"> <!-- bloc droite -->
<?php
if($this->getData(['theme', 'footer', 'textPosition']) === 'right') {
$layout->showFooterText(); }
?>
<?php
if($this->getData(['theme', 'footer', 'socialsPosition']) === 'right') {
$layout->showSocials(); }
?>
<?php
if($this->getData(['theme', 'footer', 'copyrightPosition']) === 'right') {
$layout->showCopyright();}
?>
</div>
</div>
</div> </div>
</footer> </footer>
<?php endif; ?> <?php endif; ?>

View File

@ -134,11 +134,20 @@ class config extends common {
'Pacific/Fiji' => '(GMT+12:00) Fiji', 'Pacific/Fiji' => '(GMT+12:00) Fiji',
'Asia/Kamchatka' => '(GMT+12:00) Kamchatka' 'Asia/Kamchatka' => '(GMT+12:00) Kamchatka'
]; ];
// Nombre d'objets par page
public static $ItemsList = [
5 => '5 articles',
10 => '10 articles',
15 => '15 articles',
20 => '20 articles'
];
/** /**
* Sauvegarde des données * Sauvegarde des données
*/ */
public function backup() { public function backup() {
// Creation du ZIP // Creation du ZIP
$fileName = date('Y-m-d-h-i-s', time()) . '.zip'; $fileName = date('Y-m-d-h-i-s', time()) . '.zip';
$zip = new ZipArchive(); $zip = new ZipArchive();
@ -159,6 +168,34 @@ class config extends common {
]); ]);
} }
/**
* Réalise une copie d'écran
* https://www.codexworld.com/capture-screenshot-website-url-php-google-api/
*/
public function configmetaimage() {
// fonction désactivée pour un site local
if ( strpos(helper::baseUrl(false),'localhost') > 0 OR strpos(helper::baseUrl(false),'127.0.0.1') > 0) {
$site = 'https://ZwiiCMS.com'; } else {
$site = helper::baseUrl(false); }
$googlePagespeedData = file_get_contents('https://www.googleapis.com/pagespeedonline/v2/runPagespeed?url='. $site .'&screenshot=true&key=AIzaSyA_JOJidlWFgEiyxTlSGi2_fORgYsCZFtA');
$googlePagespeedData = json_decode($googlePagespeedData, true);
$screenshot = $googlePagespeedData['screenshot']['data'];
$screenshot = str_replace(array('_','-'),array('/','+'),$screenshot);
$data = 'data:image/jpeg;base64,'.$screenshot;
$data = base64_decode(preg_replace('#^data:image/\w+;base64,#i', '', $data));
file_put_contents( 'site/file/source/screenshot.png',$data);
// Valeurs en sortie
$this->addOutput([
'notification' => 'Image tag réinitialisée',
'redirect' => helper::baseUrl() . 'config',
'state' => true
]);
}
/** /**
* Configuration * Configuration
*/ */
@ -184,7 +221,8 @@ class config extends common {
'youtubeId' => $this->getInput('configSocialYoutubeId') 'youtubeId' => $this->getInput('configSocialYoutubeId')
], ],
'timezone' => $this->getInput('configTimezone', helper::FILTER_STRING_SHORT, true), 'timezone' => $this->getInput('configTimezone', helper::FILTER_STRING_SHORT, true),
'title' => $this->getInput('configTitle', helper::FILTER_STRING_SHORT, true) 'title' => $this->getInput('configTitle', helper::FILTER_STRING_SHORT, true),
'ItemsperPage' => $this->getInput('ItemsperPage', helper::FILTER_INT,true)
] ]
]); ]);
if(self::$inputNotices === []) { if(self::$inputNotices === []) {

View File

@ -1,3 +1,4 @@
<?php $this->makeImageTag(); ?>
<?php echo template::formOpen('configForm'); ?> <?php echo template::formOpen('configForm'); ?>
<div class="row"> <div class="row">
<div class="col2"> <div class="col2">
@ -16,18 +17,22 @@
<div class="col6"> <div class="col6">
<div class="block"> <div class="block">
<h4>Informations générales</h4> <h4>Informations générales</h4>
<?php echo template::text('configTitle', [
'label' => 'Titre du site',
'value' => $this->getData(['config', 'title'])
]); ?>
<?php echo template::textarea('configMetaDescription', [
'label' => 'Description du site',
'value' => $this->getData(['config', 'metaDescription'])
]); ?>
<?php echo template::select('configHomePageId', helper::arrayCollumn($this->getData(['page']), 'title', 'SORT_ASC'), [ <?php echo template::select('configHomePageId', helper::arrayCollumn($this->getData(['page']), 'title', 'SORT_ASC'), [
'label' => 'Page d\'accueil', 'label' => 'Page d\'accueil',
'selected' => $this->getData(['config', 'homePageId']) 'selected' => $this->getData(['config', 'homePageId'])
]); ?> ]); ?>
<?php echo template::text('configTitle', [
'label' => 'Titre du site',
'value' => $this->getData(['config', 'title']),
'help' => 'Affiché dans la barre de titre et inclus lors des partages sur les réseaux sociaux'
]); ?>
<?php echo template::textarea('configMetaDescription', [
'label' => 'Description du site',
'value' => $this->getData(['config', 'metaDescription']),
'help' => 'La description est incluse lors des partages sur les réseaux sociaux'
]); ?>
</div> </div>
<div class="block"> <div class="block">
<h4>Options avancées</h4> <h4>Options avancées</h4>
@ -50,6 +55,13 @@
'checked' => helper::checkRewrite(), 'checked' => helper::checkRewrite(),
'help' => 'Afin d\'éviter de bloquer votre site pensez à vérifier que le module de réécriture d\'URL est bien actif sur votre serveur avant d\'activer cette fonctionnalité.' 'help' => 'Afin d\'éviter de bloquer votre site pensez à vérifier que le module de réécriture d\'URL est bien actif sur votre serveur avant d\'activer cette fonctionnalité.'
]); ?> ]); ?>
<?php echo template::select('ItemsperPage', $module::$ItemsList, [
'label' => 'Pagination Blog et News',
'selected' => $this->getData(['config', 'ItemsperPage']),
'help' => 'Nombre d\'articles de blog ou de news par page'
]); ?>
</div> </div>
</div> </div>
<div class="col6"> <div class="col6">
@ -132,6 +144,24 @@
</div> </div>
</div> </div>
</div> </div>
<div class="block">
<h4>Copie d'écran pour OpenGraph :</h4>
<div class="col3">
<!--
Bouton inutile
<?php echo template::button('configmetaImage', [
'href' => helper::baseUrl() . 'config/metaimage',
'value' => 'Rafraîchir la capture <br /> d\'écran du site'
]); ?>
-->
</div>
<div class="col6">
<p><img src='<?php echo helper::baseUrl(false) . 'site/file/source/screenshot.png';?>' />
</div>
<div class="col3">
</div>
<p>Cette copie d'écran est nécessaire aux partages sur les réseaux sociaux. Elle est régénérée lorsque le fichier screenshot.png est effacé du gestionnaire de fichiers.</p>
</div>
</div> </div>
</div> </div>
<?php echo template::formClose(); ?> <?php echo template::formClose(); ?>

View File

@ -32,7 +32,12 @@ class page extends common {
'icontext' => 'Icône et texte' 'icontext' => 'Icône et texte'
]; ];
// menu image // menu image
// Position du module
public static $modulePosition = [
'bottom' => 'En bas',
'top' => 'En haut',
'free' => 'Libre'
];
/** /**
* Création * Création
*/ */
@ -54,6 +59,7 @@ class page extends common {
'metaTitle' => '', 'metaTitle' => '',
'moduleId' => '', 'moduleId' => '',
'parentPageId' => '', 'parentPageId' => '',
'modulePosition' => 'bottom',
'position' => 0, 'position' => 0,
'group' => self::GROUP_VISITOR, 'group' => self::GROUP_VISITOR,
'targetBlank' => false, 'targetBlank' => false,
@ -183,6 +189,7 @@ class page extends common {
'metaDescription' => $this->getInput('pageEditMetaDescription', helper::FILTER_STRING_LONG), 'metaDescription' => $this->getInput('pageEditMetaDescription', helper::FILTER_STRING_LONG),
'metaTitle' => $this->getInput('pageEditMetaTitle'), 'metaTitle' => $this->getInput('pageEditMetaTitle'),
'moduleId' => $this->getInput('pageEditModuleId'), 'moduleId' => $this->getInput('pageEditModuleId'),
'modulePosition' => $this->getInput('configModulePosition'),
'parentPageId' => $this->getInput('pageEditParentPageId'), 'parentPageId' => $this->getInput('pageEditParentPageId'),
'position' => $position, 'position' => $position,
'group' => $this->getInput('pageEditGroup', helper::FILTER_INT), 'group' => $this->getInput('pageEditGroup', helper::FILTER_INT),

View File

@ -1,9 +1,11 @@
<?php echo template::formOpen('pageEditForm'); ?> <?php echo template::formOpen('pageEditForm'); ?>
<div class="row"> <div class="row">
<div class="col2"> <div class="col2">
<?php $href = helper::baseUrl() . $this->getUrl(2); ?>
<?php if ($this->getData(['page', $this->getUrl(2), 'moduleId']) === 'redirection')$href = helper::baseUrl(); ?>
<?php echo template::button('pageEditBack', [ <?php echo template::button('pageEditBack', [
'class' => 'buttonGrey', 'class' => 'buttonGrey',
'href' => helper::baseUrl() . $this->getUrl(2), 'href' => $href,
'ico' => 'left', 'ico' => 'left',
'value' => 'Retour' 'value' => 'Retour'
]); ?> ]); ?>
@ -128,6 +130,13 @@
'maxlength' => '500', 'maxlength' => '500',
'value' => $this->getData(['page', $this->getUrl(2), 'metaDescription']) 'value' => $this->getData(['page', $this->getUrl(2), 'metaDescription'])
]); ?> ]); ?>
<?php if (($this->getData(['page', $this->getUrl(2), 'moduleId']) === 'form') or ($this->getData(['page', $this->getUrl(2), 'moduleId']) === 'gallery')) {
echo template::select('configModulePosition', $module::$modulePosition,[
'help' => 'En position libre ajoutez manuellement le module en plaçant deux crochets [] à l\'endroit voulu dans votre page.',
'label' => 'Position du module dans la page',
'selected' => $this->getData(['page', $this->getUrl(2), 'modulePosition'])
]);
} ?>
<?php echo template::checkbox('pageEditHideTitle', true, 'Cacher le titre', [ <?php echo template::checkbox('pageEditHideTitle', true, 'Cacher le titre', [
'checked' => $this->getData(['page', $this->getUrl(2), 'hideTitle']) 'checked' => $this->getData(['page', $this->getUrl(2), 'hideTitle'])
]); ?> ]); ?>

View File

@ -1,11 +1,17 @@
<ul> <ul>
<?php foreach($this->getHierarchy() as $parentId => $childIds): ?> <?php foreach($this->getHierarchy() as $parentId => $childIds): ?>
<li> <li>
<?php if ($this->getData(['page', $parentId, 'disable']) == false) { ?>
<a href="<?php echo helper::baseUrl() . $parentId; ?>"><?php echo $this->getData(['page', $parentId, 'title']); ?></a> <a href="<?php echo helper::baseUrl() . $parentId; ?>"><?php echo $this->getData(['page', $parentId, 'title']); ?></a>
<?php } else { ?>
<?php echo $this->getData(['page', $parentId, 'title']); }?>
<ul> <ul>
<?php foreach($childIds as $childId): ?> <?php foreach($childIds as $childId): ?>
<li> <li>
<?php if ($this->getData(['page', $childId, 'disable']) == false) { ?>
<a href="<?php echo helper::baseUrl() . $childId; ?>"><?php echo $this->getData(['page', $childId, 'title']); ?></a> <a href="<?php echo helper::baseUrl() . $childId; ?>"><?php echo $this->getData(['page', $childId, 'title']); ?></a>
<?php } else { ?>
<?php echo $this->getData(['page', $childId, 'title']); }?>
</li> </li>
<?php endforeach; ?> <?php endforeach; ?>
</ul> </ul>

View File

@ -10,6 +10,7 @@
* @copyright Copyright (C) 2008-2018, Rémi Jean * @copyright Copyright (C) 2008-2018, Rémi Jean
* @license GNU General Public License, version 3 * @license GNU General Public License, version 3
* @link http://zwiicms.com/ * @link http://zwiicms.com/
* @Edition : 23/9/18 Frédéric Tempez <frederic.tempez@outlook.com>
*/ */
class theme extends common { class theme extends common {
@ -62,6 +63,12 @@ class theme extends common {
'Ubuntu' => 'Ubuntu', 'Ubuntu' => 'Ubuntu',
'Vollkorn' => 'Vollkorn' 'Vollkorn' => 'Vollkorn'
]; ];
public static $footerblocks = [
'hide' => 'Masqué',
'left' => 'Bloc Gauche',
'center' => 'Bloc Central',
'right' => 'Bloc Droite'
];
public static $fontWeights = [ public static $fontWeights = [
'normal' => 'Normal', 'normal' => 'Normal',
'bold' => 'Gras' 'bold' => 'Gras'
@ -83,7 +90,7 @@ class theme extends common {
'1.8em' => 'Petite', '1.8em' => 'Petite',
'2em' => 'Moyenne', '2em' => 'Moyenne',
'2.2em' => 'Grande', '2.2em' => 'Grande',
'2.4em' => 'Très grande' '2.4vmax' => 'Très grande'
]; ];
public static $headerHeights = [ public static $headerHeights = [
'100px' => 'Très petite (100 pixels)', '100px' => 'Très petite (100 pixels)',
@ -266,7 +273,10 @@ class theme extends common {
'socialsAlign' => $this->getInput('themeFooterSocialsAlign'), 'socialsAlign' => $this->getInput('themeFooterSocialsAlign'),
'text' => $this->getInput('themeFooterText', null), 'text' => $this->getInput('themeFooterText', null),
'textAlign' => $this->getInput('themeFooterTextAlign'), 'textAlign' => $this->getInput('themeFooterTextAlign'),
'textColor' => $this->getInput('themeFooterTextColor') 'textColor' => $this->getInput('themeFooterTextColor'),
'copyrightPosition' => $this->getInput('themeFooterCopyrightPosition'),
'textPosition' => $this->getInput('themeFooterTextPosition'),
'socialsPosition' => $this->getInput('themeFooterSocialsPosition')
]]); ]]);
// Valeurs en sortie // Valeurs en sortie
$this->addOutput([ $this->addOutput([

View File

@ -8,6 +8,7 @@
* @copyright Copyright (C) 2008-2018, Rémi Jean * @copyright Copyright (C) 2008-2018, Rémi Jean
* @license GNU General Public License, version 3 * @license GNU General Public License, version 3
* @link http://zwiicms.com/ * @link http://zwiicms.com/
* @Author 23/9/18 Frédéric Tempez <frederic.tempez@outlook.com>
*/ */
/** /**
@ -21,6 +22,7 @@ $("input, select").on("change", function() {
css += "footer a{color:" + textColor + "}"; css += "footer a{color:" + textColor + "}";
// Hauteur du pied de page // Hauteur du pied de page
css += "footer .container > div{margin:" + $("#themeFooterHeight").val() + " 0}"; css += "footer .container > div{margin:" + $("#themeFooterHeight").val() + " 0}";
css += "footer .container-large > div{margin:" + $("#themeFooterHeight").val() + " 0}";
// Alignement du contenu // Alignement du contenu
css += "#footerSocials{text-align:" + $("#themeFooterSocialsAlign").val() + "}"; css += "#footerSocials{text-align:" + $("#themeFooterSocialsAlign").val() + "}";
css += "#footerText{text-align:" + $("#themeFooterTextAlign").val() + "}"; css += "#footerText{text-align:" + $("#themeFooterTextAlign").val() + "}";
@ -52,6 +54,71 @@ $("input, select").on("change", function() {
break; break;
} }
}); });
// Position dans les blocs FT
// Bloc texte personnalisé
$("#themeFooterForm").on("change",function() {
switch($("#themeFooterTextPosition").val()) {
case 'hide':
$("#footerText").hide();
break;
case 'left':
$("#footerText").show().appendTo("#bodyLeft");
$("#footerText").show().appendTo("#siteLeft");
break;
case 'center':
$("#footerText").show().appendTo("#bodyCenter");
$("#footerText").show().appendTo("#siteCenter");
break;
case 'right':
$("#footerText").show().appendTo("#bodyRight");
$("#footerText").show().appendTo("#siteRight");
break;
}
switch($("#themeFooterSocialsPosition").val()) {
case 'hide':
$("#footerSocials").hide();
break;
case 'left':
$("#footerSocials").show().appendTo("#bodyLeft");
$("#footerSocials").show().appendTo("#siteLeft");
break;
case 'center':
$("#footerSocials").show().appendTo("#bodyCenter");
$("#footerSocials").show().appendTo("#siteCenter");
break;
case 'right':
$("#footerSocials").show().appendTo("#bodyRight");
$("#footerSocials").show().appendTo("#siteRight");
break;
}
switch($("#themeFooterCopyrightPosition").val()) {
case 'hide':
$("#footerCopyright").hide();
break;
case 'left':
$("#footerCopyright").show().appendTo("#bodyLeft");
$("#footerCopyright").show().appendTo("#siteLeft");
break;
case 'center':
$("#footerCopyright").show().appendTo("#bodyCenter");
$("#footerCopyright").show().appendTo("#siteCenter");
break;
case 'right':
$("#footerCopyright").show().appendTo("#bodyRight");
$("#footerCopyright").show().appendTo("#siteRight");
break;
}
}).trigger("change");
// Fin Position dans les blocs
// Lien de connexion // Lien de connexion
$("#themeFooterLoginLink").on("change", function() { $("#themeFooterLoginLink").on("change", function() {
if($(this).is(":checked")) { if($(this).is(":checked")) {

View File

@ -59,39 +59,13 @@
</div> </div>
</div> </div>
</div> </div>
<div class="row"> <div class="row">
<div class="col12"> <div class="col12">
<div class="block"> <div class="block">
<h4>Alignement du contenu</h4> <h4>Contenu personnalisé</h4>
<div class="row">
<div class="col4">
<?php echo template::select('themeFooterSocialsAlign', $module::$aligns, [
'label' => 'Réseaux sociaux',
'selected' => $this->getData(['theme', 'footer', 'socialsAlign'])
]); ?>
</div>
<div class="col4">
<?php echo template::select('themeFooterTextAlign', $module::$aligns, [
'label' => 'Texte',
'selected' => $this->getData(['theme', 'footer', 'textAlign'])
]); ?>
</div>
<div class="col4">
<?php echo template::select('themeFooterCopyrightAlign', $module::$aligns, [
'label' => 'Copyright',
'selected' => $this->getData(['theme', 'footer', 'copyrightAlign'])
]); ?>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col6">
<div class="block">
<h4>Contenu</h4>
<?php echo template::textarea('themeFooterText', [ <?php echo template::textarea('themeFooterText', [
'label' => 'Texte du pied de page', 'label' => 'Contenu (texte ou HTML)',
'value' => $this->getData(['theme', 'footer', 'text']) 'value' => $this->getData(['theme', 'footer', 'text'])
]); ?> ]); ?>
<?php echo template::checkbox('themeFooterLoginLink', true, 'Lien de connexion', [ <?php echo template::checkbox('themeFooterLoginLink', true, 'Lien de connexion', [
@ -101,4 +75,47 @@
</div> </div>
</div> </div>
</div> </div>
<div class="row">
<div class="col4">
<div class="block">
<h4>Contenu personnalisé</h4>
<?php echo template::select('themeFooterTextPosition', $module::$footerblocks, [
'label' => 'Emplacement',
'selected' => $this->getData(['theme', 'footer', 'textPosition'])
]); ?>
<?php echo template::select('themeFooterTextAlign', $module::$aligns, [
'label' => 'Alignement',
'selected' => $this->getData(['theme', 'footer', 'textAlign'])
]); ?>
</div>
</div>
<div class="col4">
<div class="block">
<h4>Réseaux sociaux</h4>
<?php echo template::select('themeFooterSocialsPosition', $module::$footerblocks, [
'label' => 'Emplacement',
'selected' => $this->getData(['theme', 'footer', 'socialsPosition'])
]); ?>
<?php echo template::select('themeFooterSocialsAlign', $module::$aligns, [
'label' => 'Alignement',
'selected' => $this->getData(['theme', 'footer', 'socialsAlign'])
]); ?>
</div>
</div>
<div class="col4">
<div class="block">
<h4>Copyright</h4>
<?php echo template::select('themeFooterCopyrightPosition', $module::$footerblocks, [
'label' => 'Emplacement',
'selected' => $this->getData(['theme', 'footer', 'copyrightPosition'])
]); ?>
<?php echo template::select('themeFooterCopyrightAlign', $module::$aligns, [
'label' => 'Alignement',
'selected' => $this->getData(['theme', 'footer', 'copyrightAlign'])
]); ?>
</div>
</div>
</div>
<?php echo template::formClose(); ?> <?php echo template::formClose(); ?>

View File

@ -1403,7 +1403,7 @@ class UploadHandler
} }
if(is_file($targetFile)) { if(is_file($targetFile)) {
chmod($targetFile, $this->options['config']['filePermission']); chmod($targetFile, $this->options['config']['filePermission']);
}else{ }elseif(is_dir($targetFile)){
chmod($targetFile, $this->options['config']['folderPermission']); chmod($targetFile, $this->options['config']['folderPermission']);
} }
}else{ }else{

View File

@ -1,5 +1,5 @@
<?php <?php
$version = "9.12.2"; $version = "9.13.1";
if (session_id() == '') session_start(); if (session_id() == '') session_start();
mb_internal_encoding('UTF-8'); mb_internal_encoding('UTF-8');
@ -98,6 +98,17 @@ $config = array(
'thumbs_base_path' => '../../../site/file/thumb/', 'thumbs_base_path' => '../../../site/file/thumb/',
/*
|--------------------------------------------------------------------------
| mime file control to define files extensions
|--------------------------------------------------------------------------
|
| If you want to be forced to assign the extension starting from the mime type
|
*/
'mime_extension_rename' => true,
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| FTP configuration BETA VERSION | FTP configuration BETA VERSION
@ -132,6 +143,20 @@ $config = array(
'ftp_base_url' => "http://host.com/testFTP", 'ftp_base_url' => "http://host.com/testFTP",
*/ */
/*
|--------------------------------------------------------------------------
| Multiple files selection
|--------------------------------------------------------------------------
| The user can delete multiple files, select all files , deselect all files
*/
'multiple_selection' => false,
/*
|
| The user can have a select button that pass a json to external input or pass the first file selected to editor
| If you use responsivefilemanager tinymce extension can copy into editor multiple object like images, videos, audios, links in the same time
|
*/
'multiple_selection_action_button' => false,
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
@ -262,8 +287,8 @@ $config = array(
// //
// WATERMARK IMAGE // WATERMARK IMAGE
// //
//Watermark url or false //Watermark path or false
'image_watermark' => false, 'image_watermark' => false,//"../watermark.png",
# Could be a pre-determined position such as: # Could be a pre-determined position such as:
# tl = top left, # tl = top left,
# t = top (middle), # t = top (middle),
@ -279,7 +304,7 @@ $config = array(
# padding: If using a pre-determined position you can # padding: If using a pre-determined position you can
# adjust the padding from the edges by passing an amount # adjust the padding from the edges by passing an amount
# in pixels. If using co-ordinates, this value is ignored. # in pixels. If using co-ordinates, this value is ignored.
'image_watermark_padding' => 0, 'image_watermark_padding' => 10,
//****************** //******************
// Default layout setting // Default layout setting
@ -339,11 +364,18 @@ $config = array(
//Allowed extensions (lowercase insert) //Allowed extensions (lowercase insert)
//********************** //**********************
'ext_img' => array( 'jpg', 'jpeg', 'png', 'gif', 'bmp', 'tiff', 'svg', 'ico' ), //Images 'ext_img' => array( 'jpg', 'jpeg', 'png', 'gif', 'bmp', 'tiff', 'svg', 'ico' ), //Images
'ext_file' => array( 'doc', 'docx', 'rtf', 'pdf', 'xls', 'xlsx', 'txt', 'csv', 'html', 'xhtml', 'psd', 'sql', 'log', 'fla', 'xml', 'ade', 'adp', 'mdb', 'accdb', 'ppt', 'pptx', 'odt', 'ots', 'ott', 'odb', 'odg', 'otp', 'otg', 'odf', 'ods', 'odp', 'css', 'ai', 'kmz','dwg', 'dxf', 'hpgl', 'plt', 'spl', 'step', 'stp', 'iges', 'igs', 'sat', 'cgm'), //Files 'ext_file' => array( 'doc', 'docx', 'rtf', 'pdf', 'xls', 'xlsx', 'txt', 'csv', 'html', 'xhtml', 'psd', 'sql', 'log', 'fla', 'xml', 'ade', 'adp', 'mdb', 'accdb', 'ppt', 'pptx', 'odt', 'ots', 'ott', 'odb', 'odg', 'otp', 'otg', 'odf', 'ods', 'odp', 'css', 'ai', 'kmz','dwg', 'dxf', 'hpgl', 'plt', 'spl', 'step', 'stp', 'iges', 'igs', 'sat', 'cgm', 'tiff'), //Files
'ext_video' => array( 'mov', 'mpeg', 'm4v', 'mp4', 'avi', 'mpg', 'wma', "flv", "webm" ), //Video 'ext_video' => array( 'mov', 'mpeg', 'm4v', 'mp4', 'avi', 'mpg', 'wma', "flv", "webm" ), //Video
'ext_music' => array( 'mp3', 'mpga', 'm4a', 'ac3', 'aiff', 'mid', 'ogg', 'wav' ), //Audio 'ext_music' => array( 'mp3', 'mpga', 'm4a', 'ac3', 'aiff', 'mid', 'ogg', 'wav' ), //Audio
'ext_misc' => array( 'zip', 'rar', 'gz', 'tar', 'iso', 'dmg' ), //Archives 'ext_misc' => array( 'zip', 'rar', 'gz', 'tar', 'iso', 'dmg' ), //Archives
//*********************
// If you insert an extensions blacklist array the filemanager don't check any extensions but simply block the extensions in the list
// otherwise check Allowed extensions configuration
//*********************
'ext_blacklist' => false, //['jpg'],
/****************** /******************
* AVIARY config * AVIARY config
*******************/ *******************/

File diff suppressed because one or more lines are too long

View File

@ -44,13 +44,16 @@ 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'])){
$subdir_path = rawurldecode(trim(strip_tags($_SESSION['RF']['fldr']),"/"));
} }
if (strpos($subdir_path,'../') === FALSE if (strpos($subdir_path,'../') === FALSE
&& strpos($subdir_path,'./') === FALSE && strpos($subdir_path,'./') === FALSE
&& strpos($subdir_path,'..\\') === FALSE && strpos($subdir_path,'..\\') === FALSE
&& strpos($subdir_path,'.\\') === FALSE) && strpos($subdir_path,'.\\') === FALSE)
{ {
$subdir = $subdir_path ."/"; $subdir = strip_tags($subdir_path) ."/";
$_SESSION['RF']['fldr'] = $subdir_path;
$_SESSION['RF']["filter"]=''; $_SESSION['RF']["filter"]='';
} }
else { $subdir = ''; } else { $subdir = ''; }
@ -143,7 +146,19 @@ if(!$ftp){
if (!is_dir($thumbs_path.$subdir)) if (!is_dir($thumbs_path.$subdir))
{ {
create_folder(FALSE, $thumbs_path.$subdir); create_folder(FALSE, $thumbs_path.$subdir,$ftp,$config);
}
}
$multiple=null;
if (isset($_GET['multiple'])){
if($_GET['multiple'] == 1){
$multiple = 1;
$config['multiple_selection'] = true;
$config['multiple_selection_action_button'] = true;
}elseif($_GET['multiple'] == 0){
$multiple = 0;
$config['multiple_selection'] = false;
$config['multiple_selection_action_button'] = false;
} }
} }
if (isset($_GET['callback'])) if (isset($_GET['callback']))
@ -253,22 +268,27 @@ if (isset($_GET['editor']))
$editor = strip_tags($_GET['editor']); $editor = strip_tags($_GET['editor']);
} else { } else {
if($_GET['type']==0){ if($_GET['type']==0){
$editor=false; $editor=null;
} else { } else {
$editor='tinymce'; $editor='tinymce';
} }
} }
if (!isset($_GET['field_id'])) $_GET['field_id'] = ''; $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']) : '';
$type_param = fix_get_params($_GET['type']); $type_param = fix_get_params($_GET['type']);
$apply = null;
if($multiple){
$apply = 'apply_multiple';
}
if ($type_param==1) $apply_type = 'apply_img';
elseif($type_param==2) $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 ($type_param==1) $apply = 'apply_img'; if(!$apply){
elseif($type_param==2) $apply = 'apply_link'; $apply = $apply_type;
elseif($type_param==0 && $_GET['field_id']=='') $apply = 'apply_none'; }
elseif($type_param==3) $apply = 'apply_video';
else $apply = 'apply';
$get_params = array( $get_params = array(
'editor' => $editor, 'editor' => $editor,
@ -278,6 +298,7 @@ $get_params = array(
'crossdomain' => $crossdomain, 'crossdomain' => $crossdomain,
'extensions' => ($extensions) ? urlencode(json_encode($extensions)) : null , 'extensions' => ($extensions) ? urlencode(json_encode($extensions)) : null ,
'field_id' => $field_id, 'field_id' => $field_id,
'multiple' => $multiple,
'relative_url' => $return_relative_url, 'relative_url' => $return_relative_url,
'akey' => (isset($_GET['akey']) && $_GET['akey'] != '' ? $_GET['akey'] : 'key') 'akey' => (isset($_GET['akey']) && $_GET['akey'] != '' ? $_GET['akey'] : 'key')
); );
@ -334,7 +355,6 @@ $get_params = http_build_query($get_params);
<script> <script>
var ext_img=new Array('<?php echo implode("','", $ext_img)?>'); var ext_img=new Array('<?php echo implode("','", $ext_img)?>');
var allowed_ext=new Array('<?php echo implode("','", $ext)?>');
var image_editor=<?php echo $aviary_active?"true":"false";?>; var image_editor=<?php echo $aviary_active?"true":"false";?>;
if (image_editor) { if (image_editor) {
var featherEditor = new Aviary.Feather({ var featherEditor = new Aviary.Feather({
@ -408,11 +428,13 @@ $get_params = http_build_query($get_params);
<input type="hidden" id="view" value="<?php echo $view;?>" /> <input type="hidden" id="view" value="<?php echo $view;?>" />
<input type="hidden" id="subdir" value="<?php echo $subdir;?>" /> <input type="hidden" id="subdir" value="<?php echo $subdir;?>" />
<input type="hidden" id="field_id" value="<?php echo $field_id;?>" /> <input type="hidden" id="field_id" value="<?php echo $field_id;?>" />
<input type="hidden" id="multiple" value="<?php echo $multiple;?>" />
<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 $upload_dir;?>" /> <input type="hidden" id="upload_dir" value="<?php echo $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 $thumbs_path.$subdir;?>" />
<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="new_folder" value="<?php echo trans('New_Folder');?>" /> <input type="hidden" id="new_folder" value="<?php echo trans('New_Folder');?>" />
<input type="hidden" id="ok" value="<?php echo trans('OK');?>" /> <input type="hidden" id="ok" value="<?php echo trans('OK');?>" />
<input type="hidden" id="cancel" value="<?php echo trans('Cancel');?>" /> <input type="hidden" id="cancel" value="<?php echo trans('Cancel');?>" />
@ -429,8 +451,8 @@ $get_params = http_build_query($get_params);
<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(''),$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(''),$base_url.$_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($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($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;?>" />
<input type="hidden" id="copy_cut_max_size" value="<?php echo $copy_cut_max_size;?>" /> <input type="hidden" id="copy_cut_max_size" value="<?php echo $copy_cut_max_size;?>" />
<input type="hidden" id="copy_cut_max_count" value="<?php echo $copy_cut_max_count;?>" /> <input type="hidden" id="copy_cut_max_count" value="<?php echo $copy_cut_max_count;?>" />
<input type="hidden" id="lang_copy" value="<?php echo trans('Copy');?>" /> <input type="hidden" id="lang_copy" value="<?php echo trans('Copy');?>" />
@ -652,7 +674,7 @@ foreach($files as $k=>$file){
'date'=>$date, 'date'=>$date,
'size'=>$size, 'size'=>$size,
'permissions' => $file['permissions'], 'permissions' => $file['permissions'],
'extension'=>strtolower($file_ext) 'extension'=>fix_strtolower($file_ext)
); );
}else{ }else{
@ -673,7 +695,7 @@ foreach($files as $k=>$file){
'date'=>$date, 'date'=>$date,
'size'=>$size, 'size'=>$size,
'permissions' =>'', 'permissions' =>'',
'extension'=>strtolower($file_ext) 'extension'=>fix_strtolower($file_ext)
); );
if($show_folder_size){ if($show_folder_size){
$sorted[$k]['nfiles'] = $nfiles; $sorted[$k]['nfiles'] = $nfiles;
@ -760,10 +782,22 @@ $files=$sorted;
<?php if($create_folders){ ?> <?php if($create_folders){ ?>
<button class="tip btn new-folder" title="<?php echo trans('New_Folder')?>"><i class="icon-plus"></i><i class="icon-folder-open"></i></button> <button class="tip btn new-folder" title="<?php echo trans('New_Folder')?>"><i class="icon-plus"></i><i class="icon-folder-open"></i></button>
<?php } ?> <?php } ?>
<?php if($copy_cut_files || $copy_cut_dirs){ ?> <?php if($config['copy_cut_files'] || $config['copy_cut_dirs']){ ?>
<button class="tip btn paste-here-btn" title="<?php echo trans('Paste_Here');?>"><i class="rficon-clipboard-apply"></i></button> <button class="tip btn paste-here-btn" title="<?php echo trans('Paste_Here');?>"><i class="rficon-clipboard-apply"></i></button>
<button class="tip btn clear-clipboard-btn" title="<?php echo trans('Clear_Clipboard');?>"><i class="rficon-clipboard-clear"></i></button> <button class="tip btn clear-clipboard-btn" title="<?php echo trans('Clear_Clipboard');?>"><i class="rficon-clipboard-clear"></i></button>
<?php } ?> <?php } ?>
<div id="multiple-selection" style="display:none;">
<?php if($config['multiple_selection']){ ?>
<?php if($config['delete_files']){ ?>
<button class="tip btn multiple-delete-btn" title="<?php echo trans('Erase');?>" data-confirm="<?php echo trans('Confirm_del');?>"><i class="icon-trash"></i></button>
<?php } ?>
<button class="tip btn multiple-select-btn" title="<?php echo trans('Select_All');?>"><i class="icon-check"></i></button>
<button class="tip btn multiple-deselect-btn" title="<?php echo trans('Deselect_All');?>"><i class="icon-ban-circle"></i></button>
<?php if($apply_type!="apply_none" && $config['multiple_selection_action_button']){ ?>
<button class="btn multiple-action-btn btn-inverse" data-function="<?php echo $apply_type;?>"><?php echo trans('Select'); ?></button>
<?php } ?>
<?php } ?>
</div>
</div> </div>
<div class="span2 half view-controller"> <div class="span2 half view-controller">
<button class="btn tip<?php if($view==0) echo " btn-inverse";?>" id="view0" data-value="0" title="<?php echo trans('View_boxes');?>"><i class="icon-th <?php if($view==0) echo "icon-white";?>"></i></button> <button class="btn tip<?php if($view==0) echo " btn-inverse";?>" id="view0" data-value="0" title="<?php echo trans('View_boxes');?>"><i class="icon-th <?php if($view==0) echo "icon-white";?>"></i></button>
@ -772,7 +806,7 @@ $files=$sorted;
</div> </div>
<div class="span6 entire types"> <div class="span6 entire types">
<span><?php echo trans('Filters');?>:</span> <span><?php echo trans('Filters');?>:</span>
<?php if($_GET['type']!=1 && $_GET['type']!=3 && $show_filter_buttons){ ?> <?php if($_GET['type']!=1 && $_GET['type']!=3 && $config['show_filter_buttons']){ ?>
<?php if(count($ext_file)>0 or false){ ?> <?php if(count($ext_file)>0 or false){ ?>
<input id="select-type-1" name="radio-sort" type="radio" data-item="ff-item-type-1" checked="checked" class="hide" /> <input id="select-type-1" name="radio-sort" type="radio" data-item="ff-item-type-1" checked="checked" class="hide" />
<label id="ff-item-type-1" title="<?php echo trans('Files');?>" for="select-type-1" class="tip btn ff-label-type-1"><i class="icon-file"></i></label> <label id="ff-item-type-1" title="<?php echo trans('Files');?>" for="select-type-1" class="tip btn ff-label-type-1"><i class="icon-file"></i></label>
@ -892,7 +926,7 @@ $files=$sorted;
foreach ($files as $file_array) { foreach ($files as $file_array) {
$file=$file_array['file']; $file=$file_array['file'];
if($file == '.' || ( substr($file, 0, 1) == '.' && isset( $file_array[ 'extension' ] ) && $file_array[ 'extension' ] == strtolower(trans( 'Type_dir' ) )) || (isset($file_array['extension']) && $file_array['extension']!=strtolower(trans('Type_dir'))) || ($file == '..' && $subdir == '') || in_array($file, $hidden_folders) || ($filter!='' && $n_files>$file_number_limit_js && $file!=".." && stripos($file,$filter)===false)){ if($file == '.' || ( substr($file, 0, 1) == '.' && isset( $file_array[ 'extension' ] ) && $file_array[ 'extension' ] == fix_strtolower(trans( 'Type_dir' ) )) || (isset($file_array['extension']) && $file_array['extension']!=fix_strtolower(trans('Type_dir'))) || ($file == '..' && $subdir == '') || in_array($file, $hidden_folders) || ($filter!='' && $n_files>$file_number_limit_js && $file!=".." && stripos($file,$filter)===false)){
continue; continue;
} }
$new_name=fix_filename($file,$config); $new_name=fix_filename($file,$config);
@ -920,7 +954,7 @@ $files=$sorted;
} }
?> ?>
<li data-name="<?php echo $file ?>" class="<?php if($file=='..') echo 'back'; else echo 'dir';?>" <?php if(($filter!='' && stripos($file,$filter)===false)) echo ' style="display:none;"';?>><?php <li data-name="<?php echo $file ?>" class="<?php if($file=='..') echo 'back'; else echo 'dir';?> <?php if(!$config['multiple_selection']){ ?>no-selector<?php } ?>" <?php if(($filter!='' && stripos($file,$filter)===false)) echo ' style="display:none;"';?>><?php
$file_prevent_rename = false; $file_prevent_rename = false;
$file_prevent_delete = false; $file_prevent_delete = false;
if (isset($filePermissions[$file])) { if (isset($filePermissions[$file])) {
@ -958,14 +992,14 @@ $files=$sorted;
<input type="hidden" class="name" value="<?php echo $file_array['file_lcase'];?>"/> <input type="hidden" class="name" value="<?php echo $file_array['file_lcase'];?>"/>
<input type="hidden" class="date" value="<?php echo $file_array['date'];?>"/> <input type="hidden" class="date" value="<?php echo $file_array['date'];?>"/>
<input type="hidden" class="size" value="<?php echo $file_array['size'];?>"/> <input type="hidden" class="size" value="<?php echo $file_array['size'];?>"/>
<input type="hidden" class="extension" value="<?php echo trans('Type_dir');?>"/> <input type="hidden" class="extension" value="<?php echo fix_strtolower(trans('Type_dir'));?>"/>
<div class="file-date"><?php echo date(trans('Date_type'),$file_array['date']);?></div> <div class="file-date"><?php echo date(trans('Date_type'),$file_array['date']);?></div>
<?php if($show_folder_size){ ?> <?php if($show_folder_size){ ?>
<div class="file-size"><?php echo makeSize($file_array['size']);?></div> <div class="file-size"><?php echo makeSize($file_array['size']);?></div>
<input type="hidden" class="nfiles" value="<?php echo $file_array['nfiles'];?>"/> <input type="hidden" class="nfiles" value="<?php echo $file_array['nfiles'];?>"/>
<input type="hidden" class="nfolders" value="<?php echo $file_array['nfolders'];?>"/> <input type="hidden" class="nfolders" value="<?php echo $file_array['nfolders'];?>"/>
<?php } ?> <?php } ?>
<div class='file-extension'><?php echo trans('Type_dir');?></div> <div class='file-extension'><?php echo fix_strtolower(trans('Type_dir'));?></div>
<figcaption> <figcaption>
<a href="javascript:void('')" class="tip-left edit-button rename-file-paths <?php if($rename_folders && !$file_prevent_rename) echo "rename-folder";?>" title="<?php echo trans('Rename')?>" data-folder="1" data-permissions="<?php echo $file_array['permissions']; ?>" data-path="<?php echo $rfm_subfolder.$subdir.$file;?>"> <a href="javascript:void('')" class="tip-left edit-button rename-file-paths <?php if($rename_folders && !$file_prevent_rename) echo "rename-folder";?>" title="<?php echo trans('Rename')?>" data-folder="1" data-permissions="<?php echo $file_array['permissions']; ?>" data-path="<?php echo $rfm_subfolder.$subdir.$file;?>">
<i class="icon-pencil <?php if(!$rename_folders || $file_prevent_rename) echo 'icon-white';?>"></i></a> <i class="icon-pencil <?php if(!$rename_folders || $file_prevent_rename) echo 'icon-white';?>"></i></a>
@ -984,7 +1018,7 @@ $files=$sorted;
foreach ($files as $nu=>$file_array) { foreach ($files as $nu=>$file_array) {
$file=$file_array['file']; $file=$file_array['file'];
if($file == '.' || $file == '..' || $file_array['extension']==trans('Type_dir') || !in_array(fix_strtolower($file_array['extension']), $ext) || ($filter!='' && $n_files>$file_number_limit_js && stripos($file,$filter)===false)) if($file == '.' || $file == '..' || $file_array['extension']==fix_strtolower(trans('Type_dir')) || (!$config['ext_blacklist'] && !in_array(fix_strtolower($file_array['extension']), $ext)) || ($config['ext_blacklist'] && in_array(fix_strtolower($file_array['extension']), $config['ext_blacklist'])) || ($filter!='' && $n_files>$file_number_limit_js && stripos($file,$filter)===false))
continue; continue;
foreach ( $hidden_files as $hidden_file ) { foreach ( $hidden_files as $hidden_file ) {
if ( fnmatch($hidden_file, $file, FNM_PATHNAME) ) { if ( fnmatch($hidden_file, $file, FNM_PATHNAME) ) {
@ -1089,7 +1123,7 @@ $files=$sorted;
} }
if((!($_GET['type']==1 && !$is_img) && !(($_GET['type']==3 && !$is_video) && ($_GET['type']==3 && !$is_audio))) && $class_ext>0){ if((!($_GET['type']==1 && !$is_img) && !(($_GET['type']==3 && !$is_video) && ($_GET['type']==3 && !$is_audio))) && $class_ext>0){
?> ?>
<li class="ff-item-type-<?php echo $class_ext;?> file" data-name="<?php echo $file;?>" <?php if(($filter!='' && stripos($file,$filter)===false)) echo ' style="display:none;"';?>><?php <li class="ff-item-type-<?php echo $class_ext;?> file <?php if(!$config['multiple_selection']){ ?>no-selector<?php } ?>" data-name="<?php echo $file;?>" <?php if(($filter!='' && stripos($file,$filter)===false)) echo ' style="display:none;"';?>><?php
$file_prevent_rename = false; $file_prevent_rename = false;
$file_prevent_delete = false; $file_prevent_delete = false;
if (isset($filePermissions[$file])) { if (isset($filePermissions[$file])) {
@ -1103,11 +1137,25 @@ $files=$sorted;
<a href="javascript:void('')" class="link" data-file="<?php echo $file;?>" data-function="<?php echo $apply;?>"> <a href="javascript:void('')" class="link" data-file="<?php echo $file;?>" data-function="<?php echo $apply;?>">
<div class="img-precontainer"> <div class="img-precontainer">
<?php if($is_icon_thumb){ ?><div class="filetype"><?php echo $file_array['extension'] ?></div><?php } ?> <?php if($is_icon_thumb){ ?><div class="filetype"><?php echo $file_array['extension'] ?></div><?php } ?>
<?php if($config['multiple_selection']){ ?><div class="selector">
<label class="cont">
<input type="checkbox" class="selection" name="selection[]" value="<?php echo $file;?>">
<span class="checkmark"></span>
</label>
</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">
<label class="cont">
<input type="checkbox" class="selection" name="selection[]" value="<?php echo $file;?>">
<span class="checkmark"></span>
</label>
</div>
<?php } ?>
<div class="filetype <?php echo $file_array['extension'] ?> <?php if(in_array($file_array['extension'], $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'], $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">
<?php if($mini_src!=""){ ?> <?php if($mini_src!=""){ ?>
@ -1118,8 +1166,6 @@ $files=$sorted;
<?php if($is_icon_thumb){ ?> <?php if($is_icon_thumb){ ?>
<div class="cover"></div> <div class="cover"></div>
<?php } ?> <?php } ?>
</a>
<a href="javascript:void('')" class="link" data-file="<?php echo $file;?>" data-function="<?php echo $apply;?>">
<div class="box"> <div class="box">
<h4 class="<?php if($ellipsis_title_after_first_row){ echo "ellipsis"; } ?>"> <h4 class="<?php if($ellipsis_title_after_first_row){ echo "ellipsis"; } ?>">
<?php echo $filename;?></h4> <?php echo $filename;?></h4>

View File

@ -57,26 +57,55 @@ while($cycle && $i<$max_cycles)
$path = fix_dirname($path)."/"; $path = fix_dirname($path)."/";
} }
$path = $current_path.$_POST['path']; function returnPaths($_path,$_name,$config){
$path_thumb = $thumbs_base_path.$_POST['path']; global $ftp;
$path = $config['current_path'].$_path;
$path_thumb = $config['thumbs_base_path'].$_path;
$name = null;
if($ftp){ if($ftp){
$path = $ftp_base_folder.$upload_dir.$_POST['path']; $path = $config['ftp_base_folder'].$config['upload_dir'].$_path;
$path_thumb = $ftp_base_folder.$ftp_thumbs_dir.$_POST['path']; $path_thumb = $config['ftp_base_folder'].$config['ftp_thumbs_dir'].$_path;
} }
if ($_name)
if (isset($_POST['name']))
{ {
$name = fix_filename($_POST['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;
} }
} }
return array($path,$path_thumb,$name);
}
if(isset($_POST['paths'])){
$paths = $paths_thumb = $names = array();
foreach ($_POST['paths'] as $key => $path) {
$name = null;
if(isset($_POST['names'][$key])){
$name = $_POST['names'][$key];
}
list($path,$path_thumb,$name) = returnPaths($path,$name,$config);
$paths[] = $path;
$paths_thumb[] = $path_thumb;
$names = $name;
}
}else{
$name = null;
if(isset($_POST['name'])){
$name = $_POST['name'];
}
list($path,$path_thumb,$name) = returnPaths($_POST['path'],$name,$config);
}
$info = pathinfo($path); $info = pathinfo($path);
if (isset($info['extension']) && !(isset($_GET['action']) && $_GET['action']=='delete_folder') && !in_array(strtolower($info['extension']), $ext) && $_GET['action'] != 'create_file') if (isset($info['extension']) && !(isset($_GET['action']) && $_GET['action']=='delete_folder') &&
(
(!$config['ext_blacklist'] && !in_array(strtolower($info['extension']), $ext)) ||
($config['ext_blacklist'] && in_array(fix_strtolower($file_array['extension']),$config['ext_blacklist']))
)
&& $_GET['action'] != 'create_file' )
{ {
response(trans('wrong extension').AddErrorLocation())->send(); response(trans('wrong extension').AddErrorLocation())->send();
exit; exit;
@ -87,49 +116,15 @@ if (isset($_GET['action']))
switch($_GET['action']) switch($_GET['action'])
{ {
case 'delete_file': case 'delete_file':
if ($delete_files){
if($ftp){
try{
$ftp->delete("/".$path);
@$ftp->delete("/".$path_thumb);
}catch(FtpClient\FtpException $e){
return;
}
}else{
unlink($path); deleteFile($path,$path_thumb,$config);
if (file_exists($path_thumb)){
unlink($path_thumb); break;
} case 'delete_files':
foreach ($paths as $key => $p) {
deleteFile($p,$paths_thumb[$key],$config);
} }
$info=pathinfo($path);
if (!$ftp && $relative_image_creation){
foreach($relative_path_from_current_pos as $k=>$path)
{
if ($path!="" && $path[strlen($path)-1]!="/") $path.="/";
if (file_exists($info['dirname']."/".$path.$relative_image_creation_name_to_prepend[$k].$info['filename'].$relative_image_creation_name_to_append[$k].".".$info['extension']))
{
unlink($info['dirname']."/".$path.$relative_image_creation_name_to_prepend[$k].$info['filename'].$relative_image_creation_name_to_append[$k].".".$info['extension']);
}
}
}
if (!$ftp && $fixed_image_creation)
{
foreach($fixed_path_from_filemanager as $k=>$path)
{
if ($path!="" && $path[strlen($path)-1] != "/") $path.="/";
$base_dir=$path.substr_replace($info['dirname']."/", '', 0, strlen($current_path));
if (file_exists($base_dir.$fixed_image_creation_name_to_prepend[$k].$info['filename'].$fixed_image_creation_to_append[$k].".".$info['extension']))
{
unlink($base_dir.$fixed_image_creation_name_to_prepend[$k].$info['filename'].$fixed_image_creation_to_append[$k].".".$info['extension']);
}
}
}
}
break; break;
case 'delete_folder': case 'delete_folder':
if ($delete_folders){ if ($delete_folders){
@ -166,7 +161,10 @@ if (isset($_GET['action']))
$name = fix_filename($_POST['name'],$config); $name = fix_filename($_POST['name'],$config);
$path .= $name; $path .= $name;
$path_thumb .= $name; $path_thumb .= $name;
create_folder(fix_path($path,$config),fix_path($path_thumb,$config),$ftp,$config); $res = create_folder(fix_path($path,$config),fix_path($path_thumb,$config),$ftp,$config);
if(!$res){
response(trans('Rename_existing_folder').AddErrorLocation())->send();
}
} }
break; break;
case 'rename_folder': case 'rename_folder':

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 535 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

View File

@ -94,6 +94,63 @@ if ( ! function_exists('trans'))
} }
} }
/**
* Delete file
*
* @param string $path
* @param string $path_thumb
* @param string $config
*
* @return nothing
*/
function deleteFile($path,$path_thumb,$config){
if ($config['delete_files']){
$ftp = ftp_con($config);
if($ftp){
try{
$ftp->delete("/".$path);
@$ftp->delete("/".$path_thumb);
}catch(FtpClient\FtpException $e){
return;
}
}else{
if (file_exists($path)){
unlink($path);
}
if (file_exists($path_thumb)){
unlink($path_thumb);
}
}
$info=pathinfo($path);
if (!$ftp && $config['relative_image_creation']){
foreach($config['relative_path_from_current_pos'] as $k=>$path)
{
if ($path!="" && $path[strlen($path)-1]!="/") $path.="/";
if (file_exists($info['dirname']."/".$path.$config['relative_image_creation_name_to_prepend'][$k].$info['filename'].$config['relative_image_creation_name_to_append'][$k].".".$info['extension']))
{
unlink($info['dirname']."/".$path.$config['relative_image_creation_name_to_prepend'][$k].$info['filename'].$config['relative_image_creation_name_to_append'][$k].".".$info['extension']);
}
}
}
if (!$ftp && $config['fixed_image_creation'])
{
foreach($config['fixed_path_from_filemanager'] as $k=>$path)
{
if ($path!="" && $path[strlen($path)-1] != "/") $path.="/";
$base_dir=$path.substr_replace($info['dirname']."/", '', 0, strlen($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']))
{
unlink($base_dir.$config['fixed_image_creation_name_to_prepend'][$k].$info['filename'].$config['fixed_image_creation_to_append'][$k].".".$info['extension']);
}
}
}
}
}
/** /**
* Delete directory * Delete directory
* *
@ -462,10 +519,13 @@ function create_folder($path = null, $path_thumbs = null,$ftp = null,$config = n
$ftp->mkdir($path); $ftp->mkdir($path);
$ftp->mkdir($path_thumbs); $ftp->mkdir($path_thumbs);
}else{ }else{
if(file_exists($path)){
return false;
}
$oldumask = umask(0); $oldumask = umask(0);
if ($path && !file_exists($path)) if ($path && !file_exists($path))
{ {
$permission = 0755; $permission = $config['folderPermission'];
if(isset($config['folderPermission'])){ if(isset($config['folderPermission'])){
$permission = $config['folderPermission']; $permission = $config['folderPermission'];
} }
@ -473,9 +533,10 @@ function create_folder($path = null, $path_thumbs = null,$ftp = null,$config = n
} // or even 01777 so you get the sticky bit set } // or even 01777 so you get the sticky bit set
if ($path_thumbs && ! file_exists($path_thumbs)) if ($path_thumbs && ! file_exists($path_thumbs))
{ {
mkdir($path_thumbs, 0755, true) or die("$path_thumbs cannot be found"); mkdir($path_thumbs, $config['folderPermission'], true) or die("$path_thumbs cannot be found");
} // or even 01777 so you get the sticky bit set } // or even 01777 so you get the sticky bit set
umask($oldumask); umask($oldumask);
return true;
} }
} }
@ -731,7 +792,7 @@ function image_check_memory_usage($img, $max_breedte, $max_hoogte)
* *
* @return bool * @return bool
*/ */
function endsWith($haystack, $needle) function ends_with($haystack, $needle)
{ {
return $needle === "" || substr($haystack, -strlen($needle)) === $needle; return $needle === "" || substr($haystack, -strlen($needle)) === $needle;
} }
@ -780,7 +841,7 @@ function new_thumbnails_creation($targetPath, $targetFile, $name, $current_path,
{ {
create_folder($targetPath . $path, false); create_folder($targetPath . $path, false);
} }
if ( ! endsWith($targetPath, $path)) if ( ! ends_with($targetPath, $path))
{ {
if ( ! create_img($targetFile, $targetPath . $path . $config['relative_image_creation_name_to_prepend'][ $k ] . $info['filename'] . $config['relative_image_creation_name_to_append'][ $k ] . "." . $info['extension'], $config['relative_image_creation_width'][ $k ], $config['relative_image_creation_height'][ $k ], $config['relative_image_creation_option'][ $k ])) if ( ! create_img($targetFile, $targetPath . $path . $config['relative_image_creation_name_to_prepend'][ $k ] . $info['filename'] . $config['relative_image_creation_name_to_append'][ $k ] . "." . $info['extension'], $config['relative_image_creation_width'][ $k ], $config['relative_image_creation_height'][ $k ], $config['relative_image_creation_option'][ $k ]))
{ {

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

145
core/vendor/filemanager/lang/az_AZ.php vendored Normal file
View File

@ -0,0 +1,145 @@
<?php
return array(
'Select' => 'Seç',
'Deselect_All' => 'Deselect All',
'Select_All' => 'Select All',
'Erase' => 'Sil',
'Open' => 'Aç',
'Confirm_del' => 'Bu faylı silmek istədiyinizdə əminsinizmi?',
'All' => 'Hamısı',
'Files' => 'Fayllar',
'Images' => 'Şəkillər',
'Archives' => 'Arxivlər',
'Error_Upload' => 'Yükləmək istədiyiniz fayl maksimum limiti keçdi.',
'Error_extension' => 'Fayl uzantısı icazəsi yoxdur.',
'Upload_file' => 'Fayl Yüklə',
'Filters' => 'Filtrlər',
'Videos' => 'Videolar',
'Music' => 'Mahnılar',
'New_Folder' => 'Yeni Folder',
'Folder_Created' => 'Folder müvəffəqiyyətlə yaradıldı.',
'Existing_Folder' => 'Mövcud folder',
'Confirm_Folder_del' => 'Bu folderi və içindəkiləri silmək istədiyinizə əminsinizmi?',
'Return_Files_List' => 'Faylların siyahısına geri qayıt',
'Preview' => 'İlk baxış',
'Download' => 'Yüklə',
'Insert_Folder_Name' => 'Folder adı əlavə et:',
'Root' => 'kök',
'Rename' => 'Yenidən Adlandır',
'Back' => 'geri',
'View' => 'Görünüş',
'View_list' => 'List görünüşü',
'View_columns_list' => 'Sütunlu list görünüşü',
'View_boxes' => 'Qutu görünüşü',
'Toolbar' => 'Alətlər Paneli',
'Actions' => 'Fəaliyyətlər',
'Rename_existing_file' => 'Bu fayl var artıq',
'Rename_existing_folder' => 'Bu folder var artıq',
'Empty_name' => 'Ad sahəsi boşdur.',
'Text_filter' => 'filtrlə...',
'Swipe_help' => 'Variantları görmək üçün file/folder adına tıklayın',
'Upload_base' => 'Normal Yükləmə',
'Upload_base_help' => "Drag & Drop files(modern browsers) or click in upper button to Add the file(s) and click on Start upload. When the upload is complete, click the 'Return to files list' button.",
'Upload_add_files' => 'Add file(s)',
'Upload_start' => 'Start upload',
'Upload_error_messages' =>array(
1 => 'The uploaded file exceeds the upload_max_filesize directive in php.ini',
2 => 'The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form',
3 => 'The uploaded file was only partially uploaded',
4 => 'No file was uploaded',
6 => 'Missing a temporary folder',
7 => 'Failed to write file to disk',
8 => 'A PHP extension stopped the file upload',
'post_max_size' => 'The uploaded file exceeds the post_max_size directive in php.ini',
'max_file_size' => 'File is too big',
'min_file_size' => 'File is too small',
'accept_file_types' => 'Filetype not allowed',
'max_number_of_files' => 'Maximum number of files exceeded',
'max_width' => 'Image exceeds maximum width',
'min_width' => 'Image requires a minimum width',
'max_height' => 'Image exceeds maximum height',
'min_height' => 'Image requires a minimum height',
'abort' => 'File upload aborted',
'image_resize' => 'Failed to resize image'
),
'Upload_url' => 'From url',
'Type_dir' => 'Kataloq',
'Type' => 'Növ',
'Dimension' => 'Ölçü',
'Size' => 'Çəki',
'Date' => 'Tarix',
'Filename' => 'Fayl adı',
'Operations' => 'Əməliyyatlar',
'Date_type' => 'd-m-Y',
'OK' => 'Razıyam',
'Cancel' => 'Ləğv Et',
'Sorting' => 'sıralama',
'Show_url' => 'URL göstər',
'Extract' => 'bura çıxart',
'File_info' => 'fayl məlumatı',
'Edit_image' => 'şəkli redaktə et',
'Duplicate' => 'Dublikat',
'Folders' => 'Folders',
'Copy' => 'Copy',
'Cut' => 'Cut',
'Paste' => 'Paste',
'CB' => 'CB', // clipboard
'Paste_Here' => 'Paste to this directory',
'Paste_Confirm' => 'Are you sure you want to paste to this directory? This will overwrite existing files/folders if encountered any.',
'Paste_Failed' => 'Failed to paste file(s)',
'Clear_Clipboard' => 'Clear clipboard',
'Clear_Clipboard_Confirm' => 'Are you sure you want to clear the clipboard?',
'Files_ON_Clipboard' => 'There are files on the clipboard.',
'Copy_Cut_Size_Limit' => 'The selected files/folders are too big to %s. Limit: %d MB/operation', // %s = cut or copy
'Copy_Cut_Count_Limit' => 'You selected too many files/folders to %s. Limit: %d files/operation', // %s = cut or copy
'Copy_Cut_Not_Allowed' => 'You are not allowed to %s files.', // %s(1) = cut or copy => %s(2) = files or folders
'Aviary_No_Save' => 'Could not save image',
'Zip_No_Extract' => 'Could not extract. File might be corrupt.',
'Zip_Invalid' => 'This extension is not supported. Valid: zip, gz, tar.',
'Dir_No_Write' => 'The directory you selected is not writable.',
'Function_Disabled' => 'The %s function has been disabled by the server.', // %s = cut or copy
'File_Permission' => 'File permission',
'File_Permission_Not_Allowed' => 'Changing %s permissions are not allowed.', // %s = files or folders
'File_Permission_Recursive' => 'Apply recursively?',
'File_Permission_Wrong_Mode' => "The supplied permission mode is incorrect.",
'User' => 'User',
'Group' => 'Group',
'Yes' => 'Yes',
'No' => 'No',
'Lang_Not_Found' => 'Could not find language.',
'Lang_Change' => 'Change the language',
'File_Not_Found' => 'Could not find the file.',
'File_Open_Edit_Not_Allowed' => 'You are not allowed to %s this file.', // %s = open or edit
'Edit' => 'Edit',
'Edit_File' => "Edit file's content",
'File_Save_OK' => "File successfully saved.",
'File_Save_Error' => "There was an error while saving the file.",
'New_File' => 'New File',
'No_Extension' => 'You have to add a file extension.',
'Valid_Extensions' => 'Valid extensions: %s', // %s = txt => log etc.
'Upload_message' => "Drop file here to upload",
'SERVER ERROR' => "SERVER ERROR",
'forbiden' => "Forbiden",
'wrong path' => "Wrong path",
'wrong name' => "Wrong name",
'wrong extension' => "Wrong extension",
'wrong option' => "Wrong option",
'wrong data' => "Wrong data",
'wrong action' => "Wrong action",
'wrong sub-action' => "Wrong sub-actio",
'no action passed' => "No action passed",
'no path' => "No path",
'no file' => "No file",
'view type number missing' => "View type number missing",
'Not enough Memory' => "Not enough Memory",
'max_size_reached' => "Your image folder has reach its maximale size of %d MB.", //%d = max overall size
'B' => "B",
'KB' => "KB",
'MB' => "MB",
'GB' => "GB",
'TB' => "TB",
'total size' => "Total size",
);

145
core/vendor/filemanager/lang/bg_BG.php vendored Normal file
View File

@ -0,0 +1,145 @@
<?php
return array(
'Select' => 'Избери',
'Deselect_All' => 'Deselect All',
'Select_All' => 'Select All',
'Erase' => 'Изтрий',
'Open' => 'Отваряне',
'Confirm_del' => 'Сигурни ли сте, че искате да изтриете този файл?',
'All' => 'Всичко',
'Files' => 'Файла',
'Images' => 'Изображения',
'Archives' => 'Архиви',
'Error_Upload' => 'Каченият файл надминава максимално разрешената големина.',
'Error_extension' => 'Това файлово разширение не е позволено.',
'Upload_file' => 'Качете файл',
'Filters' => 'Папка',
'Videos' => 'Видео',
'Music' => 'Музика',
'New_Folder' => 'Нова папка',
'Folder_Created' => 'Папката е правилно създадена',
'Existing_Folder' => 'Съществуваща папка',
'Confirm_Folder_del' => 'Сигурни ли сте, че искате да изтриете папката и всичко => което се съдържа с нея?',
'Return_Files_List' => 'Връщане към списъка с файлове',
'Preview' => 'Преглед',
'Download' => 'Свали',
'Insert_Folder_Name' => 'Въведете име на папката:',
'Root' => 'Основна',
'Rename' => 'Преименуване',
'Back' => 'Обратно',
'View' => 'Изглед',
'View_list' => 'Списък',
'View_columns_list' => 'Колони',
'View_boxes' => 'Кутии',
'Toolbar' => 'Лента с инструменти',
'Actions' => 'Действия',
'Rename_existing_file' => 'Файлът вече съществува',
'Rename_existing_folder' => 'Папката вече съществува',
'Empty_name' => 'Името на файла е празно',
'Text_filter' => 'текстов филтър',
'Swipe_help' => 'Плъзнете името на файла/папката за опции',
'Upload_base' => 'Базово качване',
'Upload_base_help' => "Drag & Drop files(modern browsers) or click in upper button to Add the file(s) and click on Start upload. When the upload is complete, click the 'Return to files list' button.",
'Upload_add_files' => 'Add file(s)',
'Upload_start' => 'Start upload',
'Upload_error_messages' =>array(
1 => 'The uploaded file exceeds the upload_max_filesize directive in php.ini',
2 => 'The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form',
3 => 'The uploaded file was only partially uploaded',
4 => 'No file was uploaded',
6 => 'Missing a temporary folder',
7 => 'Failed to write file to disk',
8 => 'A PHP extension stopped the file upload',
'post_max_size' => 'The uploaded file exceeds the post_max_size directive in php.ini',
'max_file_size' => 'File is too big',
'min_file_size' => 'File is too small',
'accept_file_types' => 'Filetype not allowed',
'max_number_of_files' => 'Maximum number of files exceeded',
'max_width' => 'Image exceeds maximum width',
'min_width' => 'Image requires a minimum width',
'max_height' => 'Image exceeds maximum height',
'min_height' => 'Image requires a minimum height',
'abort' => 'File upload aborted',
'image_resize' => 'Failed to resize image'
),
'Upload_url' => 'From url',
'Type_dir' => 'папка',
'Type' => 'Тип',
'Dimension' => 'Размер',
'Size' => 'Големина',
'Date' => 'Дата',
'Filename' => 'Име',
'Operations' => 'Операции',
'Date_type' => 'y-m-d',
'OK' => 'ОК',
'Cancel' => 'Отказ',
'Sorting' => 'сортиране',
'Show_url' => 'покажи URL',
'Extract' => 'разархивирай тук',
'File_info' => 'информация за файл',
'Edit_image' => 'редактирай изображение',
'Duplicate' => 'Дубликат',
'Folders' => 'Папки',
'Copy' => 'Копиране',
'Cut' => 'Изрязване',
'Paste' => 'Поставяне',
'CB' => 'CB', // clipboard
'Paste_Here' => 'Постави в тази папка',
'Paste_Confirm' => 'Сигурни ли сте, че искате да поставите в тази папка? Това може да презапише файловете в нея.',
'Paste_Failed' => 'Грешка при поставянето на файла/овете',
'Clear_Clipboard' => 'Изчисти клипборда',
'Clear_Clipboard_Confirm' => 'Сигурни ли сте, че искате да изчистите клипборда?',
'Files_ON_Clipboard' => 'Има файлове в клипборда.',
'Copy_Cut_Size_Limit' => 'Избраните файлове/папки са прекалено големи за %s. Лимит: %d MB/действие', // %s = cut or copy
'Copy_Cut_Count_Limit' => 'Избрали сте прекаленено много файлове/папки за %s. Лимит: %d файла/действие', // %s = cut or copy
'Copy_Cut_Not_Allowed' => 'Нямате право за %s на файлове.', // %s(1) = cut or copy => %s(2) = files or folders
'Aviary_No_Save' => 'Изображението не може да бъде записано',
'Zip_No_Extract' => 'Невъзможно разархивиране. Файлът вероятно е повреден.',
'Zip_Invalid' => 'Това разширене не се поддържа. Валидни: zip, gz, tar.',
'Dir_No_Write' => 'Нямате права за запис в избраната папка.',
'Function_Disabled' => '%s-то е забранено на сървъра.', // %s = cut or copy
'File_Permission' => 'Файлови права',
'File_Permission_Not_Allowed' => 'Не е разрешена промяната на права за %s.', // %s = files or folders
'File_Permission_Recursive' => 'Рекурсивно прилагане?',
'File_Permission_Wrong_Mode' => "Зададените права са грешни.",
'User' => 'Потребител',
'Group' => 'Група',
'Yes' => 'Да',
'No' => 'Не',
'Lang_Not_Found' => 'Езикът не може да бъде намерен.',
'Lang_Change' => 'Смени езика',
'File_Not_Found' => 'Файлът не може да бъде намерен.',
'File_Open_Edit_Not_Allowed' => 'Нямате разрешение за %s на този файл.', // %s = open or edit
'Edit' => 'Редакция',
'Edit_File' => "Редакция на съдържанието на файла",
'File_Save_OK' => "Файлът е успешно записан.",
'File_Save_Error' => "Възникна грешка при записването на файла.",
'New_File' => 'Нов файл',
'No_Extension' => 'Трябва да зададете разширение на файла.',
'Valid_Extensions' => 'Валидни разширения: %s', // %s = txt => log etc.
'Upload_message' => "Провлачете и спуснете файла тук за да го качите.",
'SERVER ERROR' => "СЪРВЪРНА ГРЕШКА",
'forbiden' => "Забранено",
'wrong path' => "Грешен път",
'wrong name' => "Грешно име",
'wrong extension' => "Грешно разширение",
'wrong option' => "Грешна опция",
'wrong data' => "Грешни данни",
'wrong action' => "Грешно действие",
'wrong sub-action' => "Грешно вторично действие",
'no action passed' => "Не е подадено действие",
'no path' => "Няма път",
'no file' => "Няма файл",
'view type number missing' => "Номерът на прегледа липсва",
'Not enough Memory' => "Недостатъчна памет",
'max_size_reached' => "Вашата папка за изображения достигна максимумът от %d MB.", //%d = max overall size
'B' => "B",
'KB' => "KB",
'MB' => "MB",
'GB' => "GB",
'TB' => "TB",
'total size' => "Общ размер",
);

124
core/vendor/filemanager/lang/ca.php vendored Normal file
View File

@ -0,0 +1,124 @@
<?php
return array(
'Select' => 'Seleccionar',
'Deselect_All' => 'Deselect All',
'Select_All' => 'Select All',
'Erase' => 'Eliminar',
'Open' => 'Obrir',
'Confirm_del' => 'Segur que desitges eliminar aquest arxiu?',
'All' => 'Tots',
'Files' => 'Arxius',
'Images' => 'Imatges',
'Archives' => 'Fitxers',
'Error_Upload' => 'L\'arxiu que intenta pujar excedeix el màxim permès.',
'Error_extension' => 'L\'extensió de l\'arxiu no està permesa.',
'Upload_file' => 'Pujar',
'Filters' => 'Filtres',
'Videos' => 'Vídeos',
'Music' => 'Musica',
'New_Folder' => 'Nova carpeta',
'Folder_Created' => 'La carpeta ha estat creada exitosament.',
'Existing_Folder' => 'Carpeta existent',
'Confirm_Folder_del' => 'Segur que desitges eliminar la carpeta i tots els elements que conté?',
'Return_Files_List' => 'Tornar a la llista d\'arxius',
'Preview' => 'Vista prèvia',
'Download' => 'Descarregar',
'Insert_Folder_Name' => 'Nom de la carpeta:',
'Root' => 'Arrel',
'Rename' => 'Renombrar',
'Back' => 'Tornar',
'View' => 'Vista',
'View_list' => 'Vista de llista',
'View_columns_list' => 'Vista de columnes',
'View_boxes' => 'Vista de miniatures',
'Toolbar' => 'Barra d\'eines',
'Actions' => 'Accions',
'Rename_existing_file' => 'L\'arxiu ja existeix',
'Rename_existing_folder' => 'La carpeta ja existeix',
'Empty_name' => 'El nom es troba buit',
'Text_filter' => 'filtre de text',
'Swipe_help' => 'Deslize el nom de l\'arxiu/carpeta per mostrar les opcions',
'Upload_base' => 'Pujada d\'arxius SIMPLE',
'Upload_java' => 'Pujada d\'arxius JAVA (para arxius pesats)',
'Upload_url' => 'URL',
'Upload_java_help' => "Si el applet no carrega: 1. Assegura't de tenir Java instal·lat; sinó descarrega-ho i instal·la-ho <a href='http://java.com/en/download/'>des d'aquí</a> 2. Assegura't que el teu firewall no estigui bloquejant res.",
'Upload_base_help' => "Arrossega i deixa anar els arxius dins d'aquesta àrea o faci clic en ella (per a navegadors moderns) en cas contrari, seleccioni l'arxiu i faci clic en el botó. Quan finalitzi la pujada, faci clic en el botó superior per tornar.",
'Type_dir' => 'Carpeta',
'Type' => 'Tipus',
'Dimension' => 'Dimensions',
'Size' => 'Pes',
'Date' => 'Data',
'Filename' => 'Nom',
'Operations' => 'Operacions',
'Date_type' => 'd-m-y',
'OK' => 'OK',
'Cancel' => 'Cancel·lar',
'Sorting' => 'Ordenar',
'Show_url' => 'Mostrar URL',
'Extract' => 'Extreure aquí',
'File_info' => 'Informació',
'Edit_image' => 'Editar imatge',
'Duplicate' => 'Duplicar',
'Folders' => 'Carpetes',
'Copy' => 'Copiar',
'Cut' => 'Tallar',
'Paste' => 'Enganxar',
'CB' => 'CB', // clipboard
'Paste_Here' => 'Enganxar en aquest directori',
'Paste_Confirm' => 'Esteu segur que voleu enganxar en aquest directori? Això sobreescriurà arxius/carpetes existents si es troba cap igual.',
'Paste_Failed' => 'No sha pogut enganxar els fitxers.',
'Clear_Clipboard' => 'Netejar portapapers',
'Clear_Clipboard_Confirm' => 'Esteu segur que voleu esborrar el portapapers?',
'Files_ON_Clipboard' => 'Hi ha arxius al Portapapers.',
'Copy_Cut_Size_Limit' => 'Els arxius/carpetes seleccionades són massa grans per %s. Limit: %d MB/operació', // %s = cut or copy
'Copy_Cut_Count_Limit' => 'Heu seleccionat massa fitxers/carpetes a %s. Limit: %d arxiu/operació', // %s = cut or copy
'Copy_Cut_Not_Allowed' => 'No te permisos per %s els arxius.', // %s(1) = cut or copy, %s(2) = files or folders
'Aviary_No_Save' => 'No sha pogut desar la imatge.',
'Zip_No_Extract' => 'No es pot extreure. LArxiu podria estar corrupte.',
'Zip_Invalid' => 'Aquesta extensió no és suportada. Vàlid: zip, gz, tar.',
'Dir_No_Write' => 'El directori seleccionat no te permisos descriptura.',
'Function_Disabled' => 'La funció de %s no esta disponible al servidor.', // %s = cut or copy
'File_Permission' => 'Permisos darxiu',
'File_Permission_Not_Allowed' => 'La modificació dels permisos de %s no es permès.', // %s = files or folders
'File_Permission_Recursive' => 'Aplicar recursivament?',
'File_Permission_Wrong_Mode' => "El mode de permís subministrat és incorrecte..",
'User' => 'Usuari',
'Group' => 'Grup',
'Yes' => 'Si',
'No' => 'No',
'Lang_Not_Found' => 'No es pot trobar l\'idioma.',
'Lang_Change' => 'Modificar idioma',
'File_Not_Found' => 'No s\'ha pogut trobar l\'arxiu.',
'File_Open_Edit_Not_Allowed' => 'No tens permisos per obrir %s l\'arxiu.', // %s = open or edit
'Edit' => 'Modificar',
'Edit_File' => "Editar el contingut de l\'arxiu.",
'File_Save_OK' => "Arxiu desat correctament.",
'File_Save_Error' => "Hi ha hagut un error mentre es desava l\'arxiu.",
'New_File' => 'Nou arxiu',
'No_Extension' => 'Ha d\'afegir una extensió d\'arxiu.',
'Valid_Extensions' => 'Extensions valides: %s', // %s = txt,log etc.
'Upload_message' => "Arrossega arxiu aquí per carregar.",
'SERVER ERROR' => "SERVER ERROR",
'forbiden' => "Forbiden",
'wrong path' => "Wrong path",
'wrong name' => "Wrong name",
'wrong extension' => "Wrong extension",
'wrong option' => "Wrong option",
'wrong data' => "Wrong data",
'wrong action' => "Wrong action",
'wrong sub-action' => "Wrong sub-actio",
'no action passed' => "No action passed",
'no path' => "No path",
'no file' => "No file",
'view type number missing' => "View type number missing",
'Not enought Memory' => "Not enought Memory",
'max_size_reached' => "Your image folder has reach its maximale size of %d MB.", //%d = max overall size
'B' => "B",
'KB' => "KB",
'MB' => "MB",
'GB' => "GB",
'TB' => "TB",
'total size' => "Total size",
);

145
core/vendor/filemanager/lang/cs.php vendored Normal file
View File

@ -0,0 +1,145 @@
<?php
return array(
'Select' => 'Vybrat',
'Deselect_All' => 'Deselect All',
'Select_All' => 'Select All',
'Erase' => 'Smazat',
'Open' => 'Otevřít',
'Confirm_del' => 'Opravdu chcete smazat tento soubor?',
'All' => 'Vše',
'Files' => 'Soubory',
'Images' => 'Obrázky',
'Archives' => 'Archivy',
'Error_Upload' => 'Nahrávaný soubor je příliš velký.',
'Error_extension' => 'Nahrávání souborů s touto příponou není povoleno.',
'Upload_file' => 'Nahrát soubor',
'Filters' => 'Filtr',
'Videos' => 'Videa',
'Music' => 'Hudba',
'New_Folder' => 'Nová složka',
'Folder_Created' => 'Složka vytvořena',
'Existing_Folder' => 'Existující složka',
'Confirm_Folder_del' => 'Opravdu chcete smazat tuto složku a její obsah?',
'Return_Files_List' => 'Zpět k seznamu souborů',
'Preview' => 'Náhled',
'Download' => 'Stáhnout',
'Insert_Folder_Name' => 'Vložte název složky:',
'Root' => 'root',
'Rename' => 'Přejmenovat',
'Back' => 'zpět',
'View' => 'Zobrazení',
'View_list' => 'Seznam souborů',
'View_columns_list' => 'Dvousloupcový seznam souborů',
'View_boxes' => 'Dlaždicové zobrazení',
'Toolbar' => 'Panel nástrojů',
'Actions' => 'Akce',
'Rename_existing_file' => 'Tento soubor již existuje',
'Rename_existing_folder' => 'Tato složka již existuje',
'Empty_name' => 'Zadali jste prázdný název',
'Text_filter' => 'textový filtr',
'Swipe_help' => 'Pro zobrazení možností klikněte na název souboru/složky.',
'Upload_base' => 'Základní nahrávání',
'Upload_base_help' => "Drag & Drop files(modern browsers) or click in upper button to Add the file(s) and click on Start upload. When the upload is complete, click the 'Return to files list' button.",
'Upload_add_files' => 'Add file(s)',
'Upload_start' => 'Start upload',
'Upload_error_messages' =>array(
1 => 'The uploaded file exceeds the upload_max_filesize directive in php.ini',
2 => 'The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form',
3 => 'The uploaded file was only partially uploaded',
4 => 'No file was uploaded',
6 => 'Missing a temporary folder',
7 => 'Failed to write file to disk',
8 => 'A PHP extension stopped the file upload',
'post_max_size' => 'The uploaded file exceeds the post_max_size directive in php.ini',
'max_file_size' => 'File is too big',
'min_file_size' => 'File is too small',
'accept_file_types' => 'Filetype not allowed',
'max_number_of_files' => 'Maximum number of files exceeded',
'max_width' => 'Image exceeds maximum width',
'min_width' => 'Image requires a minimum width',
'max_height' => 'Image exceeds maximum height',
'min_height' => 'Image requires a minimum height',
'abort' => 'File upload aborted',
'image_resize' => 'Failed to resize image'
),
'Upload_url' => 'From url',
'Type_dir' => 'složka',
'Type' => 'Typ',
'Dimension' => 'Rozměr',
'Size' => 'Velikost',
'Date' => 'Datum',
'Filename' => 'Název',
'Operations' => 'Operace',
'Date_type' => 'd.m.Y',
'OK' => 'OK',
'Cancel' => 'Zrušit',
'Sorting' => 'Řazení',
'Show_url' => 'Zobrazit URL adresu',
'Extract' => 'Rozbalit zde',
'File_info' => 'Informace o souboru',
'Edit_image' => 'Upravit obrázek',
'Duplicate' => 'Duplikovat',
'Folders' => 'Složky',
'Copy' => 'Kopírovat',
'Cut' => 'Vyjmout',
'Paste' => 'Vložit',
'CB' => 'Schránka', // clipboard
'Paste_Here' => 'Vložit do této složky',
'Paste_Confirm' => 'Skutečně chcete vložit obsah schránky do této složky? Existující soubory či složky budou přepsány.',
'Paste_Failed' => 'Vložení selhalo',
'Clear_Clipboard' => 'Vymazat schránku',
'Clear_Clipboard_Confirm' => 'Skutečně chcete vymazat obsah schránky?',
'Files_ON_Clipboard' => 'Ve schránce jsou soubory.',
'Copy_Cut_Size_Limit' => 'Zvolené soubory/složky jsou příliš velké pro operaci %s. Limit: %d MB/operace', // %s = cut or copy
'Copy_Cut_Count_Limit' => 'Zvolili jste příliš mnoho souborů/složek pro operaci %s. Limit: %d souborů/operace', // %s = cut or copy
'Copy_Cut_Not_Allowed' => 'Nemáte oprávnění %s.', // %s(1) = cut or copy, %s(2) = files or folders
'Aviary_No_Save' => 'Obrázek nelze uložit',
'Zip_No_Extract' => 'Archív nelze rozbalit. Soubor může být poškozen.',
'Zip_Invalid' => 'Přípona není podporována. Povolené: zip, gz, tar.',
'Dir_No_Write' => 'Vybraná složka není zapisovatelná.',
'Function_Disabled' => 'Funkce %s byla zamítnuta serverem.', // %s = cut or copy
'File_Permission' => 'Práva souboru',
'File_Permission_Not_Allowed' => 'Změna oprávnění pro %s není povolena.', // %s = files or folders
'File_Permission_Recursive' => 'Použít rekurzivně?',
'File_Permission_Wrong_Mode' => "Zadaný kód oprávnění není platný.",
'User' => 'Uživatel',
'Group' => 'Skupina',
'Yes' => 'Ano',
'No' => 'Ne',
'Lang_Not_Found' => 'Jazyk nebyl nalezen.',
'Lang_Change' => 'Změnit jazyk',
'File_Not_Found' => 'Soubor nebyl nalezen.',
'File_Open_Edit_Not_Allowed' => 'Nemáte oprávnění %s tento soubor.', // %s = open or edit
'Edit' => 'Upravit',
'Edit_File' => "Upravit obsah souboru",
'File_Save_OK' => "Soubor byl úspěšně uložen.",
'File_Save_Error' => "Došlo k chybě při ukládání souboru.",
'New_File' => 'Nový soubor',
'No_Extension' => 'Musíte doplnit příponu souboru.',
'Valid_Extensions' => 'Povolené přípony: %s', // %s = txt,log etc.
'Upload_message' => "Pro nahrání přetáhněte soubor(y) sem",
'SERVER ERROR' => "CHYBA SERVERU",
'forbiden' => "Zakázáno",
'wrong path' => "Neplatná cesta",
'wrong name' => "Neplatná název",
'wrong extension' => "Neplatná přípona",
'wrong option' => "Neplatná volba",
'wrong data' => "Neplatná data",
'wrong action' => "Neplatná akce",
'wrong sub-action' => "Neplatná podakce",
'no action passed' => "Nebyla předána žádná akce",
'no path' => "Žádná cesta",
'no file' => "Žádný soubor",
'view type number missing' => "Chybí číslo typu pro zobrazení",
'Not enough Memory' => "Nedostatek paměti",
'max_size_reached' => "Vaše složka s obrázky dosáhla maximální velikosti %d MB.", //%d = max overall size
'B' => "B",
'KB' => "KB",
'MB' => "MB",
'GB' => "GB",
'TB' => "TB",
'total size' => "Celková velikost",
);

145
core/vendor/filemanager/lang/da.php vendored Normal file
View File

@ -0,0 +1,145 @@
<?php
return array(
'Select' => 'Vælg',
'Deselect_All' => 'Deselect All',
'Select_All' => 'Select All',
'Erase' => 'Slet',
'Open' => 'Åbn',
'Confirm_del' => 'Er du sikker på at du vil slette denne fil?',
'All' => 'Alle',
'Files' => 'Filer',
'Images' => 'Billeder',
'Archives' => 'Mapper',
'Error_Upload' => 'Den uploadede fil er større end tilladt (100MB).',
'Error_extension' => 'Fil typen er ikke tilladt.',
'Upload_file' => 'Upload',
'Filters' => 'Filter',
'Videos' => 'Videoer',
'Music' => 'Musik',
'New_Folder' => 'Ny mappe',
'Folder_Created' => 'Mappen er oprettet korrekt',
'Existing_Folder' => 'Mappen findes allerede',
'Confirm_Folder_del' => 'Er du sikker på at du vil slette mappen og alt dens indhold?',
'Return_Files_List' => 'Tilbage til fil oversigten',
'Preview' => 'Preview',
'Download' => 'Download',
'Insert_Folder_Name' => 'Indsæt mappe navn:',
'Root' => 'rod',
'Rename' => 'Omdøb',
'Back' => 'tilbage',
'View' => 'Se',
'View_list' => 'Vis liste',
'View_columns_list' => 'Søjle liste',
'View_boxes' => 'Box list',
'Toolbar' => 'Toolbar',
'Actions' => 'Handlinger',
'Rename_existing_file' => 'Filen findes allerede',
'Rename_existing_folder' => 'Mappen findes allerede',
'Empty_name' => 'Indsæt et navn',
'Text_filter' => 'tekst filter',
'Swipe_help' => 'Swipe over navnet på fil/mappe for at se muligheder',
'Upload_base' => 'Basis upload',
'Upload_base_help' => "Drag & Drop files(modern browsers) or click in upper button to Add the file(s) and click on Start upload. When the upload is complete, click the 'Return to files list' button.",
'Upload_add_files' => 'Add file(s)',
'Upload_start' => 'Start upload',
'Upload_error_messages' =>array(
1 => 'The uploaded file exceeds the upload_max_filesize directive in php.ini',
2 => 'The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form',
3 => 'The uploaded file was only partially uploaded',
4 => 'No file was uploaded',
6 => 'Missing a temporary folder',
7 => 'Failed to write file to disk',
8 => 'A PHP extension stopped the file upload',
'post_max_size' => 'The uploaded file exceeds the post_max_size directive in php.ini',
'max_file_size' => 'File is too big',
'min_file_size' => 'File is too small',
'accept_file_types' => 'Filetype not allowed',
'max_number_of_files' => 'Maximum number of files exceeded',
'max_width' => 'Image exceeds maximum width',
'min_width' => 'Image requires a minimum width',
'max_height' => 'Image exceeds maximum height',
'min_height' => 'Image requires a minimum height',
'abort' => 'File upload aborted',
'image_resize' => 'Failed to resize image'
),
'Upload_url' => 'From url',
'Type_dir' => 'dir',
'Type' => 'Type',
'Dimension' => 'Dimensioner',
'Size' => 'Størrelse',
'Date' => 'Dato',
'Filename' => 'Filenavn',
'Operations' => 'Operationer',
'Date_type' => 'år-måned-dag',
'OK' => 'OK',
'Cancel' => 'Afbryd',
'Sorting' => 'sortering',
'Show_url' => 'Vis sti',
'Extract' => 'Fold ud her',
'File_info' => 'fil info',
'Edit_image' => 'Redigér billede',
'Duplicate' => 'Kopiér',
'Folders' => 'Mapper',
'Copy' => 'Kopiér',
'Cut' => 'Klip',
'Paste' => 'Indsæt',
'CB' => 'UKH', // clipboard
'Paste_Here' => 'Indsæt i denne mappe',
'Paste_Confirm' => 'Er du sikker på at du vil indsætte i denne mappe? Det vil overkrive allerede eksisterende filer/mapper, hvis der findes nogen.',
'Paste_Failed' => 'Det lykkedes ikke at indsætte fil(en/erne)',
'Clear_Clipboard' => 'Slet indholdet af udklipsholderen',
'Clear_Clipboard_Confirm' => 'Er du sikker på at du vil slette indholdet af udklipsholderen?',
'Files_ON_Clipboard' => 'Der findes filer i udklipsholderen.',
'Copy_Cut_Size_Limit' => 'De valgte filer/mapper er for store til at %s. Max.: %d MB/operation', // %s = cut or copy
'Copy_Cut_Count_Limit' => 'Du har valgt for mange filer/mapper til at %s. Max.: %d filer/operation', // %s = cut or copy
'Copy_Cut_Not_Allowed' => 'Du har ikke tilladelse til at %s filer. Tal med din administrator.', // %s(1) = cut or copy, %s(2) = files or folders
'Aviary_No_Save' => 'Det var ikke muligt at gemme billedet',
'Zip_No_Extract' => 'Det var ikke muligt at hente. Filen er muligvis ødelagt.',
'Zip_Invalid' => 'Denne filtype understøttes ikke. De mulige filtyper er: zip, gz, tar.',
'Dir_No_Write' => 'Der kan ikke skrives til den valgte mappe. Kontakt din administrator.',
'Function_Disabled' => 'Denne %s funktion er slået fra af serveren.', // %s = cut or copy
'File_Permission' => 'Fil tilladelser',
'File_Permission_Not_Allowed' => 'Det er ikke tilladt at ændre tilladelsen for %s.', // %s = files or folders
'File_Permission_Recursive' => 'Gøres ved alle mapper og filer (rekursivt)?',
'File_Permission_Wrong_Mode' => "Den anvendte indstilling for tilladelse er ikke korrekt.",
'User' => 'Bruger',
'Group' => 'Gruppe',
'Yes' => 'Ja',
'No' => 'Nej',
'Lang_Not_Found' => 'Cet var ikke muligt at finde sprog-filen.',
'Lang_Change' => 'Andet sprog',
'File_Not_Found' => 'Det var ikke muligt at finde filen.',
'File_Open_Edit_Not_Allowed' => 'Du har ikke tiladelse til at %s denne fil.', // %s = open or edit
'Edit' => 'Redigér',
'Edit_File' => "Redigér filens indhold",
'File_Save_OK' => "Filen blev gemt.",
'File_Save_Error' => "Der opstod en fejl i forsøget på at gemme filen.",
'New_File' => 'Opret ny fil',
'No_Extension' => 'Husk at tilføje filtype.',
'Valid_Extensions' => 'Gyldige filtyper er: %s', // %s = txt,log etc.
'Upload_message' => "Drop file here to upload",
'SERVER ERROR' => "SERVER ERROR",
'forbiden' => "Forbiden",
'wrong path' => "Wrong path",
'wrong name' => "Wrong name",
'wrong extension' => "Wrong extension",
'wrong option' => "Wrong option",
'wrong data' => "Wrong data",
'wrong action' => "Wrong action",
'wrong sub-action' => "Wrong sub-actio",
'no action passed' => "No action passed",
'no path' => "No path",
'no file' => "No file",
'view type number missing' => "View type number missing",
'Not enough Memory' => "Not enough Memory",
'max_size_reached' => "Your image folder has reach its maximale size of %d MB.", //%d = max overall size
'B' => "B",
'KB' => "KB",
'MB' => "MB",
'GB' => "GB",
'TB' => "TB",
'total size' => "Total size",
);

145
core/vendor/filemanager/lang/de.php vendored Normal file
View File

@ -0,0 +1,145 @@
<?php
return array(
'Select' => 'Ausw&auml;hlen',
'Deselect_All' => 'Deselect All',
'Select_All' => 'Select All',
'Erase' => 'L&ouml;schen',
'Open' => '&Ouml;ffnen',
'Confirm_del' => 'Sind Sie sicher das Sie die Datei l&ouml;schen wollen?',
'All' => 'Alle',
'Files' => 'Dateien',
'Images' => 'Bilder',
'Archives' => 'Archive',
'Error_Upload' => 'Die Datei &uuml;berschreitet die maximal erlaubte Gr&ouml;&szlig;e.',
'Error_extension' => 'Dieser Dateityp ist nicht erlaubt.',
'Upload_file' => 'Hochladen',
'Filters' => 'Filter',
'Videos' => 'Videos',
'Music' => 'Musik',
'New_Folder' => 'Neues Verzeichniss',
'Folder_Created' => 'Verzeichnis erfolgreich erstellt',
'Existing_Folder' => 'Verzeichnis schlie&szlig;en',
'Confirm_Folder_del' => 'Sind Sie sicher das Sie dieses Verzeichnis inklusive aller darin enthaltenen Dateien l&ouml;schen m&ouml;chten?',
'Return_Files_List' => 'Zur&uuml;ck zur Datei&uuml;bersicht',
'Preview' => 'Vorschau',
'Download' => 'Download',
'Insert_Folder_Name' => 'Verzeichnisnamen angeben:',
'Root' => 'Basisverzeichnis',
'Rename' => 'Umbenenen',
'Back' => 'zur&uuml;ck',
'View' => 'Ansicht',
'View_list' => 'Listenansicht',
'View_columns_list' => 'Spaltenansicht',
'View_boxes' => 'Box Ansicht',
'Toolbar' => 'Werkzeugleiste',
'Actions' => 'Aktionen',
'Rename_existing_file' => 'Die Datei existiert bereits',
'Rename_existing_folder' => 'Das Verzeichnis existiert bereits',
'Empty_name' => 'Der Name ist leer',
'Text_filter' => 'Suche',
'Swipe_help' => 'Fahren Sie mit der Maus &uuml;ber die Datei um Details anzeigen zu lassen.',
'Upload_base' => 'Standart Hochladen',
'Upload_base_help' => "Ziehen Sie die Dateien per Drag & Drop (moderne Browser) oder klicken Sie auf die obere Schaltfl&auml;che, um die Datei (en) hinzuzuf&uuml;gen und klicken Sie auf Hochladen beginnen. Wenn das Hochladen abgeschlossen ist, klicken Sie auf die Schaltfl&auml;che \"Zur Dateiliste zur&uuml;ckkehren\".",
'Upload_add_files' => 'Dateien hinzuf&uuml;gen',
'Upload_start' => 'Hochladen beginnen',
'Upload_error_messages' =>array(
1 => 'Die hochgeladene Datei &uuml;berschreitet die Direktive upload_max_filesize in php.ini',
2 => 'Die hochgeladene Datei &uuml;berschreitet die Anweisung MAX_FILE_SIZE, die im HTML-Formular angegeben wurde',
3 => 'Die hochgeladene Datei wurde nur teilweise hochgeladen',
4 => 'Es wurde keine Datei hochgeladen',
6 => 'Einen tempor&auml;ren Ordner fehlt',
7 => 'Fehler beim Schreiben der Datei auf die Festplatte',
8 => 'Eine PHP-Erweiterung hat den Upload der Datei gestoppt.',
'post_max_size' => 'Die hochgeladene Datei &uuml;berschreitet die Anweisung post_max_size in php.ini',
'max_file_size' => 'Datei ist zu gro&szlig;',
'min_file_size' => 'Datei ist zu klein',
'accept_file_types' => 'Dateityp nicht erlaubt',
'max_number_of_files' => 'Maximale Anzahl von Dateien &uuml;berschritten',
'max_width' => 'Das Bild &uuml;berschreitet die maximale Breite',
'min_width' => 'Bild ben&ouml;tigt eine minimale Breite',
'max_height' => 'Das Bild &uuml;berschreitet die maximale H&ouml;he',
'min_height' => 'Bild erfordert eine minimale H&ouml;he',
'abort' => 'Hochladen abgebrochen',
'image_resize' => 'Fehler beim &Auml;ndern der Bildgr&ouml;&szlig;e'
),
'Upload_url' => 'Von url',
'Type_dir' => 'Verzeichnis',
'Type' => 'Typ',
'Dimension' => 'Dimensionen',
'Size' => 'Gr&ouml;&szlig;e',
'Date' => 'Datum',
'Filename' => 'Dateiname',
'Operations' => 'Operationen',
'Date_type' => 'd.m.y',
'OK' => 'OK',
'Cancel' => 'Abbrechen',
'Sorting' => 'Sortiere',
'Show_url' => 'zeige URL',
'Extract' => 'hier entpacken',
'File_info' => 'Datei Info',
'Edit_image' => 'Bild editieren',
'Duplicate' => 'Duplizieren',
'Folders' => 'Ordner',
'Copy' => 'Kopieren',
'Cut' => 'Aussschneiden',
'Paste' => 'Einf&uuml;gen',
'CB' => 'Zwischenablage', // clipboard
'Paste_Here' => 'Aus der Zwischenablage einf&uuml;gen',
'Paste_Confirm' => 'Sind Sie sicher, dass Sie es in diesen Ordner einf&uuml;gen m&ouml;chten? Existierende Dateien/Verzeichnisse werden &uuml;berschrieben.',
'Paste_Failed' => 'Einf&uuml;gen fehgeschlagen!',
'Clear_Clipboard' => 'Zwischenablage leeren',
'Clear_Clipboard_Confirm' => 'Zwischenablage wirkich leeren?',
'Files_ON_Clipboard' => 'Sie haben bereits Dateien in der Zwischenablage!',
'Copy_Cut_Size_Limit' => 'Die Dateien sind zu gross zum %s. Limit: %d MB pro Aktion', // %s = cut or copy
'Copy_Cut_Count_Limit' => 'Sie haben zu viele Dateien/Ordner zum %s ausgew&auml;lt. Limit: %d Dateien pro Aktion', // %s = cut or copy
'Copy_Cut_Not_Allowed' => 'Sie haben nicht die Berechtigungen zum %s von Dateien..', // %s(1) = cut or copy, %s(2) = files or folders
'Aviary_No_Save' => 'Das Bild konnte nicht gespeichert werden.',
'Zip_No_Extract' => 'Zip Datei konnte nicht entpackt werden. Die Datei ist m&ouml;glicherweise besch&auml;digt.',
'Zip_Invalid' => 'Dieses Dateiformat wird nicht unterst&uuml;zt. Zugelassene Formate: zip, gz und tar.',
'Dir_No_Write' => 'Dieses Dateiverzeichis ist schreibgesch&uuml;tzt.',
'Function_Disabled' => 'Die Funktion %s ist serverseitig deaktiviert.', // %s = cut or copy
'File_Permission' => 'Datei Berechtigung',
'File_Permission_Not_Allowed' => '&Auml;ndern %s Rechte ist nicht erlaubt.', // %s = files or folders
'File_Permission_Recursive' => 'Rekursiv anwenden?',
'File_Permission_Wrong_Mode' => "Der angegebene Berechtigungsmodus ist falsch.",
'User' => 'Benutzer',
'Group' => 'Gruppe',
'Yes' => 'Ja',
'No' => 'Nein',
'Lang_Not_Found' => 'Sprache wurde nicht gefunden.',
'Lang_Change' => 'Sprache wechseln',
'File_Not_Found' => 'Datei wurde nicht gefunden.',
'File_Open_Edit_Not_Allowed' => 'Sie sind nicht berechtigt diese Datei zu %.', // %s = open or edit
'Edit' => 'Bearbeiten',
'Edit_File' => "Dateiinhalt bearbeiten",
'File_Save_OK' => "Datei erfolgreich gespeichert.",
'File_Save_Error' => "Beim Speichern der Datei ist ein Fehler aufgetreten.",
'New_File' => 'Neue Datei',
'No_Extension' => 'Dateiendung muss hinzugef&uuml;gt werden.',
'Valid_Extensions' => 'Erlaubte Dateiendungen: %s', // %s = txt,log etc.
'Upload_message' => "Datei hier zum Hochladen ablegen",
'SERVER ERROR' => "SERVER FEHLER",
'forbiden' => "Verboten",
'wrong path' => "Falscher Pfad",
'wrong name' => "Falscher Name",
'wrong extension' => "Falsche Erweiterung",
'wrong option' => "Falsche Option",
'wrong data' => "Falschen Daten",
'wrong action' => "Falsche Aktion",
'wrong sub-action' => "Falsche Subaktion",
'no action passed' => "Keine Aktion &uuml;bergeben",
'no path' => "Kein Pfad",
'no file' => "Keine Datei",
'view type number missing' => "Typnummer fehlt",
'Not enough Memory' => "Nicht genug Speicher",
'max_size_reached' => "Ihr Bild-Ordner hat die maximale Gr&ouml;&szlig;e von %d MB erreicht.", //%d = max overall size
'B' => "B",
'KB' => "KB",
'MB' => "MB",
'GB' => "GB",
'TB' => "TB",
'total size' => "Gesamtgr&ouml;&szlig;e",
);

145
core/vendor/filemanager/lang/el_GR.php vendored Normal file
View File

@ -0,0 +1,145 @@
<?php
return array(
'Select' => 'Επιλογή',
'Deselect_All' => 'Deselect All',
'Select_All' => 'Select All',
'Erase' => 'Διαγραφή',
'Open' => 'Άνοιγμα',
'Confirm_del' => 'Είστε σίγουροι ότι θέλετε να διαγράψετε αυτό το αρχείο;',
'All' => 'Όλα',
'Files' => 'Έγγραφα',
'Images' => 'Εικόνες',
'Archives' => 'Αρχεία',
'Error_Upload' => 'Το αρχείο που μεταφορτώθηκε υπερβαίνει το μέγιστο επιτρεπόμενο μέγεθος.',
'Error_extension' => 'Η κατάληξη αρχείου δεν επιτρέπεται.',
'Upload_file' => 'Μεταφόρτωση',
'Filters' => 'Φίλτρα',
'Videos' => 'Βίντεο',
'Music' => 'Μουσική',
'New_Folder' => 'Νέος φάκελος',
'Folder_Created' => 'Ο φάκελος δημιουργήθηκε',
'Existing_Folder' => 'Υπάρχων φάκελος',
'Confirm_Folder_del' => 'Είστε σίγουροι ότι θέλετε να διαγράψετε το φάκελο και όλα τα στοιχεία που περιέχονται σε αυτόν;',
'Return_Files_List' => 'Επιστροφή στον κατάλογο των αρχείων',
'Preview' => 'Προεπισκόπηση',
'Download' => 'Λήψη',
'Insert_Folder_Name' => 'Εισάγετε το όνομα του φακέλου:',
'Root' => 'root',
'Rename' => 'Μετονομασία',
'Back' => 'πίσω',
'View' => 'Προβολή',
'View_list' => 'Προβολή λίστας',
'View_columns_list' => 'Προβολή λίστας με στήλες',
'View_boxes' => 'Προβολή πλαισίου',
'Toolbar' => 'Γραμμή εργαλείων',
'Actions' => 'Ενέργειες',
'Rename_existing_file' => 'Το αρχείο υπάρχει ήδη',
'Rename_existing_folder' => 'Ο φάκελος υπάρχει ήδη',
'Empty_name' => 'Το όνομα είναι κενό',
'Text_filter' => 'κείμενο φίλτρου',
'Swipe_help' => 'Περάστε με το ποντίκι πάνω από το όνομα του αρχείου / φακέλου για να δείτε τις επιλογές',
'Upload_base' => 'Βασική μεταφόρτωση',
'Upload_base_help' => "Drag & Drop files(modern browsers) or click in upper button to Add the file(s) and click on Start upload. When the upload is complete, click the 'Return to files list' button.",
'Upload_add_files' => 'Add file(s)',
'Upload_start' => 'Start upload',
'Upload_error_messages' =>array(
1 => 'The uploaded file exceeds the upload_max_filesize directive in php.ini',
2 => 'The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form',
3 => 'The uploaded file was only partially uploaded',
4 => 'No file was uploaded',
6 => 'Missing a temporary folder',
7 => 'Failed to write file to disk',
8 => 'A PHP extension stopped the file upload',
'post_max_size' => 'The uploaded file exceeds the post_max_size directive in php.ini',
'max_file_size' => 'File is too big',
'min_file_size' => 'File is too small',
'accept_file_types' => 'Filetype not allowed',
'max_number_of_files' => 'Maximum number of files exceeded',
'max_width' => 'Image exceeds maximum width',
'min_width' => 'Image requires a minimum width',
'max_height' => 'Image exceeds maximum height',
'min_height' => 'Image requires a minimum height',
'abort' => 'File upload aborted',
'image_resize' => 'Failed to resize image'
),
'Upload_url' => 'From url',
'Type_dir' => 'φάκελος',
'Type' => 'Τύπος',
'Dimension' => 'Διάσταση',
'Size' => 'Μέγεθος',
'Date' => 'Ημερομηνία',
'Filename' => 'Όνομα αρχείου',
'Operations' => 'Λειτουργίες',
'Date_type' => 'y-m-d',
'OK' => 'OK',
'Cancel' => 'Ακύρωση',
'Sorting' => 'ταξινόμηση',
'Show_url' => 'εμφάνιση URL',
'Extract' => 'Εξαγωγή εδώ',
'File_info' => 'πληροφορίες αρχείου',
'Edit_image' => 'επεξεργασία εικόνας',
'Duplicate' => 'Αντιγραφή',
'Folders' => 'Φάκελοι',
'Copy' => 'Αντιγραφή',
'Cut' => 'Αποκοπή',
'Paste' => 'Επικόλληση',
'CB' => 'CB', // clipboard
'Paste_Here' => 'Επικόλληση σε αυτόν τον φάκελο',
'Paste_Confirm' => 'Είστε βέβαιοι ότι θέλετε να επικολλήσετε σε αυτόν τον φάκελο; Αυτό θα αντικαταστήσει υπάρχοντα αρχεία / φακέλους αν βρεθούν όμοια.',
'Paste_Failed' => 'Αποτυχία επικόλλησης του(ων) αρχείου(ων)',
'Clear_Clipboard' => 'Άδειασμα clipboard',
'Clear_Clipboard_Confirm' => 'Είστε σίγουροι ότι θέλετε να αδειάσετε το clipboard;',
'Files_ON_Clipboard' => 'Υπάρχουν αρχεία στο clipboard.',
'Copy_Cut_Size_Limit' => 'Τα επιλεγμένα αρχεία/φάκελοι είναι πολύ μεγάλα για %s. Όριο: %d MB/λειτουργία', // %s = cut or copy
'Copy_Cut_Count_Limit' => 'Επιλέξατε πάρα πολλά αρχεία/φακέλους για %s. Όριο: %d αρχεία/λειτουργία', // %s = cut or copy
'Copy_Cut_Not_Allowed' => 'Δεν επιτρέπεται η %s αρχείων.', // %s(1) = cut or copy, %s(2) = files or folders
'Aviary_No_Save' => 'Δεν ήταν δυνατή η αποθήκευση της εικόνας',
'Zip_No_Extract' => 'Δεν ήταν δυνατή η εξαγωγή. Το αρχείο μπορεί να είναι κατεστραμμένο.',
'Zip_Invalid' => 'Η κατάληξη αυτή δεν υποστηρίζεται. Έγκυρα: zip, gz, tar.',
'Dir_No_Write' => 'Ο φάκελος που επιλέξατε δεν είναι εγγράψιμος.',
'Function_Disabled' => 'Η λειτουργία για %s έχει απενεργοποιηθεί από το διακομιστή.', // %s = cut or copy
'File_Permission' => 'File permission',
'File_Permission_Not_Allowed' => 'Changing %s permissions are not allowed.', // %s = files or folders
'File_Permission_Recursive' => 'Apply recursively?',
'File_Permission_Wrong_Mode' => "The supplied permission mode is incorrect.",
'User' => 'User',
'Group' => 'Group',
'Yes' => 'Yes',
'No' => 'No',
'Lang_Not_Found' => 'Could not find language.',
'Lang_Change' => 'Change the language',
'File_Not_Found' => 'Could not find the file.',
'File_Open_Edit_Not_Allowed' => 'You are not allowed to %s this file.', // %s = open or edit
'Edit' => 'Edit',
'Edit_File' => "Edit file's content",
'File_Save_OK' => "File successfully saved.",
'File_Save_Error' => "There was an error while saving the file.",
'New_File' => 'New File',
'No_Extension' => 'You have to add a file extension.',
'Valid_Extensions' => 'Valid extensions: %s', // %s = txt,log etc.
'Upload_message' => "Drop file here to upload",
'SERVER ERROR' => "SERVER ERROR",
'forbiden' => "Forbiden",
'wrong path' => "Wrong path",
'wrong name' => "Wrong name",
'wrong extension' => "Wrong extension",
'wrong option' => "Wrong option",
'wrong data' => "Wrong data",
'wrong action' => "Wrong action",
'wrong sub-action' => "Wrong sub-actio",
'no action passed' => "No action passed",
'no path' => "No path",
'no file' => "No file",
'view type number missing' => "View type number missing",
'Not enough Memory' => "Not enough Memory",
'max_size_reached' => "Your image folder has reach its maximale size of %d MB.", //%d = max overall size
'B' => "B",
'KB' => "KB",
'MB' => "MB",
'GB' => "GB",
'TB' => "TB",
'total size' => "Total size",
);

144
core/vendor/filemanager/lang/en_EN.php vendored Normal file
View File

@ -0,0 +1,144 @@
<?php
return array(
'Select' => 'Select',
'Deselect_All' => 'Deselect All',
'Select_All' => 'Select All',
'Erase' => 'Erase',
'Open' => 'Open',
'Confirm_del' => 'Are you sure you want to delete?',
'All' => 'All',
'Files' => 'Files',
'Images' => 'Images',
'Archives' => 'Archives',
'Error_Upload' => 'The uploaded file exceeds the max size allowed.',
'Error_extension' => 'File extension is not allowed.',
'Upload_file' => 'Upload',
'Filters' => 'Filters',
'Videos' => 'Videos',
'Music' => 'Music',
'New_Folder' => 'New Folder',
'Folder_Created' => 'Folder correctly created',
'Existing_Folder' => 'Existing folder',
'Confirm_Folder_del' => 'Are you sure to delete the folder and all the elements in it?',
'Return_Files_List' => 'Return to files list',
'Preview' => 'Preview',
'Download' => 'Download',
'Insert_Folder_Name' => 'Insert folder name:',
'Root' => 'root',
'Rename' => 'Rename',
'Back' => 'back',
'View' => 'View',
'View_list' => 'List view',
'View_columns_list' => 'Columns list view',
'View_boxes' => 'Box view',
'Toolbar' => 'Toolbar',
'Actions' => 'Actions',
'Rename_existing_file' => 'The file is already existing',
'Rename_existing_folder' => 'The folder is already existing',
'Empty_name' => 'The name is empty',
'Text_filter' => 'text filter',
'Swipe_help' => 'Swipe the name of file/folder to show options',
'Upload_base' => 'Base upload',
'Upload_base_help' => "Drag & Drop files(modern browsers) or click in upper button to Add the file(s) and click on Start upload. When the upload is complete, click the 'Return to files list' button.",
'Upload_add_files' => 'Add file(s)',
'Upload_start' => 'Start upload',
'Upload_error_messages' =>array(
1 => 'The uploaded file exceeds the upload_max_filesize directive in php.ini',
2 => 'The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form',
3 => 'The uploaded file was only partially uploaded',
4 => 'No file was uploaded',
6 => 'Missing a temporary folder',
7 => 'Failed to write file to disk',
8 => 'A PHP extension stopped the file upload',
'post_max_size' => 'The uploaded file exceeds the post_max_size directive in php.ini',
'max_file_size' => 'File is too big',
'min_file_size' => 'File is too small',
'accept_file_types' => 'Filetype not allowed',
'max_number_of_files' => 'Maximum number of files exceeded',
'max_width' => 'Image exceeds maximum width',
'min_width' => 'Image requires a minimum width',
'max_height' => 'Image exceeds maximum height',
'min_height' => 'Image requires a minimum height',
'abort' => 'File upload aborted',
'image_resize' => 'Failed to resize image'
),
'Upload_url' => 'From url',
'Type_dir' => 'dir',
'Type' => 'Type',
'Dimension' => 'Dimension',
'Size' => 'Size',
'Date' => 'Date',
'Filename' => 'Filename',
'Operations' => 'Operations',
'Date_type' => 'y-m-d',
'OK' => 'OK',
'Cancel' => 'Cancel',
'Sorting' => 'sorting',
'Show_url' => 'Show URL',
'Extract' => 'Extract here',
'File_info' => 'file info',
'Edit_image' => 'Edit image',
'Duplicate' => 'Duplicate',
'Folders' => 'Folders',
'Copy' => 'Copy',
'Cut' => 'Cut',
'Paste' => 'Paste',
'CB' => 'CB', // clipboard
'Paste_Here' => 'Paste to this directory',
'Paste_Confirm' => 'Are you sure you want to paste to this directory? This will overwrite existing files/folders if encountered any.',
'Paste_Failed' => 'Failed to paste file(s)',
'Clear_Clipboard' => 'Clear clipboard',
'Clear_Clipboard_Confirm' => 'Are you sure you want to clear the clipboard?',
'Files_ON_Clipboard' => 'There are files on the clipboard.',
'Copy_Cut_Size_Limit' => 'The selected files/folders are too big to %1$s. Limit: %2$d MB/operation', // %1$s = cut or copy, %2$d = max size
'Copy_Cut_Count_Limit' => 'You selected too many files/folders to %1$s. Limit: %2$d files/operation', // %1$s = cut or copy, %2$d = max count
'Copy_Cut_Not_Allowed' => 'You are not allowed to %1$s %2$s.', // %12$s = cut or copy, %2$s = files or folders
'Aviary_No_Save' => 'Could not save image',
'Zip_No_Extract' => 'Could not extract. File might be corrupt.',
'Zip_Invalid' => 'This extension is not supported. Valid: zip, gz, tar.',
'Dir_No_Write' => 'The directory you selected is not writable.',
'Function_Disabled' => 'The %s function has been disabled by the server.', // %s = cut or copy
'File_Permission' => 'File permission',
'File_Permission_Not_Allowed' => 'Changing %s permissions are not allowed.', // %s = files or folders
'File_Permission_Recursive' => 'Apply recursively?',
'File_Permission_Wrong_Mode' => "The supplied permission mode is incorrect.",
'User' => 'User',
'Group' => 'Group',
'Yes' => 'Yes',
'No' => 'No',
'Lang_Not_Found' => 'Could not find the language.',
'Lang_Change' => 'Change the language',
'File_Not_Found' => 'Could not find the file.',
'File_Open_Edit_Not_Allowed' => 'You are not allowed to %s this file.', // %s = open or edit
'Edit' => 'Edit',
'Edit_File' => "Edit file's content",
'File_Save_OK' => "File successfully saved.",
'File_Save_Error' => "There was an error while saving the file.",
'New_File' => 'New File',
'No_Extension' => 'You have to add a file extension.',
'Valid_Extensions' => 'Valid extensions: %s', // %s = txt,log etc.
'SERVER ERROR' => "SERVER ERROR",
'forbiden' => "Forbiden",
'wrong path' => "Wrong path",
'wrong name' => "Wrong name",
'wrong extension' => "Wrong extension",
'wrong option' => "Wrong option",
'wrong data' => "Wrong data",
'wrong action' => "Wrong action",
'wrong sub-action' => "Wrong sub-actio",
'no action passed' => "No action passed",
'no path' => "No path",
'no file' => "No file",
'view type number missing' => "View type number missing",
'Not enough Memory' => "Not enough Memory",
'max_size_reached' => "Your image folder has reach its maximale size of %d MB.", //%d = max overall size
'B' => "B",
'KB' => "KB",
'MB' => "MB",
'GB' => "GB",
'TB' => "TB",
'total size' => "Total size"
);

145
core/vendor/filemanager/lang/es.php vendored Normal file
View File

@ -0,0 +1,145 @@
<?php
return array(
'Select' => 'Seleccionar',
'Deselect_All' => 'Deseleccionar todos',
'Select_All' => 'Seleccionar todos',
'Erase' => 'Eliminar',
'Open' => 'Abrir',
'Confirm_del' => '¿Seguro que deseas eliminar este archivo?',
'All' => 'Todos',
'Files' => 'Archivos',
'Images' => 'Imágenes',
'Archives' => 'Ficheros',
'Error_Upload' => 'El archivo que intenta subir excede el máximo permitido.',
'Error_extension' => 'La extensión del archivo no está permitida.',
'Upload_file' => 'Subir',
'Filters' => 'Filtros',
'Videos' => 'Vídeos',
'Music' => 'Música',
'New_Folder' => 'Nueva carpeta',
'Folder_Created' => 'La carpeta ha sido creada correctamente.',
'Existing_Folder' => 'Carpeta existente',
'Confirm_Folder_del' => '¿Seguro que deseas eliminar la carpeta y todos los elementos que contiene?',
'Return_Files_List' => 'Regresar a la lista de archivos',
'Preview' => 'Vista previa',
'Download' => 'Descargar',
'Insert_Folder_Name' => 'Nombre de la carpeta:',
'Root' => 'raíz',
'Rename' => 'Renombrar',
'Back' => 'Atrás',
'View' => 'Vista',
'View_list' => 'Vista de lista',
'View_columns_list' => 'Vista de columnas',
'View_boxes' => 'Vista de miniaturas',
'Toolbar' => 'Barra de herramientas',
'Actions' => 'Acciones',
'Rename_existing_file' => 'El archivo ya existe',
'Rename_existing_folder' => 'La carpeta ya existe',
'Empty_name' => 'El nombre se encuentra vacío',
'Text_filter' => 'filtro de texto',
'Swipe_help' => 'Deslize el nombre del archivo/carpeta para mostrar las opciones',
'Upload_base' => 'Subida de archivos SIMPLE',
'Upload_base_help' => "Arrastrar y soltar archivos(Drag & Drop Navegadores modernos) o haz click en el botón superior para Añadir los archivos y click en Empezar subida. Cuando la subida se haya completado, haz click en el botón 'Regresar a la lista de archivos'",
'Upload_add_files' => 'Añadir archivos',
'Upload_start' => 'Empezar subida',
'Upload_error_messages' =>array(
1 => 'El archivo subido excede la directiva upload_max_filesize en php.ini',
2 => 'El archivo subido excede la directiva MAX_FILE_SIZE especificada en el formulario HTML',
3 => 'El archivo subido solo fue subido parcialmente',
4 => 'No se ha subido ninún archivo',
6 => 'No se encuentra la carpeta temporal',
7 => 'Falló la escritura del archivo en el disco',
8 => 'Una extensión de PHP detuvo la subida del archivo',
'post_max_size' => 'El archivo subido excede la directiva upload_max_filesize en php.ini',
'max_file_size' => 'El archivo es demasiado grande',
'min_file_size' => 'El archivo es demasiado pequeño',
'accept_file_types' => 'Tipo de archivo (Filetype) no permitido',
'max_number_of_files' => 'Número máximo de archivos excedido',
'max_width' => 'La imagen excede el ancho máximo',
'min_width' => 'La imagen requiere un ancho mínimo',
'max_height' => 'La imagen excede el alto máximo',
'min_height' => 'La imagen requiere un alto mínimo',
'abort' => 'Subida de archivo cancelada',
'image_resize' => 'Error al redimensionar la imagen'
),
'Upload_url' => 'Desde url',
'Type_dir' => 'Carpeta',
'Type' => 'Tipo',
'Dimension' => 'Dimensiones',
'Size' => 'Peso',
'Date' => 'Fecha',
'Filename' => 'Nombre',
'Operations' => 'Operaciones',
'Date_type' => 'y-m-d',
'OK' => 'Aceptar',
'Cancel' => 'Cancelar',
'Sorting' => 'Ordenar',
'Show_url' => 'Mostrar URL',
'Extract' => 'Extraer aquí',
'File_info' => 'Información',
'Edit_image' => 'Editar imagen',
'Duplicate' => 'Duplicar',
'Folders' => 'Carpetas',
'Copy' => 'Copiar',
'Cut' => 'Cortar',
'Paste' => 'Pegar',
'CB' => 'Portapapeles', // clipboard
'Paste_Here' => 'Pegar en esta carpeta',
'Paste_Confirm' => '¿Está seguro de pegar el contenido en esta carpeta? Esta acción sobreescribirá los archivos y carpetas existentes.',
'Paste_Failed' => 'Error al pegar los archivos',
'Clear_Clipboard' => 'Limpiar el portapapeles',
'Clear_Clipboard_Confirm' => '¿Está seguro que desea limpiar el portapapeles?',
'Files_ON_Clipboard' => 'Existen archivos en el portapapeles',
'Copy_Cut_Size_Limit' => 'Los archivos/carpetas seleccionados son demasiado grandes para %s. Límite: %d MB/operación', // %s = cut or copy
'Copy_Cut_Count_Limit' => 'Ha seleccionado demasiados archivos/carpetas para %s. Límite: %d archivos/operación', // %s = cut or copy
'Copy_Cut_Not_Allowed' => 'No está permitido de %s archivos.', // %s(1) = cut or copy, %s(2) = files or folders
'Aviary_No_Save' => 'No fue posible guardar la imagen',
'Zip_No_Extract' => 'No fue posible extraer los archivos. Es posible que el archivo esté corrupto.',
'Zip_Invalid' => 'Esta extensión no es soportada. Extensiones válidas: zip, gz, tar.',
'Dir_No_Write' => 'El directorio que ha seleccionado no tiene permisos de escritura.',
'Function_Disabled' => 'La función %s ha sido deshabilitada en el servidor.', // %s = cut or copy
'File_Permission' => 'Permisos de archivos',
'File_Permission_Not_Allowed' => 'Cambiar %s permisos no está permitido.', // %s = files or folders
'File_Permission_Recursive' => 'Aplicar recursivamente?',
'File_Permission_Wrong_Mode' => "El modo de permiso suministrado es incorrecto.",
'User' => 'Usuario',
'Group' => 'Grupo',
'Yes' => 'Si',
'No' => 'No',
'Lang_Not_Found' => 'No se ha podido encontrar el idioma.',
'Lang_Change' => 'Cambiar idioma',
'File_Not_Found' => 'No se puede encontrar el archivo.',
'File_Open_Edit_Not_Allowed' => 'No estás autorizado a %s este archivo.', // %s = open or edit
'Edit' => 'Editar',
'Edit_File' => "Editar contenido del archivo",
'File_Save_OK' => "Archivo guardado satisfactoriamente.",
'File_Save_Error' => "Ocurrió un error guardando el archivo.",
'New_File' => 'Nuevo archivo',
'No_Extension' => 'Debes añadir una extensión al archivo.',
'Valid_Extensions' => 'Extensiones válidas: %s', // %s = txt,log etc.
'Upload_message' => "Arrastra archivos aquí para subir",
'SERVER ERROR' => "ERROR DEL SERVIDOR",
'forbiden' => "Prohibido",
'wrong path' => "Ruta incorrecta",
'wrong name' => "Nombre incorrecto",
'wrong extension' => "Extensión incorrecta",
'wrong option' => "Opción incorrecta",
'wrong data' => "Datos incorrectos",
'wrong action' => "Acción incorrecta",
'wrong sub-action' => "Sub-acción incorrecta",
'no action passed' => "No se ha recibido una acción",
'no path' => "Sin ruta",
'no file' => "Sin archivo",
'view type number missing' => "Falta el número de tipo de vista",
'Not enough Memory' => "No hay memória suficiente",
'max_size_reached' => "La carpeta de imágenes ha excedido el tamaño máximo de %d MB.", //%d = max overall size
'B' => "B",
'KB' => "KB",
'MB' => "MB",
'GB' => "GB",
'TB' => "TB",
'total size' => "Tamaño total",
);

145
core/vendor/filemanager/lang/fa.php vendored Normal file
View File

@ -0,0 +1,145 @@
<?php
return array(
'Select' => 'انتخاب',
'Deselect_All' => 'Deselect All',
'Select_All' => 'Select All',
'Erase' => 'حذف',
'Open' => 'بازگشایی',
'Confirm_del' => 'میخواهید این فایل را حذف کنید؟',
'All' => 'همه',
'Files' => 'فایلها',
'Images' => 'تصاویر',
'Archives' => 'آرشیو',
'Error_Upload' => 'فایل آپلود شده بیش از حداکثر اندازه مجاز است.',
'Error_extension' => 'نوع فایل مجاز نیست.',
'Upload_file' => 'آپلود',
'Filters' => 'فیلترها',
'Videos' => 'ویدئوها',
'Music' => 'موزیک',
'New_Folder' => 'پوشه جدید',
'Folder_Created' => 'پوشه به درستی ایجاد شد',
'Existing_Folder' => 'پوشه های موجود',
'Confirm_Folder_del' => 'آیا میخواهید این پوشه را با تمام محتوایش حذف کنید؟',
'Return_Files_List' => 'برگشت به لیست فایلها',
'Preview' => 'پیش نمایش',
'Download' => 'دانلود',
'Insert_Folder_Name' => 'نام پوشه:',
'Root' => 'شاخه اصلی',
'Rename' => 'تغییر نام',
'Back' => 'برگشت',
'View' => 'نمایش',
'View_list' => 'نمایش لیست',
'View_columns_list' => 'نمایش لیست ستونی',
'View_boxes' => 'نمایش باکسها',
'Toolbar' => 'نوار ابزار',
'Actions' => 'عملیات',
'Rename_existing_file' => 'فایل از قبل موجود است',
'Rename_existing_folder' => 'پوشه از قبل موجود است',
'Empty_name' => 'نام خالی است',
'Text_filter' => 'فیلتر نوشته',
'Swipe_help' => 'روی نام فایل/پوشه بروید تا گزینه های بیشتری نمایش داده شوند . ',
'Upload_base' => 'آپلودر اصلی',
'Upload_base_help' => "Drag & Drop files(modern browsers) or click in upper button to Add the file(s) and click on Start upload. When the upload is complete, click the 'Return to files list' button.",
'Upload_add_files' => 'Add file(s)',
'Upload_start' => 'Start upload',
'Upload_error_messages' =>array(
1 => 'The uploaded file exceeds the upload_max_filesize directive in php.ini',
2 => 'The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form',
3 => 'The uploaded file was only partially uploaded',
4 => 'No file was uploaded',
6 => 'Missing a temporary folder',
7 => 'Failed to write file to disk',
8 => 'A PHP extension stopped the file upload',
'post_max_size' => 'The uploaded file exceeds the post_max_size directive in php.ini',
'max_file_size' => 'File is too big',
'min_file_size' => 'File is too small',
'accept_file_types' => 'Filetype not allowed',
'max_number_of_files' => 'Maximum number of files exceeded',
'max_width' => 'Image exceeds maximum width',
'min_width' => 'Image requires a minimum width',
'max_height' => 'Image exceeds maximum height',
'min_height' => 'Image requires a minimum height',
'abort' => 'File upload aborted',
'image_resize' => 'Failed to resize image'
),
'Upload_url' => 'From url',
'Type_dir' => 'مسیر',
'Type' => 'نوع',
'Dimension' => 'بعد',
'Size' => 'اندازه',
'Date' => 'تاریخ',
'Filename' => 'نام فایل',
'Operations' => 'عملیات',
'Date_type' => 'y-m-d',
'OK' => 'باشه',
'Cancel' => 'لغو',
'Sorting' => 'مرتب سازی',
'Show_url' => 'نمایش آدرس',
'Extract' => 'استخراج در اینجا',
'File_info' => 'اطلاعات فایل',
'Edit_image' => 'ویرایش تصویر',
'Duplicate' => 'تکرار',
'Folders' => 'پوشه ها',
'Copy' => 'کپی',
'Cut' => 'بریدن',
'Paste' => 'درج',
'CB' => 'کلیپ برد', // clipboard
'Paste_Here' => 'درج در این مسیر',
'Paste_Confirm' => 'آیا ممئن هستید که میخواهید در این مسیر درج کنید ؟ اگر فایل همنام وجود داشته باشد فایل جدید روی فایل قبلی OverWrite خواهد شد .',
'Paste_Failed' => 'خطا در درج فایل (ها) ! ',
'Clear_Clipboard' => 'پاک کردن کلیپ برد',
'Clear_Clipboard_Confirm' => 'مطمئنید که می خواهید کلیپ برد را خالی کنید ؟',
'Files_ON_Clipboard' => 'کلیپ برد حاوی فایل است .',
'Copy_Cut_Size_Limit' => 'فایل/پوشه انتخابی از حداکثر حجم مجاز برای %s بزرگتر هستند. محدودیت: %d MB/عملیات', // %s = cut or copy
'Copy_Cut_Count_Limit' => 'تعداد فایل/پوشه های انتخابی برای %s بسیار زیاد است . محدودیت: %d فایل/عملیات', // %s = cut or copy
'Copy_Cut_Not_Allowed' => 'شما اجازه %s این فایل را ندارید .', // %s(1) = cut or copy, %s(2) = files or folders
'Aviary_No_Save' => 'نتوانست تصویر را ذخیره کند .',
'Zip_No_Extract' => 'خطا در فرآیند Unzip . ممکن است فایل آسیب دیده باشد .',
'Zip_Invalid' => 'پسوند مورد نظر پشیبانی نمیشود ، مجاز : zip, gz, tar.',
'Dir_No_Write' => 'مسیر انتخابی قابل نوشتن نیست .',
'Function_Disabled' => 'تابع %s از سمت سرور غیر فعال شده است .', // %s = cut or copy
'File_Permission' => 'دسترسی فایل',
'File_Permission_Not_Allowed' => 'تغییر دسترسی %s مجاز نمی باشد .', // %s = files or folders
'File_Permission_Recursive' => 'اعمال بازگشتی بودن؟',
'File_Permission_Wrong_Mode' => "دسترسی اعمال شده اشتباه است .",
'User' => 'کاربر',
'Group' => 'گروه',
'Yes' => 'بله',
'No' => 'خبر',
'Lang_Not_Found' => 'زبان مورد نظر یافت نشد .',
'Lang_Change' => 'تغییر زبان',
'File_Not_Found' => 'نتوانست فایل را پیدا کند .',
'File_Open_Edit_Not_Allowed' => 'شما نمیتوانید این فایل را %s کنید.', // %s = open or edit
'Edit' => 'ویرایش',
'Edit_File' => "ویرایش محتوای فایل",
'File_Save_OK' => "فایل با موفقیت ذخیره شد .",
'File_Save_Error' => "خطایی در هنگام ذخیره فایل رخ داده است .",
'New_File' => 'فایل جدید',
'No_Extension' => 'شما باید پسوند وارد کنید .',
'Valid_Extensions' => 'پسوند های مجاز : %s', // %s = txt,log etc.
'Upload_message' => "فایل ها را اینجا بکشید تا آپلود شوند ",
'SERVER ERROR' => "خطای سرور",
'forbiden' => "ممنوع",
'wrong path' => "مسیر اشتباه",
'wrong name' => "نام غیر مجاز",
'wrong extension' => "پسوند غیر مجاز",
'wrong option' => "گزینه های غیر مجاز",
'wrong data' => "دیتا اشتباه",
'wrong action' => "عمل اشتباه",
'wrong sub-action' => "خطای زیر دستور",
'no action passed' => "بدون دستور",
'no path' => "بدون مسیر",
'no file' => "بدون فایل",
'view type number missing' => "نمایش تعداد نوع های غیر مجاز",
'Not enough Memory' => "نبود فضای کافی",
'max_size_reached' => "پوشه تصویر شما به حداکثر اندازه خود [%d MB] رسیده است .", //%d = max overall size
'B' => "B",
'KB' => "KB",
'MB' => "MB",
'GB' => "GB",
'TB' => "TB",
'total size' => "حجم کلی",
);

Some files were not shown because too many files have changed in this diff Show More