Subversion Repositories taios

Compare Revisions

Ignore whitespace Rev 83 → Rev 150

/_taios.php
112,17 → 112,22
}
}
function drawBlogPostTree($id)
function drawBlogPostTree($id, $first = false)
{
$post = $this->getBlogPost($id);
write('<a href="' . $this->url . 'blog/post.php?id=' . $id . '"><h3>' . $post->title. '</h3></a>');
if ($first)
write('<h3><a href="post.php?id=' . $id . '">' . $post->title. '</a> <a href="post.php?id=' . $post->parent->ID . '">^</a></h3>');
else
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>' . $post->content . '</p>');
write('<br />');
if ($this->isUserNormal($this->getLoggedInUser()))
{
write('<p class="bold"><a href="add-commend.php?id="' . $id . '">Add Comment</a></p>');
write('<br />');
echo '<p class="bold"><a href="add-post.php?id=' . $id . '">Add Comment</a>';
if ($this->isUserAdmin($this->getLoggedInUser()) || $this->getLoggedInUser() == $post->author->ID)
echo ' &middot <a href="del-post.php?id=' . $id . '">Delete Post</a>';
write('</p><br />');
}
 
$ids = $this->findIDs('BlogPosts', 'WHERE ParentID=' . $id);
154,7 → 159,45
$this->drawMenuItem($cats[$i], 'blog/index.php?cat=' . $cats[$i]);
}
}
function replaceBBCode($str)
{
$newstr = str_replace("\n", '</p><p>', $str);
$newstr = str_replace(' ', '&nbsp;&nbsp;', $newstr);
$newstr = str_replace(' :)', '<img src="' . $this->url . 'data/smilies/face-smile.png" style="vertical-align: middle;" />', $newstr);
$newstr = str_replace(' :p', '<img src="' . $this->url . 'data/smilies/face-raspberry.png" style="vertical-align: middle;" />', $newstr);
$newstr = str_replace(' :P', '<img src="' . $this->url . 'data/smilies/face-raspberry.png" style="vertical-align: middle;" />',$newstr);
$newstr = str_replace(' :|', '<img src="' . $this->url . 'data/smilies/face-plain.png" style="vertical-align: middle;" />',$newstr);
$newstr = str_replace(' :D', '<img src="' . $this->url . 'data/smilies/face-laugh.png" style="vertical-align: middle;" />',$newstr);
$newstr = str_replace(' =D', '<img src="' . $this->url . 'data/smilies/face-laugh.png" style="vertical-align: middle;" />',$newstr);
$newstr = str_replace(' :(', '<img src="' . $this->url . 'data/smilies/face-sad.png" style="vertical-align: middle;" />',$newstr);
$newstr = str_replace(' :0', '<img src="' . $this->url . 'data/smilies/face-surprise.png" style="vertical-align: middle;" />',$newstr);
$newstr = str_replace(' :o', '<img src="' . $this->url . 'data/smilies/face-surprise.png" style="vertical-align: middle;" />',$newstr);
$newstr = str_replace(' :O', '<img src="' . $this->url . 'data/smilies/face-surprise.png" style="vertical-align: middle;" />',$newstr);
$newstr = str_replace(' :/', '<img src="' . $this->url . 'data/smilies/face-uncertain.png" style="vertical-align: middle;" />',$newstr);
$newstr = str_replace(' ;)', '<img src="' . $this->url . 'data/smilies/face-wink.png" style="vertical-align: middle;" />',$newstr);
$bbcode = array(
'/\[b\](.+?)\[\/b\]/is',
'/\[i\](.+?)\[\/i\]/is',
'/\[u\](.+?)\[\/u\]/is',
'/\[url\](.+?)\[\/url\]/is',
'/\[code\](.+?)\[\/code\]/is'
);
 
$html = array(
'<b>$1</b>',
'<i>$1</i>',
'<u>$1</u>',
'<a href="$1">$1</a>',
'<div class="code">$1</div>'
);
 
$newstr = preg_replace($bbcode, $html, $newstr);
return $newstr;
}
 
