var DataSources = {
salonData: [],
videos: []
};
var salonPageInit = function () {
salonPage.getRecentSalonVideos(1, salonId);
};
var salonPage = function () {
var getSalonData = function () {
var postData = {
userId: authenticatedUserId,
salonId: salonId
};
$.ajax({
type: "GET",
url: "mobile_dev_2015/Services/salon.asmx/GetSalonData",
data: postData,
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
var data = $.xml2json(msg);
console.log(data);
DataSources.salonData = eval('(' + msg.d.valueOf().toString() + ')');
console.log(DataSources.salonData);
config.render('salonDetailsTemplate', 'salon-details', DataSources.salonData);
config.render('salonFavTemplate', 'isfav', DataSources.salonData);
salonPageInit();
},
error: function (a, b, c) {
console.log(a);
console.log(b);
console.log(c);
}
});
};
var getRecentSalonVideos = function (pageNo, salonId) {
var postData = {
userId: authenticatedUserId,
pageNo: pageNo,
salonId: salonId
};
var uid = guid();
var pageId = "#salon-loader";
$.ajax({
type: "GET",
url: "mobile_dev_2015/Services/salon.asmx/GetRecentSalonsVideos",
data: postData,
beforeSend: function () {
commonDataSource.alreadyloading = true;
if (parseInt(pageNo) != 1) {
config.showPaginationLoder(uid, pageId);
}
},
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
var recentSalonVideos = eval('(' + msg.d.valueOf().toString() + ')');
if (recentSalonVideos.length > 0) {
$("#salon-video-page-no").val(parseInt(pageNo) + 1);
} else {
if (parseInt(pageNo) != 1) {
var html = "
";
setTimeout(function () {
$(".loading").remove();
$(pageId).append(html);
});
return;
}
}
console.log(recentSalonVideos);
DataSources.videos = DataSources.videos.concat(recentSalonVideos);
setTimeout(function () {
$(".loading").remove();
config.render('recentSalonVideoTemplate', 'salon-videos', recentSalonVideos);
commonDataSource.alreadyloading = false;
}, 1000);
},
error: function (a, b, c) {
console.log(a);
console.log(b);
console.log(c);
}
});
};
return {
getSalonData: getSalonData,
getRecentSalonVideos: getRecentSalonVideos
};
} ();
$(document).ready(function () {
salonPage.getSalonData();
});
$(document).on('click', '.leaveSalon', function () {
var msg = "";
var txt = $(this).text();
if (txt == "Pending") {
msg = "Are you sure to cancel the request..?";
}
if (txt == "Leave") {
msg = "Are you sure to leave this salon..?";
}
if (confirm(msg) == true) {
var salonId = $(this).attr("data-salonId");
leaveSalon(salonId, $(this));
}
});
$(document).on('click', '.joinSalon', function () {
var salonId = $(this).attr("data-salonId");
joinSalon(salonId, $(this));
});
// make and remove salon favourite
$(document).on('click', '#makeFav', function () {
var $this = $(this);
var salonId = $this.children().attr('data-salonid');
var userId = authenticatedUserId;
if ($this.hasClass("favouriteSalon")) {
changeFavourite("remove");
return;
} else {
changeFavourite("make");
return;
}
function changeFavourite(action) {
var postData = {
userId: userId,
salonId: salonId,
action: action
};
var $countElement = $this.children('.count');
$.ajax({
type: "POST",
url: "mobile_dev_2015/Services/salon.asmx/FavoriteSalon",
contentType: "application/json; charset=utf-8",
dataType: "json",
data: JSON.stringify(postData),
success: function (msg) {
if (msg.d == "Success") {
if (action == "remove") {
$this.children().attr("src", "../../images/img-notfav.png");
$this.removeClass("favouriteSalon");
$countElement.text(parseInt($countElement.text()) - 1);
} else {
$this.children().attr("src", "../../images/img-fav.png");
$this.addClass("favouriteSalon");
$countElement.text(parseInt($countElement.text()) + 1);
}
} else {
}
},
error: function (msg) {
}
});
}
});
function leaveSalon(salonId, obj) {
var postData = {
userId: authenticatedUserId,
salonId: salonId
};
$.ajax({
type: "POST",
url: "mobile_dev_2015/Services/salon.asmx/LeaveSalon",
data: JSON.stringify(postData),
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
var data = jQuery.parseJSON(eval('(' + msg.d.valueOf().toString() + ')'));
obj.removeClass('btn-danger').removeClass('btn-warning').removeClass('leaveSalon').addClass('btn-info').addClass('joinSalon').text('Join');
console.log(data);
showMessage("success", data.msg, "");
},
error: function (a, b, c) {
console.log(a);
console.log(b);
console.log(c);
showMessage("error", data.msg, "");
}
});
}
function joinSalon(salonId, obj) {
var postData = {
userId: authenticatedUserId,
salonId: salonId
};
$.ajax({
type: "POST",
url: "mobile_dev_2015/Services/salon.asmx/JoinSalon",
data: JSON.stringify(postData),
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
//var data = eval('(' + msg.d.valueOf().toString() + ')');
var data = jQuery.parseJSON(eval('(' + msg.d.valueOf().toString() + ')'));
if (data.type == "public") {
showMessage("success", data.msg, "");
obj.removeClass('btn-info').removeClass('joinSalon').addClass('btn-success').text('Joined');
setTimeout(function () {
obj.fadeOut();
}, 1500);
}
if (data.type == "private") {
showMessage("warning", data.msg, "");
obj.removeClass('btn-info').removeClass('joinSalon').addClass('btn-warning').addClass('leaveSalon').text('Pending');
}
console.log(data);
},
error: function (a, b, c) {
console.log(a);
console.log(b);
console.log(c);
showMessage("error", data.msg, "");
}
});
}