public function getValueFromRequest(\Symfony\Component\HttpFoundation\ParameterBag $request) { $color = $request->get($this->getVariable()); if (!$color['color']) { // transparent return false; } $cv = new \Primal\Color\Parser($color['color']); $result = $cv->getResult(); $alpha = false; if (is_numeric($result->alpha) && $result->alpha >= 0 && $result->alpha < 1) { $alpha = $result->alpha; } $cv = new ColorValue($this->getVariable()); $cv->setRed($result->red); $cv->setGreen($result->green); $cv->setBlue($result->blue); $cv->setAlpha($alpha); return $cv; }
public function getValueFromRequest(\Symfony\Component\HttpFoundation\ParameterBag $request) { $type = $request->get($this->getVariable()); $tv = new TypeValue($this->getVariable()); if ($type['font-family']) { $tv->setFontFamily($type['font-family']); } if ($type['font-weight']) { $tv->setFontWeight($type['font-weight']); } if ($type['italic']) { $tv->setFontStyle('italic'); } else { if (isset($type['italic'])) { $tv->setFontStyle('none'); } } if ($type['underline']) { $tv->setTextDecoration('underline'); } else { if (isset($type['underline'])) { $tv->setDecoration('none'); } } if ($type['uppercase']) { $tv->setTextTransform('uppercase'); } else { if (isset($type['uppercase'])) { $tv->setTextTransform('none'); } } if ($type['color']) { $cv = new \Primal\Color\Parser($type['color']); $result = $cv->getResult(); $alpha = false; if ($result->alpha && $result->alpha < 1) { $alpha = $result->alpha; } $cvv = new ColorValue(); $cvv->setRed($result->red); $cvv->setGreen($result->green); $cvv->setBlue($result->blue); $cvv->setAlpha($alpha); $tv->setColor($cvv); } if ($type['font-size']) { $sv = new SizeValue(); $sv->setSize($type['font-size']['size']); if ($type['font-size']['unit']) { $sv->setUnit($type['font-size']['unit']); } $tv->setFontSize($sv); } if ($type['letter-spacing']) { $sv = new SizeValue(); $sv->setSize($type['letter-spacing']['size']); if ($type['letter-spacing']['unit']) { $sv->setUnit($type['letter-spacing']['unit']); } $tv->setLetterSpacing($sv); } if ($type['line-height']) { $sv = new SizeValue(); $sv->setSize($type['line-height']['size']); if ($type['line-height']['unit']) { $sv->setUnit($type['line-height']['unit']); } $tv->setLineHeight($sv); } return $tv; }