Index: branches/5.3.x/core/units/helpers/site_helper.php =================================================================== diff -u -N -r15698 -r15999 --- branches/5.3.x/core/units/helpers/site_helper.php (.../site_helper.php) (revision 15698) +++ branches/5.3.x/core/units/helpers/site_helper.php (.../site_helper.php) (revision 15999) @@ -1,6 +1,6 @@ getSiteDomains(); - $name_fields = Array ('DomainName', 'SSLUrl'); + $name_fields = Array ('DomainName', 'SSLDomainName'); foreach ($site_domains as $id => $site_domain) { if ( in_array($field, $name_fields) ) { @@ -115,7 +115,7 @@ $site_domain[$field] = preg_quote($site_domain[$field], '/'); } - if ( $site_domain[$field] && preg_match('/^' . $site_domain[$field] . ($field == 'DomainName' ? '$' : '') . '/', $value) ) { + if ( $site_domain[$field] && preg_match('/^' . $site_domain[$field] . '$/', $value) ) { return $id; } } @@ -144,4 +144,20 @@ return false; } + + /** + * Compares 2 domains. + * + * @param string $match_domain Domain to compare with. + * @param string $domain_field Site domain field to search within. + * @param string $primary_domain Primary domain to use in case if no site domain matches. + * + * @return boolean + */ + public function compare($match_domain, $domain_field, $primary_domain) + { + $domain_id = $this->getDomainByName($domain_field, $match_domain); + + return $domain_id > 0 ? true : ($match_domain == $primary_domain); + } }