diff --git a/config/config.ini.example b/config/config.ini.example
index 41edb78..ccef248 100644
--- a/config/config.ini.example
+++ b/config/config.ini.example
@@ -80,5 +80,8 @@ lightbox = "off"
; Set the theme here
views.root = "themes/logs"
+ ;Enable view Counter, the options is "true" and "false". If set to "true", you can see the Counts in Admin page.
+views.counter = "true"
+
; Framework config. No need to edit.
views.layout = "layout"
\ No newline at end of file
diff --git a/system/admin/admin.php b/system/admin/admin.php
index 147a6ff..35777c6 100644
--- a/system/admin/admin.php
+++ b/system/admin/admin.php
@@ -347,7 +347,9 @@ function get_recent_posts() {
$posts = get_profile($_SESSION[config("site.url")]['user'], 1, 5);
if(!empty($posts)) {
echo '
';
- echo '| Title | Published | Tag | Operations |
';
+ echo '| Title | Published | ';
+ if(config("views.counter") == "true") echo 'Views | ';
+ echo 'Tag | Operations |
';
$i = 0; $len = count($posts);
foreach($posts as $p) {
if ($i == 0) {
@@ -363,6 +365,7 @@ function get_recent_posts() {
echo '';
echo '| ' . $p->title . ' | ';
echo '' . date('d F Y', $p->date) . ' | ';
+ if(config("views.counter") == "true") echo '' . $p->views . ' | ';
echo '' . $p->tag . ' | ';
echo 'Edit Delete | ';
echo '
';
@@ -379,7 +382,9 @@ function get_recent_pages() {
if(!empty($posts)) {
krsort($posts);
echo '';
- echo '| Title | Operations |
';
+ echo '| Title | ';
+ if(config("views.counter") == "true") echo 'Views | ';
+ echo 'Operations |
';
$i = 0; $len = count($posts);
foreach($posts as $p) {
if ($i == 0) {
@@ -394,6 +399,7 @@ function get_recent_pages() {
$i++;
echo '';
echo '| ' . $p->title . ' | ';
+ if(config("views.counter") == "true") echo '' . $p->views . ' | ';
echo 'Edit Delete | ';
echo '
';
}
diff --git a/system/admin/views/posts-list.html.php b/system/admin/views/posts-list.html.php
index 3f9354e..9457c3e 100644
--- a/system/admin/views/posts-list.html.php
+++ b/system/admin/views/posts-list.html.php
@@ -1,7 +1,7 @@
- | Title | Published | Author | Tag | Operations |
+ | Title | Published | Views | Author | Tag | Operations |
">
title ?> |
date) ?> |
+ views ?> |
author ?> |
tag ?> |
Edit Delete |
diff --git a/system/admin/views/user-posts.html.php b/system/admin/views/user-posts.html.php
index 427f970..2fc3624 100644
--- a/system/admin/views/user-posts.html.php
+++ b/system/admin/views/user-posts.html.php
@@ -1,7 +1,7 @@
- | Title | Published | Tag | Operations |
+ | Title | Published | Views | Tag | Operations |
">
title ?> |
date) ?> |
+ views ?> |
tag ?> |
Edit Delete |
diff --git a/system/htmly.php b/system/htmly.php
index 0c29618..0fd5586 100644
--- a/system/htmly.php
+++ b/system/htmly.php
@@ -19,1123 +19,1092 @@ config('source', 'config/config.ini');
// This will match the root url
get('/index', function () {
- if(!login()) {
- file_cache($_SERVER['REQUEST_URI']);
- }
-
- $page = from($_GET, 'page');
- $page = $page ? (int)$page : 1;
- $perpage = config('posts.perpage');
-
- $posts = get_posts(null, $page, $perpage);
-
- $total = '';
-
- $tl = blog_tagline();
-
- if($tl){ $tagline = ' - ' . $tl;} else {$tagline = '';}
-
- if(empty($posts) || $page < 1){
-
- // a non-existing page
- render('no-posts',array(
- 'head_contents' => head_contents(blog_title() . $tagline, blog_description(), site_url()),
- 'bodyclass' => 'noposts',
- ));
-
- die;
- }
-
- render('main',array(
- 'head_contents' => head_contents(blog_title() . $tagline, blog_description(), site_url()),
- 'page' => $page,
- 'posts' => $posts,
- 'bodyclass' => 'infront',
- 'breadcrumb' => '',
- 'pagination' => has_pagination($total, $perpage, $page)
- ));
+ if (!login()) {
+ file_cache($_SERVER['REQUEST_URI']);
+ }
+
+ $page = from($_GET, 'page');
+ $page = $page ? (int) $page : 1;
+ $perpage = config('posts.perpage');
+
+ $posts = get_posts(null, $page, $perpage);
+
+ $total = '';
+
+ $tl = blog_tagline();
+
+ if ($tl) {
+ $tagline = ' - ' . $tl;
+ } else {
+ $tagline = '';
+ }
+
+ if (empty($posts) || $page < 1) {
+
+ // a non-existing page
+ render('no-posts', array(
+ 'head_contents' => head_contents(blog_title() . $tagline, blog_description(), site_url()),
+ 'bodyclass' => 'noposts',
+ ));
+
+ die;
+ }
+
+ render('main', array(
+ 'head_contents' => head_contents(blog_title() . $tagline, blog_description(), site_url()),
+ 'page' => $page,
+ 'posts' => $posts,
+ 'bodyclass' => 'infront',
+ 'breadcrumb' => '',
+ 'pagination' => has_pagination($total, $perpage, $page)
+ ));
});
// Get submitted login data
post('/login', function() {
-
- $proper = is_csrf_proper(from($_REQUEST, 'csrf_token'));
-
- $user = from($_REQUEST, 'user');
- $pass = from($_REQUEST, 'password');
- if($proper && !empty($user) && !empty($pass)) {
-
- session($user, $pass, null);
- $log = session($user, $pass, null);
-
- if(!empty($log)) {
-
- config('views.root', 'system/admin/views');
-
- render('login',array(
- 'head_contents' => head_contents('Login - ' . blog_title(), 'Login page on ' .blog_title(), site_url()),
- 'error' => '',
- 'bodyclass' => 'editprofile',
- 'breadcrumb' => '' .config('breadcrumb.home'). ' » Login'
- ));
- }
- }
- else {
- $message['error'] = '';
- if(empty($user)) {
- $message['error'] .= 'User field is required.';
- }
- if (empty($pass)) {
- $message['error'] .= 'Password field is required.';
- }
- if(! $proper ) {
- $message['error'] .= 'CSRF Token not correct.';
- }
-
- config('views.root', 'system/admin/views');
-
- render('login',array(
- 'head_contents' => head_contents('Login - ' . blog_title(), 'Login page on ' .blog_title(), site_url()),
- 'error' => '' . $message['error'] . '
',
- 'username' => $user,
- 'password' => $pass,
- 'bodyclass' => 'editprofile',
- 'breadcrumb' => '' .config('breadcrumb.home'). ' » Login'
- ));
- }
+ $proper = is_csrf_proper(from($_REQUEST, 'csrf_token'));
+
+ $user = from($_REQUEST, 'user');
+ $pass = from($_REQUEST, 'password');
+ if ($proper && !empty($user) && !empty($pass)) {
+
+ session($user, $pass, null);
+ $log = session($user, $pass, null);
+
+ if (!empty($log)) {
+
+ config('views.root', 'system/admin/views');
+
+ render('login', array(
+ 'head_contents' => head_contents('Login - ' . blog_title(), 'Login page on ' . blog_title(), site_url()),
+ 'error' => '',
+ 'bodyclass' => 'editprofile',
+ 'breadcrumb' => '' . config('breadcrumb.home') . ' » Login'
+ ));
+ }
+ } else {
+ $message['error'] = '';
+ if (empty($user)) {
+ $message['error'] .= 'User field is required.';
+ }
+ if (empty($pass)) {
+ $message['error'] .= 'Password field is required.';
+ }
+ if (!$proper) {
+ $message['error'] .= 'CSRF Token not correct.';
+ }
+
+ config('views.root', 'system/admin/views');
+
+ render('login', array(
+ 'head_contents' => head_contents('Login - ' . blog_title(), 'Login page on ' . blog_title(), site_url()),
+ 'error' => '' . $message['error'] . '
',
+ 'username' => $user,
+ 'password' => $pass,
+ 'bodyclass' => 'editprofile',
+ 'breadcrumb' => '' . config('breadcrumb.home') . ' » Login'
+ ));
+ }
});
// The blog post page
-get('/:year/:month/:name', function($year, $month, $name){
-
- if(!login()) {
- file_cache($_SERVER['REQUEST_URI']);
- }
-
- $post = find_post($year, $month, $name);
-
- $current = $post['current'];
-
- if(!$current){
- not_found();
- }
-
- $bio = get_bio($current->author);
-
- if(isset($bio[0])) {
- $bio = $bio[0];
- }
- else {
- $bio = default_profile($current->author);
- }
-
- if (array_key_exists('prev', $post)) {
- $prev = $post['prev'];
- }
- else {
- $prev = array();
- }
-
- if (array_key_exists('next', $post)) {
- $next= $post['next'];
- }
- else {
- $next = array();
- }
-
- render('post',array(
- 'head_contents' => head_contents($current->title .' - ' . blog_title(), $description = get_description($current->body), $current->url),
- 'p' => $current,
- 'authorinfo' => authorinfo($bio->title, $bio->body),
- 'bodyclass' => 'inpost',
- 'breadcrumb' => '' .config('breadcrumb.home'). ' » '. $current->tagb . ' » ' . $current->title,
- 'prev' => has_prev($prev),
- 'next' => has_next($next),
- 'type' => 'blogpost',
- ));
-
+get('/:year/:month/:name', function($year, $month, $name) {
+
+ if(config("views.counter") != "true")
+ {
+ if (!login()) {
+ file_cache($_SERVER['REQUEST_URI']);
+ }
+ }
+
+ $post = find_post($year, $month, $name);
+
+ $current = $post['current'];
+
+ if (!$current) {
+ not_found();
+ }
+
+ if(config("views.counter") == "true")
+ {
+ add_view($current->file);
+
+ if (!login()) {
+ file_cache($_SERVER['REQUEST_URI']);
+ }
+ }
+
+
+ $bio = get_bio($current->author);
+
+ if (isset($bio[0])) {
+ $bio = $bio[0];
+ } else {
+ $bio = default_profile($current->author);
+ }
+
+ if (array_key_exists('prev', $post)) {
+ $prev = $post['prev'];
+ } else {
+ $prev = array();
+ }
+
+ if (array_key_exists('next', $post)) {
+ $next = $post['next'];
+ } else {
+ $next = array();
+ }
+
+ render('post', array(
+ 'head_contents' => head_contents($current->title . ' - ' . blog_title(), $description = get_description($current->body), $current->url),
+ 'p' => $current,
+ 'authorinfo' => authorinfo($bio->title, $bio->body),
+ 'bodyclass' => 'inpost',
+ 'breadcrumb' => '' . config('breadcrumb.home') . ' » ' . $current->tagb . ' » ' . $current->title,
+ 'prev' => has_prev($prev),
+ 'next' => has_next($next),
+ 'type' => 'blogpost',
+ ));
});
// Edit blog post
-get('/:year/:month/:name/edit', function($year, $month, $name){
-
- if(login()) {
-
- $user = $_SESSION[config("site.url")]['user'];
- $role = user('role', $user);
-
- config('views.root', 'system/admin/views');
- $post = find_post($year, $month, $name);
-
- if(!$post){
- not_found();
- }
-
- $current = $post['current'];
-
- if($user === $current->author || $role === 'admin') {
- render('edit-post',array(
- 'head_contents' => head_contents('Edit post - ' . blog_title(), blog_description(), site_url()),
- 'p' => $current,
- 'bodyclass' => 'editpost',
- 'breadcrumb' => '' .config('breadcrumb.home'). ' » '. $current->tagb . ' » ' . $current->title
- ));
- }
- else {
- render('denied',array(
- 'head_contents' => head_contents('Edit post - ' . blog_title(), blog_description(), site_url()),
- 'p' => $current,
- 'bodyclass' => 'denied',
- 'breadcrumb' => '' .config('breadcrumb.home'). ' » '. $current->tagb . ' » ' . $current->title
- ));
- }
- }
- else {
- $login = site_url() . 'login';
- header("location: $login");
- }
+get('/:year/:month/:name/edit', function($year, $month, $name) {
+
+ if (login()) {
+
+ $user = $_SESSION[config("site.url")]['user'];
+ $role = user('role', $user);
+
+ config('views.root', 'system/admin/views');
+ $post = find_post($year, $month, $name);
+
+ if (!$post) {
+ not_found();
+ }
+
+ $current = $post['current'];
+
+ if ($user === $current->author || $role === 'admin') {
+ render('edit-post', array(
+ 'head_contents' => head_contents('Edit post - ' . blog_title(), blog_description(), site_url()),
+ 'p' => $current,
+ 'bodyclass' => 'editpost',
+ 'breadcrumb' => '' . config('breadcrumb.home') . ' » ' . $current->tagb . ' » ' . $current->title
+ ));
+ } else {
+ render('denied', array(
+ 'head_contents' => head_contents('Edit post - ' . blog_title(), blog_description(), site_url()),
+ 'p' => $current,
+ 'bodyclass' => 'denied',
+ 'breadcrumb' => '' . config('breadcrumb.home') . ' » ' . $current->tagb . ' » ' . $current->title
+ ));
+ }
+ } else {
+ $login = site_url() . 'login';
+ header("location: $login");
+ }
});
// Get edited data for blog post
post('/:year/:month/:name/edit', function() {
- $proper = is_csrf_proper(from($_REQUEST, 'csrf_token'));
-
- $title = from($_REQUEST, 'title');
- $tag = from($_REQUEST, 'tag');
- $url = from($_REQUEST, 'url');
- $content = from($_REQUEST, 'content');
- $oldfile = from($_REQUEST, 'oldfile');
- $destination = from($_GET, 'destination');
- if($proper && !empty($title) && !empty($tag) && !empty($content)) {
- if(!empty($url)) {
- edit_post($title, $tag, $url, $content, $oldfile, $destination);
- }
- else {
- $url = $title;
- edit_post($title, $tag, $url, $content, $oldfile, $destination);
- }
- }
- else {
- $message['error'] = '';
- if(empty($title)) {
- $message['error'] .= 'Title field is required.';
- }
- if (empty($tag)) {
- $message['error'] .= 'Tag field is required.';
- }
- if (empty($content)) {
- $message['error'] .= 'Content field is required.';
- }
- if(! $proper ) {
- $message['error'] .= 'CSRF Token not correct.';
- }
- config('views.root', 'system/admin/views');
-
- render('edit-post',array(
- 'head_contents' => head_contents('Edit post - ' . blog_title(), blog_description(), site_url()),
- 'error' => '' . $message['error'] . '
',
- 'oldfile' => $oldfile,
- 'postTitle' => $title,
- 'postTag' => $tag,
- 'postUrl' => $url,
- 'postContent' => $content,
- 'bodyclass' => 'editpost',
- 'breadcrumb' => '' .config('breadcrumb.home'). ' » Edit post'
- ));
- }
-
+ $proper = is_csrf_proper(from($_REQUEST, 'csrf_token'));
+
+ $title = from($_REQUEST, 'title');
+ $tag = from($_REQUEST, 'tag');
+ $url = from($_REQUEST, 'url');
+ $content = from($_REQUEST, 'content');
+ $oldfile = from($_REQUEST, 'oldfile');
+ $destination = from($_GET, 'destination');
+ if ($proper && !empty($title) && !empty($tag) && !empty($content)) {
+ if (!empty($url)) {
+ edit_post($title, $tag, $url, $content, $oldfile, $destination);
+ } else {
+ $url = $title;
+ edit_post($title, $tag, $url, $content, $oldfile, $destination);
+ }
+ } else {
+ $message['error'] = '';
+ if (empty($title)) {
+ $message['error'] .= 'Title field is required.';
+ }
+ if (empty($tag)) {
+ $message['error'] .= 'Tag field is required.';
+ }
+ if (empty($content)) {
+ $message['error'] .= 'Content field is required.';
+ }
+ if (!$proper) {
+ $message['error'] .= 'CSRF Token not correct.';
+ }
+ config('views.root', 'system/admin/views');
+
+ render('edit-post', array(
+ 'head_contents' => head_contents('Edit post - ' . blog_title(), blog_description(), site_url()),
+ 'error' => '' . $message['error'] . '
',
+ 'oldfile' => $oldfile,
+ 'postTitle' => $title,
+ 'postTag' => $tag,
+ 'postUrl' => $url,
+ 'postContent' => $content,
+ 'bodyclass' => 'editpost',
+ 'breadcrumb' => '' . config('breadcrumb.home') . ' » Edit post'
+ ));
+ }
});
// Delete blog post
-get('/:year/:month/:name/delete', function($year, $month, $name){
-
- if(login()) {
-
- $user = $_SESSION[config("site.url")]['user'];
- $role = user('role', $user);
-
- config('views.root', 'system/admin/views');
- $post = find_post($year, $month, $name);
-
- if(!$post){
- not_found();
- }
-
- $current = $post['current'];
-
- if($user === $current->author || $role === 'admin') {
- render('delete-post',array(
- 'head_contents' => head_contents('Delete post - ' . blog_title(), blog_description(), site_url()),
- 'p' => $current,
- 'bodyclass' => 'deletepost',
- 'breadcrumb' => '' .config('breadcrumb.home'). ' » '. $current->tagb . ' » ' . $current->title
- ));
- }
- else {
- render('denied',array(
- 'head_contents' => head_contents('Delete post - ' . blog_title(), blog_description(), site_url()),
- 'p' => $current,
- 'bodyclass' => 'deletepost',
- 'breadcrumb' => '' .config('breadcrumb.home'). ' » '. $current->tagb . ' » ' . $current->title
- ));
- }
- }
- else {
- $login = site_url() . 'login';
- header("location: $login");
- }
+get('/:year/:month/:name/delete', function($year, $month, $name) {
+
+ if (login()) {
+
+ $user = $_SESSION[config("site.url")]['user'];
+ $role = user('role', $user);
+
+ config('views.root', 'system/admin/views');
+ $post = find_post($year, $month, $name);
+
+ if (!$post) {
+ not_found();
+ }
+
+ $current = $post['current'];
+
+ if ($user === $current->author || $role === 'admin') {
+ render('delete-post', array(
+ 'head_contents' => head_contents('Delete post - ' . blog_title(), blog_description(), site_url()),
+ 'p' => $current,
+ 'bodyclass' => 'deletepost',
+ 'breadcrumb' => '' . config('breadcrumb.home') . ' » ' . $current->tagb . ' » ' . $current->title
+ ));
+ } else {
+ render('denied', array(
+ 'head_contents' => head_contents('Delete post - ' . blog_title(), blog_description(), site_url()),
+ 'p' => $current,
+ 'bodyclass' => 'deletepost',
+ 'breadcrumb' => '' . config('breadcrumb.home') . ' » ' . $current->tagb . ' » ' . $current->title
+ ));
+ }
+ } else {
+ $login = site_url() . 'login';
+ header("location: $login");
+ }
});
// Get deleted data for blog post
post('/:year/:month/:name/delete', function() {
- $proper = is_csrf_proper(from($_REQUEST, 'csrf_token'));
- if($proper)
- {
- $file = from($_REQUEST, 'file');
- $destination = from($_GET, 'destination');
- delete_post($file, $destination);
- }
+ $proper = is_csrf_proper(from($_REQUEST, 'csrf_token'));
+ if ($proper) {
+ $file = from($_REQUEST, 'file');
+ $destination = from($_GET, 'destination');
+ delete_post($file, $destination);
+ }
});
// The author page
-get('/author/:profile', function($profile){
-
- if(!login()) {
- file_cache($_SERVER['REQUEST_URI']);
- }
-
- $page = from($_GET, 'page');
- $page = $page ? (int)$page : 1;
- $perpage = config('profile.perpage');
-
- $posts = get_profile($profile, $page, $perpage);
-
- $total = get_count($profile, 'dirname');
-
- $bio = get_bio($profile);
-
- if(isset($bio[0])) {
- $bio = $bio[0];
- }
- else {
- $bio = default_profile($profile);
- }
-
- if(empty($posts) || $page < 1){
- render('profile',array(
- 'head_contents' => head_contents('Profile for: '. $bio->title .' - ' . blog_title(), 'Profile page and all posts by ' . $bio->title . ' on ' . blog_title() . '.', site_url() . 'author/' . $profile),
- 'page' => $page,
- 'posts' => null,
- 'bio' => $bio->body,
- 'name' => $bio->title,
- 'bodyclass' => 'inprofile',
- 'breadcrumb' => '' .config('breadcrumb.home'). ' » Profile for: ' . $bio->title,
- 'pagination' => has_pagination($total, $perpage, $page)
- ));
- die;
- }
-
- render('profile',array(
- 'head_contents' => head_contents('Profile for: '. $bio->title .' - ' . blog_title(), 'Profile page and all posts by ' . $bio->title . ' on ' . blog_title() . '.', site_url() . 'author/' . $profile),
- 'page' => $page,
- 'posts' => $posts,
- 'bio' => $bio->body,
- 'name' => $bio->title,
- 'bodyclass' => 'inprofile',
- 'breadcrumb' => '' .config('breadcrumb.home'). ' » Profile for: ' . $bio->title,
- 'pagination' => has_pagination($total, $perpage, $page)
- ));
+get('/author/:profile', function($profile) {
+
+ if (!login()) {
+ file_cache($_SERVER['REQUEST_URI']);
+ }
+
+ $page = from($_GET, 'page');
+ $page = $page ? (int) $page : 1;
+ $perpage = config('profile.perpage');
+
+ $posts = get_profile($profile, $page, $perpage);
+
+ $total = get_count($profile, 'dirname');
+
+ $bio = get_bio($profile);
+
+ if (isset($bio[0])) {
+ $bio = $bio[0];
+ } else {
+ $bio = default_profile($profile);
+ }
+
+ if (empty($posts) || $page < 1) {
+ render('profile', array(
+ 'head_contents' => head_contents('Profile for: ' . $bio->title . ' - ' . blog_title(), 'Profile page and all posts by ' . $bio->title . ' on ' . blog_title() . '.', site_url() . 'author/' . $profile),
+ 'page' => $page,
+ 'posts' => null,
+ 'bio' => $bio->body,
+ 'name' => $bio->title,
+ 'bodyclass' => 'inprofile',
+ 'breadcrumb' => '' . config('breadcrumb.home') . ' » Profile for: ' . $bio->title,
+ 'pagination' => has_pagination($total, $perpage, $page)
+ ));
+ die;
+ }
+
+ render('profile', array(
+ 'head_contents' => head_contents('Profile for: ' . $bio->title . ' - ' . blog_title(), 'Profile page and all posts by ' . $bio->title . ' on ' . blog_title() . '.', site_url() . 'author/' . $profile),
+ 'page' => $page,
+ 'posts' => $posts,
+ 'bio' => $bio->body,
+ 'name' => $bio->title,
+ 'bodyclass' => 'inprofile',
+ 'breadcrumb' => '' . config('breadcrumb.home') . ' » Profile for: ' . $bio->title,
+ 'pagination' => has_pagination($total, $perpage, $page)
+ ));
});
// Edit the profile
-get('/edit/profile', function(){
-
- if(login()) {
-
- config('views.root', 'system/admin/views');
- render('edit-profile',array(
- 'head_contents' => head_contents('Edit profile - ' . blog_title(), blog_description(), site_url()),
- 'bodyclass' => 'editprofile',
- 'breadcrumb' => '' .config('breadcrumb.home'). ' » Edit profile',
- ));
- }
- else {
- $login = site_url() . 'login';
- header("location: $login");
- }
+get('/edit/profile', function() {
+
+ if (login()) {
+
+ config('views.root', 'system/admin/views');
+ render('edit-profile', array(
+ 'head_contents' => head_contents('Edit profile - ' . blog_title(), blog_description(), site_url()),
+ 'bodyclass' => 'editprofile',
+ 'breadcrumb' => '' . config('breadcrumb.home') . ' » Edit profile',
+ ));
+ } else {
+ $login = site_url() . 'login';
+ header("location: $login");
+ }
});
// Get edited data for static page
post('/edit/profile', function() {
-
- $proper = is_csrf_proper(from($_REQUEST, 'csrf_token'));
-
- $user = $_SESSION[config("site.url")]['user'];
- $title = from($_REQUEST, 'title');
- $content = from($_REQUEST, 'content');
- if($proper && !empty($title) && !empty($content)) {
- edit_profile($title, $content, $user);
- }
- else {
- $message['error'] = '';
- if(empty($title)) {
- $message['error'] .= 'Title field is required.';
- }
- if (empty($content)) {
- $message['error'] .= 'Content field is required.';
- }
- if(! $proper ) {
- $message['error'] .= 'CSRF Token not correct.';
- }
- config('views.root', 'system/admin/views');
-
- render('edit-profile',array(
- 'head_contents' => head_contents('Edit profile - ' . blog_title(), blog_description(), site_url()),
- 'error' => '' . $message['error'] . '
',
- 'postTitle' => $title,
- 'postContent' => $content,
- 'bodyclass' => 'editprofile',
- 'breadcrumb' => '' .config('breadcrumb.home'). ' » Edit profile'
- ));
- }
-
+
+ $proper = is_csrf_proper(from($_REQUEST, 'csrf_token'));
+
+ $user = $_SESSION[config("site.url")]['user'];
+ $title = from($_REQUEST, 'title');
+ $content = from($_REQUEST, 'content');
+ if ($proper && !empty($title) && !empty($content)) {
+ edit_profile($title, $content, $user);
+ } else {
+ $message['error'] = '';
+ if (empty($title)) {
+ $message['error'] .= 'Title field is required.';
+ }
+ if (empty($content)) {
+ $message['error'] .= 'Content field is required.';
+ }
+ if (!$proper) {
+ $message['error'] .= 'CSRF Token not correct.';
+ }
+ config('views.root', 'system/admin/views');
+
+ render('edit-profile', array(
+ 'head_contents' => head_contents('Edit profile - ' . blog_title(), blog_description(), site_url()),
+ 'error' => '' . $message['error'] . '
',
+ 'postTitle' => $title,
+ 'postContent' => $content,
+ 'bodyclass' => 'editprofile',
+ 'breadcrumb' => '' . config('breadcrumb.home') . ' » Edit profile'
+ ));
+ }
});
get('/admin/posts', function () {
- $user = $_SESSION[config("site.url")]['user'];
- $role = user('role', $user);
- if(login()) {
-
- config('views.root', 'system/admin/views');
- if($role === 'admin') {
-
- config('views.root', 'system/admin/views');
- $page = from($_GET, 'page');
- $page = $page ? (int)$page : 1;
- $perpage = 20;
-
- $posts = get_posts(null, $page, $perpage);
-
- $total = '';
-
- if(empty($posts) || $page < 1){
-
- // a non-existing page
- render('no-posts',array(
- 'head_contents' => head_contents('All blog posts - ' . blog_title(), blog_description(), site_url()),
- 'bodyclass' => 'noposts',
- ));
-
- die;
- }
-
- $tl = blog_tagline();
-
- if($tl){ $tagline = ' - ' . $tl;} else {$tagline = '';}
-
- render('posts-list',array(
- 'head_contents' => head_contents('All blog posts - ' . blog_title(), blog_description(), site_url()),
- 'heading' => 'All blog posts',
- 'page' => $page,
- 'posts' => $posts,
- 'bodyclass' => 'all-posts',
- 'breadcrumb' => '',
- 'pagination' => has_pagination($total, $perpage, $page)
- ));
- }
- else {
- render('denied',array(
- 'head_contents' => head_contents('All blog posts - ' . blog_title(), blog_description(), site_url()),
- 'bodyclass' => 'denied',
- 'breadcrumb' => '',
- ));
- }
- }
- else {
- $login = site_url() . 'login';
- header("location: $login");
- }
+ $user = $_SESSION[config("site.url")]['user'];
+ $role = user('role', $user);
+ if (login()) {
+
+ config('views.root', 'system/admin/views');
+ if ($role === 'admin') {
+
+ config('views.root', 'system/admin/views');
+ $page = from($_GET, 'page');
+ $page = $page ? (int) $page : 1;
+ $perpage = 20;
+
+ $posts = get_posts(null, $page, $perpage);
+
+ $total = '';
+
+ if (empty($posts) || $page < 1) {
+
+ // a non-existing page
+ render('no-posts', array(
+ 'head_contents' => head_contents('All blog posts - ' . blog_title(), blog_description(), site_url()),
+ 'bodyclass' => 'noposts',
+ ));
+
+ die;
+ }
+
+ $tl = blog_tagline();
+
+ if ($tl) {
+ $tagline = ' - ' . $tl;
+ } else {
+ $tagline = '';
+ }
+
+ render('posts-list', array(
+ 'head_contents' => head_contents('All blog posts - ' . blog_title(), blog_description(), site_url()),
+ 'heading' => 'All blog posts',
+ 'page' => $page,
+ 'posts' => $posts,
+ 'bodyclass' => 'all-posts',
+ 'breadcrumb' => '',
+ 'pagination' => has_pagination($total, $perpage, $page)
+ ));
+ } else {
+ render('denied', array(
+ 'head_contents' => head_contents('All blog posts - ' . blog_title(), blog_description(), site_url()),
+ 'bodyclass' => 'denied',
+ 'breadcrumb' => '',
+ ));
+ }
+ } else {
+ $login = site_url() . 'login';
+ header("location: $login");
+ }
});
// The author page
-get('/admin/mine', function(){
-
- if(login()) {
-
- config('views.root', 'system/admin/views');
-
- $profile = $_SESSION[config("site.url")]['user'];
-
- $page = from($_GET, 'page');
- $page = $page ? (int)$page : 1;
- $perpage = config('profile.perpage');
-
- $posts = get_profile($profile, $page, $perpage);
-
- $total = get_count($profile, 'dirname');
-
- $bio = get_bio($profile);
-
- if(isset($bio[0])) {
- $bio = $bio[0];
- }
- else {
- $bio = default_profile($profile);
- }
-
- if(empty($posts) || $page < 1){
- render('user-posts',array(
- 'head_contents' => head_contents('My blog posts - ' . blog_title(), blog_description(), site_url()),
- 'page' => $page,
- 'heading' => 'My posts',
- 'posts' => null,
- 'bio' => $bio->body,
- 'name' => $bio->title,
- 'bodyclass' => 'userposts',
- 'breadcrumb' => '' .config('breadcrumb.home'). ' » Profile for: ' . $bio->title,
- 'pagination' => has_pagination($total, $perpage, $page)
- ));
- die;
- }
-
- render('user-posts',array(
- 'head_contents' => head_contents('My blog posts - ' . blog_title(), blog_description(), site_url()),
- 'heading' => 'My posts',
- 'page' => $page,
- 'posts' => $posts,
- 'bio' => $bio->body,
- 'name' => $bio->title,
- 'bodyclass' => 'userposts',
- 'breadcrumb' => '' .config('breadcrumb.home'). ' » Profile for: ' . $bio->title,
- 'pagination' => has_pagination($total, $perpage, $page)
- ));
- }
- else {
- $login = site_url() . 'login';
- header("location: $login");
- }
+get('/admin/mine', function() {
+
+ if (login()) {
+
+ config('views.root', 'system/admin/views');
+
+ $profile = $_SESSION[config("site.url")]['user'];
+
+ $page = from($_GET, 'page');
+ $page = $page ? (int) $page : 1;
+ $perpage = config('profile.perpage');
+
+ $posts = get_profile($profile, $page, $perpage);
+
+ $total = get_count($profile, 'dirname');
+
+ $bio = get_bio($profile);
+
+ if (isset($bio[0])) {
+ $bio = $bio[0];
+ } else {
+ $bio = default_profile($profile);
+ }
+
+ if (empty($posts) || $page < 1) {
+ render('user-posts', array(
+ 'head_contents' => head_contents('My blog posts - ' . blog_title(), blog_description(), site_url()),
+ 'page' => $page,
+ 'heading' => 'My posts',
+ 'posts' => null,
+ 'bio' => $bio->body,
+ 'name' => $bio->title,
+ 'bodyclass' => 'userposts',
+ 'breadcrumb' => '' . config('breadcrumb.home') . ' » Profile for: ' . $bio->title,
+ 'pagination' => has_pagination($total, $perpage, $page)
+ ));
+ die;
+ }
+
+ render('user-posts', array(
+ 'head_contents' => head_contents('My blog posts - ' . blog_title(), blog_description(), site_url()),
+ 'heading' => 'My posts',
+ 'page' => $page,
+ 'posts' => $posts,
+ 'bio' => $bio->body,
+ 'name' => $bio->title,
+ 'bodyclass' => 'userposts',
+ 'breadcrumb' => '' . config('breadcrumb.home') . ' » Profile for: ' . $bio->title,
+ 'pagination' => has_pagination($total, $perpage, $page)
+ ));
+ } else {
+ $login = site_url() . 'login';
+ header("location: $login");
+ }
});
// The static page
-get('/:static', function($static){
-
- if($static === 'sitemap.xml' || $static === 'sitemap.base.xml' || $static === 'sitemap.post.xml' || $static === 'sitemap.static.xml' || $static === 'sitemap.tag.xml' || $static === 'sitemap.archive.xml' || $static === 'sitemap.author.xml') {
-
- header('Content-Type: text/xml');
-
- if ($static === 'sitemap.xml') {
- generate_sitemap('index');
- }
- else if ($static === 'sitemap.base.xml') {
- generate_sitemap('base');
- }
- else if ($static === 'sitemap.post.xml') {
- generate_sitemap('post');
- }
- else if ($static === 'sitemap.static.xml') {
- generate_sitemap('static');
- }
- else if ($static === 'sitemap.tag.xml') {
- generate_sitemap('tag');
- }
- else if ($static === 'sitemap.archive.xml') {
- generate_sitemap('archive');
- }
- else if ($static === 'sitemap.author.xml') {
- generate_sitemap('author');
- }
-
- die;
-
- }
- elseif($static === 'admin') {
- if(login()) {
- config('views.root', 'system/admin/views');
- render('main', array(
- 'head_contents' => head_contents('Admin - ' . blog_title(), blog_description(), site_url()),
- 'bodyclass' => 'adminfront',
- 'breadcrumb' => '' .config('breadcrumb.home'). ' » Admin'
- ));
- }
- else {
- $login = site_url() . 'login';
- header("location: $login");
- }
- die;
- }
- elseif($static === 'login') {
- config('views.root', 'system/admin/views');
- render('login', array(
- 'head_contents' => head_contents('Login - ' . blog_title(), 'Login page from ' . blog_title() . '.', site_url() . '/login'),
- 'bodyclass' => 'inlogin',
- 'breadcrumb' => '' .config('breadcrumb.home'). ' » Login'
- ));
- die;
- }
- elseif($static === 'logout') {
- if(login()) {
- config('views.root', 'system/admin/views');
- render('logout', array(
- 'head_contents' => head_contents('Logout - ' . blog_title(), blog_description(), site_url()),
- 'bodyclass' => 'inlogout',
- 'breadcrumb' => '' .config('breadcrumb.home'). ' » Logout'
- ));
- }
- else {
- $login = site_url() . 'login';
- header("location: $login");
- }
- die;
- }
- else {
-
- if(!login()) {
- file_cache($_SERVER['REQUEST_URI']);
- }
-
- $post = get_static_post($static);
-
- if(!$post){
- not_found();
- }
-
- $post = $post[0];
-
- render('static',array(
- 'head_contents' => head_contents($post->title .' - ' . blog_title(), $description = get_description($post->body), $post->url),
- 'bodyclass' => 'inpage',
- 'breadcrumb' => '' .config('breadcrumb.home'). ' » ' . $post->title,
- 'p' => $post,
- 'type' => 'staticpage',
- ));
- }
-
+get('/:static', function($static) {
+
+ if ($static === 'sitemap.xml' || $static === 'sitemap.base.xml' || $static === 'sitemap.post.xml' || $static === 'sitemap.static.xml' || $static === 'sitemap.tag.xml' || $static === 'sitemap.archive.xml' || $static === 'sitemap.author.xml') {
+
+ header('Content-Type: text/xml');
+
+ if ($static === 'sitemap.xml') {
+ generate_sitemap('index');
+ } else if ($static === 'sitemap.base.xml') {
+ generate_sitemap('base');
+ } else if ($static === 'sitemap.post.xml') {
+ generate_sitemap('post');
+ } else if ($static === 'sitemap.static.xml') {
+ generate_sitemap('static');
+ } else if ($static === 'sitemap.tag.xml') {
+ generate_sitemap('tag');
+ } else if ($static === 'sitemap.archive.xml') {
+ generate_sitemap('archive');
+ } else if ($static === 'sitemap.author.xml') {
+ generate_sitemap('author');
+ }
+
+ die;
+ } elseif ($static === 'admin') {
+ if (login()) {
+ config('views.root', 'system/admin/views');
+ render('main', array(
+ 'head_contents' => head_contents('Admin - ' . blog_title(), blog_description(), site_url()),
+ 'bodyclass' => 'adminfront',
+ 'breadcrumb' => '' . config('breadcrumb.home') . ' » Admin'
+ ));
+ } else {
+ $login = site_url() . 'login';
+ header("location: $login");
+ }
+ die;
+ } elseif ($static === 'login') {
+ config('views.root', 'system/admin/views');
+ render('login', array(
+ 'head_contents' => head_contents('Login - ' . blog_title(), 'Login page from ' . blog_title() . '.', site_url() . '/login'),
+ 'bodyclass' => 'inlogin',
+ 'breadcrumb' => '' . config('breadcrumb.home') . ' » Login'
+ ));
+ die;
+ } elseif ($static === 'logout') {
+ if (login()) {
+ config('views.root', 'system/admin/views');
+ render('logout', array(
+ 'head_contents' => head_contents('Logout - ' . blog_title(), blog_description(), site_url()),
+ 'bodyclass' => 'inlogout',
+ 'breadcrumb' => '' . config('breadcrumb.home') . ' » Logout'
+ ));
+ } else {
+ $login = site_url() . 'login';
+ header("location: $login");
+ }
+ die;
+ } else {
+
+ if( config("views.counter") != "true")
+ {
+ if (!login()) {
+ file_cache($_SERVER['REQUEST_URI']);
+ }
+ }
+
+ $post = get_static_post($static);
+
+ if (!$post) {
+ not_found();
+ }
+
+ $post = $post[0];
+
+ if(config("views.counter") == "true")
+ {
+ add_view($post->file);
+ if (!login()) {
+ file_cache($_SERVER['REQUEST_URI']);
+ }
+ }
+
+ render('static', array(
+ 'head_contents' => head_contents($post->title . ' - ' . blog_title(), $description = get_description($post->body), $post->url),
+ 'bodyclass' => 'inpage',
+ 'breadcrumb' => '' . config('breadcrumb.home') . ' » ' . $post->title,
+ 'p' => $post,
+ 'type' => 'staticpage',
+ ));
+ }
});
// Edit the static page
-get('/:static/edit', function($static){
-
- if(login()) {
-
- config('views.root', 'system/admin/views');
- $post = get_static_post($static);
-
- if(!$post){
- not_found();
- }
-
- $post = $post[0];
-
- render('edit-page',array(
- 'head_contents' => head_contents('Edit page - ' . blog_title(), blog_description(), site_url()),
- 'bodyclass' => 'editpage',
- 'breadcrumb' => '' .config('breadcrumb.home'). ' » ' . $post->title,
- 'p' => $post,
- 'type' => 'staticpage',
- ));
- }
- else {
- $login = site_url() . 'login';
- header("location: $login");
- }
+get('/:static/edit', function($static) {
+
+ if (login()) {
+
+ config('views.root', 'system/admin/views');
+ $post = get_static_post($static);
+
+ if (!$post) {
+ not_found();
+ }
+
+ $post = $post[0];
+
+ render('edit-page', array(
+ 'head_contents' => head_contents('Edit page - ' . blog_title(), blog_description(), site_url()),
+ 'bodyclass' => 'editpage',
+ 'breadcrumb' => '' . config('breadcrumb.home') . ' » ' . $post->title,
+ 'p' => $post,
+ 'type' => 'staticpage',
+ ));
+ } else {
+ $login = site_url() . 'login';
+ header("location: $login");
+ }
});
// Get edited data for static page
post('/:static/edit', function() {
- $proper = is_csrf_proper(from($_REQUEST, 'csrf_token'));
-
- $title = from($_REQUEST, 'title');
- $url = from($_REQUEST, 'url');
- $content = from($_REQUEST, 'content');
- $oldfile = from($_REQUEST, 'oldfile');
- $destination = from($_GET, 'destination');
- if($proper && !empty($title) && !empty($content)) {
- if(!empty($url)) {
- edit_page($title, $url, $content, $oldfile, $destination);
- }
- else {
- $url = $title;
- edit_page($title, $url, $content, $oldfile, $destination);
- }
- }
- else {
- $message['error'] = '';
- if(empty($title)) {
- $message['error'] .= 'Title field is required.';
- }
- if (empty($content)) {
- $message['error'] .= 'Content field is required.';
- }
- if(! $proper ) {
- $message['error'] .= 'CSRF Token not correct.';
- }
- config('views.root', 'system/admin/views');
-
- render('edit-page',array(
- 'head_contents' => head_contents('Edit page - ' . blog_title(), blog_description(), site_url()),
- 'error' => '' . $message['error'] . '
',
- 'oldfile' => $oldfile,
- 'postTitle' => $title,
- 'postUrl' => $url,
- 'postContent' => $content,
- 'bodyclass' => 'editpage',
- 'breadcrumb' => '' .config('breadcrumb.home'). ' » Edit page'
- ));
- }
-
+ $proper = is_csrf_proper(from($_REQUEST, 'csrf_token'));
+
+ $title = from($_REQUEST, 'title');
+ $url = from($_REQUEST, 'url');
+ $content = from($_REQUEST, 'content');
+ $oldfile = from($_REQUEST, 'oldfile');
+ $destination = from($_GET, 'destination');
+ if ($proper && !empty($title) && !empty($content)) {
+ if (!empty($url)) {
+ edit_page($title, $url, $content, $oldfile, $destination);
+ } else {
+ $url = $title;
+ edit_page($title, $url, $content, $oldfile, $destination);
+ }
+ } else {
+ $message['error'] = '';
+ if (empty($title)) {
+ $message['error'] .= 'Title field is required.';
+ }
+ if (empty($content)) {
+ $message['error'] .= 'Content field is required.';
+ }
+ if (!$proper) {
+ $message['error'] .= 'CSRF Token not correct.';
+ }
+ config('views.root', 'system/admin/views');
+
+ render('edit-page', array(
+ 'head_contents' => head_contents('Edit page - ' . blog_title(), blog_description(), site_url()),
+ 'error' => '' . $message['error'] . '
',
+ 'oldfile' => $oldfile,
+ 'postTitle' => $title,
+ 'postUrl' => $url,
+ 'postContent' => $content,
+ 'bodyclass' => 'editpage',
+ 'breadcrumb' => '' . config('breadcrumb.home') . ' » Edit page'
+ ));
+ }
});
// Deleted the static page
-get('/:static/delete', function($static){
-
- if(login()) {
-
- config('views.root', 'system/admin/views');
- $post = get_static_post($static);
-
- if(!$post){
- not_found();
- }
-
- $post = $post[0];
-
- render('delete-page',array(
- 'head_contents' => head_contents('Delete page - ' . blog_title(), blog_description(), site_url()),
- 'bodyclass' => 'deletepage',
- 'breadcrumb' => '' .config('breadcrumb.home'). ' » ' . $post->title,
- 'p' => $post,
- 'type' => 'staticpage',
- ));
- }
- else {
- $login = site_url() . 'login';
- header("location: $login");
- }
+get('/:static/delete', function($static) {
+
+ if (login()) {
+
+ config('views.root', 'system/admin/views');
+ $post = get_static_post($static);
+
+ if (!$post) {
+ not_found();
+ }
+
+ $post = $post[0];
+
+ render('delete-page', array(
+ 'head_contents' => head_contents('Delete page - ' . blog_title(), blog_description(), site_url()),
+ 'bodyclass' => 'deletepage',
+ 'breadcrumb' => '' . config('breadcrumb.home') . ' » ' . $post->title,
+ 'p' => $post,
+ 'type' => 'staticpage',
+ ));
+ } else {
+ $login = site_url() . 'login';
+ header("location: $login");
+ }
});
// Get deleted data for static page
post('/:static/delete', function() {
- $proper = is_csrf_proper(from($_REQUEST, 'csrf_token'));
- if($proper)
- {
- $file = from($_REQUEST, 'file');
- $destination = from($_GET, 'destination');
- delete_page($file, $destination);
- }
+ $proper = is_csrf_proper(from($_REQUEST, 'csrf_token'));
+ if ($proper) {
+ $file = from($_REQUEST, 'file');
+ $destination = from($_GET, 'destination');
+ delete_page($file, $destination);
+ }
});
// Add blog post
-get('/add/post', function(){
-
- if(login()) {
-
- config('views.root', 'system/admin/views');
-
- render('add-post',array(
- 'head_contents' => head_contents('Add post - ' . blog_title(), blog_description(), site_url()),
- 'bodyclass' => 'addpost',
- 'breadcrumb' => '' .config('breadcrumb.home'). ' » Add post'
- ));
- }
- else {
- $login = site_url() . 'login';
- header("location: $login");
- }
+get('/add/post', function() {
+
+ if (login()) {
+
+ config('views.root', 'system/admin/views');
+
+ render('add-post', array(
+ 'head_contents' => head_contents('Add post - ' . blog_title(), blog_description(), site_url()),
+ 'bodyclass' => 'addpost',
+ 'breadcrumb' => '' . config('breadcrumb.home') . ' » Add post'
+ ));
+ } else {
+ $login = site_url() . 'login';
+ header("location: $login");
+ }
});
// Get submitted blog post data
-post('/add/post', function(){
-
- $proper = is_csrf_proper(from($_REQUEST, 'csrf_token'));
-
- $title = from($_REQUEST, 'title');
- $tag = from($_REQUEST, 'tag');
- $url = from($_REQUEST, 'url');
- $content = from($_REQUEST, 'content');
- $user = $_SESSION[config("site.url")]['user'];
- if($proper && !empty($title) && !empty($tag) && !empty($content)) {
- if(!empty($url)) {
- add_post($title, $tag, $url, $content, $user);
- }
- else {
- $url = $title;
- add_post($title, $tag, $url, $content, $user);
- }
- }
- else {
- $message['error'] = '';
- if(empty($title)) {
- $message['error'] .= 'Title field is required.';
- }
- if (empty($tag)) {
- $message['error'] .= 'Tag field is required.';
- }
- if (empty($content)) {
- $message['error'] .= 'Content field is required.';
- }
- if(! $proper ) {
- $message['error'] .= 'CSRF Token not correct.';
- }
- config('views.root', 'system/admin/views');
- render('add-post',array(
- 'head_contents' => head_contents('Add post - ' . blog_title(), blog_description(), site_url()),
- 'error' => '' . $message['error'] . '
',
- 'postTitle' => $title,
- 'postTag' => $tag,
- 'postUrl' => $url,
- 'postContent' => $content,
- 'bodyclass' => 'addpost',
- 'breadcrumb' => '' .config('breadcrumb.home'). ' » Add post'
- ));
- }
-
+post('/add/post', function() {
+
+ $proper = is_csrf_proper(from($_REQUEST, 'csrf_token'));
+
+ $title = from($_REQUEST, 'title');
+ $tag = from($_REQUEST, 'tag');
+ $url = from($_REQUEST, 'url');
+ $content = from($_REQUEST, 'content');
+ $user = $_SESSION[config("site.url")]['user'];
+ if ($proper && !empty($title) && !empty($tag) && !empty($content)) {
+ if (!empty($url)) {
+ add_post($title, $tag, $url, $content, $user);
+ } else {
+ $url = $title;
+ add_post($title, $tag, $url, $content, $user);
+ }
+ } else {
+ $message['error'] = '';
+ if (empty($title)) {
+ $message['error'] .= 'Title field is required.';
+ }
+ if (empty($tag)) {
+ $message['error'] .= 'Tag field is required.';
+ }
+ if (empty($content)) {
+ $message['error'] .= 'Content field is required.';
+ }
+ if (!$proper) {
+ $message['error'] .= 'CSRF Token not correct.';
+ }
+ config('views.root', 'system/admin/views');
+ render('add-post', array(
+ 'head_contents' => head_contents('Add post - ' . blog_title(), blog_description(), site_url()),
+ 'error' => '' . $message['error'] . '
',
+ 'postTitle' => $title,
+ 'postTag' => $tag,
+ 'postUrl' => $url,
+ 'postContent' => $content,
+ 'bodyclass' => 'addpost',
+ 'breadcrumb' => '' . config('breadcrumb.home') . ' » Add post'
+ ));
+ }
});
// Add the static page
-get('/add/page', function(){
-
- if(login()) {
-
- config('views.root', 'system/admin/views');
-
- render('add-page',array(
- 'head_contents' => head_contents('Add page - ' . blog_title(), blog_description(), site_url()),
- 'bodyclass' => 'addpage',
- 'breadcrumb' => '' .config('breadcrumb.home'). ' » Add page'
- ));
- }
- else {
- $login = site_url() . 'login';
- header("location: $login");
- }
+get('/add/page', function() {
+
+ if (login()) {
+
+ config('views.root', 'system/admin/views');
+
+ render('add-page', array(
+ 'head_contents' => head_contents('Add page - ' . blog_title(), blog_description(), site_url()),
+ 'bodyclass' => 'addpage',
+ 'breadcrumb' => '' . config('breadcrumb.home') . ' » Add page'
+ ));
+ } else {
+ $login = site_url() . 'login';
+ header("location: $login");
+ }
});
// Get submitted static page data
-post('/add/page', function(){
-
- $proper = is_csrf_proper(from($_REQUEST, 'csrf_token'));
-
- $title = from($_REQUEST, 'title');
- $url = from($_REQUEST, 'url');
- $content = from($_REQUEST, 'content');
- if($proper && !empty($title) && !empty($content)) {
- if(!empty($url)) {
- add_page($title, $url, $content);
- }
- else {
- $url = $title;
- add_page($title, $url, $content);
- }
- }
- else {
- $message['error'] = '';
- if(empty($title)) {
- $message['error'] .= 'Title field is required.';
- }
- if (empty($content)) {
- $message['error'] .= 'Content field is required.';
- }
- if(! $proper ) {
- $message['error'] .= 'CSRF Token not correct.';
- }
- config('views.root', 'system/admin/views');
- render('add-page',array(
- 'head_contents' => head_contents('Add page - ' . blog_title(), blog_description(), site_url()),
- 'error' => '' . $message['error'] . '
',
- 'postTitle' => $title,
- 'postUrl' => $url,
- 'postContent' => $content,
- 'bodyclass' => 'addpage',
- 'breadcrumb' => '' .config('breadcrumb.home'). ' » Add page'
- ));
- }
-
+post('/add/page', function() {
+
+ $proper = is_csrf_proper(from($_REQUEST, 'csrf_token'));
+
+ $title = from($_REQUEST, 'title');
+ $url = from($_REQUEST, 'url');
+ $content = from($_REQUEST, 'content');
+ if ($proper && !empty($title) && !empty($content)) {
+ if (!empty($url)) {
+ add_page($title, $url, $content);
+ } else {
+ $url = $title;
+ add_page($title, $url, $content);
+ }
+ } else {
+ $message['error'] = '';
+ if (empty($title)) {
+ $message['error'] .= 'Title field is required.';
+ }
+ if (empty($content)) {
+ $message['error'] .= 'Content field is required.';
+ }
+ if (!$proper) {
+ $message['error'] .= 'CSRF Token not correct.';
+ }
+ config('views.root', 'system/admin/views');
+ render('add-page', array(
+ 'head_contents' => head_contents('Add page - ' . blog_title(), blog_description(), site_url()),
+ 'error' => '' . $message['error'] . '
',
+ 'postTitle' => $title,
+ 'postUrl' => $url,
+ 'postContent' => $content,
+ 'bodyclass' => 'addpage',
+ 'breadcrumb' => '' . config('breadcrumb.home') . ' » Add page'
+ ));
+ }
});
// Import page
-get('/admin/import',function(){
- if(login()) {
- config('views.root', 'system/admin/views');
- render('import', array(
- 'head_contents' => head_contents('Import feed - ' . blog_title(), blog_description(), site_url()),
- 'bodyclass' => 'importfeed',
- 'breadcrumb' => '' .config('breadcrumb.home'). ' » Import feed'
- ));
- }
- else {
- $login = site_url() . 'login';
- header("location: $login");
- }
- die;
+get('/admin/import', function() {
+ if (login()) {
+ config('views.root', 'system/admin/views');
+ render('import', array(
+ 'head_contents' => head_contents('Import feed - ' . blog_title(), blog_description(), site_url()),
+ 'bodyclass' => 'importfeed',
+ 'breadcrumb' => '' . config('breadcrumb.home') . ' » Import feed'
+ ));
+ } else {
+ $login = site_url() . 'login';
+ header("location: $login");
+ }
+ die;
});
// Get import post
post('/admin/import', function() {
- $proper = is_csrf_proper(from($_REQUEST, 'csrf_token'));
-
- $url = from($_REQUEST, 'url');
- $credit = from($_REQUEST, 'credit');
- if(!empty($url)) {
-
- get_feed($url, $credit, null);
- $log = get_feed($url, $credit, null);
-
- if(!empty($log)) {
-
- config('views.root', 'system/admin/views');
-
- render('import',array(
- 'head_contents' => head_contents('Import feed - ' . blog_title(), blog_description(), site_url()),
- 'error' => '',
- 'bodyclass' => 'editprofile',
- 'breadcrumb' => '' .config('breadcrumb.home'). ' » Import feed'
- ));
- }
- }
- else {
- $message['error'] = '';
- if(empty($url)) {
- $message['error'] .= 'You need to specify the feed url.';
- }
- if(! $proper ) {
- $message['error'] .= 'CSRF Token not correct.';
- }
-
- config('views.root', 'system/admin/views');
-
- render('import',array(
- 'head_contents' => head_contents('Import feed - ' . blog_title(), blog_description(), site_url()),
- 'error' => '' . $message['error'] . '
',
- 'url' => $url,
- 'bodyclass' => 'editprofile',
- 'breadcrumb' => '' .config('breadcrumb.home'). ' » Login'
- ));
- }
-
+ $proper = is_csrf_proper(from($_REQUEST, 'csrf_token'));
+
+ $url = from($_REQUEST, 'url');
+ $credit = from($_REQUEST, 'credit');
+ if (!empty($url)) {
+
+ get_feed($url, $credit, null);
+ $log = get_feed($url, $credit, null);
+
+ if (!empty($log)) {
+
+ config('views.root', 'system/admin/views');
+
+ render('import', array(
+ 'head_contents' => head_contents('Import feed - ' . blog_title(), blog_description(), site_url()),
+ 'error' => '',
+ 'bodyclass' => 'editprofile',
+ 'breadcrumb' => '' . config('breadcrumb.home') . ' » Import feed'
+ ));
+ }
+ } else {
+ $message['error'] = '';
+ if (empty($url)) {
+ $message['error'] .= 'You need to specify the feed url.';
+ }
+ if (!$proper) {
+ $message['error'] .= 'CSRF Token not correct.';
+ }
+
+ config('views.root', 'system/admin/views');
+
+ render('import', array(
+ 'head_contents' => head_contents('Import feed - ' . blog_title(), blog_description(), site_url()),
+ 'error' => '' . $message['error'] . '
',
+ 'url' => $url,
+ 'bodyclass' => 'editprofile',
+ 'breadcrumb' => '' . config('breadcrumb.home') . ' » Login'
+ ));
+ }
});
// Backup page
-get('/admin/backup',function(){
- if(login()) {
- config('views.root', 'system/admin/views');
- render('backup', array(
- 'head_contents' => head_contents('Backup content - ' . blog_title(), blog_description(), site_url()),
- 'bodyclass' => 'backup',
- 'breadcrumb' => '' .config('breadcrumb.home'). ' » Backup'
- ));
- }
- else {
- $login = site_url() . 'login';
- header("location: $login");
- }
- die;
+get('/admin/backup', function() {
+ if (login()) {
+ config('views.root', 'system/admin/views');
+ render('backup', array(
+ 'head_contents' => head_contents('Backup content - ' . blog_title(), blog_description(), site_url()),
+ 'bodyclass' => 'backup',
+ 'breadcrumb' => '' . config('breadcrumb.home') . ' » Backup'
+ ));
+ } else {
+ $login = site_url() . 'login';
+ header("location: $login");
+ }
+ die;
});
// Create Zip file
-get('/admin/backup-start',function(){
- if(login()) {
- config('views.root', 'system/admin/views');
- render('backup-start', array(
- 'head_contents' => head_contents('Backup content started - ' . blog_title(), blog_description(), site_url()),
- 'bodyclass' => 'startbackup',
- 'breadcrumb' => '' .config('breadcrumb.home'). ' » Backup started'
- ));
- }
- else {
- $login = site_url() . 'login';
- header("location: $login");
- }
- die;
+get('/admin/backup-start', function() {
+ if (login()) {
+ config('views.root', 'system/admin/views');
+ render('backup-start', array(
+ 'head_contents' => head_contents('Backup content started - ' . blog_title(), blog_description(), site_url()),
+ 'bodyclass' => 'startbackup',
+ 'breadcrumb' => '' . config('breadcrumb.home') . ' » Backup started'
+ ));
+ } else {
+ $login = site_url() . 'login';
+ header("location: $login");
+ }
+ die;
});
// Delete all cache
-get('/admin/clear-cache',function(){
- if(login()) {
- config('views.root', 'system/admin/views');
- render('clear-cache', array(
- 'head_contents' => head_contents('Clearing cache started - ' . blog_title(), blog_description(), site_url()),
- 'bodyclass' => 'clearcache',
- 'breadcrumb' => '' .config('breadcrumb.home'). ' » Clearing cache started'
- ));
- }
- else {
- $login = site_url() . 'login';
- header("location: $login");
- }
- die;
+get('/admin/clear-cache', function() {
+ if (login()) {
+ config('views.root', 'system/admin/views');
+ render('clear-cache', array(
+ 'head_contents' => head_contents('Clearing cache started - ' . blog_title(), blog_description(), site_url()),
+ 'bodyclass' => 'clearcache',
+ 'breadcrumb' => '' . config('breadcrumb.home') . ' » Clearing cache started'
+ ));
+ } else {
+ $login = site_url() . 'login';
+ header("location: $login");
+ }
+ die;
});
// The tag page
-get('/tag/:tag',function($tag){
-
- if(!login()) {
- file_cache($_SERVER['REQUEST_URI']);
- }
-
- $page = from($_GET, 'page');
- $page = $page ? (int)$page : 1;
- $perpage = config('tag.perpage');
-
- $posts = get_tag($tag, $page, $perpage, false);
-
- $total = get_count($tag, 'filename');
-
- if(empty($posts) || $page < 1){
- // a non-existing page
- not_found();
- }
-
- render('main',array(
- 'head_contents' => head_contents('Posts tagged: ' . $tag .' - ' . blog_title(), 'All posts tagged: ' . $tag . ' on '. blog_title() . '.', site_url() . 'tag/' . $tag),
- 'page' => $page,
- 'posts' => $posts,
- 'bodyclass' => 'intag',
- 'breadcrumb' => '' .config('breadcrumb.home'). ' » Posts tagged: ' . $tag,
- 'pagination' => has_pagination($total, $perpage, $page)
- ));
+get('/tag/:tag', function($tag) {
+
+ if (!login()) {
+ file_cache($_SERVER['REQUEST_URI']);
+ }
+
+ $page = from($_GET, 'page');
+ $page = $page ? (int) $page : 1;
+ $perpage = config('tag.perpage');
+
+ $posts = get_tag($tag, $page, $perpage, false);
+
+ $total = get_count($tag, 'filename');
+
+ if (empty($posts) || $page < 1) {
+ // a non-existing page
+ not_found();
+ }
+
+ render('main', array(
+ 'head_contents' => head_contents('Posts tagged: ' . $tag . ' - ' . blog_title(), 'All posts tagged: ' . $tag . ' on ' . blog_title() . '.', site_url() . 'tag/' . $tag),
+ 'page' => $page,
+ 'posts' => $posts,
+ 'bodyclass' => 'intag',
+ 'breadcrumb' => '' . config('breadcrumb.home') . ' » Posts tagged: ' . $tag,
+ 'pagination' => has_pagination($total, $perpage, $page)
+ ));
});
// The archive page
-get('/archive/:req',function($req){
-
- if(!login()) {
- file_cache($_SERVER['REQUEST_URI']);
- }
-
- $page = from($_GET, 'page');
- $page = $page ? (int)$page : 1;
- $perpage = config('archive.perpage');
-
- $posts = get_archive($req, $page, $perpage);
-
- $total = get_count($req, 'filename');
-
- if(empty($posts) || $page < 1){
- // a non-existing page
- not_found();
- }
-
- $time = explode('-', $req);
- $date = strtotime($req);
-
- if (isset($time[0]) && isset($time[1]) && isset($time[2])) {
- $timestamp = date('d F Y', $date);
- }
- else if (isset($time[0]) && isset($time[1])) {
- $timestamp = date('F Y', $date);
- }
- else {
- $timestamp = $req;
- }
-
- if(!$date){
- // a non-existing page
- not_found();
- }
-
- render('main',array(
- 'head_contents' => head_contents('Archive for: ' . $timestamp .' - ' . blog_title(), 'Archive page for: ' . $timestamp . ' on ' . blog_title() . '.', site_url() . 'archive/' . $req),
- 'page' => $page,
- 'posts' => $posts,
- 'bodyclass' => 'inarchive',
- 'breadcrumb' => '' .config('breadcrumb.home'). ' » Archive for: ' . $timestamp,
- 'pagination' => has_pagination($total, $perpage, $page)
- ));
+get('/archive/:req', function($req) {
+
+ if (!login()) {
+ file_cache($_SERVER['REQUEST_URI']);
+ }
+
+ $page = from($_GET, 'page');
+ $page = $page ? (int) $page : 1;
+ $perpage = config('archive.perpage');
+
+ $posts = get_archive($req, $page, $perpage);
+
+ $total = get_count($req, 'filename');
+
+ if (empty($posts) || $page < 1) {
+ // a non-existing page
+ not_found();
+ }
+
+ $time = explode('-', $req);
+ $date = strtotime($req);
+
+ if (isset($time[0]) && isset($time[1]) && isset($time[2])) {
+ $timestamp = date('d F Y', $date);
+ } else if (isset($time[0]) && isset($time[1])) {
+ $timestamp = date('F Y', $date);
+ } else {
+ $timestamp = $req;
+ }
+
+ if (!$date) {
+ // a non-existing page
+ not_found();
+ }
+
+ render('main', array(
+ 'head_contents' => head_contents('Archive for: ' . $timestamp . ' - ' . blog_title(), 'Archive page for: ' . $timestamp . ' on ' . blog_title() . '.', site_url() . 'archive/' . $req),
+ 'page' => $page,
+ 'posts' => $posts,
+ 'bodyclass' => 'inarchive',
+ 'breadcrumb' => '' . config('breadcrumb.home') . ' » Archive for: ' . $timestamp,
+ 'pagination' => has_pagination($total, $perpage, $page)
+ ));
});
// The search page
-get('/search/:keyword', function($keyword){
-
- if(!login()) {
- file_cache($_SERVER['REQUEST_URI']);
- }
-
- $page = from($_GET, 'page');
- $page = $page ? (int)$page : 1;
- $perpage = config('search.perpage');
-
- $posts = get_keyword($keyword, $page, $perpage);
-
- $total = keyword_count($keyword);
-
- if(empty($posts) || $page < 1){
- // a non-existing page
- render('404-search', null, false);
- die;
- }
-
- render('main',array(
- 'head_contents' => head_contents('Search results for: ' . $keyword . ' - ' . blog_title(), 'Search results for: ' . $keyword . ' on '. blog_title() . '.', site_url() . 'search/' . $keyword),
- 'page' => $page,
- 'posts' => $posts,
- 'bodyclass' => 'insearch',
- 'breadcrumb' => '' .config('breadcrumb.home'). ' » Search results for: ' . $keyword,
- 'pagination' => has_pagination($total, $perpage, $page)
- ));
-
+get('/search/:keyword', function($keyword) {
+
+ if (!login()) {
+ file_cache($_SERVER['REQUEST_URI']);
+ }
+
+ $page = from($_GET, 'page');
+ $page = $page ? (int) $page : 1;
+ $perpage = config('search.perpage');
+
+ $posts = get_keyword($keyword, $page, $perpage);
+
+ $total = keyword_count($keyword);
+
+ if (empty($posts) || $page < 1) {
+ // a non-existing page
+ render('404-search', null, false);
+ die;
+ }
+
+ render('main', array(
+ 'head_contents' => head_contents('Search results for: ' . $keyword . ' - ' . blog_title(), 'Search results for: ' . $keyword . ' on ' . blog_title() . '.', site_url() . 'search/' . $keyword),
+ 'page' => $page,
+ 'posts' => $posts,
+ 'bodyclass' => 'insearch',
+ 'breadcrumb' => '' . config('breadcrumb.home') . ' » Search results for: ' . $keyword,
+ 'pagination' => has_pagination($total, $perpage, $page)
+ ));
});
// The JSON API
-get('/api/json',function(){
+get('/api/json', function() {
- header('Content-type: application/json');
+ header('Content-type: application/json');
- // Print the 10 latest posts as JSON
- echo generate_json(get_posts(null, 1, config('json.count')));
+ // Print the 10 latest posts as JSON
+ echo generate_json(get_posts(null, 1, config('json.count')));
});
// Show the RSS feed
-get('/feed/rss',function(){
+get('/feed/rss', function() {
- header('Content-Type: application/rss+xml');
+ header('Content-Type: application/rss+xml');
- // Show an RSS feed with the 30 latest posts
- echo generate_rss(get_posts(null, 1, config('rss.count')));
+ // Show an RSS feed with the 30 latest posts
+ echo generate_rss(get_posts(null, 1, config('rss.count')));
});
// Generate OPML file
-get('/feed/opml',function(){
+get('/feed/opml', function() {
+
+ header('Content-Type: text/xml');
- header('Content-Type: text/xml');
-
- // Generate OPML file for the RSS
- echo generate_opml();
-
+ // Generate OPML file for the RSS
+ echo generate_opml();
});
-get('/admin/update/now/:csrf',function($CSRF){
-
- $proper = is_csrf_proper($CSRF);
- $updater = new Updater;
- if( login() && $proper && $updater->updateAble())
- {
- $updater->update();
- config('views.root', 'system/admin/views');
- render('updated-to', array(
- 'head_contents' => head_contents('Updated - ' . blog_title(), blog_description(), site_url()),
- 'updater' => $updater,
- ));
- }
- else
- {
- $login = site_url() . 'login';
- header("location: $login");
- }
+get('/admin/update/now/:csrf', function($CSRF) {
+
+ $proper = is_csrf_proper($CSRF);
+ $updater = new Updater;
+ if (login() && $proper && $updater->updateAble()) {
+ $updater->update();
+ config('views.root', 'system/admin/views');
+ render('updated-to', array(
+ 'head_contents' => head_contents('Updated - ' . blog_title(), blog_description(), site_url()),
+ 'updater' => $updater,
+ ));
+ } else {
+ $login = site_url() . 'login';
+ header("location: $login");
+ }
});
// If we get here, it means that
// nothing has been matched above
-get('.*',function(){
- not_found();
+get('.*', function() {
+ not_found();
});
// Serve the blog
-dispatch();
\ No newline at end of file
+dispatch();
diff --git a/system/includes/functions.php b/system/includes/functions.php
index 23f9aad..716c6e6 100644
--- a/system/includes/functions.php
+++ b/system/includes/functions.php
@@ -9,960 +9,839 @@ use \Suin\RSSWriter\Channel;
use \Suin\RSSWriter\Item;
// Get blog post path. Unsorted. Mostly used on widget.
-function get_post_unsorted(){
-
- static $_unsorted = array();
-
- if(empty($_unsorted)){
-
- $url = 'cache/index/index-unsorted.txt';
- if (file_exists($url)) {
- $_unsorted = unserialize(file_get_contents($url));
- }
- else {
- rebuilt_cache('all');
- $_unsorted = unserialize(file_get_contents($url));
- }
-
- if(empty($_unsorted)){
- $_unsorted = glob('content/*/blog/*.md', GLOB_NOSORT);
- }
-
- }
-
- return $_unsorted;
+function get_post_unsorted() {
+
+ static $_unsorted = array();
+
+ if (empty($_unsorted)) {
+
+ $url = 'cache/index/index-unsorted.txt';
+ if(! file_exists($url)) {
+ rebuilt_cache('all');
+ }
+ $_unsorted = unserialize(file_get_contents($url));
+ }
+ return $_unsorted;
}
// Get blog post with more info about the path. Sorted by filename.
-function get_post_sorted(){
-
- static $_sorted = array();
-
- $url = 'cache/index/index-sorted.txt';
- if (file_exists($url)) {
- $_sorted = unserialize(file_get_contents($url));
- }
- else {
- rebuilt_cache('all');
- $_sorted = unserialize(file_get_contents($url));
- }
-
- if(empty($_sorted)){
-
- $url = 'cache/index/index-sorted.txt';
- if (file_exists($url)) {
- $_sorted = unserialize(file_get_contents($url));
- }
- else {
- rebuilt_cache('all');
- $_sorted = unserialize(file_get_contents($url));
- }
-
- if(empty($_sorted)){
- $tmp = array();
- $tmp = glob('content/*/blog/*.md', GLOB_NOSORT);
- if (is_array($tmp)) {
- foreach($tmp as $file) {
- $_sorted[] = pathinfo($file);
- }
- }
- usort($_sorted, "sortfile");
- }
- }
-
- return $_sorted;
+function get_post_sorted() {
+
+ static $_sorted = array();
+
+ if (empty($_sorted)) {
+ $url = 'cache/index/index-sorted.txt';
+ if(! file_exists($url)) {
+ rebuilt_cache('all');
+ }
+ $_sorted = unserialize(file_get_contents($url));
+ }
+ return $_sorted;
}
// Get static page path. Unsorted.
-function get_static_pages(){
-
- static $_page = array();
-
- if(empty($_page)){
- $url = 'cache/index/index-page.txt';
- if (file_exists($url)) {
- $_page = unserialize(file_get_contents($url));
- }
- else {
- rebuilt_cache('all');
- $_page = unserialize(file_get_contents($url));
- }
-
- if(empty($_page)){
- $_page = glob('content/static/*.md', GLOB_NOSORT);
- }
- }
-
- return $_page;
+function get_static_pages() {
+
+ static $_page = array();
+
+ if (empty($_page)) {
+ $url = 'cache/index/index-page.txt';
+ if(! file_exists($url)) {
+ rebuilt_cache('all');
+ }
+ $_page = unserialize(file_get_contents($url));
+ }
+ return $_page;
}
// Get author bio path. Unsorted.
-function get_author_names(){
-
- static $_author = array();
-
- if(empty($_author)){
- $url = 'cache/index/index-author.txt';
- if (file_exists($url)) {
- $_author = unserialize(file_get_contents($url));
- }
- else {
- rebuilt_cache('all');
- $_author = unserialize(file_get_contents($url));
- }
- if(empty($_author)){
- $_author = glob('content/*/author.md', GLOB_NOSORT);
- }
- }
-
- return $_author;
+function get_author_names() {
+
+ static $_author = array();
+
+ if (empty($_author)) {
+ $url = 'cache/index/index-author.txt';
+ if(! file_exists($url)) {
+ rebuilt_cache('all');
+ }
+ $_author = unserialize(file_get_contents($url));
+ }
+
+ return $_author;
}
// Get backup file.
-function get_zip_files(){
+function get_zip_files() {
- static $_zip = array();
+ static $_zip = array();
- if(empty($_zip)){
+ if (empty($_zip)) {
- // Get the names of all the
- // zip files.
+ // Get the names of all the
+ // zip files.
- $_zip = glob('backup/*.zip');
- }
+ $_zip = glob('backup/*.zip');
+ }
- return $_zip;
+ return $_zip;
}
// usort function. Sort by filename.
function sortfile($a, $b) {
- return $a['filename'] == $b['filename'] ? 0 : ( $a['filename'] < $b['filename'] ) ? 1 : -1;
+ return $a['filename'] == $b['filename'] ? 0 : ( $a['filename'] < $b['filename'] ) ? 1 : -1;
}
// usort function. Sort by date.
function sortdate($a, $b) {
- return $a->date == $b->date ? 0 : ( $a->date < $b->date ) ? 1 : -1;
+ return $a->date == $b->date ? 0 : ( $a->date < $b->date ) ? 1 : -1;
}
// Rebuilt cache index
function rebuilt_cache($type) {
- $dir = 'cache/index';
- $posts_cache_sorted = array();
- $posts_cache_unsorted = array();
- $page_cache = array();
- $author_cache = array();
-
- if(is_dir($dir) === false) {
- mkdir($dir, 0777, true);
- }
-
- if($type === 'posts') {
- $posts_cache_unsorted = glob('content/*/blog/*.md', GLOB_NOSORT);
- $string = serialize($posts_cache_unsorted);
- file_put_contents('cache/index/index-unsorted.txt', print_r($string, true));
-
- $tmp= array();
- $tmp = glob('content/*/blog/*.md', GLOB_NOSORT);
-
- if (is_array($tmp)) {
- foreach($tmp as $file) {
- $posts_cache_sorted[] = pathinfo($file);
- }
- }
- usort($posts_cache_sorted, "sortfile");
- $string = serialize($posts_cache_sorted);
- file_put_contents('cache/index/index-sorted.txt', print_r($string, true));
-
- }
-
- elseif ($type === 'page') {
-
- $page_cache = glob('content/static/*.md', GLOB_NOSORT);
- $string = serialize($page_cache);
- file_put_contents('cache/index/index-page.txt', print_r($string, true));
-
- }
-
- elseif ($type === 'author') {
-
- $author_cache = glob('content/*/author.md', GLOB_NOSORT);
- $string = serialize($author_cache);
- file_put_contents('cache/index/index-author.txt', print_r($string, true));
-
- }
-
- elseif ($type === 'all') {
-
- $posts_cache_unsorted = glob('content/*/blog/*.md', GLOB_NOSORT);
- $string = serialize($posts_cache_unsorted);
- file_put_contents('cache/index/index-unsorted.txt', print_r($string, true));
-
- $tmp= array();
- $tmp = glob('content/*/blog/*.md', GLOB_NOSORT);
- if (is_array($tmp)) {
- foreach($tmp as $file) {
- $posts_cache_sorted[] = pathinfo($file);
- }
- }
- usort($posts_cache_sorted, "sortfile");
- $string = serialize($posts_cache_sorted);
- file_put_contents('cache/index/index-sorted.txt', print_r($string, true));
-
- $page_cache = glob('content/static/*.md', GLOB_NOSORT);
- $string = serialize($page_cache);
- file_put_contents('cache/index/index-page.txt', print_r($string, true));
-
- $author_cache = glob('content/*/author.md', GLOB_NOSORT);
- $string = serialize($author_cache);
- file_put_contents('cache/index/index-author.txt', print_r($string, true));
-
- }
+ $dir = 'cache/index';
+ $posts_cache_sorted = array();
+ $posts_cache_unsorted = array();
+ $page_cache = array();
+ $author_cache = array();
+
+ if (is_dir($dir) === false) {
+ mkdir($dir, 0777, true);
+ }
+
+ if ($type === 'posts') {
+ $posts_cache_unsorted = glob('content/*/blog/*.md', GLOB_NOSORT);
+ $string = serialize($posts_cache_unsorted);
+ file_put_contents('cache/index/index-unsorted.txt', print_r($string, true));
+
+ $tmp = array();
+ $tmp = glob('content/*/blog/*.md', GLOB_NOSORT);
+
+ if (is_array($tmp)) {
+ foreach ($tmp as $file) {
+ $posts_cache_sorted[] = pathinfo($file);
+ }
+ }
+ usort($posts_cache_sorted, "sortfile");
+ $string = serialize($posts_cache_sorted);
+ file_put_contents('cache/index/index-sorted.txt', print_r($string, true));
+ } elseif ($type === 'page') {
+
+ $page_cache = glob('content/static/*.md', GLOB_NOSORT);
+ $string = serialize($page_cache);
+ file_put_contents('cache/index/index-page.txt', print_r($string, true));
+ } elseif ($type === 'author') {
+
+ $author_cache = glob('content/*/author.md', GLOB_NOSORT);
+ $string = serialize($author_cache);
+ file_put_contents('cache/index/index-author.txt', print_r($string, true));
+ } elseif ($type === 'all') {
+ rebuilt_cache('posts');
+ rebuilt_cache('page');
+ rebuilt_cache('author');
+ }
}
// Return blog posts.
-function get_posts($posts, $page = 1, $perpage = 0){
-
- if(empty($posts)) {
- $posts = get_post_sorted();
- }
-
- $tmp = array();
-
- // Extract a specific page with results
- $posts = array_slice($posts, ($page-1) * $perpage, $perpage);
-
- foreach($posts as $index => $v){
-
- $post = new stdClass;
-
- $filepath = $v['dirname'] . '/' . $v['basename'];
-
- // Extract the date
- $arr = explode('_', $filepath);
-
- // Replaced string
- $replaced = substr($arr[0], 0,strrpos($arr[0], '/')) . '/';
-
- // Author string
- $str = explode('/', $replaced);
- $author = $str[count($str)-3];
-
- // The post author + author url
- $post->author = $author;
- $post->authorurl = site_url() . 'author/' . $author;
-
- $dt = str_replace($replaced,'',$arr[0]);
- $t = str_replace('-', '', $dt);
- $time = new DateTime($t);
- $timestamp= $time->format("Y-m-d H:i:s");
-
- // The post date
- $post->date = strtotime($timestamp);
-
- // The archive per day
- $post->archive = site_url(). 'archive/' . date('Y-m-d', $post->date) ;
-
- // The post URL
- $post->url = site_url().date('Y/m', $post->date).'/'.str_replace('.md','',$arr[2]);
-
- $tag = array();
- $url = array();
- $bc = array();
-
- $t = explode(',', $arr[1]);
- foreach($t as $tt) {
- $tag[] = array($tt, site_url(). 'tag/' . $tt);
- }
-
- foreach($tag as $a) {
- $url[] = ''. $a[0] .'';
- $bc[] = ''. $a[0] .'';
- }
-
- $post->tag = implode(', ', $url);
-
- $post->tagb = implode(' » ', $bc);
-
- $post->file = $filepath;
-
- // Get the contents and convert it to HTML
- $content = MarkdownExtra::defaultTransform(file_get_contents($filepath));
-
- // Extract the title and body
- $arr = explode('t-->', $content);
- if(isset($arr[1])) {
- $title = str_replace('', $content);
+ if (isset($arr[1])) {
+ $title = str_replace('', $content);
- if(isset($arr[1])) {
- $title = str_replace('', $content);
+ if (isset($arr[1])) {
+ $title = str_replace('', $content);
- if(isset($arr[1])) {
- $title = str_replace('', $content);
+ if (isset($arr[1])) {
+ $title = str_replace('', $content);
- if(isset($arr[1])) {
- $title = str_replace('', $content);
+ if (isset($arr[1])) {
+ $title = str_replace('