var groupIdArray = [];
var x = 0;
$(document).ready(function() {
	lessonHover();
	$("#requestBox").hide();
	$("#flagCourse").hide();
	$("a.joinBtn").click(
		function () {
			var btnId = $("a.joinBtn").attr("id");
			if(btnId=="btnSendReq") {
				var reqCourseId = $("#reqCourseId").val();
				var txtMsg = $("#requestMsg").val();
				$.post(appUrl+"/app/modules/learn/courseRequest.ajx.php",
					{
						courseId: reqCourseId,
						message: txtMsg
					}, function(data) {
						if(data=='success') {
							$("div.courseRequestBox").html(msgRequestSent);
						} else if(data=='pending') {
							$("div.courseRequestBox").html(msgPending);
						}
					}
				);
			} else {
				$("#requestBox").slideDown("slow");
				$("a.joinBtn").attr("id","btnSendReq");
			}
		}
	);
	$("#requstBox").hide();
	$("a.flagCourse").click(
		function () {
			$("#flagCourse").show();	
			$('#loaderpop').addClass("loading");
			var cId = $("#flagCourseId").val();
			$("#flagCourse").load(appUrl+"/app/modules/learn/courseFlag.php",
				{
					courseId: cId
				}, function () {
					$('#loaderpop').removeClass("loading");	
				}
			);
			return false;
		}
	);
});

function lessonHover() {
	$("#courseLessons p").hoverClass("lessonActive");
}

function rateCourse(id,rating){
	$.post(appUrl+"/app/modules/learn/courseRating.ajx.php",
	  	{	id:  id,
			rating: rating
		} ,	function(data){
			if(data){
				$("#rating"+id).width(data*1);
			}
			$("#ratingStar"+id).html("");
			$("#rate"+id).html("");
		}
	);
	return false;	
}


function playLesson(id, type, width, height, scrollbars){
	if(width==0){
		xOffset = yOffset = 0;
		width = screen.width;
		height = screen.height;
	}else{
		xOffset = (screen.width - width) / 2;
		yOffset = (screen.height - height) / 2;
	}
	if(scrollbars=='Y'){
		hasScroll = 'yes';
	}else{
		hasScroll = 'no';
	}
	changeLessonDisplay(id,type);
	lessonWin = window.open(appUrl+'/app/modules/learn/lessonPlay.pop.php?id='+id+'&type='+type, '_blank', 'height='+height+',width='+width+',left='+xOffset+',top='+yOffset+',status=no,toolbar=no,menubar=no,location=no,resizable=no, scrollbars='+hasScroll);
	lessonWin.focus(); 
}
function bookmarkCourse(cId) {
	//$('#loader_pop').addClass("loading"); 
	$.post(appUrl+"/app/modules/learn/bookmarks.ajx.php",
		{
			courseId: cId,
			action: "add"
		}, function (data) {
			var htm = '<a href="#" class="removeBookmark" onclick="removeBookmark('+cId+')" >'+lblremoveBookmark+'</a>';
			$("#courseBookmark"+cId).html(htm);
		}
	);
	//return false;
}
function removeBookmark(cId) {
	$.post(appUrl+"/app/modules/learn/bookmarks.ajx.php",
		{
			courseId: cId,
			action: "remove"
		}, function (data) {
			var htm = '<a href="#" class="courseBookmark" onclick="bookmarkCourse('+cId+')" >'+lblbookmarkCourse+'</a>';
			$("#courseBookmark"+cId).html(htm);
		}
	);
	//return false;
}
function removeBookmarkList(cId) {
	if(confirm(confirmRemove)) {
		var pageNo = $("#pageNo").val();
		var rowCount = $("#rowCount").val();
		if(rowCount<pageNo) {
			pageNo= pageNo-1;
		}
		$("#markedCourseList").load( appUrl+'/app/modules/learn/bookmarksList.php',
			{
				courseId: cId,
				action: "listRemove",
				page: pageNo
			}
		
		);
	}
	return false;
}
function getLearnedByUsers(pageNo) {
	var courseid = $("#learnedCourseId").val();
	$("#courseUsers").load(appUrl+"/app/modules/learn/courseLearnedBy.ajx.php",
		{
			page: pageNo,
			courseId: courseid
		}
	);
}

