Removed default values from <input>s. JavaScript will now get the

colours from the theme. This approach removes data that was
previously available in HTML. It was only necessary if the user wanted
to know the site's default values.
This commit is contained in:
Sarven Capadisli 2009-07-30 20:44:51 +00:00 committed by Evan Prodromou
parent 854d24b05a
commit 77c5f9481c
2 changed files with 35 additions and 6 deletions

View File

@ -7,6 +7,35 @@
* @link http://laconi.ca/ * @link http://laconi.ca/
*/ */
$(document).ready(function() { $(document).ready(function() {
function InitColors(i, E) {
switch (parseInt(E.id.slice(-1))) {
case 1: default:
$(E).val(rgb2hex($('body').css('background-color')));
break;
case 2:
$(E).val(rgb2hex($('#content').css('background-color')));
break;
case 3:
$(E).val(rgb2hex($('#aside_primary').css('background-color')));
break;
case 4:
$(E).val(rgb2hex($('html body').css('color')));
break;
case 5:
$(E).val(rgb2hex($('a').css('color')));
break;
}
}
function rgb2hex(rgb) {
rgb = rgb.match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/);
function hex(x) {
hexDigits = new Array("0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F");
return isNaN(x) ? "00" : hexDigits[(x - x % 16) / 16] + hexDigits[x % 16];
}
return "#" + hex(rgb[1]) + hex(rgb[2]) + hex(rgb[3]);
}
function UpdateColors(S) { function UpdateColors(S) {
C = $(S).val(); C = $(S).val();
switch (parseInt(S.id.slice(-1))) { switch (parseInt(S.id.slice(-1))) {
@ -55,7 +84,7 @@ $(document).ready(function() {
f = $.farbtastic('#color-picker', SynchColors); f = $.farbtastic('#color-picker', SynchColors);
swatches = $('#settings_design_color .swatch'); swatches = $('#settings_design_color .swatch');
swatches.each(InitColors);
swatches swatches
.each(SynchColors) .each(SynchColors)
.blur(function() { .blur(function() {

View File

@ -182,7 +182,7 @@ class DesignSettingsAction extends AccountSettingsAction
'class' => 'swatch', 'class' => 'swatch',
'maxlength' => '7', 'maxlength' => '7',
'size' => '7', 'size' => '7',
'value' => '#' . $bgcolor->hexValue())); 'value' => ''));
$this->elementEnd('li'); $this->elementEnd('li');
$ccolor = new WebColor($design->contentcolor); $ccolor = new WebColor($design->contentcolor);
@ -195,7 +195,7 @@ class DesignSettingsAction extends AccountSettingsAction
'class' => 'swatch', 'class' => 'swatch',
'maxlength' => '7', 'maxlength' => '7',
'size' => '7', 'size' => '7',
'value' => '#' . $ccolor->hexValue())); 'value' => ''));
$this->elementEnd('li'); $this->elementEnd('li');
$sbcolor = new WebColor($design->sidebarcolor); $sbcolor = new WebColor($design->sidebarcolor);
@ -208,7 +208,7 @@ class DesignSettingsAction extends AccountSettingsAction
'class' => 'swatch', 'class' => 'swatch',
'maxlength' => '7', 'maxlength' => '7',
'size' => '7', 'size' => '7',
'value' => '#' . $sbcolor->hexValue())); 'value' => ''));
$this->elementEnd('li'); $this->elementEnd('li');
$tcolor = new WebColor($design->textcolor); $tcolor = new WebColor($design->textcolor);
@ -221,7 +221,7 @@ class DesignSettingsAction extends AccountSettingsAction
'class' => 'swatch', 'class' => 'swatch',
'maxlength' => '7', 'maxlength' => '7',
'size' => '7', 'size' => '7',
'value' => '#' . $tcolor->hexValue())); 'value' => ''));
$this->elementEnd('li'); $this->elementEnd('li');
$lcolor = new WebColor($design->linkcolor); $lcolor = new WebColor($design->linkcolor);
@ -234,7 +234,7 @@ class DesignSettingsAction extends AccountSettingsAction
'class' => 'swatch', 'class' => 'swatch',
'maxlength' => '7', 'maxlength' => '7',
'size' => '7', 'size' => '7',
'value' => '#' . $lcolor->hexValue())); 'value' => ''));
$this->elementEnd('li'); $this->elementEnd('li');
} catch (WebColorException $e) { } catch (WebColorException $e) {