I made some code changes to get the whitelist to work correctly. It looks like URL compared is the full URL instead of just the domain. It also looks like the preg_match variables are switched. The following code is working for me:
dbtech/dbseo/includes/class_core.php:5552
dbtech/dbseo/includes/class_core.php:5552
Code:
$url_parts = parse_url($url);
$url_host = str_replace('www.','',$url_parts['host']);
if ($_isExternal)
{
// We have an external URL
if (
(
self::$config['dbtech_dbseo_externalurls'] AND (
!self::$config['dbtech_dbseo_externalurls_whitelist'] OR
!preg_match('#' . $url_host . '#i', self::$config['dbtech_dbseo_externalurls_whitelist'])
)
) OR (
!self::$config['dbtech_dbseo_externalurls'] AND (
self::$config['dbtech_dbseo_externalurls_whitelist'] AND
preg_match('#' . $url_host . '#i', self::$config['dbtech_dbseo_externalurls_whitelist'])
)
) AND
strpos($urlPrefix . $urlAttributes . $urlSuffix, 'rel=') === false
)
{
// We didn't have a rel tag already, add one
$urlPrefix = preg_replace('#(<a\s)#is', '\\1' . $_noFollow . ' ', $urlPrefix);
}
// Add external link tracking
self::trackExternalLink($urlPrefix, $url, $urlSuffix, (substr($inTag, 0, 5) == 'Visit' ? 'onmouseup' : ''));
}