(function( $ ) {

$.widget( "ui.pager", {

    options: {
        nextFilter: ".next",
        previousFilter: ".previous",
        $songArray: null
    },

    _init: function() {
        var self = this,
            $previous = self.element.find( this.options.previousFilter ),
            $next = self.element.find( this.options.nextFilter );

        // Create previous button
        $previous.button({
            disabled: true,
			label: "Previous",
			icons: {
				primary: "ui-icon-triangle-1-w"
			},
            text: false
        })
        .click( function( event ) {
            self.options.$songArray.songArray( 'prevPage' );
            return false;
        });

        // Create next button
        $next.button({
            disabled: true,
			label: "Next",
			icons: {
				primary: "ui-icon-triangle-1-e"
			},
            text: false
        })
        .click( function( event ) {
            self.options.$songArray.songArray( 'nextPage' );
            return false;
        });

        self.options.$songArray.bind( 'arrayPageChanged.songArray.pager', function( event, page ) {
            if( !page ) {
                return;
            }

            if( page.linkParams.prev ) {
                $previous.button( 'enable' );
            }
            else {
                $previous.button( 'disable' );
            }

            if( page.linkParams.next ) {
                $next.button( 'enable' );
            }
            else {
                $next.button( 'disable' );
            }
        });
    }
});

})( jQuery );

