Mini Kabibi Habibi
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");
}
};
};