Skip to:
Content

bbPress.org

Changeset 4579


Ignore:
Timestamp:
12/16/2012 08:19:21 AM (8 years ago)
Author:
jmdodd
Message:

Introduce dedicated forum search.

  • Search forums, topics, and replies.
  • Add new search functions, including bbp_has_search_results().
  • Provide templates for search results.
  • Fixes #1575.
Location:
trunk
Files:
11 added
16 edited

Legend:

Unmodified
Added
Removed
  • trunk/bbpress.php

    r4548 r4579  
    181181        /** Versions **********************************************************/
    182182
    183         $this->version    = '2.3-bleeding-4514';
     183        $this->version    = '2.3-bleeding-4579';
    184184        $this->db_version = '220';
    185185
     
    222222
    223223        // Other identifiers
    224         $this->user_id           = apply_filters( 'bbp_user_id', 'bbp_user' );
    225         $this->tops_id           = apply_filters( 'bbp_tops_id', 'bbp_tops' );
    226         $this->reps_id           = apply_filters( 'bbp_reps_id', 'bbp_reps' );
    227         $this->favs_id           = apply_filters( 'bbp_favs_id', 'bbp_favs' );
    228         $this->subs_id           = apply_filters( 'bbp_subs_id', 'bbp_subs' );
    229         $this->view_id           = apply_filters( 'bbp_view_id', 'bbp_view' );
    230         $this->edit_id           = apply_filters( 'bbp_edit_id', 'edit'     );
     224        $this->user_id           = apply_filters( 'bbp_user_id',   'bbp_user'   );
     225        $this->tops_id           = apply_filters( 'bbp_tops_id',   'bbp_tops'   );
     226        $this->reps_id           = apply_filters( 'bbp_reps_id',   'bbp_reps'   );
     227        $this->favs_id           = apply_filters( 'bbp_favs_id',   'bbp_favs'   );
     228        $this->subs_id           = apply_filters( 'bbp_subs_id',   'bbp_subs'   );
     229        $this->view_id           = apply_filters( 'bbp_view_id',   'bbp_view'   );
     230        $this->search_id         = apply_filters( 'bbp_search_id', 'bbp_search' );
     231        $this->edit_id           = apply_filters( 'bbp_edit_id',   'edit'       );
    231232
    232233        /** Queries ***********************************************************/
     
    240241        $this->topic_query    = new stdClass(); // Main topic query
    241242        $this->reply_query    = new stdClass(); // Main reply query
     243        $this->search_query   = new stdClass(); // Main search query
    242244
    243245        /** Theme Compat ******************************************************/
     
    309311        require( $this->includes_dir . 'replies/functions.php'     );
    310312        require( $this->includes_dir . 'replies/template-tags.php' );
     313
     314        // Search
     315        require( $this->includes_dir . 'search/functions.php'      );
     316        require( $this->includes_dir . 'search/template-tags.php'  );
    311317
    312318        // Users
     
    359365            'register_theme_packages',  // Register bundled theme packages (bbp-theme-compat/bbp-themes)
    360366            'load_textdomain',          // Load textdomain (bbpress)
    361             'add_rewrite_tags',         // Add rewrite tags (view|user|edit)
    362             'generate_rewrite_rules'    // Generate rewrite rules (view|edit)
     367            'add_rewrite_tags',         // Add rewrite tags (view|user|edit|search)
     368            'generate_rewrite_rules'    // Generate rewrite rules (view|edit|search)
    363369        );
    364370
     
    833839        add_rewrite_tag( '%%' . bbp_get_view_rewrite_id()               . '%%', '([^/]+)'   ); // View Page tag
    834840        add_rewrite_tag( '%%' . bbp_get_edit_rewrite_id()               . '%%', '([1]{1,})' ); // Edit Page tag
     841        add_rewrite_tag( '%%' . bbp_get_search_rewrite_id()             . '%%', '([^/]+)'   ); // Search Results tag
    835842        add_rewrite_tag( '%%' . bbp_get_user_rewrite_id()               . '%%', '([^/]+)'   ); // User Profile tag
    836843        add_rewrite_tag( '%%' . bbp_get_user_favorites_rewrite_id()     . '%%', '([1]{1,})' ); // User Favorites tag
     
    854861
    855862        // Slugs
    856         $view_slug = bbp_get_view_slug();
    857         $user_slug = bbp_get_user_slug();
     863        $view_slug   = bbp_get_view_slug();
     864        $search_slug = bbp_get_search_slug();
     865        $user_slug   = bbp_get_user_slug();
    858866
    859867        // Unique rewrite ID's
    860         $edit_id = bbp_get_edit_rewrite_id();
    861         $view_id = bbp_get_view_rewrite_id();
    862         $user_id = bbp_get_user_rewrite_id();
    863         $favs_id = bbp_get_user_favorites_rewrite_id();
    864         $subs_id = bbp_get_user_subscriptions_rewrite_id();
    865         $tops_id = bbp_get_user_topics_rewrite_id();
    866         $reps_id = bbp_get_user_replies_rewrite_id();
     868        $edit_id     = bbp_get_edit_rewrite_id();
     869        $view_id     = bbp_get_view_rewrite_id();
     870        $search_id   = bbp_get_search_rewrite_id();
     871        $user_id     = bbp_get_user_rewrite_id();
     872        $favs_id     = bbp_get_user_favorites_rewrite_id();
     873        $subs_id     = bbp_get_user_subscriptions_rewrite_id();
     874        $tops_id     = bbp_get_user_topics_rewrite_id();
     875        $reps_id     = bbp_get_user_replies_rewrite_id();
    867876
    868877        // Rewrite rule matches used repeatedly below
    869         $root_rule = '/([^/]+)/?$';
    870         $edit_rule = '/([^/]+)/edit/?$';
    871         $feed_rule = '/([^/]+)/feed/?$';
    872         $page_rule = '/([^/]+)/page/?([0-9]{1,})/?$';
     878        $root_rule   = '/([^/]+)/?$';
     879        $edit_rule   = '/([^/]+)/edit/?$';
     880        $feed_rule   = '/([^/]+)/feed/?$';
     881        $page_rule   = '/([^/]+)/page/?([0-9]{1,})/?$';
     882
     883        // Search rules (without slug check)
     884        $search_root_rule = '/?$';
     885        $search_page_rule = '/page/?([0-9]{1,})/?$';
    873886
    874887        // User profile rules
     
    908921            $view_slug . $feed_rule => 'index.php?' . $view_id . '=' . $wp_rewrite->preg_index( 1 ) . '&feed='  . $wp_rewrite->preg_index( 2 ),
    909922            $view_slug . $root_rule => 'index.php?' . $view_id . '=' . $wp_rewrite->preg_index( 1 ),
     923
     924            // Search All
     925            $search_slug . $search_page_rule => 'index.php?&paged=' . $wp_rewrite->preg_index( 1 ),
     926            $search_slug . $search_root_rule => 'index.php?',
    910927        );
    911928
  • trunk/includes/admin/settings.php

    r4430 r4579  
    300300                'sanitize_callback' => 'sanitize_title',
    301301                'args'              => array()
     302            ),
     303
     304            // Search slug setting
     305            '_bbp_search_slug' => array(
     306                'title'             => __( 'Search slug', 'bbpress' ),
     307                'callback'          => 'bbp_admin_setting_callback_search_slug',
     308                'sanitize_callback' => 'sanitize_title',
     309                'args'              => array()
    302310            )
    303311        ),
     
    882890    // Slug Check
    883891    bbp_form_slug_conflict_check( '_bbp_view_slug', 'view' );
     892}
     893
     894/**
     895 * Search slug setting field
     896 *
     897 * @since bbPress (r4579)
     898 *
     899 * @uses bbp_form_option() To output the option value
     900 */
     901function bbp_admin_setting_callback_search_slug() {
     902?>
     903
     904    <input name="_bbp_search_slug" type="text" id="_bbp_search_slug" class="regular-text code" value="<?php bbp_form_option( '_bbp_search_slug', 'search', true ); ?>"<?php bbp_maybe_admin_setting_disabled( '_bbp_search_slug' ); ?> />
     905
     906<?php
     907    // Slug Check
     908    bbp_form_slug_conflict_check( '_bbp_search_slug', 'search' );
    884909}
    885910
  • trunk/includes/common/shortcodes.php

    r4510 r4579  
    8080            'bbp-single-view'      => array( $this, 'display_view'          ), // Single view
    8181
     82            /** Search ********************************************************/
     83
     84            'bbp-search'           => array( $this, 'display_search'        ), // Search
     85
    8286            /** Account *******************************************************/
    8387
     
    115119
    116120        // Unset global queries
    117         $bbp->forum_query = new stdClass;
    118         $bbp->topic_query = new stdClass;
    119         $bbp->reply_query = new stdClass;
     121        $bbp->forum_query  = new stdClass;
     122        $bbp->topic_query  = new stdClass;
     123        $bbp->reply_query  = new stdClass;
     124        $bbp->search_query = new stdClass;
    120125
    121126        // Unset global ID's
     
    603608    }
    604609
     610    /** Search ****************************************************************/
     611
     612    /**
     613     * Display the contents of search results in an output buffer and return to
     614     * ensure that post/page contents are displayed first.
     615     *
     616     * @since bbPress (r4579)
     617     *
     618     * @param array $attr
     619     * @param string $content
     620     * @uses bbp_search_query()
     621     * @uses get_template_part()
     622     */
     623    public function display_search( $attr, $content = '' ) {
     624
     625        // Set passed attribute to $search_terms for clarity
     626        $search_terms = $attr['search'];
     627
     628        // Start output buffer
     629        $this->start( 'bbp_search' );
     630
     631        // Unset globals
     632        $this->unset_globals();
     633
     634        // Load the search
     635        bbp_search_query( array( 's' => $search_terms ) );
     636
     637        // Output template
     638        bbp_get_template_part( 'content', 'search' );
     639
     640        // Return contents of output buffer
     641        return $this->end();
     642    }
     643
    605644    /** Account ***************************************************************/
    606645
  • trunk/includes/common/template-tags.php

    r4577 r4579  
    782782
    783783    return (bool) apply_filters( 'bbp_is_single_view', $retval );
     784}
     785
     786/**
     787 * Check if current page is a search page
     788 *
     789 * @since bbPress (r4579)
     790 *
     791 * @global WP_Query $wp_query To check if WP_Query::bbp_is_search is true
     792 * @uses bbp_is_query_name() To get the query name
     793 * @return bool Is it a search page?
     794 */
     795function bbp_is_search() {
     796    global $wp_query;
     797
     798    // Assume false
     799    $retval = false;
     800
     801    // Check query
     802    if ( !empty( $wp_query->bbp_is_search ) && ( true == $wp_query->bbp_is_search ) )
     803        $retval = true;
     804
     805    // Check query name
     806    if ( empty( $retval ) && bbp_is_query_name( 'bbp_search' ) )
     807        $retval = true;
     808
     809    // Check $_GET
     810    if ( empty( $retval ) && isset( $_GET[bbp_get_search_rewrite_id()] ) )
     811        $retval = true;
     812
     813    return (bool) apply_filters( 'bbp_is_search', $retval );
    784814}
    785815
     
    24102440    } elseif ( bbp_is_single_view() ) {
    24112441        $title = sprintf( __( 'View: %s', 'bbpress' ), bbp_get_view_title() );
     2442
     2443    /** Search ****************************************************************/
     2444
     2445    // Search
     2446    } elseif ( bbp_is_search() ) {
     2447        $title = bbp_get_search_title();
    24122448    }
    24132449
  • trunk/includes/common/widgets.php

    r4510 r4579  
    306306     * @uses BBP_Views_Widget::get_field_id() To output the field id
    307307     * @uses BBP_Views_Widget::get_field_name() To output the field name
     308     */
     309    public function form( $instance ) {
     310        $title = !empty( $instance['title'] ) ? esc_attr( $instance['title'] ) : ''; ?>
     311
     312        <p>
     313            <label for="<?php echo $this->get_field_id( 'title' ); ?>"><?php _e( 'Title:', 'bbpress' ); ?>
     314                <input class="widefat" id="<?php echo $this->get_field_id( 'title' ); ?>" name="<?php echo $this->get_field_name( 'title' ); ?>" type="text" value="<?php echo $title; ?>" />
     315            </label>
     316        </p>
     317
     318        <?php
     319    }
     320}
     321
     322/**
     323 * bbPress Search Widget
     324 *
     325 * Adds a widget which displays the forum search form
     326 *
     327 * @since bbPress (r4579)
     328 *
     329 * @uses WP_Widget
     330 */
     331class BBP_Search_Widget extends WP_Widget {
     332
     333    /**
     334     * bbPress Search Widget
     335     *
     336     * Registers the search widget
     337     *
     338     * @since bbPress (r4579)
     339     *
     340     * @uses apply_filters() Calls 'bbp_search_widget_options' with the
     341     *                        widget options
     342     */
     343    public function __construct() {
     344        $widget_ops = apply_filters( 'bbp_search_widget_options', array(
     345            'classname'   => 'widget_display_search',
     346            'description' => __( 'The bbPress forum search form.', 'bbpress' )
     347        ) );
     348
     349        parent::__construct( false, __( '(bbPress) Forum Search Form', 'bbpress' ), $widget_ops );
     350    }
     351
     352    /**
     353     * Register the widget
     354     *
     355     * @since bbPress (r4579)
     356     *
     357     * @uses register_widget()
     358     */
     359    public static function register_widget() {
     360        register_widget( 'BBP_Search_Widget' );
     361    }
     362
     363    /**
     364     * Displays the output, the search form
     365     *
     366     * @since bbPress (r4579)
     367     *
     368     * @uses apply_filters() Calls 'bbp_search_widget_title' with the title
     369     * @uses get_template_part() To get the search form
     370     */
     371    public function widget( $args, $instance ) {
     372
     373        // Typical WordPress filter
     374        $title = apply_filters( 'widget_title',            $instance['title'], $instance, $this->id_base );
     375
     376        // bbPress filter
     377        $title = apply_filters( 'bbp_search_widget_title', $instance['title'], $instance, $this->id_base );
     378
     379        echo $args['before_widget'];
     380        echo $args['before_title'] . $title . $args['after_title'];
     381
     382        bbp_get_template_part( 'form', 'search' );
     383
     384        echo $args['after_widget'];
     385    }
     386
     387    /**
     388     * Update the widget options
     389     *
     390     * @since bbPress (r4579)
     391     *
     392     * @param array $new_instance The new instance options
     393     * @param array $old_instance The old instance options
     394     */
     395    public function update( $new_instance, $old_instance ) {
     396        $instance          = $old_instance;
     397        $instance['title'] = strip_tags( $new_instance['title'] );
     398
     399        return $instance;
     400    }
     401
     402    /**
     403     * Output the search widget options form
     404     *
     405     * @since bbPress (r4579)
     406     *
     407     * @param $instance Instance
     408     * @uses BBP_Search_Widget::get_field_id() To output the field id
     409     * @uses BBP_Search_Widget::get_field_name() To output the field name
    308410     */
    309411    public function form( $instance ) {
  • trunk/includes/core/actions.php

    r4570 r4579  
    139139add_action( 'bbp_widgets_init', array( 'BBP_Login_Widget',   'register_widget' ), 10 );
    140140add_action( 'bbp_widgets_init', array( 'BBP_Views_Widget',   'register_widget' ), 10 );
     141add_action( 'bbp_widgets_init', array( 'BBP_Search_Widget',  'register_widget' ), 10 );
    141142add_action( 'bbp_widgets_init', array( 'BBP_Forums_Widget',  'register_widget' ), 10 );
    142143add_action( 'bbp_widgets_init', array( 'BBP_Topics_Widget',  'register_widget' ), 10 );
  • trunk/includes/core/functions.php

    r4323 r4579  
    436436
    437437/**
    438  * Return the enique ID for all edit rewrite rules (forum|topic|reply|tag|user)
     438 * Return the unique ID for all edit rewrite rules (forum|topic|reply|tag|user)
    439439 *
    440440 * @since bbPress (r3762)
     
    446446
    447447/**
     448 * Return the unique ID for all search rewrite rules
     449 *
     450 * @since bbPress (r4579)
     451 *
     452 * @return string
     453 */
     454function bbp_get_search_rewrite_id() {
     455    return bbpress()->search_id;
     456}
     457
     458/**
    448459 * Return the unique ID for user topics rewrite rules
    449460 *
  • trunk/includes/core/options.php

    r4336 r4579  
    8080
    8181        '_bbp_view_slug'            => 'view',      // View slug
     82        '_bbp_search_slug'          => 'search',    // Search slug
    8283
    8384        /** Topics ************************************************************/
     
    500501}
    501502
     503/**
     504 * Return the search slug
     505 *
     506 * @since bbPress (r4579)
     507 *
     508 * @return string
     509 */
     510function bbp_get_search_slug( $default = 'search' ) {
     511    return apply_filters( 'bbp_get_search_slug', bbp_maybe_get_root_slug() . get_option( '_bbp_search_slug', $default ) );
     512}
     513
    502514/** Legacy ********************************************************************/
    503515
  • trunk/includes/core/template-functions.php

    r4437 r4579  
    258258 *
    259259 * If it's a view page, WP_Query::bbp_is_view is set to true
     260 * If it's a search page, WP_Query::bbp_is_search is set to true
    260261 *
    261262 * @since bbPress (r2688)
     
    292293
    293294    // Get query variables
    294     $bbp_view = $posts_query->get( bbp_get_view_rewrite_id() );
    295     $bbp_user = $posts_query->get( bbp_get_user_rewrite_id() );
    296     $is_edit  = $posts_query->get( bbp_get_edit_rewrite_id() );
     295    $bbp_view   = $posts_query->get( bbp_get_view_rewrite_id() );
     296    $bbp_search = $posts_query->get( bbp_get_search_rewrite_id() );
     297    $bbp_user   = $posts_query->get( bbp_get_user_rewrite_id() );
     298    $is_edit    = $posts_query->get( bbp_get_edit_rewrite_id() );
    297299
    298300    // It is a user page - We'll also check if it is user edit
     
    421423        // We are in a custom topic view
    422424        $posts_query->bbp_is_view = true;
     425
     426    // Search Page
     427    } elseif ( !empty( $bbp_search ) ) {
     428
     429        // Check if there are search query args set
     430        $search_terms = bbp_get_search_terms();
     431        if ( !empty( $search_terms ) )
     432            $posts_query->bbp_search_terms = $search_terms;
     433
     434        // Correct is_home variable
     435        $posts_query->is_home = false;
     436
     437        // We are in a search query
     438        $posts_query->bbp_is_search = true;
    423439
    424440    // Forum/Topic/Reply Edit Page
  • trunk/includes/core/template-loader.php

    r4522 r4579  
    3131 * @uses bbp_is_single_view() To check if page is single view
    3232 * @uses bbp_get_single_view_template() To get view template
     33 * @uses bbp_is_search() To check if page is search
     34 * @uses bbp_get_search_template() To get search template
    3335 * @uses bbp_is_forum_edit() To check if page is forum edit
    3436 * @uses bbp_get_forum_edit_template() To get forum edit template
     
    6466    elseif ( bbp_is_single_view()      && ( $new_template = bbp_get_single_view_template()      ) ) :
    6567
     68    // Search
     69    elseif ( bbp_is_search()           && ( $new_template = bbp_get_search_template()           ) ) :
     70
    6671    // Forum edit
    6772    elseif ( bbp_is_forum_edit()       && ( $new_template = bbp_get_forum_edit_template()       ) ) :
     
    249254    );
    250255    return bbp_get_query_template( 'single_view', $templates );
     256}
     257
     258/**
     259 * Get the search template
     260 *
     261 * @since bbPress (r4579)
     262 *
     263 * @uses bbp_get_query_template()
     264 * @return string Path to template file
     265 */
     266function bbp_get_search_template() {
     267    $templates = array(
     268        'page-forum-search.php', // Single Search
     269        'forum-search.php',      // Search
     270    );
     271    return bbp_get_query_template( 'single_search', $templates );
    251272}
    252273
  • trunk/includes/core/theme-compat.php

    r4534 r4579  
    436436 * @uses bbp_is_single_view() To check if page is single view
    437437 * @uses bbp_get_single_view_template() To get view template
     438 * @uses bbp_is_search() To check if page is search
     439 * @uses bbp_get_search_template() To get search template
    438440 * @uses bbp_is_forum_edit() To check if page is forum edit
    439441 * @uses bbp_get_forum_edit_template() To get forum edit template
     
    584586            'ID'             => 0,
    585587            'post_title'     => bbp_get_view_title(),
     588            'post_author'    => 0,
     589            'post_date'      => 0,
     590            'post_content'   => '',
     591            'post_type'      => '',
     592            'post_status'    => bbp_get_public_status_id(),
     593            'comment_status' => 'closed'
     594        ) );
     595
     596    /** Search ************************************************************/
     597
     598    } elseif ( bbp_is_search() ) {
     599
     600        // Reset post
     601        bbp_theme_compat_reset_post( array(
     602            'ID'             => 0,
     603            'post_title'     => bbp_get_search_title(),
    586604            'post_author'    => 0,
    587605            'post_date'      => 0,
     
    825843        $new_content = $bbp->shortcodes->display_view( array( 'id' => get_query_var( 'bbp_view' ) ) );
    826844
     845    /** Search ************************************************************/
     846
     847    } elseif ( bbp_is_search() ) {
     848        $new_content = $bbp->shortcodes->display_search( array( 'search' => get_query_var( 'bbp_search' ) ) );
     849
    827850    /** Topic Tags ********************************************************/
    828851
  • trunk/includes/forums/template-tags.php

    r4517 r4579  
    141141     * @uses bbPress::forum_query::post::ID To get the forum id
    142142     * @uses WP_Query::post::ID To get the forum id
     143     * @uses bbp_is_forum() To check if the search result is a forum
    143144     * @uses bbp_is_single_forum() To check if it's a forum page
    144145     * @uses bbp_is_single_topic() To check if it's a topic page
     
    161162        } elseif ( !empty( $bbp->forum_query->in_the_loop ) && isset( $bbp->forum_query->post->ID ) ) {
    162163            $bbp_forum_id = $bbp->forum_query->post->ID;
     164
     165        // Currently inside a search loop
     166        } elseif ( !empty( $bbp->search_query->in_the_loop ) && isset( $bbp->search_query->post->ID ) && bbp_is_forum( $bbp->search_query->post->ID ) ) {
     167            $bbp_forum_id = $bbp->search_query->post->ID;
    163168
    164169        // Currently viewing a forum
  • trunk/includes/replies/template-tags.php

    r4564 r4579  
    224224     * @param $reply_id Optional. Used to check emptiness
    225225     * @uses bbPress::reply_query::post::ID To get the reply id
    226      * @uses bbp_is_reply() To check if it's a reply page
     226     * @uses bbp_is_reply() To check if the search result is a reply
     227     * @uses bbp_is_single_reply() To check if it's a reply page
    227228     * @uses bbp_is_reply_edit() To check if it's a reply edit page
    228229     * @uses get_post_field() To get the post's post type
     
    245246        } elseif ( !empty( $bbp->reply_query->in_the_loop ) && isset( $bbp->reply_query->post->ID ) ) {
    246247            $bbp_reply_id = $bbp->reply_query->post->ID;
     248
     249        // Currently inside a search loop
     250        } elseif ( !empty( $bbp->search_query->in_the_loop ) && isset( $bbp->search_query->post->ID ) && bbp_is_reply( $bbp->search_query->post->ID ) ) {
     251            $bbp_reply_id = $bbp->search_query->post->ID;
    247252
    248253        // Currently viewing a forum
  • trunk/includes/topics/template-tags.php

    r4575 r4579  
    366366     * @param $topic_id Optional. Used to check emptiness
    367367     * @uses bbPress::topic_query::post::ID To get the topic id
     368     * @uses bbp_is_topic() To check if the search result is a topic
    368369     * @uses bbp_is_single_topic() To check if it's a topic page
    369370     * @uses bbp_is_topic_edit() To check if it's a topic edit page
     
    390391        } elseif ( !empty( $bbp->topic_query->in_the_loop ) && isset( $bbp->topic_query->post->ID ) ) {
    391392            $bbp_topic_id = $bbp->topic_query->post->ID;
     393
     394        // Currently inside a search loop
     395        } elseif ( !empty( $bbp->search_query->in_the_loop ) && isset( $bbp->search_query->post->ID ) && bbp_is_topic( $bbp->search_query->post->ID ) ) {
     396            $bbp_topic_id = $bbp->search_query->post->ID;
    392397
    393398        // Currently viewing/editing a topic, likely alone
  • trunk/templates/default/bbpress/content-archive-forum.php

    r4225 r4579  
    1111
    1212<div id="bbpress-forums">
     13
     14    <div class="bbp-search-form">
     15
     16        <?php bbp_get_template_part( 'form', 'search' ); ?>
     17
     18    </div>
    1319
    1420    <?php bbp_breadcrumb(); ?>
  • trunk/templates/default/css/bbpress.css

    r4475 r4579  
    3535}
    3636
     37#bbpress-forums div.bbp-forum-header,
    3738#bbpress-forums div.bbp-topic-header,
    3839#bbpress-forums div.bbp-reply-header {
     
    6869#bbpress-forums ul.bbp-topics,
    6970#bbpress-forums ul.bbp-forums,
    70 #bbpress-forums ul.bbp-replies {
     71#bbpress-forums ul.bbp-replies,
     72#bbpress-forums ul.bbp-search-results {
    7173    font-size: 12px;
    7274    overflow: hidden;
     
    167169}
    168170
     171#bbpress-forums div.bbp-forum-title h3,
     172#bbpress-forums div.bbp-topic-title h3,
     173#bbpress-forums div.bbp-reply-title h3 {
     174    line-height: 1em;
     175    margin: 8px 0;
     176}
     177
     178#bbpress-forums div.bbp-search-author,
     179#bbpress-forums div.bbp-forum-author,
    169180#bbpress-forums div.bbp-topic-author,
    170181#bbpress-forums div.bbp-reply-author {
     
    174185}
    175186
     187#bbpress-forums div.bbp-forum-author img.avatar,
    176188#bbpress-forums div.bbp-topic-author img.avatar,
    177189#bbpress-forums div.bbp-reply-author img.avatar {
     
    183195}
    184196
     197#bbpress-forums div.bbp-forum-author a.bbp-author-name,
    185198#bbpress-forums div.bbp-topic-author a.bbp-author-name,
    186199#bbpress-forums div.bbp-reply-author a.bbp-author-name {
     
    189202}
    190203
     204#bbpress-forums div.bbp-forum-author .bbp-author-role,
    191205#bbpress-forums div.bbp-topic-author .bbp-author-role,
    192206#bbpress-forums div.bbp-reply-author .bbp-author-role {
     
    195209}
    196210
     211#bbpress-forums div.bbp-forum-content,
    197212#bbpress-forums div.bbp-topic-content,
    198213#bbpress-forums div.bbp-reply-content {
     
    202217}
    203218
     219#bbpress-forums li.bbp-header .bbp-forum-author,
     220#bbpress-forums li.bbp-footer .bbp-forum-author,
    204221#bbpress-forums li.bbp-header .bbp-topic-author,
    205222#bbpress-forums li.bbp-footer .bbp-topic-author,
     
    212229}
    213230
     231#bbpress-forums li.bbp-header .bbp-forum-content,
     232#bbpress-forums li.bbp-footer .bbp-forum-content,
    214233#bbpress-forums li.bbp-header .bbp-topic-content,
    215234#bbpress-forums li.bbp-footer .bbp-topic-content,
     
    221240}
    222241
     242div.bbp-forum-header,
    223243div.bbp-topic-header,
    224244div.bbp-reply-header,
     
    229249}
    230250
     251div.bbp-forum-header,
    231252div.bbp-topic-header,
    232253div.bbp-reply-header {
     
    262283    float: right;
    263284}
     285
     286/* =Search
     287-------------------------------------------------------------- */
     288
     289div.bbp-search-form {
     290    float: right;
     291}
     292
    264293
    265294/* =Admin Links
     
    288317}
    289318
     319.bbp-forum-header a.bbp-forum-permalink,
    290320.bbp-topic-header a.bbp-topic-permalink,
    291321.bbp-reply-header a.bbp-reply-permalink {
Note: See TracChangeset for help on using the changeset viewer.