<?php
require_once('requires.php');
require_once(LIB_PATH.DS.'loggedin.php');
ob_start();

 try {

		$token = isset($_POST['token']) ? $_POST['token'] : NULL;
		unset($_POST['token']);
		CSRF::validate($token,false);


$formDataArray = $_POST['data'];
$filesDataArray = array (); 



if(isset($_FILES['data'])){
		$filesDataArray = $_FILES['data'];
}

foreach($formDataArray as $tableName => $tableData){



	 // if(isset($_POST['id'])){
//            $id = $_POST['id'];
//        }
		$_POST = $tableData;
		$_POST['table'] = $tableName;
	 // if(isset($id)){
//            $_POST['id'] = $id;   
//        }

		//Aggregate the $_FILES array
		$_FILES = array (); 
		foreach($filesDataArray as $index => $array){
				if(isset($array[$tableName])){
						foreach($array[$tableName] as $fieldName => $value){
								$_FILES[$fieldName][$index] = $value;
						}
				}
		}



		if(!empty($_POST['table'])){
				$tableName = $_POST['table'];
		}else{
				die("Please select a table!");
		}


		$table = new Table($tableName);


		if(isPostEmpty()){
				$result = "Please fill in values.";
				echo $result;
		}else{
				try{

						$id = $table->save($_POST);
						$result = 1;

					 

						if($table->isPhotoGallery() && empty($_POST['id'])){
								echo json_encode(array('success' => true));
								die;
						}

						echo $id !== true ? 'Created!' : 'Updated!';

				} catch (Exception $e){
						$result = $e->getMessage();
						if($table->isPhotoGallery() && empty($_POST['id']) ){
								echo json_encode(array('error' => $result));
								die;
						}
						echo $e->getMessage();
				}


				/*
				$id = $table->save($_POST);

				if(is_numeric($id) || $id === true){
				$session->message("Your entry was saved!");
				$result = 1;
				echo $id !== true ? 'Created!' : 'Updated!';
				}elseif($id == 'file_upload_failed'){
				echo $id;
				$result = 'File Upload Failed! Try changing the file name.';
				echo 'File upload failed!';
				}elseif($id == 'invalid_mime_type'){
				$result = 'Your file is an invalid format';
				echo 'Invalid Mime Type!';
				}elseif($id == 'invalid_max_image_height'){

				$result = $session->printMessage();
				echo 'Invalid Max Image Height!';
				}elseif($id == 'invalid_max_image_width'){
				$result = $session->printMessage();
				echo 'Invalid Max Image WIDTH!';
				}elseif($id == 'invalid_image_proportions'){
				$result = 'Your image has invalid proportions';
				echo 'Invalid Image Proportions!';
				}else{

				$result = 'Nothing is saved. Perhaps you did not change anything?';
				echo'Nothing changed!';
				}
				*/
		}

}

	 } catch (Exception $e) {
		$result = "Invalid Request. Try refreshing the page and trying again.";
}
?>

<script language="javascript" type="text/javascript">window.top.window.stopUpload("<?php echo $result; ?>","<?php echo hashTable($tableName); ?>");</script>