WordPress.org

Make WordPress Core

Ticket #5843: 5843.diff

File 5843.diff, 2.1 KB (added by andy, 6 years ago)
  • wp-admin/includes/media.php

     
    88        return apply_filters('image_upload_tabs', $_default_tabs); 
    99} 
    1010 
     11function the_image_upload_tabs() { 
     12        $tabs = image_upload_tabs(); 
     13 
     14        if ( !empty($tabs) ) { 
     15                echo "<ul id='media-upload-tabs'>\n"; 
     16                if ( isset($_GET['tab']) && array_key_exists($_GET['tab'], $tabs) ) 
     17                        $current = $_GET['tab']; 
     18                else 
     19                        $current = array_shift(array_keys($tabs)); 
     20                foreach ( $tabs as $callback => $text ) { 
     21                        if ( ++$i == count($tabs) ) 
     22                                $class = ' class="last"'; 
     23                        if ( $callback == $current ) 
     24                                $disabled = ' disabled="disabled"'; 
     25                        else 
     26                                $disabled = ''; 
     27                        $href = add_query_arg('tab', $callback); 
     28                        if ( $callback == $current ) 
     29                                $link = $text; 
     30                        else 
     31                                $link = "<a href='$href'>$text</a>"; 
     32                        echo "\t<li$class>$link</li>\n"; 
     33                } 
     34                echo "</ul>\n"; 
     35        } 
     36} 
     37 
     38function image_upload_callback() { 
     39        $tabs = image_upload_tabs(); 
     40        if ( isset($_GET['tab']) && array_key_exists($_GET['tab'], $tabs) && is_callable($_GET['tab']) ) 
     41                return $_GET['tab'](); 
     42        elseif ( is_callable($first = array_shift(array_keys($tabs))) ) 
     43                return $first(); 
     44        else 
     45                return image_upload_handler(); 
     46} 
     47 
     48add_action('media_upload_image', 'image_upload_callback'); 
     49 
    1150function image_upload_form( $action_url, $values = array(), $error = null ) { 
    1251        $action_url = attribute_escape( $action_url ); 
    1352        $image_alt = attribute_escape( @$values['image-alt'] ); 
     
    1958?> 
    2059<div id="media-upload-header"> 
    2160<h3>Add Image</h3> 
    22 <ul id="media-upload-tabs"> 
    23         <li><?php _e('From Computer'); ?></li> 
    24         <li><?php _e('Media Library'); ?></li> 
    25         <li class="last"><?php _e('Flickr'); ?></li> 
    26 </ul> 
     61<?php the_image_upload_tabs(); ?> 
    2762</div> 
    2863<div id="media-upload-error"> 
    2964<?php if ($error) { 
     
    388423} 
    389424 
    390425add_action('media_upload_multimedia', 'multimedia_upload_handler'); 
    391 add_action('media_upload_image', 'image_upload_handler'); 
    392426add_action('admin_head_image_upload_form', 'media_admin_css'); 
    393427 
    394428function multimedia_upload_handler() {