WordPress.org

Make WordPress Core

Ticket #16525: app.php-r4794-reverse.patch

File app.php-r4794-reverse.patch, 19.6 KB (added by hakre, 4 years ago)

Reverse Patch against r4794

  • app.php

    ### Eclipse Workspace Patch 1.0
    #P wordpress-trunk bare
     
    11<?php 
    2 /*  
    3  * app.php - Atom Publishing Protocol support for WordPress 
    4  * Original code by: Elias Torres, http://torrez.us/archives/2006/08/31/491/ 
    5  * Modified by: Dougal Campbell, http://dougal.gunters.org/ 
    6  * 
    7  * Version: 1.0.0-dc 
    8  */ 
    9          
    10 define('APP_REQUEST', true); 
     2// vim:sw=2:sts=2:ts=2:noet:sta:tw=200 
     3/* 
     4An Atom Publishing Protocol implementation for WordPress. 
     5Author: Elias Torres <elias@torrez.us> 
     6*/  
    117 
    12 require_once('wp-config.php'); 
     8/* 
    139 
    14 $use_querystring = 1; 
     10  Copyright 2006 Elias Torres <elias@torrez.us> 
    1511 
    16 // If using querystring, we need to put the path together manually: 
    17 if ($use_querystring) { 
    18         $_GLOBALS['use_querystring'] = $use_querystring; 
    19         $action = $_GET['action']; 
    20         $eid = (int) $_GET['eid']; 
     12  This program is free software; you can redistribute it and/or modify  
     13  it under the terms of the GNU General Public License as published by  
     14  the Free Software Foundation; either version 2 of the License, or  
     15  (at your option) any later version.  
    2116 
    22         $_SERVER['PATH_INFO'] = $action; 
     17  This program is distributed in the hope that it will be useful,  
     18  but WITHOUT ANY WARRANTY; without even the implied warranty of  
     19  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the  
     20  GNU General Public License for more details.  
     21 
     22  You should have received a copy of the GNU General Public License  
     23  along with this program; if not, write to the Free Software  
     24  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA  
     25 
     26*/ 
    2327         
    24         if ($eid) { 
    25                 $_SERVER['PATH_INFO'] .= "/$eid"; 
    26         } 
    27 } else { 
    28         $_SERVER['PATH_INFO'] = str_replace( '/app.php', '', $_SERVER['REQUEST_URI'] ); 
     28define('APP_REQUEST', true); 
     29 
     30require_once('wp-config.php'); 
     31 
     32if (!isset($PATH_INFO)) { 
     33        $PATH_INFO = substr($_SERVER['REQUEST_URI'],strlen($_SERVER['SCRIPT_NAME']),  
     34                strlen($_SERVER['REQUEST_URI'])); 
    2935} 
    3036 
    3137$app_logging = 1; 
     
    9197                global $app_logging; 
    9298                array_unshift($this->ns_contexts, array()); 
    9399 
    94                 $parser = xml_parser_create_ns(); 
     100                $parser = xml_parser_create_ns("UTF-8"); 
    95101                xml_set_object($parser, $this); 
    96102                xml_set_element_handler($parser, "start_element", "end_element"); 
    97103                xml_parser_set_option($parser,XML_OPTION_CASE_FOLDING,0); 
     
    109115                  
    110116                        if($app_logging) $contents .= $line; 
    111117 
    112                         if(!xml_parse($parser, $line)) { 
     118                        if(!xml_parse($parser, $line, feof($fp))) { 
    113119                                log_app("xml_parse_error", "line: $line"); 
    114                                 $this->error = sprintf("XML error: %s at line %d\n", 
    115                                         xml_error_string(xml_get_error_code($xml_parser)), 
    116                                         xml_get_current_line_number($xml_parser)); 
    117                                 log_app("xml_parse_error", $this->error); 
     120                                xml_parser_free($parser); 
    118121                                return false; 
    119122                        } 
    120123                } 
     
    290293                                array('GET' => 'get_posts',  
    291294                                                'POST' => 'create_post'), 
    292295                        '@/attachments/?(\d+)?@' =>  
    293                                 array('GET' => 'get_attachment',  
     296                                array('GET' => 'get_attachments',  
    294297                                                'POST' => 'create_attachment'), 
    295298                        '@/attachment/file/(\d+)@' =>  
    296299                                array('GET' => 'get_file',  
     
    308311                $path = $_SERVER['PATH_INFO']; 
    309312                $method = $_SERVER['REQUEST_METHOD']; 
    310313 
    311                 log_app('REQUEST',"$method $path\n================"); 
     314                $this->process_conditionals(); 
    312315 
    313                 //$this->process_conditionals(); 
    314  
    315316                // exception case for HEAD (treat exactly as GET, but don't output) 
    316317                if($method == 'HEAD') { 
    317318                        $this->do_output = false; 
     
    319320                } 
    320321 
    321322                // lame.  
    322                 if(strlen($path) == 0 || $path == '/') { 
     323                if(strlen($path) == 0) { 
    323324                        $path = '/service'; 
    324325                } 
    325326 
     
    346347        } 
    347348 
    348349        function get_service() { 
    349                 log_app('function','get_service()'); 
    350350                $entries_url = $this->get_entries_url(); 
    351351                $media_url = $this->get_attachments_url(); 
    352352                $accepted_content_types = join(',',$this->media_content_types); 
    353353                $introspection = <<<EOD 
    354354<service xmlns="http://purl.org/atom/app#" xmlns:atom="http://www.w3.org/2005/Atom"> 
    355355        <workspace title="WordPress Experimental Workspace"> 
    356                 <collection href="$entries_url" title="WordPress Posts"> 
     356                <collection href="$entries_url"> 
    357357                        <accept>entry</accept> 
    358358                        <atom:title>WordPress Posts</atom:title> 
    359359                </collection> 
    360                 <collection href="$media_url" title="WordPress Media"> 
     360                <collection href="$media_url"> 
    361361                        <accept>$accepted_content_types</accept> 
    362362                        <atom:title>WordPress Media</atom:title> 
    363363                </collection> 
     
    394394                $post_author = $user->ID; 
    395395                $post_title = $entry->title; 
    396396                $post_content = $entry->content; 
    397                 $post_excerpt = $entry->summary; 
    398397                $post_date = current_time('mysql'); 
    399398                $post_date_gmt = current_time('mysql', 1); 
    400399 
    401                 $post_data = compact('blog_ID', 'post_author', 'post_date', 'post_date_gmt', 'post_content', 'post_title', 'post_category', 'post_status', 'post_excerpt'); 
     400                $post_data = compact('blog_ID', 'post_author', 'post_date', 'post_date_gmt', 'post_content', 'post_title', 'post_category', 'post_status'); 
    402401 
    403402                $postID = wp_insert_post($post_data); 
    404403 
     
    408407 
    409408                $output = $this->get_entry($postID); 
    410409 
    411                 log_app('function',"create_post($postID)"); 
    412410                $this->created($postID, $output); 
    413411        } 
    414412 
     
    417415                global $entry; 
    418416                $this->set_current_entry($postID); 
    419417                $output = $this->get_entry($postID); 
    420                 log_app('function',"get_post($postID)"); 
    421418                $this->output($output); 
    422419 
    423420        } 
     
    449446 
    450447                $post_title = $parsed->title; 
    451448                $post_content = $parsed->content; 
    452                 $post_excerpt = $parsed->summary; 
    453449 
    454450                // let's not go backwards and make something draft again. 
    455451                if(!$publish && $post_status == 'draft') { 
     
    464460                        $this->internal_error('For some strange yet very annoying reason, this post could not be edited.'); 
    465461                } 
    466462 
    467                 log_app('function',"put_post($postID)"); 
    468463                $this->ok(); 
    469464        } 
    470465 
     
    477472                if(!current_user_can('edit_post', $postID)) { 
    478473                        $this->auth_required('Sorry, you do not have the right to delete this post.'); 
    479474                } 
    480                  
    481                 if ($entry['post_type'] == 'attachment') { 
    482                         $this->delete_attachment($postID);               
    483                 } else { 
    484                         $result = wp_delete_post($postID); 
    485475 
     476                $result = wp_delete_post($postID); 
     477 
    486478                        if (!$result) { 
    487479                                $this->internal_error('For some strange yet very annoying reason, this post could not be deleted.'); 
    488480                        } 
    489481 
    490                         log_app('function',"delete_post($postID)"); 
    491482                        $this->ok(); 
    492                 } 
    493  
    494483        } 
    495          
    496         function get_attachment($postID = NULL) { 
    497484 
    498                 global $entry; 
    499                 if (!isset($postID)) { 
    500                         $this->get_attachments(); 
    501                 } else { 
    502                         $this->set_current_entry($postID); 
    503                         $output = $this->get_entry($postID, 'attachment'); 
    504                         log_app('function',"get_attachment($postID)"); 
    505                         $this->output($output); 
    506                 } 
    507         } 
    508  
    509485        function create_attachment() { 
    510486 
    511487                $type = $this->get_accepted_content_type(); 
     
    519495                        $bits .= fread($fp, 4096); 
    520496                } 
    521497                fclose($fp); 
    522                  
    523                 $slug = ''; 
    524                 if ( isset( $_SERVER['HTTP_SLUG'] ) ) 
    525                         $slug = sanitize_file_name( $_SERVER['HTTP_SLUG'] ); 
    526                 elseif ( isset( $_SERVER['HTTP_TITLE'] ) ) 
    527                         $slug = sanitize_file_name( $_SERVER['HTTP_TITLE'] ); 
    528                 elseif ( empty( $slug ) ) // just make a random name 
    529                         $slug = substr( md5( uniqid( microtime() ) ), 0, 7);; 
    530                 $ext = preg_replace( '|.*/([a-z]+)|', '$1', $_SERVER['CONTENT_TYPE'] ); 
    531                 $slug = "$slug.$ext"; 
    532                 $file = wp_upload_bits( $slug, NULL, $bits); 
    533498 
     499                $file = wp_upload_bits('noah.jpg',NULL,$bits); 
     500 
    534501                $url = $file['url']; 
    535502                $file = $file['file']; 
    536503                $filename = basename($file); 
    537504 
    538                 $header = apply_filters('wp_create_file_in_uploads', $file); // replicate 
    539  
    540505                // Construct the attachment array 
    541506                $attachment = array( 
    542                         'post_title' => $slug, 
    543                         'post_content' => $slug, 
     507                        'post_title' => $imgtitle ? $imgtitle : $filename, 
     508                        'post_content' => $descr, 
    544509                        'post_status' => 'attachment', 
    545510                        'post_parent' => 0, 
    546511                        'post_mime_type' => $type, 
     
    557522                $output = $this->get_entry($postID, 'attachment'); 
    558523 
    559524                $this->created($postID, $output, 'attachment'); 
    560                 log_app('function',"create_attachment($postID)"); 
    561525        } 
    562526 
    563527        function put_attachment($postID) { 
     
    596560                        $this->internal_error('For some strange yet very annoying reason, this post could not be edited.'); 
    597561                } 
    598562 
    599                 log_app('function',"put_attachment($postID)"); 
    600563                $this->ok(); 
    601564        } 
    602565 
    603566        function delete_attachment($postID) { 
    604                 log_app('function',"delete_attachment($postID). File '$location' deleted."); 
    605567 
    606568                // check for not found 
    607569                global $entry; 
     
    623585                        $this->internal_error('For some strange yet very annoying reason, this post could not be deleted.'); 
    624586                } 
    625587 
    626                 log_app('function',"delete_attachment($postID). File '$location' deleted."); 
    627588                $this->ok(); 
    628589        } 
    629590 
     
    651612                } 
    652613                fclose($fp); 
    653614 
    654                 log_app('function',"get_file($postID)"); 
    655615                $this->ok(); 
    656616        } 
    657617 
     
    685645                fclose($fp); 
    686646                fclose($localfp); 
    687647         
    688                 log_app('function',"put_file($postID)"); 
    689648                $this->ok(); 
    690649        } 
    691650 
    692651        function get_entries_url($page = NULL) { 
    693                 global $use_querystring; 
    694652                $url = get_bloginfo('url') . '/' . $this->script_name; 
    695                 if ($use_querystring) { 
    696                         $url .= '?action=/' . $this->ENTRIES_PATH; 
    697                         if(isset($page) && is_int($page)) { 
    698                                 $url .= "&eid=$page"; 
    699                         } 
    700                 } else { 
    701653                        $url .= '/' . $this->ENTRIES_PATH; 
    702654                        if(isset($page) && is_int($page)) { 
    703655                                $url .= "/$page"; 
    704656                        } 
    705                 } 
    706657                return $url; 
    707658        } 
    708659 
     
    712663        } 
    713664 
    714665        function get_attachments_url($page = NULL) { 
    715                 global $use_querystring; 
    716666                $url = get_bloginfo('url') . '/' . $this->script_name; 
    717                 if ($use_querystring) { 
    718                         $url .= '?action=/' . $this->MEDIA_PATH; 
    719                         if(isset($page) && is_int($page)) { 
    720                                 $url .= "&eid=$page"; 
    721                         } 
    722                 } else { 
    723667                        $url .= '/' . $this->MEDIA_PATH; 
    724668                        if(isset($page) && is_int($page)) { 
    725669                                $url .= "/$page"; 
    726670                        } 
    727                 } 
    728671                return $url; 
    729672        } 
    730673 
     
    735678 
    736679 
    737680        function get_entry_url($postID = NULL) { 
    738                 global $use_querystring; 
    739681                if(!isset($postID)) { 
    740682                        global $post; 
    741683                        $postID = $post->ID; 
    742684                } 
    743                  
    744                 if ($use_querystring) { 
    745                         $url = get_bloginfo('url') . '/' . $this->script_name . '?action=/' . $this->ENTRY_PATH . "&eid=$postID"; 
    746                 } else { 
    747                         $url = get_bloginfo('url') . '/' . $this->script_name . '/' . $this->ENTRY_PATH . "/$postID"; 
    748                 } 
    749685 
    750                 log_app('function',"get_entry_url() = $url"); 
     686                $url = get_bloginfo('url') . '/' . $this->script_name . '/' . $this->ENTRY_PATH . "/$postID"; 
    751687                return $url; 
    752688        } 
    753689 
     
    757693        } 
    758694 
    759695        function get_media_url($postID = NULL) { 
    760                 global $use_querystring; 
    761696                if(!isset($postID)) { 
    762697                        global $post; 
    763698                        $postID = $post->ID; 
    764699                } 
    765                  
    766                 if ($use_querystring) { 
    767                         $url = get_bloginfo('url') . '/' . $this->script_name . '?action=/' . $this->MEDIA_SINGLE_PATH ."&eid=$postID"; 
    768                 } else { 
    769                         $url = get_bloginfo('url') . '/' . $this->script_name . '/' . $this->MEDIA_SINGLE_PATH ."/$postID"; 
    770                 } 
    771700 
    772                 log_app('function',"get_media_url() = $url"); 
     701                        $url = get_bloginfo('url') . '/' . $this->script_name . '/' . $this->MEDIA_SINGLE_PATH ."/$postID"; 
    773702                return $url; 
    774703        } 
    775704 
     
    780709 
    781710        function set_current_entry($postID) { 
    782711                global $entry; 
    783                 log_app('function',"set_current_entry($postID)"); 
    784712 
    785713                if(!isset($postID)) { 
    786                         // $this->bad_request(); 
    787                         $this->not_found(); 
     714                        $this->bad_request(); 
    788715                } 
    789716 
    790717                $entry = wp_get_single_post($postID,ARRAY_A); 
     
    797724 
    798725        function get_posts_count() { 
    799726                global $wpdb; 
    800                 log_app('function',"get_posts_count()"); 
    801727                return $wpdb->get_var("SELECT COUNT(*) FROM $wpdb->posts WHERE post_date_gmt < '" . gmdate("Y-m-d H:i:s",time()) . "'"); 
    802728        } 
    803729 
    804730 
    805         function get_posts($page = 1, $post_type = 'post') { 
    806                         log_app('function',"get_posts($page, '$post_type')"); 
    807                         $feed = $this->get_feed($page, $post_type); 
    808                         $this->output($feed); 
     731        function get_posts($page = 1) { 
     732                        $feed = $this->get_feed($page); 
     733                        $this->output($feed, $do_output); 
    809734        } 
    810735 
    811         function get_attachments($page = 1, $post_type = 'attachment') { 
    812                         log_app('function',"get_attachments($page, '$post_type')"); 
    813                         $feed = $this->get_feed($page, $post_type); 
    814                         $this->output($feed); 
    815         } 
    816  
    817736        function get_feed($page = 1, $post_type = 'post') { 
    818                 log_app('function',"get_feed($page, '$post_type')"); 
     737                log_app("get_feed", $post_type); 
    819738                ob_start(); 
    820739 
    821740                if(!isset($page)) { 
     
    826745                $count = get_settings('posts_per_rss');  
    827746                $query = "paged=$page&posts_per_page=$count&order=DESC"; 
    828747                if($post_type == 'attachment') { 
    829                         $query .= "&post_type=$post_type"; 
     748                        $query .= "&show_post_type=$post_type"; 
    830749                } 
    831750                query_posts($query); 
    832751                global $post; 
    833752 
     753                $feed_update = get_lastpostmodified('GMT') ? get_lastpostmodified('GMT') : current_time('mysql', 1); 
    834754                $total_count = $this->get_posts_count(); 
    835755                $last_page = (int) ceil($total_count / $count); 
    836756                $next_page = (($page + 1) > $last_page) ? NULL : $page + 1; 
    837757                $prev_page = ($page - 1) < 1 ? NULL : $page - 1;  
    838                 $last_page = ((int)$last_page == 1 || (int)$last_page == 0) ? NULL : (int) $last_page; 
     758                $last_page = ((int)$last_page <= 1) ? NULL : (int) $last_page; 
    839759?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:app="http://purl.org/atom/app#" xml:lang="<?php echo get_option('rss_language'); ?>"> 
    840760<id><?php $this->the_entries_url() ?></id> 
    841 <updated><?php echo mysql2date('Y-m-d\TH:i:s\Z', get_lastpostmodified('GMT')); ?></updated> 
     761<updated><?php echo mysql2date('Y-m-d\TH:i:s\Z', $feed_update); ?></updated> 
    842762<title type="text"><?php bloginfo_rss('name') ?></title> 
    843763<subtitle type="text"><?php bloginfo_rss("description") ?></subtitle> 
    844764<link rel="first" type="application/atom+xml" href="<?php $this->the_entries_url() ?>" /> 
     
    851771<link rel="last" type="application/atom+xml" href="<?php $this->the_entries_url($last_page) ?>" /> 
    852772<link rel="self" type="application/atom+xml" href="<?php $this->the_entries_url() ?>" /> 
    853773<rights type="text">Copyright <?php echo mysql2date('Y', get_lastpostdate('blog')); ?></rights> 
    854 <generator uri="http://wordpress.com/" version="1.0.0-dc">WordPress.com Atom API</generator> 
     774<generator uri="http://wordpress.org/" version="<?php bloginfo_rss('version'); ?>">WordPress APP</generator> 
    855775<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?> 
    856776<entry> 
    857777                <id><?php the_guid(); ?></id> 
    858                 <title type="html"><![CDATA[<?php the_title() ?>]]></title> 
     778                <title type="html"><![CDATA[<?php the_title_rss() ?>]]></title> 
    859779                <updated><?php echo get_post_modified_time('Y-m-d\TH:i:s\Z', true); ?></updated> 
    860780                <published><?php echo get_post_time('Y-m-d\TH:i:s\Z', true); ?></published> 
    861781                <app:control> 
     
    878798        <?php foreach(get_the_category() as $category) { ?> 
    879799         <category scheme="<?php bloginfo_rss('home') ?>" term="<?php echo $category->cat_name?>" /> 
    880800        <?php } ?>   <summary type="html"><![CDATA[<?php the_excerpt_rss(); ?>]]></summary> 
    881         <?php if ( strlen( $post->post_content ) ) : ?> 
    882         <content type="html"><?php echo get_the_content('', 0, '') ?></content> 
    883 <?php endif; ?> 
    884801        </entry> 
    885802<?php 
    886803        endwhile;  
     
    889806<?php  
    890807                $feed = ob_get_contents(); 
    891808                ob_end_clean(); 
     809                log_app("get_feed", $feed); 
    892810                return $feed; 
    893811        } 
    894812 
    895813        function get_entry($postID, $post_type = 'post') { 
    896                 log_app('function',"get_entry($postID, '$post_type')"); 
    897814                ob_start(); 
    898                 global $posts, $post, $wp_query; 
     815                global $post; 
    899816                switch($post_type) { 
    900817                        case 'post': 
    901818                                $varname = 'p'; 
     
    909826<entry xmlns="http://www.w3.org/2005/Atom" xmlns:app="http://purl.org/atom/app#" xml:lang="<?php echo get_option('rss_language'); ?>"> 
    910827        <id><?php the_guid(); ?></id> 
    911828        <title type="html"><![CDATA[<?php the_title_rss() ?>]]></title> 
    912  
    913829        <updated><?php echo get_post_modified_time('Y-m-d\TH:i:s\Z', true); ?></updated> 
    914830        <published><?php echo get_post_time('Y-m-d\TH:i:s\Z', true); ?></published> 
    915831        <app:control> 
     
    920836                <email><?php the_author_email()?></email> 
    921837                <uri><?php the_author_url()?></uri> 
    922838        </author> 
    923 <?php if($post->post_type == 'attachment') { ?> 
     839<?php if($post->post_status == 'attachment') { ?> 
    924840        <link rel="edit" href="<?php $this->the_entry_url() ?>" /> 
    925841        <link rel="edit-media" href="<?php $this->the_media_url() ?>" /> 
    926842        <content type="<?php echo $post->post_mime_type ?>" src="<?php the_guid(); ?>"/> 
     
    933849        <summary type="html"><![CDATA[<?php the_excerpt_rss(); ?>]]></summary> 
    934850<?php } 
    935851        if ( strlen( $post->post_content ) ) : ?> 
    936         <content type="html"><?php echo get_the_content('', 0, '') ?></content> 
     852        <content type="html"><![CDATA[<?php echo get_the_content('', 0, '') ?>]]></content> 
    937853<?php endif; ?> 
    938854</entry> 
    939855<?php 
     
    945861                endif; 
    946862                ob_end_clean(); 
    947863 
    948                 log_app('get_entry returning:',$entry); 
     864                log_app("get_entry", $entry); 
    949865                return $entry;  
    950866        } 
    951867 
    952868        function ok() {  
    953                 log_app('Status','200: OK'); 
    954869                header('Content-Type: text/plain'); 
    955870                status_header('200'); 
    956871                exit; 
    957872        } 
    958873 
    959         function no_content() {  
    960                 log_app('Status','204: No Content'); 
    961                 header('Content-Type: text/plain'); 
    962                 status_header('204'); 
    963                 echo "Deleted."; 
    964                 exit; 
    965         } 
    966  
    967874        function internal_error($msg = 'Internal Server Error') { 
    968                 log_app('Status','500: Server Error'); 
    969875                header('Content-Type: text/plain'); 
    970876                status_header('500'); 
    971877                echo $msg; 
     
    973879        } 
    974880 
    975881        function bad_request() { 
    976                 log_app('Status','400: Bad Request'); 
    977882                header('Content-Type: text/plain'); 
    978883                status_header('400'); 
    979884                exit; 
    980885        } 
    981886 
    982887        function length_required() { 
    983                 log_app('Status','411: Length Required'); 
    984888                header("HTTP/1.1 411 Length Required"); 
    985889                header('Content-Type: text/plain'); 
    986890                status_header('411'); 
     
    988892        } 
    989893 
    990894        function invalid_media() { 
    991                 log_app('Status','415: Unsupported Media Type'); 
    992895                header("HTTP/1.1 415 Unsupported Media Type"); 
    993896                header('Content-Type: text/plain'); 
    994897                exit; 
    995898        } 
    996899         
    997900        function not_found() { 
    998                 log_app('Status','404: Not Found'); 
    999901                header('Content-Type: text/plain'); 
    1000902                status_header('404'); 
    1001903                exit; 
    1002904        } 
    1003905 
    1004906        function not_allowed($allow) { 
    1005                 log_app('Status','405: Not Allowed'); 
    1006907                header('Allow: ' . join(',', $allow)); 
    1007908                status_header('405'); 
    1008909                exit; 
    1009910        } 
    1010911 
    1011912        function client_error($msg = 'Client Error') { 
    1012                 log_app('Status','400: Client Errir'); 
    1013                 header('Content-Type: text/plain'); 
    1014913                status_header('400'); 
     914                header('Content-Type: text/plain'); 
     915                header('Status: ' . $msg); 
     916                echo $msg; 
    1015917                exit; 
    1016918        } 
    1017919         
    1018920        function created($post_ID, $content, $post_type = 'post') { 
    1019                 global $use_querystring; 
    1020                 log_app('created()::$post_ID',"$post_ID, $post_type"); 
     921                log_app('created()::$post_ID',"$post_ID"); 
    1021922                $edit = $this->get_entry_url($post_ID); 
    1022923                switch($post_type) { 
    1023924                        case 'post': 
    1024925                                $ctloc = $this->get_entry_url($post_ID); 
    1025926                                break; 
    1026927                        case 'attachment': 
    1027                                 if ($use_querystring) { 
    1028                                         $edit = get_bloginfo('url') . '/' . $this->script_name . "?action=/attachments&eid=$post_ID"; 
    1029                                 } else { 
    1030                                         $edit = get_bloginfo('url') . '/' . $this->script_name . "/attachments/$post_ID"; 
    1031                                 } 
    1032928                                break; 
    1033929                } 
    1034930                header('Content-Type: application/atom+xml'); 
     
    1041937        } 
    1042938 
    1043939        function auth_required($msg) { 
    1044                 log_app('Status','401: Auth Required'); 
    1045940                nocache_headers(); 
    1046941                header('WWW-Authenticate: Basic realm="WordPress Atom Protocol"'); 
    1047                 header('WWW-Authenticate: Form action="' . get_settings('siteurl') . '/wp-login.php"', false);  
    1048942                header("HTTP/1.1 401 $msg"); 
    1049943                header('Status: ' . $msg); 
    1050                 header('Content-Type: plain/text'); 
     944                header('Content-Type: text/plain'); 
    1051945                echo $msg; 
    1052946                exit; 
    1053947        } 
     
    1062956                        header('Date: '. date('r')); 
    1063957                        if($this->do_output) 
    1064958                                echo $xml; 
    1065                         log_app('function', "output:\n$xml"); 
    1066959                        exit; 
    1067960        } 
    1068961 
     
    1081974        } 
    1082975 
    1083976 
    1084  
    1085977        /* 
    1086978         * Access credential through various methods and perform login 
    1087979         */ 
     
    11131005                if (!empty($login_data) && wp_login($login_data['login'], $login_data['password'], $already_md5)) { 
    11141006                         $current_user = new WP_User(0, $login_data['login']); 
    11151007                         wp_set_current_user($current_user->ID); 
    1116                         log_app("authenticate()",$login_data['login']); 
    11171008                } 
    11181009        } 
    11191010