Subversion Repositories taios

Compare Revisions

Ignore whitespace Rev 215 → Rev 258

/admin/all-forum-categories.php
0,0 → 1,52
<?php
 
require '../_taios.php';
 
$page = new Taios_Page('Manage All Forum Categories', '../');
$page->drawHeader();
$page->drawMiddle();
 
$page->checkLoggedIn();
 
if ($page->isUserAdmin($page->getLoggedInUser()))
{
write('<p class="bold">Use this to manage all the forum categories 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">Title</td>');
write('<td class="bold">Description</td>');
write('</tr>');
 
$ids = $page->findIDs('ForumCategories');
for ($i = 0; $i < count($ids); $i++)
{
$cat = $page->getForumCategory($ids[$i]);
write('<tr>');
write('<td><a href="index.php?parentID=' . $cat->ID . '">' . $cat->ID . '</a></td>');
if ($cat->parent == -1)
{
write('<td style="color: #444444;">No Parent</td>');
}
else
{
write('<td>' . $cat->parent->title . '</td>');
}
write('<td>' . $cat->title . '</td>');
write('<td>' . $cat->description . '</td>');
write('</tr>');
}
write('</table>');
}
else
{
$page->drawError('You do not have permission to access this page.');
}
 
$page->drawFooter();
 
?>
 
