WordPress.org

Make WordPress Core

Ticket #7732: press-this_9-27-08.patch

File press-this_9-27-08.patch, 4.2 KB (added by noel, 7 years ago)

Important fixes for adding media.

  • wp-admin/press-this.php

     
    117117        case 'video': ?> 
    118118                <script type="text/javascript" charset="utf-8">  
    119119                        jQuery('.select').click(function() { 
    120                                 append_editor(jQuery('#embed-code').html()); 
     120                                append_editor(jQuery('#embed-code').val()); 
    121121                        }); 
    122122                        jQuery('.close').click(function() { 
    123123                                jQuery('#extra_fields').hide(); 
     
    125125                </script> 
    126126                <h2><label for="embed-code"><?php _e('Embed Code') ?></label></h2> 
    127127                <div class="titlewrap" > 
    128                         <textarea name="embed-code" id="embed-code" rows="8" cols="40"><?php echo format_to_edit($selection); ?></textarea> 
     128                        <textarea name="embed-code" id="embed-code" rows="8" cols="40"><?php echo $selection; ?></textarea> 
    129129 
    130130                </div> 
    131131                <p id="options"><a href="#" class="select button"><?php _e('Insert Video'); ?></a> <a href="#" class="close button"><?php _e('Cancel'); ?></a></p> 
     
    177177                <?php break; 
    178178        case 'photo_images': 
    179179                function get_images_from_uri($uri) { 
    180                         if( preg_match('/\.(jpg|jpe|jpeg|png|gif)/', $uri) && !strpos($uri,'blogger.com') ) 
     180                        if( preg_match('/\.(jpg|jpe|jpeg|png|gif)$/', $uri) && !strpos($uri,'blogger.com') ) 
    181181                                return "'".$uri."'"; 
    182182 
    183183                        $content = wp_remote_fopen($uri); 
    184184                        if ( false === $content ) return ''; 
    185  
     185                 
    186186                        $host = parse_url($uri); 
    187187 
    188188                        $pattern = '/<img ([^>]*)src=(\"|\')([^<>]+?\.(png|jpeg|jpg|jpe|gif))[^<>\'\"]*(\2)([^>\/]*)\/*>/is'; 
     
    192192 
    193193                        $sources = array(); 
    194194                        foreach ($matches[3] as $src) { 
     195                                error_log($src); 
    195196                                // if no http in url 
    196197                                if(strpos($src, 'http') === false) 
    197198                                        // if it doesn't have a relative uri 
     
    257258                                if(length == 0) length = 1; 
    258259                                jQuery('.photolist').append('<input name="photo_src[' + length + ']" value="' + img +'" type="hidden"/>'); 
    259260                                jQuery('.photolist').append('<input name="photo_description[' + length + ']" value="' + desc +'" type="hidden"/>'); 
    260                                 append_editor("\n\n" + '<p style="text-align: center;"><a href="<?php echo urlencode($url); ?>"><img src="' + img +'" alt="' + desc + '" /></a></p>'); 
     261                                insert_editor("\n\n" + '<p style="text-align: center;"><a href="<?php echo $url; ?>"><img src="' + img +'" alt="' + desc + '" /></a></p>'); 
    261262                        } 
    262                         tinyMCE.activeEditor.resizeToContent(); 
     263                        /*tinyMCE.activeEditor.resizeToContent();*/ 
    263264                        return false; 
    264265                } 
    265266 
     
    342343                                remove_linebreaks : true, 
    343344                                accessibility_focus : false, 
    344345                                tab_focus : ":next", 
    345                                 plugins : "safari,inlinepopups, media", 
     346                                plugins : "safari, inlinepopups, media", 
    346347                                entities : "38,amp,60,lt,62,gt", 
    347348                                force_p_newlines : true, 
    348349                                save_callback : 'switchEditors.saveCallback' 
     
    372373                if ( '' == text || '<p></p>' == text ) text = '<p><br /></p>'; 
    373374                if ( tinyMCE.activeEditor ) tinyMCE.execCommand('mceSetContent', false, text); 
    374375        } 
    375  
     376        function insert_editor(text) { 
     377                if ( '' != text && tinyMCE.activeEditor ) tinyMCE.execCommand('mceInsertContent', false, '<p>' + tinymce.DOM.decode(text) + '</p>'); 
     378        } 
    376379        function append_editor(text) { 
    377                 if ( '' != text && tinyMCE.activeEditor ) tinyMCE.execCommand('mceSetContent', false, tinyMCE.activeEditor.getContent({format : 'raw'}) 
    378                  + '<p>' + tinymce.DOM.decode(text) + '</p>'); 
     380                if ( '' != text && tinyMCE.activeEditor ) tinyMCE.execCommand('mceSetContent', false, tinyMCE.activeEditor.getContent({format : 'raw'}) + '<p>' + text + '</p>'); 
    379381                tinyMCE.execCommand('mceCleanup'); 
    380382        } 
    381383 
     
    532534                                <h2 id="content_type"><label for="content"><?php _e('Post') ?></label></h2> 
    533535                         
    534536                                <div class="editor-container"> 
    535                                         <textarea name="content" id="content" style="width:100%;" class="mceEditor" rows="15"><?php if ($selection) { echo wp_richedit_pre($selection); } ?><a href="<?php echo $url ?>"><?php echo $title; ?></a><?php if($selection) echo '.'; ?></textarea> 
     537                                        <textarea name="content" id="content" style="width:100%;" class="mceEditor" rows="15"><?php if ($selection) { echo wp_richedit_pre($selection); } ?><p>via <a href="<?php echo $url ?>"><?php echo $title; ?></a></p><?php if($selection) echo '.'; ?></textarea> 
    536538                                </div> 
    537539                        </div> 
    538540                </div>