/blog/add-post.php |
---|
40,12 → 40,12 |
} |
else |
{ |
if ($page->getLoggedInUser()->accessID >= 2 && $parentID == -1) |
if (($page->getLoggedInUser()->accessID >= 2 && $parentID == -1) || $page->getLoggedInUser()->accessID > 2) |
{ |
$page->drawError('You do not have permission to access this page.'); |
} |
$page->query('INSERT INTO BlogPosts VALUES(0, ' . $parentID . ', "' . $page->getLoggedInUser()->ID . '", "' . $title . '", "' . $content . '", NOW(), "' . $category . '", 0)'); |
$page->query('INSERT INTO BlogPosts VALUES(0, "' . $parentID . '", "' . $page->getLoggedInUser()->ID . '", "' . $title . '", "' . $content . '", NOW(), "' . $category . '", 0)'); |
$page->redirect('post.php?id=' . $parentID); |
} |
} |
/blog/index.php |
---|
5,6 → 5,8 |
$page = new Taios_Page('Blog Posts', '../'); |
$page->drawHeader(); |
$page->drawBlogCategoriesMenu(); |
write('<br /><h3>RSS</h3>'); |
$page->drawMenuItem('RSS Feed', 'blog/rss.php'); |
$page->drawMiddle(); |
if ($page->isUserGM($page->getLoggedInUser())) |
21,6 → 23,11 |
write('<p>Only showing blog posts from the ' . $_GET['cat'] . ' category. <a href="index.php">Reset Filtering</a></p><br />'); |
} |
if(!$page->isUserGM($page->getLoggedInUser())) |
{ |
$query = $query . ' AND Category != "Drafts"'; |
} |
$query = $query . " ORDER BY DatePosted DESC"; |
$ids = $page->findIDs('BlogPosts', $query); |
28,10 → 35,13 |
{ |
$id = $ids[$i]; |
$post = $page->getBlogPost($id); |
$ids2 = $page->findIDs('BlogPosts', 'WHERE ParentID="' . $id . '"'); |
write('<a href="post.php?id=' . $id . '"><h3>' . $post->title. '</h3></a>'); |
write('<h5 style="color: #666666;">Posted On ' . date('l j F Y', $post->datePosted) . ' by ' . $post->user->name . ' (' . $post->user->username . ')</h5>'); |
write('<p>' . $page->replaceBBCode($post->content) . '</p>'); |
write('<h5 style="color: #666666;"><a href="post.php?id=' . $id . '">' . count($ids2) . ' Comments</a></h5>'); |
write('<br />'); |
} |
/blog/edit-post.php |
---|
20,7 → 20,7 |
$page->checkLoggedIn(); |
$post = $page->getBlogPost($id); |
if (!$page->isUserAdmin($page->getLoggedInUser()) && $page->getLoggedInUser()->ID != $post->author->ID) |
if ((!$page->isUserAdmin($page->getLoggedInUser()) && $page->getLoggedInUser()->ID != $post->author->ID) || !$page->isUserNormal($page->getLoggedInUser())) |
{ |
$page->drawError('You do not have permission to access this page.'); |
} |
43,7 → 43,7 |
} |
else |
{ |
$page->query('UPDATE BlogPosts SET Content = "' . $content . '", Title = "' . $title . '", Category = "' . $category . '" WHERE ID = ' . $id); |
$page->query('UPDATE BlogPosts SET Content = "' . $content . '", Title = "' . $title . '", Category = "' . $category . '" WHERE ID = "' . $id . '"'); |
$page->redirect('post.php?id=' . $id); |
} |
} |
/blog/rss.php |
---|
0,0 → 1,34 |
<?php |
require '../_taios.php'; |
header("Content-type: application/rss+xml"); |
$page = new Taios_Page('Blog RSS Feed', '../'); |
write('<?xml version="1.0" encoding="UTF-8" ?>'); |
write('<rss version="2.0">'); |
write('<channel>'); |
write('<title>Tim32 Blog RSS</title>'); |
write('<description>This is the RSS feed for the Tim32 Blog.</description>'); |
write('<link>http://tim32.org/blog/</link>'); |
$ids = $page->findIDs('BlogPosts', 'WHERE ParentID = -1 AND CATEGORY != "Drafts" ORDER BY DatePosted DESC'); |
for ($i = 0; $i < count($ids); $i++) |
{ |
$id = $ids[$i]; |
$post = $page->getBlogPost($id); |
write('<item>'); |
write('<title>' . $post->title . '</title>'); |
write('<link>http://tim32.org/blog/post.php?id=' . $id . '</link>'); |
write('<guid>' . $id . '</guid>'); |
write('<pubDate>' . date('D, d M Y H:i:s O', $post->datePosted). '</pubDate>'); |
write('<description><![CDATA[' . $page->replaceBBCode($post->content) . ']]></description>'); |
write('</item>'); |
} |
write('</channel>'); |
write('</rss>'); |
?> |
/blog/del-post.php |
---|
7,7 → 7,7 |
$id = $_GET['id']; |
if ($id) |
{ |
if ($page->isUserAdmin($page->getLoggedInUser()) || $page->getLoggedInUser()->ID == $page->getBlogPost($id)->author->ID) |
if ($page->isUserAdmin($page->getLoggedInUser()) || $page->getLoggedInUser()->ID == $page->getBlogPost($id)->author->ID && $page->isUserNormal($page->getLoggedInUser())) |
{ |
$page->delBlogPost($id); |
} |
/admin/account-do.php |
---|
13,26 → 13,26 |
$name = $_POST['name']; |
$user = $page->getUserByID($userID); |
if (($page->getLoggedInUser()->ID == $userID || $page->isUserAdmin($page->getLoggedInUser())) && $user) |
if (($page->getLoggedInUser()->ID == $userID || $page->isUserAdmin($page->getLoggedInUser())) && $user && $page->isUserNormal($page->getLoggedInUser())) |
{ |
if (isset($accessID) && $page->isUserAdmin($page->getLoggedInUser())) |
{ |
$page->query('UPDATE Users SET AccessID = "' . $accessID . '" WHERE ID = ' . $userID); |
$page->query('UPDATE Users SET AccessID = "' . $accessID . '" WHERE ID = "' . $userID . '"'); |
} |
if (!empty($password)) |
{ |
$page->query('UPDATE Users SET Password = "' . sha1($password) . '" WHERE ID = ' . $userID); |
$page->query('UPDATE Users SET Password = "' . sha1($password) . '" WHERE ID = "' . $userID . '"'); |
} |
if (!empty($email)) |
{ |
$page->query('UPDATE Users SET EmailAddress = "' . $email . '" WHERE ID = ' . $userID); |
$page->query('UPDATE Users SET EmailAddress = "' . $email . '" WHERE ID = "' . $userID . '"'); |
} |
if (!empty($name)) |
{ |
$page->query('UPDATE Users SET Name = "' . $name . '" WHERE ID = ' . $userID); |
$page->query('UPDATE Users SET Name = "' . $name . '" WHERE ID = "' . $userID . '"'); |
} |
} |
else |
/admin/all-blog-posts.php |
---|
27,24 → 27,28 |
$ids = $page->findIDs('BlogPosts', 'ORDER BY DatePosted DESC'); |
for ($i = 0; $i < count($ids); $i++) |
{ |
$post = $page->getBlogPost($ids[$i]); |
write('<tr>'); |
write('<td><a href="../blog/edit-post.php?id=' . $post->ID . '">' . $post->ID . '</a></td>'); |
if ($post->parent == -1) |
$id_str = $ids[$i]; |
if (!empty($id_str)) |
{ |
write('<td style="color: #444444;">No Parent</td>'); |
$post = $page->getBlogPost($id_str); |
write('<tr>'); |
write('<td><a href="../blog/edit-post.php?id=' . $post->ID . '">' . $post->ID . '</a></td>'); |
if ($post->parent == -1) |
{ |
write('<td style="color: #444444;">No Parent</td>'); |
} |
else |
{ |
write('<td>' . $post->parent->title . '</td>'); |
} |
write('<td><a href="account.php?id=' . $post->author->ID . '">' . $post->author->name . '</a></td>'); |
write('<td>' . $post->title . '</td>'); |
write('<td>' . str_replace("\n", '<br />', $post->content) . '</td>'); |
write('<td>' . date('j/m/Y H:i', $post->datePosted) . ' <a href="nowify.php?id=' . $post->ID . '">Nowify</a></td>'); |
write('<td>' . $post->category . '</td>'); |
write('<td>' . $post->spam . '</td>'); |
write('</tr>'); |
} |
else |
{ |
write('<td>' . $post->parent->title . '</td>'); |
} |
write('<td><a href="account.php?id=' . $post->author->ID . '">' . $post->author->name . '</a></td>'); |
write('<td>' . $post->title . '</td>'); |
write('<td>' . str_replace("\n", '<br />', $post->content) . '</td>'); |
write('<td>' . date('j/m/Y H:i', $post->datePosted) . '</td>'); |
write('<td>' . $post->category . '</td>'); |
write('<td>' . $post->spam . '</td>'); |
write('</tr>'); |
} |
write('</table>'); |
/admin/account.php |
---|
11,7 → 11,7 |
$userID = $page->getGetID(); |
$user = $page->getUserByID($userID); |
if (($page->getLoggedInUser()->ID == $userID || $page->isUserAdmin($page->getLoggedInUser())) && $user) |
if (($page->getLoggedInUser()->ID == $userID || $page->isUserAdmin($page->getLoggedInUser())) && $user && $page->isUserNormal($page->getLoggedInUser())) |
{ |
?> |
/admin/index.php |
---|
9,7 → 9,14 |
$page->checkLoggedIn(); |
$user = $page->getLoggedInUser(); |
write('<h4><a href="account.php?id=' . $user->ID. '">Manage Account</a></h4>'); |
if ($page->isUserNormal($user)) |
{ |
write('<h4><a href="account.php?id=' . $user->ID. '">Manage Account</a></h4>'); |
} |
else |
{ |
$page->drawError('You do not have permission to access this page.'); |
} |
if ($page->isUserAdmin($user)) |
{ |
/projects/edit-project-do.php |
---|
24,30 → 24,30 |
{ |
if (!empty($title)) |
{ |
$page->query('UPDATE Projects SET Title = "' . $title . '" WHERE ID = ' . $project->ID); |
$page->query('UPDATE Projects SET Title = "' . $title . '" WHERE ID = "' . $project->ID . '"'); |
} |
if (!empty($description)) |
{ |
$page->query('UPDATE Projects SET Description = "' . $description . '" WHERE ID = ' . $project->ID); |
$page->query('UPDATE Projects SET Description = "' . $description . '" WHERE ID = "' . $project->ID . '"'); |
} |
if (!empty($logoURL)) |
{ |
$page->query('UPDATE Projects SET LogoURL = "' . $logoURL . '" WHERE ID = ' . $project->ID); |
$page->query('UPDATE Projects SET LogoURL = "' . $logoURL . '" WHERE ID = "' . $project->ID . '"'); |
} |
if (!empty($websiteURL)) |
{ |
$page->query('UPDATE Projects SET WebsiteURL = "' . $websiteURL . '" WHERE ID = ' . $project->ID); |
$page->query('UPDATE Projects SET WebsiteURL = "' . $websiteURL . '" WHERE ID = "' . $project->ID . '"'); |
} |
if (!empty($downloadURL)) |
{ |
$page->query('UPDATE Projects SET DownloadURL = "' . $downloadURL . '" WHERE ID = ' . $project->ID); |
$page->query('UPDATE Projects SET DownloadURL = "' . $downloadURL . '" WHERE ID = "' . $project->ID . '"'); |
} |
if (!empty($latestVersion)) |
{ |
$page->query('UPDATE Projects SET LatestVersion = "' . $latestVersion . '" WHERE ID = ' . $project->ID); |
$page->query('UPDATE Projects SET LatestVersion = "' . $latestVersion . '" WHERE ID = "' . $project->ID . '"'); |
} |
$page->query('UPDATE Projects SET LastUpdate = NOW() WHERE ID = ' . $project->ID); |
$page->query('UPDATE Projects SET LastUpdate = NOW() WHERE ID = "' . $project->ID . '"'); |
$page->redirect('index.php'); |
} |
/projects/add-project-do.php |
---|
25,7 → 25,7 |
if ($page->isUserGM($user)) |
{ |
$page->query('INSERT INTO Projects VALUES (0, ' . $user->ID . ', "' . $title . '", "' . $description . '", "' . $logoURL . '", "' . $downloadURL . '", "' . $websiteURL . '", "' . $latestVersion . '", NOW())'); |
$page->query('INSERT INTO Projects VALUES (0, "' . $user->ID . '", "' . $title . '", "' . $description . '", "' . $logoURL . '", "' . $downloadURL . '", "' . $websiteURL . '", "' . $latestVersion . '", NOW())'); |
$page->redirect('index.php'); |
} |
else |
/projects/delete-project-do.php |
---|
10,7 → 10,7 |
if (($page->isUserAdmin($page->getLoggedInUser()) || $page->getLoggedInUser()->ID == $project->author->ID) && $project) |
{ |
$page->query('DELETE FROM Projects WHERE ID = ' . $id); |
$page->query('DELETE FROM Projects WHERE ID = "' . $id . '"'); |
$page->redirect('index.php'); |
} |
else |
/404.php |
---|
1,15 → 1,14 |
<?php |
header('Status: 404 Not Found'); |
require '_taios.php'; |
$page = new Taios_Page('404'); |
$page = new Taios_Page('404 - Page not found', '/'); |
$page->drawHeader(); |
write('<h3>Pages</h3>'); |
$page->drawMenuItem('Biggles', '/~biggles/'); |
$page->drawMenuItem('Freddie', '/~freddie/'); |
$page->drawMenuItem('Muzer', '/~muzer/'); |
$page->drawMenuItem('Sh4rk', '/~szabot/'); |
$page->drawMenuItem('Tom', '/~tom/'); |
$page->drawMenuItem('FredFace', '~freddie/'); |
$page->drawMenuItem('Muzer', '~muzer/'); |
$page->drawMiddle(); |
?> |
23,7 → 22,11 |
<?php |
$page->drawMenuItem('Tim32 Homepage', 'index.php'); |
$page->drawMenuItem('Youfail.org', 'http://youfail.org'); |
?> |
<iframe src="http://notfound-static.fwebservices.be/404/index.html?&key=30aca9cedc0df2682afc4e195eedb1e2" width="100%" height="650" frameborder="0"></iframe> |
<?php |
$page->drawFooter(); |
?> |
/index.php |
---|
4,33 → 4,35 |
$page = new Taios_Page('Home'); |
$page->drawHeader(); |
write('<h3>Pages</h3>'); |
$page->drawMenuItem('Biggles', '/~biggles/'); |
$page->drawMenuItem('Freddie (FredFace)', '/~freddie/'); |
$page->drawMenuItem('Muzer', '/~muzer/'); |
$page->drawMenuItem('Sh4rk', '/~szabot/'); |
$page->drawMenuItem('Tom (TomMan)', '/~tom/'); |
$page->drawMiddle(); |
?> |
<p class="bold">Welcome to Tim32!</p> |
<p>Tim32 is a 10 year-old laptop running Ubuntu Server Edition 10.04.</p> |
<?php |
write('<p>Tim32 is a ' . (date("Y") - 2000) . '-year-old laptop running Ubuntu Server Edition 10.04.</p>'); |
?> |
<p>By using this website, you hereby accept cookies being stored on your computer.</p> |
<br /> |
<h3>Latest Blog Posts</h3> |
<h3 title="Take the Tim32 challenge: http://tim32.org/challenge/">Latest Blog Posts</h3> |
<p><a href="blog/rss.php">Rss Feed</a></p> |
<?php |
$ids = $page->findIDs('BlogPosts', 'WHERE ParentID = -1 ORDER BY DatePosted DESC'); |
for ($i = 0; $i < 5 && $i < count($ids); $i++) |
$ids = $page->findIDs('BlogPosts', 'WHERE ParentID = -1 AND Category != "Drafts" ORDER BY DatePosted DESC'); |
for ($i = 0; $i < 4 && $i < count($ids); $i++) |
{ |
$id = $ids[$i]; |
$post = $page->getBlogPost($id); |
write('<h4><a href="blog/post.php?id=' . $post->ID . '">' . $post->title. '</a></h4>'); |
$comment_count = 0; |
$ids2 = $page->findIDs('BlogPosts', 'WHERE ParentID="' . $id . '"'); |
write('<a href="blog/post.php?id=' . $id . '"><h3>' . $post->title. '</h3></a>'); |
write('<h5 style="color: #666666;">Posted On ' . date('l j F Y', $post->datePosted) . ' by ' . $post->user->name . ' (' . $post->user->username . ')</h5>'); |
write('<p>' . $page->replaceBBCode($post->content) . '</p>'); |
write('<h5 style="color: #666666;">' . count($ids2) . ' Comments</h5>'); |
write('<br />'); |
} |
/login.php |
---|
9,6 → 9,7 |
?> |
<p class="bold">Here you can login to Tim32 using your Tim32 account.</p> |
<p>By using this website, you hereby accept cookies being stored on your computer.</p> |
<br /> |
<?php |
21,6 → 22,12 |
?> |
<form action="login-do.php" method="POST"> |
<?php |
$redirurl = $_SERVER['HTTP_REFERER']; |
if($_GET['oldurl']) |
$redirurl = $_GET['oldurl']; |
write('<input type="hidden" name="oldurl" value="' . $redirurl . '" />'); |
?> |
<table> |
<tr> |
<td class="bold">Username: </td> |
/_taios.php |
---|
34,12 → 34,13 |
write('<head>'); |
write('<meta http-equiv="Content-Type" content="text/html;charset=utf-8">'); |
write('<title>Tim32 · ' . $this->title . '</title>'); |
write('<link href="' . $this->url . 'styles.css" rel="stylesheet" type="text/css" media="screen">'); |
write('<link href="' . $this->url . 'styles.css" rel="stylesheet" type="text/css" media="screen" />'); |
write('<link rel="shortcut icon" href="' . $this->url . 'data/favicon.png" />'); |
write('</head>'); |
write('<body>'); |
write('<div class="sidebar">'); |
write('<div class="sidebar-header">'); |
write('<h1>Tim32</h1>'); |
write('<a href="' . $this->url . '"><h1>Tim32</h1></a>'); |
write('</div>'); |
write('<div class="sidebar-menu">'); |
$this->drawMenuItem('Home', 'index.php'); |
49,11 → 50,19 |
$this->drawMenuItem('Wiki', 'wiki/'); |
$this->drawMenuItem('Photos', 'photos/'); |
write('<br />'); |
if ($this->isLoggedIn()) |
if ($this->isLoggedIn() && $this->isUserNormal($this->getLoggedInUser())) |
{ |
$this->drawMenuItem('Administration', 'admin/'); |
$this->drawMenuItem('Logout', 'logout-do.php'); |
} |
else if ($this->isLoggedIn()) |
{ |
$this->drawMenuItem('Logout', 'logout-do.php'); |
if ($this->getLoggedInUser()->username != "cake") |
$this->drawMenuItem('You are banned', NULL); |
else |
$this->drawMenuItem('<span style="color:#032865">#undefined</span>', '/challenge/cakefolder'); |
} |
else |
{ |
$this->drawMenuItem('Login', 'login.php'); |
60,7 → 69,6 |
$this->drawMenuItem('Register', 'register.php'); |
} |
write('<br />'); |
$this->drawnHeader = true; |
} |
} |
67,7 → 75,14 |
function drawMenuItem($t, $u) |
{ |
write('<p><a href="' . $this->url . $u . '">' . $t . '</a></p>'); |
if($u == NULL) |
{ |
write('<p style="color:red">' . $t . '</p>'); |
} |
else |
{ |
write('<p><a href="' . $this->url . $u . '">' . $t . '</a></p>'); |
} |
} |
function drawMiddle() |
78,7 → 93,7 |
write('</div>'); |
write('</div>'); |
write('<div class="content">'); |
write('<h2>' . $this->title . '</h2>'); |
write('<a href="./"><h2>' . $this->title . '</h2></a>'); |
$this->drawnMiddle = true; |
} |
88,6 → 103,7 |
{ |
if (!$this->drawnFooter) |
{ |
write('<br /><p class="copyright">Tim32</p>'); |
write('</div>'); |
write('</body>'); |
write('</html>'); |
137,7 → 153,7 |
write('</p><br />'); |
} |
$ids = $this->findIDs('BlogPosts', 'WHERE ParentID=' . $id); |
$ids = $this->findIDs('BlogPosts', 'WHERE ParentID="' . $id . '"'); |
for ($i = 0; $i < count($ids); $i++) |
{ |
write('<div class="indent">'); |
154,7 → 170,7 |
for ($i = 0; $i < count($ids); $i++) |
{ |
$cat = $this->getBlogPost($ids[$i])->category; |
if (!in_array($cat, $cats)) |
if (!in_array($cat, $cats) && ($cat != "Drafts" || $this->isUserGM($this->getLoggedInUser()))) |
{ |
array_push($cats, $cat); |
} |
169,11 → 185,26 |
function replaceBBCode($str) |
{ |
$newstr = str_replace("<", "[", $str); |
$newstr = str_replace(">", "]", $newstr); |
$newstr = str_replace("\n", '</p><p>', $newstr); |
/*$newstrarray = explode("\n", $str); |
$newstr = ""; |
foreach ($newstrarray as $line) |
{ |
if ($line == "\n" || $line == " \n" || $line == "\n " || $line == "\n\r") |
{ |
$line = "</p><p>"; |
} |
$newstr .= ($line . "\n"); |
}*/ |
$newstr = $str; |
$newstr = str_replace("<", "<", $newstr); |
$newstr = str_replace(">", ">", $newstr); |
$newstr = str_replace("\n", "<br />", $newstr); |
$newstr = str_replace("\\'", "'", $newstr); |
$newstr = str_replace("\\\"",'"', $newstr); |
$newstr = str_replace(' ', ' ', $newstr); |
$newstr = str_replace(' :)', ' <img src="' . $this->url . 'data/smilies/face-smile.png" class="smiley" />', $newstr); |
/* $newstr = str_replace(' :)', ' <img src="' . $this->url . 'data/smilies/face-smile.png" class="smiley" />', $newstr); |
$newstr = str_replace(' :p', ' <img src="' . $this->url . 'data/smilies/face-raspberry.png" class="smiley" />', $newstr); |
$newstr = str_replace(' :P', ' <img src="' . $this->url . 'data/smilies/face-raspberry.png" class="smiley" />',$newstr); |
$newstr = str_replace(' :|', ' <img src="' . $this->url . 'data/smilies/face-plain.png" class="smiley" />',$newstr); |
184,7 → 215,7 |
$newstr = str_replace(' :o', ' <img src="' . $this->url . 'data/smilies/face-surprise.png" class="smiley" />',$newstr); |
$newstr = str_replace(' :O', ' <img src="' . $this->url . 'data/smilies/face-surprise.png" class="smiley" />',$newstr); |
$newstr = str_replace(' :/', ' <img src="' . $this->url . 'data/smilies/face-uncertain.png" class="smiley" />',$newstr); |
$newstr = str_replace(' ;)', ' <img src="' . $this->url . 'data/smilies/face-wink.png" class="smiley" />',$newstr); |
$newstr = str_replace(' ;)', ' <img src="' . $this->url . 'data/smilies/face-wink.png" class="smiley" />',$newstr);*/ |
$bbcode = array( |
'/\[b\](.+?)\[\/b\]/is', |
191,8 → 222,13 |
'/\[i\](.+?)\[\/i\]/is', |
'/\[u\](.+?)\[\/u\]/is', |
'/\[url\](.+?)\[\/url\]/is', |
'/\[url="?(.+?)"?\](.+?)\[\/url\]/is', |
'/\[code\](.+?)\[\/code\]/is', |
'/\[img\](.+?)\[\/img\]/is' |
'/\[img\](.+?)\[\/img\]/is', |
'/\[ul\](.+?)\[\/ul\]/is', |
'/\[ol\](.+?)\[\/ol\]/is', |
'/\[li\](.+?)\[\/li\]/is', |
'/\[mono\](.+?)\[\/mono\]/is' |
); |
$html = array( |
200,8 → 236,13 |
'<i>$1</i>', |
'<u>$1</u>', |
'<a href="$1">$1</a>', |
'<div class="code">$1</div>', |
'<img src="$1" />' |
'<a href="$1">$2</a>', |
'</p><div class="code">$1</div><p>', |
'<img src="$1" />', |
'<ul>$1</ul>', |
'<ol>$1</ol>', |
'<li>$1</li>', |
'<span style="font-family: Droid Sans Mono, monospace, fixed; margin-left: 1em; margin-right: 1em;">$1</span>', |
); |
$newstr = preg_replace($bbcode, $html, $newstr); |
273,6 → 314,37 |
return false; |
} |
function isUserBanned() |
{ |
if ($this->isLoggedIn()) |
{ |
if ($this->getLoggedInUser()->accessID >= 3) |
{ |
return true; |
} |
} |
return false; |
} |
function checkChallengeStatus($challengeID, $previous, $next) |
{ |
$currentChallengeID = $this->getLoggedInUser()->challengeID; |
if (!$this->isLoggedIn()) |
{ |
$this->redirect('index.php'); |
} |
else if ($currentChallengeID > $challengeID) |
{ |
$this->redirect($next . '.php'); |
} |
else if ($currentChallengeID < $challengeID) |
{ |
$this->redirect($previous . '.php'); |
} |
} |
function checkLoggedIn() |
{ |
if (!$this->isLoggedIn()) |
307,7 → 379,7 |
function getUserByID($id) |
{ |
$result = $this->query('SELECT * FROM Users WHERE ID = ' . $id); |
$result = $this->query('SELECT * FROM Users WHERE ID = "' . $id . '"'); |
while ($row = mysql_fetch_array($result)) |
{ |
$user = new User; |
349,7 → 421,7 |
function getBlogPost($id) |
{ |
$result = $this->query('SELECT * FROM BlogPosts WHERE ID = ' . $id); |
$result = $this->query('SELECT * FROM BlogPosts WHERE ID = "' . $id . '"'); |
while ($row = mysql_fetch_array($result)) |
{ |
$post = new BlogPost; |
378,7 → 450,7 |
function getProject($id) |
{ |
$result = $this->query('SELECT * FROM Projects WHERE ID = ' . $id); |
$result = $this->query('SELECT * FROM Projects WHERE ID = "' . $id . '"'); |
while ($row = mysql_fetch_array($result)) |
{ |
$project = new Project; |
401,7 → 473,7 |
function getForumCategory($id) |
{ |
$result = $this->query('SELECT * FROM ForumCategories WHERE ID = ' . $id); |
$result = $this->query('SELECT * FROM ForumCategories WHERE ID = "' . $id . '"'); |
while ($row = mysql_fetch_array($result)) |
{ |
$f = new ForumCategory; |
419,7 → 491,7 |
function getForumPost($id) |
{ |
$result = $this->query('SELECT * FROM ForumPosts WHERE ID = ' . $id); |
$result = $this->query('SELECT * FROM ForumPosts WHERE ID = "' . $id . '"'); |
while ($row = mysql_fetch_array($result)) |
{ |
$f = new ForumPost; |
441,13 → 513,13 |
function delBlogPost($id) |
{ |
$ids = $this->findIDs('BlogPosts', 'WHERE ParentID=' . $id); |
$ids = $this->findIDs('BlogPosts', 'WHERE ParentID="' . $id . '"'); |
for ($i = 0; $i < count($ids); $i++) |
{ |
$this->delBlogPost($ids[$i]); |
} |
$this->query('DELETE FROM BlogPosts WHERE ID=' . $id); |
$this->query('DELETE FROM BlogPosts WHERE ID="' . $id . '"'); |
} |
function getGetID() |
482,6 → 554,7 |
public $password; |
public $emailAddress; |
public $name; |
public $challengeID; |
} |
503,6 → 576,8 |
public $author; |
public $title; |
public $description; |
public $logoURL; |
public $downloadURL; |
public $websiteURL; |
516,6 → 591,7 |
public $parent; |
public $title; |
public $description; |
} |
class ForumPost |
/styles.css |
---|
1,12 → 1,13 |
body { |
background-color: #FFFFFF; |
background-color: #032865; |
/* background-color: #FFFFFF;*/ |
color: #000000; |
font-family: Droid Sans, Tahoma, sans-serif; |
font-size: 11pt; |
font-size: 10pt; |
margin: 0px; |
padding: 0px; |
height: 100%; |
} |
h1 { |
46,7 → 47,7 |
} |
p, table, span { |
font-size: 11pt; |
font-size: 10pt; |
margin: 8px; |
margin-left: 16px; |
} |
91,13 → 92,17 |
} |
.sidebar { |
top: 0px; |
left: 0px; |
position: absolute; |
float: left; |
width: 146px; |
width: 156px; |
padding: 0px; |
padding-left: 32px; |
border-right: 0px solid #000089; |
background-color: #032865; |
border-right: 2px solid #000049; |
color: #FFFFFF; |
/* height: 100%;*/ |
z-index: 50; |
} |
.sidebar-header { |
128,9 → 133,17 |
.content { |
top: 0px; |
left: 180px; |
position: absolute; |
margin-right: 32px; |
/* left: 0px;*/ |
margin-left: 190px; |
/* padding-top: 0px*/ |
/* position: absolute;*/ |
/* margin-right: 32px;*/ |
background-color: #FFFFFF; |
height: 100%; |
height: auto !important; |
width: auto; |
display: block; |
/* display: inline-block;*/ |
} |
.bold { |
137,6 → 150,10 |
font-weight: bold; |
} |
.italic { |
font-style: italic; |
} |
.indent { |
margin-left: 14px; |
border-left: 1px solid #BBBBBB; |
143,11 → 160,25 |
} |
.code { |
border: 1px solid #333333; |
border-top: 2px solid #999999; |
border-bottom: 2px solid #999999; |
margin: 14px; |
background-color: #DDDDDD; |
font-family: Droid Sans Mono, Monospace, Fixed; |
font-size: 10pt; |
line-height: 80%; |
} |
.copyright { |
color: #BBBBBB; |
text-align: left; |
font-size: 9pt; |
} |
.copyright a { |
color: #BBBBBB; |
} |
.recaptchatable .recaptcha_image_cell, #recaptcha_table { |
background-color: #4B9DE0 !important; //reCaptcha widget background color |
} |
/forums/add-post-do.php |
---|
20,6 → 20,11 |
$title = $_POST['title']; |
$content = $_POST['content']; |
if (!$page->isUserNormal($page->getLoggedInUser())) |
{ |
$page->redirect('add-post.php?error=You do not have permission to access this page'); |
} |
if (empty($title)) |
{ |
$page->redirect('add-post.php?error=No Title Specified'); |
29,7 → 34,7 |
$page->redirect('add-post.php?error=No Content Specified'); |
} |
$page->query('INSERT INTO ForumPosts VALUES (0, ' .$page->getLoggedInUser()->ID . ', ' . $categoryID . ', ' . $parentID . ', "' . $title . '", "' . $content . '", NOW(), FALSE)'); |
$page->query('INSERT INTO ForumPosts VALUES (0, "' .$page->getLoggedInUser()->ID . '", "' . $categoryID . '", "' . $parentID . '", "' . $title . '", "' . $content . '", NOW(), FALSE)'); |
$page->redirect('index.php?parentID=' . $categoryID); |
?> |
/forums/delete-category-do.php |
---|
10,7 → 10,7 |
if ($page->isUserAdmin($page->getLoggedInUser())) |
{ |
$page->query('DELETE FROM ForumCategories WHERE ID = ' . $id); |
$page->query('DELETE FROM ForumCategories WHERE ID = "' . $id . '"'); |
$page->redirect('index.php'); |
} |
else |
/forums/edit-category-do.php |
---|
18,7 → 18,7 |
$page->redirect('edit-category.php?error=No Title Specified'); |
} |
$page->query('UPDATE ForumCategories SET Title = "' . $title . '", Description = "' . $description . '" WHERE ID = ' . $id); |
$page->query('UPDATE ForumCategories SET Title = "' . $title . '", Description = "' . $description . '" WHERE ID = "' . $id . '"'); |
$page->redirect('index.php'); |
} |
else |
/forums/add-category-do.php |
---|
22,7 → 22,7 |
$page->redirect('add-category.php?error=No Title Specified'); |
} |
$page->query('INSERT INTO ForumCategories VALUES (0, ' . $parentID . ', "' . $title . '", "' . $description . '")'); |
$page->query('INSERT INTO ForumCategories VALUES (0, "' . $parentID . '", "' . $title . '", "' . $description . '")'); |
$page->redirect('index.php?parentID=' . $parentID); |
} |
else |
/forums/delete-post-do.php |
---|
9,9 → 9,9 |
$id = $page->getGetID(); |
$post = $page->getForumPost($id); |
if (($page->isUserAdmin($page->getLoggedInUser()) || $post->author->ID == $page->getLoggedInUser()->ID) && $post) |
if (($page->isUserAdmin($page->getLoggedInUser()) || $post->author->ID == $page->getLoggedInUser()->ID) && $post && $page->isUserNormal($page->getLoggedInUser())) |
{ |
$page->query('DELETE FROM ForumPosts WHERE ID = ' . $id); |
$page->query('DELETE FROM ForumPosts WHERE ID = "' . $id . '"'); |
$page->redirect('index.php'); |
} |
else |
/forums/post.php |
---|
24,7 → 24,7 |
} |
write('<br />'); |
$ids = $page->findIDs('ForumPosts', 'WHERE ParentID = ' . $id . ' ORDER BY DatePosted ASC'); |
$ids = $page->findIDs('ForumPosts', 'WHERE ParentID = "' . $id . '" ORDER BY DatePosted ASC'); |
for ($i = 0; $i < count($ids); $i++) |
{ |
$forumPost = $page->getForumPost($ids[$i]); |
/forums/index.php |
---|
24,7 → 24,7 |
{ |
write('<a href="index.php?parentID=-1">Back to root</a>'); |
} |
if ($page->isLoggedIn()) |
if ($page->isLoggedIn() && $page->isUserNormal($page->getLoggedInUser())) |
{ |
if ($parentID != -1) |
{ |
42,7 → 42,7 |
} |
write('</p><br />'); |
$ids = $page->findIDs('ForumCategories', 'WHERE ParentID = ' . $parentID . ' ORDER BY Title ASC'); |
$ids = $page->findIDs('ForumCategories', 'WHERE ParentID = "' . $parentID . '" ORDER BY Title ASC'); |
if (count($ids) >= 1) |
{ |
61,7 → 61,7 |
write('<br />'); |
} |
$ids = $page->findIDs('ForumPosts', 'WHERE CategoryID = ' . $parentID . ' AND ParentID = -1 ORDER BY Title ASC'); |
$ids = $page->findIDs('ForumPosts', 'WHERE CategoryID = "' . $parentID . '" AND ParentID = -1 ORDER BY Title ASC'); |
if (count($ids) >= 1) |
{ |
/forums/add-post.php |
---|
20,7 → 20,7 |
$categoryID = -1; |
} |
if ($page->isLoggedIn()) |
if ($page->isLoggedIn() && $page->isUserNormal($page->getLoggedInUser)) |
{ |
if (isset($_GET['error'])) |
/login-do.php |
---|
8,19 → 8,24 |
$password = $_POST['password']; |
$remember = $_POST['remember'] == 'yes'; |
if(strpos($_POST['oldurl'], "tim32.org") === FALSE || strpos($_POST['oldurl'], "login") !== FALSE) |
$redirurl = "http://tim32.org"; |
else |
$redirurl = $_POST['oldurl']; |
if (empty($username)) |
{ |
$page->redirect('login.php?error=No Username Specified'); |
$page->redirect('login.php?error=No Username Specified&oldurl=' . urlencode($redirurl)); |
} |
if (empty($password)) |
{ |
$page->redirect('login.php?error=No Password Specified'); |
$page->redirect('login.php?error=No Password Specified&oldurl=' . urlencode($redirurl)); |
} |
$user = $page->getUserByUsername($username); |
if (!$user || $user->password != sha1($password)) |
{ |
$page->redirect('login.php?error=Incorrect Username or Password'); |
$page->redirect('login.php?error=Incorrect Username or Password&oldurl=' . urlencode($redirurl)); |
} |
$expires = -1; |
32,6 → 37,6 |
setcookie('Tim32_Login', $user->username . '|~|' . $user->password, $expires, '/'); |
$page->redirect('index.php'); |
$page->redirect($redirurl); |
?> |
/wiki/pages/Index.txt |
---|
File deleted |
Property changes: |
Deleted: svn:executable |
## -1 +0,0 ## |
-* |
\ No newline at end of property |
Index: wiki/index.php |
=================================================================== |
--- wiki/index.php (revision 356) |
+++ wiki/index.php (revision 484) |
@@ -1,5 +1,12 @@ |
+function endswith($string, $test) { |
+ $strlen = strlen($string); |
+ $testlen = strlen($test); |
+ if ($testlen > $strlen) return false; |
+ return substr_compare($string, $test, -$testlen) === 0; |
+} |
+ |
require '../_taios.php'; |
$pageName = $_GET['page']; |
@@ -9,14 +16,33 @@ |
} |
$page = new Taios_Page('Wiki - ' . $pageName, '../'); |
+ |
+if (isset($_GET['random'])) |
+{ |
+ $results = array(); |
+ $handler = opendir('pages/'); |
+ while ($file = readdir($handler)) |
+ { |
+ if ($file != '.' && $file != '..' && endswith($file, ".txt")) |
+ { |
+ $results[] = substr($file, 0, count($file) - 5); |
+ } |
+ } |
+ |
+ $index = rand() % count($results); |
+ $result = $results[$index]; |
+ $page->redirect('index.php?page=' . $result); |
+} |
+ |
$page->drawHeader(); |
+write('Wiki'); |
+$page->drawMenuItem('Index', 'wiki/index.php'); |
+$page->drawMenuItem('Random Page', 'wiki/index.php?random'); |
$page->drawMiddle(); |
-write(' The wiki is still under construction. '); |
- |
if ($page->isUserGM($page->getLoggedInUser())) |
{ |
- write(' '); |
+ write(' '); |
} |
$filename = 'pages/' . $pageName . '.txt'; |
/data/favicon.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/data/favicon.png | |
---|---|
Property changes: | |
Added: svn:mime-type | |
## -0,0 +1 ## | |
+application/octet-stream | |
\ No newline at end of property | |
Index: register.php | |
=================================================================== | |
--- register.php (revision 356) | |
+++ register.php (revision 484) | |
@@ -42,11 +42,11 @@ | |
- | Email Address | :
+ | Email Address: |
- | Name | :
+ | Name: |
@@ -54,10 +54,16 @@ | |
+ | 3 + 9 * 8 |
+ | |
+ | |
+ | |
By registering to Tim32, you agree to be reasonable in all your suggestion/accusations and advoid subjectivity. Suvbjective posts/comments are subject to removal by a Subject of the Tim32 Admins.
/register-do.php |
---|
10,6 → 10,7 |
$password2 = $_POST['password2']; |
$email = $_POST['email']; |
$name = $_POST['name']; |
$maths = $_POST['maths']; |
if (empty($username)) |
{ |
27,6 → 28,10 |
{ |
$page->redirect('register.php?error=Passwords do not match'); |
} |
if ($maths != '75') |
{ |
$page->redirect('register.php?error=Incorrect maths answer'); |
} |
$resp = recaptcha_check_answer(RECAPTCHA_PRIVATEKEY, $_SERVER["REMOTE_ADDR"], |
$_POST["recaptcha_challenge_field"], |
/photos/album.php |
---|
28,8 → 28,6 |
} |
$page = new Taios_Page('Photo Albums', '../'); |
$page->drawHeader(); |
$page->drawMiddle(); |
$dirName = $_GET['dir']; |
if (empty($dirName)) |
37,6 → 35,11 |
$page->redirect('index.php'); |
} |
$page->drawHeader(); |
write('<br /><h3>RSS</h3>'); |
$page->drawMenuItem('RSS Feed', 'photos/rss.php?dir=' . $dirName); |
$page->drawMiddle(); |
write('<p class="bold"><a href="index.php">Back to Photos</a></p><br />'); |
if (file_exists("albums/" . $dirName . "/description.txt")) |
47,33 → 50,64 |
write('<table>'); |
write('<tr>'); |
$directory = "albums/" . $dirName . "/"; |
$sortOrder = "newestFirst"; |
$results = array(); |
$handler = opendir($directory); |
while ($file = readdir($handler)) |
{ |
if ($file != '.' && $file != '..' && $file != "robots.txt" && $file != ".htaccess" && getimagesize($directory . $file)) |
{ |
$currentModified = filectime($directory . $file); |
$file_names[] = $file; |
$file_dates[] = $currentModified; |
} |
} |
closedir($handler); |
if ($sortOrder == "newestFirst") |
{ |
arsort($file_dates); |
} |
else |
{ |
asort($file_dates); |
} |
$file_names_Array = array_keys($file_dates); |
foreach ($file_names_Array as $idx => $name) $name=$file_names[$name]; |
$file_dates = array_merge($file_dates); |
$i = 0; |
$indexInArray = 0; |
$i = 0; |
$dir = dir('albums/' . $dirName); |
while (($file = $dir->read()) !== false) |
foreach ($file_dates as $$file_dates) |
{ |
if (getimagesize('albums/' . $dirName . '/' . $file)) |
$j = $file_names_Array[$indexInArray]; |
$file = $file_names[$j]; |
if ($i >= 3) |
{ |
if ($file[0] != '.') |
{ |
if ($i >= 3) |
{ |
write('</tr><tr>'); |
$i = 0; |
} |
write('</tr><tr>'); |
$i = 0; |
} |
$filename = 'albums/' . $dirName . '/' . $file; |
$size = getImageSizes($filename, 300, 300); |
write('<td><a href="' . $filename . '"><img width="' . $size[0] . '" height="' . $size[1] . '" src="' . $filename . '" /></a></td>'); |
$filename = $directory . $file; |
$size = getImageSizes($filename, 280, 260); |
write('<td><a href="' . str_replace(" ", "%20", $filename) . '"><img width="' . $size[0] . '" height="' . $size[1] . '" src="' . str_replace(" ", "%20", $filename) . '" /></a></td>'); |
$i++; |
} |
} |
$i++; |
$indexInArray++; |
} |
write('</tr>'); |
write('<table>'); |
write('</table>'); |
$page->drawFooter(); |
/photos/rss.php |
---|
0,0 → 1,76 |
<?php |
require '../_taios.php'; |
header("Content-type: application/rss+xml"); |
$page = new Taios_Page('Photos RSS Feed', '../'); |
$dirName = $_GET['dir']; |
if (empty($dirName)) |
{ |
$dirName = "Lassitor"; |
} |
write('<?xml version="1.0" encoding="UTF-8" ?>'); |
write('<rss version="2.0">'); |
write('<channel>'); |
write('<title>Tim32 Photo RSS - ' . $dirName . '</title>'); |
write('<description>This is the RSS feed for the Tim32 Photos.</description>'); |
write('<link>http://tim32.org/photos/album.php?dir=' . $dirName . '</link>'); |
$directory = "albums/" . $dirName . "/"; |
$sortOrder = "newestFirst"; |
$results = array(); |
$handler = opendir($directory); |
while ($file = readdir($handler)) |
{ |
if ($file != '.' && $file != '..' && $file != "robots.txt" && $file != ".htaccess" && getimagesize($directory . $file)) |
{ |
$currentModified = filectime($directory . $file); |
$file_names[] = $file; |
$file_dates[] = $currentModified; |
} |
} |
closedir($handler); |
if ($sortOrder == "newestFirst") |
{ |
arsort($file_dates); |
} |
else |
{ |
asort($file_dates); |
} |
$file_names_Array = array_keys($file_dates); |
foreach ($file_names_Array as $idx => $name) $name=$file_names[$name]; |
$file_dates = array_merge($file_dates); |
$indexInArray = 0; |
foreach ($file_dates as $date) |
{ |
$j = $file_names_Array[$indexInArray]; |
$file = $file_names[$j]; |
$filename = $directory . $file; |
write('<item>'); |
write('<title>' . $file . '</title>'); |
write('<link>http://tim32.org/photos/' . str_replace(" ", "%20", $filename) . '</link>'); |
write('<guid>id_' . $file . '</guid>'); |
write('<pubDate>' . date('D, d M Y H:i:s O', $date). '</pubDate>'); |
write('<description><![CDATA[<img src="http://tim32.org/photos/' . str_replace(" ", "%20", $filename) . '" />]]></description>'); |
write('</item>'); |
$indexInArray++; |
} |
write('</channel>'); |
write('</rss>'); |
?> |