Skip to:
Content

bbPress.org


Ignore:
Timestamp:
12/03/2010 08:03:43 AM (15 years ago)
Author:
johnjamesjacoby
Message:

Add topic subscription ability. Fixes #1366 props GautamGupta va Google Code-in

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/plugin/bbp-themes/bbp-twentyten/js/topic.js

    r2659 r2668  
    11bbpTopicJS = jQuery.extend( {
     2    // User and Topic
    23    currentUserId: '0',
    34    topicId: '0',
     5
     6    // Favorites
    47    favoritesLink: '',
    58    isFav: 0,
     
    912    favNo: '%favAdd% (%favLinkNo%)',
    1013    favDel: 'x',
    11     favAdd: 'Add this topic to your favorites'
     14    favAdd: 'Add this topic to your favorites',
     15
     16    // Subscriptions
     17    subsLink: '',
     18    subsActive: 0,
     19    isSubscribed: 0,
     20    subsSub: 'Subscribe',
     21    subsUns: 'Unsubscribe'
    1222}, bbpTopicJS );
    1323
    14 bbpTopicJS.isFav = parseInt( bbpTopicJS.isFav );
     24// Topic Global
     25bbpTopicJS.isFav        = parseInt( bbpTopicJS.isFav );
     26bbpTopicJS.subsActive   = parseInt( bbpTopicJS.subsActive );
     27bbpTopicJS.isSubscribed = parseInt( bbpTopicJS.isSubscribed );
    1528
     29// Run it
    1630jQuery( function($) {
    17     // Favorites
    18     var favoritesToggle = $('#favorite-toggle')
     31    /** Favorites *************************************************************/
     32    var favoritesToggle = $( '#favorite-toggle' )
    1933        .addClass( 'list:favorite' )
    2034        .wpList( { alt: '', dimAfter: favLinkSetup } );
     
    3953        favoritesToggle.get(0).wpList.process( favoritesToggle );
    4054    }
     55
     56    /** Subscriptions *********************************************************/
     57    if ( bbpTopicJS.subsActive == 1 ) {
     58        var subscriptionToggle = $( '#subscription-toggle' )
     59            .addClass( 'list:subscription' )
     60            .wpList( { alt: '', dimAfter: subsLinkSetup } );
     61
     62        var subscriptionToggleSpan = subscriptionToggle.children( 'span' )
     63            [bbpTopicJS.isSubscribed ? 'addClass' : 'removeClass' ]( 'is-subscribed' );
     64
     65        function subsLinkSetup() {
     66            bbpTopicJS.isSubscribed = subscriptionToggleSpan.is( '.is-subscribed' );
     67            var aLink = "<a href='" + bbpTopicJS.subsLink + "'>";
     68            var aDim  = "<a href='" + subscriptionToggleSpan.find( 'a[class^="dim:"]' ).attr( 'href' ) + "' class='dim:subscription-toggle:" + subscriptionToggleSpan.attr( 'id' ) + ":is-subscribed'>";
     69
     70            if ( bbpTopicJS.isSubscribed ) {
     71                html = aDim + bbpTopicJS.subsUns + '</a>';
     72            } else {
     73                html = aDim + bbpTopicJS.subsSub + '</a>';
     74            }
     75
     76            subscriptionToggleSpan.html( html );
     77            subscriptionToggle.get(0).wpList.process( subscriptionToggle );
     78        }
     79    }
     80
    4181} );
Note: See TracChangeset for help on using the changeset viewer.