<?php //require_once('Connections/drivecms.php');

if (!$_GET['key']) {
	echo "API key Required. Please contact your account representative.";
	exit;
}

$userdb = $_GET['key'];

$hostname_ddrivecms = "localhost";
$database_ddrivecms = "drivecms_users";
$username_ddrivecms = "drivecms_psostre";
$password_ddrivecms = "monkey";
$ddrivecms = mysql_connect($hostname_ddrivecms, $username_ddrivecms, $password_ddrivecms) or trigger_error(mysql_error(),E_USER_ERROR);

mysql_select_db($database_ddrivecms, $ddrivecms);
$query_validatekey = "SELECT * FROM sites WHERE db_name = '_".mysql_real_escape_string($userdb)."'";
$validatekey = mysql_query($query_validatekey, $ddrivecms) or die(mysql_error());
$row_validatekey = mysql_fetch_assoc($validatekey);
$totalRows_validatekey = mysql_num_rows($validatekey);

if ($totalRows_validatekey < 1) {
	echo "Your API key is invalid. Please contact your account representative.";
	exit;
}



## DYNAMIC DB CONNECTION INFO ###
$database_ddrivecms = "drivecms_".$userdb;
$ddrivecms = mysql_connect($hostname_ddrivecms, $username_ddrivecms, $password_ddrivecms) or trigger_error(mysql_error(),E_USER_ERROR);

//require_once('includes/authorize.php');

$atomlinkurl = "";

if ($_GET['category']) {
	$cleancat = mysql_real_escape_string($_GET['category']);
	$catqry = "AND maincategory = '$cleancat'";
	$atomlinkurl .= "&amp;category=".strip_tags($_GET['category']);
}

if ($_GET['subcategory']) {
	$cleansubcat = mysql_real_escape_string($_GET['subcategory']);
	$subcatqry = "AND category = '$cleansubcat'";
	$atomlinkurl .= "&amp;subcategory=".strip_tags($_GET['subcategory']);
}

if ($_GET['full']) {
	$atomlinkurl .= "&amp;full=".strip_tags($_GET['full']);
}

if ($_GET['type']) {
	$cleantype = mysql_real_escape_string($_GET['type']);
	$typeqry = "(`class` = 'article' OR `class`='".$cleantype."')";
} else {
	$typeqry = "`class` = 'article'";
}

mysql_select_db($database_ddrivecms, $ddrivecms);
$query_getArticles = "SELECT * FROM articles WHERE $typeqry $catqry $subcatqry ORDER BY id DESC";
//$query_getArticles = "SELECT * FROM articles WHERE articles.class = 'article' $catqry $subcatqry ORDER BY id DESC";
$getArticles = mysql_query($query_getArticles, $ddrivecms) or die(mysql_error());
$row_getArticles = mysql_fetch_assoc($getArticles);
$totalRows_getArticles = mysql_num_rows($getArticles);

$query_getSiteinfo = "SELECT * FROM content WHERE class = 'Company Info'";
$getSiteinfo = mysql_query($query_getSiteinfo, $ddrivecms) or die(mysql_error());
$row_getSiteinfo = mysql_fetch_assoc($getSiteinfo);
$totalRows_getSiteinfo = mysql_num_rows($getSiteinfo);

$query_getLinks = "SELECT * FROM content WHERE class = 'Custom Form Settings' AND field1 = 'Article'";
$getLinks = mysql_query($query_getLinks, $ddrivecms) or die(mysql_error());
$row_getLinks = mysql_fetch_assoc($getLinks);
$totalRows_getLinks = mysql_num_rows($getLinks);

header('Content-type: application/xml; charset="utf-8"',true);
//header('Content-type: application/xml; charset="iso-8859-1"',true);
//header('Content-type: application/xml; charset="Windows-1252"',true);


if (!function_exists("RFC2822")) {
	function RFC2822($date, $time = '00:00') { 
		list($y, $m, $d) = explode('-', $date); 
		list($h, $i) = explode(':', $time); 
	 
		return date('r', mktime($h,$i,0,$m,$d,$y)); 
	}
}

if (!function_exists("prepdata")) {
	function prepdata($data){

		
		$cleandata = $data;
		$cleandata = substr($cleandata,0,250);	  
		
		$cleandata = str_replace("�", "&#8220;", $cleandata);
		$cleandata = str_replace("�", "&#8221;", $cleandata);
		$cleandata = str_replace("�", "&#8216;", $cleandata);
		$cleandata = str_replace("�", "&#8217;", $cleandata);
		$cleandata = str_replace("&", "&amp;", $cleandata);
		
		echo $cleandata;
	}
}

if (!function_exists("prepdatafull")) {
	function prepdatafull($data){

		
		$cleandata = $data;
		//$cleandata = substr($cleandata,0,250);	  
		
		$cleandata = str_replace("�", "&#8220;", $cleandata);
		$cleandata = str_replace("�", "&#8221;", $cleandata);
		$cleandata = str_replace("�", "&#8216;", $cleandata);
		$cleandata = str_replace("�", "&#8217;", $cleandata);
		$cleandata = str_replace("&", "&amp;", $cleandata);
		
		echo $cleandata;
	}
}
 
?><?php echo "<?xml version=\"1.0\"?>\n"; ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel> 
<title><?php prepdata($row_getSiteinfo['field1']); ?></title> 
<link>http://<?php prepdata($row_getSiteinfo['field11']); ?></link> 
<description><?php prepdata($row_getSiteinfo['field1']); ?> News Feed.</description>
<atom:link href="http://drivecms.com/xml-articles-rss.xml?key=<? echo strip_tags($userdb); ?><? echo $atomlinkurl; ?>" rel="self" type="application/rss+xml" />
<language>en-us</language> 
<generator>DriveCMS - http://www.drivecms.com</generator><? do { if($row_getArticles['textid'] != '') { $newurl = $row_getArticles['textid']; } else { $newurl = urlencode($row_getArticles['title']); } ?>
<item>
<guid>http://<?php prepdata($row_getSiteinfo['field11']); ?>/<?php prepdata($row_getLinks['field2']); ?><?php echo $newurl; ?></guid>
<title><?php prepdata($row_getArticles['title']); ?></title>
<link>http://<?php prepdata($row_getSiteinfo['field11']); ?>/<?php prepdata($row_getLinks['field2']); ?><?php echo $newurl; ?></link>
<description><? if ($_GET['full'] == 1) { ?><![CDATA[<?php prepdatafull($row_getArticles['article']); ?>]]><? } else { ?><?php prepdata($row_getArticles['summary']); ?><? } ?></description>
<pubDate><?php
$dbdate = $row_getArticles['datecreated'];
$rfcdate = substr($row_getArticles['datecreated'],0,10);
if (strlen($row_getArticles['datecreated']) > 13) {
	$rfctime = substr($row_getNav[$_GET['date']],12,5);
	echo RFC2822($rfcdate,$rfctime); 
} else {
	echo RFC2822($rfcdate); 
}
?></pubDate>
<? if ($row_getArticles['maincategory']) { ?><category><?php prepdata($row_getArticles['maincategory']); ?></category><? } ?>
</item>
<? } while ($row_getArticles = mysql_fetch_assoc($getArticles)); ?>
</channel>
</rss>
<?php
//mysql_free_result($getSiteAuthority);
?>