Browse Source

Simplify the first post and last post generation

Previously the first post and last post generation code, hard coded
directly on main.html.php, now moved to functions.php.
pull/4/merge
Danang Probo Sayekti 12 years ago
parent
commit
d5e6973e82
2 changed files with 46 additions and 27 deletions
  1. +45
    -13
      system/includes/functions.php
  2. +1
    -14
      themes/default/main.html.php

+ 45
- 13
system/includes/functions.php View File

@ -57,10 +57,10 @@ function get_posts($page = 1, $perpage = 0){
// Create a new instance of the markdown parser // Create a new instance of the markdown parser
$md = new MarkdownParser(); $md = new MarkdownParser();
foreach($posts as $k=>$v){
foreach($posts as $index => $v){
$post = new stdClass; $post = new stdClass;
// Extract the date // Extract the date
$arr = explode('_', $v); $arr = explode('_', $v);
@ -91,9 +91,19 @@ function get_posts($page = 1, $perpage = 0){
$post->title = str_replace('<h1>','',$arr[0]); $post->title = str_replace('<h1>','',$arr[0]);
$post->body = $arr[1]; $post->body = $arr[1];
// Get first and last post
if ($index == 0) {
$post->cls = 'item first';
}
elseif ($index == count($posts) - 1) {
$post->cls = 'item last';
}
else {
$post->cls = 'item';
}
$tmp[] = $post; $tmp[] = $post;
} }
return $tmp; return $tmp;
} }
@ -187,6 +197,17 @@ function get_tag($tag){
$arr = explode('</h1>', $content); $arr = explode('</h1>', $content);
$post->title = str_replace('<h1>','',$arr[0]); $post->title = str_replace('<h1>','',$arr[0]);
$post->body = $arr[1]; $post->body = $arr[1];
// Get first and last post
if ($index == 0) {
$post->cls = 'item first';
}
elseif ($index == count($posts) - 1) {
$post->cls = 'item last';
}
else {
$post->cls = 'item';
}
$tmp[] = $post; $tmp[] = $post;
} }
@ -239,6 +260,17 @@ function get_archive($req){
$arr = explode('</h1>', $content); $arr = explode('</h1>', $content);
$post->title = str_replace('<h1>','',$arr[0]); $post->title = str_replace('<h1>','',$arr[0]);
$post->body = $arr[1]; $post->body = $arr[1];
// Get first and last post
if ($index == 0) {
$post->cls = 'item first';
}
elseif ($index == count($posts) - 1) {
$post->cls = 'item last';
}
else {
$post->cls = 'item';
}
$tmp[] = $post; $tmp[] = $post;
} }
@ -604,16 +636,16 @@ function publisher(){
function analytics(){ function analytics(){
$analytics = config('google.analytics.id'); $analytics = config('google.analytics.id');
$script = <<<EOF $script = <<<EOF
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', '{$analytics}']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', '{$analytics}']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
EOF; EOF;
if (!empty($analytics)) { if (!empty($analytics)) {
return $script; return $script;


+ 1
- 14
themes/default/main.html.php View File

@ -1,19 +1,6 @@
<?php if (!empty($breadcrumb)):?><div class="breadcrumb"><?php echo $breadcrumb ?></div><?php endif;?> <?php if (!empty($breadcrumb)):?><div class="breadcrumb"><?php echo $breadcrumb ?></div><?php endif;?>
<?php $i = 0; $len = count($posts);?>
<?php foreach($posts as $p):?> <?php foreach($posts as $p):?>
<?php
if ($i == 0) {
$class = 'first';
}
elseif ($i == $len - 1) {
$class = 'last';
}
else {
$class = '';
}
$i++;
?>
<div class="post <?php echo $class ?>" itemprop="blogPost" itemscope="itemscope" itemtype="http://schema.org/BlogPosting">
<div class="post <?php echo $p->cls ?>" itemprop="blogPost" itemscope="itemscope" itemtype="http://schema.org/BlogPosting">
<div class="main"> <div class="main">
<h2 class="title-index" itemprop="name"><a href="<?php echo $p->url?>"><?php echo $p->title ?></a></h2> <h2 class="title-index" itemprop="name"><a href="<?php echo $p->url?>"><?php echo $p->title ?></a></h2>
<div class="date"><span itemprop="datePublished"><?php echo date('d F Y', $p->date)?></span> - Posted in <span itemprop="articleSection"><a href="<?php echo $p->tagurl ?>"><?php echo ucfirst($p->tag) ?></a></span> by <span itemprop="author"><a href="<?php echo $p->authorurl ?>"><?php echo $p->author ?></a></span><?php if (disqus_count() == true):?> - <span><a href="<?php echo $p->url?>#disqus_thread">Komentar</a></span><?php endif;?></div> <div class="date"><span itemprop="datePublished"><?php echo date('d F Y', $p->date)?></span> - Posted in <span itemprop="articleSection"><a href="<?php echo $p->tagurl ?>"><?php echo ucfirst($p->tag) ?></a></span> by <span itemprop="author"><a href="<?php echo $p->authorurl ?>"><?php echo $p->author ?></a></span><?php if (disqus_count() == true):?> - <span><a href="<?php echo $p->url?>#disqus_thread">Komentar</a></span><?php endif;?></div>


Loading…
Cancel
Save