forked from ZwiiCMS-Team/ZwiiCMS
Merge branch '10304' into 10400
This commit is contained in:
commit
e7c19df92e
@ -15,8 +15,13 @@
|
|||||||
- Approbation des commentaires
|
- Approbation des commentaires
|
||||||
|
|
||||||
## version 10.3.04
|
## version 10.3.04
|
||||||
- Correction :
|
- Corrections :
|
||||||
- Position des entrées de menu sur les écrans de smartphone.
|
- Position des entrées de menu sur les écrans de smartphone.
|
||||||
|
- Thème : import d'un thème, d'administration impossible.
|
||||||
|
- Thème : import d'un thème, nettoyage du dossier tmp.
|
||||||
|
- Thème administration : modification de l'appel du code CSS permettant une mise à jour du thème sans vider le cache.
|
||||||
|
- Amélioration :
|
||||||
|
- Mise en page du corps des mails de notification.
|
||||||
|
|
||||||
## version 10.3.03
|
## version 10.3.03
|
||||||
- Correction :
|
- Correction :
|
||||||
|
@ -1026,6 +1026,17 @@ class common {
|
|||||||
$db->save;
|
$db->save;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Effacer un dossier non vide.
|
||||||
|
* @param string URL du dossier à supprimer
|
||||||
|
*/
|
||||||
|
public function removeDir ( $path ) {
|
||||||
|
foreach ( new DirectoryIterator($path) as $item ):
|
||||||
|
if ( $item->isFile() ) unlink($item->getRealPath());
|
||||||
|
if ( !$item->isDot() && $item->isDir() ) $this->removeDir($item->getRealPath());
|
||||||
|
endforeach;
|
||||||
|
rmdir($path);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Mises à jour
|
* Mises à jour
|
||||||
@ -1710,7 +1721,7 @@ class core extends common {
|
|||||||
$colors = helper::colorVariants($this->getData(['admin','backgroundColorButtonRed']));
|
$colors = helper::colorVariants($this->getData(['admin','backgroundColorButtonRed']));
|
||||||
$css .= '.button.buttonRed {background-color: ' . $colors['normal'] . ';color: ' . $colors['text'] . ';}.button.buttonRed:hover {background-color:' . $colors['darken'] . ';color:' . $colors['text'] . ';}.button.buttonRed:active {background-color:' . $colors['veryDarken'] . ';color:' . $colors['text'] . ';}';
|
$css .= '.button.buttonRed {background-color: ' . $colors['normal'] . ';color: ' . $colors['text'] . ';}.button.buttonRed:hover {background-color:' . $colors['darken'] . ';color:' . $colors['text'] . ';}.button.buttonRed:active {background-color:' . $colors['veryDarken'] . ';color:' . $colors['text'] . ';}';
|
||||||
$colors = helper::colorVariants($this->getData(['admin','backgroundColorButtonGreen']));
|
$colors = helper::colorVariants($this->getData(['admin','backgroundColorButtonGreen']));
|
||||||
$css .= '.button.buttonGreen, button[type=submit] {background-color: ' . $colors['normal'] . ';color: ' . $colors['text'] . '}.button.buttonGreen:hover, button[type=submit]:hover {background-color: ' . $colors['darken'] . ';color: ' . $colors['text'] .';}.button.buttonGreen:active, button[type=submit]:active {background-color: ' . $colors['darken'] . ';color: ' .$colors['text'] .';}';
|
$css .= '.button.buttonGreen, button[type=submit] {background-color: ' . $colors['normal'] . ';color: ' . $colors['text'] . ';}.button.buttonGreen:hover, button[type=submit]:hover {background-color: ' . $colors['darken'] . ';color: ' . $colors['text'] .';}.button.buttonGreen:active, button[type=submit]:active {background-color: ' . $colors['darken'] . ';color: ' .$colors['text'] .';}';
|
||||||
$colors = helper::colorVariants($this->getData(['admin','backgroundBlockColor']));
|
$colors = helper::colorVariants($this->getData(['admin','backgroundBlockColor']));
|
||||||
$css .= '.block {border: 1px solid ' . $this->getData(['admin','borderBlockColor']) . ';}.block h4 {background-color: ' . $colors['normal'] . ';color:' . $colors['text'] . ';}';
|
$css .= '.block {border: 1px solid ' . $this->getData(['admin','borderBlockColor']) . ';}.block h4 {background-color: ' . $colors['normal'] . ';color:' . $colors['text'] . ';}';
|
||||||
$css .= 'table tr,input[type=email],input[type=text],input[type=password],select:not(#barSelectPage),textarea:not(.editorWysiwyg),.inputFile{background-color: ' . $colors['normal'] . ';color:' . $colors['text'] . ';border: 1px solid ' . $this->getData(['admin','borderBlockColor']) . ';}';
|
$css .= 'table tr,input[type=email],input[type=text],input[type=password],select:not(#barSelectPage),textarea:not(.editorWysiwyg),.inputFile{background-color: ' . $colors['normal'] . ';color:' . $colors['text'] . ';border: 1px solid ' . $this->getData(['admin','borderBlockColor']) . ';}';
|
||||||
@ -2805,6 +2816,9 @@ class layout extends common {
|
|||||||
public function showStyle() {
|
public function showStyle() {
|
||||||
if($this->core->output['style']) {
|
if($this->core->output['style']) {
|
||||||
echo '<base href="' . helper::baseUrl(true) .'">';
|
echo '<base href="' . helper::baseUrl(true) .'">';
|
||||||
|
if (strpos($this->core->output['style'], 'admin.css') >= 1 ) {
|
||||||
|
echo '<link rel="stylesheet" href="' . self::DATA_DIR . 'admin.css?' . md5_file(self::DATA_DIR .'admin.css') . '">';
|
||||||
|
}
|
||||||
echo '<style type="text/css">' . helper::minifyCss($this->core->output['style']) . '</style>';
|
echo '<style type="text/css">' . helper::minifyCss($this->core->output['style']) . '</style>';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -71,7 +71,7 @@
|
|||||||
<div style="display:none;font-size:1px;line-height:1px;max-height:0px;max-width:0px;opacity:0;overflow:hidden;mso-hide:all;font-family: sans-serif;">
|
<div style="display:none;font-size:1px;line-height:1px;max-height:0px;max-width:0px;opacity:0;overflow:hidden;mso-hide:all;font-family: sans-serif;">
|
||||||
<?php echo $subject; ?>
|
<?php echo $subject; ?>
|
||||||
</div>
|
</div>
|
||||||
<div style="max-width: 500px; margin: auto;" class="email-container">
|
<div style="max-width: 500px; margin: auto; margin-top: 30px; border: #aaa 1px solid;" class="email-container">
|
||||||
<!--[if mso]>
|
<!--[if mso]>
|
||||||
<table role="presentation" cellspacing="0" cellpadding="0" border="0" width="500" align="center">
|
<table role="presentation" cellspacing="0" cellpadding="0" border="0" width="500" align="center">
|
||||||
<tr>
|
<tr>
|
||||||
|
@ -12,7 +12,15 @@
|
|||||||
* @link http://zwiicms.fr/
|
* @link http://zwiicms.fr/
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@import url("site/data/admin.css");
|
/** /** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/ */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Effet d'animation
|
* Effet d'animation
|
||||||
|
@ -12,7 +12,15 @@
|
|||||||
* @link http://zwiicms.fr/
|
* @link http://zwiicms.fr/
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@import url("site/data/admin.css");
|
/** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/ */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
||||||
|
|
||||||
.blockContainer {
|
.blockContainer {
|
||||||
display : none;
|
display : none;
|
||||||
|
@ -12,4 +12,8 @@
|
|||||||
* @link http://zwiicms.fr/
|
* @link http://zwiicms.fr/
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@import url("site/data/admin.css");
|
/** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
@ -12,4 +12,8 @@
|
|||||||
* @link http://zwiicms.fr/
|
* @link http://zwiicms.fr/
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@import url("site/data/admin.css");
|
/** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
@ -18,8 +18,7 @@ class install extends common {
|
|||||||
public static $actions = [
|
public static $actions = [
|
||||||
'index' => self::GROUP_VISITOR,
|
'index' => self::GROUP_VISITOR,
|
||||||
'steps' => self::GROUP_ADMIN,
|
'steps' => self::GROUP_ADMIN,
|
||||||
'update' => self::GROUP_ADMIN,
|
'update' => self::GROUP_ADMIN
|
||||||
'removeAll' => self::GROUP_ADMIN
|
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
||||||
@ -253,16 +252,5 @@ class install extends common {
|
|||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Effacer un dossier non vide.
|
|
||||||
*/
|
|
||||||
private function removeAll ( $path ) {
|
|
||||||
foreach ( new DirectoryIterator($path) as $item ):
|
|
||||||
if ( $item->isFile() ) unlink($item->getRealPath());
|
|
||||||
if ( !$item->isDot() && $item->isDir() ) $this->removeAll($item->getRealPath());
|
|
||||||
endforeach;
|
|
||||||
|
|
||||||
rmdir($path);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
@ -14,5 +14,9 @@
|
|||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@import url("site/data/admin.css");
|
/** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
||||||
*/
|
*/
|
@ -13,7 +13,11 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
@import url("site/data/admin.css");
|
/** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
||||||
|
|
||||||
#ceo > .blockContainer,
|
#ceo > .blockContainer,
|
||||||
#advanced > .blockContainer {
|
#advanced > .blockContainer {
|
||||||
|
@ -616,16 +616,19 @@ class theme extends common {
|
|||||||
mkdir (self::TEMP_DIR . $tempFolder);
|
mkdir (self::TEMP_DIR . $tempFolder);
|
||||||
$zip->extractTo(self::TEMP_DIR . $tempFolder );
|
$zip->extractTo(self::TEMP_DIR . $tempFolder );
|
||||||
// Archive de thème ?
|
// Archive de thème ?
|
||||||
if ( file_exists(self::TEMP_DIR . $tempFolder . '/site/data/custom.css')
|
if (( file_exists(self::TEMP_DIR . $tempFolder . '/site/data/custom.css')
|
||||||
AND file_exists(self::TEMP_DIR . $tempFolder . '/site/data/theme.css')
|
AND file_exists(self::TEMP_DIR . $tempFolder . '/site/data/theme.css')
|
||||||
AND file_exists(self::TEMP_DIR . $tempFolder . '/site/data/theme.json') ) {
|
AND file_exists(self::TEMP_DIR . $tempFolder . '/site/data/theme.json')
|
||||||
|
) OR (
|
||||||
|
file_exists(self::TEMP_DIR . $tempFolder . '/site/data/admin.json')
|
||||||
|
)
|
||||||
|
) {
|
||||||
// traiter l'archive
|
// traiter l'archive
|
||||||
$success = $zip->extractTo('.');
|
$success = $zip->extractTo('.');
|
||||||
// traitement de l'erreur
|
// traitement de l'erreur
|
||||||
$notification = $success ? 'Le thème a été importé' : 'Erreur lors de l\'extraction, vérifiez les permissions.';
|
$notification = $success ? 'Le thème a été importé' : 'Erreur lors de l\'extraction, vérifiez les permissions.';
|
||||||
// Supprimmer le dossier temporaire
|
// Supprimmer le dossier temporaire
|
||||||
$install = new install;
|
$this->removeDir(self::TEMP_DIR . $tempFolder);
|
||||||
$install->removeAll(self::TEMP_DIR . $tempFolder);
|
|
||||||
} else {
|
} else {
|
||||||
// pas une archive de thème
|
// pas une archive de thème
|
||||||
$success = false;
|
$success = false;
|
||||||
|
@ -13,4 +13,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
/* Thème administration */
|
/* Thème administration */
|
||||||
@import url("site/data/admin.css");
|
/** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
||||||
|
@ -13,4 +13,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
/* Thème administration */
|
/* Thème administration */
|
||||||
@import url("site/data/admin.css");
|
/** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
@ -11,7 +11,11 @@
|
|||||||
* @link http://zwiicms.fr/
|
* @link http://zwiicms.fr/
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@import url("site/data/admin.css");
|
/** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
||||||
|
|
||||||
#backToTop {
|
#backToTop {
|
||||||
display: block;
|
display: block;
|
||||||
|
@ -13,4 +13,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
/* Thème administration */
|
/* Thème administration */
|
||||||
@import url("site/data/admin.css");
|
/** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
@ -12,4 +12,8 @@
|
|||||||
* @link http://zwiicms.fr/
|
* @link http://zwiicms.fr/
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@import url("site/data/admin.css");
|
/** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
@ -12,7 +12,11 @@
|
|||||||
|
|
||||||
|
|
||||||
/* Thème administration */
|
/* Thème administration */
|
||||||
@import url("site/data/admin.css");
|
/** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
||||||
|
|
||||||
#bar,
|
#bar,
|
||||||
#site,
|
#site,
|
||||||
|
@ -13,4 +13,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
/* Thème administration */
|
/* Thème administration */
|
||||||
@import url("site/data/admin.css");
|
/** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
@ -12,4 +12,8 @@
|
|||||||
* @link http://zwiicms.fr/
|
* @link http://zwiicms.fr/
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@import url("site/data/admin.css");
|
/** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
@ -13,4 +13,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
@import url("site/data/admin.css");
|
/** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
@ -12,4 +12,8 @@
|
|||||||
* @link http://zwiicms.fr/
|
* @link http://zwiicms.fr/
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@import url("site/data/admin.css");
|
/** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
@ -13,4 +13,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
@import url("site/data/admin.css");
|
/** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
@ -13,4 +13,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
@import url("site/data/admin.css");
|
/** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
@ -13,4 +13,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
@import url("site/data/admin.css");
|
/** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
@ -13,5 +13,9 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@import url("site/data/admin.css");
|
/** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
||||||
*/
|
*/
|
||||||
|
@ -12,4 +12,8 @@
|
|||||||
* @link http://zwiicms.fr/
|
* @link http://zwiicms.fr/
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@import url("site/data/admin.css");
|
/** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
@ -13,4 +13,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
@import url("site/data/admin.css");
|
/** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
@ -13,4 +13,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
@import url("site/data/admin.css");
|
/** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
@ -13,4 +13,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
@import url("site/data/admin.css");
|
/** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
@ -13,4 +13,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
@import url("site/data/admin.css");
|
/** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
@ -1,4 +1,8 @@
|
|||||||
@import url("site/data/admin.css");
|
/** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
.formConfigInput {
|
.formConfigInput {
|
||||||
|
@ -13,4 +13,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
@import url("site/data/admin.css");
|
/** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
@ -13,7 +13,11 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
@import url("site/data/admin.css");
|
/** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
||||||
|
|
||||||
.galleryConfigError {
|
.galleryConfigError {
|
||||||
color: #F3674A;
|
color: #F3674A;
|
||||||
|
@ -13,4 +13,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
@import url("site/data/admin.css");
|
/** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
@ -13,4 +13,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
@import url("site/data/admin.css");
|
/** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
@ -13,4 +13,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
@import url("site/data/admin.css");
|
/** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
@ -13,4 +13,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
@import url("site/data/admin.css");
|
/** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
@ -13,4 +13,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
@import url("site/data/admin.css");
|
/** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
@ -13,4 +13,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
@import url("site/data/admin.css");
|
/** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
@ -13,4 +13,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
@import url("site/data/admin.css");
|
/** @import url("site/data/admin.css"); */
|
||||||
|
|
||||||
|
/** NE PAS EFFACER
|
||||||
|
* admin.css
|
||||||
|
*/
|
Loading…
Reference in New Issue
Block a user