WordPress.org

Make WordPress Core

Ticket #6813: press-this-6-23-4am.diff

File press-this-6-23-4am.diff, 18.4 KB (added by noel, 7 years ago)

This patch fixes problems with wp_error the photo tab and some js issues dealing with cross-browser implementation.

  • press-this.php

     
    3030                                # see if files exist in content - we don't want to upload non-used selected files. 
    3131                                preg_match('/'.$quoted.'/', $_REQUEST['content'], $matches[0]); 
    3232                                if($matches[0]) 
    33                                         media_sideload_image($data, $post_ID, $_REQUEST['photo_description'][$key]);     
     33                                        $upload = media_sideload_image($data, $post_ID, $_REQUEST['photo_description'][$key]);   
    3434                        } 
    3535                        $content = $_REQUEST['content']; 
    3636                        break; 
     
    4545        $quick['post_content'] = str_replace('<br />', "\n", preg_replace('/<\/?p>/','',$content)); 
    4646 
    4747        #error handling for $post 
    48         if ( is_wp_error($post_ID) ) { 
     48        if ( is_wp_error($post_ID)) { 
    4949                wp_die($id); 
    5050                wp_delete_post($post_ID); 
    51  
    5251        #error handling for media_sideload 
     52        } elseif ( is_wp_error($upload)) { 
     53                wp_die($upload); 
     54                wp_delete_post($post_ID); 
    5355        } else {         
    5456                $quick['ID'] = $post_ID; 
    5557                wp_update_post($quick); 
     
    7880        ?> 
    7981        </head> 
    8082        <body class="press-this"> 
     83                 
    8184                <div id="message" class="updated fade"><p><strong><?php _e('Your post has been saved.'); ?></strong> <a onclick="window.opener.location.replace(this.href); window.close();" href="<?php echo get_permalink( $post_ID); ?>"><?php _e('View post'); ?></a> | <a href="post.php?action=edit&amp;post=<?php echo $post_ID; ?>" onclick="window.opener.location.replace(this.href); window.close();"><?php _e('Edit post'); ?></a> | <a href="#" onclick="window.close();">Close Window</a></p></div> 
    8285                 
    8386                <div id="footer"> 
     
    110113$image = $_GET['i']; 
    111114 
    112115if($_REQUEST['ajax'] == 'thickbox') { ?> 
     116        <script type="text/javascript" charset="utf-8"> 
     117                jQuery('.cancel').click(function() { 
     118                        tb_remove(); 
     119                }); 
     120                 
     121                jQuery('.select').click(function() { 
     122                        image_selector(); 
     123                }); 
     124        </script> 
    113125        <h3 id="title"><label for="post_title"><?php _e('Description') ?></label></h3> 
    114126        <div class="titlewrap"> 
    115127                <input id="this_photo_description" name="photo_description" class="text" onkeypress="if(event.keyCode==13) image_selector();" value="<?php echo attribute_escape($title);?>"/> 
     
    123135} 
    124136 
    125137if($_REQUEST['ajax'] == 'thickbox_url') { ?> 
     138        <script type="text/javascript" charset="utf-8"> 
     139                jQuery('.cancel').click(function() { 
     140                        tb_remove(); 
     141                }); 
     142                 
     143                jQuery('.select').click(function() { 
     144                        image_selector(); 
     145                }); 
     146        </script> 
    126147        <h3 id="title"><label for="post_title"><?php _e('URL') ?></label></h3> 
    127148        <div class="titlewrap"> 
    128149                <input id="this_photo" name="this_photo" class="text" onkeypress="if(event.keyCode==13) image_selector();" /> 
     
    181202} 
    182203 
    183204if($_REQUEST['ajax'] == 'photo_js') { ?> 
    184  
    185                         tb_init('a.thickbox, area.thickbox, input.thickbox'); //pass where to apply thickbox 
     205         
     206         
     207        // gather images and load some default JS 
     208         
     209        var last = null 
     210        var img, img_tag, aspect, w, h, skip, i, strtoappend = ""; 
     211        var my_src = eval( 
     212                jQuery.ajax({ 
     213                        type: "GET", 
     214                        url: "<?php echo clean_url($_SERVER['PHP_SELF']); ?>", 
     215                        cache : false, 
     216                        async : false, 
     217                        data: "ajax=photo_images&u=<?php echo urlencode($url); ?>", 
     218                        dataType : "script" 
     219                }).responseText 
     220        ); 
     221         
     222        for (i = 0; i < my_src.length; i++) { 
     223                img = new Image();  
     224                img.src = my_src[i];  
     225                img_attr = 'id="img' + i + '"';  
     226                skip = false; 
     227                if (img.width && img.height) { 
     228                        if (img.width * img.height < 2500)  
     229                                skip = true; 
     230                        aspect = img.width / img.height; 
     231                        scale = (aspect > 1) ? (75 / img.width) : (75 / img.height); 
    186232                         
    187                         function image_selector() { 
    188                                 desc = jQuery('#this_photo_description').val(); 
    189                                 src = jQuery('#this_photo').val(); 
    190                                 pick(src, desc); 
    191                                 tb_remove(); 
    192                                 return false; 
    193                         } 
     233                        w = img.width; 
     234                        h = img.height; 
    194235                         
    195                         jQuery(document).ready(function() { 
    196                                 jQuery('#this_photo').focus(); 
    197  
    198                                 jQuery('.cancel').click(function() { 
    199                                         tb_remove(); 
    200                                 }); 
    201                                  
    202                                 jQuery('.select').click(function() { 
    203                                         image_selector(); 
    204                                 }); 
    205                                  
    206                                 jQuery('#photo_add_url').attr('href', '?ajax=thickbox_url&height=200&width=500'); 
    207                                  
    208                         }); 
    209                          
    210                          
    211                         function pick(img, desc) { 
    212                                 if (img) {  
    213                                         length = jQuery('.photolist input').length; 
    214                                         if(length == 0) length = 1; 
    215                                         jQuery('.photolist').append('<input name="photo_src[' + length + ']" value="' + img +'" type="hidden"/>'); 
    216                                         jQuery('.photolist').append('<input name="photo_description[' + length + ']" value="' + desc +'" type="hidden"/>'); 
    217                                         append_editor('<img src="' + img +'" alt="' + desc + '" />'); } 
    218                                         tinyMCE.activeEditor.resizeToContent(); 
    219                                 return false; 
     236                        if (scale < 1) { 
     237                                w = parseInt(img.width * scale); 
     238                                h = parseInt(img.height * scale); 
    220239                        } 
    221  
    222                         var last = null 
    223                         var my_src, img, img_tag, aspect, w, h, skip, i, strtoappend = ""; 
    224                         var my_src = eval( 
    225                         jQuery.ajax({ 
    226                                 type: "GET", 
    227                                 url: "<?php echo clean_url($_SERVER['PHP_SELF']); ?>", 
    228                                 cache : false, 
    229                                 async : false, 
    230                                 data: "ajax=photo_images&u=<?php echo urlencode($url); ?>", 
    231                                 dataType : "script" 
    232                                 }).responseText); 
    233  
    234                         for (i = 0; i < my_src.length; i++) { 
    235                                 img = new Image(); img.src = my_src[i]; img_attr = 'id="img' + i; skip = false; 
    236  
    237                                 if (img.width && img.height) { 
    238                                         if (img.width * img.height < 2500)  
    239                                                 skip = true; 
    240                                         aspect = img.width / img.height; 
    241                                         scale = (aspect > 1) ? (75 / img.width) : (75 / img.height); 
    242                                          
    243                                         if (scale < 1) { 
    244                                                 w = parseInt(img.width * scale); 
    245                                                 h = parseInt(img.height * scale); 
    246                                         } else { 
    247                                                 w = img.width; 
    248                                                 h = img.height; 
    249                                         } 
    250                                         img_attr += ' style="width: ' + w + 'px; height: ' + h + 'px;"'; 
    251                                 } 
    252  
    253                                 if (!skip) strtoappend += '<a href="?ajax=thickbox&amp;i=' + img.src + '&amp;u=<?php echo $url; ?>&amp;height=400&amp;width=500" title="" class="thickbox"><img src="' + img.src + '" ' + img_attr + '/></a>'; 
    254  
    255                         } 
    256                         jQuery('#img_container').html(strtoappend); 
    257  
     240                        img_attr += ' style="width: ' + w + 'px; height: ' + h + 'px;"'; 
     241                } 
     242                if (!skip) strtoappend += '<a href="?ajax=thickbox&amp;i=' + img.src + '&amp;u=<?php echo $url; ?>&amp;height=400&amp;width=500" title="" class="thickbox"><img src="' + img.src + '" ' + img_attr + '/></a>'; 
     243        } 
     244         
     245        function pick(img, desc) { 
     246                if (img) {  
     247                        length = jQuery('.photolist input').length; 
     248                        if(length == 0) length = 1; 
     249                        jQuery('.photolist').append('<input name="photo_src[' + length + ']" value="' + img +'" type="hidden"/>'); 
     250                        jQuery('.photolist').append('<input name="photo_description[' + length + ']" value="' + desc +'" type="hidden"/>'); 
     251                        append_editor('<img src="' + img +'" alt="' + desc + '" />'); 
     252                } 
     253                tinyMCE.activeEditor.resizeToContent(); 
     254                return false; 
     255        } 
     256         
     257        function image_selector() { 
     258                tb_remove(); 
     259                desc = jQuery('#this_photo_description').val(); 
     260                src = jQuery('#this_photo').val(); 
     261                pick(src, desc); 
     262                return false; 
     263        } 
     264         
     265        jQuery(document).ready(function() { 
     266                jQuery('#img_container').html(strtoappend); 
     267                jQuery('#photo_add_url').attr('href', '?ajax=thickbox_url&height=200&width=500'); 
     268                tb_init('a.thickbox, area.thickbox, input.thickbox'); 
     269        }); 
     270         
    258271<?php die; } 
    259272 
    260273if($_REQUEST['ajax'] == 'photo') { ?> 
     
    292305                if ( isset($strings) ) echo $strings; ?> 
    293306                        (function() { 
    294307                                var base = tinymce.baseURL, sl = tinymce.ScriptLoader, ln = "<?php echo $language; ?>"; 
    295  
    296308                                sl.markDone(base + '/langs/' + ln + '.js'); 
    297309                                sl.markDone(base + '/themes/advanced/langs/' + ln + '.js'); 
    298310                                sl.markDone(base + '/themes/advanced/langs/' + ln + '_dlg.js'); 
     
    354366                jQuery('#' + type + '_button').addClass('ui-tabs-selected'); 
    355367                jQuery("#post_type").val(type); 
    356368        } 
     369         
    357370        function set_editor(text) { 
    358371 
    359372                if(tinyMCE.activeEditor) tinyMCE.activeEditor.setContent(''); 
    360373                if(tinyMCE.activeEditor) tinyMCE.execCommand('mceInsertContent' ,false, text); 
    361374        } 
     375         
    362376        function append_editor(text) { 
    363377                if(tinyMCE.activeEditor) tinyMCE.execCommand('mceInsertContent' ,false, text); 
    364378        } 
     379         
    365380        function set_title(title) { jQuery("#content_type").text(title); } 
    366381 
    367382        function show(tab_name) { 
     
    371386                        case 'text' : 
    372387                                set_menu('text'); 
    373388                                set_title('<?php _e('Post') ?>'); 
    374  
    375389                                return false; 
    376                         break; 
     390                                break; 
    377391                        case 'quote' : 
    378392                                set_menu('quote'); 
    379393                                set_title('<?php _e('Quote') ?>'); 
    380394                                set_editor("<blockquote><p><?php echo $selection; ?> </p><p><cite><a href='<?php echo $url; ?>'><?php echo $title; ?> </a> </cite> </p></blockquote>"); 
    381395                                return false; 
    382                         break; 
     396                                break; 
    383397                        case 'video' : 
    384  
    385398                                set_menu('video'); 
    386399                                set_title('<?php _e('Caption') ?>'); 
    387400                                 
    388401                                jQuery('#extra_fields').show(); 
    389402                                jQuery('body').addClass('video_split'); 
    390403                                jQuery('#extra_fields').load('<?php echo clean_url($_SERVER['PHP_SELF']); ?>', { ajax: 'video', s: '<?php echo attribute_escape($selection); ?>'}, function() { 
    391                                          
    392404                                        <?php  
    393405                                        if ( preg_match("/youtube\.com\/watch/i", $url) ) { 
    394406                                        list($domain, $video_id) = split("v=", $url); 
     
    407419                                         
    408420                                        set_editor("<?php echo $title; ?>"); 
    409421                                }); 
    410                                  
    411422                                return false; 
    412                         break; 
    413                          
     423                                break; 
    414424                        case 'photo' : 
    415425                                set_menu('photo'); 
    416426                                set_title('Post'); 
     
    430440                                                jQuery('#waiting').remove(); 
    431441                                        } 
    432442                                }); 
    433                                  
    434443                                return false; 
    435                         break; 
    436  
     444                                break; 
    437445                } 
    438          
    439446        } 
    440447         
    441448        jQuery(document).ready(function() { 
     
    445452                        show(tab_name); 
    446453                }); 
    447454                 
     455                // Set default tabs 
    448456                <?php if ( preg_match("/youtube\.com\/watch/i", $url) ) { ?> 
    449457                        show('video'); 
    450458                <?php } elseif ( preg_match("/vimeo\.com\/[0-9]+/i", $url) ) { ?> 
     
    453461                        show('photo'); 
    454462                <?php } ?> 
    455463        }); 
     464         
    456465</script> 
    457466</head> 
    458467<body class="press-this"> 
    459468<div id="wphead"> 
    460 <h1><span id="viewsite"><a href="<?php echo get_option('home'); ?>/"><?php _e('Visit:') ?> <?php bloginfo('name'); ?></a></span></h1> 
     469        <h1><span id="viewsite"><a href="<?php echo get_option('home'); ?>/"><?php _e('Visit:') ?> <?php bloginfo('name'); ?></a></span></h1> 
    461470</div> 
    462471 
    463                 <ul id="menu" class="ui-tabs-nav"> 
    464                         <li id="text_button" class="ui-tabs-selected"><a href="#"><?php _e('Text') ?></a></li> 
    465                         <li id="photo_button"><a href="#"><?php _e('Photo') ?></a></li> 
    466                         <li id="quote_button"><a href="#"><?php _e('Quote') ?></a></li> 
    467                         <li id="video_button"><a href="#"><?php _e('Video') ?></a></li> 
    468                 </ul> 
     472<ul id="menu" class="ui-tabs-nav"> 
     473        <li id="text_button" class="ui-tabs-selected"><a href="#"><?php _e('Text') ?></a></li> 
     474        <li id="photo_button"><a href="#"><?php _e('Photo') ?></a></li> 
     475        <li id="quote_button"><a href="#"><?php _e('Quote') ?></a></li> 
     476        <li id="video_button"><a href="#"><?php _e('Video') ?></a></li> 
     477</ul> 
    469478 
    470                         <form action="press-this.php?action=post" method="post"> 
    471  
    472                                 <?php wp_nonce_field('press-this') ?> 
    473                                 <input type="hidden" name="post_type" id="post_type" value="text"/> 
    474                                 <div id="posting"> 
    475                                          
    476                                         <h2 id="title"><label for="post_title"><?php _e('Title') ?></label></h2> 
    477                                         <div class="titlewrap"> 
    478                                                 <input name="post_title" id="post_title" class="text" value="<?php echo attribute_escape($title);?>"/> 
    479                                         </div> 
    480                                          
    481                                         <div id="extra_fields" style="display: none"></div> 
    482                                         <div class="editor_area"> 
    483                                         <h2 id="content_type"><label for="content"><?php _e('Post') ?></label></h2> 
    484                                         <div class="editor-container"> 
    485                                                 <textarea name="content" id="content" style="width:100%;" class="mceEditor"><?php if($selection) { ?><a href='<?php echo $url ?>'><?php echo $selection ?></a><?php } else { ?><a href='<?php echo $url ?>'><?php echo $title; ?></a><?php } ?></textarea> 
    486                                         </div> 
    487                                         </div> 
    488                                          
    489                                 </div> 
    490                                 <div id="categories"> 
    491                                         <div class="submitbox" id="submitpost"> 
    492                                         <div id="previewview"></div> 
    493                                         <div class="inside"> 
    494                                                 <h2><?php _e('Categories') ?></h2> 
    495                                                 <div id="categories-all"> 
    496                                                         <ul id="categorychecklist" class="list:category categorychecklist form-no-clear"> 
    497                                                                 <?php wp_category_checklist() ?> 
    498                                                         </ul> 
    499                                                 </div> 
    500                                                 <h2><?php _e('Tags') ?></h2> 
    501                                                 <p id="jaxtag"><label class="hidden" for="newtag"><?php _e('Tags'); ?></label><input type="text" name="tags_input" class="tags-input" id="tags-input" size="40" tabindex="3" value="<?php echo get_tags_to_edit( $post->ID ); ?>" /></p> 
    502                                                 <div id="tagchecklist"></div> 
    503                                         </div> 
    504                                         <label for="post_status" id="post_status"><input type="radio" name="post_status" value="publish" checked="checked" id="published" />Published <input type="radio" name="post_status" value="draft" id="unpubplished" /> Unpublished</label> 
    505                                          
    506                                         <p class="submit">          
    507                                                 <input type="submit" value="<?php _e('Publish') ?>" onclick="document.getElementById('photo_saving').style.display = '';"/> 
    508                                                 <img src="images/loading-publish.gif" alt="" id="photo_saving" style="display:none;"/> 
    509                                         </p> 
    510                                 </div> 
    511                                  
    512                                  
    513                         </form>          
    514                                          
     479<form action="press-this.php?action=post" method="post"> 
     480        <?php wp_nonce_field('press-this') ?> 
     481        <input type="hidden" name="post_type" id="post_type" value="text"/> 
     482        <div id="posting"> 
     483                <h2 id="title"><label for="post_title"><?php _e('Title') ?></label></h2> 
     484                <div class="titlewrap"> 
     485                        <input name="post_title" id="post_title" class="text" value="<?php echo attribute_escape($title);?>"/> 
     486                </div> 
     487                 
     488                <div id="extra_fields" style="display: none"></div> 
     489                 
     490                <div class="editor_area"> 
     491                        <h2 id="content_type"><label for="content"><?php _e('Post') ?></label></h2> 
     492                        <div class="editor-container"> 
     493                                <textarea name="content" id="content" style="width:100%;" class="mceEditor"><?php if($selection) { ?><a href='<?php echo $url ?>'><?php echo $selection ?></a><?php } else { ?><a href='<?php echo $url ?>'><?php echo $title; ?></a><?php } ?></textarea> 
     494                        </div> 
     495                </div> 
     496        </div> 
     497         
     498        <div id="categories"> 
     499                <div class="submitbox" id="submitpost"> 
     500                <div id="previewview"></div> 
     501                <div class="inside"> 
     502                        <h2><?php _e('Categories') ?></h2> 
     503                        <div id="categories-all"> 
     504                                <ul id="categorychecklist" class="list:category categorychecklist form-no-clear"> 
     505                                        <?php wp_category_checklist() ?> 
     506                                </ul> 
     507                        </div> 
     508                        <h2><?php _e('Tags') ?></h2> 
     509                        <p id="jaxtag"><label class="hidden" for="newtag"><?php _e('Tags'); ?></label><input type="text" name="tags_input" class="tags-input" id="tags-input" size="40" tabindex="3" value="<?php echo get_tags_to_edit( $post->ID ); ?>" /></p> 
     510                        <div id="tagchecklist"></div> 
     511                </div> 
     512                <label for="post_status" id="post_status"><input type="radio" name="post_status" value="publish" checked="checked" id="published" />Published <input type="radio" name="post_status" value="draft" id="unpubplished" /> Unpublished</label> 
     513                <p class="submit">          
     514                        <input type="submit" value="<?php _e('Publish') ?>" onclick="document.getElementById('photo_saving').style.display = '';"/> 
     515                        <img src="images/loading-publish.gif" alt="" id="photo_saving" style="display:none;"/> 
     516                </p> 
     517        </div> 
     518</form> 
    515519</body> 
    516520</html> 
     521 No newline at end of file 
  • css/press-this.css

     
    294294        height: 100px; 
    295295} 
    296296 
     297#img_container a { 
     298        display: block; 
     299        width: 79px; 
     300        height: 79px; 
     301        float: left; 
     302} 
    297303#img_container img { 
    298304        width: 75px; 
    299305        height: 75px; 
     306        border: 0px; 
    300307        padding: 2px; 
    301308        background-color: #f4f4f4; 
    302         margin-right: 7px; 
    303         margin-bottom: 7px; 
    304309        cursor: pointer; 
    305310} 
     311#img_container a, #img_container a:link, #img_container a:visited { 
     312        border: 2px solid #ccc; 
     313        margin: 0 4px 4px 0; 
     314}  
     315#img_container a:hover, #img_container a:active { 
     316        border: 2px solid #000; 
     317} 
    306318.submit { 
    307 -moz-border-radius-bottomleft: 3px; 
    308 -khtml-border-bottom-left-radius: 3px; 
    309 -webkit-border-bottom-left-radius: 3px; 
    310 border-bottom-left-radius: 3px; 
    311 -moz-border-radius-bottomright: 3px; 
    312 -khtml-border-bottom-right-radius: 3px; 
    313 -webkit-border-bottom-right-radius: 3px; 
    314 border-bottom-right-radius: 3px; 
    315 margin: 0; 
    316 padding: 0; 
     319        -moz-border-radius-bottomleft: 3px; 
     320        -khtml-border-bottom-left-radius: 3px; 
     321        -webkit-border-bottom-left-radius: 3px; 
     322        border-bottom-left-radius: 3px; 
     323        -moz-border-radius-bottomright: 3px; 
     324        -khtml-border-bottom-right-radius: 3px; 
     325        -webkit-border-bottom-right-radius: 3px; 
     326        border-bottom-right-radius: 3px; 
     327        margin: 0; 
     328        padding: 0; 
    317329} 
    318330.submitbox { 
    319331        width: 100%; 
     
    466478} 
    467479 
    468480#post_status { 
    469 margin-left: 10px; 
    470 margin-bottom: 1em; 
    471 display: block; 
     481        margin-left: 10px; 
     482        margin-bottom: 1em; 
     483        display: block; 
    472484} 
    473485 
    474486#footer { 
  • includes/media.php

     
    115115 
    116116} 
    117117 
    118  
    119 function media_sideload_image($file, $post_id, $desc = null) { 
    120  
    121         if (!empty($file) ) { 
    122                 // Upload File button was clicked 
    123                  
    124                 $file_array['name'] = basename($file); 
    125                 $file_array['tmp_name'] = download_url($file); 
    126                 $desc = @$desc; 
    127                  
    128                 $sideload = media_handle_sideload($file_array, $post_id, $desc); 
    129  
    130                 $id = $sideload['id']; 
    131                 $src = $sideload['src']; 
    132                  
    133                 unset($file_array['tmp_name']); 
    134                 unset($file_array); 
    135                  
    136                 if ( is_wp_error($id) ) { 
    137                         $errors['upload_error'] = $id; 
    138                         $id = false; 
    139                 } 
    140         } 
    141          
    142         if ( !empty($src) && !strpos($src, '://') ) 
    143                  
    144                 $src = "http://$src"; 
    145                 $alt = @$desc; 
    146                  
    147                 if ( !empty($src) ) 
    148                         $html = "<img src='$src' alt='$alt' />"; 
    149                         return $html; 
    150          
    151 } 
    152  
    153118function media_handle_sideload($file_array, $post_id, $desc = null, $post_data = array()) { 
    154119        $overrides = array('test_form'=>false); 
    155120        $file = wp_handle_sideload($file_array, $overrides); 
     
    186151        $id = wp_insert_attachment($attachment, $file, $post_parent); 
    187152        if ( !is_wp_error($id) ) { 
    188153                wp_update_attachment_metadata( $id, wp_generate_attachment_metadata( $id, $file ) ); 
     154                return $src; 
    189155        } 
     156         
     157        return $id; 
    190158 
    191         return array('id' => $id, 'src' => $url); 
    192  
    193159} 
    194160 
    195161 
     
    348314        return wp_iframe( 'media_upload_type_form', 'image', $errors, $id ); 
    349315} 
    350316 
     317function media_sideload_image($file, $post_id, $desc = null) { 
     318        if (!empty($file) ) { 
     319                $file_array['name'] = basename($file); 
     320                $file_array['tmp_name'] = download_url($file); 
     321                $desc = @$desc; 
     322                 
     323                $id = media_handle_sideload($file_array, $post_id, $desc); 
     324                unset($file_array); 
     325                 
     326                if ( is_wp_error($id) ) { 
     327                        $errors['upload_error'] = $id; 
     328                        return $id; 
     329                } else { 
     330                        $src = $id; 
     331                } 
     332        } 
     333         
     334        if (!empty($src) && !strpos($src, '://') ) { 
     335                $src = "http://$src"; 
     336                $alt = @$desc; 
     337        } 
     338        if ( !empty($src) ) { 
     339                $html = "<img src='$src' alt='$alt' />"; 
     340                return $html; 
     341        } 
     342} 
     343 
    351344function media_upload_audio() { 
    352345        if ( isset($_POST['html-upload']) && !empty($_FILES) ) { 
    353346                // Upload File button was clicked