d2tools/index.php
2021-03-24 09:37:21 -06:00

112 lines
2.9 KiB
PHP

<?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');
$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');
}
?>