<?php
	require 'error/Error';
	require 'error/Advise';
	require 'model/MNative';
	require 'form.php';
	class Toolkit{
		static $model;
		static function init(){
			Toolkit::$model=Toolkit::model('TourMap','localhost','root','malory');
		}
		private static function model($db_name='u655931133_tourmap',$server='mysql.hostinger.es',$user='u655931133_root',$password='sodita',$port=3306){
			return new MNative($db_name,$server,$user,$password,$port);
		}
		static function rows_to_json($rows_array,$json_array=true){
			$json=$json_array?'[':'{';
			$i=0;
			$flag=true;
			$length=count($rows_array);
			for($i=0;$i<$length;$i++)
				foreach($rows_array[$i] as $key=>$value)
					if($key!='info'){
						if($flag){
							$json.='"'.$value.($json_array?'",';'":');
							$flag=false;
						}
						else{
							$json.='"'.$value.'",';
							$flag=true;
						}
					}
			$json=substr($json,0,strlen($json)-1).($json_array?']':'}');
			return $json;
		}
		static function low_query($query,$query_type='select'){
			$valid=FALSE;
			$query=($query_type==='action'?Toolkit::$model->action($query):Toolkit::$model->select($query));
			$valid=!($query_type==='action'?$query<0:$query==NULL);
			if($valid)
				$valid=$query;
			return $valid;
		}
		
	}
	Toolkit::init();
	function query($query,$json_array=FALSE,$select=TRUE){
		$return='';
		if($select)
			$return=Toolkit::rows_to_json(Toolkit::low_query($query,'select'),$json_array);
		else
			$return=Toolkit::low_query($query,'action');
		if(!$return OR $return <0)	die('{"error":"'.Toolkit::$model->get_error().'"'.',"parameter":"error.png"}');
		return $return;
	}


?>
