WordPress.org

Make WordPress Core

Changeset 2921


Ignore:
Timestamp:
09/26/05 23:55:36 (12 years ago)
Author:
ryan
Message:

Image uploading widget from skeltoac. fixes #1710

Location:
trunk
Files:
1 added
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/wp-admin/admin-functions.php

    r2901 r2921  
    6161    add_meta($post_ID); 
    6262 
     63    // Reunite any orphaned subposts with their parent 
     64    if ( $_POST['temp_ID'] ) 
     65        relocate_children($_POST['temp_ID'], $post_ID); 
     66 
    6367    return $post_ID; 
     68} 
     69 
     70// Move child posts to a new parent 
     71function relocate_children($old_ID, $new_ID) { 
     72    global $wpdb; 
     73    $wpdb->query("UPDATE $wpdb->posts SET post_parent = $new_ID WHERE post_parent = $old_ID"); 
    6474} 
    6575 
     
    17401750    return $ct; 
    17411751} 
     1752 
     1753// Returns an array containing the current upload directory's path and url, or an error message. 
     1754function wp_upload_dir() { 
     1755        if ( defined('UPLOADS') ) 
     1756                $dir = UPLOADS; 
     1757        else 
     1758                $dir = 'wp-content/uploads'; 
     1759 
     1760    $path = ABSPATH . $dir; 
     1761 
     1762        // Make sure we have an uploads dir 
     1763        if ( ! file_exists( $path ) ) { 
     1764                if ( ! mkdir( $path ) ) 
     1765                        return array('error' => "Unable to create directory $path. Is its parent directory writable by the server?"); 
     1766        @ chmod( ABSPATH . $path, 0774 ); 
     1767    } 
     1768 
     1769        // Generate the yearly and monthly dirs 
     1770        $time = current_time( 'mysql' ); 
     1771        $y = substr( $time, 0, 4 ); 
     1772        $m = substr( $time, 5, 2 ); 
     1773        $pathy = "$path/$y"; 
     1774        $pathym = "$path/$y/$m"; 
     1775 
     1776        // Make sure we have a yearly dir 
     1777        if ( ! file_exists( $pathy ) ) { 
     1778                if ( ! mkdir( $pathy ) ) 
     1779                        return array('error' => "Unable to create directory $pathy. Is $path writable?"); 
     1780        @ chmod( $pathy, 0774 ); 
     1781    } 
     1782 
     1783        // Make sure we have a monthly dir 
     1784        if ( ! file_exists( $pathym ) ) { 
     1785                if ( ! mkdir( $pathym ) ) 
     1786                        return array('error' => "Unable to create directory $pathym. Is $pathy writable?"); 
     1787        @ chmod( $pathym, 0774 ); 
     1788    } 
     1789 
     1790        $uploads = array('path' => $pathym, 'url' => get_bloginfo('home') . "/$dir/$y/$m", 'error' => false); 
     1791    return apply_filters('upload_dir', $uploads); 
     1792} 
     1793 
    17421794?> 
  • trunk/wp-admin/edit-form-advanced.php

    r2906 r2921  
    1818if (0 == $post_ID) { 
    1919    $form_action = 'post'; 
     20    $temp_ID = -1 * time(); 
     21    $form_extra = "<input type='hidden' name='temp_ID' value='$temp_ID' />"; 
    2022} else { 
    2123    $form_action = 'editpost'; 
     
    173175<div id="advancedstuff" class="dbx-group" > 
    174176 
     177<fieldset id="imageuploading" class="dbx-box"> 
     178<h3 class="dbx-handle"><?php _e('Image Uploading') ?></h3> 
     179<div class="dbx-content"><iframe src="image-uploading.php?action=view&amp;post=<?php echo 0 == $post_ID ? $temp_ID : $post_ID; ?>" id="imageup"></iframe></div> 
     180</fieldset> 
     181 
    175182<fieldset id="postexcerpt" class="dbx-box"> 
    176183<h3 class="dbx-handle"><?php _e('Optional Excerpt') ?></h3> 
  • trunk/wp-admin/upgrade-schema.php

    r2912 r2921  
    120120  guid varchar(255) NOT NULL default '', 
    121121  menu_order int(11) NOT NULL default '0', 
     122  post_type varchar(100) NOT NULL, 
    122123  PRIMARY KEY  (ID), 
    123124  KEY post_name (post_name) 
  • trunk/wp-admin/wp-admin.css

    r2906 r2921  
    149149} 
    150150 
    151 textarea, input, select { 
     151textarea, input, select, iframe#imageup { 
    152152    background: #f4f4f4; 
    153153    border: 1px solid #b2b2b2; 
     
    156156    margin: 1px; 
    157157    padding: 3px; 
     158} 
     159 
     160iframe#imageup { 
     161    margin: 0px; 
     162    padding: 0px; 
     163    border: 1px solid #ccc; 
     164    height: 13em; 
     165    width: 98%; 
    158166} 
    159167 
  • trunk/wp-includes/functions-post.php

    r2894 r2921  
    129129        $postquery = 
    130130            "INSERT INTO $wpdb->posts 
    131             (ID, post_author, post_date, post_date_gmt, post_content, post_title, post_excerpt,  post_status, comment_status, ping_status, post_password, post_name, to_ping, post_modified, post_modified_gmt, post_parent, menu_order) 
     131            (ID, post_author, post_date, post_date_gmt, post_content, post_title, post_excerpt,  post_status, comment_status, ping_status, post_password, post_name, to_ping, post_modified, post_modified_gmt, post_parent, menu_order, post_type) 
    132132            VALUES 
    133             ('$post_ID', '$post_author', '$post_date', '$post_date_gmt', '$post_content', '$post_title', '$post_excerpt', '$post_status', '$comment_status', '$ping_status', '$post_password', '$post_name', '$to_ping', '$post_date', '$post_date_gmt', '$post_parent', '$menu_order')"; 
     133            ('$post_ID', '$post_author', '$post_date', '$post_date_gmt', '$post_content', '$post_title', '$post_excerpt', '$post_status', '$comment_status', '$ping_status', '$post_password', '$post_name', '$to_ping', '$post_date', '$post_date_gmt', '$post_parent', '$menu_order', '$post_type')"; 
    134134    } 
    135135     
     
    186186} 
    187187 
     188function wp_attach_object($object, $post_parent = 0) { 
     189    global $wpdb, $user_ID; 
     190     
     191    // Export array as variables 
     192    extract($object); 
     193 
     194    // Get the basics. 
     195    $post_content    = apply_filters('content_save_pre',   $post_content); 
     196    $post_excerpt    = apply_filters('excerpt_save_pre',   $post_excerpt); 
     197    $post_title      = apply_filters('title_save_pre',     $post_title); 
     198    $post_category   = apply_filters('category_save_pre',  $post_category); 
     199    $post_name       = apply_filters('name_save_pre',      $post_name); 
     200    $comment_status  = apply_filters('comment_status_pre', $comment_status); 
     201    $ping_status     = apply_filters('ping_status_pre',    $ping_status); 
     202    $post_type       = apply_filters('post_type_pre',      $post_type); 
     203 
     204    // Make sure we set a valid category 
     205    if (0 == count($post_category) || !is_array($post_category)) { 
     206        $post_category = array(get_option('default_category')); 
     207    } 
     208    $post_cat = $post_category[0]; 
     209 
     210    if ( empty($post_author) ) 
     211        $post_author = $user_ID; 
     212 
     213    $post_status = 'object'; 
     214 
     215    // Get the post ID. 
     216    if ( $update ) { 
     217        $post_ID = $ID; 
     218    } else { 
     219        $id_result = $wpdb->get_row("SHOW TABLE STATUS LIKE '$wpdb->posts'"); 
     220        $post_ID = $id_result->Auto_increment; 
     221    } 
     222 
     223    // Create a valid post name. 
     224    if ( empty($post_name) ) { 
     225        $post_name = sanitize_title($post_title, $post_ID); 
     226    } else { 
     227        $post_name = sanitize_title($post_name, $post_ID); 
     228    } 
     229     
     230    if (empty($post_date)) 
     231        $post_date = current_time('mysql'); 
     232    if (empty($post_date_gmt))  
     233        $post_date_gmt = current_time('mysql', 1); 
     234 
     235    if ( empty($comment_status) ) { 
     236        if ( $update ) 
     237            $comment_status = 'closed'; 
     238        else 
     239            $comment_status = get_settings('default_comment_status'); 
     240    } 
     241    if ( empty($ping_status) ) 
     242        $ping_status = get_settings('default_ping_status'); 
     243    if ( empty($post_pingback) ) 
     244        $post_pingback = get_option('default_pingback_flag'); 
     245 
     246    if ( isset($to_ping) ) 
     247        $to_ping = preg_replace('|\s+|', "\n", $to_ping); 
     248    else 
     249        $to_ping = ''; 
     250     
     251    $post_parent = (int) $post_parent; 
     252 
     253    if ( isset($menu_order) ) 
     254        $menu_order = (int) $menu_order; 
     255    else 
     256        $menu_order = 0; 
     257 
     258    if ( !isset($post_password) ) 
     259        $post_password = ''; 
     260 
     261    if ($update) { 
     262        $postquery = 
     263            "UPDATE $wpdb->posts SET 
     264            post_author = '$post_author', 
     265            post_date = '$post_date', 
     266            post_date_gmt = '$post_date_gmt', 
     267            post_content = '$post_content', 
     268            post_title = '$post_title', 
     269            post_excerpt = '$post_excerpt', 
     270            post_status = '$post_status', 
     271            comment_status = '$comment_status', 
     272            ping_status = '$ping_status', 
     273            post_password = '$post_password', 
     274            post_name = '$post_name', 
     275            to_ping = '$to_ping', 
     276            post_modified = '$post_date', 
     277            post_modified_gmt = '$post_date_gmt', 
     278            post_parent = '$post_parent', 
     279            menu_order = '$menu_order', 
     280            post_type = '$post_type', 
     281            guid = '$guid' 
     282            WHERE ID = $post_ID"; 
     283    } else { 
     284        $postquery = 
     285            "INSERT INTO $wpdb->posts 
     286            (ID, post_author, post_date, post_date_gmt, post_content, post_title, post_excerpt,  post_status, comment_status, ping_status, post_password, post_name, to_ping, post_modified, post_modified_gmt, post_parent, menu_order, post_type, guid) 
     287            VALUES 
     288            ('$post_ID', '$post_author', '$post_date', '$post_date_gmt', '$post_content', '$post_title', '$post_excerpt', '$post_status', '$comment_status', '$ping_status', '$post_password', '$post_name', '$to_ping', '$post_date', '$post_date_gmt', '$post_parent', '$menu_order', '$post_type', '$guid')"; 
     289    } 
     290     
     291    $result = $wpdb->query($postquery); 
     292 
     293    wp_set_post_cats('', $post_ID, $post_category); 
     294 
     295    clean_post_cache($post_ID); 
     296 
     297    if ( $update) { 
     298        do_action('edit_object', $post_ID); 
     299    } else { 
     300        do_action('attach_object', $post_ID); 
     301    } 
     302     
     303    return $post_ID; 
     304} 
     305 
    188306function wp_get_single_post($postid = 0, $mode = OBJECT) { 
    189307    global $wpdb; 
Note: See TracChangeset for help on using the changeset viewer.