Find this useful? Enter your email to receive occasional updates for securing PHP code.

Signing you up...

Thank you for signing up!

PHP Decode

<?php eval(gzinflate(base64_decode('LZvHruvalUV/xT2/AhvMCWXXA3POWR2DOWeK6etL F/DpqCeR3GvN..

Decoded Output download

?><?php
/********************************************************************************
| CDSEO Pro
| Copyright (c)2008 WebsiteCM
| All rights reserved.
| License: http://www.websitecm.com/downloads/license-agreement.pdf
********************************************************************************
| Output filter. Performs data replacements.
********************************************************************************/

if (!defined('XCART_SESSION_START')) { header("Location: ../../"); die("Access denied"); }

/********************************************************************************
| All CDSEO URL replacements for category, product, manufacturer and static pages.
| They are loaded from the database (in the smarty_outputfilter_cdseopro function),
| but only when URL or title replace settings are enabled to prevent needless queries.
| The array keys (e.g. 3) match the IDs.
| Example: array(3 => array('url' => 'books', 'title' => 'Books link title'), ...)
| Also set in modules/cdseolinks/cdseo_pro.php are:
|	 $GLOBALS['wcmcdseoReplacePageTitle'];
|	 $GLOBALS['wcmcdseoReplaceMetaKeywords'];
|	 $GLOBALS['wcmcdseoReplaceMetaDescription'];
********************************************************************************/
$GLOBALS['wcmcdseoReplaceCats'] = array();
$GLOBALS['wcmcdseoReplaceManus'] = array();
$GLOBALS['wcmcdseoReplaceProds'] = array();
$GLOBALS['wcmcdseoReplacePages'] = array();

/********************************************************************************
| FUNCTION: smarty_outputfilter_cdseopro
|
| Purpose:
|    Core Smarty output filter function. Takes the source and updates
|	 URLs, titles and meta according to CDSEO settings.
|
| Parameters:
|    $source - Source code from smarty
|	 $smarty - Smarty class initalization
|
| Returns:
|    Source code containing replacements
|
********************************************************************************/
function smarty_outputfilter_cdseopro($source, $smarty)
{
	global $wcmcdseoConfig;
	global $wcmcdseoWebDir;
	global $http_location, $https_location;
	global $xcart_http_host, $xcart_https_host;
	global $php_url;

	// Update page title
	$source = preg_replace_callback('~<title>.*?</title>~is', 'wcmcdseoPageTitleCallback', $source, 1);

	// Update meta elements
	if (!empty($GLOBALS['wcmcdseoReplaceMetaKeywords']))
	{
		// Remove existing meta keywords, and insert new one
		$source = preg_replace('~<meta\s++[^>]*?name\s*+=\s*+"keywords"[^>]*+>~i', '', $source, 1);
		$source = preg_replace('~(?<=</title>)~i', "
".'<meta name="keywords" content="'.htmlspecialchars_no_double_encode($GLOBALS['wcmcdseoReplaceMetaKeywords']).'" />', $source, 1);
	}
	if (!empty($GLOBALS['wcmcdseoReplaceMetaDescription']))
	{
		// Remove existing meta description, and insert new one
		$source = preg_replace('~<meta\s++[^>]*?name\s*+=\s*+"description"[^>]*+>~i', '', $source, 1);
		$source = preg_replace('~(?<=</title>)~i', "
".'<meta name="description" content="'.htmlspecialchars_no_double_encode($GLOBALS['wcmcdseoReplaceMetaDescription']).'" />', $source, 1);
	}

	// Parse the url for path only
	$url = $GLOBALS['wcmcdseoUrlVar'];
	$url = parse_url($url);
	$url = $url['path'];

	// Append a trailing slash to the xcart directory or
	// strpos will always equal 1 due to initial slash
	$url = preg_replace('~^'.preg_quote($wcmcdseoWebDir.'/', '~').'~', '', $url);

	// Modify base href in source if in a subfolder
	if (strpos($url, '/') !== FALSE)
	{	
		// Remove existing base url, and insert new one
		$source = preg_replace('~<base[^>]*+>~i', '', $source, 1);
		$source = preg_replace('~(?=</head>)~i', '<base href="'. (($_SERVER['HTTPS'] == 'on') ? $https_location : $http_location) . $smarty->get_template_vars('dir_mall') .'/" />'."
", $source, 1);
	}
	
	// Remove existing canonical tag, and insert new one
	// Category/Product/Pages/Manufacturers
	if ($wcmcdseoConfig['use_canonical'] == 1 AND ($smarty->get_template_vars('main') == 'catalog' OR $smarty->get_template_vars('main') == 'product' OR $smarty->get_template_vars('main') == 'pages' OR $smarty->get_template_vars('main') == 'manufacturers_list' OR $smarty->get_template_vars('main') == 'manufacturer_products'))
	{
		// Set new base url based on https/http + X-Mall Compatibility
		$source = preg_replace('~<link[^>]*?\srel=["\']canonical["\'][^>]*+>~i', '', $source, 1);
		$source = preg_replace('~(?=</head>)~i', '<link rel="canonical" href="'. (($_SERVER['HTTPS'] == 'on') ? $https_location : $http_location) . '/' . ($wcmcdseoConfig['rewrite_index'] == 1 ? str_replace('home.php','',$url) : $url) . '" />'."
", $source, 1);
	}

	// Update category links with CDSEO URLs and/or CDSEO title attributes
	if ($wcmcdseoConfig['setting'][1]['url'] OR $wcmcdseoConfig['setting'][1]['linkTitle'])
	{
		$GLOBALS['wcmcdseoReplaceCats'] = wcmcdseoGetReplacements('category');
		$source = preg_replace_callback('~<a(?:rea)?\s++[^>]*?href\s*+=\s*+"home\.php([^"]*+)"[^>]*+>~i', 'wcmcdseoCategoryCallback', $source);
	}

	// Update manufacturer links with CDSEO URLs and/or CDSEO title attributes
	if ($wcmcdseoConfig['setting'][3]['url'] OR $wcmcdseoConfig['setting'][3]['linkTitle'])
	{
		$GLOBALS['wcmcdseoReplaceManus'] = wcmcdseoGetReplacements('manufacturer');
		$source = preg_replace_callback('~<a(?:rea)?\s++[^>]*?href\s*+=\s*+"manufacturers\.php([^"]*+)"[^>]*+>~i', 'wmcdseoManufacturerCallback', $source);
	}

	// Update product links with CDSEO URLs and/or CDSEO title attributes
	if ($wcmcdseoConfig['setting'][2]['url'] OR $wcmcdseoConfig['setting'][2]['linkTitle'])
	{
		$GLOBALS['wcmcdseoReplaceProds'] = wcmcdseoGetReplacements('product');
		$source = preg_replace_callback('~<a(?:rea)?\s++[^>]*?href\s*+=\s*+"product\.php([^"]*+)"[^>]*+>~i', 'wcmcdseoProductCallback', $source);
	}

	// Update staticpage links with CDSEO URLs and/or CDSEO title attributes
	if ($wcmcdseoConfig['setting'][4]['url'] OR $wcmcdseoConfig['setting'][4]['linkTitle'])
	{
		$GLOBALS['wcmcdseoReplacePages'] = wcmcdseoGetReplacements('staticpage');
		$source = preg_replace_callback('~<a(?:rea)?\s++[^>]*?href\s*+=\s*+"pages\.php([^"]*+)"[^>]*+>~i', 'wcmcdseoStaticPageCallback', $source);
	}

	return $source;
}

/********************************************************************************
| FUNCTION: wcmcdseoPageTitleCallback
|
| Purpose:
|    Replaces page titles
|
| Parameters:
|    $matches - Regex matches
|
| Returns:
|    Replacement code
|
********************************************************************************/
function wcmcdseoPageTitleCallback($matches)
{
	global $smarty;
	global $wcmcdseoConfig;

	// We are on the homepage
	if ($smarty->get_template_vars('main') == 'catalog' AND !$smarty->get_template_vars('current_category'))
	{
		// Load custom homepage title
		$title = $wcmcdseoConfig['home_page_title'];
	}
	// Setting for replacing page title has been enabled for the current page
	elseif ($GLOBALS['wcmcdseoReplacePageTitle'] != "")
	{
		// Load other custom page title
		$title = $GLOBALS['wcmcdseoReplacePageTitle'];
	}

	// If no custom title found, don't change anything
	if (empty($title))
		return $matches[0];

	// Display page number in title as well (but not for page 1)
	if (preg_match('~(?:-p|index)(\d++)\.html?$~i', $GLOBALS['wcmcdseoUrlVar'], $matches))
	{
		if ($matches[1] > 1)
		{
			$title = $title . ' (Page '.$matches[1].')';
		}
	}

	return '<title>'.htmlspecialchars_no_double_encode($title).'</title>';
}

/********************************************************************************
| FUNCTION: wcmcdseoCategoryCallback
|
| Purpose:
|    Replaces category urls
|
| Parameters:
|    $matches - Regex matches
|
| Returns:
|    Replacement code
|
********************************************************************************/
function wcmcdseoCategoryCallback($matches)
{
	global $config;
	global $wcmcdseoWebDir;
	global $wcmcdseoConfig;

	// Normalize and parse query string (qs)
	parse_str(str_replace('&amp;', '&', ltrim($matches[1], '?')), $qs);

	// If individual query setting is enabled then query specific match
	if ($wcmcdseoConfig['use_individualquery'] == 1)
		$GLOBALS['wcmcdseoReplaceCats'][$qs['cat']] = func_query_first("SELECT cdseoLinkTitle as title, cdseoUrl as url FROM wcm_cdseo WHERE cdseoType='category' AND cdseoReplaceID='" . (int)$qs['cat'] . "' LIMIT 1");

	// No or invalid category id found in URL
	if (empty($qs['cat']) OR !array_key_exists($qs['cat'], $GLOBALS['wcmcdseoReplaceCats']))
	{
		// Replace "home.php" with "/"
		if ((bool)$wcmcdseoConfig['rewrite_index'])
			return preg_replace('~(?<=")home\.php[^"]*~i', $wcmcdseoWebDir.'/'.$matches[1], $matches[0], 1);

		// Otherwise no changes
		return $matches[0];
	}

	// Link title setting is enabled
	if ($wcmcdseoConfig['setting'][1]['linkTitle'])
	{
		// Remove existing title attribute, and insert new one
		$matches[0] = preg_replace('~title\s*+=\s*+"[^"]*+"~i', '', $matches[0]);
		$matches[0] = preg_replace('~^<a(?:rea)?~i', '$0 title="'.htmlspecialchars_no_double_encode($GLOBALS['wcmcdseoReplaceCats'][$qs['cat']]['title']).'"', $matches[0], 1);
	}

	// URLs replacement is disabled or the replacement string is left empty, quit at this point
	if (!$wcmcdseoConfig['setting'][1]['url'] OR $GLOBALS['wcmcdseoReplaceCats'][$qs['cat']]['url'] == '')
		return $matches[0];

	// Build new URL starting with category CDSEO replace string
	$url = $wcmcdseoWebDir.'/'.$GLOBALS['wcmcdseoReplaceCats'][$qs['cat']]['url'];

	// Add trailing slash for "folder style"
	$url .= ($wcmcdseoConfig['setting'][1]['extension']) ? '' : '/';
	unset($qs['cat']);

	// Page number
	if (isset($qs['page']) AND ctype_digit($qs['page']))
	{
		// Hide page number for links to first page
		if ((int) $qs['page'] > 1)
		{
			$url .= (($wcmcdseoConfig['setting'][1]['extension']) ? '-p'.$qs['page'] : 'index'.$qs['page'].'.html');
		}
		unset($qs['page']);
	}

	// Add ".html" for "html style", ".htm" for "htm style"
	$temp = array('','.html','.htm');
	$url .= $temp[$wcmcdseoConfig['setting'][1]['extension']];

	// Remove default sort from query string
	if (isset($qs['sort']) AND ($qs['sort'] == $config['Appearance']['products_order'] OR $qs['sort'] == ''))
	{
		unset($qs['sort']);
	}

	// Remove default sort_direction from query string
	if (isset($qs['sort_direction']) AND ($qs['sort_direction'] == '0' OR $qs['sort_direction'] == ''))
	{
		unset($qs['sort_direction']);
	}

	// Re-append everything else
	if (!empty($qs))
	{
		$url .= '?'.http_build_query($qs);
	}

	return preg_replace('~(?<=")home\.php[^"]*~i', $url, $matches[0], 1);
}

/********************************************************************************
| FUNCTION: wmcdseoManufacturerCallback
|
| Purpose:
|    Replaces manufacturer urls
|
| Parameters:
|    $matches - Regex matches
|
| Returns:
|    Replacement code
|
********************************************************************************/
function wmcdseoManufacturerCallback($matches)
{
	global $config;
	global $wcmcdseoWebDir;
	global $wcmcdseoConfig;

	// Normalize and parse query string (qs)
	parse_str(str_replace('&amp;', '&', ltrim($matches[1], '?')), $qs);

	// If individual query setting is enabled then query specific match
	if ($wcmcdseoConfig['use_individualquery'] == 1)
		$GLOBALS['wcmcdseoReplaceManus'][$qs['manufacturerid']] = func_query_first("SELECT cdseoLinkTitle as title, cdseoUrl as url FROM wcm_cdseo WHERE cdseoType='manufacturer' AND cdseoReplaceID='" . (int)$qs['manufacturerid'] . "' LIMIT 1");
		
	// No or invalid manufacturer id found in URL, so no changes
	if (empty($qs['manufacturerid']) OR !array_key_exists($qs['manufacturerid'], $GLOBALS['wcmcdseoReplaceManus']))
		return $matches[0];

	// Link title setting is enabled
	if ($wcmcdseoConfig['setting'][3]['linkTitle'])
	{
		// Remove existing title attribute, and insert new one
		$matches[0] = preg_replace('~title\s*+=\s*+"[^"]*+"~i', '', $matches[0]);
		$matches[0] = preg_replace('~^<a(?:rea)?~i', '$0 title="'.htmlspecialchars_no_double_encode($GLOBALS['wcmcdseoReplaceManus'][$qs['manufacturerid']]['title']).'"', $matches[0], 1);
	}

	// URLs replacement is disabled or the replacement string is left empty, quit at this point
	if (!$wcmcdseoConfig['setting'][3]['url'] OR $GLOBALS['wcmcdseoReplaceManus'][$qs['manufacturerid']]['url'] == '')
		return $matches[0];

	// Build new URL starting with category CDSEO replace string
	$url = $wcmcdseoWebDir.'/'.$GLOBALS['wcmcdseoReplaceManus'][$qs['manufacturerid']]['url'];

	// Add trailing slash for "folder style"
	$url .= ($wcmcdseoConfig['setting'][3]['extension']) ? '' : '/';
	unset($qs['manufacturerid']);

	// Page number
	if (isset($qs['page']) AND ctype_digit($qs['page']))
	{
		// Hide page number for links to first page
		if ((int) $qs['page'] > 1)
		{
			$url .= (($wcmcdseoConfig['setting'][3]['extension']) ? '-p'.$qs['page'] : 'index'.$qs['page'].'.html');
		}
		unset($qs['page']);
	}

	// Add ".html" for "html style", ".htm" for "htm style"
	$temp = array('','.html','.htm');
	$url .= $temp[$wcmcdseoConfig['setting'][3]['extension']];
	
	// Remove default sort from query string
	if (isset($qs['sort']) AND ($qs['sort'] == $config['Appearance']['products_order'] OR $qs['sort'] == ''))
	{
		unset($qs['sort']);
	}

	// Remove default sort_direction from query string
	if (isset($qs['sort_direction']) AND ($qs['sort_direction'] == '0' OR $qs['sort_direction'] == ''))
	{
		unset($qs['sort_direction']);
	}

	// Re-append everything else
	if (!empty($qs))
	{
		$url .= '?'.http_build_query($qs);
	}

	return preg_replace('~(?<=")manufacturers\.php[^"]*~i', $url, $matches[0], 1);
}

/********************************************************************************
| FUNCTION: wcmcdseoProductCallback
|
| Purpose:
|    Replaces product urls
|
| Parameters:
|    $matches - Regex matches
|
| Returns:
|    Replacement code
|
********************************************************************************/
function wcmcdseoProductCallback($matches)
{
	global $config;
	global $wcmcdseoWebDir;
	global $wcmcdseoConfig;

	// Normalize and parse query string (qs)
	parse_str(str_replace('&amp;', '&', ltrim($matches[1], '?')), $qs);

	// If individual query setting is enabled then query specific match
	if ($wcmcdseoConfig['use_individualquery'] == 1)
		$GLOBALS['wcmcdseoReplaceProds'][$qs['productid']] = func_query_first("SELECT cdseoLinkTitle as title, cdseoUrl as url FROM wcm_cdseo WHERE cdseoType='product' AND cdseoReplaceID='" . (int)$qs['productid'] . "' LIMIT 1");

	// No or invalid product id found in URL, so no changes
	if (empty($qs['productid']) OR !array_key_exists($qs['productid'], $GLOBALS['wcmcdseoReplaceProds']))
		return $matches[0];

	// Link title setting is enabled
	if ($wcmcdseoConfig['setting'][2]['linkTitle'])
	{
		// Remove existing title attribute, and insert new one
		$matches[0] = preg_replace('~title\s*+=\s*+"[^"]*+"~i', '', $matches[0]);
		$matches[0] = preg_replace('~^<a(?:rea)?~i', '$0 title="'.htmlspecialchars_no_double_encode($GLOBALS['wcmcdseoReplaceProds'][$qs['productid']]['title']).'"', $matches[0], 1);
	}

	// URLs replacement is disabled or the replacement string is left empty, quit at this point
	if (!$wcmcdseoConfig['setting'][2]['url'] OR $GLOBALS['wcmcdseoReplaceProds'][$qs['productid']]['url'] == '')
		return $matches[0];

	// Build new URL starting with category CDSEO replace string
	$url = $wcmcdseoWebDir.'/'.$GLOBALS['wcmcdseoReplaceProds'][$qs['productid']]['url'];

	// Add extension: /, .html, .htm depending on setting
	$temp = array('/','.html','.htm');
	$url .= $temp[$wcmcdseoConfig['setting'][2]['extension']];
		
	unset($qs['productid']);

	// Remove useless stuff from query string
	if (isset($qs['feature'])) unset($qs['feature']);
	if (isset($qs['featured'])) unset($qs['featured']);
	if (isset($qs['bestseller'])) unset($qs['bestseller']);
	if (isset($qs['cat'])) unset($qs['cat']);
	if (isset($qs['page'])) unset($qs['page']);

	// Re-append everything else
	if (!empty($qs))
	{
		$url .= '?'.http_build_query($qs);
	}

	return preg_replace('~(?<=")product\.php[^"]*~i', $url, $matches[0], 1);
}

/********************************************************************************
| FUNCTION: wcmcdseoStaticPageCallback
|
| Purpose:
|    Replaces static page urls
|
| Parameters:
|    $matches - Regex matches
|
| Returns:
|    Replacement code
|
********************************************************************************/
function wcmcdseoStaticPageCallback($matches)
{
	global $config;
	global $wcmcdseoWebDir;
	global $wcmcdseoConfig;

	// Normalize and parse query string (qs)
	parse_str(str_replace('&amp;', '&', ltrim($matches[1], '?')), $qs);

	// If individual query setting is enabled then query specific match
	if ($wcmcdseoConfig['use_individualquery'] == 1)
		$GLOBALS['wcmcdseoReplacePages'][$qs['pageid']] = func_query_first("SELECT cdseoLinkTitle as title, cdseoUrl as url FROM wcm_cdseo WHERE cdseoType='staticpage' AND cdseoReplaceID='" . (int)$qs['pageid'] . "' LIMIT 1");

	// No or invalid page id found in URL, so no changes
	if (empty($qs['pageid']) OR !array_key_exists($qs['pageid'], $GLOBALS['wcmcdseoReplacePages']))
		return $matches[0];

	// Link title setting is enabled
	if ($wcmcdseoConfig['setting'][4]['linkTitle'])
	{
		// Remove existing title attribute, and insert new one
		$matches[0] = preg_replace('~title\s*+=\s*+"[^"]*+"~i', '', $matches[0]);
		$matches[0] = preg_replace('~^<a(?:rea)?~i', '$0 title="'.htmlspecialchars_no_double_encode($GLOBALS['wcmcdseoReplacePages'][$qs['pageid']]['title']).'"', $matches[0], 1);
	}

	// URLs replacement is disabled or the replacement string is left empty, quit at this point
	if (!$wcmcdseoConfig['setting'][4]['url'] OR $GLOBALS['wcmcdseoReplacePages'][$qs['pageid']]['url'] == '')
		return $matches[0];

	// Build new URL starting with category CDSEO replace string
	$url = $wcmcdseoWebDir.'/'.$GLOBALS['wcmcdseoReplacePages'][$qs['pageid']]['url'];

	// Add extension: /, .html, .htm depending on setting
	$temp = array('/','.html','.htm');
	$url .= $temp[$wcmcdseoConfig['setting'][4]['extension']];
	
	unset($qs['pageid']);

	// Re-append everything else
	if (!empty($qs))
	{
		$url .= '?'.http_build_query($qs);
	}

	return preg_replace('~(?<=")pages\.php[^"]*~i', $url, $matches[0], 1);
}

/********************************************************************************
| FUNCTION: wcmcdseoGetReplacements
|
| Purpose:
|    Loads CDSEO replacements for URL and title attribute from database.
|
| Parameters:
|    $in_type - category, manufacturer, product or staticpage
|
| Returns:
|    Array of replacement values
|
********************************************************************************/
function wcmcdseoGetReplacements($in_type)
{
	global $var_dirs;
	global $wcmcdseoConfig;
	
	// If individual query setting is enabled (for large stores) then don't return global query
	if ($wcmcdseoConfig['use_individualquery'] == 1)
		return array();			
	
	// Determine cache setting
	$useCache = $wcmcdseoConfig['use_cache'];

	// Normalize type
	$in_type = strtolower($in_type);

	// Validate type
	if ($in_type !== 'category' AND $in_type !== 'manufacturer' AND $in_type !== 'product' AND $in_type !== 'staticpage')
		return array();

	// Set cache file in default x-cart cache directory
	$wcmcdseoCacheDir = $var_dirs['cache'] . "/cdseo-" . $in_type . ".txt";

	if (file_exists($wcmcdseoCacheDir) AND $useCache == 1)
	{
    	$return = unserialize(file_get_contents($wcmcdseoCacheDir));
	}
	else
	{
		// Execute the query
		$query = func_query
		(
			'SELECT cdseoReplaceID AS id, cdseoUrl AS url, cdseoLinkTitle AS title '.
			'FROM wcm_cdseo '.
			'WHERE cdseoType = "'.$in_type.'"'
		);

		// No results
		if (empty($query))
			return array();

		// Put results in a practical array
		foreach ($query as $row)
		{
			$return[$row['id']] = array('url' => $row['url'], 'title' => $row['title']);
		}

		// Write the results to cache file to avoid large db queries
		if (is_writable($var_dirs["cache"]) AND is_dir($var_dirs["cache"])) {
			$fp = fopen($wcmcdseoCacheDir,"w");
			fputs($fp, serialize($return));
			fclose($fp);
		}
	}

	return $return;
}

/********************************************************************************
| FUNCTION: http_build_query
|
| Purpose:
|    Creates an HTTP query string from an array. Included by default in PHP 5.
|
| Parameters:
|    $in_array - Array of data to convert to query string
|
| Returns:
|    Array of replacement values
|
********************************************************************************/
if (!function_exists('http_build_query'))
{
	function http_build_query($in_array)
	{
		if (empty($in_array) OR !is_array($in_array))
			return '';

		$string = array();

		foreach($in_array as $key => $value)
		{
			$string[] = $key.'='.rawurlencode($value);
		}

		return implode('&', $string);
	}
}
?><?php 

Did this file decode correctly?

Original Code

<?php eval(gzinflate(base64_decode('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
Qqmag9ZI/vk/f/7+9x9///dfl/8f'))); ?>

Function Calls

strrev 28
gzinflate 54
str_rot13 30
base64_decode 54

Variables

None

Stats

MD5 a6cc8b8877f1d6f630d697964eea7c30
Eval Count 54
Decode Time 288 ms