收藏

/*
 collect.js 收藏
 by sunhw 2014-8-21

 收藏接口:
 http://api.fun.tv/ajax/favorite/add/$id
 http://api.fun.tv/ajax/favorite/cancel/$id

 */
;
(function() {
    function Collect( option ) {
        this.option = T.object.extend( {
            root       : '',
            collectBtn : ''
        }, option || {} );
        this.map = {
            noadd          : '收藏',
            added          : '已收藏',
            addedTit       : '取消收藏',
            addedClassName : 'collected'
        };
        this.init();
    }

    Collect.prototype.bind = function() {
        var me = this;
        var btn = T.get( me.option.collectBtn );
        var vid = T.getAttr( T.get( me.option.root ), 'data-videoid' );
        var isCollected = T.dom.hasClass( btn, me.map.addedClassName );
        var type = isCollected ? 'cancel' : 'add';
        var url = F.config.api + '/ajax/favorite/' + type + '/' + vid;
        if ( F.tool.user.userid ) {
            F.get( url, function( json ) {
                if ( !json ) {return;}
                if ( json.status == 200 ) {
                    if ( isCollected ) {
                        T.dom.removeClass( btn, me.map.addedClassName );
                        T.q( 'txt', btn )[ 0 ].innerHTML = me.map.noadd;
                        T.setAttr( btn, 'title', me.map.noadd );
                    } else {
                        T.dom.addClass( btn, me.map.addedClassName );
                        T.q( 'txt', btn )[ 0 ].innerHTML = me.map.added;
                        T.setAttr( btn, 'title', me.map.addedTit );
                    }
                }
            } );
        } else {
            F.tool.ajaxLogin.panel();
        }
    }
    Collect.prototype.init = function() {
        var me = this;
        var btn = T.get( me.option.collectBtn );
        if ( !btn ) {
            return;
        }
        T.on( btn, 'click', function( e ) {
            T.event.stop( T.event.get( e ) );
            me.bind();
        } );
    }
    T.dom.ready( function() {
        var collect = new Collect( {
            root       : '_digglist',
            collectBtn : 'favorite'
        } );
    } );
})();

posted @ 2014-12-03 11:13  sunhw360  阅读(99)  评论(0编辑  收藏  举报