<?php

/*
  D2UniqueMaker
  GPLv2 (C) <2021>  <HashCasper>

  This file is part of D2UM.

  D2UM is free software: you can redistribute it and/or modify
  it under the terms of the GNU General Public License as published by
  the Free Software Foundation, either version 2 of the License, or
  (at your option) any later version.

  D2UM is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  GNU General Public License for more details.

  You should have received a copy of the GNU General Public License
  along with D2UM.  If not, see <http://www.gnu.org/licenses/>.
 */

ini_set('display_errors', 1);
error_reporting(1);
ini_set('log_errors', 1);

define('FILTER_PROPERTIES_FILE', 'filterProperties.txt');
define('DB_FILE', 'db');

include "../_pdo.php";


$filename = 'd2im.conf';

if (file_exists($filename)) {

	$p = file_get_contents($filename);
	if (is_dir($p)) {
		$path = $p;
		define('TXT_PATH', $p);
	} else {
		header('Location: /src/D2Config.php');
	}

	require_once "./src/D2Functions.php";
	require_once "./src/D2Database.php";
	require_once './src/D2Files.php';
	require_once './src/D2TxtParser.php';

	// parse txt data
	$files = new D2Files();

	$parser = new D2TxtParser();

	$armor = $parser->parseFile($files->getFile('Armor'));
	$gems = $parser->parseFile($files->getFile('Gems'));
	$itypes = $parser->parseFile($files->getFile('ItemTypes'));
	$misc = $parser->parseFile($files->getFile('Misc'));
	$prop = $parser->parseFile($files->getFile('Properties'));
	$setitems = $parser->parseFile($files->getFile('SetItems'));
	$sets = $parser->parseFile($files->getFile('Sets'));
	$uni = $parser->parseFile($files->getFile('UniqueItems'));
	$weapon = $parser->parseFile($files->getFile('Weapons'));
	
	$u = $files->getFile("UniqueItems");
	$s = $files->getFile("SetItems");
	

	// If there's data, process it and save
	if (!empty($_POST)) {
		require_once './src/D2SaveFile.php';
		$saver = new D2SaveFile();

		// process post
		// combine armor/weapon codes
		$post = $_POST;
		if (!empty($post['code'])) {
			array_filter($post['code']);

			if (!empty($post['code'][0])) {
				$post['code'] = $post['code'][0];
			} else {
				$post['code'] = $post['code'][1];
			}
		}


		if ($_POST['formtype'] == "uniqueitems") {
			// if ladder or carry1 is 0, set empty field.
			if (!$post['ladder']) {
				$post['ladder'] = '';
			}
			if (!$post['carry1']) {
				$post['carry1'] = '';
			}
			$saver->save($u, $post);
			$saver->saveTblEnries("UniqueItems.tbl.txt");
		}
		if ($_POST['formtype'] == "setitems") {




			$saver->save($s, $post);
			$saver->saveTblEnries("SetItems.tbl.txt");
		}
	}


// load app
	require_once './src/index.php';
} else {
	header('Location: ./src/D2Config.php');
}
?>