﻿function createCookie(name,value,days) 
{
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) 
{
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function eraseCookie(name) 
{
	createCookie(name,"",-1);
}

function addBookmark(bm_surat, bm_ruku, customNameDel)
{
	// This method is used to toggle bookmark on and off
	// customNameDel variable is used when a custom name is define for bookmark and this method is called to delete the bookmark
	if(!customNameDel)
	{
		customNameDel = "";
	}	
	var name;
	var value;
	
	
	if(document.getElementById('bookmark_text').value && !customNameDel)
	{
		name = 'Bookmark_'+document.getElementById('bookmark_text').value;
		value = 'Bookmark_1_'+t_surah_name+'_'+bm_surat+'_'+bm_ruku;
	}
	else
	{
		name = 'Bookmark_'+ 'Surah '+t_surah_name+'(Ruku '+bm_ruku+')';
		value = 'Bookmark_0_'+t_surah_name+'_'+bm_surat+'_'+bm_ruku;
	}
	
	
	//date = date.maxValue();
	//var expires = "; expires="+date.toGMTString();
	
	if(!checkCurrentLocationForBM(bm_surat, bm_ruku))
	{
		createCookie(name, value, 7);
		
		//document.cookie = name+"="+value+expires+"; path=/";
	
		readBMCookie('Bookmark', 0);
		updateBMStatus(true, bm_surat, bm_ruku);
		//window.open(link,"Add bookmark","menubar=no,width=330,height=260,toolbar=no,screenX=300,screenY=300");
	}
	else
	{
		eraseCookie(name);
		readBMCookie('Bookmark', 0);
		updateBMStatus(false, bm_surat, bm_ruku);
	}
	
}

function updateBMStatus(status, tempSurah, tempRuku)
{
	if(!tempSurah)
	{
		tempSurah = surat;
	}
	if(!tempRuku)
	{
		tempRuku = rukuNumber;
	}
	if(tempSurah == surat && tempRuku == rukuNumber)
	{
		if(status)
		{
			$('#div_bookmark').css('background-image', 'url("images/bookmark1.png")');
		}
		else
		{
			$('#div_bookmark').css('background-image', 'url("images/bookmark0.png")');
		}
	}
}

function readBMCookie(name, funct) 
{
	//funct can be used for multipurposes
	//funct = 0 for simply writing to bookmark menu from cookies
	//funct = 1 for checking cookie for specific location
	
	var nameEQ;
	var ca = document.cookie.split(';');
	var count = 0;
	bookMarkHtml = '<ul class="the_menu">';
	
	if(funct)
	{	
		nameEQ = 'Bookmark_';
	}
	else
	{
		nameEQ = name + "_";
	}
	var flag=0;
	
	for(var i=0;i < ca.length;i++) 
	{
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0)
		{
			count+=1;
			var arr=new Array();
			var arrBMName = new Array();
			arr = c.split('=');
		
			arrBMName = arr[0].split('_');
			arr = arr[1].split('_');
		
			if(funct)
			{
				var arrCheck = name.split('_');
				var surahCheck = arrCheck[1];
				var rukuCheck = arrCheck[2];
				
				if(surahCheck == arr[3] && rukuCheck == arr[4])
				{
					return true;
				}
			}
			flag=1;
			bookMarkHtml += '<li><a href="javascript:bookmarkLink('+arr[3]+','+arr[4]+')">'+arrBMName[1]+'&nbsp;<img src="images/delete.png" align="center" onclick="javascript:deleteCookie('+arr[3]+','+arr[4]+')"></a></li>';				
	
		}
	}
	
	if(flag==0){
	bookMarkHtml += '<li><b>No Book Marks</b></li>';
	}
	bookMarkHtml += '</ul>';
	
	if(funct == 0)
	{
		if(count <2)
		{
			count*= 28;
		}
		else if(count < 3)
		{
			count*=20;
		}
		else if(count < 6)
		{
			count*=19;
		}
		else
		{
			count*=17;
		}
		
		$('#bookmark_dropdown').html(bookMarkHtml);
		//$('#div_bookmarklist').css('height', count);
	}
	return false;
}

function deleteCookie(bm_surat, bm_ruku)
{
	var nameEQ;
	var ca = document.cookie.split(';');
	var count = 0;
	
	nameEQ = "Bookmark_";
	
	for(var i=0;i < ca.length;i++) 
	{
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0)
		{
			count+=1;
			var arr=new Array();
			var arrVal = new Array();
			var arrBMName = new Array();
			arr = c.split('=');
		
			arrBMName = arr[0].split('_');
			arrVal = arr[1].split('_');
			
			if(bm_surat == parseInt(arrVal[3]) && bm_ruku == parseInt(arrVal[4]))
			{
				eraseCookie(arr[0]);
				readBMCookie('Bookmark', 0);
				checkCurrentLocationForBM(bm_surat, bm_ruku);
			}			
		}
	}
}
function checkCurrentLocationForBM(bm_surat, bm_ruku)
{
	var toCheck = 'Bookmark_'+bm_surat+'_'+bm_ruku;
	
	if(readBMCookie(toCheck, 1))
	{			
		updateBMStatus(true, bm_surat, bm_ruku);
		return true;
	}
	else
	{	
		updateBMStatus(false, bm_surat, bm_ruku);
		return false;
	}
}
