forked from ZwiiCMS-Team/ZwiiCMS
Merge master 9.2.23
This commit is contained in:
commit
77851208d9
@ -21,6 +21,15 @@
|
|||||||
- Modification :
|
- Modification :
|
||||||
- Chargement paresseux des images.
|
- Chargement paresseux des images.
|
||||||
|
|
||||||
|
## version 9.2.23
|
||||||
|
- Correction :
|
||||||
|
- Fonction magic_quotes dépréciée supprimée.
|
||||||
|
Modifications :
|
||||||
|
- TinyMCE : libellé des fonctions "Afficher dans"
|
||||||
|
- TinyMCE : boutons souligné et barré dans la barre d'outils.
|
||||||
|
- Module Form : Opion permettant d'ajouter le premier mail dans le formulaire au message de notification (Reply To) afin de répondre directement au message.
|
||||||
|
- Configuration du site : bouton affichant le numéro de la version en ligne
|
||||||
|
|
||||||
## version 9.2.22
|
## version 9.2.22
|
||||||
- Modifications :
|
- Modifications :
|
||||||
- Aperçu de la police dans les sélecteurs.
|
- Aperçu de la police dans les sélecteurs.
|
||||||
|
@ -33,7 +33,7 @@ class common {
|
|||||||
const TEMP_DIR = 'site/tmp/';
|
const TEMP_DIR = 'site/tmp/';
|
||||||
|
|
||||||
// Numéro de version
|
// Numéro de version
|
||||||
const ZWII_VERSION = '10.0.037.dev';
|
const ZWII_VERSION = '10.0.038.dev';
|
||||||
const ZWII_UPDATE_CHANNEL = "v10";
|
const ZWII_UPDATE_CHANNEL = "v10";
|
||||||
|
|
||||||
public static $actions = [];
|
public static $actions = [];
|
||||||
@ -771,7 +771,7 @@ class common {
|
|||||||
* @param string $content Contenu
|
* @param string $content Contenu
|
||||||
* @return bool
|
* @return bool
|
||||||
*/
|
*/
|
||||||
public function sendMail($to, $subject, $content) {
|
public function sendMail($to, $subject, $content, $replyTo = '') {
|
||||||
// Utilisation de PHPMailer version 6.0.6
|
// Utilisation de PHPMailer version 6.0.6
|
||||||
//require_once "core/vendor/phpmailer/phpmailer.php";
|
//require_once "core/vendor/phpmailer/phpmailer.php";
|
||||||
//require_once "core/vendor/phpmailer/exception.php";
|
//require_once "core/vendor/phpmailer/exception.php";
|
||||||
@ -786,7 +786,11 @@ class common {
|
|||||||
$mail->CharSet = 'UTF-8';
|
$mail->CharSet = 'UTF-8';
|
||||||
$host = str_replace('www.', '', $_SERVER['HTTP_HOST']);
|
$host = str_replace('www.', '', $_SERVER['HTTP_HOST']);
|
||||||
$mail->setFrom('no-reply@' . $host, $this->getData(['config', 'title']));
|
$mail->setFrom('no-reply@' . $host, $this->getData(['config', 'title']));
|
||||||
|
if (empty($replyTo)) {
|
||||||
$mail->addReplyTo('no-reply@' . $host, $this->getData(['config', 'title']));
|
$mail->addReplyTo('no-reply@' . $host, $this->getData(['config', 'title']));
|
||||||
|
} else {
|
||||||
|
$mail->addReplyTo($replyTo);
|
||||||
|
}
|
||||||
if(is_array($to)) {
|
if(is_array($to)) {
|
||||||
foreach($to as $userMail) {
|
foreach($to as $userMail) {
|
||||||
$mail->addAddress($userMail);
|
$mail->addAddress($userMail);
|
||||||
|
@ -20,10 +20,11 @@ class config extends common {
|
|||||||
'generateFiles' => self::GROUP_ADMIN,
|
'generateFiles' => self::GROUP_ADMIN,
|
||||||
'updateRobots' => self::GROUP_ADMIN,
|
'updateRobots' => self::GROUP_ADMIN,
|
||||||
'index' => self::GROUP_ADMIN,
|
'index' => self::GROUP_ADMIN,
|
||||||
'restore' => self::GROUP_ADMIN,
|
'updateOnline' => self::GROUP_ADMIN
|
||||||
'updateBaseUrl' => self::GROUP_ADMIN
|
|
||||||
];
|
];
|
||||||
|
|
||||||
|
public static $newVersion;
|
||||||
|
|
||||||
public static $timezones = [
|
public static $timezones = [
|
||||||
'Pacific/Midway' => '(GMT-11:00) Midway Island',
|
'Pacific/Midway' => '(GMT-11:00) Midway Island',
|
||||||
'US/Samoa' => '(GMT-11:00) Samoa',
|
'US/Samoa' => '(GMT-11:00) Samoa',
|
||||||
@ -452,6 +453,24 @@ class config extends common {
|
|||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Mise à jour présente
|
||||||
|
*/
|
||||||
|
public function updateOnline() {
|
||||||
|
// Nouvelle version
|
||||||
|
self::$newVersion = file_get_contents('http://zwiicms.com/update/' . common::ZWII_UPDATE_CHANNEL . '/version');
|
||||||
|
// Valeurs en sortie
|
||||||
|
$this->addOutput([
|
||||||
|
'notification' => 'Version installée : '. common::ZWII_VERSION . '<br>Version de la mise à jour en ligne : '. self::$newVersion ,
|
||||||
|
'redirect' => helper::baseUrl() . 'config',
|
||||||
|
'state' => true
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
class configHelper extends helper {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Met à jour les données de site avec l'adresse trannsmise
|
* Met à jour les données de site avec l'adresse trannsmise
|
||||||
*/
|
*/
|
||||||
|
@ -92,7 +92,8 @@ class install extends common {
|
|||||||
'Bonjour' . ' <strong>' . $userFirstname . ' ' . $userLastname . '</strong>,<br><br>' .
|
'Bonjour' . ' <strong>' . $userFirstname . ' ' . $userLastname . '</strong>,<br><br>' .
|
||||||
'Voici les détails de votre installation.<br><br>' .
|
'Voici les détails de votre installation.<br><br>' .
|
||||||
'<strong>URL du site :</strong> <a href="' . helper::baseUrl(false) . '" target="_blank">' . helper::baseUrl(false) . '</a><br>' .
|
'<strong>URL du site :</strong> <a href="' . helper::baseUrl(false) . '" target="_blank">' . helper::baseUrl(false) . '</a><br>' .
|
||||||
'<strong>Identifiant du compte :</strong> ' . $this->getInput('installId') . '<br>'
|
'<strong>Identifiant du compte :</strong> ' . $this->getInput('installId') . '<br>',
|
||||||
|
null
|
||||||
);
|
);
|
||||||
// Stocker le dossier d'installation
|
// Stocker le dossier d'installation
|
||||||
$this->setData(['core', 'baseUrl', helper::baseUrl(false,false) ]);
|
$this->setData(['core', 'baseUrl', helper::baseUrl(false,false) ]);
|
||||||
|
@ -80,7 +80,8 @@ class user extends common {
|
|||||||
'Un administrateur vous a créé un compte sur le site ' . $this->getData(['config', 'title']) . '. Vous trouverez ci-dessous les détails de votre compte.<br><br>' .
|
'Un administrateur vous a créé un compte sur le site ' . $this->getData(['config', 'title']) . '. Vous trouverez ci-dessous les détails de votre compte.<br><br>' .
|
||||||
'<strong>Identifiant du compte :</strong> ' . $this->getInput('userAddId') . '<br>' .
|
'<strong>Identifiant du compte :</strong> ' . $this->getInput('userAddId') . '<br>' .
|
||||||
'<strong>Mot de passe du compte :</strong> ' . $this->getInput('userAddPassword') . '<br><br>' .
|
'<strong>Mot de passe du compte :</strong> ' . $this->getInput('userAddPassword') . '<br><br>' .
|
||||||
'<small>Nous ne conservons pas les mots de passe, par conséquence nous vous conseillons de garder ce mail tant que vous ne vous êtes pas connecté. Vous pourrez modifier votre mot de passe après votre première connexion.</small>'
|
'<small>Nous ne conservons pas les mots de passe, par conséquence nous vous conseillons de garder ce mail tant que vous ne vous êtes pas connecté. Vous pourrez modifier votre mot de passe après votre première connexion.</small>',
|
||||||
|
null
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
// Valeurs en sortie
|
// Valeurs en sortie
|
||||||
@ -268,7 +269,8 @@ class user extends common {
|
|||||||
'Bonjour <strong>' . $this->getData(['user', $userId, 'firstname']) . ' ' . $this->getData(['user', $userId, 'lastname']) . '</strong>,<br><br>' .
|
'Bonjour <strong>' . $this->getData(['user', $userId, 'firstname']) . ' ' . $this->getData(['user', $userId, 'lastname']) . '</strong>,<br><br>' .
|
||||||
'Vous avez demandé à changer le mot de passe lié à votre compte. Vous trouverez ci-dessous un lien vous permettant de modifier celui-ci.<br><br>' .
|
'Vous avez demandé à changer le mot de passe lié à votre compte. Vous trouverez ci-dessous un lien vous permettant de modifier celui-ci.<br><br>' .
|
||||||
'<a href="' . helper::baseUrl() . 'user/reset/' . $userId . '/' . $uniqId . '" target="_blank">' . helper::baseUrl() . 'user/reset/' . $userId . '/' . $uniqId . '</a><br><br>' .
|
'<a href="' . helper::baseUrl() . 'user/reset/' . $userId . '/' . $uniqId . '" target="_blank">' . helper::baseUrl() . 'user/reset/' . $userId . '/' . $uniqId . '</a><br><br>' .
|
||||||
'<small>Si nous n\'avez pas demandé à réinitialiser votre mot de passe, veuillez ignorer ce mail.</small>'
|
'<small>Si nous n\'avez pas demandé à réinitialiser votre mot de passe, veuillez ignorer ce mail.</small>',
|
||||||
|
null
|
||||||
);
|
);
|
||||||
// Valeurs en sortie
|
// Valeurs en sortie
|
||||||
$this->addOutput([
|
$this->addOutput([
|
||||||
|
6
core/vendor/tinymce/init.js
vendored
6
core/vendor/tinymce/init.js
vendored
@ -20,7 +20,7 @@ tinymce.init({
|
|||||||
// Plugins
|
// Plugins
|
||||||
plugins: "advlist anchor autolink autoresize autosave codemirror codesample colorpicker contextmenu fullscreen hr image imagetools link lists media paste searchreplace stickytoolbar tabfocus table template textcolor visualblocks",
|
plugins: "advlist anchor autolink autoresize autosave codemirror codesample colorpicker contextmenu fullscreen hr image imagetools link lists media paste searchreplace stickytoolbar tabfocus table template textcolor visualblocks",
|
||||||
// Contenu de la barre d'outils
|
// Contenu de la barre d'outils
|
||||||
toolbar: "restoredraft | undo redo | styleselect | bold italic forecolor backcolor | alignleft aligncenter alignright alignjustify | bullist numlist | insert | code visualblocks fullscreen",
|
toolbar: "restoredraft | undo redo | styleselect | bold italic underline strikethrough forecolor backcolor | alignleft aligncenter alignright alignjustify | bullist numlist | insert | code visualblocks fullscreen",
|
||||||
// CodeMirror
|
// CodeMirror
|
||||||
codemirror: {
|
codemirror: {
|
||||||
indentOnInit: true, // Whether or not to indent code on init.
|
indentOnInit: true, // Whether or not to indent code on init.
|
||||||
@ -42,8 +42,8 @@ tinymce.init({
|
|||||||
// Target pour lightbox
|
// Target pour lightbox
|
||||||
rel_list: [
|
rel_list: [
|
||||||
{title: 'None', value: ''},
|
{title: 'None', value: ''},
|
||||||
{title: 'Popup intégrée (Lity)', value: 'data-lity'},
|
{title: 'Une popup (Lity)', value: 'data-lity'},
|
||||||
{title: 'Diaporama d\'images (SimpleLightbox)', value: 'gallery'}
|
{title: 'Une galerie d\'images (SimpleLightbox)', value: 'gallery'}
|
||||||
],
|
],
|
||||||
// Titre des image
|
// Titre des image
|
||||||
image_title: true,
|
image_title: true,
|
||||||
|
@ -352,7 +352,8 @@ class blog extends common {
|
|||||||
$to,
|
$to,
|
||||||
'Nouveau commentaire',
|
'Nouveau commentaire',
|
||||||
'Bonjour' . ' <strong>' . $user['firstname'] . ' ' . $user['lastname'] . '</strong>,<br><br>' .
|
'Bonjour' . ' <strong>' . $user['firstname'] . ' ' . $user['lastname'] . '</strong>,<br><br>' .
|
||||||
'Nouveau commentaire déposé sur la page "' . $this->getData(['page', $this->getUrl(0), 'title']) . '" :<br><br>'
|
'Nouveau commentaire déposé sur la page "' . $this->getData(['page', $this->getUrl(0), 'title']) . '" :<br><br>',
|
||||||
|
''
|
||||||
);
|
);
|
||||||
// Valeurs en sortie
|
// Valeurs en sortie
|
||||||
$this->addOutput([
|
$this->addOutput([
|
||||||
|
@ -88,7 +88,8 @@ class form extends common {
|
|||||||
'user' => self::$listUsers [$this->getInput('formConfigUser', helper::FILTER_INT)],
|
'user' => self::$listUsers [$this->getInput('formConfigUser', helper::FILTER_INT)],
|
||||||
'mail' => $this->getInput('formConfigMail') ,
|
'mail' => $this->getInput('formConfigMail') ,
|
||||||
'pageId' => $pageId,
|
'pageId' => $pageId,
|
||||||
'subject' => $this->getInput('formConfigSubject')
|
'subject' => $this->getInput('formConfigSubject'),
|
||||||
|
'replyto' => $this->getInput('formConfigMailReplyTo', helper::FILTER_BOOLEAN)
|
||||||
]
|
]
|
||||||
]);
|
]);
|
||||||
// Génération des données vides
|
// Génération des données vides
|
||||||
@ -295,6 +296,7 @@ class form extends common {
|
|||||||
// Préparation le contenu du mail
|
// Préparation le contenu du mail
|
||||||
$data = [];
|
$data = [];
|
||||||
$content = '';
|
$content = '';
|
||||||
|
$replyTo = '';
|
||||||
foreach($this->getData(['module', $this->getUrl(0), 'input']) as $index => $input) {
|
foreach($this->getData(['module', $this->getUrl(0), 'input']) as $index => $input) {
|
||||||
// Filtre la valeur
|
// Filtre la valeur
|
||||||
switch($input['type']) {
|
switch($input['type']) {
|
||||||
@ -314,6 +316,10 @@ class form extends common {
|
|||||||
$filter = helper::FILTER_STRING_SHORT;
|
$filter = helper::FILTER_STRING_SHORT;
|
||||||
}
|
}
|
||||||
$value = $this->getInput('formInput[' . $index . ']', $filter, $input['required']) === true ? 'X' : $this->getInput('formInput[' . $index . ']', $filter, $input['required']);
|
$value = $this->getInput('formInput[' . $index . ']', $filter, $input['required']) === true ? 'X' : $this->getInput('formInput[' . $index . ']', $filter, $input['required']);
|
||||||
|
// Champ reply ajouté au mail
|
||||||
|
if ($this->getData(['module', $this->getUrl(0), 'config', 'replyto']) === true && $filter === helper::FILTER_MAIL) {
|
||||||
|
$replyTo = $value;
|
||||||
|
}
|
||||||
// Préparation des données pour la création dans la base
|
// Préparation des données pour la création dans la base
|
||||||
$data[$this->getData(['module', $this->getUrl(0), 'input', $index, 'name'])] = $value;
|
$data[$this->getData(['module', $this->getUrl(0), 'input', $index, 'name'])] = $value;
|
||||||
// Préparation des données pour le mail
|
// Préparation des données pour le mail
|
||||||
@ -364,7 +370,8 @@ class form extends common {
|
|||||||
$to,
|
$to,
|
||||||
$subject,
|
$subject,
|
||||||
'Nouveau message en provenance de la page "' . $this->getData(['page', $this->getUrl(0), 'title']) . '" :<br><br>' .
|
'Nouveau message en provenance de la page "' . $this->getData(['page', $this->getUrl(0), 'title']) . '" :<br><br>' .
|
||||||
$content
|
$content,
|
||||||
|
$replyTo
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -119,6 +119,14 @@
|
|||||||
]); ?>
|
]); ?>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col6 offset1">
|
||||||
|
<?php echo template::checkbox('formConfigMailReplyTo', true, 'Répondre au message de l\'expéditeur par email', [
|
||||||
|
'checked' => (bool) $this->getData(['module', $this->getUrl(0), 'config', 'replyto']),
|
||||||
|
'help' => 'Cette option permet de réponse drectement à l\'expéditeur du message si celui-ci a indiqué un email valide.'
|
||||||
|
]); ?>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col6">
|
<div class="col6">
|
||||||
|
Loading…
Reference in New Issue
Block a user