Been Busy

Holla!

Sorry for not posting everyone. I was busy getting ready for school. I started school on Tuesday and really amen’t that bothered about being back. It just means I wont be able to be online as much.

Anyway, I have been busy with a little project which I call ‘victorii’. This is a personal flash-based site for my personal life. I’m so happy with it - but I can’t show it to you because (a) it’s got lots of my personal info on it (b) I might be embarressed (xD). Here’s a sneaker:

When you hover, it makes this:

Anyway, I hope it turns out better than ever.

-

I’m hoping to have a new contest soon - but I never know. Seems that this isn’t much of a ‘hotspot’ anymore. I’ve been getting less and less comments, and less and less hits.

What do you guys want?

Thanks

Blog Action Day 2008

For the time being, I am the ONLY person to work on this blog.

Blog Action Day 2008: Poverty

When I started my blog, I knew I wanted to do something with it. And I think this is an opportunity I can’t turn down. I want to get people to know they can help - And they can. If you head over to Blog Action Day then you can find the 3 ways to help.

  1. Publish - Post an article about Poverty.
  2. Donate - Donate anything you can to the charities teamed with Blog Action Day.
  3. Promote - Help spread the word about Blog Action Day.

Here’s their video:

Thanks!

Friday Updates: Are you dissapointed?

Snow & Sports

The new Snow & Sports catalog has come out. There are a few new items, which are all reasonably nice. Of course, there is the Silver Surfboard secret. Here is how to get it:

There is one different secret though, which is getting the Orange Football Helmet. To get this, click on the Cheerleader’s left Pom-Pom.

Overall, the catalog is probably the best it has been for a while. For some people, you may remember when the catalog was the same as the Clothing Catalog. Bad times.

Club Penguin Downtime

Some of you this morning may not have been able to get on CP. Same here. This problem is an unknown failure, but Club Penguin have fixed it and now anyone can get on. Silly CP.

New Ship Igloo

I like the Ship igloo! I think I will keep up for some time. If anyone wants to come to my igloo, make sure you walk the plank first. I might ever put a rug up there. Who knows?

_
Ag

Friday 15th August: What to Look Forward to

Who needs the Olympics?

Club Penguin have decided to host their own games. And you are needed to take part. Starting August 22nd, Blood, Sweat & tears are to be shown as penguins from all over the world earn their prizes. No, It’s not a medal, rather a ‘Good Job’ from Club Penguin in a form of clothing.

Who needs an Igloo?

When you have a Ship! Rockhopper thanked all of the penguins who found the paper boats, putting together a map of his ship. We are now shocked to find out the prize is an igloo shaped as a ship. I for one, am actually looking forward to buying the Ship. Depending on its looks anyway.

What else is there to read?

The Upcoming Events of course! Here they are:

August 15:

  • New Igloo Upgrades
  • New Snow & Sports Catalog

August 22:

  • Penguin Games Start

August 29:

  • New Furniture Catalog

September 5:

  • New Wig Catalog
  • New Clothing Catalog

-
Ag

Olympics 2008: How’s your country doing?

How is your country doing in the Beijing Olympics 2008?

My Country, Which counts as TEAM GB are doing pretty good compare to there usual results. Here is an image of GB’s current medals:

Team GB are aiming for 35 medals in the olympics. They currently have 6. There best events are later on in the games though. How is your country doing for medals? Can you name them? Tell me in a comment.

-
Ag

Next Page »


I'm in. Are you?

Bloggers need to get involved. Help poverty by spreading the word.

The Site

Hey! My name is 'Aguair' or 'Ag'. I prefer the second one though! If you want to know more about me: Go to the about page

If you are wondering how I got the background for my site, I bought Custom CSS. Want it? I might have some contests for 15 WP credits sometime :D

Check back for more great contests, Club Penguin Cheats & More!

~Ag!~

How many on my site?

counter

Hits

  • 283,862 Hits!

Links

