Sid Gifari File Manager
🏠 Root
/
home
/
nradmin
/
www
/
wp-content
/
plugins
/
wp-optimize
/
vendor
/
rosell-dk
/
webp-convert
/
src
/
Options
/
📝 Editing: IntegerOption.php
<?php namespace WebPConvert\Options; use WebPConvert\Options\Option; use WebPConvert\Options\Exceptions\InvalidOptionValueException; /** * Abstract option class * * @package WebPConvert * @author Bjørn Rosell <it@rosell.dk> * @since Class available since Release 2.0.0 */ class IntegerOption extends Option { protected $typeId = 'int'; protected $schemaType = ['integer']; protected $minValue; protected $maxValue; /** * Constructor. * * @param string $id id of the option * @param integer $defaultValue default value for the option * @throws InvalidOptionValueException if the default value cannot pass the check * @return void */ public function __construct($id, $defaultValue, $minValue = null, $maxValue = null) { $this->minValue = $minValue; $this->maxValue = $maxValue; parent::__construct($id, $defaultValue); } protected function checkMin() { if (!is_null($this->minValue) && $this->getValue() < $this->minValue) { throw new InvalidOptionValueException( '"' . $this->id . '" option must be set to minimum ' . $this->minValue . '. ' . 'It was however set to: ' . $this->getValue() ); } } protected function checkMax() { if (!is_null($this->maxValue) && $this->getValue() > $this->maxValue) { throw new InvalidOptionValueException( '"' . $this->id . '" option must be set to max ' . $this->maxValue . '. ' . 'It was however set to: ' . $this->getValue() ); } } protected function checkMinMax() { $this->checkMin(); $this->checkMax(); } public function check() { $this->checkType('integer'); $this->checkMinMax(); } public function getSchema() { $obj = parent::getSchema(); $obj['minimum'] = $this->minValue; $obj['maximum'] = $this->maxValue; return $obj; } }
💾 Save
❌ Cancel
Sid Gifari File Manager v1.0 | Terminal Auto-Sync Enabled | Current Path: /home/nradmin/www/wp-content/plugins/wp-optimize/vendor/rosell-dk/webp-convert/src/Options