color selector

This commit is contained in:
2015-06-08 20:32:46 +02:00
parent bb2e8e8c73
commit 0f7329736e
6 changed files with 23 additions and 10 deletions

View File

@@ -8,7 +8,7 @@ class Databap extends PhpObject
{ {
//Common Constants //Common Constants
const VERSION = '1.1.1'; //Versioning: <Main_Version>.<Enhancement_Package>.<Patch>-<Release_Candidate> const VERSION = '1.1.1'; //Versioning: <Main_Version>.<Enhancement_Package>.<Patch>-<Release_Candidate>
const VERSION_DATE = '31/05/2015'; const VERSION_DATE = '08/06/2015';
const EXPECTED_PAGE_COOKIE = 'exp_page'; const EXPECTED_PAGE_COOKIE = 'exp_page';
const MAIN_SEPARATOR = ' '; const MAIN_SEPARATOR = ' ';
const DATE_FORMAT = 'd/m/Y'; const DATE_FORMAT = 'd/m/Y';
@@ -132,6 +132,7 @@ class Databap extends PhpObject
const OPT_PASS = 'P'; const OPT_PASS = 'P';
const OPT_SELECT = 'S'; const OPT_SELECT = 'S';
const OPT_CHECKBOX = 'C'; const OPT_CHECKBOX = 'C';
const OPT_COLOR = 'R';
const OPT_NICKNAME = 1; const OPT_NICKNAME = 1;
const OPT_BG = 2; const OPT_BG = 2;
const OPT_BG_2 = 11; const OPT_BG_2 = 11;
@@ -357,10 +358,10 @@ class Databap extends PhpObject
$sOptionNameIdCol = MySqlManager::getId(self::OPTNAME_TABLE); $sOptionNameIdCol = MySqlManager::getId(self::OPTNAME_TABLE);
$sOptionValueIdCol = MySqlManager::getId(self::OPTVAL_TABLE); $sOptionValueIdCol = MySqlManager::getId(self::OPTVAL_TABLE);
$this->oMySql->insertRow(self::OPTNAME_TABLE, array($sOptionNameIdCol=>self::OPT_NICKNAME, $sOptionNameCol=>'pseudo du chat', 'type'=>self::OPT_TEXT, 'language'=>self::LANG_FR)); $this->oMySql->insertRow(self::OPTNAME_TABLE, array($sOptionNameIdCol=>self::OPT_NICKNAME, $sOptionNameCol=>'pseudo du chat', 'type'=>self::OPT_TEXT, 'language'=>self::LANG_FR));
$this->oMySql->insertRow(self::OPTNAME_TABLE, array($sOptionNameIdCol=>self::OPT_BG, $sOptionNameCol=>'couleur de fond', 'type'=>self::OPT_TEXT, 'language'=>self::LANG_FR)); $this->oMySql->insertRow(self::OPTNAME_TABLE, array($sOptionNameIdCol=>self::OPT_BG, $sOptionNameCol=>'couleur de fond', 'type'=>self::OPT_COLOR, 'language'=>self::LANG_FR));
$this->oMySql->insertRow(self::OPTNAME_TABLE, array($sOptionNameIdCol=>self::OPT_BG_2, $sOptionNameCol=>'couleur de fond 2', 'type'=>self::OPT_TEXT, 'language'=>self::LANG_FR)); $this->oMySql->insertRow(self::OPTNAME_TABLE, array($sOptionNameIdCol=>self::OPT_BG_2, $sOptionNameCol=>'couleur de fond 2', 'type'=>self::OPT_COLOR, 'language'=>self::LANG_FR));
$this->oMySql->insertRow(self::OPTNAME_TABLE, array($sOptionNameIdCol=>self::OPT_BG_3, $sOptionNameCol=>'couleur de fond 3', 'type'=>self::OPT_TEXT, 'language'=>self::LANG_FR)); $this->oMySql->insertRow(self::OPTNAME_TABLE, array($sOptionNameIdCol=>self::OPT_BG_3, $sOptionNameCol=>'couleur de fond 3', 'type'=>self::OPT_COLOR, 'language'=>self::LANG_FR));
$this->oMySql->insertRow(self::OPTNAME_TABLE, array($sOptionNameIdCol=>self::OPT_HOVER, $sOptionNameCol=>'couleur de survol', 'type'=>self::OPT_TEXT, 'language'=>self::LANG_FR)); $this->oMySql->insertRow(self::OPTNAME_TABLE, array($sOptionNameIdCol=>self::OPT_HOVER, $sOptionNameCol=>'couleur de survol', 'type'=>self::OPT_COLOR, 'language'=>self::LANG_FR));
$this->oMySql->insertRow(self::OPTNAME_TABLE, array($sOptionNameIdCol=>self::OPT_CHAT_BG, $sOptionNameCol=>'image du chat', 'type'=>self::OPT_TEXT, 'language'=>self::LANG_FR)); $this->oMySql->insertRow(self::OPTNAME_TABLE, array($sOptionNameIdCol=>self::OPT_CHAT_BG, $sOptionNameCol=>'image du chat', 'type'=>self::OPT_TEXT, 'language'=>self::LANG_FR));
$this->oMySql->insertRow(self::OPTNAME_TABLE, array($sOptionNameIdCol=>self::OPT_STATUS, $sOptionNameCol=>'mission en cours', 'type'=>self::OPT_TEXT, 'language'=>self::LANG_FR)); $this->oMySql->insertRow(self::OPTNAME_TABLE, array($sOptionNameIdCol=>self::OPT_STATUS, $sOptionNameCol=>'mission en cours', 'type'=>self::OPT_TEXT, 'language'=>self::LANG_FR));
$this->oMySql->insertRow(self::OPTNAME_TABLE, array($sOptionNameIdCol=>self::OPT_CONSOLE, $sOptionNameCol=>'afficher la console du chat', 'type'=>self::OPT_CHECKBOX, 'language'=>self::LANG_FR)); $this->oMySql->insertRow(self::OPTNAME_TABLE, array($sOptionNameIdCol=>self::OPT_CONSOLE, $sOptionNameCol=>'afficher la console du chat', 'type'=>self::OPT_CHECKBOX, 'language'=>self::LANG_FR));
@@ -453,6 +454,7 @@ class Databap extends PhpObject
'opt_type_pass'=>self::OPT_PASS, 'opt_type_pass'=>self::OPT_PASS,
'opt_type_select'=>self::OPT_SELECT, 'opt_type_select'=>self::OPT_SELECT,
'opt_type_checkbox'=>self::OPT_CHECKBOX, 'opt_type_checkbox'=>self::OPT_CHECKBOX,
'opt_type_color'=>self::OPT_COLOR,
'max_size'=>self::getMaxSize(), 'max_size'=>self::getMaxSize(),
'authorized_img_exts'=>self::$UPLOAD_IMG_EXTS, 'authorized_img_exts'=>self::$UPLOAD_IMG_EXTS,
'authorized_file_exts'=>self::$UPLOAD_DOC_EXTS, 'authorized_file_exts'=>self::$UPLOAD_DOC_EXTS,
@@ -1519,6 +1521,7 @@ class Databap extends PhpObject
$sNewValue = $this->oMySql->selectValue(self::OPTVAL_TABLE, $sOptValueTextCol, $sNewValueId); $sNewValue = $this->oMySql->selectValue(self::OPTVAL_TABLE, $sOptValueTextCol, $sNewValueId);
break; break;
case self::OPT_TEXT: case self::OPT_TEXT:
case self::OPT_COLOR:
$sNewValue = $asNewOptions[$sOptNameId]; $sNewValue = $asNewOptions[$sOptNameId];
break; break;
} }
@@ -1530,13 +1533,13 @@ class Databap extends PhpObject
if(($sNewValue=='' || $sNewValue==$sDefaultValue) && $sUserOptId>0) if(($sNewValue=='' || $sNewValue==$sDefaultValue) && $sUserOptId>0)
{ {
$this->oMySql->deleteRow(self::OPT_TABLE, $sUserOptId); $this->oMySql->deleteRow(self::OPT_TABLE, $sUserOptId);
if($asOption['type']==self::OPT_TEXT) $this->oMySql->deleteRow(self::OPTVAL_TABLE, $sUserValueId); if($asOption['type']==self::OPT_TEXT || $asOption['type']==self::OPT_COLOR) $this->oMySql->deleteRow(self::OPTVAL_TABLE, $sUserValueId);
} }
//New or updated value //New or updated value
elseif($sNewValue!=$sDefaultValue) elseif($sNewValue!=$sDefaultValue)
{ {
//Update option values table //Update option values table
if($asOption['type']==self::OPT_TEXT) if($asOption['type']==self::OPT_TEXT || $asOption['type']==self::OPT_COLOR)
{ {
$asData = array($sOptNameIdCol=>$sOptNameId, $sOptValueTextCol=>$sNewValue, 'language'=>$this->sLanguage); $asData = array($sOptNameIdCol=>$sOptNameId, $sOptValueTextCol=>$sNewValue, 'language'=>$this->sLanguage);
if($sUserValueId==$sDefaultValueId) $sNewValueId = $this->oMySql->insertRow(self::OPTVAL_TABLE, $asData); if($sUserValueId==$sDefaultValueId) $sNewValueId = $this->oMySql->insertRow(self::OPTVAL_TABLE, $asData);

View File

@@ -158,6 +158,9 @@ function addOption(iArrayId, optInfo, $Box)
case databap.consts.opt_type_text: case databap.consts.opt_type_text:
$Option.append($('<input>', {type:'text', id:optNameId, name:optNameId, value:optInfo.user_value, 'class':'round'})); $Option.append($('<input>', {type:'text', id:optNameId, name:optNameId, value:optInfo.user_value, 'class':'round'}));
break; break;
case databap.consts.opt_type_color:
$Option.append($('<input>', {type:'color', id:optNameId, name:optNameId, value:optInfo.user_value, 'class':'round'}));
break;
case databap.consts.opt_type_pass: case databap.consts.opt_type_pass:
$Option.append($('<input>', {type:'password', id:optNameId, name:optNameId, value:optInfo.user_value, 'class':'round'})); $Option.append($('<input>', {type:'password', id:optNameId, name:optNameId, value:optInfo.user_value, 'class':'round'}));
break; break;

View File

@@ -39,7 +39,8 @@ databap.pageInit = function()
'Réparation de la fonction /invite (+tab pour trouver le nom)', 'Réparation de la fonction /invite (+tab pour trouver le nom)',
'Modification des icônes de la <a href="#doc">documentation</a> (<i class="fa fa-c-doc"></i>) et de la <a href="#liste">liste complète</a> (<i class="fa fa-c-list"></i>)', 'Modification des icônes de la <a href="#doc">documentation</a> (<i class="fa fa-c-doc"></i>) et de la <a href="#liste">liste complète</a> (<i class="fa fa-c-list"></i>)',
'Resize des gifs animés'], 'Resize des gifs animés'],
ehp_improvements: [ 'Nouvelle option: afficher / masquer les images du chat. Aussi disponible directement dans le chat via un hover sur une image', ehp_improvements: [ 'Selecteur de couleur dans les options',
'Nouvelle option: afficher / masquer les images du chat. Aussi disponible directement dans le chat via un hover sur une image',
'Copier-coller une image dans le chat : en utilisant l\'icone en bas à droite du chat ou par glisser déposer depuis l\'exporer ou depuis le presse-papier (attention de bien déselectionner la barre de message avant de coller)', 'Copier-coller une image dans le chat : en utilisant l\'icone en bas à droite du chat ou par glisser déposer depuis l\'exporer ou depuis le presse-papier (attention de bien déselectionner la barre de message avant de coller)',
'Possibilité d\'accéder à tous les messags non lus, mêmes plus anciens qu\'une journée. cf. <a href="#options">#options</a>', 'Possibilité d\'accéder à tous les messags non lus, mêmes plus anciens qu\'une journée. cf. <a href="#options">#options</a>',
'Nouveau design', 'Nouveau design',

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1143,6 +1143,7 @@
} }
#options .options_box input[type=text], #options .options_box input[type=text],
#options .options_box input[type=color],
#options .options_box input[type=password], #options .options_box input[type=password],
#options .options_box select, #options .options_box select,
#options .options_box .checkbox { #options .options_box .checkbox {
@@ -1154,6 +1155,11 @@
width:calc(50% - 10px); width:calc(50% - 10px);
} }
#options .options_box input[type=color] {
width:50%;
padding:3px 5px;
}
#options .options_box .button { #options .options_box .button {
float:left; float:left;
clear:both; clear:both;