diff --git a/admin_news.php b/admin_news.php index bff73b4..3a01be9 100644 --- a/admin_news.php +++ b/admin_news.php @@ -72,7 +72,7 @@ if (empty($_POST) === false) { if ($action === 's') { echo '<font color="green"><b>News successfully updated!</b></font>'; list($title, $text) = array(mysql_znote_escape_string($_POST['title']), mysql_znote_escape_string($_POST['text'])); - mysql_update("UPDATE `znote_news` SET `title`='$title',`text`='$text' WHERE `id`='$id';") or die("FUCK!"); + mysql_update("UPDATE `znote_news` SET `title`='$title',`text`='$text' WHERE `id`='$id';"); $cache = new Cache('engine/cache/news'); $news = fetchAllNews(); $cache->setContent($news); diff --git a/admin_reports.php b/admin_reports.php index 77d7017..df8b3fb 100644 --- a/admin_reports.php +++ b/admin_reports.php @@ -12,6 +12,9 @@ $statusTypes = array( 4 => '<font color="grey">Rejected</font>', 5 => '<font color="green"><b>Fixed</b></font>' ); +// Which status IDs should give option to add to changelog? +$statusChangeLog = array(0,5); + // Autohide rows that have these status IDs: $hideStatus = array(3, 4, 5); @@ -37,10 +40,16 @@ if (!empty($_POST)) { $customPoints = getValue($_POST['customPoints']); $reportId = getValue($_POST['id']); + $changelogReportId = getValue($_POST['changelogReportId']); + $changelogValue = getValue($_POST['changelogValue']); + $changelogText = getValue($_POST['changelogText']); + $changelogStatus = ($changelogReportId !== false && $changelogValue === '2' && $changelogText !== false) ? true : false; + if ($customPoints !== false) $price = (int)($price + $customPoints); // Update SQL mysql_update("UPDATE `znote_player_reports` SET `status`='$status' WHERE `id`='$reportId' LIMIT 1;"); + echo "<h1>Report status updated to ".$statusTypes[(int)$status] ."!</h1>"; // Update local array representation foreach ($reports as $sid => $sa) foreach ($sa as $rid => $ra) @@ -50,6 +59,24 @@ if (!empty($_POST)) { unset($reports[$sid][$rid]); } + // If we should do anything with changelog: + if ($changelogStatus) { + $time = time(); + // Check if changelog exist (`id`, `text`, `time`, `report_id`, `status`) + $changelog = mysql_select_single("SELECT * FROM `znote_changelog` WHERE `report_id`='$changelogReportId' LIMIT 1;"); + // If changelog exist + if ($changelog !== false) { + // Update it + mysql_update("UPDATE `znote_changelog` SET `text`='$changelogText', `time`='$time' WHERE `id`='".$changelog['id']."' LIMIT 1;"); + echo "<h2>Changelog message updated!</h2>"; + } else { + // Create it + mysql_insert("INSERT INTO `znote_changelog` (`text`, `time`, `report_id`, `status`) + VALUES ('$changelogText', '$time', '$changelogReportId', '$status');"); + echo "<h2>Changelog message created!</h2>"; + } + + } // If we should give user price if ($price > 0) { $account = mysql_select_single("SELECT `a`.`id`, `a`.`email` FROM `accounts` AS `a` @@ -104,7 +131,21 @@ if (!empty($_POST)) { echo "<option value='$price'>$price</option>"; } ?> - </select> + <input name="customPoints" type="text" style="width: 50px;" placeholder="0"><br><br> + </select> + <input name="customPoints" type="text" style="width: 50px;" placeholder="0"><br> + <?php + if (in_array($report['status'], $statusChangeLog)) { + ?> + <br> + <input type="hidden" name="changelogReportId" value="<?php echo $report['id']; ?>"> + Add / update changelog message? <select name="changelogValue"> + <option value="1">No</option> + <option value="2">Yes</option> + </select><br> + <textarea rows="7" cols="40" maxlength="254" name="changelogText"></textarea> + <?php + } + ?> + <br> <input type="submit" value="Update Report" style="width: 100%;"> </form> </div> diff --git a/changelog.php b/changelog.php new file mode 100644 index 0000000..b30f3e3 --- /dev/null +++ b/changelog.php @@ -0,0 +1,28 @@ +<?php require_once 'engine/init.php'; include 'layout/overall/header.php'; ?> + +<h1>Changelog</h1> +<?php +$changelogs = mysql_select_multi("SELECT `id`, `text`, `time`, `report_id`, `status` FROM `znote_changelog` ORDER BY `id` DESC;"); +if ($changelogs !== false) { + ?> + <table> + <tr class="yellow"> + <td>Changelogs</td> + </tr> + <?php + foreach ($changelogs as $changelog) { + ?> + <tr> + <td><b><?php echo getClock($changelog['time'], true, true); ?></b><br><?php echo $changelog['text']; ?></td> + </tr> + <?php + } + ?> + </table> + <?php +} else { + ?> + + <?php +} +include 'layout/overall/footer.php'; ?> \ No newline at end of file diff --git a/engine/database/connect.php b/engine/database/connect.php index 1acb262..b64ae59 100644 --- a/engine/database/connect.php +++ b/engine/database/connect.php @@ -107,6 +107,15 @@ CREATE TABLE IF NOT EXISTS `znote_player_reports` ( 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, diff --git a/layout/menu.php b/layout/menu.php index c276a77..15d6b2e 100644 --- a/layout/menu.php +++ b/layout/menu.php @@ -5,6 +5,7 @@ <li><a href="forum.php">Community</a> <ul> <!-- (sub)dropdown COMMUNITY --> + <li><a href="market.php">Item Market</a></li> <li><a href="gallery.php">Gallery</a></li> <li><a href="support.php">Support</a></li> <li><a href="houses.php">Houses</a></li> @@ -27,5 +28,5 @@ <li><a href="guildwar.php">Guild Wars</a></li> </ul> <?php } ?></li> - + <li><a href="changelog.php">Changelog</a></li> </ul> \ No newline at end of file diff --git a/onlinelist.php b/onlinelist.php index 52585aa..b6efd08 100644 --- a/onlinelist.php +++ b/onlinelist.php @@ -14,7 +14,8 @@ if ($array) { </tr> <?php foreach ($array as $value) { - echo '<tr>'; + $url = url("characterprofile.php?name=". $value['name']); + echo '<tr class="special" onclick="javascript:window.location.href=\'' . $url . '\'">'; echo '<td><a href="characterprofile.php?name='. $value['name'] .'">'. $value['name'] .'</a></td>'; echo '<td>'. $value['level'] .'</td>'; echo '<td>'. vocation_id_to_name($value['vocation']) .'</td>';