. */ # Known/outstanding issues: # [UNCONFIRMED ISSUE] Plugin seems to keep pinging when importing an XML/WXR file even if pinging is disabled # Plugin does not seem to report any errors if it cannot write to the log file (see E2 blog for example) function SUP_add_options_page(){ if(function_exists("add_options_page")) add_options_page("UP Smart Update Pinger", "UP Smart Update Pinger", 5, basename(__FILE__), "SUP_show_options_page"); } function SUP_show_options_page(){ global $logfile; $ping = get_option("SUP_ping"); $pinglog = get_option("SUP_pinglog"); $uris = get_option("ping_sites"); $forcedpings = false; $SUP_output_log=''; $pingservicesnow = "Ping Services Now!"; $deletelogfile = "Delete Log File"; if(isset($_POST["ping"]) && $_POST["ping"] == $pingservicesnow){ $forcedpings = true; SUP_log(SUP_ping_services($forcedpings).strftime("%D %T")."\tForced pinging services (Homepage)\n\t─────\n"); }elseif(isset($_POST["submit"])){ $uris = $_POST["uris"]; $ping = 0; if($_POST["ping"] == 1) $ping = 1; $pinglog = 0; if($_POST["pinglog"] == 1) $pinglog = 1; update_option("SUP_ping", $ping); update_option("SUP_pinglog", $pinglog); update_option("ping_sites", $uris); echo '

Options saved.

'; }elseif(isset($_POST["delete"]) && $_POST["delete"] == $deletelogfile){ $fh = @fopen($logfile, "w"); if(false === @fwrite($fh, strftime("%D %T")."\tLog file deleted\n\t─────\n")){ update_option("SUP_error", 1); }else{ update_option("SUP_error", 0); } @fclose($fh); } $checked1 = ''; if($ping == 1) $checked1 = 'checked="checked"'; $checked2 = ''; if($pinglog == 1) $checked2 = 'checked="checked"'; echo '

Ultimate Plugins Smart Update Pinger

Click here for installation instructions

Click here for usage instructions

Click here for updated versions

Click here for comments and suggestions

URIs to Ping

The following services will automatically be pinged/notified when you publish normal or future timestamped posts. Not when you edit previously published posts, as WordPress does by default.

This plugin also fixes an issue with the default extended ping programming in Wordpress and pre-2.1 versions of Smart Update Pinger (it now includes the url of the new post).

NB: this list is synchronized with the original update services list.

Separate multiple service URIs with line breaks:

Ping log

These are the last 100 actions performed by the plugin. In reverse chronological order for easier reading (latest ping first).

'; SUP_get_last_log_entries(500); echo '

