forked from ZwiiCMS-Team/ZwiiCMS
Correction : erreur zip download et libellés
This commit is contained in:
parent
252546848b
commit
1a2238ff02
@ -480,25 +480,8 @@ class theme extends common {
|
|||||||
* Export du thème
|
* Export du thème
|
||||||
*/
|
*/
|
||||||
public function export() {
|
public function export() {
|
||||||
// Creation du dossier
|
// Make zip
|
||||||
$zipFilename = 'theme-'.date('dmYhms').'-'.rand(100,999).'.zip';
|
$zipFilename = $this->makezip();
|
||||||
$zip = new ZipArchive();
|
|
||||||
if ($zip->open('site/tmp/' . $zipFilename, ZipArchive::CREATE | ZipArchive::OVERWRITE ) === TRUE) {
|
|
||||||
$zip->addFile('site/data/theme.json','site/data/theme.json');
|
|
||||||
$zip->addFile('site/data/theme.json','site/data/theme.css');
|
|
||||||
$zip->addFile('site/data/theme.json','site/data/custom.css');
|
|
||||||
if ($this->getData(['theme','body','image']) !== '' ) {
|
|
||||||
$zip->addFile('site/file/source/'.$this->getData(['theme','body','image']),
|
|
||||||
'site/file/source/'.$this->getData(['theme','body','image'])
|
|
||||||
);
|
|
||||||
}
|
|
||||||
if ($this->getData(['theme','header','image']) !== '' ) {
|
|
||||||
$zip->addFile('site/file/source/'.$this->getData(['theme','header','image']),
|
|
||||||
'site/file/source/'.$this->getData(['theme','header','image'])
|
|
||||||
);
|
|
||||||
}
|
|
||||||
$ret = $zip->close();
|
|
||||||
}
|
|
||||||
// Téléchargement du ZIP
|
// Téléchargement du ZIP
|
||||||
header('Content-Description: File Transfer');
|
header('Content-Description: File Transfer');
|
||||||
header('Content-Type: application/octet-stream');
|
header('Content-Type: application/octet-stream');
|
||||||
@ -508,18 +491,33 @@ class theme extends common {
|
|||||||
readfile('site/tmp/' . $zipFilename);
|
readfile('site/tmp/' . $zipFilename);
|
||||||
// Nettoyage du dossier
|
// Nettoyage du dossier
|
||||||
unlink ('site/tmp/' . $zipFilename);
|
unlink ('site/tmp/' . $zipFilename);
|
||||||
// Valeurs en sortie
|
die();
|
||||||
$this->addOutput([
|
|
||||||
'display' => self::DISPLAY_RAW
|
|
||||||
]);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Export du thème
|
* Export du thème
|
||||||
*/
|
*/
|
||||||
public function save() {
|
public function save() {
|
||||||
|
// Make zip
|
||||||
|
$zipFilename = $this->makezip();
|
||||||
|
// Téléchargement du ZIP
|
||||||
|
copy ('site/tmp/' . $zipFilename , 'site/file/source/' . $zipFilename);
|
||||||
|
// Nettoyage du dossier
|
||||||
|
unlink ('site/tmp/' . $zipFilename);
|
||||||
|
// Valeurs en sortie
|
||||||
|
$this->addOutput([
|
||||||
|
'notification' => 'Archive <b>'.$zipFilename.'</b> sauvegardée dans fichiers',
|
||||||
|
'redirect' => helper::baseUrl() . 'theme/manage',
|
||||||
|
'state' => true
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* construction du zip
|
||||||
|
*/
|
||||||
|
public function makezip() {
|
||||||
// Creation du dossier
|
// Creation du dossier
|
||||||
$zipFilename = 'theme-'.date('dmYhms').'-'.rand(100,999).'.zip';
|
$zipFilename = 'theme-'.date('dmY').'-'.date('hm').'-'.rand(10,99).'.zip';
|
||||||
$zip = new ZipArchive();
|
$zip = new ZipArchive();
|
||||||
if ($zip->open('site/tmp/' . $zipFilename, ZipArchive::CREATE | ZipArchive::OVERWRITE ) === TRUE) {
|
if ($zip->open('site/tmp/' . $zipFilename, ZipArchive::CREATE | ZipArchive::OVERWRITE ) === TRUE) {
|
||||||
$zip->addFile('site/data/theme.json','site/data/theme.json');
|
$zip->addFile('site/data/theme.json','site/data/theme.json');
|
||||||
@ -537,16 +535,7 @@ class theme extends common {
|
|||||||
}
|
}
|
||||||
$ret = $zip->close();
|
$ret = $zip->close();
|
||||||
}
|
}
|
||||||
// Téléchargement du ZIP
|
return ($zipFilename);
|
||||||
copy ('site/tmp/' . $zipFilename , 'site/file/source/' . $zipFilename);
|
|
||||||
// Nettoyage du dossier
|
|
||||||
unlink ('site/tmp/' . $zipFilename);
|
|
||||||
// Valeurs en sortie
|
|
||||||
$this->addOutput([
|
|
||||||
'notification' => 'Archive <b>'.$zipFilename.'</b> sauvegardée dans fichiers',
|
|
||||||
'redirect' => helper::baseUrl() . 'theme/manage',
|
|
||||||
'state' => true
|
|
||||||
]);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -12,9 +12,9 @@
|
|||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col6">
|
<div class="col6">
|
||||||
<div class="block">
|
<div class="block">
|
||||||
<h4>Importer les données du thème</h4>
|
<h4>Importer</h4>
|
||||||
<?php echo template::file('themeManageImport', [
|
<?php echo template::file('themeManageImport', [
|
||||||
'label' => 'Archive à importer',
|
'label' => 'Archive',
|
||||||
'type' => 2
|
'type' => 2
|
||||||
]); ?>
|
]); ?>
|
||||||
<div class="col5 offset3">
|
<div class="col5 offset3">
|
||||||
@ -26,23 +26,23 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="col6">
|
<div class="col6">
|
||||||
<div class="block">
|
<div class="block">
|
||||||
<h4>Enregistrer les données du thème</h4>
|
<h4>Exporter</h4>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col5 offset1">
|
<div class="col5 offset1">
|
||||||
<?php echo template::button('themeSave', [
|
<?php echo template::button('themeSave', [
|
||||||
'href' => helper::baseUrl() . 'theme/save',
|
'href' => helper::baseUrl() . 'theme/save',
|
||||||
'value' => 'Sauvegarder le thème dans les fichiers'
|
'value' => 'Sauvegarder'
|
||||||
]); ?>
|
]); ?>
|
||||||
</div>
|
</div>
|
||||||
<div class="col5">
|
<div class="col5">
|
||||||
<?php echo template::button('themeExport', [
|
<?php echo template::button('themeExport', [
|
||||||
'href' => helper::baseUrl() . 'theme/export',
|
'href' => helper::baseUrl() . 'theme/export',
|
||||||
'value' => 'Télécharger une archive du thème'
|
'value' => 'Télécharger'
|
||||||
]); ?>
|
]); ?>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
L'archive ZIP contient la structure du thème avec l'arborescence complète à copier dans le dossier site. Les images sont comprises dans l'archive.
|
L'archive ZIP contient un dossier "site" à copier à la racine du répertoire d'installation de ZwiiCMS. Il comprend les données du thème et les images qu'il utilise le cas échéant.
|
||||||
<p \>Le nom du thème est généré à partir du groupe date heure et d'un nombre aléatoire.
|
<p \>Le nom du thème est généré automatiquement à partir de la date et de l'heure de son enregistrement et d'un nombre aléatoire.
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user