/admin/index.php
17,7 → 17,6
write('<h4><a href="all-blog-posts.php">Manage All Blog Posts</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-projects.php
0,0 → 1,55
<?php
 
require '../_taios.php';
 
$page = new Taios_Page('Manage All Projects', '../');
$page->drawHeader();
$page->drawMiddle();
 
$page->checkLoggedIn();
 
if ($page->isUserAdmin($page->getLoggedInUser()))
{
write('<p class="bold">Use this to manage all the projects on the Tim32 Website.</p><br />');
 
write('<table>');
write('<tr>');
write('<td class="bold">ID</td>');
write('<td class="bold">Author</td>');
write('<td class="bold">Title</td>');
write('<td class="bold">Description</td>');
write('<td class="bold">Logo</td>');
write('<td class="bold">Download</td>');
write('<td class="bold">Website</td>');
write('<td class="bold">Latest Version</td>');
write('<td class="bold">Last Update</td>');
write('</tr>');
 
$ids = $page->findIDs('Projects');
for ($i = 0; $i < count($ids); $i++)
{
$project = $page->getProject($ids[$i]);
write('<tr>');
write('<td><a href="../projects/edit-project.php?id=' . $project->ID . '">' . $project->ID . '</a></td>');
write('<td><a href="account.php?id=' . $project->author->ID . '">' . $project->author->name . '</a></td>');
write('<td>' . $project->title . '</td>');
write('<td>' . str_replace("\n", '<br />', $project->description) . '</td>');
write('<td><img src="' . $project->logoURL . '" /></td>');
write('<td><a href="' . $project->downloadURL . '">Link</a></td>');
write('<td><a href="' . $project->websiteURL . '">Link</a></td>');
write('<td>' . $project->latestVersion . '</td>');
write('<td>' . date('j/m/Y H:i', $project->lastUpdate) . '</td>');
write('</tr>');
}
write('</table>');
}
else
{
$page->drawError('You do not have permission to access this page.');
}
 
$page->drawFooter();
 
?>
 
/forums/post.php
0,0 → 1,29
<?php
 
require '../_taios.php';
 
$page = new Taios_Page('Forum Post', '../');
$page->drawHeader();
$page->drawMiddle();
 
$id = $page->getGetID();
$forumPost = $page->getForumPost($id);
write('<p class="bold"><a href="index.php?parentID=' . $forumPost->category->ID . '">Back to Topics</a></p><br />');
 
write('<h3>' . $forumPost->title . '</h3>');
write('<p>' . $page->replaceBBCode($forumPost->content) . '</p>');
write('<br />');
 
$ids = $page->findIDs('ForumPosts', 'WHERE ParentID = ' . $id . ' ORDER BY DatePosted DESC');
for ($i = 0; $i < count($ids); $i++)
{
$forumPost = $page->getForumPost($ids[$i]);
write('<h4>' . $forumPost->title . '</h4>');
write('<p>' . $page->replaceBBCode($forumPost->content) . '</p>');
write('<br />');
}
 
$page->drawFooter();
 
?>
 
/forums/index.php
6,8 → 6,41
$page->drawHeader();
$page->drawMiddle();
 
write('<br /><p class="bold">This page is currently under construction.</p>');
$parentID = $_GET['parentID'];
if (empty($parentID))
{
$parentID = -1;
}
 
$ids = $page->findIDs('ForumCategories', 'WHERE ParentID = ' . $parentID . ' ORDER BY Title ASC');
 
if (count($ids) >= 1)
{
write('<h3>Categories</h3>');
}
 
for ($i = 0; $i < count($ids); $i++)
{
$forumCategory = $page->getForumCategory($ids[$i]);
write('<h4><a href="index.php?parentID=' . $forumCategory->ID . '">' . $forumCategory->title . '</a></h4>');
write('<p>' . $forumCategory->description . '</p>');
write('<br />');
}
 
$ids = $page->findIDs('ForumPosts', 'WHERE CategoryID = ' . $parentID . ' AND ParentID = -1 ORDER BY Title ASC');
 
if (count($ids) >= 1)
{
write('<h3>Topics</h3>');
}
 
for ($i = 0; $i < count($ids); $i++)
{
$forumPost = $page->getForumPost($ids[$i]);
write('<h4><a href="post.php?id=' . $forumPost->ID . '">' . $forumPost->title . '</a></h4>');
write('<br />');
}
 
$page->drawFooter();
 
?>
/_taios.php
284,7 → 284,7
$result = mysql_query($query);
if (!$result)
{
$this->drawError('MySQL Error: ' . mysql_error());
$this->drawError('Query Failed: ' . $query . "\n" . 'MySQL Error: ' . mysql_error());
}
return $result;
397,6 → 397,46
return false;
}
function getForumCategory($id)
{
$result = $this->query('SELECT * FROM ForumCategories WHERE ID = ' . $id);
while ($row = mysql_fetch_array($result))
{
$f = new ForumCategory;
$f->ID = $row['ID'];
$f->parentID = $row['ParentID'];
$f->title = $row['Title'];
$f->description = $row['Description'];
return $f;
}
return false;
}
function getForumPost($id)
{
$result = $this->query('SELECT * FROM ForumPosts WHERE ID = ' . $id);
while ($row = mysql_fetch_array($result))
{
$f = new ForumPost;
$f->ID = $row['ID'];
$f->author = $this->getUserByID($row['AuthorID']);
$f->category = $this->getForumCategory($row['CategoryID']);
$f->parent = $this->getForumPost($row['ParentID']);
$f->title = $row['Title'];
$f->content = $row['Content'];
$f->datePosted = strtotime($row['DatePosted']);
$f->spam = $row['Spam'];
return $f;
}
return false;
}
function delBlogPost($id)
{
$ids = $this->findIDs('BlogPosts', 'WHERE ParentID=' . $id);
468,6 → 508,26
public $lastUpdate;
}
 
class ForumCategory
{
public $ID;
public $parentID;
public $title;
public $description;
}
 
class ForumPost
{
public $id;
public $author;
public $category;
public $parent;
public $title;
public $content;
public $datePosted;
public $spam;
}
 
function write($str)
{
echo $str;
/install.sql
51,22 → 51,13
PRIMARY KEY(ID)
);
 
CREATE TABLE ForumTopics
CREATE TABLE ForumPosts
(
ID INT NOT NUll AUTO_INCREMENT,
AuthorID INT,
CategoryID INT,
ParentID INT,
Title TEXT,
DatePosted DATETIME,
PRIMARY KEY(ID)
);
 