'; } # telling WordPress to ping if the post is new, but not if it's just been edited function SUP_ping_if_new($id){ global $wpdb, $post_title; $SUP_output_log="\t─────\n"; $SUP_ping_result=''; $forcedpings = false; if(get_option('SUP_ping') == 1 && trim(get_option('ping_sites')) != ""){ # fetches data directly from database; the function "get_post" is cached, and using it here will get the post as is was before the last save $row = mysql_fetch_array(mysql_query( // "SELECT post_date,post_modified,post_title,guid FROM $wpdb->posts WHERE id=$id")); "SELECT post_date,post_modified,post_title FROM $wpdb->posts WHERE id=$id")); # if time when created equals time when modified it is a new post, otherwise the author has edited/modified it if(!$row["post_title"]){ $SUP_output_log=strftime("%D %T")."\tNOT Pinging services (ERROR: YOU HAVE FORGOTTEN TO ENTER A POST TITLE) ...\n".$SUP_output_log; }else{ if($row["post_date"] == $row["post_modified"]){ $SUP_output_log=strftime("%D %T")."\tPinging services (New normal post: “".$row["post_title"]."”) ...\n".$SUP_output_log; $SUP_output_log=SUP_ping_services($forcedpings,get_permalink($id)).$SUP_output_log; # Try commenting the line above, and uncommenting this line below if pinging seems to be out of order. Please notify the author if it helps! # generic_ping(); }else{ // Post has been edited or it's a future post // If we have a post title it means that we are in the normal WP loop and therefore it was an edit (not a future post) if($post_title){ $SUP_output_log=strftime("%D %T")."\tNOT Pinging services (Existing post was edited: “".$row["post_title"]."”) ...\n".$SUP_output_log; }else{ $SUP_output_log=strftime("%D %T")."\tPinging services (New timestamped post: “".$row["post_title"]."”) ...\n".$SUP_output_log; $SUP_output_log=SUP_ping_services($forcedpings,get_permalink($id)).$SUP_output_log; # Try commenting the line above, and uncommenting this line below if pinging seems to be out of order. Please notify the author if it helps! # generic_ping(); } } } }else{ if (trim(get_option('ping_sites')) != ""){ $SUP_output_log=strftime("%D %T")."\tNOT Pinging services (WARNING: DISABLED BY ADMINISTRATOR)\n".$SUP_output_log; }else{ $SUP_output_log=strftime("%D %T")."\tNOT Pinging services (WARNING: EMPTY PING SERVICES LIST)\n".$SUP_output_log; } } SUP_log($SUP_output_log); } # More or less a copy of WP's "generic_ping" from functions.php, but uses another function to send the actual XML-RPC messages. function SUP_ping_services($forcedpings,$SUP_guid = ''){ $SUP_output_log=''; #$services = get_settings('ping_sites'); #UP - 17.07.07 - get_option is newer/better then get_settings $services = get_option('ping_sites'); $services = preg_replace("|(\s)+|", '$1', $services); // Kill dupe lines $services = trim($services); if ( '' != $services ) { $services = explode("\n", $services); foreach ($services as $service) $SUP_output_log=SUP_send_xmlrpc($forcedpings,$SUP_guid,$service).$SUP_output_log; } return $SUP_output_log; } # A slightly modified version of the WordPress built-in ping functionality ("weblog_ping" in functions.php). # Original version: #function weblog_ping($server = '', $path = '') { #global $wp_version; #include_once(ABSPATH . WPINC . '/class-IXR.php'); #// using a timeout of 3 seconds should be enough to cover slow servers #$client = new IXR_Client($server, ((!strlen(trim($path)) || ('/' == $path)) ? false : $path)); #$client->timeout = 3; #$client->useragent .= ' -- WordPress/'.$wp_version; #// when set to true, this outputs debug messages by itself #$client->debug = false; #$home = trailingslashit( get_option('home') ); #if ( !$client->query('weblogUpdates.extendedPing', get_option('blogname'), $home, get_bloginfo('rss2_url') ) ) // then try a normal ping #$client->query('weblogUpdates.ping', get_option('blogname'), $home); #} # This one uses correct extendedPing format (WP does not), and logs response from service. function SUP_send_xmlrpc($forcedpings,$SUP_guid = '',$server = '', $path = ''){ global $wp_version; $SUP_output_log=''; include_once (ABSPATH . WPINC . '/class-IXR.php'); // using a timeout of 5 seconds should be enough to cover slow servers (changed from 3 to 5) $client = new IXR_Client($server, ((!strlen(trim($path)) || ('/' == $path)) ? false : $path)); $client->timeout = 5; $client->useragent .= ' -- WordPress/'.$wp_version; // when set to true, this outputs debug messages by itself $client->debug = false; $home = trailingslashit( get_option('home') ); # The extendedPing format should be "blog name", "blog url", "check url" (the new URL), and "feed url". # Related Website(s) # http://www.weblogs.com/api.html # An example: # Someblog - Title # http://spaces.msn.com/someblog - Home URL # http://spaces.msn.com/someblog/PersonalSpace.aspx?something - Check/New URL # http://spaces.msn.com/someblog/feed.rss - Feed # Changed the following line therefore: # if($client->query('weblogUpdates.extendedPing', get_settings('blogname'), $home, get_bloginfo('rss2_url'), get_bloginfo('rss2_url'))) if ($forcedpings){ # If this is a forced ping it's better to use a regular ping for the homepage without an update URL (safer) if($client->query('weblogUpdates.ping', get_option('blogname'), $home)){ $SUP_output_log=strftime("%D %T")."\t► [Regular Ping] ".$server." was successfully pinged\n".$SUP_output_log; if (get_option('SUP_pinglog') == 1){ $SUP_output_log=strftime("%D %T")."\t►► Blogname: '".get_option('blogname')."'\n".$SUP_output_log; $SUP_output_log=strftime("%D %T")."\t►► Homepage: '".$home."'\n".$SUP_output_log; } }else{ $SUP_output_log=strftime("%D %T")."\t► ".$server." could not be pinged. Error message: “".$client->error->message."”\n".$SUP_output_log; } }else{ if($client->query('weblogUpdates.extendedPing', get_option('blogname'), $home, $SUP_guid, get_bloginfo('rss2_url'))){ $SUP_output_log=strftime("%D %T")."\t► [Extended Ping] ".$server." was successfully pinged\n".$SUP_output_log; if (get_option('SUP_pinglog') == 1){ $SUP_output_log=strftime("%D %T")."\t►► Blogname: '".get_option('blogname')."'\n".$SUP_output_log; $SUP_output_log=strftime("%D %T")."\t►► Homepage: '".$home."'\n".$SUP_output_log; $SUP_output_log=strftime("%D %T")."\t►► Updated : '".$SUP_guid."'\n".$SUP_output_log; $SUP_output_log=strftime("%D %T")."\t►► RSS URL : '".get_bloginfo('rss2_url')."'\n".$SUP_output_log; } }else{ # pinging was unsuccessful, trying regular ping format if($client->query('weblogUpdates.ping', get_option('blogname'), $home)){ $SUP_output_log=strftime("%D %T")."\t► [Regular Ping] ".$server." was successfully pinged\n".$SUP_output_log; if (get_option('SUP_pinglog') == 1){ $SUP_output_log=strftime("%D %T")."\t►► Blogname: '".get_option('blogname')."'\n".$SUP_output_log; $SUP_output_log=strftime("%D %T")."\t►► Homepage: '".$home."'\n".$SUP_output_log; } }else{ $SUP_output_log=strftime("%D %T")."\t► ".$server." could not be pinged. Error message: “".$client->error->message."”\n".$SUP_output_log; } } } return $SUP_output_log; } $post_title = ""; # Receives the title of the post from a filter below function SUP_post_title($title){ global $post_title; $post_title = $title; return $title; } # Log $logfile = ABSPATH . 'wp-content/plugins/ultimate-plugins-smart-update-pinger/ultimate-plugins-smart-update-pinger.log'; function SUP_log($SUP_log_output){ global $logfile; $logerror = 0; $fh = @fopen($logfile, "a"); if(false === @fwrite($fh, $SUP_log_output)){ update_option("SUP_error", 1); }else{ update_option("SUP_error", 0); } @fclose($fh); } function SUP_get_last_log_entries($num){ global $logfile; $lines = @file($logfile); if(get_option("SUP_error") == 1){ $fh = @fopen($logfile, "a"); if(false === @fwrite($fh, "")){ echo "Error writing log file (".$logfile."). Most likely your logfile (".$logfile.") is write-protected and no log data can be saved (change the rights of this file to 777), or alternatively this could mean that you have manually removed the log file, or that you have changed the directory or file name of the plugin (they both should be 'ultimate-plugins-smart-update-pinger')"; }else{ // Original: $lines = array_slice($lines, count($lines) - $num); // Modified to show in reverse order (easier for reading) $lines = array_reverse(array_slice($lines, count($lines) - $num)); $msg = ""; foreach($lines as $line){ $msg.=trim($line)."
"; } echo $msg; } @fclose($fh); }else{ if($lines === false){ echo "Error reading log file (".$logfile."). Most likely you have manually removed the log file, or alternatively this could mean that the logfile (".$logfile.") is read-protected (change the rights of this file to 777), or that you have changed the directory or file name of the plugin (they both should be 'ultimate-plugins-smart-update-pinger')"; }else{ // Original: $lines = array_slice($lines, count($lines) - $num); // Modified to show in reverse order (easier for reading) $lines = array_reverse(array_slice($lines, count($lines) - $num)); $msg = ""; foreach($lines as $line){ $msg.=trim($line)."
"; } echo $msg; } } } # adds a filter to receive the title of the post before publishing add_filter("title_save_pre", "SUP_post_title"); # shows the options in the administration panel add_action("admin_menu", "SUP_add_options_page"); # calls SUP_ping whenever a post is published add_action("publish_post", "SUP_ping_if_new"); # calls SUP_ping_draft when changing the status from private/draft to published # add_action("private_to_published', 'SUP_ping_draft'); # removes the "WordPress official" pinging hook remove_action("publish_post", "generic_ping"); # activates pinging if setting doesn't exist in database yet (before the user has changed the settings the first time) if(get_option("SUP_ping") === false){update_option("SUP_ping", 1);} if(get_option("SUP_pinglog") === false){update_option("SUP_pinglog", 1);} if(get_option("SUP_error") === false){update_option("SUP_error", 0);} ?> 2012 | Kite 2012 - Part 2
Saturday, April 20, 2024

Kite 2012

Kitesurfing News Year 2012-2016!

2012 Redbull Ragnarok

Posted by kite2012 On April - 20 - 2012

Remi Meum is the winner of this years Redbull Ragnarok competition. Perhaps not a big surprise that one of the local guys won, beating Ruben Lenten, Sam Medysky and many other professional top riders. Anyway, congrats to Remi Meum!

Related External Links

Huge snowkiting jump over house

Posted by kite2012 On April - 18 - 2012

A maniac named Marek ‘Murphy’ Zach recently made a show during the Red Bull Ragnarok 2012. Moreover Marek is a team rider for Ozone.

Related External Links

Carlos Madson

Posted by kite2012 On April - 17 - 2012

Carlos Madson might be a new name for many people. He hasn’t really been in the spotlight like Youri Zoon, Ruben Lenten, Susi Mai & Co, but this does not make him a worse kitesurfer! In fact Carlos was placed 5th in the PKRA championship that recently was held now in 2012.

Related External Links

Harry Vogelezang – old but still crazy!

Posted by kite2012 On April - 16 - 2012

A continuation from the previous video with Harry Vogelezang. Harry is an excellent windsurfer and kitesurfer, but even the pro´s can sometime make mistakes and so does Harry… but he takes it easy :)

Related External Links

Malin Amle in Australia

Posted by kite2012 On April - 6 - 2012

Malin Amle at Woodman Point and Safety Bay in Western Australia. A nice video well worth watching and Malin is a very talented kitesurfing girl!

Related External Links

Best KiteSurfing Video 2012

Posted by kite2012 On February - 15 - 2012

This is by far one of the best kitesurfing videos for 2012. Great music, nice editing, good variety (not just 9 minutes of unhooked handle passes) and the spots where these guys are kiting looks absolutely amazing! If you ever plan to make a kitesurfing video, use this video as a template and your video will become a success!

Related External Links

Ragnarok 2012

Posted by kite2012 On December - 21 - 2011

RedBull Ragnarok is a snowkiting competition that takes place once a year on the mighty plateau of Norway, Hardangervidda!
Last year 200 riders were selected to participate in this battle. Among them were Susanne Mai, Ruben Lenten and Aaron Hadlow.
“Ragnarok” derives from the Norse mythology, the final battle between good and evil gods where only the heroes on the battlefield survived. RedBull’s Ragnarok symbolise this battle and fact is that far from all riders pass the finish line. Endurance is important but freestylers also have an advantage since they can jump over obstacles and shorten the track.

This year Ragnarok takes place the 12th – 15th April at Haugastøl, Norway.

Enter the competition here

Related External Links

Airush 2012

Posted by kite2012 On December - 4 - 2011

It seems like 2012 can be Airush’s year! Airush has released many new products for year 2012 and they seem to be a success so far according to reviews and videos that are floating around on the web. So what’s new for 2012? Well, there is a lot, to much for me to cover everything in this post. However, Airush has products that are something extra, the smartbar III, Varial X and the Protoy board. Let´s take a look at them!

Smartbar III

The 2012 Smartbar is a highly tunable bar with some of the smartest features on the market today. A clean, yet very functional bar. Airush has integrated the Brain Quick Release with an extentable bar and other improved features, such as:

  1. Float Integration (to prevent the bar from sinking if you drop it into the water)
  2. EVA Grip
  3. 2012 Brain Quick Release
  4. Union Rivet
  5. OS Handles
  6. Extendable Length Bar
  7. Active Removable Stopper Ball
  8. Depower Strap
  9. E-Z 4-5 Line Conversion
  10. Multiple Length Options (3 meter extension lines comes with the bar)

Varial X

Mark Pattison, the designer of Varial X says that the goal with this kite was to take the depower, relaunching and forward speed from the previous Varial, and combine this with the unhooked performance, direct steering and highend of Vapor X. The result was the Varial X, a concept that is called SL-C i.e. a hybrid between a SLE kite and a C-kite. A kite for those who are looking for the unhooked, boosting and direct steering that comes with a C-kite, yet with a clean 4 line setup.

The Varial X sits further forward in the wind window than the Vapor X and it also flies faster through the wind window. When you sheet in the bar to the bottom the kite with surge forward to the edge of the wind window. This is something that gives you a great vertical height when jumping. The Varial X needs airspeed to develop power, so you can’t really park it and expect that the kite will act as a truck. The kite is constantly seeking its way forward to the edge of the wind window which might punish those who prefer to just park and ride, but in turn reward those with good flying techniques.

Protoy Board

Airush combines super slick design with the latest patented ACTIVE.

The Protoy board is as flexible as a PU (PolyUrethane) board, but made in high modulus carbon fibre, which gives the board much more reflex and at the same time makes it stronger.

The ACTIVE technology doesn’t prevent the board from flexing, but it prevent the board from breaking under extreme loads, for instance if you land hard after a jump.

Airush claims that this board is 20% lighter than a standard sandwich construction.

The image to the left shows an exploded view of the Protoy board.

  1. Diamond grooved EVA ultragrip traction
  2. Lightweight spray finished, sanded back.
  3. 40 GM protective layer
  4. 101 GM T700 Carbon biaxial lightweight carbon outer skin.
  5. High strength, optimum flexibility and lightening fast response.
  6. Heavy duty double glass reinforcement in heel area.
  7. Corecell san foam high density layer for strength and reduced weight over wood.
  8. 40 GM lightweight base layer for sandwich.
  9. Patented active stringer.
  10. High density foam reinfocement in fin areas.
  11. Corecell san foam high density layer for bottom deck.

The protoy board also comes with a surfinz adjustable box system and a carbon reinforced hexcore fin set.

I know, lot’s of techniqual stuff here… Perhaps just easier to watch this movie and form your own opinion :)

