/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">DownloadURL</td>'); |
write('<td class="bold">WebsiteURL</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>' . $project->description . '</td>'); |
write('<td><img src="' . $project->logoURL . '" /></td>'); |
write('<td>' . $project->downloadURL . '</td>'); |
write('<td>' . $project->websiteURL . '</td>'); |
write('<td>' . $project->latestVersion . '</td>'); |
write('<td>' . $project->lastUpdate . '</td>'); |
write('</tr>'); |
} |
write('</table>'); |
} |
else |
{ |
$page->drawError('You do not have permission to access this page.'); |
} |
$page->drawFooter(); |
?> |
/admin/all-blog-posts.php |
---|
24,7 → 24,7 |
write('<td class="bold">Spam</td>'); |
write('</tr>'); |
$ids = $page->findIDs('BlogPosts'); |
$ids = $page->findIDs('BlogPosts', 'ORDER BY DatePosted DESC'); |
for ($i = 0; $i < count($ids); $i++) |
{ |
$post = $page->getBlogPost($ids[$i]); |
/projects/edit-project-do.php |
---|
0,0 → 1,59 |
<?php |
require '../_taios.php'; |
$page = new Taios_Page('Edit Project', '../'); |
$project = $page->getProject($page->getPostID()); |
if (!$project) |
{ |
$page->drawError('No such project, #' . $page->getPostID()); |
} |
$title = $_POST['title']; |
$description = $_POST['description']; |
$logoURL = $_POST['logourl']; |
$websiteURL = $_POST['websiteurl']; |
$downloadURL = $_POST['downloadurl']; |
$latestVersion = $_POST['latestversion']; |
$page->checkLoggedIn(); |
$user = $page->getLoggedInUser(); |
if ($page->isUserAdmin($page->getLoggedInUser()) || $page->getLoggedInUser()->ID == $project->author->ID) |
{ |
if (!empty($title)) |
{ |
$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); |
} |
if (!empty($logoURL)) |
{ |
$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); |
} |
if (!empty($downloadURL)) |
{ |
$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 LastUpdate = NOW() WHERE ID = ' . $project->ID); |
$page->redirect('index.php'); |
} |
else |
{ |
$page->drawError('You do not have permission to access this page.'); |
} |
?> |
/projects/edit-project.php |
---|
0,0 → 1,75 |
<?php |
require '../_taios.php'; |
$page = new Taios_Page('Edit Project', '../'); |
$page->drawHeader(); |
$page->drawMiddle(); |
$project = $page->getProject($page->getGetID()); |
if (!$project) |
{ |
$page->drawError('No such project, #' . $page->getGetID()); |
} |
?> |
<p class="bold">Here you can edit a project from the Tim32 database.</p> |
<p>Leave an input blank to keep it as it is.</p> |
<br /> |
<?php |
if (isset($_GET['error'])) |
{ |
$page->drawError($_GET['error'], false); |
} |
if ($page->isUserAdmin($page->getLoggedInUser()) || $page->getLoggedInUser()->ID == $project->author->ID) |
{ |
?> |
<form action="edit-project-do.php" method="POST"> |
<input type="hidden" name="id" value="<?php echo $project->ID; ?>" /> |
<table> |
<tr> |
<td class="bold">Title: </td> |
<td><input type="text" name="title" value="<?php echo $project->title; ?>" /></td> |
</tr> |
<tr> |
<td class="bold">Description: </td> |
<td><textarea name="description"><?php echo $project->description; ?></textarea></td> |
</tr> |
<tr> |
<td class="bold">Logo URL: </td> |
<td><input type="text" name="logourl" value="<?php echo $project->logoURL; ?>" /></td> |
</tr> |
<tr> |
<td class="bold">Website URL: </td> |
<td><input type="text" name="websiteurl" value="<?php echo $project->websiteURL; ?>" /></td> |
</tr> |
<tr> |
<td class="bold">DownloadURL: </td> |
<td><input type="text" name="downloadurl" value="<?php echo $project->downloadURL; ?>" /></td> |
</tr> |
<tr> |
<td class="bold">Latest Version: </td> |
<td><input type="text" name="latestversion" value="<?php echo $project->latestVersion; ?>" /></td> |
</tr> |
<tr> |
<td class="bold"></td> |
<td><input type="submit" value="Edit Project" /></td> |
</tr> |
</table> |
</form> |
<?php |
} |
else |
{ |
$page->drawError('You do not have permission to access this page.'); |
} |
$page->drawFooter(); |
?> |
/projects/delete-project-do.php |
---|
0,0 → 1,28 |
<?php |
require '../_taios.php'; |
$page = new Taios_Page('Delete Project', '../'); |
$page->checkLoggedIn(); |
$id = $page->getGetID(); |
$project = $page->getProject($id); |
if (($page->isUserAdmin($page->getLoggedInUser()) || $page->getLoggedInUser()->ID == $project->author->ID) && $project) |
{ |
$page->query('DELETE FROM Projects WHERE ID = ' . $id); |
$page->redirect('index.php'); |
} |
else |
{ |
if (!$project) |
{ |
$page->drawError('No such project, #' . $id); |
} |
else |
{ |
$page->drawError('You do not have permission to access this page.'); |
} |
} |
?> |
/projects/index.php |
---|
6,8 → 6,54 |
$page->drawHeader(); |
$page->drawMiddle(); |
write('<br /><p class="bold">This page is currently under construction.</p>'); |
write('<p class="bold">Here you can find all the projects that are created by members of Tim32!</p><br />'); |
if ($page->isUserGM($page->getLoggedInUser())) |
{ |
write('<p class="bold"><a href="add-project.php">Add Project</a></p>'); |
write('<br />'); |
} |
$ids = $page->findIDs('Projects', 'ORDER BY LastUpdate DESC'); |
for ($i = 0; $i < count($ids); $i++) |
{ |
$id = $ids[$i]; |
$project = $page->getProject($id); |
write('<h3>' . $project->title . '</h3>'); |
write('<table style="border: 0px;">'); |
write('<tr>'); |
write('<td style="border: 0px; vertical-align: top;"><img class="smiley" src="' . $project->logoURL . '" /></td>'); |
write('<td style="border: 0px;">'); |
if (empty($project->latestVersion)) |
{ |
write('<h4>No Releases</h4>'); |
} |
else |
{ |
write('<h4>Latest Version: ' . $project->latestVersion . '</h4>'); |
} |
write('<p>Project Author: ' . $project->author->name . '</p>'); |
write('<p>' . $page->replaceBBCode($project->description) . '</p>'); |
write('<p>'); |
if (!empty($project->websiteURL)) |
{ |
write('<a href="' . $project->websiteURL . '">Website</a>'); |
} |
if (!empty($project->downloadURL)) |
{ |
write(' · <a href="' . $project->downloadURL . '">Download</a>'); |
} |
write('</p>'); |
write('</td>'); |
write('</tr>'); |
write('</table>'); |
if ($page->isUserAdmin($page->getLoggedInUser()) || $user->ID == $project->author->ID) |
{ |
write('<p><a href="edit-project.php?id=' . $project->ID . '">Edit Project</a> · <a href="delete-project-do.php?id=' . $project->ID . '">Delete Project</a></p>'); |
} |
write('<br />'); |
} |
$page->drawFooter(); |
?> |
/projects/add-project-do.php |
---|
0,0 → 1,36 |
<?php |
require '../_taios.php'; |
$page = new Taios_Page('Add Project', '../'); |
$title = $_POST['title']; |
$description = $_POST['description']; |
$logoURL = $_POST['logourl']; |
$websiteURL = $_POST['websiteurl']; |
$downloadURL = $_POST['downloadurl']; |
$latestVersion = $_POST['latestversion']; |
$page->checkLoggedIn(); |
$user = $page->getLoggedInUser(); |
if (empty($title)) |
{ |
$page->redirect('add-project.php?error=No Title Specified'); |
} |
if (empty($description)) |
{ |
$page->redirect('add-project.php?error=No Title Specified'); |
} |
if ($page->isUserGM($user)) |
{ |
$page->query('INSERT INTO Projects VALUES (0, ' . $user->ID . ', "' . $title . '", "' . $description . '", "' . $logoURL . '", "' . $downloadURL . '", "' . $websiteURL . '", "' . $latestVersion . '", NOW())'); |
$page->redirect('index.php'); |
} |
else |
{ |
$page->drawError('You do not have permission to access this page.'); |
} |
?> |
/projects/add-project.php |
---|
0,0 → 1,69 |
<?php |
require '../_taios.php'; |
$page = new Taios_Page('Add Project', '../'); |
$page->drawHeader(); |
$page->drawMiddle(); |
?> |
<p class="bold">Here you can add a project to the Tim32 database.</p> |
<br /> |
<?php |
if (isset($_GET['error'])) |
{ |
$page->drawError($_GET['error'], false); |
} |
$page->checkLoggedIn(); |
if ($page->isUserGM($page->getLoggedInUser())) |
{ |
?> |
<form action="add-project-do.php" method="POST"> |
<table> |
<tr> |
<td class="bold">Title: </td> |
<td><input type="text" name="title" /></td> |
</tr> |
<tr> |
<td class="bold">Description: </td> |
<td><textarea name="description"></textarea></td> |
</tr> |
<tr> |
<td class="bold">Logo URL: </td> |
<td><input type="text" name="logourl" /></td> |
</tr> |
<tr> |
<td class="bold">Website URL: </td> |
<td><input type="text" name="websiteurl" /></td> |
</tr> |
<tr> |
<td class="bold">DownloadURL: </td> |
<td><input type="text" name="downloadurl" /></td> |
</tr> |
<tr> |
<td class="bold">Latest Version: </td> |
<td><input type="text" name="latestversion" /></td> |
</tr> |
<tr> |
<td class="bold"></td> |
<td><input type="submit" value="Add Project" /></td> |
</tr> |
</table> |
</form> |
<?php |
} |
else |
{ |
$page->drawError('You do not have permission to access this page.'); |
} |
$page->drawFooter(); |
?> |
/blog/edit-post.php |
---|
67,7 → 67,7 |
</tr> |
<tr> |
<td class="bold">Content: </td> |
<td><textarea name="content" style="width: 500px; height: 300px;"><?php echo $post->content; ?></textarea></td> |
<td><textarea name="content"><?php echo $post->content; ?></textarea></td> |
</tr> |
<tr> |
<td class="bold">Catagory: </td> |
/styles.css |
---|
76,6 → 76,11 |
border: 2px solid #333333; |
} |
textarea { |
width: 500px; |
height: 300px; |
} |
.smiley { |
border: 0px; |
vertical-align: middle; |
/_taios.php |
---|
374,13 → 374,38 |
$this->drawError('Cannot find blog post, #' . $id); |
} |
function getProject($id) |
{ |
$result = $this->query('SELECT * FROM Projects WHERE ID = ' . $id); |
while ($row = mysql_fetch_array($result)) |
{ |
$project = new Project; |
$project->ID = $row['ID']; |
$project->author = $this->getUserByID($row['AuthorID']); |
$project->title = $row['Title']; |
$project->description = $row['Description']; |
$project->logoURL = $row['LogoURL']; |
$project->downloadURL = $row['DownloadURL']; |
$project->websiteURL = $row['WebsiteURL']; |
$project->latestVersion = $row['LatestVersion']; |
$project->lastUpdate = strtotime($row['LastUpdate']); |
return $project; |
} |
return false; |
} |
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); |
$this->query('DELETE FROM BlogPosts WHERE ID=' . $id); |
} |
function getGetID() |
430,6 → 455,19 |
public $spam; |
} |
class Project |
{ |
public $ID; |
public $author; |
public $title; |
public $description; |
public $logoURL; |
public $downloadURL; |
public $websiteURL; |
public $latestVersion; |
public $lastUpdate; |
} |
function write($str) |
{ |
echo $str; |
/install.sql |
---|
35,8 → 35,10 |
Title TEXT, |
Description TEXT, |
LogoURL TEXT, |
DownloadURL TEXT, |
WebsiteURL TEXT, |
LatestVersion TEXT, |
LastUpdate DATETIME, |
PRIMARY KEY(ID) |
); |
73,3 → 75,4 |
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()); |