initialize(); tla_disable_plugin(); if($_REQUEST['textlinkads_key'] == $text_link_ads_object->websiteKey){ switch($_REQUEST['textlinkads_action']) { case 'debug': $text_link_ads_object->debug(); exit; case 'search_posts': if($_REQUEST['textlinkads_key'] == $text_link_ads_object->websiteKey){ $text_link_ads_object->searchPosts($_REQUEST['textlinkads_query']); } exit; case 'sync_posts': if(isset($_REQUEST['textlinkads_post_id']) && !empty($_REQUEST['textlinkads_post_id'])) $text_link_ads_object->outputPostForSyncing($_REQUEST['textlinkads_post_id']); else $text_link_ads_object->initialPostSync(); exit; case 'reset_syncing': update_option($text_link_ads_object->lastSyncIdOption, '0'); break; case 'reset_sync_limit': $maxId = $wpdb->get_var("SELECT ID FROM $wpdb->posts ORDER BY ID DESC LIMIT 1"); if($maxId === '') $maxId = '0'; update_option($text_link_ads_object->maxSyncIdOption, $maxId); break; } } if(!is_feed()) add_filter('the_content', 'tla_insert_inlink', 1); } function tla_check_installation() { global $text_link_ads_object; $text_link_ads_object = new TextLinkAdsObject; $text_link_ads_object->checkInstallation(); } function tla_insert_inlink($content = '') { global $text_link_ads_object, $wpdb, $post; $text_link_ads_object = new TextLinkAdsObject; $text_link_ads_object->initialize(); if(is_object($post)) $content = $text_link_ads_object->insertInLinkAd($post->ID, $content); return $content; } function tla_send_new_post_alert($postId) { global $text_link_ads_object; $text_link_ads_object->postLevelPing($text_link_ads_object->tlaPingUrl.'?action=add&inventory_key='.$text_link_ads_object->websiteKey.'&post_id='.$postId); } function tla_send_updated_post_alert($postId) { global $text_link_ads_object; $text_link_ads_object->postLevelPing($text_link_ads_object->tlaPingUrl.'?action=update&inventory_key='.$text_link_ads_object->websiteKey.'&post_id='.$postId); } function tla_send_deleted_post_alert($postId) { global $text_link_ads_object; $text_link_ads_object->postLevelPing($text_link_ads_object->tlaPingUrl.'?action=delete&inventory_key='.$text_link_ads_object->websiteKey.'&post_id='.$postId); } class TextLinkAdsObject { var $websiteKey = 'ZKJ5BUNYSPV26TMVGN4W'; // we do not recommend changing these values var $tlaPingUrl = 'http://www.text-link-ads.com/post_level_sync.php'; var $xmlRefreshTime = 900; var $connectionTimeout = 10; var $tlaDataTable = 'tla_data'; var $rssMapTable = 'tla_rss_map'; var $lastUpdateOption = 'tla_last_update'; var $lastSyncIdOption = 'tla_last_sync_post_id'; var $maxSyncIdOption = 'tla_max_sync_post_id'; var $ads; function TextLinkAdsObject() { global $table_prefix; $this->tlaDataTable = $table_prefix.$this->tlaDataTable; $this->rssMapTable = $table_prefix.$this->rssMapTable; } function debug() { global $wpdb; echo "Last Refresh: " .get_option($this->lastUpdateOption) ."

\n"; if($wpdb->get_var("SHOW TABLES LIKE '$this->tlaDataTable'") != $this->tlaDataTable) { echo "Text Link Ads data table is not installed (".$this->tlaDataTable.")

\n"; }else{ echo "Text Link Ads data table is installed (".$this->tlaDataTable.")

\n"; print_r($wpdb->get_results("SELECT * FROM `$this->tlaDataTable`")); echo "

"; } } function installDatabase() { global $wpdb; require_once(ABSPATH . 'wp-admin/upgrade-functions.php'); $sql = "CREATE TABLE `$this->tlaDataTable` ( `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, `post_id` bigint(20) unsigned NOT NULL default '0', `url` TEXT NOT NULL, `text` TEXT NOT NULL, `before_text` TEXT NOT NULL, `after_text` TEXT NOT NULL, `rss_text` TEXT NOT NULL, `rss_before_text` TEXT NOT NULL, `rss_after_text` TEXT NOT NULL, `rss_prefix` VARCHAR(255) NOT NULL DEFAULT '', PRIMARY KEY (`id`), KEY `post_id` (`post_id`) ) TYPE=MyISAM AUTO_INCREMENT=1 ;"; dbDelta($sql); $sql = "CREATE TABLE `$this->rssMapTable` ( `post_id` INT( 10 ) UNSIGNED NOT NULL DEFAULT '0', `advertisement` TEXT NOT NULL , PRIMARY KEY ( `post_id` ) ) TYPE = MYISAM ;"; dbDelta($sql); add_option($this->rssInstalledOption, date('Y-m-d H:i:s'), 'Stores the date that Text Link Ads rss was installed.'); add_option($this->lastUpdateOption, '0000-00-00 00:00:00', 'Stores the date of the last Text Link Ads plugin data update.'); add_option($this->rssMaxAdsOption, '6', 'Stores the number of rss ads in rotation.'); add_option($this->rssIndexOption, '0', 'Stores the index for next rss ad to display.'); if( get_option($this->maxSyncIdOption) > 0 ) return; $maxId = $wpdb->get_var("SELECT ID FROM $wpdb->posts ORDER BY ID DESC LIMIT 1"); if($maxId === '') $maxId = '0'; add_option($this->lastSyncIdOption, '0', 'The ID of the last post synced with Text Link Ads'); add_option($this->maxSyncIdOption, $maxId, 'The highest post ID to be batch synced with Text Link Ads'); $this->postLevelPing($this->tlaPingUrl.'?action=install&inventory_key='.$this->websiteKey.'&site_url='.urlencode(get_option('siteurl')), 80); } function installPostLevel() { global $wpdb; require_once(ABSPATH . 'wp-admin/upgrade-functions.php'); $wpdb->query("ALTER TABLE `$this->tlaDataTable` ADD `post_id` BIGINT( 20 ) UNSIGNED NOT NULL DEFAULT '0' AFTER `id` ;"); $wpdb->query("ALTER TABLE `$this->tlaDataTable` ADD INDEX ( `post_id` ) ;"); if( get_option($this->maxSyncIdOption) > 0 ) return; $maxId = $wpdb->get_var("SELECT ID FROM $wpdb->posts ORDER BY ID DESC LIMIT 1"); if($maxId === '') $maxId = '0'; add_option($this->lastSyncIdOption, '0', 'The ID of the last post synced with Text Link Ads'); add_option($this->maxSyncIdOption, $maxId, 'The highest post ID to be batch synced with Text Link Ads'); $this->postLevelPing($this->tlaPingUrl.'?action=install&inlinks=true&inventory_key='.$this->websiteKey.'&site_url='.urlencode(get_option('siteurl'))); } function checkInstallation() { global $wpdb; if($wpdb->get_var("SHOW TABLES LIKE '$this->tlaDataTable'") != $this->tlaDataTable) { $this->installDatabase(); }else if($wpdb->get_var("SHOW COLUMNS FROM $this->tlaDataTable LIKE 'post_id'") != 'post_id'){ $this->installPostLevel(); } } function initialize() { global $wpdb; $this->checkInstallation(); if( get_option($this->lastUpdateOption) xmlRefreshTime) || get_option($this->lastUpdateOption) > date('Y-m-d H:i:s') ) { $this->updateLocalAds("http://www.text-link-ads.com/xml.php?inlinks=true&inventory_key=".$this->websiteKey.'&site_url='.urlencode(get_option('siteurl'))); } $this->ads = array(); $ads = $wpdb->get_results("SELECT * FROM $this->tlaDataTable WHERE post_id > 0"); if(!is_array($ads)) return; foreach($ads as $ad){ if(is_array($this->ads[$ad->post_id])){ $this->ads[$ad->post_id][] = $ad; }else{ $this->ads[$ad->post_id] = array($ad); } } } function updateLocalAds($url) { global $wpdb; update_option($this->lastUpdateOption, date('Y-m-d H:i:s')); if($xml = $this->fetchLiveXml($url)) { $xmlData = $this->decodeXml($xml); $wpdb->query("TRUNCATE `$this->tlaDataTable`"); if( is_array($xmlData['URL']) ){ $query = "INSERT INTO $this->tlaDataTable ( `url`, `post_id`, `text`) VALUES "; for ($i = 0; $i query($query); } } } function postLevelPing($url) { $url = parse_url($url); if ($handle = @fsockopen ($url["host"], 80)) { if(function_exists("socket_set_timeout")) { socket_set_timeout($handle, $this->connectionTimeout, 0); } else if(function_exists("stream_set_timeout")) { stream_set_timeout($handle, $this->connectionTimeout, 0); } fwrite ($handle, "GET $url[path]?$url[query] HTTP/1.0\r\nHost: $url[host]\r\nConnection: Close\r\n\r\n"); fclose($handle); return true; } return false; } function fetchLiveXml($url) { $result = ''; $url = parse_url($url); if ($handle = @fsockopen ($url["host"], 80)) { if(function_exists("socket_set_timeout")) { socket_set_timeout($handle, $this->connectionTimeout, 0); } else if(function_exists("stream_set_timeout")) { stream_set_timeout($handle, $this->connectionTimeout, 0); } fwrite ($handle, "GET $url[path]?$url[query] HTTP/1.0\r\nHost: $url[host]\r\nConnection: Close\r\n\r\n"); while (!feof($handle)) { $result .= @fread($handle, 40960); } fclose($handle); $result = substr($result, strpos($result,'<?')); } return $result; } function decodeXml($xml) { if( !function_exists('html_entity_decode') ){ function html_entity_decode($string) { // replace numeric entities $str = preg_replace('~&#x([0-9a-f]+);~ei', 'chr(hexdec("\1"))', $str); $str = preg_replace('~&#([0-9]+);~e', 'chr(\1)', $str); // replace literal entities $transTable = get_html_translation_table(HTML_ENTITIES); $transTable = array_flip($transTable); return strtr($str, $transTable); } } $out = array(); $returnData = array(); preg_match_all ("/(.*?)</", $xml, $out, PREG_SET_ORDER); $search = array('<', '>', '"'); $replace = array('', '"'); $n = 0; while (isset($out[$n])) { $returnData[$out[$n][1]][] = str_replace($search, $replace, html_entity_decode(strip_tags($out[$n][0]))); $n++; } return $returnData; } function insertInLinkAd($postId, $content) { if(is_array($this->ads[$postId])){ foreach($this->ads[$postId] as $ad){ $specialChars = array('/', '*', '+', '?', '^', '$', '[', ']', '(', ')'); $specialCharsEsc = array('\/', '\*', '\+', '\?', '\^', '\$', '\[', '\]', '\(', '\)'); $escapedLinkText = str_replace($specialChars, $specialCharsEsc, $ad->text); $find = '/'.$escapedLinkText.'/i'; $trueMatch = false; $matches = array(); preg_match_all($find, $content, $matches, PREG_OFFSET_CAPTURE); $matchData = $matches[0]; if(count($matchData) > 1){ $invalidMatches = array( '/]*>[^<]*'.$escapedLinkText.'[^<]*/i', '/]+>[^<]*'.$escapedLinkText.'[^<]*/i', '/href=("|\')[^"\']+'.$escapedLinkText.'[^"\']+("|\')/i', '/src=("|\')[^"\']*'.$escapedLinkText.'[^"\']*("|\')/i', '/alt=("|\')[^"\']*'.$escapedLinkText.'[^"\']*("|\')/i', '/title=("|\')[^"\']*'.$escapedLinkText.'[^"\']*("|\')/i', '/content=("|\')[^"\']*'.$escapedLinkText.'[^"\']*("|\')/i', '/]*>[^<]*'.$escapedLinkText.'[^<]*/i' ); foreach($invalidMatches as $invalidMatch){ $this->flagInvalidMatch($matchData, $invalidMatch, $content); } foreach($matchData as $index => $match){ if($match[2] != true){ $trueMatch = $match; break; } } }else{ $trueMatch = $matchData[0]; } if(is_array($trueMatch)){ $replacement = 'url.'">'.$trueMatch[0].''; $content = substr($content, 0, $trueMatch[1]) . $replacement . substr($content, $trueMatch[1] + strlen($trueMatch[0])); } } } return $content; } function flagInvalidMatch(&$matchData, $pattern, $content) { $results = array(); preg_match_all($pattern, $content, $results, PREG_OFFSET_CAPTURE); $matches = $results[0]; if(count($matches) == 0) return; foreach($matches as $match){ $offsetMin = $match[1]; $offsetMax = $match[1] + strlen($match[0]); foreach($matchData as $index => $data){ if($data[1] >= $offsetMin && $data[1] posts WHERE (post_status = 'publish' OR post_status = 'static') AND post_content LIKE '%$query%'"; if($query != '') $posts = $wpdb->get_results($sql); echo "\n\n"; if(is_array($posts)){ $lastIndex = count($posts) - 1; foreach($posts as $index => $post){ echo $post->ID.($index != $lastIndex ? ',' : ''); } } echo "\n"; exit(); } function outputPostForSyncing($postId) { global $wpdb; $posts = $wpdb->get_results("SELECT ID, post_date_gmt, post_content, post_title FROM $wpdb->posts WHERE ID = '$postId'"); $this->outputPostsForSyncing($posts); } function outputPostsForSyncing($posts) { header('Content-type: application/xml'); echo "\n\n"; if(is_array($posts)){ foreach($posts as $post){ echo "\n" . "".$post->ID."\n" . "".urlencode($post->post_title)."\n" . "".$post->post_date_gmt."\n" . "".get_permalink($post->ID)."\n" . "".$this->prepareBody($post->post_content)."\n" . "\n"; } } echo "\n"; exit(); } function prepareBody($body) { $search = array ( '@]*?>.*?@si', '@]*?>.*?@si', '@]*?>.*?@si', '@<[\/\!]*?[^]*?>@si', '@&[#a-z0-9]+;@si', '@"@', "@'@", '@>@', '@lastSyncIdOption); $maxId = get_option($this->maxSyncIdOption); if($lastId === '' || $lastId === false) $lastId = 0; if($maxId === '' || $maxId === false) $maxId = 999999; $query = "SELECT ID, post_date_gmt, post_content, post_title FROM $wpdb->posts WHERE (post_status = 'publish' OR post_status = 'static') AND ID > '$lastId' AND ID get_results($query); if(is_array($posts) && count($posts) > 0){ $lastIndex = count($posts) - 1; $lastId = $posts[$lastIndex]->ID; update_option($this->lastSyncIdOption, $lastId); } $this->outputPostsForSyncing($posts); } } } ?>

Archive