function lessonNote(lessonId){
	height=500;
	width= 600;
	xOffset = (screen.width - width) / 2;
	yOffset = (screen.height - height) / 2;
	lessonWin = window.open(appUrl+'/app/modules/learn/lessonNote.php?id='+lessonId, '_blank', 'height='+height+',width='+width+',left='+xOffset+',top='+yOffset+',status=np,toolbar=no,menubar=no,location=no,resizable=no');
	lessonWin.focus(); 
}
function courseLogin(){
	document.forms['courseLogin'].submit();
}
function loadRequestBox(cId) {
	$('#loader_pop').addClass("loading"); 
	//$("#requstBox").hide();	
	$("#requstBox").show();
	$("#requstBox").load(appUrl+'/app/modules/learn/courseRequest.php',
		{	
			courseId: cId
		},
		function (){
			$('#loader_pop').removeClass("loading"); 
		}
	);
}

function hideRequestBox() {
	$('#requstBox').slideUp(400);
}
function sendCourseRequest() {
	var cid = $("#reqCourseId").val();
	var reqMsg = $("#reqMessage").val();
	$.post(appUrl+"/app/modules/learn/courseRequest.ajx.php",
		{
			courseId: cid,
			message: reqMsg
		}, function(data) {
			if(data=='success') {
				$("#requstBox").html('<div>'+msgRequestSent+'</div>');
			} else if(data=='pending') {
				$("#requstBox").html('<div>'+msgPending+'</div>');
			}
		}
	);
}

function changeNoteDisplay(id){
	$("#"+id).removeAttr("class");
	$("#"+id).attr("class","lessonNoteActive");
}
function changeLessonDisplay(id,type){
	$("#lesson"+id).removeAttr("class");
	$("#lesson"+id).attr("class","lesson"+type+"View");
}
function flagThisCourse() {
	$("#flagFrm input[@type=radio]").each(function () {
		if(this.checked) {
			var cId = $("#flagCourseId").val();
			$('#loaderpop').addClass("loading");
			$.post(appUrl+"/app/modules/learn/courseFlag.ajx.php",
				{
					flagType: this.id,
					courseId: cId
				}, function(data) {
					$("#flagCourse").html(data);
					$('#loaderpop').removeClass("loading");
				}
			);
		}
	});	
}

function validatePayment(){
	if($("#business").val()!=buyerId){
		alert('Invalid paypal id');
		return false;	
	}else{
		return true;
	}
}
/**
 * To list user groups
 */
function showUserGroups(courseId) {
	TB_show(courseGroups, appUrl+"/app/modules/learn/courseGroups.pop.php?height=400&amp;width=300&TB_loadFunction=courseGroupsInit&courseId="+courseId);
	return false;
}
/**
 * Course groups init
 */
function courseGroupsInit() {
	
}
/**
 * Add course to groups
 */
function addCourseToGroups() {
	var gid = '';
	var courseId = $("#groupCourseId").val();
	if(groupIdArray.length > 0) {
		gid = groupIdArray.join(',');	
		showGrpLoader();
		$.post(appUrl+'/app/modules/learn/courseDetails.ajx.php',
			{
				courseId: courseId,
				selectedIds: gid,
				action: "addToGroup"
			}, function(response) {
				hideGrpLoader();
				TB_remove();
			}
		);	
	}
}
function getMemberGroupsList(pageNo) {
	var cid = $("#groupCourseId").val();
	if(groupIdArray.length > 0) {
		var groupIds = 	groupIdArray.join(',');
	}
	showGrpLoader();
	$("#courseGrpLists").load(appUrl+'/app/modules/learn/courseGroups.pop.php',
		{
			courseId: cid,
			page: pageNo,
			selectedGroupIds: groupIds,
			action: "grpList"
		}
	);
}
function checkAllGroups(checkBox) {
	var frm = document.forms['frmGroup'];
	if(checkBox.checked){
		for (var i=0; i < frm.elements.length; i++)  {
		var e =	frm.elements[i];
			if (e.type == 'checkbox' && e.name == 'group[]') {
				e.checked = true;
			}
		}
	} else {
		for (var i=0; i < frm.elements.length; i++)  {
		var e =	frm.elements[i];
			if (e.type == 'checkbox' && e.name == 'group[]') {
				e.checked = false;
			}
		}
	}
	moveAllGroupsId();
}
function moveGroupId(groupId) {
	if ($('#group_'+groupId).is(":checked")) {
		groupIdArray[x] = groupId;
		x++;
	} else {
		removegroupId(groupId);
	}
}
function moveAllGroupsId() {
	var frm = document.forms['frmGroup'];
	groupIdArray = [];
	x = 0;
	if ($('#selectAll').is(":checked")) {
		for (var i=0; i < frm.elements.length; i++)  {
			var e =	frm.elements[i];
			if (e.type == 'checkbox' && e.name == 'group[]' && e.checked) {
				groupIdArray[x] = e.value;
				x++;
			}
		}
	} else {
		for (var i=0; i < frm.elements.length; i++)  {
			var e =	frm.elements[i];
			if (e.type == 'checkbox' && e.name == 'group[]') {
				removegroupId(e.value);
			}
		}
	}
}
function removegroupId(groupId) {
	if(groupIdArray.length > 0) {
		for(i in groupIdArray) {
			if(groupIdArray[i] == groupId) {
				groupIdArray[i] = '';
			}
		}
	}
}
function showGrpLoader() {
	$(".ajxLoader").show();	
}
function hideGrpLoader() {
	$(".ajxLoader").hide();	
}

