)(\
)(Screenshots)(\<\/h2\>)(\' . "$5", $rm);
$rm = preg_replace ($r2, "$1" . '' . "$2$3$4" . '
' . "$5" . '
' . "$6", $rm);
$rm = stripslashes (preg_replace ($r3, "'\\1\\2\\3\\4\\5'._ws_widget__ad_codes_parse_readme_specs('\\6').'\\7'", $rm, 1));
$rm = stripslashes (preg_replace ($r4, "", $rm, 1)); /* Here we just remove the screenshots completely. */
$rm = preg_replace ($r5, "$1" . ' target="_blank" rel="nofollow external"' . "$2", $rm);
/**/
ini_set ("pcre.backtrack_limit", $o_pcre);
/**/
$readme = '
' . "\n";
$readme .= $rm . "\n"; /* Content. */
$readme .= '
' . "\n";
/**/
return apply_filters ("ws_widget__ad_codes_parse_readme", $readme, get_defined_vars ());
}
else /* In case readme.txt is deleted. */
{
return "Unable to parse /readme.txt.";
}
}
}
/*
Callback function that helps readme file parsing with specs.
*/
if (!function_exists ("_ws_widget__ad_codes_parse_readme_specs"))
{
function _ws_widget__ad_codes_parse_readme_specs ($str = FALSE)
{
do_action ("_ws_widget__ad_codes_before_parse_readme_specs", get_defined_vars ());
/**/
$str = preg_replace ("/(\|^)(.+?)(\:)( )(.+?)($|\<\/p\>)/mi", "$1" . '
' . "$2" . '' . "$3" . ' ' . "$5" . '' . "$6", $str);
$str = preg_replace ("/\
\
/i", '- ', $str); /* Open the list items. */
$str = preg_replace ("/\<\/li\>\<\/p\>/i", '
', $str);
/**/
return apply_filters ("_ws_widget__ad_codes_parse_readme_specs", $str, get_defined_vars ());
}
}
/*
Function for parsing readme.txt files and returning a key value.
*/
if (!function_exists ("ws_widget__ad_codes_parse_readme_value"))
{
function ws_widget__ad_codes_parse_readme_value ($key = FALSE, $specific_path = FALSE)
{
static $readme = array (); /* For repeated lookups across different paths. */
/**/
if (!($path = $specific_path)) /* Was a specific path passed in? */
{
$path = dirname (dirname (dirname (__FILE__))) . "/readme.txt";
$dev_path = dirname (dirname (dirname (__FILE__))) . "/readme-dev.txt";
$path = (file_exists ($dev_path)) ? $dev_path : $path;
}
/**/
eval('foreach(array_keys(get_defined_vars())as$__v)$__refs[$__v]=&$$__v;');
do_action ("ws_widget__ad_codes_before_parse_readme_value", get_defined_vars ());
unset ($__refs, $__v); /* Unset defined __refs, __v. */
/**/
if ($readme[$path] || file_exists ($path))
{
if (!$readme[$path]) /* If not already opened, we need open it up now. */
{
$readme[$path] = file_get_contents ($path); /* Get readme.txt file contents. */
$mb = function_exists ("mb_convert_encoding") ? @mb_convert_encoding ($readme[$path], "UTF-8",@mb_detect_encoding ($readme[$path], "WINDOWS-1252, UTF-8")) : $readme[$path];
$readme[$path] = ($mb) ? $mb : $readme[$path]; /* Double check this, just in case conversion fails on an unpredicted charset. */
}
/**/
preg_match ("/(^)(" . preg_quote ($key, "/") . ")(\:)( )(.+?)($)/m", $readme[$path], $m);
/**/
return strlen ($m[5] = trim ($m[5])) ? apply_filters ("ws_widget__ad_codes_parse_readme_value", $m[5], get_defined_vars ()) : false;
}
else /* Nope. */
return false;
}
}
?>