Mini Kabibi Habibi

Current Path : C:/Users/Public/Documents/DXTREME 13.1 Demos/DXTravel/DXTravel.Tablet/views/
Upload File :
Current File : C:/Users/Public/Documents/DXTREME 13.1 Demos/DXTravel/DXTravel.Tablet/views/Trip_AddTravelers.js

DXTravel.Trip_AddTravelers = function(params) {

    var FacebookUtility = DevExpress.social.Facebook,
        facebookConnected = ko.observable(FacebookUtility.isConnected());

    FacebookUtility.connectionChanged.add(function(value) {
        facebookConnected(value);
    });

    var trip = ko.observable();        

    var facebookTopFriends = ko.observableArray(),
        facebookAllFriends = ko.observableArray(),
        facebookShowAll = ko.observable(false);

    DXTravel.tripModelById(params.tripId, function(result) {
        result.selectedSection = "travelers";
        trip(result);
    });

    ko.computed(function() {
        if(facebookConnected()) {
            $.when(
                DXTravel.FacebookUtils.loadFriends()
            ).then(
                function(result) {
                    facebookTopFriends(result.data.slice(0, 7));
                    facebookAllFriends(result.data);
                },
                function() {
                    FacebookUtility.logout();
                }
            );
        }
    });


    return {
        backAction: trip().travelersAction,
        backText: "Travelers",

        trip: trip,

        userType: ko.observable("traveler"),
        inviteType: ko.observable("facebook"),
        inviteEmail: ko.observable(),
        includeTripDetail: ko.observable(true),
        sendYourselfCopy: ko.observable(false),
                
        facebookTopFriends: facebookTopFriends,
        facebookAllFriends: facebookAllFriends,
        facebookShowAll: facebookShowAll,

        handleFacebookViewAll: function(m) {
            facebookShowAll(true);
        },

        facebookConnected: facebookConnected,

        handleFacebookLoginClick: function() {
            FacebookUtility.login("345589472186268");
        }

    };
};