<?php
	require(dirname(__FILE__).'/../init.php');

	define('AKB_WL_LANG_FILE',			dirname(__FILE__).'/../includes/language/'.$GLOBALS['currentLanguage'].'/whitelabel.ini');
	define('AKB_LANG_FILE',				dirname(__FILE__).'/../includes/language/'.$GLOBALS['currentLanguage'].'/front_language.ini');
	define('AKB_TPL_LOAD_PATH',			dirname(__FILE__).'/templates/');
	define('AKB_TPL_PHP_PATH',			dirname(__FILE__).'/includes/display/');
	define('AKB_TPL_HTTP_PATH',			$GLOBALS['pathToKB'].'/admin/templates/');
	define('AKB_TPL_IMAGE_PATH',		AKB_TPL_HTTP_PATH.'Images');
	define('AKB_PANEL_LOAD_PATH',		AKB_TPL_LOAD_PATH.'Panels/');
	define('AKB_SNIPPET_LOAD_PATH',	AKB_TPL_LOAD_PATH.'Snippets/');
	define('CLASS_DIR',					dirname(__FILE__).'/includes/classes');

	require(dirname(__FILE__).'/../lib/email.php');
	require(dirname(__FILE__).'/includes/helpers/helper.template.php');

	$GLOBALS['SNIPPETS'] = '';
	$GLOBALS['Message'] = '';
	$GLOBALS['HidePanels'] = array();
	
	require(CLASS_DIR.'/class.helper.php');
	require(CLASS_DIR.'/class.category.php');
	require(CLASS_DIR.'/class.news.php');
	require(CLASS_DIR.'/class.template.php');
	require(CLASS_DIR.'/class.admintable.php');
	require(CLASS_DIR.'/class.question.php');
	require(CLASS_DIR.'/../../../includes/classes/class.auth.php');
	require(CLASS_DIR.'/class.install.php');
	require(CLASS_DIR.'/class.engine.php');
	
	$GLOBALS['AKB_CLASS_HELPER']	= new AKB_HELPER();
	$GLOBALS['AKB_CLASS_CATEGORY']	= new AKB_CATEGORY();
	$GLOBALS['AKB_CLASS_NEWS']	= new AKB_NEWS();
	$GLOBALS['AKB_CLASS_TEMPLATE']	= new AKB_TEMPLATE();
	$GLOBALS['AKB_CLASS_QUESTIONS']	= new AKB_QUESTION();
	$GLOBALS['AKB_CLASS_AUTH']		= new AKB_AUTH();
	$GLOBALS['AKB_CLASS_INSTALL']	= new AKB_INSTALL();
	
	$GLOBALS['SNIPPETS'] = '';
	if (!pageLoad()) {
		AKB_AUTH::ShowLoginForm(GetLang('SessionLoggedOutMessage'));
		die();
	}
	// Is the site down for maintenance?
	if ($GLOBALS['downForMaintenance'] == 1) {
		// Show the down for maintenance panel
		$GLOBALS['AKB_CLASS_TEMPLATE']->SetPageTitle(GetLang('hpDownForMaintenance'));
		$GLOBALS['AKB_CLASS_TEMPLATE']->SetTemplate('Maintenance');
		$GLOBALS['AKB_CLASS_TEMPLATE']->ParseTemplate();
		die();
	}
	
	$success = false;
	
	if (FrontendAccess()) {
		$questionid = (int)$_GET['id'];
		$type = $_GET['type'];
		
		if (($questionid > 0) && (AKB_AUTH::IsLoggedIn())) {
			if ($type == 'content') {
				$SQL = "SELECT answer FROM ".$GLOBALS['tablePrefix']."questions WHERE questionid = '$questionid'";
				$content = $GLOBALS['AKB_DB']->FetchOne($SQL);
	
				if ($content) {
					echo "<html><head></head><body style=\"margin: 0 0 0 0;\"><form action=\"#\">";
					if ($GLOBALS['useWYSIWYGEditor']) {
						echo $GLOBALS['AKB_CLASS_QUESTIONS']->GetWYSIWYGEditor($content,"100%","400"); //TODO:: Magic Numbers
					} else {
						echo "<textarea id=\"contentPlainText\" style=\"width: 100%; height: 400px;\">".$content."</textarea>";
					}
					echo "</form></body></html>";
					
					$success = true;
				}
			}
 			if ($type == 'title') {
				$SQL = "SELECT title FROM ".$GLOBALS['tablePrefix']."questions WHERE questionid = '$questionid'";
				$title = $GLOBALS['AKB_DB']->FetchOne($SQL);
				echo str_replace('"', '&quot;', $title);
				$success = true;
 			}
		}
		
		if (!$success) {
			echo GetLang("QuickEditReadError");
		}
		die();
	} else {
		if (!isset($_POST['frontendPass'])) {
			$GLOBALS['HidePanels'] = array (
				'FrontendLoginError',
			);
		}
	}

	// {{{ If debug is on, print the debug footer
	if (isset($GLOBALS['debug']) && $GLOBALS['debug'] == true) {
		$end_time = microtime_float();
		if (function_exists('memory_get_usage')) {
			$mem_used = memory_get_usage()/1024/1024;
		} else {
			$mem_used = 0;
		}
		printf('<div id="debug">Time taken to generate the page %.4f seconds and performed %d sql queries and used %.4f MB of memory</div>', ($end_time - $start_time), $GLOBALS['AKB_DB']->NumQueries, $mem_used);
	}
	// }}}
?>