| <?php |
| function rss_to_news_html($file_name, $category, $count, $readmore=TRUE) { |
| $rss = simplexml_load_file($file_name); |
| ob_start(); |
| ?> |
| <ul> |
| <? |
| try { |
| foreach ($rss->channel as $channel) |
| { |
| $colorToggle = 1; |
| // echo "<pre>"; var_dump($channel); echo "</pre>"; |
| foreach ($channel->item as $item) |
| { |
| if ($count == 0) break; |
| $now = strtotime("now"); |
| $then = strtotime($item->pubDate); |
| $stringDate = date("I", $now); |
| if ($stringDate == 1){ |
| $then -= 3600; } |
| $difference = $now - $then; |
| switch ($difference) { |
| case $difference > 604800: |
| $ago = floor($difference / 604800); |
| if ($ago ==1) |
| { |
| $ago = "+$ago week ago"; |
| } |
| else |
| { |
| $ago = "+$ago weeks ago"; |
| } |
| break; |
| case $difference > 86400: |
| $ago = floor($difference / 84600); |
| if ($ago == 1) |
| { |
| $ago = "+$ago day ago"; |
| } |
| else |
| { |
| $ago = "+$ago days ago"; |
| } |
| break; |
| case $difference > 3600; |
| $ago = floor($difference / 3600); |
| if ($ago == 1) |
| { |
| $ago = "+$ago hour ago"; |
| } |
| else |
| { |
| $ago = "+$ago hours ago"; |
| } |
| break; |
| case $difference > 0: |
| $ago = floor($difference / 60); |
| if ($ago == 1) |
| { |
| $ago = "+$ago minute ago"; |
| } |
| else |
| { |
| $ago = "+$ago minutes ago"; |
| } |
| break; |
| |
| } |
| $pluginExists = strpos($item->title, "Plugin:"); |
| if ($pluginExists) |
| { |
| $pluginExists += 7; |
| if (strpos($item->title, "New ") === 0) |
| { |
| $pluginImage = "/home/images/new.gif"; |
| } |
| if (strpos($item->title, "Updated ") === 0) |
| { |
| $pluginImage = "/home/images/updated.gif"; |
| } |
| $item->title = trim(substr($item->title, $pluginExists)); |
| $titleExploded = explode("- v", $item->title, 2); |
| if ($titleExploded[1] != "") |
| $item->title = $titleExploded[0] . "<span class=\"version\">v". $titleExploded[1] . "</span>"; |
| else { |
| $item->title = $titleExploded[0]; |
| } |
| |
| } |
| |
| if ($category != "") |
| { |
| foreach ($item->category as $categoryIterator) |
| { |
| if ($categoryIterator == $category) |
| { |
| ?> |
| <li><a href="<?=$item->link;?>" target="_blank"><?=$item->title;?> |
| </a> |
| <span class="posted"><?=$ago?></span> |
| <p><?=$item->description;?></p> |
| </li> |
| <? |
| $count--; |
| } |
| } |
| } |
| else |
| { |
| ?><li><? if ($pluginImage != NULL){ ?><img src="<?=$pluginImage;?>"/><? } ?> <a href="<?=$item->link;?>"><?=$item->title;?></a> <span class="posted"><?=$ago?></span></li><? |
| $count--; |
| } |
| |
| } |
| } |
| } |
| catch (Exception $e){ |
| echo '<!-- Error in NewsFeed - $file_name - '. $e->getMessage() . " -->"; |
| } |
| if ($readmore == TRUE){ |
| ?> |
| <li class="more"> |
| <div class="more"> |
| <a href="buzzmore.php">Read More</a> |
| </div> |
| </li> |
| <? } ?> |
| </ul> |
| <? |
| $html = ob_get_contents(); |
| ob_end_clean(); |
| return $html; |
| } |
| ?> |