summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--app.php147
-rw-r--r--wp-admin/index.php1
-rw-r--r--wp-admin/page-new.php1
-rw-r--r--wp-admin/page.php1
-rw-r--r--wp-admin/post-new.php1
-rw-r--r--wp-atom.php43
-rw-r--r--wp-commentsrss2.php81
-rw-r--r--wp-content/themes/classic/comments-popup.php2
-rw-r--r--wp-content/themes/default/comments-popup.php2
-rw-r--r--wp-content/themes/default/comments.php10
-rw-r--r--wp-includes/feed-atom-comments.php91
-rw-r--r--wp-includes/feed-atom.php45
-rw-r--r--wp-includes/feed-rdf.php51
-rw-r--r--wp-includes/feed-rss.php31
-rw-r--r--wp-includes/feed-rss2-comments.php83
-rw-r--r--wp-includes/feed-rss2.php50
-rw-r--r--wp-includes/feed.php15
-rw-r--r--wp-includes/functions.php37
-rw-r--r--wp-includes/general-template.php4
-rw-r--r--wp-includes/gettext.php4
-rw-r--r--wp-includes/js/jquery/jquery.js3
-rw-r--r--wp-includes/js/tinymce/tiny_mce_config.php1
-rw-r--r--wp-includes/link-template.php18
-rw-r--r--wp-includes/post-template.php2
-rw-r--r--wp-rdf.php49
-rw-r--r--wp-rss.php29
-rw-r--r--wp-rss2.php48
-rw-r--r--wp-settings.php2
-rw-r--r--xmlrpc.php3
29 files changed, 529 insertions, 326 deletions
diff --git a/app.php b/app.php
index 244156b..4d868bb 100644
--- a/app.php
+++ b/app.php
@@ -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 .= "&amp;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 .= "&amp;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 . "&amp;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 ."&amp;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&amp;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&amp;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&amp;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) )
diff --git a/wp-rdf.php b/wp-rdf.php
index f64709e..8a03407 100644
--- a/wp-rdf.php
+++ b/wp-rdf.php
@@ -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>
diff --git a/wp-rss.php b/wp-rss.php
index c10b065..8853cf4 100644
--- a/wp-rss.php
+++ b/wp-rss.php
@@ -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');
diff --git a/xmlrpc.php b/xmlrpc.php
index aede600..67189d6 100644
--- a/xmlrpc.php
+++ b/xmlrpc.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"])) {