/
viewTopics.php
164 lines (144 loc) · 5.72 KB
/
viewTopics.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
<?php
include("common.php");
$fileC = file("db/forumList.dat");
foreach ($fileC as $line)
{
$temp = new Forum($line);
if ($temp->getForumId() == $_GET['forumId'])
{
$forum = $temp;
}
}
$_SESSION['forum'] = $forum;
outHtml1($forum->getForumName());
outHtml2($forum->getForumName(),"index.php");
?>
<table class='list' style="margin-top: 10px; margin-bottom: 10px; font-family: Trebuchet MS;">
<tr>
<td class='listtopicname' style="background: url(images/bar.png) repeat-x; color: white;"><u>Topic</u></td>
<td class='listtopiccreator' style="background: url(images/bar.png) repeat-x; color: white;"><u>Creator</u></td>
<td class='listtopicposts' style="background: url(images/bar.png) repeat-x; color: white;"><u>No. Posts</u></td>
<td class='listtopicdate' style="font-size: 12px; background: url(images/bar.png) repeat-x; color: white;"><u>Date Last Post / Date Created</u></td>
</tr>
</table>
<?php
$frId = $_GET['forumId'];
$topicsperpage = trim(file_get_contents("db/topicsperpage.dat"));
if (!isset($_GET['page']))
{
$pageNo = 0;
}
else
{
$pageNo = $_GET['page'];
}
$topicArr = array();
$fh = fopen("db/Topics/".$frId.".dat","r");
for ($i = 0; $i < $pageNo*$topicsperpage; $i++)
{
fgets($fh);
fgets($fh);
}
$count = 0;
while ($count < $topicsperpage && !feof($fh))
{
$count++;
$a = trim(fgets($fh));
$b = trim(fgets($fh));
if ($a != "" && $b != "")
{
array_push($topicArr,new Topic(file_get_contents("db/Topics/".$a."/topic.dat")));
}
}
fclose($fh);
$stickyTopicArr = array();
$fh = fopen("db/Topics/".$frId."sticky.dat","r");
while (!feof($fh))
{
$a = trim(fgets($fh));
$b = trim(fgets($fh));
if ($a != "" && $b != "")
{
array_push($stickyTopicArr,new Topic(file_get_contents("db/Topics/".$a."/topic.dat")));
}
}
fclose($fh);
echo "<table class='list'>";
foreach ($stickyTopicArr as $item)
{
echo "<tr><td class='stickylistname'><a href='viewPosts.php?topicId=".$item->getTopicId()."'>Sticky: ".$item->getTopicName()."</a>".$deleteStr."</td>
<td class='stickylistcreator'><a href='viewUser.php?userId=".$item->getUser()->getUserId()."'>".$item->getUser()->getUserId()."</a>
<td class='stickylistposts'>".$item->getTotalPosts()."</td>
<td class='stickylistdate'>".$item->getLatestPost()->getDateTime()."<br />".$item->getDateTime()."</td>
</tr>";
}
foreach ($topicArr as $item)
{
$deleteStr = "";
if ($_SESSION['loggedIn'] == true && $_SESSION['user']->getLevel() > 1)
{
$deleteStr = "<a class='deleteTopic' href='moderate.php?flag=topic&forumId=".$_GET['forumId']."&topicId=".$item->getTopicId()."'>delete</a><a class='deleteTopic' href='moveTopic.php?topicId=".$item->getTopicId()."&forumId=".$_GET['forumId']."'>move</a><a class='deleteTopic' href='editTopic.php?topicId=".$item->getTopicId()."'>edit</a>";
}
echo "<tr><td class='listtopicname'><a href='viewPosts.php?topicId=".$item->getTopicId()."'>".$item->getTopicName()."</a>".$deleteStr."</td>
<td class='listtopiccreator'><a href='viewUser.php?userId=".$item->getUser()->getUserId()."'>".$item->getUser()->getUserId()."</a>
<td class='listtopicposts'>".$item->getTotalPosts()."</td>
<td class='listtopicdate'>".$item->getLatestPost()->getDateTime()."<br />".$item->getDateTime()."</td>
</tr>";
}
echo "</table>";
?>
<div id="addTopic">
<div style="float: right;">
Page:
<?php
if ($forum->getTotalTopics() <= $topicsperpage)
{
echo "1";
$controlsStr = "";
}
else if ($forum->getTotalTopics() <= 2*$topicsperpage)
{
if ($pageNo == 0)
{
echo "1 <a href='viewTopics.php?forumId=".$_GET['forumId']."&page=1'>2</a>";
$controlsStr = "<a href='viewTopics.php?forumId=".$_GET['forumId']."&page=1'>Next</a>";
}
else
{
echo "<a href='viewTopics.php?forumId=".$_GET['forumId']."&page=0'>1</a> 2";
$controlsStr = "<a href='viewTopics.php?forumId=".$_GET['forumId']."&page=0'>Prev</a>";
}
}
else
{
$maxPage = ceil($forum->getTotalTopics()/$topicsperpage)-1;
if ($pageNo == 0)
{
echo "1 ... <a href='viewTopics.php?forumId=".$_GET['forumId']."&page=".$maxPage."'>".($maxPage+1)."</a>";
$controlsStr = "<a href='viewTopics.php?forumId=".$_GET['forumId']."&page=".($pageNo+1)."'>Next</a>";
}
else if ($pageNo == $maxPage)
{
echo "<a href='viewTopics.php?forumId=".$_GET['forumId']."&page=0'>1</a> ... ".($maxPage+1);
$controlsStr = "<a href='viewTopics.php?forumId=".$_GET['forumId']."&page=".($pageNo-1)."'>Prev</a>";
}
else
{
echo "<a href='viewTopics.php?forumId=".$_GET['forumId']."&page=0'>1</a> ... ".($pageNo+1)." ... <a href='viewTopics.php?forumId=".$_GET['forumId']."&page=".$maxPage."'>".($maxPage+1)."</a>";
$controlsStr = "<a href='viewTopics.php?forumId=".$_GET['forumId']."&page=".($pageNo-1)."'>Prev</a> <a href='viewTopics.php?forumId=".$_GET['forumId']."&page=".($pageNo+1)."'>Next</a>";
}
}
echo "<br />".$controlsStr;
?>
</div>
<?php
if ($_SESSION['loggedIn'] == true)
{
?><a href="addTopic.php?forumId=<?php echo $_GET['forumId']?>">Add Topic</a><br />
<a href="addPoll.php?forumId=<?php echo $_GET['forumId']?>">Add Poll</a><?php
}
?>
</div>
<?php
outHtml3();
?>