Skip to:
Content

BuddyPress.org

Changeset 3384


Ignore:
Timestamp:
11/09/2010 11:50:47 PM (13 years ago)
Author:
boonebgorges
Message:

Allows private message thread ordering. Fixes #2724. Props aesqe

Location:
trunk
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/bp-messages/bp-messages-classes.php

    r3300 r3384  
    99    var $unread_count;
    1010
    11     function bp_messages_thread ( $thread_id = false ) {
     11    function bp_messages_thread ( $thread_id = false, $order = 'ASC' ) {
    1212        if ( $thread_id )
    13             $this->populate( $thread_id );
    14     }
    15 
    16     function populate( $thread_id ) {
    17         global $wpdb, $bp;
    18 
     13            $this->populate( $thread_id, $order );
     14    }
     15
     16    function populate( $thread_id, $order ) {
     17        global $wpdb, $bp;
     18
     19        if( 'ASC' != $order && 'DESC' != $order )
     20            $order= 'ASC';
     21
     22        $this->messages_order = $order;
    1923        $this->thread_id = $thread_id;
    2024
    21         if ( !$this->messages = $wpdb->get_results( $wpdb->prepare( "SELECT * FROM {$bp->messages->table_name_messages} WHERE thread_id = %d ORDER BY date_sent ASC", $this->thread_id ) ) )
     25        if ( !$this->messages = $wpdb->get_results( $wpdb->prepare( "SELECT * FROM {$bp->messages->table_name_messages} WHERE thread_id = %d ORDER BY date_sent " . $order, $this->thread_id ) ) )
    2226            return false;
    2327
  • trunk/bp-messages/bp-messages-templatetags.php

    r3365 r3384  
    595595        global $bp;
    596596
    597         $this->thread = new BP_Messages_Thread( $thread_id, true );
     597        $this->thread = new BP_Messages_Thread( $thread_id, $order );
    598598        $this->message_count = count( $this->thread->messages );
    599599
     
    653653function bp_thread_has_messages( $args = '' ) {
    654654    global $bp, $thread_template, $group_id;
    655 
     655   
    656656    $defaults = array(
    657657        'thread_id' => false,
     
    668668    return $thread_template->has_messages();
    669669}
     670
     671function bp_thread_messages_order() {
     672    echo bp_get_thread_messages_order();
     673}
     674
     675    function bp_get_thread_messages_order() {
     676        global $thread_template;
     677        return $thread_template->thread->messages_order;
     678    }
    670679
    671680function bp_thread_messages() {
  • trunk/bp-themes/bp-default/_inc/global.js

    r3380 r3384  
    838838    jq("input#send_reply_button").click(
    839839        function() {
     840            var order = jq('#messages_order').val() || 'ASC',
     841                offset = jq('#message-recipients').offset();
     842
    840843            jq('form#send-reply span.ajax-loader').toggle();
    841844
     
    857860                    jq('form#send-reply div#message').remove();
    858861                    jq("#message_content").val('');
    859                     jq('form#send-reply').before( response );
     862
     863                    if ( 'ASC' == order ) {
     864                        jq('form#send-reply').before( response );
     865                    } else {
     866                        jq('#message-recipients').after( response );
     867                        jq(window).scrollTop(offset.top);
     868                    }
    860869
    861870                    jq("div.new-message").hide().slideDown( 200, function() {
  • trunk/bp-themes/bp-default/members/single/messages/single.php

    r2434 r3384  
    8282
    8383                    <input type="hidden" id="thread_id" name="thread_id" value="<?php bp_the_thread_id(); ?>" />
     84                    <input type="hidden" id="messages_order" name="messages_order" value="<?php bp_thread_messages_order(); ?>" />
    8485                    <?php wp_nonce_field( 'messages_send_message', 'send_message_nonce' ) ?>
    8586
Note: See TracChangeset for help on using the changeset viewer.