function redirect($u)
{
header('Location: ' . $u);
308,9 → 351,10
{
$post->parent = $this->getBlogPost($row['ParentID']);
}
$post->user = $this->getUserByID($row['AuthorID']);
$post->author = $this->getUserByID($row['AuthorID']);
$post->user = $this->getUserByID($row['AuthorID']); // For some older pages
$post->title = $row['Title'];
$post->content = $row['Content'];
$post->content = $this->replaceBBCode($row['Content']);
$post->datePosted = strtotime($row['DatePosted']);
$post->category = $row['Category'];
$post->spam = $row['Spam'];
321,6 → 365,15
$this->drawError('Cannot find blog post, #' . $id);
}
function delBlogPost($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);
}
 
function getGetID()
{
$id = $_GET['id'];
/data/smilies/face-laugh.png
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
/data/smilies/face-laugh.png
Property changes:
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: data/smilies/face-plain.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: data/smilies/face-plain.png
===================================================================
--- data/smilies/face-plain.png (nonexistent)
+++ data/smilies/face-plain.png (revision 150)
/data/smilies/face-plain.png
Property changes:
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: data/smilies/face-sad.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: data/smilies/face-sad.png
===================================================================
--- data/smilies/face-sad.png (nonexistent)
+++ data/smilies/face-sad.png (revision 150)
/data/smilies/face-sad.png
Property changes:
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: data/smilies/face-uncertain.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: data/smilies/face-uncertain.png
===================================================================
--- data/smilies/face-uncertain.png (nonexistent)
+++ data/smilies/face-uncertain.png (revision 150)
/data/smilies/face-uncertain.png
Property changes:
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: data/smilies/face-wink.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: data/smilies/face-wink.png
===================================================================
--- data/smilies/face-wink.png (nonexistent)
+++ data/smilies/face-wink.png (revision 150)
/data/smilies/face-wink.png
Property changes:
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: data/smilies/face-raspberry.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: data/smilies/face-raspberry.png
===================================================================
--- data/smilies/face-raspberry.png (nonexistent)
+++ data/smilies/face-raspberry.png (revision 150)
/data/smilies/face-raspberry.png
Property changes:
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: data/smilies/face-surprise.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: data/smilies/face-surprise.png
===================================================================
--- data/smilies/face-surprise.png (nonexistent)
+++ data/smilies/face-surprise.png (revision 150)
/data/smilies/face-surprise.png
Property changes:
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: data/smilies/face-smile.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: data/smilies/face-smile.png
===================================================================
--- data/smilies/face-smile.png (nonexistent)
+++ data/smilies/face-smile.png (revision 150)
/data/smilies/face-smile.png
Property changes:
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: styles.css
===================================================================
--- styles.css (revision 83)
+++ styles.css (revision 150)
@@ -122,3 +122,11 @@
margin-left: 14px;
border-left: 1px solid #BBBBBB;
}
+
+.code {
+ border: 1px solid #333333;
+ background-color: #DDDDDD;
+ font-family: Droid Sans Mono, Monospace, Fixed;
+ font-size: 10pt;
+}
+
Index: 404.php
===================================================================
--- 404.php (nonexistent)
+++ 404.php (revision 150)
@@ -0,0 +1,22 @@
+
+
+require '_taios.php';
+
+$page = new Taios_Page('404');
+$page->drawHeader();
+write('

Pages

');
+$page->drawMenuItem('Biggles', '/~biggles/');
+$page->drawMenuItem('Freddie', '/~freddie/');
+$page->drawMenuItem('Muzer', '/~muzer/');
+$page->drawMenuItem('Sh4rk', '/~szabot/');
+$page->drawMenuItem('Tom', '/~tom/');
+$page->drawMiddle();
+
+?>
+
+

404 - Page not found

+

The page you requested could not be found.

+
+$page->drawFooter();
+
+?>
Index: blog/post-add.php
===================================================================
--- blog/post-add.php (revision 83)
+++ blog/post-add.php (nonexistent)
@@ -1,55 +0,0 @@
-
-
-require '../_taios.php';
-
-$page = new Taios_Page('Blog Posts', '../');
-
-if (isset($_POST['title']) && isset($_POST['content']) && isset($_POST['catagory']) && isset($_POST['parentID']))
-{
- $page->query('insert into BlogPosts VALUES(0, ' . $_POST['parentID'] . ', "' . $page->getLoggedInUser()->ID . '", "' . $_POST['title'] . '", "' . $_POST['content'] . '", NOW(), "' . $_POST['catagory'] . '", 0)');
- $page->redirect('index.php');
-}
-
-$page->drawHeader();
-$page->drawBlogCategoriesMenu();
-$page->drawMiddle();
-
-if ($page->isUserGM($page->getLoggedInUser()))
-{
- write('

Add Post

');
- write('
');
-}
-
-?>
-
-
-
-
-Title:
-
-
-
-Content:
-
-
-
-Catagory:
-
-
-
-
-write('');
-?>
-
-
-
-
-
-
-
-
-
-
-$page->drawFooter();
-
-?>
Index: blog/index.php
===================================================================
--- blog/index.php (revision 83)
+++ blog/index.php (revision 150)
@@ -21,17 +21,20 @@
write('

Only showing blog posts from the ' . $_GET['cat'] . ' category. Reset Filtering


');
}
+$query = $query . " ORDER BY DatePosted DESC";
+
$ids = $page->findIDs('BlogPosts', $query);
for ($i = 0; $i < count($ids); $i++)
{
$id = $ids[$i];
$post = $page->getBlogPost($id);
- write('

' . $post->title. '

');
+
+ write('

' . $post->title. '

');
write('
Posted On ' . date('l j F Y', $post->datePosted) . ' by ' . $post->user->name . ' (' . $post->user->username . ')
');
write('

' . $post->content . '

');
+ write('
');
}
-
$page->drawFooter();
?>
/blog/add-post.php
0,0 → 1,91
<?php
 
function getParentID()
{
if (isset($_GET['id']))
{
return $_GET['id'];
}
else
{
return -1;
}
}
 
require '../_taios.php';
 
$page = new Taios_Page('Blog Posts', '../');
$page->checkLoggedIn();
 
$error = '';
 
if (isset($_POST['post']))
{
$title = $_POST['title'];
$content = $_POST['content'];
$parentID = $_POST['parentID'];
$category = $_POST['category'];
 
if (empty($title))
{
$error = "No Title Specified";
}
else if (empty($content))
{
$error = "No Content Specified";
}
else if (empty($parentID))
{
$error = "No Parent ID Specified";
}
else
{
$page->query('INSERT INTO BlogPosts VALUES(0, ' . $parentID . ', "' . $page->getLoggedInUser()->ID . '", "' . $title . '", "' . $content . '", NOW(), "' . $category . '", 0)');
$page->redirect('index.php');
}
}
 
$page->drawHeader();
$page->drawBlogCategoriesMenu();
$page->drawMiddle();
 
if (!empty($error))
{
$page->drawError($error, false);
}
 
?>
 
<form action="add-post.php?id=<?php echo getParentID(); ?>" method="post">
<table>
<tr>
<td class="bold">Title: </td>
<td><input type="text" name="title" /></td>
</tr>
<tr>
<td class="bold">Content: </td>
<td><textarea name="content" style="width: 500px; height: 300px;"></textarea></td>
</tr>
<tr>
<td class="bold">Catagory: </td>
<td><input type="text" name="category" /></td>
</tr>
 
<input type="hidden" name="post" value="yes" />
 
<?php
write('<input type="hidden" name="parentID" value="' . getParentID() . '" />');
?>
 
<tr>
<td class="bold"></td>
<td><input type="submit" value="Post" /></td>
</tr>
</table>
</form>
 
<?php
 
$page->drawFooter();
 
?>
/blog/post.php
4,14 → 4,16
 
$page = new Taios_Page('Blog Posts', '../');
 
if (!isset($_GET['id']))
$page->redirect("index.php");
if (empty($_GET['id']))
{
$page->redirect('index.php');
}
 
$page->drawHeader();
$page->drawBlogCategoriesMenu();
$page->drawMiddle();
 
$page->drawBlogPostTree($_GET['id']);
$page->drawBlogPostTree($page->getGetID(), true);
 
$page->drawFooter();
 
/blog/del-post.php
0,0 → 1,27
<?php
 
require '../_taios.php';
 
$page = new Taios_Page('Delete Blog Post', '../');
 
$id = $_GET['id'];
if ($id)
{
if ($page->isUserAdmin($page->getLoggedInUser()) || $page->getLoggedInUser()->ID == $page->getBlogPost($id)->author->ID)
{
$page->delBlogPost($id);
}
else
{
$page->drawError('You do not have permission to access this page.');
}
}
else
{
$page->drawError('No ID Specified');
}
 
$page->redirect('index.php');
 
?>
 
/index.php
22,7 → 22,7
 
<?php
 
$ids = $page->findIDs('BlogPosts', 'WHERE ParentID = -1');
$ids = $page->findIDs('BlogPosts', 'WHERE ParentID = -1 ORDER BY DatePosted DESC');
for ($i = 0; $i < 5 && $i < count($ids); $i++)
{
$id = $ids[$i];
/projects/index.php
0,0 → 1,14
<?php
 
require '../_taios.php';
 
$page = new Taios_Page('Projects', '../');
$page->drawHeader();
$page->drawMiddle();
 
write('<br /><p class="bold">This page is currently under construction.</p>');
 
$page->drawFooter();
 
?>
 
/wiki/index.php
0,0 → 1,14
<?php
 
require '../_taios.php';
 
$page = new Taios_Page('Wiki', '../');
$page->drawHeader();
$page->drawMiddle();
 
write('<br /><p class="bold">This page is currently under construction.</p>');
 
$page->drawFooter();
 
?>
 
/forums/index.php
0,0 → 1,14
<?php
 
require '../_taios.php';
 
$page = new Taios_Page('Forums', '../');
$page->drawHeader();
$page->drawMiddle();
 
write('<br /><p class="bold">This page is currently under construction.</p>');
 
$page->drawFooter();
 
?>
 
/photos/index.php
0,0 → 1,14
<?php
 
require '../_taios.php';
 
$page = new Taios_Page('Photos', '../');
$page->drawHeader();
$page->drawMiddle();
 
write('<br /><p class="bold">This page is currently under construction.</p>');
 
$page->drawFooter();
 
?>
 
/admin/index.php
15,7 → 15,7
{
write('<h4><a href="all-accounts.php">Manage All Accounts</a></h4>');
write('<h4><a href="all-blog-posts.php">Manage All Blog Posts</a></h4>');
write('<h4><a href="all-blog-comments.php">Manage All Blog Comments</a></h4>');
write('<h4><a href="all-projects.php">Manage All Projects</a></h4>');
write('<h4><a href="all-forum-categories.php">Manage All Forum Categories</a></h4>');
write('<h4><a href="all-forum-topics.php">Manage All Forum Topics</a></h4>');
write('<h4><a href="all-forum-posts.php">Manage All Forum Posts</a></h4>');
/admin/all-blog-posts.php
0,0 → 1,60
<?php
 
require '../_taios.php';
 
$page = new Taios_Page('Manage All Blog Posts', '../');
$page->drawHeader();
$page->drawMiddle();
 
$page->checkLoggedIn();
 
if ($page->isUserAdmin($page->getLoggedInUser()))
{
write('<p class="bold">Use this to manage all the blog posts on the Tim32 Website.</p><br />');
write('<table>');
write('<tr>');
write('<td class="bold">ID</td>');
write('<td class="bold">Parent</td>');
write('<td class="bold">Author</td>');
write('<td class="bold">Title</td>');
write('<td class="bold">Content</td>');
write('<td class="bold">Date Posted</td>');
write('<td class="bold">Category</td>');
write('<td class="bold">Spam</td>');
write('</tr>');
 
$ids = $page->findIDs('BlogPosts');
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)
{
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>' . $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>');
}
else
{
drawError('You do not have permission to access this page.');
}
 
$page->drawFooter();
 
?>
 
/admin/all-accounts.php
28,7 → 28,7
{
$user = $page->getUserByID($ids[$i]);
write('<tr>');
write('<td>' . $user->ID . '</td>');
write('<td><a href="account.php?id=' . $user->ID . '">' . $user->ID . '</a></td>');
write('<td>' . $user->accessID . '</td>');
write('<td>' . $user->username . '</td>');
write('<td>' . $user->password . '</td>');