/* Below part is from dhanesh 
These parts coming on the part of right block.
*/

function initConfirmationBox(msgConfirm){
	var objConfirm = new Confirmation(407,130,msgConfirm);
	$("#confirmWraper").css({display:'block'});
	objConfirm.moveConfirm();
	return objConfirm;
	
}

function leaveCourse(userId,authorId,courseId){
	objConfirm = initConfirmationBox(msgConfirm);
	$("#confirmBtnOk").click( function() { 
	objConfirm.ok();
		
	hideMessage('show');
	if(userId && authorId &&courseId){
		$.post(appUrl+'/app/modules/learn/courseOPtions.ajx.php',
			{
				courseId: courseId,
				authorId: authorId,
				userId: userId,
				action: "leaveCourse"
			}, function(response) {
				if(response=='removed'){
					showMessage(msgRemoved,'true','msg');
				}else if(response=='failed'){
					showMessage(noAccessMessage,'true','err');
				}else if(response=='waiting'){
					showMessage(msgWaiting,'true','msg');
				}else if(response=='success'){
					showMessage(msgRequestSend,'true','msg');
				}
			 setTimeout('hideMessage(\'hide\')',5000)	
			}
		);	
	}
	$("#confirmBtnOk").unbind( "click" );  // Unbinding the click
	});
	

}


function confirmClick(clickBtn){
	var objConfirm = new Confirmation(407,130,msgConfirm);
	if(clickBtn=='cancel'){
		objConfirm.cancel(); 
		return false;
	}
}



function showMessage(message,bg,dsplayModel){
	$("#optionsLoader").html(message);	
	if(bg=='true'){
		$("#optionsLoader").css("background-image","none");	
	}
	if(dsplayModel=='msg'){
		$("#optionsLoader").css({color: "#49694C" , background: "#F1FDF1" , border: "1px solid #5EB05B" , textalign : "justify" });	
	}else{
		$("#optionsLoader").css({ color: "red", background: "#FDF1F1", border:"1px solid #E8B098" });
	}
}

function hideMessage(mode){
	if(mode=='hide'){
		$("#optionsLoader").fadeOut("slow");
		$("#optionsLoader").html("");
	}else{
		$("#optionsLoader").fadeIn("slow");	
		$("#optionsLoader").css({ color: "#49694C" , background:"url("+themeUrl+"/images/ajax-loader.courseOptions.gif) no-repeat left" , border:"0px solid #E8B098"  });	
		$("#optionsLoader").html("Please wait");
	}
}

function showPassword(){
	alert('showPassword');
}

function validatePassword(userId,courseId){
	hideMessage('show');
	if($('#passwordBox').val()==''){
		showMessage('Please enter a password.','true','err');
	}else{
		
		$.post(appUrl+'/app/modules/learn/courseOPtions.ajx.php',
			{
				courseId	: courseId,
				userId		: userId,
				password	: $('#passwordBox').val(),
				action		: "passwordAccess"
			}, function(response) {
				if(response=='succes'){
					showMessage(msgPermissionGranted,'true','msg');
					window.location.reload();
				}else if(response=='invalidPassword'){
					showMessage(errInvalidPassword,'true','err');
				}else if(response=='exists'){
					showMessage('Already in access list','true','err');
				}
			  setTimeout('hideMessage(\'hide\')',5000)	
			}
		);	
		
	}
	return false;
}


