X-Git-Url: https://scripts.mit.edu/gitweb/autoinstalls/wordpress.git/blobdiff_plain/177fd6fefd2e3d5a0ea6591c71d660cabdb3c1a4..d3b1ea255664edd2deef17f900a655613d20820d:/wp-admin/includes/widgets.php?widgets-access=on diff --git a/wp-admin/includes/widgets.php b/wp-admin/includes/widgets.php index da8b8227..2be81453 100644 --- a/wp-admin/includes/widgets.php +++ b/wp-admin/includes/widgets.php @@ -1,290 +1,207 @@ - - - $args, 1 => $widget['params'][0] ) ); + call_user_func_array( 'wp_widget_control', $args ); + } } - - +/** + * {@internal Missing Short Description}} + * + * @since unknown + * + * @param string $sidebar + */ function wp_list_widget_controls( $sidebar ) { add_filter( 'dynamic_sidebar_params', 'wp_list_widget_controls_dynamic_sidebar' ); -?> - - -\n"; + dynamic_sidebar( $sidebar ); + echo "\t\n"; } - +/** + * {@internal Missing Short Description}} + * + * @since unknown + * + * @param array $params + * @return array + */ function wp_list_widget_controls_dynamic_sidebar( $params ) { global $wp_registered_widgets; static $i = 0; $i++; $widget_id = $params[0]['widget_id']; + $id = isset($params[0]['_temp_id']) ? $params[0]['_temp_id'] : $widget_id; + $hidden = isset($params[0]['_hide']) ? ' style="display:none;"' : ''; - $params[0]['before_widget'] = "
  • \n"; - $params[0]['after_widget'] = "
  • "; - $params[0]['before_title'] = "%BEG_OF_TITLE%"; - $params[0]['after_title'] = "%END_OF_TITLE%"; + $params[0]['before_widget'] = "
    "; + $params[0]['after_widget'] = "
    "; + $params[0]['before_title'] = "%BEG_OF_TITLE%"; // deprecated + $params[0]['after_title'] = "%END_OF_TITLE%"; // deprecated if ( is_callable( $wp_registered_widgets[$widget_id]['callback'] ) ) { $wp_registered_widgets[$widget_id]['_callback'] = $wp_registered_widgets[$widget_id]['callback']; $wp_registered_widgets[$widget_id]['callback'] = 'wp_widget_control'; } + return $params; } -/* - * Meta widget used to display the control form for a widget. Called from dynamic_sidebar() +function next_widget_id_number($id_base) { + global $wp_registered_widgets; + $number = 2; + + while ( isset($wp_registered_widgets["$id_base-$number"]) ) + $number++; + + return $number; +} + +/** + * Meta widget used to display the control form for a widget. + * + * Called from dynamic_sidebar(). + * + * @since unknown + * + * @param array $sidebar_args + * @return array */ function wp_widget_control( $sidebar_args ) { - global $wp_registered_widgets, $wp_registered_widget_controls, $sidebars_widgets, $edit_widget; + global $wp_registered_widgets, $wp_registered_widget_controls, $sidebars_widgets; + $widget_id = $sidebar_args['widget_id']; $sidebar_id = isset($sidebar_args['id']) ? $sidebar_args['id'] : false; - - $control = $wp_registered_widget_controls[$widget_id]; - $widget = $wp_registered_widgets[$widget_id]; - - $key = $sidebar_id ? array_search( $widget_id, $sidebars_widgets[$sidebar_id] ) : 'no-key'; // position of widget in sidebar - - $edit = -1 < $edit_widget && is_numeric($key) && $edit_widget === $key; // (bool) are we currently editing this widget + $key = $sidebar_id ? array_search( $widget_id, $sidebars_widgets[$sidebar_id] ) : '-1'; // position of widget in sidebar + $control = isset($wp_registered_widget_controls[$widget_id]) ? $wp_registered_widget_controls[$widget_id] : array(); + $widget = $wp_registered_widgets[$widget_id]; $id_format = $widget['id']; + $widget_number = isset($control['params'][0]['number']) ? $control['params'][0]['number'] : ''; + $id_base = isset($control['id_base']) ? $control['id_base'] : $widget_id; + $multi_number = isset($sidebar_args['_multi_num']) ? $sidebar_args['_multi_num'] : ''; + $add_new = isset($sidebar_args['_add']) ? $sidebar_args['_add'] : ''; + + $query_arg = array( 'editwidget' => $widget['id'] ); + if ( $add_new ) { + $query_arg['addnew'] = 1; + if ( $multi_number ) { + $query_arg['num'] = $multi_number; + $query_arg['base'] = $id_base; + } + } else { + $query_arg['sidebar'] = $sidebar_id; + $query_arg['key'] = $key; + } + // We aren't showing a widget control, we're outputing a template for a mult-widget control - if ( 'all' == $sidebar_args['_show'] && 'template' == $sidebar_args['_display'] && isset($control['params'][0]['number']) ) { - // number == -1 implies a template where id numbers are replaced by a generic '%i%' + if ( isset($sidebar_args['_display']) && 'template' == $sidebar_args['_display'] && $widget_number ) { + // number == -1 implies a template where id numbers are replaced by a generic '__i__' $control['params'][0]['number'] = -1; - // if given, id_base means widget id's should be constructed like {$id_base}-{$id_number} + // with id_base widget id's are constructed like {$id_base}-{$id_number} if ( isset($control['id_base']) ) - $id_format = $control['id_base'] . '-%i%'; + $id_format = $control['id_base'] . '-__i__'; } - $widget_title = ''; - // We grab the normal widget output to find the widget's title - if ( ( 'all' != $sidebar_args['_show'] || 'template' != $sidebar_args['_display'] ) && is_callable( $widget['_callback'] ) ) { - ob_start(); - $args = func_get_args(); - call_user_func_array( $widget['_callback'], $args ); - $widget_title = ob_get_clean(); - $widget_title = wp_widget_control_ob_filter( $widget_title ); - } $wp_registered_widgets[$widget_id]['callback'] = $wp_registered_widgets[$widget_id]['_callback']; unset($wp_registered_widgets[$widget_id]['_callback']); - if ( $widget_title && $widget_title != $sidebar_args['widget_name'] ) - $widget_title = sprintf( _c('%1$s: %2$s|1: widget name, 2: widget title' ), $sidebar_args['widget_name'], $widget_title ); + $widget_title = esc_html( strip_tags( $sidebar_args['widget_name'] ) ); + $has_form = 'noform'; + + echo $sidebar_args['before_widget']; ?> +
    +
    + + +
    +

    +
    + +
    +
    +
    + -

    - - - - - - - - - - - -

    - -
    > - - ' . __('There are no options for this widget.') . '

    '; - ?> - - - - -
    - - - - - - - - "> -
    -
    + echo "\t\t

    " . __('There are no options for this widget.') . "

    \n"; ?> +
    + + + + + + + + +
    +
    + | +
    +
    + + +
    +
    +
    + +
    + +
    + +