[ PHPXref.com ] [ Generated: Sun Jul 20 16:37:32 2008 ] [ BirdBlog 1.4.0 ]
[ Index ]     [ Variables ]     [ Functions ]     [ Classes ]     [ Constants ]     [ Statistics ]

title

Body

[close]

/ -> index.php (source)

   1  <?php
   2  
   3  /*
   4  +-----------------------------------------------------------
   5  |  BirdBlog v1.4.0
   6  |  ===========================
   7  |  Developer: Michael Swiger <mokkan at projectcow dot com>
   8  |  Site: http://birdblog.sourceforge.net
   9  |  Copyright (c) 2005
  10  |  ===========================
  11  |  File: ./index.php
  12  +-----------------------------------------------------------
  13  */
  14  
  15  //# Setting templates and requiring core
  16  $bb_templates = 'base,index,index_noentries,entry,
  17                   entry_mood,entry_music,archive_item,error_message,
  18                   entry_excerpt,entry_passworded,calendar_main,calendar_row,
  19                   calendar_day_entry,calendar_day_noentry,calendar_day_blank,category_item,
  20                   quote_template,caption_quote_temp';
  21  require ("core.php");
  22  
  23  //# Setting some used $_GET vars
  24  $datedata['year'] = prepValue($_GET['year']);
  25  $datedata['month'] = prepValue($_GET['month']);
  26  $datedata['day'] = prepValue($_GET['day']);
  27  $category = prepValue($_GET['category']);
  28  $page = prepValue($_GET['page']);
  29  
  30  //# Checking for specified month/year
  31  if($datedata['year'] != ""){
  32      if($datedata['month'] == ""){
  33          $datedata['month'] = 1;
  34          $datedata['daysinmonth'] = cal_days_in_month(CAL_GREGORIAN, $datedata['month'], $datedata['year']);
  35          $datedata['beginning'] = gmmktime(0, 0, 0, $datedata['month'], 1, $datedata['year']);
  36          $datedata['end'] = gmmktime(23,59,59, $datedata['month'], $datedata['daysinmonth'], $datedata['year']);
  37          $logstring = gmdate("F Y", $datedata['beginning']);
  38      } else if($datedata['month'] != "" && $datedata['day'] != ""){
  39          $datedata['daysinmonth'] = cal_days_in_month(CAL_GREGORIAN, $datedata['month'], $datedata['year']);
  40          $datedata['beginning'] = gmmktime(0, 0, 0, $datedata['month'], $datedata['day'], $datedata['year']);
  41          $datedata['end'] = gmmktime(23,59,59, $datedata['month'], $datedata['day'], $datedata['year']);
  42          $logstring = gmdate("F j, Y", $datedata['beginning']);
  43      } else {
  44          $datedata['daysinmonth'] = cal_days_in_month(CAL_GREGORIAN, $datedata['month'], $datedata['year']);
  45          $datedata['beginning'] = gmmktime(0, 0, 0, $datedata['month'], 1, $datedata['year']);
  46          $datedata['end'] = gmmktime(23,59,59, $datedata['month'], $datedata['daysinmonth'], $datedata['year']);
  47          $logstring = gmdate("F Y", $datedata['beginning']);
  48      }
  49  
  50      $datedata['beginning'] = $datedata['beginning'] + (configOffset() * (-1)); //fixing timestamp for GMT
  51      $datedata['end'] = $datedata['end'] + (configOffset() * (-1)); //fixing timestamp for GMT
  52      $datedata['query'] = "AND e.dateline >= '".$datedata['beginning']."' AND e.dateline <= '".$datedata['end']."'";
  53      log_hit("Viewing entries for ".$logstring."");
  54  } else if($category != ""){
  55      $categoryquery = "AND e.cid = '$category'";
  56      log_hit("Viewing index");
  57  } else {
  58      $datedata['query'] = "";
  59      $categoryquery = "";
  60      log_hit("Viewing index");
  61  }
  62  
  63  //# Seeing if the user is logged in, and if so, grabbing private entries
  64  $privatequery = "";
  65  if($userdata['logged_in'] == 1){
  66      $privatequery = " OR (e.private = '1' AND e.uid = '".prepValue($_COOKIE['userid'])."') ";
  67  }
  68  
  69  //# Counting entries
  70  $countentries = $SQL->query("SELECT `id` FROM `".$database['prefix']."entries` AS e WHERE (`private` != '1' $privatequery) ".$datedata['query']." $categoryquery");
  71  $totalentries = $SQL->num_rows($countentries);
  72  
  73  //# Setting which entries to grab and counting entries
  74  if(($page == "") || ($page == NULL)){
  75      $page = 1;
  76  }
  77  $begin = ceil(($page - 1) * $config['entriesperpage']);
  78  $end = $config['entriesperpage'];
  79  
  80  //# Setting the page area... this was sort of a bugger :P
  81  $pagevars = array();
  82  $pagevars['totalpages'] = ceil($totalentries / $config['entriesperpage']);
  83  $pagevars['first'] = "";
  84  $pagevars['middle'] = "";
  85  $pagevars['last'] = "";
  86  if($datedata['year'] != "" || $datedata['day'] != "" || $datedata['month'] != ""){ //checks if we should set a date in the URLs
  87      $pagevars['date'] = "&amp;year=".$datedata['year']."&amp;month=".$datedata['month']."&amp;day=".$datedata['day'];
  88  } else {
  89      $pagevars['date'] = "";
  90  }
  91  if(($page - 3) >= 2){
  92      $pagevars['first'] = '<a href="index.php?page=1'.$pagevars['date'].'">'.$template->getVar('firstpagetext').'</a> ... ';
  93      for($i = $page - 3; $i < $page; $i++){
  94          $pagevars['middle'] .= "<a href=\"index.php?page=$i$pagevars[date]\">$i</a>, ";
  95      }
  96  } else {
  97      for($i = 1; $i < $page; $i++){
  98          $pagevars['middle'] .= "<a href=\"index.php?page=$i$pagevars[date]\">$i</a>, ";
  99      }
 100  }
 101  $pagevars['middle'] .= $page;
 102  if(($page + 3) < $pagevars['totalpages']){
 103      $pagevars['last'] = " ... <a href=\"index.php?page=$pagevars[totalpages]$pagevars[date]\">".$template->getVar('lastpagetext')."</a>";
 104      for($i = $page + 1; $i < $page + 4; $i++){
 105          $pagevars['middle'] .= " ,<a href=\"index.php?page=$i$pagevars[date]\">$i</a>";
 106      }
 107  } else {
 108      for($i = $page + 1; $i <= $pagevars['totalpages']; $i++){
 109          $pagevars['middle'] .= " ,<a href=\"index.php?page=$i$pagevars[date]\">$i</a>";
 110      }
 111  }
 112  $pagearea = $pagevars['first'] . $pagevars['middle'] . $pagevars['last'];
 113  
 114  //# Grabbing emoticons
 115  $emoticons = array();
 116  $emoticonimages = array();
 117  $i = 0;
 118  $grabemoticons = $SQL->query("SELECT * FROM `".$database['prefix']."emoticons`");
 119  while($emoticon = $SQL->fetch_array($grabemoticons)){
 120      $emoticons[$i] = $emoticon['emoticon'];
 121      $emoticonimages[$i] = '<img src="' . $config['emoticonpath'] . $emoticon['image'] . '" alt="'. $emoticon['emoticon'] .'" />';
 122      $i++;
 123  }
 124  
 125  //# Grabbing entries
 126  $grabentries = $SQL->query("SELECT e.*,m.image AS moodimage,u.username,u.email,u.name,u.gender,u.location,u.interests,u.occupation,c.name AS categoryname
 127                              FROM `".$database['prefix']."entries` AS e 
 128                              LEFT JOIN `".$database['prefix']."moodicons` AS m ON(e.moodicon = m.id) 
 129                              LEFT JOIN `".$database['prefix']."users` AS u ON(e.uid = u.id) 
 130                              LEFT JOIN `".$database['prefix']."categories` AS c ON (c.id = e.cid) 
 131                              WHERE (e.private != '1' $privatequery) ".$datedata['query']." $categoryquery ORDER BY e.dateline DESC LIMIT $begin, $end");
 132  while($entry = $SQL->fetch_array($grabentries)){
 133      if($entry['password'] != ""){
 134          $entries .= $template->getTemplate('entry_passworded');
 135      } else if($entry['excerpt'] != "" || ($entry['autoexcerpt'] == 1 && strlen($entry['entry']) > $config['autoexcerpt_size'])){
 136          $entries .= $template->getTemplate('entry_excerpt');
 137      } else {
 138          $entries .= $template->getTemplate('entry');
 139      }
 140      $entries = stripslashes($entries);
 141      $entry['title'] = stripslashes($entry['title']);
 142      $entry['entry'] = stripslashes($entry['entry']);
 143      $entry['excerpt'] = parse_breaks($entry['excerpt']);
 144      $entry['entry'] = parse_breaks($entry['entry']);
 145      if($entry['private'] == 1){
 146          $entry['privatetext'] = $template->getVar('privatetext');
 147      } else {
 148          $entry['privatetext'] = "";
 149      }
 150      if($entry['autoexcerpt'] == 1 && strlen($entry['entry']) > $config['autoexcerpt_size']){
 151          $entry['excerpt'] = substr($entry['entry'], 0, $config['autoexcerpt_size']) . "...";
 152      }
 153      if($entry['parsebbcode'] == 1){
 154          $entry['entry'] = parse_bbcode($entry['entry']);
 155          $entry['excerpt'] = parse_bbcode($entry['excerpt']);
 156      }
 157      $entry['date'] = gmdate($template->getVar('entry_dateformat'), $entry['dateline'] + configOffset());
 158      if($entry['parseemoticons'] == 1){
 159          $entry['entry'] = str_replace($emoticons, $emoticonimages, $entry['entry']);
 160          $entry['excerpt'] = str_replace($emoticons, $emoticonimages, $entry['excerpt']);
 161      }
 162      if($entry['parseurls'] == 1){
 163          $entry['entry'] = parse_urls($entry['entry']);
 164          $entry['excerpt'] = parse_urls($entry['excerpt']);
 165      }
 166      if($entry['moodimage'] != ""){
 167          $entry['moodimage'] = '<img src="' . stripslashes($config['moodpath'] . $entry['moodimage']) . '" alt="">';
 168      }
 169      $moodarea = "";
 170      if(($entry['mood'] != "") || ($entry['moodimage'] != "")){
 171          $entries = str_replace('$moodarea', $template->getTemplate('entry_mood'), $entries);
 172      } else {
 173          $entries = str_replace('$moodarea', '', $entries);
 174      }
 175      $musicarea = "";
 176      if($entry['music'] != ""){
 177          $entries = str_replace('$musicarea', $template->getTemplate('entry_music'), $entries);
 178      } else {
 179          $entries = str_replace('$musicarea', '', $entries);
 180      }
 181      $entries = $template->cacheArray($entries, $entry);
 182  }
 183  $entry = $template->releaseCache();
 184  
 185  if($totalentries < 1){
 186      eval("\$entries = \"".$template->getTemplate('index_noentries')."\";");
 187  } else {
 188      eval("\$entries = \"".addslashes($entries)."\";");
 189  }
 190  eval("\$include = \"".$template->getTemplate('index')."\";");
 191  
 192  //# Modules
 193  $archives = buildArchives();
 194  $calendar = buildCalendar($datedata['month'], $datedata['year']);
 195  $categories = buildCategories();
 196  
 197  //# Setting script vars
 198  $script['gzstatus'] = $gzip->checkGZText();
 199  $script['querycount'] = $SQL->counter();
 200  $script['exectime'] = $timer->stopTimer();
 201  
 202  //# Creating output, sending it to the buffer, and releasing the buffer
 203  eval("\$output = \"".$template->getTemplate('base')."\";");
 204  echo stripslashes($output);
 205  $gzip->stopGZ();
 206  ?>


[ Powered by PHPXref - Served by Debian GNU/Linux ]