It seems to have actually been saving correctly, but the update of the colors on the form success page wasn't working properly. When a design object is pulled out of the database, the numeric fields are read in as strings, so black comes back as "0". But, when we populate the new object and then stick it live, we've populated it with actual integers; with memcache on these might live for a while in the cache... The fallback code in Design::toWebColor() did a check ($color == null) which would be false for the string "0", but counts as true for the *integer* 0. Thus, the display code would initially interpret the correctly-saved black color as "use default". Changing the check to === against null and "" empty string avoids the false positive on integers, and lets us see our nice black text immediately after save.
This commit is contained in:
parent
6e894c010f
commit
af1cbc6fe3
@ -107,7 +107,7 @@ class Design extends Memcached_DataObject
|
||||
|
||||
static function toWebColor($color)
|
||||
{
|
||||
if ($color == null) {
|
||||
if ($color === null || $color === '') {
|
||||
return null;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user