CREATE TABLE ForumPosts
(
ID INT NOT NUll AUTO_INCREMENT,
AuthorID INT,
TopicID INT,
Title TEXT,
Content TEXT,
DatePosted DATETIME,
Spam BOOLEAN,
76,3 → 67,6
INSERT INTO Users VALUES (1, 0, "admin", SHA1("password"), "admins@tim32.org", "Tim32 Admin", 0);
INSERT INTO BlogPosts VALUES(1, -1, 1, "Welcome to Tim32!", "Welcome to the new Tim32 website! It has had a complete design re-think to make it simpler and easier to use!", NOW(), "Tim32", FALSE);
INSERT INTO Projects VALUES (1, 1, "TAIOS", "TAIOS (The All In One System) is a PHP based system to make the Tim32 website very self contained and altogether.", "http://websvn.kde.org/*checkout*/trunk/kdesupport/oxygen-icons/64x64/categories/applications-internet.png", "", "http://tim32.org/~tom/taios/", "SVN", NOW());
INSERT INTO ForumCategories VALUES (1, -1, "Tim32", "Talk about Tim32 in here");
INSERT INTO ForumCategories VALUES (2, 1, "TAIOS", "Talk about TAIOS in here");
INSERT INTO ForumPosts VALUES (1, 1, 2, -1, "TAIOS Almost Finished", "As I speak we are currently in the process of finilising TAIOS so it works perfectly! I'm pleased to accounce that TAIOS should be ready within the next week or so! :D", NOW(), FALSE);
/photos/albums/Lassitor/Lassitor.png
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
/photos/albums/Lassitor/Lassitor.png
Property changes:
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: photos/albums/Lassitor/Lassitor-3d.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: photos/albums/Lassitor/Lassitor-3d.png
===================================================================
--- photos/albums/Lassitor/Lassitor-3d.png (nonexistent)
+++ photos/albums/Lassitor/Lassitor-3d.png (revision 258)
/photos/albums/Lassitor/Lassitor-3d.png
Property changes:
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: photos/album.php
===================================================================
--- photos/album.php (nonexistent)
+++ photos/album.php (revision 258)
@@ -0,0 +1,72 @@
+
+
+require '../_taios.php';
+
+function getImageSizes($sourceImageFilePath, $maxResizeWidth, $maxResizeHeight) {
+
+ $size = getimagesize($sourceImageFilePath);
+ $origWidth = $size[0];
+ $origHeight = $size[1];
+
+ $resizedWidth = $origWidth;
+ $resizedHeight = $origHeight;
+
+ if ($resizedWidth > $maxResizeWidth)
+ {
+ $aspectRatio = $maxResizeWidth / $resizedWidth;
+ $resizedWidth = round($aspectRatio * $resizedWidth);
+ $resizedHeight = round($aspectRatio * $resizedHeight);
+ }
+ if ($resizedHeight > $maxResizeHeight)
+ {
+ $aspectRatio = $maxResizeHeight / $resizedHeight;
+ $resizedWidth = round($aspectRatio * $resizedWidth);
+ $resizedHeight = round($aspectRatio * $resizedHeight);
+ }
+
+ return array($resizedWidth, $resizedHeight);
+}
+
+$page = new Taios_Page('Photo Albums', '../');
+$page->drawHeader();
+$page->drawMiddle();
+
+$dirName = $_GET['dir'];
+if (empty($dirName))
+{
+ $page->redirect('index.php');
+}
+
+write('

Back to Photos


');
+
+write('');');');');');
+write('
+
+$i = 0;
+
+$dir = dir('albums/' . $dirName);
+while (($file = $dir->read()) !== false)
+{
+ if ($file[0] != '.')
+ {
+ if ($i >= 4)
+ {
+ write('
+ }
+
+ $filename = 'albums/' . $dirName . '/' . $file;
+ $size = getImageSizes($filename, 200, 200);
+
+ write('
+
+ $i++;
+ }
+}
+
+write('
+write('');
+
+$page->drawFooter();
+
+?>
+
Index: photos/index.php
===================================================================
--- photos/index.php (revision 215)
+++ photos/index.php (revision 258)
@@ -2,12 +2,21 @@
require '../_taios.php';
-$page = new Taios_Page('Photos', '../');
+$page = new Taios_Page('Photo Albums', '../');
$page->drawHeader();
$page->drawMiddle();
-write('

This page is currently under construction.

');
+write('

Here we have all sorts of photos from Tim32.


');
+$dir = dir('albums/');
+while (($file = $dir->read()) !== false)
+{
+ if ($file[0] != '.')
+ {
+ write('

' . $file . '

');
+ }
+}
+
$page->drawFooter();
?>
/wiki/edit.php
0,0 → 1,52
<?php
 
require '../_taios.php';
 
$pageName = $_GET['page'];
if (empty($pageName))
{
$pageName = 'Index';
}
 
$page = new Taios_Page('Edit Page - ' . $pageName, '../');
$page->drawHeader();
$page->drawMiddle();
 
if ($page->isUserGM($page->getLoggedInUser()))
{
$filename = 'pages/' . $pageName . '.txt';
$content = "";
 
$fp = @fopen($filename, 'r');
if ($fp)
{
$content = fread($fp, filesize($filename));
fclose($fp);
}
?>
 
<form action="edit-do.php" method="POST">
<input type="hidden" name="page" value="<?php echo $pageName; ?>" />
<table>
<tr>
<td><textarea name="content"><?php echo $content; ?></textarea></td>
</tr>
<tr>
<td><input type="submit" value="Edit" /></td>
</tr>
</table>
</form>
 
<?php
}
else
{
$page->drawError('You do not have permission to access this page.');
}
 
$page->drawFooter();
 
?>
 
/wiki/edit-do.php
0,0 → 1,38
<?php
 
require '../_taios.php';
 
$pageName = $_POST['page'];
if (empty($pageName))
{
$pageName = 'Index';
}
 
$page = new Taios_Page('Edit Page - ' . $pageName, '../');
 
if ($page->isUserGM($page->getLoggedInUser()))
{
$filename = 'pages/' . $pageName . '.txt';
$fp = @fopen($filename, 'w');
if ($fp)
{
fwrite($fp, $_POST['content']);
fclose($fp);
$page->redirect('index.php?page=' . $pageName);
}
else
{
$page->drawError('Failed to write file.');
}
}
else
{
$page->drawError('You do not have permission to access this page.');
}
 
$page->drawFooter();
 
?>
 
/wiki/index.php
2,12 → 2,34
 
require '../_taios.php';
 
$page = new Taios_Page('Wiki', '../');
$pageName = $_GET['page'];
if (empty($pageName))
{
$pageName = 'Index';
}
 
$page = new Taios_Page('Wiki - ' . $pageName, '../');
$page->drawHeader();
$page->drawMiddle();
 
write('<br /><p class="bold">This page is currently under construction.</p>');
if ($page->isUserGM($page->getLoggedInUser()))
{
write('<p><a href="edit.php?page=' . $pageName . '">Edit Page</a></p><br />');
}
 
$filename = 'pages/' . $pageName . '.txt';
 
$fp = @fopen($filename, 'r');
if ($fp)
{
write('<p>' . $page->replaceBBCode(fread($fp, filesize($filename))) . '</p>');
fclose($fp);
}
else
{
write('<p>This page is empty.</p>');
}
 
$page->drawFooter();
 
?>
/wiki/pages/Index.txt
0,0 → 1,4
[b]Welcome to the Tim32 Wiki![/b]
 
Here you can talk about pretty much anything!
 
Property changes:
Added: svn:executable
## -0,0 +1 ##
+*
\ No newline at end of property
Index: projects/edit-project-do.php
===================================================================
--- projects/edit-project-do.php (revision 215)
+++ projects/edit-project-do.php (revision 258)
@@ -4,10 +4,10 @@
$page = new Taios_Page('Edit Project', '../');
-$project = $page->getProject($page->getGetID());
+$project = $page->getProject($page->getPostID());
if (!$project)
{
- $page->drawError('No such project, #' . $page->getGetID());
+ $page->drawError('No such project, #' . $page->getPostID());
}
$title = $_POST['title'];