diff options
author | donncha <donncha@7be80a69-a1ef-0310-a953-fb0f7c49ff36> | 2007-02-23 15:47:59 +0000 |
---|---|---|
committer | donncha <donncha@7be80a69-a1ef-0310-a953-fb0f7c49ff36> | 2007-02-23 15:47:59 +0000 |
commit | 132f53ddaeb250222a4ac85ebc0bf4dd780db60e (patch) | |
tree | d3deccaeee2dd2460dc36fef83685262ef0b64fc | |
parent | 5235dfe56983b253c4ea3ec91bc436e5ffb2660a (diff) | |
download | wordpress-mu-132f53ddaeb250222a4ac85ebc0bf4dd780db60e.tar.gz wordpress-mu-132f53ddaeb250222a4ac85ebc0bf4dd780db60e.tar.xz wordpress-mu-132f53ddaeb250222a4ac85ebc0bf4dd780db60e.zip |
WP Merge to 4929
git-svn-id: http://svn.automattic.com/wordpress-mu/trunk@899 7be80a69-a1ef-0310-a953-fb0f7c49ff36
29 files changed, 529 insertions, 326 deletions
@@ -4,18 +4,19 @@ * Original code by: Elias Torres, http://torrez.us/archives/2006/08/31/491/ * Modified by: Dougal Campbell, http://dougal.gunters.org/ * - * Version: 1.0.0-dc + * Version: 1.0.5-dc */ - + define('APP_REQUEST', true); require_once('wp-config.php'); +require_once('wp-includes/post-template.php'); $use_querystring = 1; // If using querystring, we need to put the path together manually: if ($use_querystring) { - $_GLOBALS['use_querystring'] = $use_querystring; + $GLOBALS['use_querystring'] = $use_querystring; $action = $_GET['action']; $eid = (int) $_GET['eid']; @@ -28,7 +29,7 @@ if ($use_querystring) { $_SERVER['PATH_INFO'] = str_replace( '/app.php', '', $_SERVER['REQUEST_URI'] ); } -$app_logging = 1; +$app_logging = 0; function log_app($label,$msg) { global $app_logging; @@ -257,10 +258,11 @@ class AtomParser { class AtomServer { var $ATOM_CONTENT_TYPE = 'application/atom+xml'; - + var $CATEGORIES_CONTENT_TYPE = 'application/atomcat+xml'; var $INTROSPECTION_CONTENT_TYPE = 'application/atomserv+xml'; var $ENTRIES_PATH = "posts"; + var $CATEGORIES_PATH = "categories"; var $MEDIA_PATH = "attachments"; var $ENTRY_PATH = "post"; var $MEDIA_SINGLE_PATH = "attachment"; @@ -282,6 +284,8 @@ class AtomServer { $this->selectors = array( '@/service@' => array('GET' => 'get_service'), + '@/categories@' => + array('GET' => 'get_categories_xml'), '@/post/(\d+)@' => array('GET' => 'get_post', 'PUT' => 'put_post', @@ -348,31 +352,53 @@ class AtomServer { function get_service() { log_app('function','get_service()'); $entries_url = $this->get_entries_url(); + $categories_url = $this->get_categories_url(); $media_url = $this->get_attachments_url(); $accepted_content_types = join(',',$this->media_content_types); $introspection = <<<EOD -<service xmlns="http://purl.org/atom/app#" xmlns:atom="http://www.w3.org/2005/Atom"> - <workspace title="WordPress Experimental Workspace"> - <collection href="$entries_url" title="WordPress Posts"> - <accept>entry</accept> - <atom:title>WordPress Posts</atom:title> - </collection> - <collection href="$media_url" title="WordPress Media"> - <accept>$accepted_content_types</accept> - <atom:title>WordPress Media</atom:title> - </collection> - </workspace> +<service xmlns="http://purl.org/atom/app#" xmlns:atom="http://www.w3.org/2005/Atom"> + <workspace title="WordPress Workspace"> + <collection href="$entries_url" title="Posts"> + <atom:title>WordPress Posts</atom:title> + <accept>entry</accept> + <categories href="$categories_url" /> + </collection> + <collection href="$media_url" title="Media"> + <atom:title>WordPress Media</atom:title> + <accept>$accepted_content_types</accept> + </collection> + </workspace> </service> EOD; + $this->output($introspection, $this->INTROSPECTION_CONTENT_TYPE); } +function get_categories_xml() { + log_app('function','get_categories_xml()'); + $home = get_bloginfo_rss('home'); + + $categories = ""; + $cats = get_categories("hierarchical=0&hide_empty=0"); + foreach ((array) $cats as $cat) { + $categories .= " <category term=\"" . attribute_escape($cat->cat_name) . "\" />\n"; + } + $output = <<<EOD +<app:categories xmlns:app="http://purl.org/atom/app#" + xmlns="http://www.w3.org/2005/Atom" + fixed="yes" scheme="$home"> + $categories +</app:categories> +EOD; + $this->output($output, $this->CATEGORIES_CONTENT_TYPE); +} + /* * Create Post (No arguments) */ function create_post() { - + global $current_blog; $this->get_accepted_content_type($this->atom_content_types); $parser = new AtomParser(); @@ -389,7 +415,7 @@ EOD; if(!current_user_can($cap)) $this->auth_required('Sorry, you do not have the right to edit/publish new posts.'); - $blog_ID = 1; + $blog_ID = $current_blog->blog_id; $post_status = ($publish) ? 'publish' : 'draft'; $post_author = $user->ID; $post_title = $entry->title; @@ -400,6 +426,8 @@ EOD; $post_data = compact('blog_ID', 'post_author', 'post_date', 'post_date_gmt', 'post_content', 'post_title', 'post_category', 'post_status', 'post_excerpt'); + log_app('Inserting Post. Data:', print_r($post_data,true)); + $postID = wp_insert_post($post_data); if (!$postID) { @@ -437,8 +465,9 @@ EOD; // check for not found global $entry; + $entry = $GLOBALS['entry']; $this->set_current_entry($postID); - $this->escape($entry); + $this->escape($GLOBALS['entry']); if(!current_user_can('edit_post', $entry['ID'])) $this->auth_required('Sorry, you do not have the right to edit this post.'); @@ -507,6 +536,7 @@ EOD; } function create_attachment() { + global $wp, $wpdb, $wp_query, $blog_id; $type = $this->get_accepted_content_type(); @@ -531,6 +561,8 @@ EOD; $slug = "$slug.$ext"; $file = wp_upload_bits( $slug, NULL, $bits); + log_app('wp_upload_bits returns:',print_r($file,true)); + $url = $file['url']; $file = $file['file']; $filename = basename($file); @@ -695,7 +727,7 @@ EOD; if ($use_querystring) { $url .= '?action=/' . $this->ENTRIES_PATH; if(isset($page) && is_int($page)) { - $url .= "&eid=$page"; + $url .= "&eid=$page"; } } else { $url .= '/' . $this->ENTRIES_PATH; @@ -711,13 +743,29 @@ EOD; echo $url; } + function get_categories_url($page = NULL) { + global $use_querystring; + $url = get_bloginfo('url') . '/' . $this->script_name; + if ($use_querystring) { + $url .= '?action=/' . $this->CATEGORIES_PATH; + } else { + $url .= '/' . $this->CATEGORIES_PATH; + } + return $url; + } + + function the_categories_url() { + $url = $this->get_categories_url(); + echo $url; + } + function get_attachments_url($page = NULL) { global $use_querystring; $url = get_bloginfo('url') . '/' . $this->script_name; if ($use_querystring) { $url .= '?action=/' . $this->MEDIA_PATH; if(isset($page) && is_int($page)) { - $url .= "&eid=$page"; + $url .= "&eid=$page"; } } else { $url .= '/' . $this->MEDIA_PATH; @@ -738,11 +786,11 @@ EOD; global $use_querystring; if(!isset($postID)) { global $post; - $postID = $post->ID; + $postID = $GLOBALS['post']->ID; } if ($use_querystring) { - $url = get_bloginfo('url') . '/' . $this->script_name . '?action=/' . $this->ENTRY_PATH . "&eid=$postID"; + $url = get_bloginfo('url') . '/' . $this->script_name . '?action=/' . $this->ENTRY_PATH . "&eid=$postID"; } else { $url = get_bloginfo('url') . '/' . $this->script_name . '/' . $this->ENTRY_PATH . "/$postID"; } @@ -760,11 +808,11 @@ EOD; global $use_querystring; if(!isset($postID)) { global $post; - $postID = $post->ID; + $postID = $GLOBALS['post']->ID; } if ($use_querystring) { - $url = get_bloginfo('url') . '/' . $this->script_name . '?action=/' . $this->MEDIA_SINGLE_PATH ."&eid=$postID"; + $url = get_bloginfo('url') . '/' . $this->script_name . '?action=/' . $this->MEDIA_SINGLE_PATH ."&eid=$postID"; } else { $url = get_bloginfo('url') . '/' . $this->script_name . '/' . $this->MEDIA_SINGLE_PATH ."/$postID"; } @@ -815,6 +863,7 @@ EOD; } function get_feed($page = 1, $post_type = 'post') { + global $post, $wp, $wp_query, $posts, $wpdb, $blog_id, $post_cache; log_app('function',"get_feed($page, '$post_type')"); ob_start(); @@ -829,7 +878,14 @@ EOD; $query .= "&post_type=$post_type"; } query_posts($query); - global $post; + $post = $GLOBALS['post']; + $posts = $GLOBALS['posts']; + $wp = $GLOBALS['wp']; + $wp_query = $GLOBALS['wp_query']; + $wpdb = $GLOBALS['wpdb']; + $blog_id = $GLOBALS['blog_id']; + $post_cache = $GLOBALS['post_cache']; + $total_count = $this->get_posts_count(); $last_page = (int) ceil($total_count / $count); @@ -851,15 +907,17 @@ EOD; <link rel="last" type="application/atom+xml" href="<?php $this->the_entries_url($last_page) ?>" /> <link rel="self" type="application/atom+xml" href="<?php $this->the_entries_url() ?>" /> <rights type="text">Copyright <?php echo mysql2date('Y', get_lastpostdate('blog')); ?></rights> -<generator uri="http://wordpress.com/" version="1.0.0-dc">WordPress.com Atom API</generator> -<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?> +<generator uri="http://wordpress.com/" version="1.0.5-dc">WordPress.com Atom API</generator> +<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); +$post = $GLOBALS['post']; +?> <entry> - <id><?php the_guid(); ?></id> + <id><?php the_guid($post->ID); ?></id> <title type="html"><![CDATA[<?php the_title() ?>]]></title> <updated><?php echo get_post_modified_time('Y-m-d\TH:i:s\Z', true); ?></updated> <published><?php echo get_post_time('Y-m-d\TH:i:s\Z', true); ?></published> <app:control> - <app:draft><?php echo ($post->post_status == 'draft' ? 'yes' : 'no') ?></app:draft> + <app:draft><?php echo ($GLOBALS['post']->post_status == 'draft' ? 'yes' : 'no') ?></app:draft> </app:control> <author> <name><?php the_author()?></name> @@ -868,7 +926,7 @@ EOD; <uri><?php the_author_url()?></uri> <?php } ?> </author> - <?php if($post->post_status == 'attachment') { ?> + <?php if($GLOBALS['post']->post_status == 'attachment') { ?> <link rel="edit" href="<?php $this->the_entry_url() ?>" /> <link rel="edit-media" href="<?php $this->the_media_url() ?>" /> <?php } else { ?> @@ -878,8 +936,8 @@ EOD; <?php foreach(get_the_category() as $category) { ?> <category scheme="<?php bloginfo_rss('home') ?>" term="<?php echo $category->cat_name?>" /> <?php } ?> <summary type="html"><![CDATA[<?php the_excerpt_rss(); ?>]]></summary> - <?php if ( strlen( $post->post_content ) ) : ?> - <content type="html"><?php echo get_the_content('', 0, '') ?></content> + <?php if ( strlen( $GLOBALS['post']->post_content ) ) : ?> + <content type="html"><![CDATA[<?php echo get_the_content('', 0, '') ?>]]></content> <?php endif; ?> </entry> <?php @@ -895,7 +953,7 @@ EOD; function get_entry($postID, $post_type = 'post') { log_app('function',"get_entry($postID, '$post_type')"); ob_start(); - global $posts, $post, $wp_query; + global $posts, $post, $wp_query, $wp, $wpdb, $blog_id, $post_cache; switch($post_type) { case 'post': $varname = 'p'; @@ -905,25 +963,28 @@ EOD; break; } query_posts($varname . '=' . $postID); - if ( have_posts() ) : while ( have_posts() ) : the_post();?> + if ( have_posts() ) : while ( have_posts() ) : the_post(); + $post = $GLOBALS['post']; + ?> + <?php log_app('$post',print_r($GLOBALS['post'],true)); ?> <entry xmlns="http://www.w3.org/2005/Atom" xmlns:app="http://purl.org/atom/app#" xml:lang="<?php echo get_option('rss_language'); ?>"> - <id><?php the_guid(); ?></id> + <id><?php the_guid($post->ID); ?></id> <title type="html"><![CDATA[<?php the_title_rss() ?>]]></title> <updated><?php echo get_post_modified_time('Y-m-d\TH:i:s\Z', true); ?></updated> <published><?php echo get_post_time('Y-m-d\TH:i:s\Z', true); ?></published> <app:control> - <app:draft><?php echo ($post->post_status == 'draft' ? 'yes' : 'no') ?></app:draft> + <app:draft><?php echo ($GLOBALS['post']->post_status == 'draft' ? 'yes' : 'no') ?></app:draft> </app:control> <author> <name><?php the_author()?></name> <email><?php the_author_email()?></email> <uri><?php the_author_url()?></uri> </author> -<?php if($post->post_type == 'attachment') { ?> +<?php if($GLOBALS['post']->post_type == 'attachment') { ?> <link rel="edit" href="<?php $this->the_entry_url() ?>" /> <link rel="edit-media" href="<?php $this->the_media_url() ?>" /> - <content type="<?php echo $post->post_mime_type ?>" src="<?php the_guid(); ?>"/> + <content type="<?php echo $GLOBALS['post']->post_mime_type ?>" src="<?php the_guid(); ?>"/> <?php } else { ?> <link href="<?php permalink_single_rss() ?>" /> <link rel="edit" href="<?php $this->the_entry_url() ?>" /> @@ -932,8 +993,8 @@ EOD; <category scheme="<?php bloginfo_rss('home') ?>" term="<?php echo $category->cat_name?>" /> <summary type="html"><![CDATA[<?php the_excerpt_rss(); ?>]]></summary> <?php } - if ( strlen( $post->post_content ) ) : ?> - <content type="html"><?php echo get_the_content('', 0, '') ?></content> + if ( strlen( $GLOBALS['post']->post_content ) ) : ?> + <content type="html"><![CDATA[<?php echo get_the_content('', 0, '') ?>]]></content> <?php endif; ?> </entry> <?php @@ -1025,7 +1086,7 @@ EOD; break; case 'attachment': if ($use_querystring) { - $edit = get_bloginfo('url') . '/' . $this->script_name . "?action=/attachments&eid=$post_ID"; + $edit = get_bloginfo('url') . '/' . $this->script_name . "?action=/attachments&eid=$post_ID"; } else { $edit = get_bloginfo('url') . '/' . $this->script_name . "/attachments/$post_ID"; } @@ -1054,7 +1115,7 @@ EOD; function output($xml, $ctype = "application/atom+xml") { status_header('200'); - $xml = '<?xml version="1.0" encoding="' . get_option('blog_charset') . '"?>'."\n".$xml; + $xml = '<?xml version="1.0" encoding="' . strtolower(get_option('blog_charset')) . '"?>'."\n".$xml; header('Connection: close'); header('Content-Length: '. strlen($xml)); header('Content-Type: ' . $ctype); diff --git a/wp-admin/index.php b/wp-admin/index.php index 53c4ddf..0988ed7 100644 --- a/wp-admin/index.php +++ b/wp-admin/index.php @@ -15,6 +15,7 @@ function dashboard_init() { } add_action( 'admin_head', 'index_js' ); wp_enqueue_script('prototype'); +wp_enqueue_script('interface'); $title = __('Dashboard'); $parent_file = 'index.php'; diff --git a/wp-admin/page-new.php b/wp-admin/page-new.php index b581b38..7ed2cfa 100644 --- a/wp-admin/page-new.php +++ b/wp-admin/page-new.php @@ -4,6 +4,7 @@ $title = __('New Page'); $parent_file = 'post-new.php'; $editing = true; wp_enqueue_script('prototype'); +wp_enqueue_script('interface'); wp_enqueue_script('autosave'); require_once('admin-header.php'); ?> diff --git a/wp-admin/page.php b/wp-admin/page.php index 4cad302..c239809 100644 --- a/wp-admin/page.php +++ b/wp-admin/page.php @@ -53,6 +53,7 @@ case 'edit': if($post->post_status == 'draft') { wp_enqueue_script('prototype'); + wp_enqueue_script('interface'); wp_enqueue_script('autosave'); } require_once('admin-header.php'); diff --git a/wp-admin/post-new.php b/wp-admin/post-new.php index 9cbcdc3..fd8a046 100644 --- a/wp-admin/post-new.php +++ b/wp-admin/post-new.php @@ -4,6 +4,7 @@ $title = __('Create New Post'); $parent_file = 'post-new.php'; $editing = true; wp_enqueue_script('prototype'); +wp_enqueue_script('interface'); wp_enqueue_script('autosave'); require_once ('./admin-header.php'); diff --git a/wp-atom.php b/wp-atom.php index 11db365..4e8f200 100644 --- a/wp-atom.php +++ b/wp-atom.php @@ -5,47 +5,6 @@ if (empty($wp)) { wp('feed=atom'); } -header('Content-type: application/atom+xml; charset=' . get_option('blog_charset'), true); -$more = 1; +require (ABSPATH . WPINC . '/feed-atom.php'); ?> -<?php echo '<?xml version="1.0" encoding="'.get_option('blog_charset').'"?'.'>'; ?> -<feed - xmlns="http://www.w3.org/2005/Atom" - xmlns:thr="http://purl.org/syndication/thread/1.0" - xml:lang="<?php echo get_option('rss_language'); ?>" - xml:base="<?php bloginfo_rss('home') ?>/wp-atom.php" - <?php do_action('atom_ns'); ?> - > - <title type="text"><?php bloginfo_rss('name') ?></title> - <subtitle type="text"><?php bloginfo_rss("description") ?></subtitle> - - <updated><?php echo mysql2date('Y-m-d\TH:i:s\Z', get_lastpostmodified('GMT')); ?></updated> - <generator uri="http://wordpress.org/" version="<?php bloginfo_rss('version'); ?>">WordPress</generator> - - <link rel="alternate" type="text/html" href="<?php bloginfo_rss('home') ?>" /> - <id><?php bloginfo('atom_url'); ?></id> - <link rel="self" type="application/atom+xml" href="<?php bloginfo('atom_url'); ?>" /> - - <?php do_action('atom_head'); ?> - <?php while (have_posts()) : the_post(); ?> - <entry> - <author> - <name><?php the_author() ?></name> - <uri><?php the_author_url()?></uri> - </author> - <title type="<?php html_type_rss(); ?>"><![CDATA[<?php the_title_rss() ?>]]></title> - <link rel="alternate" type="text/html" href="<?php permalink_single_rss() ?>" /> - <id><?php the_guid(); ?></id> - <updated><?php echo get_post_time('Y-m-d\TH:i:s\Z', true); ?></updated> - <published><?php echo get_post_time('Y-m-d\TH:i:s\Z', true); ?></published> - <?php the_category_rss('atom') ?> - <summary type="<?php html_type_rss(); ?>"><![CDATA[<?php the_excerpt_rss(); ?>]]></summary> -<?php if ( !get_option('rss_use_excerpt') ) : ?> - <content type="<?php html_type_rss(); ?>" xml:base="<?php permalink_single_rss() ?>"><![CDATA[<?php the_content('', 0, '') ?>]]></content> -<?php endif; ?> -<?php rss_enclosure(); ?> -<?php do_action('atom_entry'); ?> - </entry> - <?php endwhile ; ?> -</feed> diff --git a/wp-commentsrss2.php b/wp-commentsrss2.php index 92858b6..fecfefb 100644 --- a/wp-commentsrss2.php +++ b/wp-commentsrss2.php @@ -5,85 +5,6 @@ if (empty($wp)) { wp('feed=rss2&withcomments=1'); } -header('Content-type: text/xml;charset=' . get_option('blog_charset'), true); +require (ABSPATH . WPINC . '/feed-rss2-comments.php'); -echo '<?xml version="1.0" encoding="'.get_option('blog_charset').'"?'.'>'; ?> -<!-- generator="wordpress/<?php echo $wp_version ?>" --> -<rss version="2.0" - xmlns:content="http://purl.org/rss/1.0/modules/content/"> -<channel> -<?php -$i = 0; -if (have_posts()) : - while (have_posts()) : the_post(); - if ($i < 1) { - $i++; -?> - <title><?php if (is_single() || is_page() ) { printf(__('Comments on: %s'), get_the_title_rss()); } else { printf(__('Comments for %s'), get_bloginfo_rss("name")); } ?></title> - <link><?php (is_single()) ? permalink_single_rss() : bloginfo_rss("url") ?></link> - <description><?php bloginfo_rss("description") ?></description> - <pubDate><?php echo gmdate('r'); ?></pubDate> - <generator>http://wordpress.org/?v=<?php echo $wp_version ?></generator> - -<?php - if (is_single() || is_page()) { - $comments = $wpdb->get_results("SELECT comment_ID, comment_author, comment_author_email, - comment_author_url, comment_date, comment_date_gmt, comment_content, comment_post_ID, - $wpdb->posts.ID, $wpdb->posts.post_password FROM $wpdb->comments - LEFT JOIN $wpdb->posts ON comment_post_id = id WHERE comment_post_ID = '" . get_the_ID() . "' - AND $wpdb->comments.comment_approved = '1' AND $wpdb->posts.post_status = 'publish' - AND post_date_gmt < '" . gmdate("Y-m-d H:i:59") . "' - ORDER BY comment_date_gmt ASC" ); - } else { // if no post id passed in, we'll just ue the last 10 comments. - $comments = $wpdb->get_results("SELECT comment_ID, comment_author, comment_author_email, - comment_author_url, comment_date, comment_date_gmt, comment_content, comment_post_ID, - $wpdb->posts.ID, $wpdb->posts.post_password FROM $wpdb->comments - LEFT JOIN $wpdb->posts ON comment_post_id = id WHERE $wpdb->posts.post_status = 'publish' - AND $wpdb->comments.comment_approved = '1' AND post_date_gmt < '" . gmdate("Y-m-d H:i:s") . "' - ORDER BY comment_date_gmt DESC LIMIT " . get_option('posts_per_rss') ); - } - // this line is WordPress' motor, do not delete it. - if ($comments) { - foreach ($comments as $comment) { - $GLOBALS['comment'] =& $comment; - // Some plugins may need to know the metadata - // associated with this comment's post: - get_post_custom($comment->comment_post_ID); -?> - <item> - <title><?php if ( ! (is_single() || is_page()) ) { - $title = get_the_title($comment->comment_post_ID); - $title = apply_filters('the_title', $title); - $title = apply_filters('the_title_rss', $title); - printf(__('Comment on %1$s by %2$s'), $title, get_comment_author_rss()); - } else { - printf(__('By: %s'), get_comment_author_rss()); - } ?></title> - <link><?php comment_link() ?></link> - <author><?php echo get_comment_author_rss() ?></author> - <pubDate><?php echo mysql2date('D, d M Y H:i:s +0000', get_comment_time('Y-m-d H:i:s', true), false); ?></pubDate> - <guid><?php comment_link() ?></guid> - <?php - if (!empty($comment->post_password) && $_COOKIE['wp-postpass'] != $comment->post_password) { - ?> - <description><?php _e('Protected Comments: Please enter your password to view comments.'); ?></description> - <content:encoded><![CDATA[<?php echo get_the_password_form() ?>]]></content:encoded> - <?php - } else { - ?> - <description><?php comment_text_rss() ?></description> - <content:encoded><![CDATA[<?php comment_text() ?>]]></content:encoded> - <?php - } // close check for password - do_action('commentrss2_item', $comment->comment_ID, $comment->comment_post_ID); - ?> - </item> -<?php - } - } - } -endwhile; endif; -?> -</channel> -</rss> diff --git a/wp-content/themes/classic/comments-popup.php b/wp-content/themes/classic/comments-popup.php index 8c0ba25..bded9b4 100644 --- a/wp-content/themes/classic/comments-popup.php +++ b/wp-content/themes/classic/comments-popup.php @@ -21,7 +21,7 @@ while( have_posts()) : the_post(); <h2 id="comments"><?php _e("Comments"); ?></h2> -<p><a href="<?php echo get_option('siteurl'); ?>/wp-commentsrss2.php?p=<?php echo $post->ID; ?>"><?php _e("<abbr title=\"Really Simple Syndication\">RSS</abbr> feed for comments on this post."); ?></a></p> +<p><a href="<?php echo get_post_comments_feed_link($post->ID); ?>"><?php _e("<abbr title=\"Really Simple Syndication\">RSS</abbr> feed for comments on this post."); ?></a></p> <?php if ('open' == $post->ping_status) { ?> <p><?php _e("The <abbr title=\"Universal Resource Locator\">URL</abbr> to TrackBack this entry is:"); ?> <em><?php trackback_url() ?></em></p> diff --git a/wp-content/themes/default/comments-popup.php b/wp-content/themes/default/comments-popup.php index 04dba33..9ad28b5 100644 --- a/wp-content/themes/default/comments-popup.php +++ b/wp-content/themes/default/comments-popup.php @@ -21,7 +21,7 @@ while ( have_posts()) : the_post(); <h2 id="comments">Comments</h2> -<p><a href="<?php echo get_option('siteurl'); ?>/wp-commentsrss2.php?p=<?php echo $post->ID; ?>"><abbr title="Really Simple Syndication">RSS</abbr> feed for comments on this post.</a></p> +<p><a href="<?php echo get_post_comments_feed_link($post->ID); ?>"><abbr title="Really Simple Syndication">RSS</abbr> feed for comments on this post.</a></p> <?php if ('open' == $post->ping_status) { ?> <p>The <abbr title="Universal Resource Locator">URL</abbr> to TrackBack this entry is: <em><?php trackback_url() ?></em></p> diff --git a/wp-content/themes/default/comments.php b/wp-content/themes/default/comments.php index 1108de8..0ff43b4 100644 --- a/wp-content/themes/default/comments.php +++ b/wp-content/themes/default/comments.php @@ -14,7 +14,7 @@ } /* This variable is for alternating comment background */ - $oddcomment = 'alt'; + $oddcomment = 'class="alt" '; ?> <!-- You can start editing here. --> @@ -26,7 +26,7 @@ <?php foreach ($comments as $comment) : ?> - <li class="<?php echo $oddcomment; ?>" id="comment-<?php comment_ID() ?>"> + <li <?php echo $oddcomment; ?>id="comment-<?php comment_ID() ?>"> <cite><?php comment_author_link() ?></cite> Says: <?php if ($comment->comment_approved == '0') : ?> <em>Your comment is awaiting moderation.</em> @@ -39,9 +39,9 @@ </li> - <?php /* Changes every other comment to a different class */ - if ('alt' == $oddcomment) $oddcomment = ''; - else $oddcomment = 'alt'; + <?php + /* Changes every other comment to a different class */ + $oddcomment = ( empty( $oddcomment ) ) ? 'class="alt" ' : ''; ?> <?php endforeach; /* end for each comment */ ?> diff --git a/wp-includes/feed-atom-comments.php b/wp-includes/feed-atom-comments.php new file mode 100644 index 0000000..460b8e5 --- /dev/null +++ b/wp-includes/feed-atom-comments.php @@ -0,0 +1,91 @@ +<?php +header('Content-Type: application/atom+xml; charset=' . get_option('blog_charset'), true); +echo '<?xml version="1.0" encoding="' . get_option('blog_charset') . '" ?' . '>'; +?> +<feed + xmlns="http://www.w3.org/2005/Atom" + xml:lang="<?php echo get_option('rss_language'); ?>" + <?php do_action('atom_ns'); ?> +> + <title type="text"><?php + if (is_single() || is_page()) { + printf(__('Comments on: %s'), get_the_title_rss()); + } else { + printf(__('Comments for %s'), get_bloginfo_rss('name')); + } + ?></title> + <subtitle type="text"><?php bloginfo_rss('description'); ?></subtitle> + + <updated><?php echo mysql2date('Y-m-d\TH:i:s\Z', get_lastcommentmodified('GMT')); ?></updated> + <generator uri="http://wordpress.org/" version="<?php bloginfo('version'); ?>">WordPress</generator> + + <link rel="alternate" type="<?php bloginfo_rss('html_type'); ?>" content="<?php bloginfo_rss('home'); ?>" /> + <link rel="self" type="application/atom+xml" href="<?php bloginfo_rss('comments_atom_url'); ?>" /> + <id><?php bloginfo_rss('comments_atom_url'); ?></id> + +<?php +$i = 0; +if (have_posts()) : + while (have_posts()) : the_post(); + if ($i < 1) { + $i++; + } + + if (is_single() || is_page()) { + $comments = $wpdb->get_results("SELECT comment_ID, comment_author, comment_author_email, + comment_author_url, comment_date, comment_date_gmt, comment_content, comment_post_ID, + $wpdb->posts.ID, $wpdb->posts.post_password FROM $wpdb->comments + LEFT JOIN $wpdb->posts ON comment_post_id = id WHERE comment_post_ID = '" . get_the_ID() . "' + AND $wpdb->comments.comment_approved = '1' AND $wpdb->posts.post_status = 'publish' + AND post_date_gmt < '" . gmdate("Y-m-d H:i:59") . "' + ORDER BY comment_date_gmt ASC" ); + } else { // if no post id passed in, we'll just use the last posts_per_rss comments. + $comments = $wpdb->get_results("SELECT comment_ID, comment_author, comment_author_email, + comment_author_url, comment_date, comment_date_gmt, comment_content, comment_post_ID, + $wpdb->posts.ID, $wpdb->posts.post_password FROM $wpdb->comments + LEFT JOIN $wpdb->posts ON comment_post_id = id WHERE $wpdb->posts.post_status = 'publish' + AND $wpdb->comments.comment_approved = '1' AND post_date_gmt < '" . gmdate("Y-m-d H:i:s") . "' + ORDER BY comment_date_gmt DESC LIMIT " . get_option('posts_per_rss') ); + } + + if ($comments) { + foreach ($comments as $comment) { + $GLOBALS['comment'] =& $comment; + get_post_custom($comment->comment_post_ID); +?> + <entry> + <title><?php + if (!(is_single() || is_page())) { + $title = get_the_title($comment->comment_post_ID); + $title = apply_filters('the_title', $title); + $title = apply_filters('the_title_rss', $title); + printf(__('Comment on %1$s by %2$s'), $title, get_comment_author_rss()); + } else { + printf(__('By: %s'), get_comment_author_rss()); + } + ?></title> + <link rel="alternate" href="<?php comment_link(); ?>" type="<?php bloginfo_rss('content_type'); ?>" /> + + <author> + <name><?php comment_author_rss(); ?></name> + <?php if (get_comment_author_url()) echo '<uri>' . get_comment_author_url() . '</uri>'; ?> + </author> + + <id><?php comment_link(); ?></id> + <updated><?php echo mysql2date('D, d M Y H:i:s +0000', get_comment_time('Y-m-d H:i:s', true), false); ?></updated> + <published><?php echo mysql2date('D, d M Y H:i:s +0000', get_comment_time('Y-m-d H:i:s', true), false); ?></published> + + <?php if (!empty($comment->post_password) && $_COOKIE['wp-postpass'] != $comment->post_password) { ?> + <content type="html" xml:base="<?php comment_link(); ?>"><![CDATA[<?php echo get_the_password_form(); ?>]]></content> + <?php } else { ?> + <content type="html" xml:base="<?php comment_link(); ?>"><![CDATA[<?php comment_text(); ?>]]></content> + <?php } ?> + </entry> +<?php + } + } + + endwhile; +endif; +?> +</feed>
\ No newline at end of file diff --git a/wp-includes/feed-atom.php b/wp-includes/feed-atom.php new file mode 100644 index 0000000..17fce72 --- /dev/null +++ b/wp-includes/feed-atom.php @@ -0,0 +1,45 @@ +<?php +header('Content-type: application/atom+xml; charset=' . get_option('blog_charset'), true); +$more = 1; + +?> +<?php echo '<?xml version="1.0" encoding="'.get_option('blog_charset').'"?'.'>'; ?> +<feed + xmlns="http://www.w3.org/2005/Atom" + xmlns:thr="http://purl.org/syndication/thread/1.0" + xml:lang="<?php echo get_option('rss_language'); ?>" + xml:base="<?php bloginfo_rss('home') ?>/wp-atom.php" + <?php do_action('atom_ns'); ?> + > + <title type="text"><?php bloginfo_rss('name') ?></title> + <subtitle type="text"><?php bloginfo_rss("description") ?></subtitle> + + <updated><?php echo mysql2date('Y-m-d\TH:i:s\Z', get_lastpostmodified('GMT')); ?></updated> + <generator uri="http://wordpress.org/" version="<?php bloginfo_rss('version'); ?>">WordPress</generator> + + <link rel="alternate" type="text/html" href="<?php bloginfo_rss('home') ?>" /> + <id><?php bloginfo('atom_url'); ?></id> + <link rel="self" type="application/atom+xml" href="<?php bloginfo('atom_url'); ?>" /> + + <?php do_action('atom_head'); ?> + <?php while (have_posts()) : the_post(); ?> + <entry> + <author> + <name><?php the_author() ?></name> + <uri><?php the_author_url()?></uri> + </author> + <title type="<?php html_type_rss(); ?>"><![CDATA[<?php the_title_rss() ?>]]></title> + <link rel="alternate" type="text/html" href="<?php permalink_single_rss() ?>" /> + <id><?php the_guid(); ?></id> + <updated><?php echo get_post_time('Y-m-d\TH:i:s\Z', true); ?></updated> + <published><?php echo get_post_time('Y-m-d\TH:i:s\Z', true); ?></published> + <?php the_category_rss('atom') ?> + <summary type="<?php html_type_rss(); ?>"><![CDATA[<?php the_excerpt_rss(); ?>]]></summary> +<?php if ( !get_option('rss_use_excerpt') ) : ?> + <content type="<?php html_type_rss(); ?>" xml:base="<?php permalink_single_rss() ?>"><![CDATA[<?php the_content('', 0, '') ?>]]></content> +<?php endif; ?> +<?php rss_enclosure(); ?> +<?php do_action('atom_entry'); ?> + </entry> + <?php endwhile ; ?> +</feed> diff --git a/wp-includes/feed-rdf.php b/wp-includes/feed-rdf.php new file mode 100644 index 0000000..80b1d6d --- /dev/null +++ b/wp-includes/feed-rdf.php @@ -0,0 +1,51 @@ +<?php +header('Content-type: application/rdf+xml; charset=' . get_option('blog_charset'), true); +$more = 1; + +?> +<?php echo '<?xml version="1.0" encoding="'.get_option('blog_charset').'"?'.'>'; ?> +<!-- generator="wordpress/<?php echo $wp_version ?>" --> +<rdf:RDF + xmlns="http://purl.org/rss/1.0/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" + xmlns:admin="http://webns.net/mvcb/" + xmlns:content="http://purl.org/rss/1.0/modules/content/" + <?php do_action('rdf_ns'); ?> +> +<channel rdf:about="<?php bloginfo_rss("url") ?>"> + <title><?php bloginfo_rss('name') ?></title> + <link><?php bloginfo_rss('url') ?></link> + <description><?php bloginfo_rss('description') ?></description> + <dc:date><?php echo mysql2date('Y-m-d\TH:i:s\Z', get_lastpostmodified('GMT'), false); ?></dc:date> + <admin:generatorAgent rdf:resource="http://wordpress.org/?v=<?php echo $wp_version ?>"/> + <sy:updatePeriod>hourly</sy:updatePeriod> + <sy:updateFrequency>1</sy:updateFrequency> + <sy:updateBase>2000-01-01T12:00+00:00</sy:updateBase> + <?php do_action('rdf_header'); ?> + <items> + <rdf:Seq> + <?php while (have_posts()): the_post(); ?> + <rdf:li rdf:resource="<?php permalink_single_rss() ?>"/> + <?php endwhile; ?> + </rdf:Seq> + </items> +</channel> +<?php rewind_posts(); while (have_posts()): the_post(); ?> +<item rdf:about="<?php permalink_single_rss() ?>"> + <title><?php the_title_rss() ?></title> + <link><?php permalink_single_rss() ?></link> + <dc:date><?php echo mysql2date('Y-m-d\TH:i:s\Z', $post->post_date_gmt, false); ?></dc:date> + <dc:creator><?php the_author() ?></dc:creator> + <?php the_category_rss('rdf') ?> +<?php if (get_option('rss_use_excerpt')) : ?> + <description><?php the_excerpt_rss() ?></description> +<?php else : ?> + <description><?php the_content_rss('', 0, '', get_option('rss_excerpt_length'), 2) ?></description> + <content:encoded><![CDATA[<?php the_content('', 0, '') ?>]]></content:encoded> +<?php endif; ?> + <?php do_action('rdf_item'); ?> +</item> +<?php endwhile; ?> +</rdf:RDF> diff --git a/wp-includes/feed-rss.php b/wp-includes/feed-rss.php new file mode 100644 index 0000000..97e0610 --- /dev/null +++ b/wp-includes/feed-rss.php @@ -0,0 +1,31 @@ +<?php +header('Content-type: text/xml; charset=' . get_option('blog_charset'), true); +$more = 1; + +?> +<?php echo '<?xml version="1.0" encoding="'.get_option('blog_charset').'"?'.'>'; ?> +<!-- generator="wordpress/<?php echo $wp_version ?>" --> +<rss version="0.92"> +<channel> + <title><?php bloginfo_rss('name') ?></title> + <link><?php bloginfo_rss('url') ?></link> + <description><?php bloginfo_rss('description') ?></description> + <lastBuildDate><?php echo mysql2date('D, d M Y H:i:s +0000', get_lastpostmodified('GMT'), false); ?></lastBuildDate> + <docs>http://backend.userland.com/rss092</docs> + <language><?php echo get_option('rss_language'); ?></language> + <?php do_action('rss_head'); ?> + +<?php while (have_posts()) : the_post(); ?> + <item> + <title><?php the_title_rss() ?></title> +<?php if (get_option('rss_use_excerpt')) { ?> + <description><![CDATA[<?php the_excerpt_rss() ?>]]></description> +<?php } else { // use content ?> + <description><?php the_content_rss('', 0, '', get_option('rss_excerpt_length')) ?></description> +<?php } ?> + <link><?php permalink_single_rss() ?></link> + <?php do_action('rss_item'); ?> + </item> +<?php endwhile; ?> +</channel> +</rss> diff --git a/wp-includes/feed-rss2-comments.php b/wp-includes/feed-rss2-comments.php new file mode 100644 index 0000000..4e49898 --- /dev/null +++ b/wp-includes/feed-rss2-comments.php @@ -0,0 +1,83 @@ +<?php +header('Content-type: text/xml;charset=' . get_option('blog_charset'), true); + +echo '<?xml version="1.0" encoding="'.get_option('blog_charset').'"?'.'>'; +?> +<!-- generator="wordpress/<?php echo $wp_version ?>" --> +<rss version="2.0" + xmlns:content="http://purl.org/rss/1.0/modules/content/"> +<channel> +<?php +$i = 0; +if (have_posts()) : + while (have_posts()) : the_post(); + if ($i < 1) { + $i++; +?> + <title><?php if (is_single() || is_page() ) { printf(__('Comments on: %s'), get_the_title_rss()); } else { printf(__('Comments for %s'), get_bloginfo_rss("name")); } ?></title> + <link><?php (is_single()) ? permalink_single_rss() : bloginfo_rss("url") ?></link> + <description><?php bloginfo_rss("description") ?></description> + <pubDate><?php echo gmdate('r'); ?></pubDate> + <generator>http://wordpress.org/?v=<?php echo $wp_version ?></generator> + +<?php + if (is_single() || is_page()) { + $comments = $wpdb->get_results("SELECT comment_ID, comment_author, comment_author_email, + comment_author_url, comment_date, comment_date_gmt, comment_content, comment_post_ID, + $wpdb->posts.ID, $wpdb->posts.post_password FROM $wpdb->comments + LEFT JOIN $wpdb->posts ON comment_post_id = id WHERE comment_post_ID = '" . get_the_ID() . "' + AND $wpdb->comments.comment_approved = '1' AND $wpdb->posts.post_status = 'publish' + AND post_date_gmt < '" . gmdate("Y-m-d H:i:59") . "' + ORDER BY comment_date_gmt ASC" ); + } else { // if no post id passed in, we'll just ue the last 10 comments. + $comments = $wpdb->get_results("SELECT comment_ID, comment_author, comment_author_email, + comment_author_url, comment_date, comment_date_gmt, comment_content, comment_post_ID, + $wpdb->posts.ID, $wpdb->posts.post_password FROM $wpdb->comments + LEFT JOIN $wpdb->posts ON comment_post_id = id WHERE $wpdb->posts.post_status = 'publish' + AND $wpdb->comments.comment_approved = '1' AND post_date_gmt < '" . gmdate("Y-m-d H:i:s") . "' + ORDER BY comment_date_gmt DESC LIMIT " . get_option('posts_per_rss') ); + } + // this line is WordPress' motor, do not delete it. + if ($comments) { + foreach ($comments as $comment) { + $GLOBALS['comment'] =& $comment; + // Some plugins may need to know the metadata + // associated with this comment's post: + get_post_custom($comment->comment_post_ID); +?> + <item> + <title><?php if ( ! (is_single() || is_page()) ) { + $title = get_the_title($comment->comment_post_ID); + $title = apply_filters('the_title', $title); + $title = apply_filters('the_title_rss', $title); + printf(__('Comment on %1$s by %2$s'), $title, get_comment_author_rss()); + } else { + printf(__('By: %s'), get_comment_author_rss()); + } ?></title> + <link><?php comment_link() ?></link> + <author><?php echo get_comment_author_rss() ?></author> + <pubDate><?php echo mysql2date('D, d M Y H:i:s +0000', get_comment_time('Y-m-d H:i:s', true), false); ?></pubDate> + <guid><?php comment_link() ?></guid> + <?php + if (!empty($comment->post_password) && $_COOKIE['wp-postpass'] != $comment->post_password) { + ?> + <description><?php _e('Protected Comments: Please enter your password to view comments.'); ?></description> + <content:encoded><![CDATA[<?php echo get_the_password_form() ?>]]></content:encoded> + <?php + } else { + ?> + <description><?php comment_text_rss() ?></description> + <content:encoded><![CDATA[<?php comment_text() ?>]]></content:encoded> + <?php + } // close check for password + do_action('commentrss2_item', $comment->comment_ID, $comment->comment_post_ID); + ?> + </item> +<?php + } + } + } +endwhile; endif; +?> +</channel> +</rss> diff --git a/wp-includes/feed-rss2.php b/wp-includes/feed-rss2.php new file mode 100644 index 0000000..03711df --- /dev/null +++ b/wp-includes/feed-rss2.php @@ -0,0 +1,50 @@ +<?php +header('Content-type: text/xml; charset=' . get_option('blog_charset'), true); +$more = 1; + +?> +<?php echo '<?xml version="1.0" encoding="'.get_option('blog_charset').'"?'.'>'; ?> + +<!-- generator="wordpress/<?php bloginfo_rss('version') ?>" --> +<rss version="2.0" + xmlns:content="http://purl.org/rss/1.0/modules/content/" + xmlns:wfw="http://wellformedweb.org/CommentAPI/" + xmlns:dc="http://purl.org/dc/elements/1.1/" + <?php do_action('rss2_ns'); ?> +> + +<channel> + <title><?php bloginfo_rss('name'); ?></title> + <link><?php bloginfo_rss('url') ?></link> + <description><?php bloginfo_rss("description") ?></description> + <pubDate><?php echo mysql2date('D, d M Y H:i:s +0000', get_lastpostmodified('GMT'), false); ?></pubDate> + <generator>http://wordpress.org/?v=<?php bloginfo_rss('version'); ?></generator> + <language><?php echo get_option('rss_language'); ?></language> + <?php do_action('rss2_head'); ?> + <?php while( have_posts()) : the_post(); ?> + <item> + <title><?php the_title_rss() ?></title> + <link><?php permalink_single_rss() ?></link> + <comments><?php comments_link(); ?></comments> + <pubDate><?php echo mysql2date('D, d M Y H:i:s +0000', get_post_time('Y-m-d H:i:s', true), false); ?></pubDate> + <dc:creator><?php the_author() ?></dc:creator> + <?php the_category_rss() ?> + + <guid isPermaLink="false"><?php the_guid(); ?></guid> +<?php if (get_option('rss_use_excerpt')) : ?> + <description><![CDATA[<?php the_excerpt_rss() ?>]]></description> +<?php else : ?> + <description><![CDATA[<?php the_excerpt_rss() ?>]]></description> + <?php if ( strlen( $post->post_content ) > 0 ) : ?> + <content:encoded><![CDATA[<?php the_content() ?>]]></content:encoded> + <?php else : ?> + <content:encoded><![CDATA[<?php the_excerpt_rss() ?>]]></content:encoded> + <?php endif; ?> +<?php endif; ?> + <wfw:commentRss><?php echo comments_rss(); ?></wfw:commentRss> +<?php rss_enclosure(); ?> + <?php do_action('rss2_item'); ?> + </item> + <?php endwhile; ?> +</channel> +</rss> diff --git a/wp-includes/feed.php b/wp-includes/feed.php index 04f54d9..abee911 100644 --- a/wp-includes/feed.php +++ b/wp-includes/feed.php @@ -89,21 +89,14 @@ function comment_text_rss() { } -function comments_rss_link($link_text = 'Comments RSS', $commentsrssfilename = '') { - $url = comments_rss($commentsrssfilename); +function comments_rss_link($link_text = 'Comments RSS', $commentsrssfilename = 'nolongerused') { + $url = get_post_comments_feed_link();; echo "<a href='$url'>$link_text</a>"; } -function comments_rss($commentsrssfilename = '') { - global $id; - - if ( '' != get_option('permalink_structure') ) - $url = trailingslashit( get_permalink() ) . user_trailingslashit('feed'); - else - $url = get_option('home') . "/$commentsrssfilename?feed=rss2&p=$id"; - - return apply_filters('post_comments_feed_link', $url); +function comments_rss($commentsrssfilename = 'nolongerused') { + return get_post_comments_feed_link(); } diff --git a/wp-includes/functions.php b/wp-includes/functions.php index aaaefc1..ca65479 100644 --- a/wp-includes/functions.php +++ b/wp-includes/functions.php @@ -318,7 +318,7 @@ function update_option($option_name, $newvalue) { // If the new and old values are the same, no need to update. $oldvalue = get_option($option_name); - if ( $newvalue == $oldvalue ) { + if ( $newvalue === $oldvalue ) { return false; } @@ -961,37 +961,48 @@ function do_feed() { // Remove the pad, if present. $feed = preg_replace('/^_+/', '', $feed); - if ($feed == '' || $feed == 'feed') + if ( $feed == '' || $feed == 'feed' ) $feed = 'rss2'; - + $for_comments = false; - if ( 1 != get_query_var('withoutcomments') && ( is_singular() || get_query_var('withcomments') == 1 || $feed == 'comments-rss2' ) ) { - $feed = 'rss2'; - $for_comments = true; - } + + if ( is_singular() || get_query_var('withcomments') == 1 ) + $for_comments = true; + + if ( false !== strpos($feed, 'comments-') ) { + $for_comments = true; + $feed = str_replace('comments-', '', $feed); + } + + if ( get_query_var('withoutcomments') == 1 ) + $for_comments = false; $hook = 'do_feed_' . $feed; do_action($hook, $for_comments); } function do_feed_rdf() { - load_template(ABSPATH . 'wp-rdf.php'); + load_template(ABSPATH . WPINC . '/feed-rdf.php'); } function do_feed_rss() { - load_template(ABSPATH . 'wp-rss.php'); + load_template(ABSPATH . WPINC . '/feed-rss.php'); } function do_feed_rss2($for_comments) { if ( $for_comments ) { - load_template(ABSPATH . 'wp-commentsrss2.php'); + load_template(ABSPATH . WPINC . '/feed-rss2-comments.php'); } else { - load_template(ABSPATH . 'wp-rss2.php'); + load_template(ABSPATH . WPINC . '/feed-rss2.php'); } } -function do_feed_atom() { - load_template(ABSPATH . 'wp-atom.php'); +function do_feed_atom($for_comments) { + if ($for_comments) { + load_template(ABSPATH . WPINC . '/feed-atom-comments.php'); + } else { + load_template(ABSPATH . WPINC . '/feed-atom.php'); + } } function do_robots() { diff --git a/wp-includes/general-template.php b/wp-includes/general-template.php index 4a5d596..113c173 100644 --- a/wp-includes/general-template.php +++ b/wp-includes/general-template.php @@ -99,6 +99,8 @@ function get_bloginfo($show='') { case 'atom_url': $output = get_feed_link('atom'); break; + case 'comments_atom_url': + $output = get_feed_link('comments_atom'); case 'comments_rss2_url': $output = get_feed_link('comments_rss2'); break; @@ -488,7 +490,7 @@ function get_calendar($initial = true) { ORDER BY post_date ASC LIMIT 1"); - echo '<table id="wp-calendar"> + echo '<table id="wp-calendar" summary="' . __('Calendar') . '"> <caption>' . $wp_locale->get_month($thismonth) . ' ' . date('Y', $unixmonth) . '</caption> <thead> <tr>'; diff --git a/wp-includes/gettext.php b/wp-includes/gettext.php index a35b0b9..dd79dcd 100644 --- a/wp-includes/gettext.php +++ b/wp-includes/gettext.php @@ -108,10 +108,12 @@ class gettext_reader { $MAGIC1 = (int) - 1794895138; // $MAGIC2 = (int)0xde120495; //bug $MAGIC2 = (int) - 569244523; + // 64-bit fix + $MAGIC3 = (int) 2500072158; $this->STREAM = $Reader; $magic = $this->readint(); - if ($magic == ($MAGIC1 & 0xFFFFFFFF)) { // to make sure it works for 64-bit platforms + if ($magic == ($MAGIC1 & 0xFFFFFFFF) || $magic == ($MAGIC3 & 0xFFFFFFFF)) { // to make sure it works for 64-bit platforms $this->BYTEORDER = 0; } elseif ($magic == ($MAGIC2 & 0xFFFFFFFF)) { $this->BYTEORDER = 1; diff --git a/wp-includes/js/jquery/jquery.js b/wp-includes/js/jquery/jquery.js index 94ade5a..31650a1 100644 --- a/wp-includes/js/jquery/jquery.js +++ b/wp-includes/js/jquery/jquery.js @@ -1 +1,2 @@ -eval(function(p,a,c,k,e,d){e=function(c){return(c<a?"":e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('k(1v 1t.6=="Q"){1t.Q=1t.Q;u 6=l(a,c){k(1t==7)q 1p 6(a,c);a=a||12;k(6.1k(a))q 1p 6(12)[6.C.28?"28":"2E"](a);k(1v a=="22"){u m=/^[^<]*(<(.|\\n)+>)[^>]*$/.2B(a);k(m)a=6.3W([m[1]]);H q 1p 6(c).2o(a)}q 7.4M(a.1g==2A&&a||(a.3e||a.G&&a!=1t&&!a.1V&&a[0]!=Q&&a[0].1V)&&6.3H(a)||[a])};k(1v $!="Q")6.2O$=$;u $=6;6.C=6.8o={3e:"1.1.1",8p:l(){q 7.G},G:0,2a:l(1R){q 1R==Q?6.3H(7):7[1R]},2q:l(a){u J=6(7);J.6j=7;q J.4M(a)},4M:l(a){7.G=0;[].1h.14(7,a);q 7},I:l(C,1y){q 6.I(7,C,1y)},2b:l(19){u 4I=-1;7.I(l(i){k(7==19)4I=i});q 4I},1E:l(20,N,v){u 19=20;k(20.1g==3p)k(N==Q)q 7.G&&6[v||"1E"](7[0],20)||Q;H{19={};19[20]=N}q 7.I(l(2b){O(u F 1B 19)6.1E(v?7.1q:7,F,6.F(7,19[F],v,2b,F))})},1f:l(20,N){q 7.1E(20,N,"2V")},2L:l(e){k(1v e=="22")q 7.3n().3t(12.8r(e));u t="";6.I(e||7,l(){6.I(7.38,l(){k(7.1V!=8)t+=7.1V!=1?7.60:6.C.2L([7])})});q t},2D:l(){u a=6.3W(1x);q 7.I(l(){u b=a[0].3V(T);7.V.2T(b,7);1Z(b.17)b=b.17;b.4i(7)})},3t:l(){q 7.35(1x,T,1,l(a){7.4i(a)})},5n:l(){q 7.35(1x,T,-1,l(a){7.2T(a,7.17)})},5h:l(){q 7.35(1x,Y,1,l(a){7.V.2T(a,7)})},5i:l(){q 7.35(1x,Y,-1,l(a){7.V.2T(a,7.2f)})},4E:l(){q 7.6j||6([])},2o:l(t){q 7.2q(6.2X(7,l(a){q 6.2o(t,a)}))},4w:l(4C){q 7.2q(6.2X(7,l(a){q a.3V(4C!=Q?4C:T)}))},1w:l(t){q 7.2q(6.1k(t)&&6.2k(7,l(2G,2b){q t.14(2G,[2b])})||6.3v(t,7))},2c:l(t){q 7.2q(t.1g==3p&&6.3v(t,7,T)||6.2k(7,l(a){k(t.1g==2A||t.3e)q 6.3g(t,a)<0;H q a!=t}))},1J:l(t){q 7.2q(6.2i(7.2a(),t.1g==3p?6(t).2a():t.G!=Q&&!t.1u?t:[t]))},46:l(1n){q 1n?6.1w(1n,7).r.G>0:Y},18:l(18){q 18==Q?(7.G?7[0].N:1c):7.1E("N",18)},4Q:l(18){q 18==Q?(7.G?7[0].2H:1c):7.3n().3t(18)},35:l(1y,1N,3F,C){u 4w=7.G>1;u a=6.3W(1y);k(3F<0)a.8s();q 7.I(l(){u 19=7;k(1N&&6.1u(7,"1N")&&6.1u(a[0],"3U"))19=7.5E("1T")[0]||7.4i(12.6e("1T"));6.I(a,l(){C.14(19,[4w?7.3V(T):7])})})}};6.1A=6.C.1A=l(){u 1P=1x[0],a=1;k(1x.G==1){1P=7;a=0}u F;1Z(F=1x[a++])O(u i 1B F)1P[i]=F[i];q 1P};6.1A({8v:l(){k(6.2O$)$=6.2O$;q 6},1k:l(C){q!!C&&1v C!="22"&&1v C[0]=="Q"&&/l/i.1s(C+"")},1u:l(B,W){q B.1u&&B.1u.3u()==W.3u()},I:l(19,C,1y){k(19.G==Q)O(u i 1B 19)C.14(19[i],1y||[i,19[i]]);H O(u i=0,6l=19.G;i<6l;i++)k(C.14(19[i],1y||[i,19[i]])===Y)4q;q 19},F:l(B,N,v,2b,F){k(6.1k(N))q N.3s(B,[2b]);u 6m=/z-?2b|7C-?7D|1b|64|8x-?26/i;k(N.1g==3N&&v=="2V"&&!6m.1s(F))q N+"49";q N},16:{1J:l(B,c){6.I(c.3o(/\\s+/),l(i,M){k(!6.16.2P(B.16,M))B.16+=(B.16?" ":"")+M})},2g:l(B,c){B.16=c?6.2k(B.16.3o(/\\s+/),l(M){q!6.16.2P(c,M)}).55(" "):""},2P:l(t,c){t=t.16||t;q t&&1p 4V("(^|\\\\s)"+c+"(\\\\s|$)").1s(t)}},44:l(e,o,f){O(u i 1B o){e.1q["1H"+i]=e.1q[i];e.1q[i]=o[i]}f.14(e,[]);O(u i 1B o)e.1q[i]=e.1q["1H"+i]},1f:l(e,p){k(p=="26"||p=="40"){u 1H={},41,3f,d=["7x","8z","8A","8B"];6.I(d,l(){1H["8C"+7]=0;1H["8E"+7+"8F"]=0});6.44(e,1H,l(){k(6.1f(e,"1e")!="1Y"){41=e.6E;3f=e.6v}H{e=6(e.3V(T)).2o(":4h").5j("2S").4E().1f({4g:"1C",3Z:"6q",1e:"2t",7v:"0",6r:"0"}).5f(e.V)[0];u 3c=6.1f(e.V,"3Z");k(3c==""||3c=="43")e.V.1q.3Z="6s";41=e.6t;3f=e.6u;k(3c==""||3c=="43")e.V.1q.3Z="43";e.V.39(e)}});q p=="26"?41:3f}q 6.2V(e,p)},2V:l(B,F,6k){u J;k(F=="1b"&&6.U.1m)q 6.1E(B.1q,"1b");k(F=="4L"||F=="2u")F=6.U.1m?"3l":"2u";k(!6k&&B.1q[F])J=B.1q[F];H k(12.3X&&12.3X.45){k(F=="2u"||F=="3l")F="4L";F=F.1U(/([A-Z])/g,"-$1").4P();u M=12.3X.45(B,1c);k(M)J=M.53(F);H k(F=="1e")J="1Y";H 6.44(B,{1e:"2t"},l(){u c=12.3X.45(7,"");J=c&&c.53(F)||""})}H k(B.4Z){u 54=F.1U(/\\-(\\w)/g,l(m,c){q c.3u()});J=B.4Z[F]||B.4Z[54]}q J},3W:l(a){u r=[];6.I(a,l(i,1L){k(!1L)q;k(1L.1g==3N)1L=1L.8m();k(1v 1L=="22"){u s=6.2Z(1L),1W=12.6e("1W"),2e=[];u 2D=!s.15("<1l")&&[1,"<3T>","</3T>"]||(!s.15("<6y")||!s.15("<1T")||!s.15("<6A"))&&[1,"<1N>","</1N>"]||!s.15("<3U")&&[2,"<1N><1T>","</1T></1N>"]||(!s.15("<6B")||!s.15("<6D"))&&[3,"<1N><1T><3U>","</3U></1T></1N>"]||[0,"",""];1W.2H=2D[1]+s+2D[2];1Z(2D[0]--)1W=1W.17;k(6.U.1m){k(!s.15("<1N")&&s.15("<1T")<0)2e=1W.17&&1W.17.38;H k(2D[1]=="<1N>"&&s.15("<1T")<0)2e=1W.38;O(u n=2e.G-1;n>=0;--n)k(6.1u(2e[n],"1T")&&!2e[n].38.G)2e[n].V.39(2e[n])}1L=1W.38}k(1L.G===0)q;k(1L[0]==Q)r.1h(1L);H r=6.2i(r,1L)});q r},1E:l(B,W,N){u 2m={"O":"6G","6H":"16","4L":6.U.1m?"3l":"2u",2u:6.U.1m?"3l":"2u",2H:"2H",16:"16",N:"N",2R:"2R",2S:"2S",6K:"6L",2Q:"2Q"};k(W=="1b"&&6.U.1m&&N!=Q){B.64=1;q B.1w=B.1w.1U(/4K\\([^\\)]*\\)/6M,"")+(N==1?"":"4K(1b="+N*57+")")}H k(W=="1b"&&6.U.1m)q B.1w?4f(B.1w.6N(/4K\\(1b=(.*)\\)/)[1])/57:1;k(W=="1b"&&6.U.36&&N==1)N=0.7X;k(2m[W]){k(N!=Q)B[2m[W]]=N;q B[2m[W]]}H k(N==Q&&6.U.1m&&6.1u(B,"5S")&&(W=="6Q"||W=="7V"))q B.6S(W).60;H k(B.6T){k(N!=Q)B.7R(W,N);q B.3D(W)}H{W=W.1U(/-([a-z])/6W,l(z,b){q b.3u()});k(N!=Q)B[W]=N;q B[W]}},2Z:l(t){q t.1U(/^\\s+|\\s+$/g,"")},3H:l(a){u r=[];k(a.1g!=2A)O(u i=0,2w=a.G;i<2w;i++)r.1h(a[i]);H r=a.3J(0);q r},3g:l(b,a){O(u i=0,2w=a.G;i<2w;i++)k(a[i]==b)q i;q-1},2i:l(2v,3P){u r=[].3J.3s(2v,0);O(u i=0,63=3P.G;i<63;i++)k(6.3g(3P[i],r)==-1)2v.1h(3P[i]);q 2v},2k:l(1Q,C,48){k(1v C=="22")C=1p 4D("a","i","q "+C);u 1d=[];O(u i=0,2G=1Q.G;i<2G;i++)k(!48&&C(1Q[i],i)||48&&!C(1Q[i],i))1d.1h(1Q[i]);q 1d},2X:l(1Q,C){k(1v C=="22")C=1p 4D("a","q "+C);u 1d=[],r=[];O(u i=0,2G=1Q.G;i<2G;i++){u 18=C(1Q[i],i);k(18!==1c&&18!=Q){k(18.1g!=2A)18=[18];1d=1d.70(18)}}u r=1d.G?[1d[0]]:[];5d:O(u i=1,5N=1d.G;i<5N;i++){O(u j=0;j<i;j++)k(1d[i]==r[j])5z 5d;r.1h(1d[i])}q r}});1p l(){u b=7H.72.4P();6.U={2C:/5I/.1s(b),37:/37/.1s(b),1m:/1m/.1s(b)&&!/37/.1s(b),36:/36/.1s(b)&&!/(74|5I)/.1s(b)};6.75=!6.U.1m||12.76=="7B"};6.I({5p:"a.V",4s:"6.4s(a)",78:"6.25(a,2,\'2f\')",7z:"6.25(a,2,\'5o\')",79:"6.2F(a.V.17,a)",7b:"6.2F(a.17)"},l(i,n){6.C[i]=l(a){u J=6.2X(7,n);k(a&&1v a=="22")J=6.3v(a,J);q 7.2q(J)}});6.I({5f:"3t",7d:"5n",2T:"5h",7f:"5i"},l(i,n){6.C[i]=l(){u a=1x;q 7.I(l(){O(u j=0,2w=a.G;j<2w;j++)6(a[j])[n](7)})}});6.I({5j:l(20){6.1E(7,20,"");7.7h(20)},7i:l(c){6.16.1J(7,c)},7j:l(c){6.16.2g(7,c)},7l:l(c){6.16[6.16.2P(7,c)?"2g":"1J"](7,c)},2g:l(a){k(!a||6.1w(a,[7]).r.G)7.V.39(7)},3n:l(){1Z(7.17)7.39(7.17)}},l(i,n){6.C[i]=l(){q 7.I(n,1x)}});6.I(["5m","5l","5e","5r"],l(i,n){6.C[n]=l(1R,C){q 7.1w(":"+n+"("+1R+")",C)}});6.I(["26","40"],l(i,n){6.C[n]=l(h){q h==Q?(7.G?6.1f(7[0],n):1c):7.1f(n,h.1g==3p?h:h+"49")}});6.1A({1n:{"":"m[2]==\'*\'||6.1u(a,m[2])","#":"a.3D(\'3Y\')==m[2]",":":{5l:"i<m[3]-0",5e:"i>m[3]-0",25:"m[3]-0==i",5m:"m[3]-0==i",2v:"i==0",2W:"i==r.G-1",5M:"i%2==0",5O:"i%2","25-3k":"6.25(a.V.17,m[3],\'2f\',a)==a","2v-3k":"6.25(a.V.17,1,\'2f\')==a","2W-3k":"6.25(a.V.7n,1,\'5o\')==a","7o-3k":"6.2F(a.V.17).G==1",5p:"a.17",3n:"!a.17",5r:"6.C.2L.14([a]).15(m[3])>=0",3a:\'a.v!="1C"&&6.1f(a,"1e")!="1Y"&&6.1f(a,"4g")!="1C"\',1C:\'a.v=="1C"||6.1f(a,"1e")=="1Y"||6.1f(a,"4g")=="1C"\',7q:"!a.2R",2R:"a.2R",2S:"a.2S",2Q:"a.2Q||6.1E(a,\'2Q\')",2L:"a.v==\'2L\'",4h:"a.v==\'4h\'",59:"a.v==\'59\'",42:"a.v==\'42\'",58:"a.v==\'58\'",4O:"a.v==\'4O\'",5v:"a.v==\'5v\'",5w:"a.v==\'5w\'",3h:\'a.v=="3h"||6.1u(a,"3h")\',5x:"/5x|3T|7s|3h/i.1s(a.1u)"},".":"6.16.2P(a,m[2])","@":{"=":"z==m[4]","!=":"z!=m[4]","^=":"z&&!z.15(m[4])","$=":"z&&z.2Y(z.G - m[4].G,m[4].G)==m[4]","*=":"z&&z.15(m[4])>=0","":"z",4U:l(m){q["",m[1],m[3],m[2],m[5]]},5J:"z=a[m[3]]||6.1E(a,m[3]);"},"[":"6.2o(m[2],a).G"},5G:[/^\\[ *(@)([a-2l-3y-]*) *([!*$^=]*) *(\'?"?)(.*?)\\4 *\\]/i,/^(\\[)\\s*(.*?(\\[.*?\\])?[^[]*?)\\s*\\]/,/^(:)([a-2l-3y-]*)\\("?\'?(.*?(\\(.*?\\))?[^(]*?)"?\'?\\)/i,/^([:.#]*)([a-2l-3y*-]*)/i],1O:[/^(\\/?\\.\\.)/,"a.V",/^(>|\\/)/,"6.2F(a.17)",/^(\\+)/,"6.25(a,2,\'2f\')",/^(~)/,l(a){u s=6.2F(a.V.17);q s.3J(0,6.3g(a,s))}],3v:l(1n,1Q,2c){u 1H,M=[];1Z(1n&&1n!=1H){1H=1n;u f=6.1w(1n,1Q,2c);1n=f.t.1U(/^\\s*,\\s*/,"");M=2c?1Q=f.r:6.2i(M,f.r)}q M},2o:l(t,1r){k(1v t!="22")q[t];k(1r&&!1r.1V)1r=1c;1r=1r||12;k(!t.15("//")){1r=1r.4y;t=t.2Y(2,t.G)}H k(!t.15("/")){1r=1r.4y;t=t.2Y(1,t.G);k(t.15("/")>=1)t=t.2Y(t.15("/"),t.G)}u J=[1r],29=[],2W=1c;1Z(t&&2W!=t){u r=[];2W=t;t=6.2Z(t).1U(/^\\/\\//i,"");u 3x=Y;u 1G=/^[\\/>]\\s*([a-2l-9*-]+)/i;u m=1G.2B(t);k(m){6.I(J,l(){O(u c=7.17;c;c=c.2f)k(c.1V==1&&(6.1u(c,m[1])||m[1]=="*"))r.1h(c)});J=r;t=t.1U(1G,"");k(t.15(" ")==0)5z;3x=T}H{O(u i=0;i<6.1O.G;i+=2){u 1G=6.1O[i];u m=1G.2B(t);k(m){r=J=6.2X(J,6.1k(6.1O[i+1])?6.1O[i+1]:l(a){q 3B(6.1O[i+1])});t=6.2Z(t.1U(1G,""));3x=T;4q}}}k(t&&!3x){k(!t.15(",")){k(J[0]==1r)J.4m();6.2i(29,J);r=J=[1r];t=" "+t.2Y(1,t.G)}H{u 34=/^([a-2l-3y-]+)(#)([a-2l-9\\\\*2O-]*)/i;u m=34.2B(t);k(m){m=[0,m[2],m[3],m[1]]}H{34=/^([#.]?)([a-2l-9\\\\*2O-]*)/i;m=34.2B(t)}k(m[1]=="#"&&J[J.G-1].4R){u 3z=J[J.G-1].4R(m[2]);J=r=3z&&(!m[3]||6.1u(3z,m[3]))?[3z]:[]}H{k(m[1]==".")u 4k=1p 4V("(^|\\\\s)"+m[2]+"(\\\\s|$)");6.I(J,l(){u 3C=m[1]!=""||m[0]==""?"*":m[2];k(6.1u(7,"7w")&&3C=="*")3C="2U";6.2i(r,m[1]!=""&&J.G!=1?6.4r(7,[],m[1],m[2],4k):7.5E(3C))});k(m[1]=="."&&J.G==1)r=6.2k(r,l(e){q 4k.1s(e.16)});k(m[1]=="#"&&J.G==1){u 5F=r;r=[];6.I(5F,l(){k(7.3D("3Y")==m[2]){r=[7];q Y}})}J=r}t=t.1U(34,"")}}k(t){u 18=6.1w(t,r);J=r=18.r;t=6.2Z(18.t)}}k(J&&J[0]==1r)J.4m();6.2i(29,J);q 29},1w:l(t,r,2c){1Z(t&&/^[a-z[({<*:.#]/i.1s(t)){u p=6.5G,m;6.I(p,l(i,1G){m=1G.2B(t);k(m){t=t.7y(m[0].G);k(6.1n[m[1]].4U)m=6.1n[m[1]].4U(m);q Y}});k(m[1]==":"&&m[2]=="2c")r=6.1w(m[3],r,T).r;H k(m[1]=="."){u 1G=1p 4V("(^|\\\\s)"+m[2]+"(\\\\s|$)");r=6.2k(r,l(e){q 1G.1s(e.16||"")},2c)}H{u f=6.1n[m[1]];k(1v f!="22")f=6.1n[m[1]][m[2]];3B("f = l(a,i){"+(6.1n[m[1]].5J||"")+"q "+f+"}");r=6.2k(r,f,2c)}}q{r:r,t:t}},4r:l(o,r,1O,W,1G){O(u s=o.17;s;s=s.2f)k(s.1V==1){u 1J=T;k(1O==".")1J=s.16&&1G.1s(s.16);H k(1O=="#")1J=s.3D("3Y")==W;k(1J)r.1h(s);k(1O=="#"&&r.G)4q;k(s.17)6.4r(s,r,1O,W,1G)}q r},4s:l(B){u 4N=[];u M=B.V;1Z(M&&M!=12){4N.1h(M);M=M.V}q 4N},25:l(M,1d,3F,B){1d=1d||1;u 1R=0;O(;M;M=M[3F]){k(M.1V==1)1R++;k(1R==1d||1d=="5M"&&1R%2==0&&1R>1&&M==B||1d=="5O"&&1R%2==1&&M==B)q M}},2F:l(n,B){u r=[];O(;n;n=n.2f){k(n.1V==1&&(!B||n!=B))r.1h(n)}q r}});6.E={1J:l(S,v,1j,D){k(6.U.1m&&S.4c!=Q)S=1t;k(D)1j.D=D;k(!1j.2n)1j.2n=7.2n++;k(!S.1I)S.1I={};u 32=S.1I[v];k(!32){32=S.1I[v]={};k(S["3I"+v])32[0]=S["3I"+v]}32[1j.2n]=1j;S["3I"+v]=7.5T;k(!7.1i[v])7.1i[v]=[];7.1i[v].1h(S)},2n:1,1i:{},2g:l(S,v,1j){k(S.1I)k(v&&v.v)4u S.1I[v.v][v.1j.2n];H k(v&&S.1I[v])k(1j)4u S.1I[v][1j.2n];H O(u i 1B S.1I[v])4u S.1I[v][i];H O(u j 1B S.1I)7.2g(S,j)},1M:l(v,D,S){D=6.3H(D||[]);k(!S)6.I(7.1i[v]||[],l(){6.E.1M(v,D,7)});H{u 1j=S["3I"+v],18,C=6.1k(S[v]);k(1j){D.5U(7.2m({v:v,1P:S}));k((18=1j.14(S,D))!==Y)7.4v=T}k(C&&18!==Y)S[v]();7.4v=Y}},5T:l(E){k(1v 6=="Q"||6.E.4v)q;E=6.E.2m(E||1t.E||{});u 3M;u c=7.1I[E.v];u 1y=[].3J.3s(1x,1);1y.5U(E);O(u j 1B c){1y[0].1j=c[j];1y[0].D=c[j].D;k(c[j].14(7,1y)===Y){E.2h();E.2z();3M=Y}}k(6.U.1m)E.1P=E.2h=E.2z=E.1j=E.D=1c;q 3M},2m:l(E){k(!E.1P&&E.5V)E.1P=E.5V;k(E.5W==Q&&E.5Y!=Q){u e=12.4y,b=12.7K;E.5W=E.5Y+(e.5Z||b.5Z);E.7M=E.7N+(e.61||b.61)}k(6.U.2C&&E.1P.1V==3){u 33=E;E=6.1A({},33);E.1P=33.1P.V;E.2h=l(){q 33.2h()};E.2z=l(){q 33.2z()}}k(!E.2h)E.2h=l(){7.3M=Y};k(!E.2z)E.2z=l(){7.7Q=T};q E}};6.C.1A({3R:l(v,D,C){q 7.I(l(){6.E.1J(7,v,C||D,D)})},6n:l(v,D,C){q 7.I(l(){6.E.1J(7,v,l(E){6(7).62(E);q(C||D).14(7,1x)},D)})},62:l(v,C){q 7.I(l(){6.E.2g(7,v,C)})},1M:l(v,D){q 7.I(l(){6.E.1M(v,D,7)})},3r:l(){u a=1x;q 7.69(l(e){7.4F=7.4F==0?1:0;e.2h();q a[7.4F].14(7,[e])||Y})},7T:l(f,g){l 4e(e){u p=(e.v=="3S"?e.7U:e.7Y)||e.7Z;1Z(p&&p!=7)2s{p=p.V}2y(e){p=7};k(p==7)q Y;q(e.v=="3S"?f:g).14(7,[e])}q 7.3S(4e).6b(4e)},28:l(f){k(6.3O)f.14(12,[6]);H{6.3b.1h(l(){q f.14(7,[6])})}q 7}});6.1A({3O:Y,3b:[],28:l(){k(!6.3O){6.3O=T;k(6.3b){6.I(6.3b,l(){7.14(12)});6.3b=1c}k(6.U.36||6.U.37)12.81("6g",6.28,Y)}}});1p l(){6.I(("82,83,2E,84,85,4Y,69,86,"+"87,88,89,3S,6b,8b,3T,"+"4O,8d,8f,8g,2M").3o(","),l(i,o){6.C[o]=l(f){q f?7.3R(o,f):7.1M(o)}});k(6.U.36||6.U.37)12.8h("6g",6.28,Y);H k(6.U.1m){12.8i("<8j"+"8l 3Y=6a 8q=T "+"4B=//:><\\/2d>");u 2d=12.4R("6a");k(2d)2d.2p=l(){k(7.3A!="1X")q;7.V.39(7);6.28()};2d=1c}H k(6.U.2C)6.4W=4c(l(){k(12.3A=="8t"||12.3A=="1X"){5u(6.4W);6.4W=1c;6.28()}},10);6.E.1J(1t,"2E",6.28)};k(6.U.1m)6(1t).6n("4Y",l(){u 1i=6.E.1i;O(u v 1B 1i){u 4X=1i[v],i=4X.G;k(i&&v!=\'4Y\')6p 6.E.2g(4X[i-1],v);1Z(--i)}});6.C.1A({1K:l(P,K){u 1C=7.1w(":1C");P?1C.23({26:"1K",40:"1K",1b:"1K"},P,K):1C.I(l(){7.1q.1e=7.2N?7.2N:"";k(6.1f(7,"1e")=="1Y")7.1q.1e="2t"});q 7},1D:l(P,K){u 3a=7.1w(":3a");P?3a.23({26:"1D",40:"1D",1b:"1D"},P,K):3a.I(l(){7.2N=7.2N||6.1f(7,"1e");k(7.2N=="1Y")7.2N="2t";7.1q.1e="1Y"});q 7},52:6.C.3r,3r:l(C,4S){u 1y=1x;q 6.1k(C)&&6.1k(4S)?7.52(C,4S):7.I(l(){6(7)[6(7).46(":1C")?"1K":"1D"].14(6(7),1y)})},6x:l(P,K){q 7.23({26:"1K"},P,K)},6z:l(P,K){q 7.23({26:"1D"},P,K)},6C:l(P,K){q 7.I(l(){u 56=6(7).46(":1C")?"1K":"1D";6(7).23({26:56},P,K)})},6F:l(P,K){q 7.23({1b:"1K"},P,K)},6I:l(P,K){q 7.23({1b:"1D"},P,K)},6J:l(P,3q,K){q 7.23({1b:3q},P,K)},23:l(F,P,1o,K){q 7.1F(l(){7.2r=6.1A({},F);u 1l=6.P(P,1o,K);O(u p 1B F){u e=1p 6.30(7,1l,p);k(F[p].1g==3N)e.2x(e.M(),F[p]);H e[F[p]](F)}})},1F:l(v,C){k(!C){C=v;v="30"}q 7.I(l(){k(!7.1F)7.1F={};k(!7.1F[v])7.1F[v]=[];7.1F[v].1h(C);k(7.1F[v].G==1)C.14(7)})}});6.1A({P:l(P,1o,C){u 1l=P&&P.1g==6O?P:{1X:C||!C&&1o||6.1k(P)&&P,24:P,1o:C&&1o||1o&&1o.1g!=4D&&1o};1l.24=(1l.24&&1l.24.1g==3N?1l.24:{6U:6X,6Y:51}[1l.24])||6Z;1l.1H=1l.1X;1l.1X=l(){6.5X(7,"30");k(6.1k(1l.1H))1l.1H.14(7)};q 1l},1o:{},1F:{},5X:l(B,v){v=v||"30";k(B.1F&&B.1F[v]){B.1F[v].4m();u f=B.1F[v][0];k(f)f.14(B)}},30:l(B,1a,F){u z=7;u y=B.1q;u 4j=6.1f(B,"1e");y.1e="2t";y.5y="1C";z.a=l(){k(1a.3j)1a.3j.14(B,[z.2j]);k(F=="1b")6.1E(y,"1b",z.2j);H k(5g(z.2j))y[F]=5g(z.2j)+"49"};z.5k=l(){q 4f(6.1f(B,F))};z.M=l(){u r=4f(6.2V(B,F));q r&&r>-7g?r:z.5k()};z.2x=l(4d,3q){z.4o=(1p 5s()).5t();z.2j=4d;z.a();z.47=4c(l(){z.3j(4d,3q)},13)};z.1K=l(){k(!B.1z)B.1z={};B.1z[F]=7.M();1a.1K=T;z.2x(0,B.1z[F]);k(F!="1b")y[F]="5q"};z.1D=l(){k(!B.1z)B.1z={};B.1z[F]=7.M();1a.1D=T;z.2x(B.1z[F],0)};z.3r=l(){k(!B.1z)B.1z={};B.1z[F]=7.M();k(4j=="1Y"){1a.1K=T;k(F!="1b")y[F]="5q";z.2x(0,B.1z[F])}H{1a.1D=T;z.2x(B.1z[F],0)}};z.3j=l(31,3G){u t=(1p 5s()).5t();k(t>1a.24+z.4o){5u(z.47);z.47=1c;z.2j=3G;z.a();k(B.2r)B.2r[F]=T;u 29=T;O(u i 1B B.2r)k(B.2r[i]!==T)29=Y;k(29){y.5y="";y.1e=4j;k(6.1f(B,"1e")=="1Y")y.1e="2t";k(1a.1D)y.1e="1Y";k(1a.1D||1a.1K)O(u p 1B B.2r)k(p=="1b")6.1E(y,p,B.1z[p]);H y[p]=""}k(29&&6.1k(1a.1X))1a.1X.14(B)}H{u n=t-7.4o;u p=n/1a.24;z.2j=1a.1o&&6.1o[1a.1o]?6.1o[1a.1o](p,n,31,(3G-31),1a.24):((-5L.7E(p*5L.7F)/2)+0.5)*(3G-31)+31;z.a()}}}});6.C.1A({7G:l(R,21,K){7.2E(R,21,K,1)},2E:l(R,21,K,1S){k(6.1k(R))q 7.3R("2E",R);K=K||l(){};u v="65";k(21)k(6.1k(21)){K=21;21=1c}H{21=6.2U(21);v="6f"}u 4x=7;6.3d({R:R,v:v,D:21,1S:1S,1X:l(2J,11){k(11=="2K"||!1S&&11=="5H")4x.1E("2H",2J.3L).4T().I(K,[2J.3L,11,2J]);H K.14(4x,[2J.3L,11,2J])}});q 7},7L:l(){q 6.2U(7)},4T:l(){q 7.2o("2d").I(l(){k(7.4B)6.6c(7.4B);H 6.4H(7.2L||7.7P||7.2H||"")}).4E()}});k(!1t.3w)3w=l(){q 1p 7S("7W.80")};6.I("68,5R,5Q,6h,5P,5C".3o(","),l(i,o){6.C[o]=l(f){q 7.3R(o,f)}});6.1A({2a:l(R,D,K,v,1S){k(6.1k(D)){K=D;D=1c}q 6.3d({R:R,D:D,2K:K,4t:v,1S:1S})},8a:l(R,D,K,v){q 6.2a(R,D,K,v,1)},6c:l(R,K){q 6.2a(R,1c,K,"2d")},8c:l(R,D,K){q 6.2a(R,D,K,"67")},8e:l(R,D,K,v){k(6.1k(D)){K=D;D={}}q 6.3d({v:"6f",R:R,D:D,2K:K,4t:v})},8k:l(27){6.3K.27=27},8n:l(6o){6.1A(6.3K,6o)},3K:{1i:T,v:"65",27:0,5a:"8u/x-8w-5S-8D",50:T,4G:T,D:1c},3m:{},3d:l(s){s=6.1A({},6.3K,s);k(s.D){k(s.50&&1v s.D!="22")s.D=6.2U(s.D);k(s.v.4P()=="2a")s.R+=((s.R.15("?")>-1)?"&":"?")+s.D}k(s.1i&&!6.4a++)6.E.1M("68");u 4z=Y;u L=1p 3w();L.6P(s.v,s.R,s.4G);k(s.D)L.3i("6R-6V",s.5a);k(s.1S)L.3i("71-4A-73",6.3m[s.R]||"77, 7a 7c 7e 4b:4b:4b 7k");L.3i("X-7m-7p","3w");k(L.7r)L.3i("7t","7u");k(s.5A)s.5A(L);k(s.1i)6.E.1M("5C",[L,s]);u 2p=l(4n){k(L&&(L.3A==4||4n=="27")){4z=T;u 11;2s{11=6.6i(L)&&4n!="27"?s.1S&&6.6d(L,s.R)?"5H":"2K":"2M";k(11!="2M"){u 3E;2s{3E=L.4l("66-4A")}2y(e){}k(s.1S&&3E)6.3m[s.R]=3E;u D=6.5D(L,s.4t);k(s.2K)s.2K(D,11);k(s.1i)6.E.1M("5P",[L,s])}H 6.3Q(s,L,11)}2y(e){11="2M";6.3Q(s,L,11,e)}k(s.1i)6.E.1M("5Q",[L,s]);k(s.1i&&!--6.4a)6.E.1M("5R");k(s.1X)s.1X(L,11);L.2p=l(){};L=1c}};L.2p=2p;k(s.27>0)5c(l(){k(L){L.7J();k(!4z)2p("27")}},s.27);u 4J=L;2s{4J.7O(s.D)}2y(e){6.3Q(s,L,1c,e)}k(!s.4G)2p();q 4J},3Q:l(s,L,11,e){k(s.2M)s.2M(L,11,e);k(s.1i)6.E.1M("6h",[L,s,e])},4a:0,6i:l(r){2s{q!r.11&&8y.8G=="42:"||(r.11>=51&&r.11<6w)||r.11==5b||6.U.2C&&r.11==Q}2y(e){}q Y},6d:l(L,R){2s{u 5K=L.4l("66-4A");q L.11==5b||5K==6.3m[R]||6.U.2C&&L.11==Q}2y(e){}q Y},5D:l(r,v){u 4p=r.4l("7A-v");u D=!v&&4p&&4p.15("L")>=0;D=v=="L"||D?r.7I:r.3L;k(v=="2d")6.4H(D);k(v=="67")3B("D = "+D);k(v=="4Q")6("<1W>").4Q(D).4T();q D},2U:l(a){u s=[];k(a.1g==2A||a.3e)6.I(a,l(){s.1h(2I(7.W)+"="+2I(7.N))});H O(u j 1B a)k(a[j]&&a[j].1g==2A)6.I(a[j],l(){s.1h(2I(j)+"="+2I(7))});H s.1h(2I(j)+"="+2I(a[j]));q s.55("&")},4H:l(D){k(1t.5B)1t.5B(D);H k(6.U.2C)1t.5c(D,0);H 3B.3s(1t,D)}})}',62,539,'||||||jQuery|this|||||||||||||if|function|||||return||||var|type||||||elem|fn|data|event|prop|length|else|each|ret|callback|xml|cur|value|for|speed|undefined|url|element|true|browser|parentNode|name||false|||status|document||apply|indexOf|className|firstChild|val|obj|options|opacity|null|result|display|css|constructor|push|global|handler|isFunction|opt|msie|expr|easing|new|style|context|test|window|nodeName|typeof|filter|arguments|args|orig|extend|in|hidden|hide|attr|queue|re|old|events|add|show|arg|trigger|table|token|target|elems|num|ifModified|tbody|replace|nodeType|div|complete|none|while|key|params|string|animate|duration|nth|height|timeout|ready|done|get|index|not|script|tb|nextSibling|remove|preventDefault|merge|now|grep|z0|fix|guid|find|onreadystatechange|pushStack|curAnim|try|block|cssFloat|first|al|custom|catch|stopPropagation|Array|exec|safari|wrap|load|sibling|el|innerHTML|encodeURIComponent|res|success|text|error|oldblock|_|has|selected|disabled|checked|insertBefore|param|curCSS|last|map|substr|trim|fx|firstNum|handlers|originalEvent|re2|domManip|mozilla|opera|childNodes|removeChild|visible|readyList|parPos|ajax|jquery|oWidth|inArray|button|setRequestHeader|step|child|styleFloat|lastModified|empty|split|String|to|toggle|call|append|toUpperCase|multiFilter|XMLHttpRequest|foundToken|9_|oid|readyState|eval|tag|getAttribute|modRes|dir|lastNum|makeArray|on|slice|ajaxSettings|responseText|returnValue|Number|isReady|second|handleError|bind|mouseover|select|tr|cloneNode|clean|defaultView|id|position|width|oHeight|file|static|swap|getComputedStyle|is|timer|inv|px|active|00|setInterval|from|handleHover|parseFloat|visibility|radio|appendChild|oldDisplay|rec|getResponseHeader|shift|isTimeout|startTime|ct|break|getAll|parents|dataType|delete|triggered|clone|self|documentElement|requestDone|Modified|src|deep|Function|end|lastToggle|async|globalEval|pos|xml2|alpha|float|setArray|matched|submit|toLowerCase|html|getElementById|fn2|evalScripts|_resort|RegExp|safariTimer|els|unload|currentStyle|processData|200|_toggle|getPropertyValue|newProp|join|state|100|password|checkbox|contentType|304|setTimeout|check|gt|appendTo|parseInt|before|after|removeAttr|max|lt|eq|prepend|previousSibling|parent|1px|contains|Date|getTime|clearInterval|image|reset|input|overflow|continue|beforeSend|execScript|ajaxSend|httpData|getElementsByTagName|tmp|parse|notmodified|webkit|_prefix|xmlRes|Math|even|rl|odd|ajaxSuccess|ajaxComplete|ajaxStop|form|handle|unshift|srcElement|pageX|dequeue|clientX|scrollLeft|nodeValue|scrollTop|unbind|sl|zoom|GET|Last|json|ajaxStart|click|__ie_init|mouseout|getScript|httpNotModified|createElement|POST|DOMContentLoaded|ajaxError|httpSuccess|prevObject|force|ol|exclude|one|settings|do|absolute|left|relative|clientHeight|clientWidth|offsetWidth|300|slideDown|thead|slideUp|tfoot|td|slideToggle|th|offsetHeight|fadeIn|htmlFor|class|fadeOut|fadeTo|readonly|readOnly|gi|match|Object|open|action|Content|getAttributeNode|tagName|slow|Type|ig|600|fast|400|concat|If|userAgent|Since|compatible|boxModel|compatMode|Thu|next|siblings|01|children|Jan|prependTo|1970|insertAfter|10000|removeAttribute|addClass|removeClass|GMT|toggleClass|Requested|lastChild|only|With|enabled|overrideMimeType|textarea|Connection|close|right|object|Top|substring|prev|content|CSS1Compat|font|weight|cos|PI|loadIfModified|navigator|responseXML|abort|body|serialize|pageY|clientY|send|textContent|cancelBubble|setAttribute|ActiveXObject|hover|fromElement|method|Microsoft|9999|toElement|relatedTarget|XMLHTTP|removeEventListener|blur|focus|resize|scroll|dblclick|mousedown|mouseup|mousemove|getIfModified|change|getJSON|keydown|post|keypress|keyup|addEventListener|write|scr|ajaxTimeout|ipt|toString|ajaxSetup|prototype|size|defer|createTextNode|reverse|loaded|application|noConflict|www|line|location|Bottom|Right|Left|padding|urlencoded|border|Width|protocol'.split('|'),0,{})) +eval(function(p,a,c,k,e,d){e=function(c){return(c<a?"":e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('k(1v 1t.6=="Q"){1t.Q=1t.Q;u 6=l(a,c){k(1t==7)q 1p 6(a,c);a=a||12;k(6.1k(a))q 1p 6(12)[6.C.28?"28":"2E"](a);k(1v a=="22"){u m=/^[^<]*(<(.|\\n)+>)[^>]*$/.2B(a);k(m)a=6.3W([m[1]]);H q 1p 6(c).2o(a)}q 7.4M(a.1g==2A&&a||(a.3e||a.G&&a!=1t&&!a.1V&&a[0]!=Q&&a[0].1V)&&6.3H(a)||[a])};k(1v $!="Q")6.2O$=$;u $=6;6.C=6.8o={3e:"1.1.1",8p:l(){q 7.G},G:0,2a:l(1R){q 1R==Q?6.3H(7):7[1R]},2q:l(a){u J=6(7);J.6j=7;q J.4M(a)},4M:l(a){7.G=0;[].1h.14(7,a);q 7},I:l(C,1y){q 6.I(7,C,1y)},2b:l(19){u 4I=-1;7.I(l(i){k(7==19)4I=i});q 4I},1E:l(20,N,v){u 19=20;k(20.1g==3p)k(N==Q)q 7.G&&6[v||"1E"](7[0],20)||Q;H{19={};19[20]=N}q 7.I(l(2b){O(u F 1B 19)6.1E(v?7.1q:7,F,6.F(7,19[F],v,2b,F))})},1f:l(20,N){q 7.1E(20,N,"2V")},2L:l(e){k(1v e=="22")q 7.3n().3t(12.8r(e));u t="";6.I(e||7,l(){6.I(7.38,l(){k(7.1V!=8)t+=7.1V!=1?7.60:6.C.2L([7])})});q t},2D:l(){u a=6.3W(1x);q 7.I(l(){u b=a[0].3V(T);7.V.2T(b,7);1Z(b.17)b=b.17;b.4i(7)})},3t:l(){q 7.35(1x,T,1,l(a){7.4i(a)})},5n:l(){q 7.35(1x,T,-1,l(a){7.2T(a,7.17)})},5h:l(){q 7.35(1x,Y,1,l(a){7.V.2T(a,7)})},5i:l(){q 7.35(1x,Y,-1,l(a){7.V.2T(a,7.2f)})},4E:l(){q 7.6j||6([])},2o:l(t){q 7.2q(6.2X(7,l(a){q 6.2o(t,a)}))},4w:l(4C){q 7.2q(6.2X(7,l(a){q a.3V(4C!=Q?4C:T)}))},1w:l(t){q 7.2q(6.1k(t)&&6.2k(7,l(2G,2b){q t.14(2G,[2b])})||6.3v(t,7))},2c:l(t){q 7.2q(t.1g==3p&&6.3v(t,7,T)||6.2k(7,l(a){k(t.1g==2A||t.3e)q 6.3g(t,a)<0;H q a!=t}))},1J:l(t){q 7.2q(6.2i(7.2a(),t.1g==3p?6(t).2a():t.G!=Q&&!t.1u?t:[t]))},46:l(1n){q 1n?6.1w(1n,7).r.G>0:Y},18:l(18){q 18==Q?(7.G?7[0].N:1c):7.1E("N",18)},4Q:l(18){q 18==Q?(7.G?7[0].2H:1c):7.3n().3t(18)},35:l(1y,1N,3F,C){u 4w=7.G>1;u a=6.3W(1y);k(3F<0)a.8s();q 7.I(l(){u 19=7;k(1N&&6.1u(7,"1N")&&6.1u(a[0],"3U"))19=7.5E("1T")[0]||7.4i(12.6e("1T"));6.I(a,l(){C.14(19,[4w?7.3V(T):7])})})}};6.1A=6.C.1A=l(){u 1P=1x[0],a=1;k(1x.G==1){1P=7;a=0}u F;1Z(F=1x[a++])O(u i 1B F)1P[i]=F[i];q 1P};6.1A({8v:l(){k(6.2O$)$=6.2O$;q 6},1k:l(C){q!!C&&1v C!="22"&&1v C[0]=="Q"&&/l/i.1s(C+"")},1u:l(B,W){q B.1u&&B.1u.3u()==W.3u()},I:l(19,C,1y){k(19.G==Q)O(u i 1B 19)C.14(19[i],1y||[i,19[i]]);H O(u i=0,6l=19.G;i<6l;i++)k(C.14(19[i],1y||[i,19[i]])===Y)4q;q 19},F:l(B,N,v,2b,F){k(6.1k(N))q N.3s(B,[2b]);u 6m=/z-?2b|7C-?7D|1b|64|8x-?26/i;k(N.1g==3N&&v=="2V"&&!6m.1s(F))q N+"49";q N},16:{1J:l(B,c){6.I(c.3o(/\\s+/),l(i,M){k(!6.16.2P(B.16,M))B.16+=(B.16?" ":"")+M})},2g:l(B,c){B.16=c?6.2k(B.16.3o(/\\s+/),l(M){q!6.16.2P(c,M)}).55(" "):""},2P:l(t,c){t=t.16||t;q t&&1p 4V("(^|\\\\s)"+c+"(\\\\s|$)").1s(t)}},44:l(e,o,f){O(u i 1B o){e.1q["1H"+i]=e.1q[i];e.1q[i]=o[i]}f.14(e,[]);O(u i 1B o)e.1q[i]=e.1q["1H"+i]},1f:l(e,p){k(p=="26"||p=="40"){u 1H={},41,3f,d=["7x","8z","8A","8B"];6.I(d,l(){1H["8C"+7]=0;1H["8E"+7+"8F"]=0});6.44(e,1H,l(){k(6.1f(e,"1e")!="1Y"){41=e.6E;3f=e.6v}H{e=6(e.3V(T)).2o(":4h").5j("2S").4E().1f({4g:"1C",3Z:"6q",1e:"2t",7v:"0",6r:"0"}).5f(e.V)[0];u 3c=6.1f(e.V,"3Z");k(3c==""||3c=="43")e.V.1q.3Z="6s";41=e.6t;3f=e.6u;k(3c==""||3c=="43")e.V.1q.3Z="43";e.V.39(e)}});q p=="26"?41:3f}q 6.2V(e,p)},2V:l(B,F,6k){u J;k(F=="1b"&&6.U.1m)q 6.1E(B.1q,"1b");k(F=="4L"||F=="2u")F=6.U.1m?"3l":"2u";k(!6k&&B.1q[F])J=B.1q[F];H k(12.3X&&12.3X.45){k(F=="2u"||F=="3l")F="4L";F=F.1U(/([A-Z])/g,"-$1").4P();u M=12.3X.45(B,1c);k(M)J=M.53(F);H k(F=="1e")J="1Y";H 6.44(B,{1e:"2t"},l(){u c=12.3X.45(7,"");J=c&&c.53(F)||""})}H k(B.4Z){u 54=F.1U(/\\-(\\w)/g,l(m,c){q c.3u()});J=B.4Z[F]||B.4Z[54]}q J},3W:l(a){u r=[];6.I(a,l(i,1L){k(!1L)q;k(1L.1g==3N)1L=1L.8m();k(1v 1L=="22"){u s=6.2Z(1L),1W=12.6e("1W"),2e=[];u 2D=!s.15("<1l")&&[1,"<3T>","</3T>"]||(!s.15("<6y")||!s.15("<1T")||!s.15("<6A"))&&[1,"<1N>","</1N>"]||!s.15("<3U")&&[2,"<1N><1T>","</1T></1N>"]||(!s.15("<6B")||!s.15("<6D"))&&[3,"<1N><1T><3U>","</3U></1T></1N>"]||[0,"",""];1W.2H=2D[1]+s+2D[2];1Z(2D[0]--)1W=1W.17;k(6.U.1m){k(!s.15("<1N")&&s.15("<1T")<0)2e=1W.17&&1W.17.38;H k(2D[1]=="<1N>"&&s.15("<1T")<0)2e=1W.38;O(u n=2e.G-1;n>=0;--n)k(6.1u(2e[n],"1T")&&!2e[n].38.G)2e[n].V.39(2e[n])}1L=1W.38}k(1L.G===0)q;k(1L[0]==Q)r.1h(1L);H r=6.2i(r,1L)});q r},1E:l(B,W,N){u 2m={"O":"6G","6H":"16","4L":6.U.1m?"3l":"2u",2u:6.U.1m?"3l":"2u",2H:"2H",16:"16",N:"N",2R:"2R",2S:"2S",6K:"6L",2Q:"2Q"};k(W=="1b"&&6.U.1m&&N!=Q){B.64=1;q B.1w=B.1w.1U(/4K\\([^\\)]*\\)/6M,"")+(N==1?"":"4K(1b="+N*57+")")}H k(W=="1b"&&6.U.1m)q B.1w?4f(B.1w.6N(/4K\\(1b=(.*)\\)/)[1])/57:1;k(W=="1b"&&6.U.36&&N==1)N=0.7X;k(2m[W]){k(N!=Q)B[2m[W]]=N;q B[2m[W]]}H k(N==Q&&6.U.1m&&6.1u(B,"5S")&&(W=="6Q"||W=="7V"))q B.6S(W).60;H k(B.6T){k(N!=Q)B.7R(W,N);q B.3D(W)}H{W=W.1U(/-([a-z])/6W,l(z,b){q b.3u()});k(N!=Q)B[W]=N;q B[W]}},2Z:l(t){q t.1U(/^\\s+|\\s+$/g,"")},3H:l(a){u r=[];k(a.1g!=2A)O(u i=0,2w=a.G;i<2w;i++)r.1h(a[i]);H r=a.3J(0);q r},3g:l(b,a){O(u i=0,2w=a.G;i<2w;i++)k(a[i]==b)q i;q-1},2i:l(2v,3P){u r=[].3J.3s(2v,0);O(u i=0,63=3P.G;i<63;i++)k(6.3g(3P[i],r)==-1)2v.1h(3P[i]);q 2v},2k:l(1Q,C,48){k(1v C=="22")C=1p 4D("a","i","q "+C);u 1d=[];O(u i=0,2G=1Q.G;i<2G;i++)k(!48&&C(1Q[i],i)||48&&!C(1Q[i],i))1d.1h(1Q[i]);q 1d},2X:l(1Q,C){k(1v C=="22")C=1p 4D("a","q "+C);u 1d=[],r=[];O(u i=0,2G=1Q.G;i<2G;i++){u 18=C(1Q[i],i);k(18!==1c&&18!=Q){k(18.1g!=2A)18=[18];1d=1d.70(18)}}u r=1d.G?[1d[0]]:[];5d:O(u i=1,5N=1d.G;i<5N;i++){O(u j=0;j<i;j++)k(1d[i]==r[j])5z 5d;r.1h(1d[i])}q r}});1p l(){u b=7H.72.4P();6.U={2C:/5I/.1s(b),37:/37/.1s(b),1m:/1m/.1s(b)&&!/37/.1s(b),36:/36/.1s(b)&&!/(74|5I)/.1s(b)};6.75=!6.U.1m||12.76=="7B"};6.I({5p:"a.V",4s:"6.4s(a)",78:"6.25(a,2,\'2f\')",7z:"6.25(a,2,\'5o\')",79:"6.2F(a.V.17,a)",7b:"6.2F(a.17)"},l(i,n){6.C[i]=l(a){u J=6.2X(7,n);k(a&&1v a=="22")J=6.3v(a,J);q 7.2q(J)}});6.I({5f:"3t",7d:"5n",2T:"5h",7f:"5i"},l(i,n){6.C[i]=l(){u a=1x;q 7.I(l(){O(u j=0,2w=a.G;j<2w;j++)6(a[j])[n](7)})}});6.I({5j:l(20){6.1E(7,20,"");7.7h(20)},7i:l(c){6.16.1J(7,c)},7j:l(c){6.16.2g(7,c)},7l:l(c){6.16[6.16.2P(7,c)?"2g":"1J"](7,c)},2g:l(a){k(!a||6.1w(a,[7]).r.G)7.V.39(7)},3n:l(){1Z(7.17)7.39(7.17)}},l(i,n){6.C[i]=l(){q 7.I(n,1x)}});6.I(["5m","5l","5e","5r"],l(i,n){6.C[n]=l(1R,C){q 7.1w(":"+n+"("+1R+")",C)}});6.I(["26","40"],l(i,n){6.C[n]=l(h){q h==Q?(7.G?6.1f(7[0],n):1c):7.1f(n,h.1g==3p?h:h+"49")}});6.1A({1n:{"":"m[2]==\'*\'||6.1u(a,m[2])","#":"a.3D(\'3Y\')==m[2]",":":{5l:"i<m[3]-0",5e:"i>m[3]-0",25:"m[3]-0==i",5m:"m[3]-0==i",2v:"i==0",2W:"i==r.G-1",5M:"i%2==0",5O:"i%2","25-3k":"6.25(a.V.17,m[3],\'2f\',a)==a","2v-3k":"6.25(a.V.17,1,\'2f\')==a","2W-3k":"6.25(a.V.7n,1,\'5o\')==a","7o-3k":"6.2F(a.V.17).G==1",5p:"a.17",3n:"!a.17",5r:"6.C.2L.14([a]).15(m[3])>=0",3a:\'a.v!="1C"&&6.1f(a,"1e")!="1Y"&&6.1f(a,"4g")!="1C"\',1C:\'a.v=="1C"||6.1f(a,"1e")=="1Y"||6.1f(a,"4g")=="1C"\',7q:"!a.2R",2R:"a.2R",2S:"a.2S",2Q:"a.2Q||6.1E(a,\'2Q\')",2L:"a.v==\'2L\'",4h:"a.v==\'4h\'",59:"a.v==\'59\'",42:"a.v==\'42\'",58:"a.v==\'58\'",4O:"a.v==\'4O\'",5v:"a.v==\'5v\'",5w:"a.v==\'5w\'",3h:\'a.v=="3h"||6.1u(a,"3h")\',5x:"/5x|3T|7s|3h/i.1s(a.1u)"},".":"6.16.2P(a,m[2])","@":{"=":"z==m[4]","!=":"z!=m[4]","^=":"z&&!z.15(m[4])","$=":"z&&z.2Y(z.G - m[4].G,m[4].G)==m[4]","*=":"z&&z.15(m[4])>=0","":"z",4U:l(m){q["",m[1],m[3],m[2],m[5]]},5J:"z=a[m[3]]||6.1E(a,m[3]);"},"[":"6.2o(m[2],a).G"},5G:[/^\\[ *(@)([a-2l-3y-]*) *([!*$^=]*) *(\'?"?)(.*?)\\4 *\\]/i,/^(\\[)\\s*(.*?(\\[.*?\\])?[^[]*?)\\s*\\]/,/^(:)([a-2l-3y-]*)\\("?\'?(.*?(\\(.*?\\))?[^(]*?)"?\'?\\)/i,/^([:.#]*)([a-2l-3y*-]*)/i],1O:[/^(\\/?\\.\\.)/,"a.V",/^(>|\\/)/,"6.2F(a.17)",/^(\\+)/,"6.25(a,2,\'2f\')",/^(~)/,l(a){u s=6.2F(a.V.17);q s.3J(0,6.3g(a,s))}],3v:l(1n,1Q,2c){u 1H,M=[];1Z(1n&&1n!=1H){1H=1n;u f=6.1w(1n,1Q,2c);1n=f.t.1U(/^\\s*,\\s*/,"");M=2c?1Q=f.r:6.2i(M,f.r)}q M},2o:l(t,1r){k(1v t!="22")q[t];k(1r&&!1r.1V)1r=1c;1r=1r||12;k(!t.15("//")){1r=1r.4y;t=t.2Y(2,t.G)}H k(!t.15("/")){1r=1r.4y;t=t.2Y(1,t.G);k(t.15("/")>=1)t=t.2Y(t.15("/"),t.G)}u J=[1r],29=[],2W=1c;1Z(t&&2W!=t){u r=[];2W=t;t=6.2Z(t).1U(/^\\/\\//i,"");u 3x=Y;u 1G=/^[\\/>]\\s*([a-2l-9*-]+)/i;u m=1G.2B(t);k(m){6.I(J,l(){O(u c=7.17;c;c=c.2f)k(c.1V==1&&(6.1u(c,m[1])||m[1]=="*"))r.1h(c)});J=r;t=t.1U(1G,"");k(t.15(" ")==0)5z;3x=T}H{O(u i=0;i<6.1O.G;i+=2){u 1G=6.1O[i];u m=1G.2B(t);k(m){r=J=6.2X(J,6.1k(6.1O[i+1])?6.1O[i+1]:l(a){q 3B(6.1O[i+1])});t=6.2Z(t.1U(1G,""));3x=T;4q}}}k(t&&!3x){k(!t.15(",")){k(J[0]==1r)J.4m();6.2i(29,J);r=J=[1r];t=" "+t.2Y(1,t.G)}H{u 34=/^([a-2l-3y-]+)(#)([a-2l-9\\\\*2O-]*)/i;u m=34.2B(t);k(m){m=[0,m[2],m[3],m[1]]}H{34=/^([#.]?)([a-2l-9\\\\*2O-]*)/i;m=34.2B(t)}k(m[1]=="#"&&J[J.G-1].4R){u 3z=J[J.G-1].4R(m[2]);J=r=3z&&(!m[3]||6.1u(3z,m[3]))?[3z]:[]}H{k(m[1]==".")u 4k=1p 4V("(^|\\\\s)"+m[2]+"(\\\\s|$)");6.I(J,l(){u 3C=m[1]!=""||m[0]==""?"*":m[2];k(6.1u(7,"7w")&&3C=="*")3C="2U";6.2i(r,m[1]!=""&&J.G!=1?6.4r(7,[],m[1],m[2],4k):7.5E(3C))});k(m[1]=="."&&J.G==1)r=6.2k(r,l(e){q 4k.1s(e.16)});k(m[1]=="#"&&J.G==1){u 5F=r;r=[];6.I(5F,l(){k(7.3D("3Y")==m[2]){r=[7];q Y}})}J=r}t=t.1U(34,"")}}k(t){u 18=6.1w(t,r);J=r=18.r;t=6.2Z(18.t)}}k(J&&J[0]==1r)J.4m();6.2i(29,J);q 29},1w:l(t,r,2c){1Z(t&&/^[a-z[({<*:.#]/i.1s(t)){u p=6.5G,m;6.I(p,l(i,1G){m=1G.2B(t);k(m){t=t.7y(m[0].G);k(6.1n[m[1]].4U)m=6.1n[m[1]].4U(m);q Y}});k(m[1]==":"&&m[2]=="2c")r=6.1w(m[3],r,T).r;H k(m[1]=="."){u 1G=1p 4V("(^|\\\\s)"+m[2]+"(\\\\s|$)");r=6.2k(r,l(e){q 1G.1s(e.16||"")},2c)}H{u f=6.1n[m[1]];k(1v f!="22")f=6.1n[m[1]][m[2]];3B("f = l(a,i){"+(6.1n[m[1]].5J||"")+"q "+f+"}");r=6.2k(r,f,2c)}}q{r:r,t:t}},4r:l(o,r,1O,W,1G){O(u s=o.17;s;s=s.2f)k(s.1V==1){u 1J=T;k(1O==".")1J=s.16&&1G.1s(s.16);H k(1O=="#")1J=s.3D("3Y")==W;k(1J)r.1h(s);k(1O=="#"&&r.G)4q;k(s.17)6.4r(s,r,1O,W,1G)}q r},4s:l(B){u 4N=[];u M=B.V;1Z(M&&M!=12){4N.1h(M);M=M.V}q 4N},25:l(M,1d,3F,B){1d=1d||1;u 1R=0;O(;M;M=M[3F]){k(M.1V==1)1R++;k(1R==1d||1d=="5M"&&1R%2==0&&1R>1&&M==B||1d=="5O"&&1R%2==1&&M==B)q M}},2F:l(n,B){u r=[];O(;n;n=n.2f){k(n.1V==1&&(!B||n!=B))r.1h(n)}q r}});6.E={1J:l(S,v,1j,D){k(6.U.1m&&S.4c!=Q)S=1t;k(D)1j.D=D;k(!1j.2n)1j.2n=7.2n++;k(!S.1I)S.1I={};u 32=S.1I[v];k(!32){32=S.1I[v]={};k(S["3I"+v])32[0]=S["3I"+v]}32[1j.2n]=1j;S["3I"+v]=7.5T;k(!7.1i[v])7.1i[v]=[];7.1i[v].1h(S)},2n:1,1i:{},2g:l(S,v,1j){k(S.1I)k(v&&v.v)4u S.1I[v.v][v.1j.2n];H k(v&&S.1I[v])k(1j)4u S.1I[v][1j.2n];H O(u i 1B S.1I[v])4u S.1I[v][i];H O(u j 1B S.1I)7.2g(S,j)},1M:l(v,D,S){D=6.3H(D||[]);k(!S)6.I(7.1i[v]||[],l(){6.E.1M(v,D,7)});H{u 1j=S["3I"+v],18,C=6.1k(S[v]);k(1j){D.5U(7.2m({v:v,1P:S}));k((18=1j.14(S,D))!==Y)7.4v=T}k(C&&18!==Y)S[v]();7.4v=Y}},5T:l(E){k(1v 6=="Q"||6.E.4v)q;E=6.E.2m(E||1t.E||{});u 3M;u c=7.1I[E.v];u 1y=[].3J.3s(1x,1);1y.5U(E);O(u j 1B c){1y[0].1j=c[j];1y[0].D=c[j].D;k(c[j].14(7,1y)===Y){E.2h();E.2z();3M=Y}}k(6.U.1m)E.1P=E.2h=E.2z=E.1j=E.D=1c;q 3M},2m:l(E){k(!E.1P&&E.5V)E.1P=E.5V;k(E.5W==Q&&E.5Y!=Q){u e=12.4y,b=12.7K;E.5W=E.5Y+(e.5Z||b.5Z);E.7M=E.7N+(e.61||b.61)}k(6.U.2C&&E.1P.1V==3){u 33=E;E=6.1A({},33);E.1P=33.1P.V;E.2h=l(){q 33.2h()};E.2z=l(){q 33.2z()}}k(!E.2h)E.2h=l(){7.3M=Y};k(!E.2z)E.2z=l(){7.7Q=T};q E}};6.C.1A({3R:l(v,D,C){q 7.I(l(){6.E.1J(7,v,C||D,D)})},6n:l(v,D,C){q 7.I(l(){6.E.1J(7,v,l(E){6(7).62(E);q(C||D).14(7,1x)},D)})},62:l(v,C){q 7.I(l(){6.E.2g(7,v,C)})},1M:l(v,D){q 7.I(l(){6.E.1M(v,D,7)})},3r:l(){u a=1x;q 7.69(l(e){7.4F=7.4F==0?1:0;e.2h();q a[7.4F].14(7,[e])||Y})},7T:l(f,g){l 4e(e){u p=(e.v=="3S"?e.7U:e.7Y)||e.7Z;1Z(p&&p!=7)2s{p=p.V}2y(e){p=7};k(p==7)q Y;q(e.v=="3S"?f:g).14(7,[e])}q 7.3S(4e).6b(4e)},28:l(f){k(6.3O)f.14(12,[6]);H{6.3b.1h(l(){q f.14(7,[6])})}q 7}});6.1A({3O:Y,3b:[],28:l(){k(!6.3O){6.3O=T;k(6.3b){6.I(6.3b,l(){7.14(12)});6.3b=1c}k(6.U.36||6.U.37)12.81("6g",6.28,Y)}}});1p l(){6.I(("82,83,2E,84,85,4Y,69,86,"+"87,88,89,3S,6b,8b,3T,"+"4O,8d,8f,8g,2M").3o(","),l(i,o){6.C[o]=l(f){q f?7.3R(o,f):7.1M(o)}});k(6.U.36||6.U.37)12.8h("6g",6.28,Y);H k(6.U.1m){12.8i("<8j"+"8l 3Y=6a 8q=T "+"4B=//:><\\/2d>");u 2d=12.4R("6a");k(2d)2d.2p=l(){k(7.3A!="1X")q;7.V.39(7);6.28()};2d=1c}H k(6.U.2C)6.4W=4c(l(){k(12.3A=="8t"||12.3A=="1X"){5u(6.4W);6.4W=1c;6.28()}},10);6.E.1J(1t,"2E",6.28)};k(6.U.1m)6(1t).6n("4Y",l(){u 1i=6.E.1i;O(u v 1B 1i){u 4X=1i[v],i=4X.G;k(i&&v!=\'4Y\')6p 6.E.2g(4X[i-1],v);1Z(--i)}});6.C.1A({1K:l(P,K){u 1C=7.1w(":1C");P?1C.23({26:"1K",40:"1K",1b:"1K"},P,K):1C.I(l(){7.1q.1e=7.2N?7.2N:"";k(6.1f(7,"1e")=="1Y")7.1q.1e="2t"});q 7},1D:l(P,K){u 3a=7.1w(":3a");P?3a.23({26:"1D",40:"1D",1b:"1D"},P,K):3a.I(l(){7.2N=7.2N||6.1f(7,"1e");k(7.2N=="1Y")7.2N="2t";7.1q.1e="1Y"});q 7},52:6.C.3r,3r:l(C,4S){u 1y=1x;q 6.1k(C)&&6.1k(4S)?7.52(C,4S):7.I(l(){6(7)[6(7).46(":1C")?"1K":"1D"].14(6(7),1y)})},6x:l(P,K){q 7.23({26:"1K"},P,K)},6z:l(P,K){q 7.23({26:"1D"},P,K)},6C:l(P,K){q 7.I(l(){u 56=6(7).46(":1C")?"1K":"1D";6(7).23({26:56},P,K)})},6F:l(P,K){q 7.23({1b:"1K"},P,K)},6I:l(P,K){q 7.23({1b:"1D"},P,K)},6J:l(P,3q,K){q 7.23({1b:3q},P,K)},23:l(F,P,1o,K){q 7.1F(l(){7.2r=6.1A({},F);u 1l=6.P(P,1o,K);O(u p 1B F){u e=1p 6.30(7,1l,p);k(F[p].1g==3N)e.2x(e.M(),F[p]);H e[F[p]](F)}})},1F:l(v,C){k(!C){C=v;v="30"}q 7.I(l(){k(!7.1F)7.1F={};k(!7.1F[v])7.1F[v]=[];7.1F[v].1h(C);k(7.1F[v].G==1)C.14(7)})}});6.1A({P:l(P,1o,C){u 1l=P&&P.1g==6O?P:{1X:C||!C&&1o||6.1k(P)&&P,24:P,1o:C&&1o||1o&&1o.1g!=4D&&1o};1l.24=(1l.24&&1l.24.1g==3N?1l.24:{6U:6X,6Y:51}[1l.24])||6Z;1l.1H=1l.1X;1l.1X=l(){6.5X(7,"30");k(6.1k(1l.1H))1l.1H.14(7)};q 1l},1o:{},1F:{},5X:l(B,v){v=v||"30";k(B.1F&&B.1F[v]){B.1F[v].4m();u f=B.1F[v][0];k(f)f.14(B)}},30:l(B,1a,F){u z=7;u y=B.1q;u 4j=6.1f(B,"1e");y.1e="2t";y.5y="1C";z.a=l(){k(1a.3j)1a.3j.14(B,[z.2j]);k(F=="1b")6.1E(y,"1b",z.2j);H k(5g(z.2j))y[F]=5g(z.2j)+"49"};z.5k=l(){q 4f(6.1f(B,F))};z.M=l(){u r=4f(6.2V(B,F));q r&&r>-7g?r:z.5k()};z.2x=l(4d,3q){z.4o=(1p 5s()).5t();z.2j=4d;z.a();z.47=4c(l(){z.3j(4d,3q)},13)};z.1K=l(){k(!B.1z)B.1z={};B.1z[F]=7.M();1a.1K=T;z.2x(0,B.1z[F]);k(F!="1b")y[F]="5q"};z.1D=l(){k(!B.1z)B.1z={};B.1z[F]=7.M();1a.1D=T;z.2x(B.1z[F],0)};z.3r=l(){k(!B.1z)B.1z={};B.1z[F]=7.M();k(4j=="1Y"){1a.1K=T;k(F!="1b")y[F]="5q";z.2x(0,B.1z[F])}H{1a.1D=T;z.2x(B.1z[F],0)}};z.3j=l(31,3G){u t=(1p 5s()).5t();k(t>1a.24+z.4o){5u(z.47);z.47=1c;z.2j=3G;z.a();k(B.2r)B.2r[F]=T;u 29=T;O(u i 1B B.2r)k(B.2r[i]!==T)29=Y;k(29){y.5y="";y.1e=4j;k(6.1f(B,"1e")=="1Y")y.1e="2t";k(1a.1D)y.1e="1Y";k(1a.1D||1a.1K)O(u p 1B B.2r)k(p=="1b")6.1E(y,p,B.1z[p]);H y[p]=""}k(29&&6.1k(1a.1X))1a.1X.14(B)}H{u n=t-7.4o;u p=n/1a.24;z.2j=1a.1o&&6.1o[1a.1o]?6.1o[1a.1o](p,n,31,(3G-31),1a.24):((-5L.7E(p*5L.7F)/2)+0.5)*(3G-31)+31;z.a()}}}});6.C.1A({7G:l(R,21,K){7.2E(R,21,K,1)},2E:l(R,21,K,1S){k(6.1k(R))q 7.3R("2E",R);K=K||l(){};u v="65";k(21)k(6.1k(21)){K=21;21=1c}H{21=6.2U(21);v="6f"}u 4x=7;6.3d({R:R,v:v,D:21,1S:1S,1X:l(2J,11){k(11=="2K"||!1S&&11=="5H")4x.1E("2H",2J.3L).4T().I(K,[2J.3L,11,2J]);H K.14(4x,[2J.3L,11,2J])}});q 7},7L:l(){q 6.2U(7)},4T:l(){q 7.2o("2d").I(l(){k(7.4B)6.6c(7.4B);H 6.4H(7.2L||7.7P||7.2H||"")}).4E()}});k(!1t.3w)3w=l(){q 1p 7S("7W.80")};6.I("68,5R,5Q,6h,5P,5C".3o(","),l(i,o){6.C[o]=l(f){q 7.3R(o,f)}});6.1A({2a:l(R,D,K,v,1S){k(6.1k(D)){K=D;D=1c}q 6.3d({R:R,D:D,2K:K,4t:v,1S:1S})},8a:l(R,D,K,v){q 6.2a(R,D,K,v,1)},6c:l(R,K){q 6.2a(R,1c,K,"2d")},8c:l(R,D,K){q 6.2a(R,D,K,"67")},8e:l(R,D,K,v){k(6.1k(D)){K=D;D={}}q 6.3d({v:"6f",R:R,D:D,2K:K,4t:v})},8k:l(27){6.3K.27=27},8n:l(6o){6.1A(6.3K,6o)},3K:{1i:T,v:"65",27:0,5a:"8u/x-8w-5S-8D",50:T,4G:T,D:1c},3m:{},3d:l(s){s=6.1A({},6.3K,s);k(s.D){k(s.50&&1v s.D!="22")s.D=6.2U(s.D);k(s.v.4P()=="2a")s.R+=((s.R.15("?")>-1)?"&":"?")+s.D}k(s.1i&&!6.4a++)6.E.1M("68");u 4z=Y;u L=1p 3w();L.6P(s.v,s.R,s.4G);k(s.D)L.3i("6R-6V",s.5a);k(s.1S)L.3i("71-4A-73",6.3m[s.R]||"77, 7a 7c 7e 4b:4b:4b 7k");L.3i("X-7m-7p","3w");k(L.7r)L.3i("7t","7u");k(s.5A)s.5A(L);k(s.1i)6.E.1M("5C",[L,s]);u 2p=l(4n){k(L&&(L.3A==4||4n=="27")){4z=T;u 11;2s{11=6.6i(L)&&4n!="27"?s.1S&&6.6d(L,s.R)?"5H":"2K":"2M";k(11!="2M"){u 3E;2s{3E=L.4l("66-4A")}2y(e){}k(s.1S&&3E)6.3m[s.R]=3E;u D=6.5D(L,s.4t);k(s.2K)s.2K(D,11);k(s.1i)6.E.1M("5P",[L,s])}H 6.3Q(s,L,11)}2y(e){11="2M";6.3Q(s,L,11,e)}k(s.1i)6.E.1M("5Q",[L,s]);k(s.1i&&!--6.4a)6.E.1M("5R");k(s.1X)s.1X(L,11);L.2p=l(){};L=1c}};L.2p=2p;k(s.27>0)5c(l(){k(L){L.7J();k(!4z)2p("27")}},s.27);u 4J=L;2s{4J.7O(s.D)}2y(e){6.3Q(s,L,1c,e)}k(!s.4G)2p();q 4J},3Q:l(s,L,11,e){k(s.2M)s.2M(L,11,e);k(s.1i)6.E.1M("6h",[L,s,e])},4a:0,6i:l(r){2s{q!r.11&&8y.8G=="42:"||(r.11>=51&&r.11<6w)||r.11==5b||6.U.2C&&r.11==Q}2y(e){}q Y},6d:l(L,R){2s{u 5K=L.4l("66-4A");q L.11==5b||5K==6.3m[R]||6.U.2C&&L.11==Q}2y(e){}q Y},5D:l(r,v){u 4p=r.4l("7A-v");u D=!v&&4p&&4p.15("L")>=0;D=v=="L"||D?r.7I:r.3L;k(v=="2d")6.4H(D);k(v=="67")3B("D = "+D);k(v=="4Q")6("<1W>").4Q(D).4T();q D},2U:l(a){u s=[];k(a.1g==2A||a.3e)6.I(a,l(){s.1h(2I(7.W)+"="+2I(7.N))});H O(u j 1B a)k(a[j]&&a[j].1g==2A)6.I(a[j],l(){s.1h(2I(j)+"="+2I(7))});H s.1h(2I(j)+"="+2I(a[j]));q s.55("&")},4H:l(D){k(1t.5B)1t.5B(D);H k(6.U.2C)1t.5c(D,0);H 3B.3s(1t,D)}})}',62,539,'||||||jQuery|this|||||||||||||if|function|||||return||||var|type||||||elem|fn|data|event|prop|length|else|each|ret|callback|xml|cur|value|for|speed|undefined|url|element|true|browser|parentNode|name||false|||status|document||apply|indexOf|className|firstChild|val|obj|options|opacity|null|result|display|css|constructor|push|global|handler|isFunction|opt|msie|expr|easing|new|style|context|test|window|nodeName|typeof|filter|arguments|args|orig|extend|in|hidden|hide|attr|queue|re|old|events|add|show|arg|trigger|table|token|target|elems|num|ifModified|tbody|replace|nodeType|div|complete|none|while|key|params|string|animate|duration|nth|height|timeout|ready|done|get|index|not|script|tb|nextSibling|remove|preventDefault|merge|now|grep|z0|fix|guid|find|onreadystatechange|pushStack|curAnim|try|block|cssFloat|first|al|custom|catch|stopPropagation|Array|exec|safari|wrap|load|sibling|el|innerHTML|encodeURIComponent|res|success|text|error|oldblock|_|has|selected|disabled|checked|insertBefore|param|curCSS|last|map|substr|trim|fx|firstNum|handlers|originalEvent|re2|domManip|mozilla|opera|childNodes|removeChild|visible|readyList|parPos|ajax|jquery|oWidth|inArray|button|setRequestHeader|step|child|styleFloat|lastModified|empty|split|String|to|toggle|call|append|toUpperCase|multiFilter|XMLHttpRequest|foundToken|9_|oid|readyState|eval|tag|getAttribute|modRes|dir|lastNum|makeArray|on|slice|ajaxSettings|responseText|returnValue|Number|isReady|second|handleError|bind|mouseover|select|tr|cloneNode|clean|defaultView|id|position|width|oHeight|file|static|swap|getComputedStyle|is|timer|inv|px|active|00|setInterval|from|handleHover|parseFloat|visibility|radio|appendChild|oldDisplay|rec|getResponseHeader|shift|isTimeout|startTime|ct|break|getAll|parents|dataType|delete|triggered|clone|self|documentElement|requestDone|Modified|src|deep|Function|end|lastToggle|async|globalEval|pos|xml2|alpha|float|setArray|matched|submit|toLowerCase|html|getElementById|fn2|evalScripts|_resort|RegExp|safariTimer|els|unload|currentStyle|processData|200|_toggle|getPropertyValue|newProp|join|state|100|password|checkbox|contentType|304|setTimeout|check|gt|appendTo|parseInt|before|after|removeAttr|max|lt|eq|prepend|previousSibling|parent|1px|contains|Date|getTime|clearInterval|image|reset|input|overflow|continue|beforeSend|execScript|ajaxSend|httpData|getElementsByTagName|tmp|parse|notmodified|webkit|_prefix|xmlRes|Math|even|rl|odd|ajaxSuccess|ajaxComplete|ajaxStop|form|handle|unshift|srcElement|pageX|dequeue|clientX|scrollLeft|nodeValue|scrollTop|unbind|sl|zoom|GET|Last|json|ajaxStart|click|__ie_init|mouseout|getScript|httpNotModified|createElement|POST|DOMContentLoaded|ajaxError|httpSuccess|prevObject|force|ol|exclude|one|settings|do|absolute|left|relative|clientHeight|clientWidth|offsetWidth|300|slideDown|thead|slideUp|tfoot|td|slideToggle|th|offsetHeight|fadeIn|htmlFor|class|fadeOut|fadeTo|readonly|readOnly|gi|match|Object|open|action|Content|getAttributeNode|tagName|slow|Type|ig|600|fast|400|concat|If|userAgent|Since|compatible|boxModel|compatMode|Thu|next|siblings|01|children|Jan|prependTo|1970|insertAfter|10000|removeAttribute|addClass|removeClass|GMT|toggleClass|Requested|lastChild|only|With|enabled|overrideMimeType|textarea|Connection|close|right|object|Top|substring|prev|content|CSS1Compat|font|weight|cos|PI|loadIfModified|navigator|responseXML|abort|body|serialize|pageY|clientY|send|textContent|cancelBubble|setAttribute|ActiveXObject|hover|fromElement|method|Microsoft|9999|toElement|relatedTarget|XMLHTTP|removeEventListener|blur|focus|resize|scroll|dblclick|mousedown|mouseup|mousemove|getIfModified|change|getJSON|keydown|post|keypress|keyup|addEventListener|write|scr|ajaxTimeout|ipt|toString|ajaxSetup|prototype|size|defer|createTextNode|reverse|loaded|application|noConflict|www|line|location|Bottom|Right|Left|padding|urlencoded|border|Width|protocol'.split('|'),0,{})); jQuery.noConflict(); + diff --git a/wp-includes/js/tinymce/tiny_mce_config.php b/wp-includes/js/tinymce/tiny_mce_config.php index 7994767..ba66a08 100644 --- a/wp-includes/js/tinymce/tiny_mce_config.php +++ b/wp-includes/js/tinymce/tiny_mce_config.php @@ -1,5 +1,6 @@ <?php @ require('../../../wp-config.php'); + cache_javascript_headers(); function wp_translate_tinymce_lang($text) { if ( ! function_exists('__') ) { diff --git a/wp-includes/link-template.php b/wp-includes/link-template.php index f576129..1f600ee 100644 --- a/wp-includes/link-template.php +++ b/wp-includes/link-template.php @@ -247,6 +247,24 @@ function get_feed_link($feed='rss2') { return apply_filters('feed_link', $output, $feed); } +function get_post_comments_feed_link($post_id = '', $feed = 'rss2') { + global $id; + + if ( empty($post_id) ) + $post_id = $id; + + if ( '' != get_option('permalink_structure') ) { + $url = trailingslashit( get_permalink() ) . 'feed'; + if ( 'rss2' != $feed ) + $url .= "/$feed"; + $url = user_trailingslashit($url); + } else { + $url = get_option('home') . "/?feed=$feed&p=$id"; + } + + return apply_filters('post_comments_feed_link', $url); +} + function edit_post_link($link = 'Edit This', $before = '', $after = '') { global $post; diff --git a/wp-includes/post-template.php b/wp-includes/post-template.php index 7a22c3e..efdc038 100644 --- a/wp-includes/post-template.php +++ b/wp-includes/post-template.php @@ -95,7 +95,7 @@ function get_the_content($more_link_text = '(more...)', $stripteaser = 0, $more_ $output .= $teaser; if ( count($content) > 1 ) { if ( $more ) { - $output .= '<a id="more-'.$id.'"></a>'.$content[1]; + $output .= '<span id="more-'.$id.'"></span>'.$content[1]; } else { $output = balanceTags($output); if ( ! empty($more_link_text) ) @@ -5,53 +5,6 @@ if (empty($wp)) { wp('feed=rdf'); } -header('Content-type: application/rdf+xml; charset=' . get_option('blog_charset'), true); -$more = 1; +require (ABSPATH . WPINC . '/feed-rdf.php'); ?> -<?php echo '<?xml version="1.0" encoding="'.get_option('blog_charset').'"?'.'>'; ?> -<!-- generator="wordpress/<?php echo $wp_version ?>" --> -<rdf:RDF - xmlns="http://purl.org/rss/1.0/" - xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" - xmlns:dc="http://purl.org/dc/elements/1.1/" - xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" - xmlns:admin="http://webns.net/mvcb/" - xmlns:content="http://purl.org/rss/1.0/modules/content/" - <?php do_action('rdf_ns'); ?> -> -<channel rdf:about="<?php bloginfo_rss("url") ?>"> - <title><?php bloginfo_rss('name') ?></title> - <link><?php bloginfo_rss('url') ?></link> - <description><?php bloginfo_rss('description') ?></description> - <dc:date><?php echo mysql2date('Y-m-d\TH:i:s\Z', get_lastpostmodified('GMT'), false); ?></dc:date> - <admin:generatorAgent rdf:resource="http://wordpress.org/?v=<?php echo $wp_version ?>"/> - <sy:updatePeriod>hourly</sy:updatePeriod> - <sy:updateFrequency>1</sy:updateFrequency> - <sy:updateBase>2000-01-01T12:00+00:00</sy:updateBase> - <?php do_action('rdf_header'); ?> - <items> - <rdf:Seq> - <?php while (have_posts()): the_post(); ?> - <rdf:li rdf:resource="<?php permalink_single_rss() ?>"/> - <?php endwhile; ?> - </rdf:Seq> - </items> -</channel> -<?php rewind_posts(); while (have_posts()): the_post(); ?> -<item rdf:about="<?php permalink_single_rss() ?>"> - <title><?php the_title_rss() ?></title> - <link><?php permalink_single_rss() ?></link> - <dc:date><?php echo mysql2date('Y-m-d\TH:i:s\Z', $post->post_date_gmt, false); ?></dc:date> - <dc:creator><?php the_author() ?></dc:creator> - <?php the_category_rss('rdf') ?> -<?php if (get_option('rss_use_excerpt')) : ?> - <description><?php the_excerpt_rss() ?></description> -<?php else : ?> - <description><?php the_content_rss('', 0, '', get_option('rss_excerpt_length'), 2) ?></description> - <content:encoded><![CDATA[<?php the_content('', 0, '') ?>]]></content:encoded> -<?php endif; ?> - <?php do_action('rdf_item'); ?> -</item> -<?php endwhile; ?> -</rdf:RDF> @@ -5,33 +5,6 @@ if (empty($wp)) { wp('feed=rss'); } -header('Content-type: text/xml; charset=' . get_option('blog_charset'), true); -$more = 1; +require (ABSPATH . WPINC . '/feed-rss.php'); ?> -<?php echo '<?xml version="1.0" encoding="'.get_option('blog_charset').'"?'.'>'; ?> -<!-- generator="wordpress/<?php echo $wp_version ?>" --> -<rss version="0.92"> -<channel> - <title><?php bloginfo_rss('name') ?></title> - <link><?php bloginfo_rss('url') ?></link> - <description><?php bloginfo_rss('description') ?></description> - <lastBuildDate><?php echo mysql2date('D, d M Y H:i:s +0000', get_lastpostmodified('GMT'), false); ?></lastBuildDate> - <docs>http://backend.userland.com/rss092</docs> - <language><?php echo get_option('rss_language'); ?></language> - <?php do_action('rss_head'); ?> - -<?php while (have_posts()) : the_post(); ?> - <item> - <title><?php the_title_rss() ?></title> -<?php if (get_option('rss_use_excerpt')) { ?> - <description><![CDATA[<?php the_excerpt_rss() ?>]]></description> -<?php } else { // use content ?> - <description><?php the_content_rss('', 0, '', get_option('rss_excerpt_length')) ?></description> -<?php } ?> - <link><?php permalink_single_rss() ?></link> - <?php do_action('rss_item'); ?> - </item> -<?php endwhile; ?> -</channel> -</rss> diff --git a/wp-rss2.php b/wp-rss2.php index 4addfc4..eb45236 100644 --- a/wp-rss2.php +++ b/wp-rss2.php @@ -5,52 +5,6 @@ if (empty($wp)) { wp('feed=rss2'); } -header('Content-type: text/xml; charset=' . get_option('blog_charset'), true); -$more = 1; +require (ABSPATH . WPINC . '/feed-rss2.php'); ?> -<?php echo '<?xml version="1.0" encoding="'.get_option('blog_charset').'"?'.'>'; ?> - -<!-- generator="wordpress/<?php bloginfo_rss('version') ?>" --> -<rss version="2.0" - xmlns:content="http://purl.org/rss/1.0/modules/content/" - xmlns:wfw="http://wellformedweb.org/CommentAPI/" - xmlns:dc="http://purl.org/dc/elements/1.1/" - <?php do_action('rss2_ns'); ?> -> - -<channel> - <title><?php bloginfo_rss('name'); ?></title> - <link><?php bloginfo_rss('url') ?></link> - <description><?php bloginfo_rss("description") ?></description> - <pubDate><?php echo mysql2date('D, d M Y H:i:s +0000', get_lastpostmodified('GMT'), false); ?></pubDate> - <generator>http://wordpress.org/?v=<?php bloginfo_rss('version'); ?></generator> - <language><?php echo get_option('rss_language'); ?></language> - <?php do_action('rss2_head'); ?> - <?php while( have_posts()) : the_post(); ?> - <item> - <title><?php the_title_rss() ?></title> - <link><?php permalink_single_rss() ?></link> - <comments><?php comments_link(); ?></comments> - <pubDate><?php echo mysql2date('D, d M Y H:i:s +0000', get_post_time('Y-m-d H:i:s', true), false); ?></pubDate> - <dc:creator><?php the_author() ?></dc:creator> - <?php the_category_rss() ?> - - <guid isPermaLink="false"><?php the_guid(); ?></guid> -<?php if (get_option('rss_use_excerpt')) : ?> - <description><![CDATA[<?php the_excerpt_rss() ?>]]></description> -<?php else : ?> - <description><![CDATA[<?php the_excerpt_rss() ?>]]></description> - <?php if ( strlen( $post->post_content ) > 0 ) : ?> - <content:encoded><![CDATA[<?php the_content() ?>]]></content:encoded> - <?php else : ?> - <content:encoded><![CDATA[<?php the_excerpt_rss() ?>]]></content:encoded> - <?php endif; ?> -<?php endif; ?> - <wfw:commentRss><?php echo comments_rss(); ?></wfw:commentRss> -<?php rss_enclosure(); ?> - <?php do_action('rss2_item'); ?> - </item> - <?php endwhile; ?> -</channel> -</rss> diff --git a/wp-settings.php b/wp-settings.php index 6ca0163..c587e38 100644 --- a/wp-settings.php +++ b/wp-settings.php @@ -156,6 +156,7 @@ if( defined( "SHORTINIT" ) && constant( "SHORTINIT" ) == true ) // stop most of require (ABSPATH . WPINC . '/functions.php'); +require (ABSPATH . WPINC . '/classes.php'); require (ABSPATH . WPINC . '/plugin.php'); require (ABSPATH . WPINC . '/default-filters.php'); include_once(ABSPATH . WPINC . '/streams.php'); @@ -175,7 +176,6 @@ $wpdb->show_errors(); require (ABSPATH . WPINC . '/formatting.php'); require (ABSPATH . WPINC . '/capabilities.php'); -require (ABSPATH . WPINC . '/classes.php'); require (ABSPATH . WPINC . '/query.php'); require (ABSPATH . WPINC . '/theme.php'); require (ABSPATH . WPINC . '/user.php'); @@ -497,9 +497,8 @@ class wp_xmlrpc_server extends IXR_Server { // If no parent_id was provided make it empty // so that it will be a top level page (no parent). - if(!isset($category["parent_id"])) { + if ( !isset($category["parent_id"]) ) $category["parent_id"] = ""; - } // If no description was provided make it empty. if(empty($category["description"])) { |