˜‘ @„bs  édÁV°~s  P±Nr  @†Uu ï’żč|D7œ;wbm_tag_manager.subscriber.frontend.dispatch.onPostDispatch*˜’  @„bs  édÁV°~s + ˆ±Nr +űÀNr ”úš>†œšAzenit_notification_bar.subscriber.subscriber.onPostDispatchSecure˜” +@„bs  édÁV°~s   À±Nr +žÁNr ˜„̧ 0x}s  édÁV0•Bt ugin0Ć}ÁVshowerite.php˜Ìš ĄȚ[ˆ0x}s  édÁV0•Bt spsh0Ć}ÁVlter+€+˜ŒÌ© (c)0x}s  édÁV0•Bt  For0Ć}ÁVpyrihp(ÂNr >ErgĂ€nzungsfuttermittel, Pflegemittel und Zubehör fĂŒr Pferde1nu1 ˜űËĘ 0x}s  édÁV3ab80Ć}ÁV99f9naPayments1>ErgĂ€nzungsfuttermittel, Pflegemittel und Zubehör fĂŒr Pferde,>ErgĂ€nzungsfuttermittel, Pflegemittel und Zubehör fĂŒr Pferde@ÄNr Dhttps://www.fuetternundfit.de/media/image/1d/ca/27/navicon_pferd.pngDhttps://www.fuetternundfit.de/media/image/1d/ca/27/navicon_pferd.png>ErgĂ€nzungsfuttermittel, Pflegemittel und Zubehör fĂŒr Pferdeh·Uu FSpezialfutter und ErgĂ€nzungsfuttermittel fĂŒr Pferde mit HufproblemenFSpezialfutter und ErgĂ€nzungsfuttermittel fĂŒr Pferde mit Hufproblemen9ErgĂ€nzungsfutter und Vitamine fĂŒr Pferde von Nutri Labs-@9ErgĂ€nzungsfutter und Vitamine fĂŒr Pferde von Nutri LabsJr -9ErgĂ€nzungsfutter und Vitamine fĂŒr Pferde von Nutri LabsNr @.9ErgĂ€nzungsfutter und Vitamine fĂŒr Pferde von Nutri Labs 0; } /** * Return the unused GET parameters as array * * @return array The unused GET parameter array */ public static function getUnusedGet() { return array_keys(static::$arrUnusedGet); } /** * Set an unused GET parameter * * @param string $strKey The array key * @param mixed $varValue The array value */ public static function setUnusedGet($strKey, $varValue) { static::$arrUnusedGet[$strKey] = $varValue; } /** * Reset the unused GET parameters */ public static function resetUnusedGet() { static::$arrUnusedGet = array(); } /** * Sanitize the variable names (thanks to Andreas Schempp) * * @param mixed $varValue A variable name or an array of variable names * * @return mixed The clean name or array of names */ public static function cleanKey($varValue) { // Recursively clean arrays if (\is_array($varValue)) { $return = array(); foreach ($varValue as $k=>$v) { $k = static::cleanKey($k); if (\is_array($v)) { $v = static::cleanKey($v); } $return[$k] = $v; } return $return; } $varValue = static::decodeEntities($varValue); $varValue = static::xssClean($varValue, true); $varValue = static::stripTags($varValue); return $varValue; } /** * Strip slashes * * @param mixed $varValue A string or array * * @return mixed The string or array without slashes * * @deprecated Deprecated since Contao 3.5, to be removed in Contao 5. * Since get_magic_quotes_gpc() always returns false in PHP 5.4+, the method was never actually executed. */ public static function stripSlashes($varValue) { return $varValue; } /** * Strip HTML and PHP tags preserving HTML comments * * @param mixed $varValue A string or array * @param string $strAllowedTags A string of tags to preserve * @param string $strAllowedAttributes A serialized string of attributes to preserve * * @return mixed The cleaned string or array */ public static function stripTags($varValue, $strAllowedTags='', $strAllowedAttributes='') { if ($strAllowedTags !== '' && \func_num_args() < 3) { trigger_deprecation('contao/core-bundle', '4.4', 'Using %s() with $strAllowedTags but without $strAllowedAttributes has been deprecated and will no longer work in Contao 5.0.', __METHOD__); $strAllowedAttributes = Config::get('allowedAttributes'); } if (!$varValue) { return $varValue; } // Recursively clean arrays if (\is_array($varValue)) { foreach ($varValue as $k=>$v) { $varValue[$k] = static::stripTags($v, $strAllowedTags, $strAllowedAttributes); } return $varValue; } $arrAllowedAttributes = array(); foreach (StringUtil::deserialize($strAllowedAttributes, true) as $arrRow) { if (!empty($arrRow['key']) && !empty($arrRow['value'])) { $arrAllowedAttributes[trim($arrRow['key'])] = StringUtil::trimsplit(',', $arrRow['value']); } } // Encode opening arrow brackets (see #3998) $varValue = preg_replace_callback( '@/]*)@', static function ($matches) use ($strAllowedTags) { if (!$matches[1] || stripos($strAllowedTags, '<' . strtolower($matches[1]) . '>') === false) { $matches[0] = str_replace('<', '<', $matches[0]); } return $matches[0]; }, $varValue ); // Strip the tags $varValue = strip_tags($varValue, $strAllowedTags); // Restore HTML comments and recheck for encoded null bytes $varValue = str_replace(array('<!--', '<![', '\\0'), array('|[>"\'=]+@', static function ($matches) use ($strAllowedTags, $arrAllowedAttributes, &$blnCommentOpen, &$strOpenRawtext) { $strTagName = strtolower($matches[1] ?? ''); if ($strOpenRawtext === $strTagName && '/' === $matches[0][1]) { $strOpenRawtext = null; return ''; } if (null !== $strOpenRawtext) { return $matches[0]; } if ($blnCommentOpen && substr($matches[0], -3) === '-->') { $blnCommentOpen = false; return static::encodeSpecialChars(substr($matches[0], 0, -3)) . '-->'; } if (!$blnCommentOpen && 0 === strncmp($matches[0], '') { return ''; } $blnCommentOpen = true; return '