Preparing to support wildcard domains.

This commit is contained in:
RainLoop Team 2014-02-07 20:12:43 +04:00
parent c811fdf545
commit 126b55b2d5
4 changed files with 126 additions and 44 deletions

View file

@ -14,11 +14,14 @@ class Helper
/**
* @param string $sString
* @param string $sWildcardValues
* @param string $sFoundedValue = ''
*
* @return bool
*/
static public function ValidateWildcardValues($sString, $sWildcardValues)
static public function ValidateWildcardValues($sString, $sWildcardValues, &$sFoundedValue = '')
{
$sFoundedValue = '';
$sString = \trim($sString);
if ('' === $sString)
{
@ -26,11 +29,17 @@ class Helper
}
$sWildcardValues = \trim($sWildcardValues);
if ('' === $sWildcardValues || '*' === $sWildcardValues)
if ('' === $sWildcardValues)
{
return true;
}
if ('*' === $sWildcardValues)
{
$sFoundedValue = '*';
return true;
}
$sWildcardValues = \preg_replace('/[*]+/', '*', \preg_replace('/[\s,;]+/', ' ', $sWildcardValues));
$aWildcardValues = \explode(' ', $sWildcardValues);
@ -40,6 +49,7 @@ class Helper
{
if ($sString === $sItem)
{
$sFoundedValue = $sItem;
return true;
}
}
@ -52,6 +62,7 @@ class Helper
if (\preg_match('/'.\implode('.*', $aItem).'/', $sString))
{
$sFoundedValue = $sItem;
return true;
}
}