Naish Park 2012

Posted by kite2012 On November - 20 - 2011

Naish Park

Naish is considered to be one of the best kite manufacturers in the world. The design of their kites, easy handling and good perfomance appeal many kitesurfers. Good advertisment also help of course, just look at these videos!

So what have people to say about Naish Park? Here are a bunch of reviews:

  1. Naish Park at Naish Kite Surf
  2. The Naish 2012 Park
  3. Naish 2011 Park Action video
  4. Some pics of the new Naish 2012


Win a Naish Park

Related External Links

Liquid Force Envy 2012

Posted by kite2012 On November - 16 - 2011

Reviews about Liquid Force’s new Envy has started to pop up on kitesurfing sites all around the world. We here at Kite 2012 haven’t tried it yet, so take this review with a pinch of salt.

Liquid Force Envy 2012

And feel free to add additonal info about the new Envy!

Naish Torch 2012

Posted by kite2012 On November - 10 - 2011

Naish Torch is a kite loved by many and it was expected that Naish would release a new version 2012. Here is a little teaser about the new Naish Torch.

2012 Torch: The World’s Premier C-Kite from Naish International on Vimeo.

For more info about Naish kites, check out Naish Kites

Kite news 2012

Posted by kite2012 On November - 10 - 2011

The year 2012 hasn’t yet even started, but the manufacturers have had their 2012 products ready for a long time already!

