mirror of
https://github.com/Znote/ZnoteAAC.git
synced 2025-04-30 03:09:22 +02:00

When user requests character delete, he will have to wait delay from config. During this time when user logs in on his account, on website, player will see information that character is awaiting delete. User can cancel this operation.
282 lines
8.9 KiB
PHP
282 lines
8.9 KiB
PHP
<?php
|
|
$time = time();
|
|
if (!isset($version)) $version = '1.5_SVN';
|
|
$install = "
|
|
<h2>Install:</h2>
|
|
<ol>
|
|
<li>
|
|
<p>
|
|
Make sure you have imported TFS database. (OTdir/forgottenserver.sql OR OTdir/schemas/mysql.sql)
|
|
</p>
|
|
</li>
|
|
<li>
|
|
Import the below schema to a <b>TFS database in phpmyadmin</b>:<br>
|
|
<textarea cols=\"65\" rows=\"10\">
|
|
CREATE TABLE IF NOT EXISTS `znote` (
|
|
`id` int(10) NOT NULL AUTO_INCREMENT,
|
|
`version` varchar(30) NOT NULL COMMENT 'Znote AAC version',
|
|
`installed` int(10) NOT NULL,
|
|
`cached` int(11) DEFAULT NULL,
|
|
PRIMARY KEY (`id`)
|
|
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ;
|
|
|
|
INSERT INTO `znote` (`version`, `installed`) VALUES
|
|
('$version', '$time');
|
|
|
|
CREATE TABLE IF NOT EXISTS `znote_accounts` (
|
|
`id` int(11) NOT NULL AUTO_INCREMENT,
|
|
`account_id` int(11) NOT NULL,
|
|
`ip` int(10) NOT NULL,
|
|
`created` int(10) NOT NULL,
|
|
`points` int(10) DEFAULT 0,
|
|
`cooldown` int(10) DEFAULT 0,
|
|
PRIMARY KEY (`id`)
|
|
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ;
|
|
|
|
INSERT INTO `znote_accounts` (`account_id`, `ip`, `created`) VALUES
|
|
('1', '0', '$time');
|
|
|
|
CREATE TABLE IF NOT EXISTS `znote_news` (
|
|
`id` int(11) NOT NULL AUTO_INCREMENT,
|
|
`title` varchar(30) NOT NULL,
|
|
`text` text NOT NULL,
|
|
`date` int(11) NOT NULL,
|
|
`pid` int(11) NOT NULL,
|
|
PRIMARY KEY (`id`)
|
|
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
|
|
|
|
CREATE TABLE IF NOT EXISTS `znote_images` (
|
|
`id` int(11) NOT NULL AUTO_INCREMENT,
|
|
`title` varchar(30) NOT NULL,
|
|
`desc` text NOT NULL,
|
|
`date` int(11) NOT NULL,
|
|
`status` int(11) NOT NULL,
|
|
`image` varchar(30) NOT NULL,
|
|
`account_id` int(11) NOT NULL,
|
|
PRIMARY KEY (`id`)
|
|
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
|
|
|
|
CREATE TABLE IF NOT EXISTS `znote_paypal` (
|
|
`id` int(11) NOT NULL AUTO_INCREMENT,
|
|
`txn_id` varchar(30) NOT NULL,
|
|
`email` varchar(255) NOT NULL,
|
|
`accid` int(11) NOT NULL,
|
|
`price` int(11) NOT NULL,
|
|
`points` int(11) NOT NULL,
|
|
PRIMARY KEY (`id`)
|
|
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
|
|
|
|
CREATE TABLE IF NOT EXISTS `znote_paygol` (
|
|
`id` int(11) NOT NULL AUTO_INCREMENT,
|
|
`account_id` int(11) NOT NULL,
|
|
`price` int(11) NOT NULL,
|
|
`points` int(11) NOT NULL,
|
|
`message_id` varchar(255) NOT NULL,
|
|
`service_id` varchar(255) NOT NULL,
|
|
`shortcode` varchar(255) NOT NULL,
|
|
`keyword` varchar(255) NOT NULL,
|
|
`message` varchar(255) NOT NULL,
|
|
`sender` varchar(255) NOT NULL,
|
|
`operator` varchar(255) NOT NULL,
|
|
`country` varchar(255) NOT NULL,
|
|
`currency` varchar(255) NOT NULL,
|
|
PRIMARY KEY (`id`)
|
|
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
|
|
|
|
CREATE TABLE IF NOT EXISTS `znote_players` (
|
|
`id` int(11) NOT NULL AUTO_INCREMENT,
|
|
`player_id` int(11) NOT NULL,
|
|
`created` int(11) NOT NULL,
|
|
`hide_char` tinyint(4) NOT NULL,
|
|
`comment` varchar(255) NOT NULL,
|
|
PRIMARY KEY (`id`)
|
|
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
|
|
|
|
INSERT INTO `znote_players` (`player_id`, `created`, `hide_char`, `comment`) VALUES
|
|
('1', '$time', '0', '. . .');
|
|
|
|
CREATE TABLE IF NOT EXISTS `znote_player_reports` (
|
|
`id` int(11) NOT NULL AUTO_INCREMENT,
|
|
`name` varchar(50) NOT NULL,
|
|
`posx` int(6) NOT NULL,
|
|
`posy` int(6) NOT NULL,
|
|
`posz` int(6) NOT NULL,
|
|
`report_description` VARCHAR(255) NOT NULL,
|
|
`date` INT(11) NOT NULL,
|
|
`status` TINYINT(3) NOT NULL DEFAULT '0',
|
|
PRIMARY KEY (`id`)
|
|
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
|
|
|
|
CREATE TABLE IF NOT EXISTS `znote_changelog` (
|
|
`id` int(11) NOT NULL AUTO_INCREMENT,
|
|
`text` VARCHAR(255) NOT NULL,
|
|
`time` INT(11) NOT NULL,
|
|
`report_id` INT(11) NOT NULL,
|
|
`status` TINYINT(3) NOT NULL DEFAULT '0',
|
|
PRIMARY KEY (`id`)
|
|
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
|
|
|
|
CREATE TABLE IF NOT EXISTS `znote_shop` (
|
|
`id` int(11) NOT NULL AUTO_INCREMENT,
|
|
`type` int(11) NOT NULL,
|
|
`itemid` int(11) DEFAULT NULL,
|
|
`count` int(11) NOT NULL DEFAULT '1',
|
|
`describtion` varchar(255) NOT NULL,
|
|
`points` int(11) NOT NULL DEFAULT '10',
|
|
PRIMARY KEY (`id`)
|
|
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
|
|
|
|
CREATE TABLE IF NOT EXISTS `znote_shop_logs` (
|
|
`id` int(11) NOT NULL AUTO_INCREMENT,
|
|
`account_id` int(11) NOT NULL,
|
|
`player_id` int(11) NOT NULL,
|
|
`type` int(11) NOT NULL,
|
|
`itemid` int(11) NOT NULL,
|
|
`count` int(11) NOT NULL,
|
|
`points` int(11) NOT NULL,
|
|
`time` int(11) NOT NULL,
|
|
PRIMARY KEY (`id`)
|
|
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
|
|
|
|
CREATE TABLE IF NOT EXISTS `znote_shop_orders` (
|
|
`id` int(11) NOT NULL AUTO_INCREMENT,
|
|
`account_id` int(11) NOT NULL,
|
|
`type` int(11) NOT NULL,
|
|
`itemid` int(11) NOT NULL,
|
|
`count` int(11) NOT NULL,
|
|
`time` int(11) NOT NULL DEFAULT '0',
|
|
PRIMARY KEY (`id`)
|
|
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
|
|
|
|
CREATE TABLE IF NOT EXISTS `znote_visitors` (
|
|
`id` int(11) NOT NULL AUTO_INCREMENT,
|
|
`ip` int(11) NOT NULL,
|
|
`value` int(11) NOT NULL,
|
|
PRIMARY KEY (`id`)
|
|
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
|
|
|
|
CREATE TABLE IF NOT EXISTS `znote_visitors_details` (
|
|
`id` int(11) NOT NULL AUTO_INCREMENT,
|
|
`ip` int(11) NOT NULL,
|
|
`time` int(11) NOT NULL,
|
|
`type` tinyint(4) NOT NULL,
|
|
`account_id` int(11) NOT NULL,
|
|
PRIMARY KEY (`id`)
|
|
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
|
|
|
|
CREATE TABLE IF NOT EXISTS `znote_forum` (
|
|
`id` int(11) NOT NULL AUTO_INCREMENT,
|
|
`name` varchar(50) NOT NULL,
|
|
`access` tinyint(4) NOT NULL,
|
|
`closed` tinyint(4) NOT NULL,
|
|
`hidden` tinyint(4) NOT NULL,
|
|
`guild_id` int(11) NOT NULL,
|
|
PRIMARY KEY (`id`)
|
|
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
|
|
|
|
INSERT INTO `znote_forum` (`name`, `access`, `closed`, `hidden`, `guild_id`) VALUES
|
|
('Staff Board', '4', '0', '0', '0'),
|
|
('Tutors Board', '2', '0', '0', '0'),
|
|
('Discussion', '1', '0', '0', '0'),
|
|
('Feedback', '1', '0', '1', '0');
|
|
|
|
CREATE TABLE IF NOT EXISTS `znote_forum_threads` (
|
|
`id` int(11) NOT NULL AUTO_INCREMENT,
|
|
`forum_id` int(11) NOT NULL,
|
|
`player_id` int(11) NOT NULL,
|
|
`player_name` varchar(50) NOT NULL,
|
|
`title` varchar(50) NOT NULL,
|
|
`text` text NOT NULL,
|
|
`created` int(11) NOT NULL,
|
|
`updated` int(11) NOT NULL,
|
|
`sticky` tinyint(4) NOT NULL,
|
|
`hidden` tinyint(4) NOT NULL,
|
|
`closed` tinyint(4) NOT NULL,
|
|
PRIMARY KEY (`id`)
|
|
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
|
|
|
|
CREATE TABLE IF NOT EXISTS `znote_forum_posts` (
|
|
`id` int(11) NOT NULL AUTO_INCREMENT,
|
|
`thread_id` int(11) NOT NULL,
|
|
`player_id` int(11) NOT NULL,
|
|
`player_name` varchar(50) NOT NULL,
|
|
`text` text NOT NULL,
|
|
`created` int(11) NOT NULL,
|
|
`updated` int(11) NOT NULL,
|
|
PRIMARY KEY (`id`)
|
|
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
|
|
|
|
CREATE TABLE IF NOT EXISTS `znote_deleted_characters` (
|
|
`id` int(11) NOT NULL AUTO_INCREMENT,
|
|
`original_account_id` int(11) NOT NULL,
|
|
`character_name` varchar(255) NOT NULL,
|
|
`time` datetime NOT NULL,
|
|
`done` tinyint(1) NOT NULL,
|
|
PRIMARY KEY (`id`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
|
|
</textarea>
|
|
</li>
|
|
<li>
|
|
<p>
|
|
Edit config.php with correct mysql connection details.
|
|
</p>
|
|
</li>
|
|
</ol>
|
|
";
|
|
|
|
$connect = new mysqli($config['sqlHost'], $config['sqlUser'], $config['sqlPassword'], $config['sqlDatabase']);
|
|
if ($connect->connect_errno) {
|
|
die("Failed to connect to MySQL: (" . $connect->connect_errno . ") " . $connect->connect_error . $install);
|
|
}
|
|
|
|
function mysql_znote_escape_string($escapestr) {
|
|
global $connect;
|
|
return mysqli_real_escape_string($connect, $escapestr);
|
|
}
|
|
// Select single row from database
|
|
function mysql_select_single($query) {
|
|
global $connect;
|
|
global $aacQueries;
|
|
$aacQueries++;
|
|
|
|
global $accQueriesData;
|
|
$accQueriesData[] = $query;
|
|
$result = mysqli_query($connect,$query) or die(var_dump($query)."<br>(query - <font color='red'>SQL error</font>) <br>Type: <b>select_single</b> (select single row from database)<br><br>".mysqli_error($connect));
|
|
$row = mysqli_fetch_assoc($result);
|
|
return !empty($row) ? $row : false;
|
|
}
|
|
|
|
// Selecting multiple rows from database.
|
|
function mysql_select_multi($query){
|
|
global $connect;
|
|
global $aacQueries;
|
|
$aacQueries++;
|
|
global $accQueriesData;
|
|
$accQueriesData[] = $query;
|
|
$array = array();
|
|
$results = mysqli_query($connect,$query) or die(var_dump($query)."<br>(query - <font color='red'>SQL error</font>) <br>Type: <b>select_multi</b> (select multiple rows from database)<br><br>".mysqli_error($connect));
|
|
while($row = mysqli_fetch_assoc($results)) {
|
|
$array[] = $row;
|
|
}
|
|
return !empty($array) ? $array : false;
|
|
}
|
|
|
|
//////
|
|
// Query database without expecting returned results
|
|
|
|
// - mysql update
|
|
function mysql_update($query){ voidQuery($query); }
|
|
// mysql insert
|
|
function mysql_insert($query){ voidQuery($query); }
|
|
// mysql delete
|
|
function mysql_delete($query){ voidQuery($query); }
|
|
// Send a void query
|
|
function voidQuery($query) {
|
|
global $connect;
|
|
global $aacQueries;
|
|
$aacQueries++;
|
|
global $accQueriesData;
|
|
$accQueriesData[] = $query;
|
|
mysqli_query($connect,$query) or die(var_dump($query)."<br>(query - <font color='red'>SQL error</font>) <br>Type: <b>voidQuery</b> (voidQuery is used for update, insert or delete from database)<br><br>".mysqli_error($connect));
|
|
}
|
|
?>
|