-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcontroller.php
91 lines (61 loc) · 1.91 KB
/
controller.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
<?php
if(!isset($_GET['p']) && !isset($_GET['archive'])) {
//blog, index page
$single = false;
if(isset($_GET['show'])) {
// get only one article
$single = true;
$article = $_GET['show'];
$posts = get_single_post(CONTENT_DIR,$article);
} else {
// get all posts for that page
if(!isset($_GET['nav'])) $seq = 0;
else $seq = $_GET['nav'];
$post_count = post_count();
// if lower than 0, return the 0 page
if($seq < 0) $seq = 0;
// if over the post_count give the 0 page
if($seq >= $post_count) $seq = 0;
$posts = get_page_posts($seq);
}
draw_blog($posts,$single,$seq,$post_count);
} else if(isset($_GET['archive'])) {
// archive page
draw_archive($_GET['archive']);
} else {
// other pages
$posts = get_single_post(PAGES_DIR,$_GET['p']);
draw_page($posts);
}
/** Functions for drawing layout */
function draw_blog($posts,$single,$seq,$post_count) {
echo '<div class="col-sm-8 blog-main">';
foreach ($posts as $post) {
$post->display();
}
if(!$single) {
$prev = $seq-POST_PER_PAGE;
$next = $seq+POST_PER_PAGE;
echo '<nav><ul class="pager">';
if($seq > 0) echo'<li><a href="?nav='.$prev.'"><i class="fa fa-chevron-left"></i></a></li>';
if($next < $post_count) echo'<li><a href="?nav='.$next.'"><i class="fa fa-chevron-right"></i></a></li>';
echo '</ul></nav>';
}
echo '</div><!-- /.blog-main -->';
}
function draw_archive($date) {
$posts = get_archive($date);
echo'<div class="col-sm-8 blog-main">';
foreach ($posts as $post) {
$post->displayReduced();
}
echo '</div><!-- /.blog-main -->';
}
function draw_page($posts) {
echo'<div class="col-sm-8 blog-main">';
foreach ($posts as $post) {
$post->display();
}
echo '</div><!-- /.blog-main -->';
}
?>