示例#1
0
 public function saveCss()
 {
     $params = json_decode($this->request->get('result'), true);
     $theme = $params['theme'];
     if (!$theme) {
         $theme = 'barebone';
     }
     // save custom CSS
     $css = new CssFile('upload/css/' . $theme . '.css');
     $css->setSource($params['css']);
     $css->save();
     // deleted rules
     foreach ($params['deletedRules'] as $file => $selectors) {
         $css = CssFile::getInstanceFromUrl($file, $theme);
         foreach ($selectors as $selector) {
             $css->deleteSelector($selector);
         }
         $css->save();
     }
     // deleted properties
     foreach ($params['deletedProperties'] as $file => $selectors) {
         $css = CssFile::getInstanceFromUrl($file, $theme);
         foreach ($selectors as $selector => $properties) {
             foreach ($properties as $property => $value) {
                 $css->deleteProperty($selector, $property);
             }
         }
         $css->save();
     }
 }
示例#2
0
 function testEmptySelectors()
 {
     $src = '.test { font-weight: bold; }' . "\n" . '.empty { }' . "\n" . '.whatever { color: red }';
     $css = new CssFile('somefile.css');
     $css->setSource($src);
     $this->assertTrue(strpos($css->getSource(), '.empty') == 0);
     $this->assertTrue(strpos($css->getSource(), '.whatever') > 0);
 }