There was a problem initializing the feedlist plugin. Make sure the file feedlist.php is directly under your wp-content/plugins directory and not a subdirectory.
args = $args; $this->id = md5(uniqid(rand(), true)); } function GetID(){ $this->Debug($this->id); } /* core methods */ // called automagically if you use a inline filter (inside a post/page). function FeedListFilter(){ return $this->BuildFeedOutput(); } // call this if you want to process one feed function FeedListFeed(){ return $this->BuildFeedOutput(); } // call this if you want to process a feed file function FeedListFile(){ $this->args = $this->GetArgumentArray(); $this->output = ''; // Seed the random number generator: srand((double)microtime()*1000000); $feed = Array(); $feedInfo = $this->LoadFile($this->args['file']); if(count($feedInfo)){ // we have some feeds // Randomize the array: shuffle($feedInfo); // Make sure we are set to show something: ($this->args['feedsToShow'] < 1) ? 1 : $this->args['feedsToShow']; ($this->args['feedsToShow'] > sizeof($feedInfo)) ? sizeof($feedInfo) : $this->args['feedsToShow']; // we will fetch each feed, then coallate items for($i=0;$i<$this->args['feedsToShow'];$i++){ $thisFeed = $feedInfo[$i]; $urlAndTitle = preg_split("/~/", $thisFeed); $feedUrl = trim($urlAndTitle[0]); $feedTitle = trim($urlAndTitle[1]); $this->rs = $this->GetFeed($feedUrl); if($this->rs){ $this->items = $this->rs->items; if($this->args['random']){ shuffle($this->items); } // Slice off the number of items that we want: if ($this->args['num_items'] > 0) { $this->items = array_slice($this->items, 0, $this->args['num_items']); } if(!$this->args['mergeFeeds']){ $this->output.= '
'.$feedTitle.'
'; if($this->args['show_date']){ $this->output .= '
updated: '.fl_tz_convert($this->rs->last_modified,0,Date('I')).'
'; } $this->output.=$this->Draw($this->items,$this->args); } else { $feed = array_merge($feed,$this->items); } } } $this->output .= ''; } else { $this->output = $this->args['before'] . 'No Items Were Found In the Provided Feeds. Perhaps there is a communication problem.' . $this->args['after']; } // coallate feed items echo $this->output; } /* end core methods */ /* basic settings - you can edit these */ function GetSettings(){ /* CONFIGURATION SETTINGS ---------------------- cacheTimeout how long should your cache file live in seconds? By default it is 21600 or 6 hours. most sites prefer you use caching so please make sure you do! connectionTimeout how long should I try to connect the feed provider before I give up, default is 15 seconds showRssLinkListJS TRUE by default and will include a small block of JS in your header. If it is false the JS will not be included. If you want the $new_window = 'true' option to use the JS then this must also be true. Otherwise both true and simple will hardcode the target="_blank" into the new window links */ // DEFINE THE SETTINGS -- EDIT AS YOU NEED: $feedListDebug = false; // To debug this script during programming (true/false). $cacheTimeout = 60; // 21600 sec is 6 hours. $connectionTimeout = 15; // 15 seconds is default $showRSSLinkListJS = true; $Language = 'en_US'; // Choose your language (from the available languages below,in the translations): $Translations = array(); // Please send in your suggestions/translations: // English: $Translations['en_US'] = array(); $Translations['en_US']['ReadMore'] = 'Read more...'; // Dutch: $Translations['nl_NL'] = array(); $Translations['nl_NL']['ReadMore'] = '[lees verder]'; $feedListFile = '/feeds.txt'; // IF you are going to use the random feedlist generator make sure this holds the correct name for your feed file: // Build an array out of the settings and send them back: $settings = array ( 'feedListDebug' => $feedListDebug, 'cacheTimeout' => $cacheTimeout, 'connectionTimeout' => $connectionTimeout, 'showRSSLinkListJS' => $showRSSLinkListJS, 'language' => $Language, 'translations' => $Translations, 'feedListFile' => $feedListFile ); return $settings; } function GetDefaults(){ $settings = $this->GetSettings(); return array( 'rss_feed_url' => 'http://del.icio.us/rss', 'num_items' => 15, 'show_description' => true, 'random' => false, 'before' => '
  • ', 'after' => '
  • ', 'description_separator' => ' - ', 'encoding' => false, 'sort' => 'none', 'new_window' => false, 'ignore_cache' => false, 'suppress_link' => false, 'show_date' => false, 'additional_fields' => '', 'max_characters' => 0, 'max_char_wordbreak' => true, 'file'=>$settings['file'], 'feedsToShow'=>0, 'mergeFeeds'=>false ); } /* end basic settings */ function BuildFeedOutput(){ $this->args = $this->GetArgumentArray(); $this->rs = $this->GetFeed($this->args['rss_feed_url']); $this->output = ''; if($this->rs){ $this->items = $this->rs->items; if($this->args['random']){ shuffle($this->items); } // Slice off the number of items that we want: if ($this->args['num_items'] > 0) { $this->items = array_slice($this->items, 0, $this->args['num_items']); } $this->output = $this->Draw(); } return $this->output; } function Draw(){ $settings = $this->GetSettings(); $this->items = $this->NormalizeDate($this->items); $this->items = $this->SortItems($this->items,$this->args['sort']); // Explicitly set this because $new_window could be "simple": $target = ''; if($new_window == true && $settings["showRSSLinkListJS"]) { $target=' rel="external" '; } elseif ($new_window == true || $new_window == 'simple') { $target=' target="_blank" '; } $this->output =''; foreach($this->items as $item){ $thisLink = ''; $linkTitle = ''; $thisDescription = ''; $thisTitle = $item['title']; if ($this->args['encoding']){ // very poor and limited internationalization effort $thisTitle = htmlentities(utf8_decode($thisTitle)); } if (isset($item['content']['encoded']) || isset($item['description'])){ if (isset($item['description'])){ $thisDescription = $item['description']; } else{ $thisDescription = $item['content']['encoded']; } // Handle max_characters and max_char_wordbreak before the htmlentities makes it more complicated: if (!empty($this->args['max_characters']) && is_numeric($this->args['max_characters'])) { $thisDescription = substr($thisDescription, 0, $this->args['max_characters']); // If true, we cut on the last space: if (!empty($this->args['max_char_wordbreak'])) { $max_char_pos = strrpos($thisDescription, ' '); if ($max_char_pos > 0) { $thisDescription = substr($thisDescription, 0, $max_char_pos); } } } else if ($encoding) { //further really weak attempt at internationalization $thisDescription = htmlentities(utf8_decode($thisDescription)); } $linkTitle = $thisDescription; $linkTitle = strip_tags($linkTitle); $linkTitle = str_replace(array("\n", "\t", '"'), array('', '', "'"), $linkTitle); $linkTitle = substr($linkTitle, 0, 300); if (strlen(trim($thisDescription))) { $thisDescription = $this->args['description_separator'].$thisDescription; } } // Only build the hyperlink if a link is provided..and we are not told to suppress the link: if (!$this->args['suppress_link'] && strlen(trim($item['link'])) && strlen(trim($thisTitle))){ $thisLink = ''.$thisTitle.''; } elseif (strlen(trim($item['link'])) && $this->args['show_description']) { // If we don't have a title but we do have a description we want to show.. link the description $thisLink = ''.$thisDescription.''; $thisDescription = ''; } else { $thisLink = '' . $thisTitle . ''; } // Determine if any extra data should be shown: $extraData = ''; if (strlen($this->args['additional_fields'])){ // Magpie converts all key names to lowercase so we do too: $this->args['additional_fields'] = strtolower($this->args['additional_fields']); // Get each additional field: $addFields = explode('~', $this->args['additional_fields']); foreach ($addFields as $addField) { // Determine if the field was a nested field: $fieldDef = explode('.', $addField); $thisNode = $item; foreach($fieldDef as $fieldName) { // Check to see if the fieldName has a COLON in it, if so then we are referencing an array: $thisField = explode(':', $fieldName); $fieldName = $thisField[0]; $thisNode = $thisNode[$fieldName]; if (count($thisField) == 2) { $fieldName = $thisField[1]; $thisNode = $thisNode[$fieldName]; } } if (is_string($thisNode) && isset($thisNode)) { $extraData .= '
    ' . $thisNode . '
    '; } } } if ($this->args['show_description']){ $this->output .= $this->args['before'].$thisLink.$thisDescription.$extraData; }else{ $this->output .= $this->args['before'].$thisLink.$extraData; } if (is_numeric($this->args['max_characters']) && $this->args['max_characters'] > 0) { $this->output .= ''; } $this->output .= $this->args['after']; } return $this->output; } function ArrayPush(&$arr) { $args = func_get_args(); foreach ($args as $arg) { if (is_array($arg)) { foreach ($arg as $key => $value) { $arr[$key] = $value; $ret++; } }else{ $arr[$arg] = ""; } } return $ret; } /* utility functions */ function NormalizeDate(){ $newItems = array(); foreach($this->items as $item){ if(array_key_exists('pubdate',$item)) { $d = $item['pubdate']; $d = explode(' ',$d); $d = $d[3] . $this->GetMonthNum($d[2]) . $d[1] . $d[4] . '0000'; $d = $this->MakeNumericOnly($d); $this->ArrayPush($item,array("feeddate"=>$d)); } else if (array_key_exists('published',$item)) { $d = $item['published']; $d = $this->MakeNumericOnly($d); $this->ArrayPush($item,array("feeddate"=>$d)); } else if (array_key_exists('dc',$item) && array_key_exists('date',$item['dc'])) { $d = $item['dc']; $d = $d['date']; $d = $this->MakeNumericOnly($d); $this->ArrayPush($item,array("feeddate"=>$d)); } else { $d = date("YmdHmsO"); $d = $this->MakeNumericOnly($d); $this->ArrayPush($item,array("feeddate"=>$d)); } array_push($newItems,$item); } return $newItems; } function MakeNumericOnly($val){ return ereg_replace( '[^0-9]+', '', $val); } function GetMonthNum($month){ $months = array('jan'=>'01','feb'=>'02','mar'=>'03','apr'=>'04','may'=>'05','jun'=>'06','jul'=>'07','aug'=>'08','sep'=>'09','oct'=>'10','nov'=>'11','dec'=>'12'); $month = strtolower($month); return $months[$month]; } function SortItems(){ $sort = strtolower($this->args['sort']); $sort = explode(" ",$sort); if((count($sort) ==1 || $sort[0] == 'asc') && $sort[0] != 'none'){ $sort[1] = SORT_ASC; } elseif ($sort[1] == 'desc') { $sort[1] = SORT_DESC; } else { $sort[1] = ''; } if($sort[0] == 'feeddate'){ $sort[2] = SORT_NUMERIC; } else { $sort[2] = SORT_STRING; } if (($sort[1]!='') && count($this->items)) { // Order by sortCol: foreach($this->items as $item) { $sortBy[] = $item[$sort[0]]; } // Make titles lowercase (otherwise capitals will come before lowercase): $sortByLower = array_map('strtolower', $sortBy); array_multisort($sortByLower, $sort[1], $sort[2], $this->items); } return $this->items; } function LoadFile($file){ /* load the $feedListFile contents into an array, using the --NEXT-- text as a delimeter between feeds and a tilde (~) between URL and TITLE */ $x = file($file); return preg_split("/--NEXT--/", join('', file($file))); } function GetArgumentArray(){ $this->args = $this->AssignDefaults(); $a = array(); foreach($this->args as $d=>$v){ if($this->args[$d] === 'true') { $a[$d] = 1; }else if($this->args[$d] === 'false'){ $a[$d] = 0; }else{ $a[$d] = $v; } $a[$d] = html_entity_decode($a[$d]); } return $a; } function AssignDefaults(){ $defaults = $this->GetDefaults(); $a = array(); $i=0; foreach ($defaults as $d => $v) { $a[$d] = isset($this->args[$d]) ? $this->args[$d] : $v; $a[$d] = isset($this->args[$i]) ? $this->args[$i] : $a[$d]; $i++; } return $a; } function GetFeed($feedUrl){ $this->feed = false; if(function_exists('fetch_rss')){ $this->feed = fetch_rss($feedUrl); } return $this->feed; } function InitializeReader($ignore_cache){ $settings = $this->GetSettings(); if ($ignore_cache) { if (is_numeric($ignore_cache)) { define('MAGPIE_CACHE_AGE', $ignore_cache); } else { define('MAGPIE_CACHE_ON', false); } } else { define('MAGPIE_CACHE_AGE', $settings["cacheTimeout"]); } define('MAGPIE_DEBUG', false); define('MAGPIE_FETCH_TIME_OUT', $settings["connectionTimeout"]); } function Debug($val,$name=''){ if(strlen($name)){ print('

    '.$name.'

    '); } print('
    ');
    				print_r($val);
    				print('
    '); } /* end utility functions */ } function rssLinkListFilter($text) { return preg_replace_callback("//", "feedListFilter", $text); } /* Templates can call any of these functions */ function rssLinkList($args){ if(!is_array($args)){ $args = func_get_args(); } return feedList($args); } function feedList($args){ if(!is_array($args)){ $args = func_get_args(); } $feed = new FeedList($args); return $feed->FeedListFeed(); } function randomFeedList($args){ if(!is_array($args)){ $this->args = parse_str($args,$a); $this->args = $a; } $feed = new FeedList($args); return $feed->FeedListFile(); } function feedListFilter($args){ $args = explode(",",$args[1]); if(count($args) == 1 && !strpos($args[0],":=")){ $a = array(); $a["rss_feed_url"] = $args[0]; $args = $a; } else { $a = array(); foreach($args as $arg){ $arg = explode(":=",$arg); $a[$arg[0]] = $arg[1]; } $args = $a; } $feed = new FeedList($args); return $feed->FeedListFilter(); } /* end template functions */ if (function_exists('add_filter')) { add_filter('the_content', 'rssLinkListFilter'); } if(function_exists('FeedListInitError')){ add_action('admin_head','FeedListInitError'); } ?> NASONEX FOR SALE » Buy Online, No RX (Prescription) Required!

    NASONEX FOR SALE

    Jun. 17, 2008 4 Comments Posted under: Random

    SproutCore logo


    Earlier today I was reading an article about Sprout Core NASONEX FOR SALE, which is billed as Cocoa for the web. The idea being that cocoa developers can use a software development approach to creating web applications, NASONEX blogs. Order NASONEX from mexican pharmacy, This is similar to Adobe's Flex, or Microsoft's Silverlight, NASONEX no prescription, Where can i cheapest NASONEX online, but rather than generating a swf or silverlight file, it produces HTML and JavaScript, NASONEX without a prescription. Where can i buy cheapest NASONEX online,



    This sounds great as you can now develop web applications that take advantage or the interoperability and open nature of web standards. However a quick look at the Sprout Core demos shatters this utopian view, rx free NASONEX.



    The code in the demos, reminds me of ASP.net's Visual Web Developer, where, "web developers" had no idea how to write HTML or JavaScript, and lead to some of the worst websites ever created (thetrainline anyone), NASONEX FOR SALE. Australia, uk, us, usa, The problem was a reliance on HTML for components that were written during the browser wars, that relied on Internet Explorer specific features or rendering, NASONEX pictures. NASONEX for sale, There was also no semantics, SEO optimisation, where can i buy cheapest NASONEX online, NASONEX from mexico, accessibility or use of best practices.


    The most ironic problem with the Sprout Core code is the fact it doesn't work correctly on the iPhone let alone other small screen devices, NASONEX treatment, NASONEX cost, it doesn't degrade well and relies on JavaScript.


    I am also worried that by trying to catch up to Flex and Silverlight, NASONEX from canada, NASONEX long term, Apple will start to implement draft web standards specifications for SVG and CSS, meaning Safari only versions.., NASONEX without prescription. NASONEX FOR SALE, (till the others catch up). Taking NASONEX, I have already noted that mobileMe (apparently build using Sprout Core) does not work in IE6... not even in a basic HTML version (like Gmail), buy NASONEX from canada. NASONEX alternatives, To add to that the new releases of webkit have heavily updated JavaScript renders in order to cope with this new reliance on JavaScript... some of the demos crash my Firefox :0


    I would be interested to see what others thing about this, cheap NASONEX, NASONEX street price, and what it means for the web.

    , after NASONEX. About NASONEX. NASONEX natural. Effects of NASONEX. Where to buy NASONEX. NASONEX dosage. Low dose NASONEX. Buy NASONEX without a prescription. Buy generic NASONEX. NASONEX used for. Ordering NASONEX online. Where can i order NASONEX without prescription. Buy cheap NASONEX.

    Similar posts: LEVITRA OVER THE COUNTER. STROMECTOL OVER THE COUNTER. WELLBUTRIN SR FOR SALE. VERMOX FOR SALE. BUY ZITHROMAX NO PRESCRIPTION. Kjøpe INDOMETACIN på nett, köpa INDOMETACIN online. Order ALESSE online overnight delivery no prescription. BACTRIM trusted pharmacy reviews. Effects of ALDACTONE. Order TOPROL XL online overnight delivery no prescription.
    Trackbacks from: NASONEX FOR SALE. NASONEX FOR SALE. NASONEX FOR SALE. NASONEX FOR SALE. NASONEX FOR SALE. NASONEX no rx. Taking NASONEX. NASONEX coupon. Ordering NASONEX online. What is NASONEX.

    This entry was posted on Tuesday, June 17th, 2008 at 2:35 pm and is filed under Random. You can leave a comment and follow any responses to this entry through the RSS 2.0 feed.

    4 Comments Leave a comment

    1. […] Esse negócio consegue ser mais pesado que a própria Ext! Além disso, vi mais opiniões negativas do que […]

    2. […] Esse negócio consegue ser mais pesado que a própria Ext! Além disso, vi mais opiniões negativas do que […]

    3. anon 11 May 2009 at 11:38 pm #

      I ‘thing’ your website is ugly. Don’t know how you feel qualified to be such a harsh critic… Oh well, you’re not the first

    4. Rob 25 May 2009 at 2:06 pm #

      Anon, perhaps you are right, perhaps I am being overly harsh… Since writing this I do think “thing” there is a space on the web for web applications that make the most of what we have without plugins. However I think it’s going to be very hard to do, and we may end up with these tools making the web a worse place, rather than a better one.

    Leave a Reply