function authorLeaving(userId,authorId,courseId){
	objConfirm = initConfirmationBox(msgConfirmAuthRemoval);
	$("#confirmBtnOk").click( function() { 
	objConfirm.ok();
	hideMessage('show');
	if(userId && authorId &&courseId){
		$.post(appUrl+'/app/modules/learn/courseOPtions.ajx.php',
			{
				courseId: courseId,
				authorId: authorId,
				userId: userId,
				action: "leaveAuthor"
			}, function(response) {
				if(response=='removed'){
					showMessage(msgRemoved,'true','msg');
				}else if(response=='failed'){
					showMessage(noAccessMessage,'true','err');
				}else if(response=='waiting'){
					showMessage(msgWaiting,'true','msg');
				}else if(response=='success'){
					showMessage(msgRequestSend,'true','msg');
				}
			 setTimeout('hideMessage(\'hide\')',5000)	
			}
		);
	}
	$("#confirmBtnOk").unbind( "click" );  // Unbinding the click	
	});
}
/*End of the right block. from dhanesh  */

function playObjectiveLesson(nodeId, type, width, height, scrollbars,id,objectiveId){
	if(width==0){
		xOffset = yOffset = 0;
		width = screen.width;
		height = screen.height;
	}else{
		xOffset = (screen.width - width) / 2;
		yOffset = (screen.height - height) / 2;
	}
	if(scrollbars=='Y'){
		hasScroll = 'yes';
	}else{
		hasScroll = 'no';
	}
	
	changeLessonDisplay(id,type);
	
	$.post(appUrl+'/app/modules/learn/objectives.ajx.php',{
			objectiveId	: objectiveId,
			id			: id,
			type		: type,
			action		: "updateObjLessons"
	},function(response) {
		response = filterResponse(response);
		if(response['status']=='updated'){
			$("#progress").width(response['graphWidth']);
			$("#percentage").html(response['percentage']+'%');
			$("#lessonProgress").html(response['learnStatus']);
		}
	});
	lessonWin = window.open(appUrl+'/app/modules/learn/objectivePlay.pop.php?nodeId='+nodeId+'&objectiveId='+objectiveId+'&id='+id+'&type='+type, '_blank', 'height='+height+',width='+width+',left='+xOffset+',top='+yOffset+',status=no,toolbar=no,menubar=no,location=no,resizable=no, scrollbars='+hasScroll);
	lessonWin.focus(); 
}


function startObjective(objectiveId,noDays){
	$.post(appUrl+'/app/modules/learn/objectives.ajx.php',{
			id			: objectiveId,
			noDays		: noDays,
			action		: "startObjectives"
		}, 
		function(response) {
			if(response=='started'){
				window.location.reload();
			}
		}
	);	
	return false;
}

function showObjectives(courseId,objectiveId){
	if($("#objectives_"+courseId).html()==''){
		showLessonsLoader(courseId);
		$.post(appUrl+'/app/modules/learn/objectiveLessons.ajx.php',{
				courseId : courseId, objectiveId:objectiveId 
		},function(response) {
			if(response){
				$("#objectives_"+courseId).removeClass('lessonLoader');
				$("#objectives_"+courseId).html(response);
				$("#link_"+courseId).css({ background:"url("+themeUrl+"/images/objective.btn.upDown.gif) no-repeat top" });
				$("#title_"+courseId).css({fontWeight:"bold" });
			}
		});
		hideLessonsLoader(courseId);
	}else{
		$("#objectives_"+courseId).html('');
		$("#link_"+courseId).css({ background:"url("+themeUrl+"/images/objective.btn.upDown.gif) no-repeat bottom" });
		$("#title_"+courseId).css({fontWeight:"normal" });
	}			
	return false;
}

function showLessonsLoader(courseId){
	$("#objectives_"+courseId).addClass('lessonLoader');
	return false;
}
function hideLessonsLoader(courseId){
	return false;
}

function filterResponse(responseData){
	var response = responseData;
	try	{
		response = response.replace(/\r/g, "\\r");
		response = response.replace(/\n/g, "\\n");
		response = response.replace(/&quot;/g, '\\"');
		response = response.replace(/&amp;/g, '\\&');
		response = eval("(" + response + ")");
		return response;
	}
	catch(err)
	{
		var response = responseData;
		try	{
			response = eval("(" + response + ")");
			return response;
		}
		catch(err)
		{
			return false;
		}
		return false;
	}
	
}

