Source of file SlugFilter.php
Size: 1,053 Bytes - Last Modified: 2021-12-23T10:34:13+00:00
/var/www/docs.ssmods.com/process/src/src/Filter/SlugFilter.php
12345678910111213141516171819202122232425262728293031323334353637383940414243444546 | <?php namespace SilverStripe\Forms\Filter; use SilverStripe\Forms\Filter; use SilverStripe\View\Parsers\URLSegmentFilter; class SlugFilter extends URLSegmentFilter implements Filter { /** * @inheritdoc * * @see URLSegmentFilter::filter * * @param string $value * * @return string */ public function filter($value) { if (!$this->getAllowMultibyte()) { $transliterator = $this->getTransliterator(); if ($transliterator) { $value = $transliterator->toASCII($value); } } $replacements = $this->getReplacements(); if ($this->getAllowMultibyte() && isset($replacements['/[^A-Za-z0-9\-]+/u'])) { unset($replacements['/[^A-Za-z0-9\-]+/u']); } foreach ($replacements as $regex => $replace) { $value = preg_replace($regex, $replace, $value); } if ($this->getAllowMultibyte()) { $value = rawurlencode($value); } return $value; } } |