The intention with kite2012.com is to present news about kitesurfing when it comes to new kites, tricks, kite riders etc… We´ll also post videos and photos from and other cool stuff. So stay tuned for more will come…

Related External Links

Tom’s kitchen episode 4

Posted by kite2012
May-14-2016 I Comments Off on Tom’s kitchen episode 4

We Love Kiteboarding

Posted by kite2012
Apr-22-2015 I Comments Off on We Love Kiteboarding

Te Tainui Kitesurfing Video by F-One

Posted by Emma Pat
Nov-19-2014 I Comments Off on Te Tainui Kitesurfing Video by F-One

Red Bull King of the Air 2015 – Rule the Sky

Posted by Emma Pat
Nov-17-2014 I Comments Off on Red Bull King of the Air 2015 – Rule the Sky

A new video from Kite 2013

Posted by kite2012
Mar-20-2013 I Comments Off on A new video from Kite 2013

What do to when it´s not too windy

Posted by kite2012
Oct-11-2012 I Comments Off on What do to when it´s not too windy

How to film yourself while kitesurfing

Posted by kite2012
Oct-6-2012 I Comments Off on How to film yourself while kitesurfing

Kiteloop Crash

Posted by kite2012
Sep-22-2012 I Comments Off on Kiteloop Crash

Cross the Atlantic ocean by a kite!

Posted by kite2012
Sep-21-2012 I Comments Off on Cross the Atlantic ocean by a kite!