Search moodle.org's
Developer Documentation

See Release Notes

  • Bug fixes for general core bugs in 3.11.x will end 14 Nov 2022 (12 months plus 6 months extension).
  • Bug fixes for security issues in 3.11.x will end 13 Nov 2023 (18 months plus 12 months extension).
  • PHP version: minimum PHP 7.3.0 Note: minimum PHP version has increased since Moodle 3.10. PHP 7.4.x is supported too.

Differences Between: [Versions 311 and 401] [Versions 311 and 402] [Versions 311 and 403]

   1  <?php
   2  
   3  namespace Sabberworm\CSS\RuleSet;
   4  
   5  use Sabberworm\CSS\Property\AtRule;
   6  
   7  /**
   8   * A RuleSet constructed by an unknown @-rule. @font-face rules are rendered into AtRuleSet objects.
   9   */
  10  class AtRuleSet extends RuleSet implements AtRule {
  11  
  12  	 private $sType;
  13  	 private $sArgs;
  14  
  15  	public function __construct($sType, $sArgs = '', $iLineNo = 0) {
  16  	 	 parent::__construct($iLineNo);
  17  	 	 $this->sType = $sType;
  18  	 	 $this->sArgs = $sArgs;
  19  	 }
  20  
  21  	public function atRuleName() {
  22  	 	 return $this->sType;
  23  	 }
  24  
  25  	public function atRuleArgs() {
  26  	 	 return $this->sArgs;
  27  	 }
  28  
  29  	public function __toString() {
  30  	 	 return $this->render(new \Sabberworm\CSS\OutputFormat());
  31  	 }
  32  
  33  	public function render(\Sabberworm\CSS\OutputFormat $oOutputFormat) {
  34  	 	 $sArgs = $this->sArgs;
  35  	 	 if($sArgs) {
  36  	 	 	 $sArgs = ' ' . $sArgs;
  37  	 	 }
  38  	 	 $sResult = "@{$this->sType}$sArgs{$oOutputFormat->spaceBeforeOpeningBrace()}{";
  39  	 	 $sResult .= parent::render($oOutputFormat);
  40  	 	 $sResult .= '}';
  41  	 	 return $sResult;
  42  	 }
  43  
  44  }