function $(id) {
    return document.getElementById(id);
}

function showAjaxError(req) {
    openMessageBox("Error: "+req.status+":"+req.statusText+" <br /> "+req.responseText);
}

function resizeClearances() {
 	var newHeight = parseInt(parseInt(document.getElementById('menuContainer').offsetHeight) + parseInt(document.getElementById('smallSearchContainer').offsetHeight))
               - parseInt(document.getElementById('menuTable').offsetHeight);
    document.getElementById('smallSearchContainer').style.height = newHeight;
}

function changeTagsOrder(page, selectElement) {
	var callback = function(status, req) {
		if (status == 0) {
			if(document.getElementById("tagsContainer")) {
				contentElem = document.getElementById("tagsContainer");
				contentElem.innerHTML = req.responseText;
			} else {
				contentElem = document.getElementById("contentContainer");
				contentElem.innerHTML = req.responseText;
			}
			
        } else if (status == -1) {
            // on Fault cases
            alert("Fault! Code:"+fault.exceptionCode+", Message:"+fault.exceptionMessage);
        } else {
            alert("Unknown problems. Status code:"+req.status+", Status text:"+req.statusText);        	
		}
    }
	selectElement.options.SelectedIndex = selectElement.options.selectedIndex;	
	var parameters = "?" + page+"&sortby="+selectElement.options[selectElement.options.selectedIndex].value;
		
	document.location.href = parameters;	
}

function changePage(item, pagerId) {
    if(item.id == "next") {
        document.getElementById(pagerId).value = parseInt(document.getElementById(pagerId).value) + 1;
    } else if(item.id == "prev") {
        document.getElementById(pagerId).value = document.getElementById(pagerId).value - 1;
    }
    document.getElementById(pagerId).onchange();

}

function readCookieJSessId(check_cookie_name) {
	
	// first we'll split this cookie up into name/value pairs
	// note: document.cookie only returns name=value, not the other components
	var all_cookies = document.cookie.split( ';' );
	var temp_cookie = '';
	var cookie_name = '';
	var cookie_value = '';
	var cookie_found = false; // set boolean t/f default f
	
	for ( i = 0; i < all_cookies.length; i++ ) {
    	// now we'll split apart each name=value pair
		temp_cookie = all_cookies[i].split( '=' );
				
		// and trim left/right whitespace while we're at it
		cookie_name = temp_cookie[0].replace(/^\s+|\s+$/g, '');
	
		// if the extracted name matches passed check_name
		if ( cookie_name == check_cookie_name ) {
			cookie_found = true;
			// we need to handle case where cookie has no value but exists (no = sign, that is):
			if ( temp_cookie.length > 1 )
			{
				cookie_value = unescape(temp_cookie[1].replace(/^\s+|\s+$/g, ''));				
			}
			// note that in cases where cookie is initialized but no value, null is returned
			return cookie_value;
			break;
		}
		temp_cookie = null;
		cookie_name = '';
	}
	if ( !cookie_found )
	{
		return null;
	}		
}

function SubmitRateConfirm(rate) {
	document.getElementById("ratingValue").value=parseInt(rate);
	openAjaxMessageBox('page=photos-unwanted-content-confirm&caption=info_submit_rating_confirmation', '');
}

function submitRate() {
	var callback = function(status, req) {
		if (status == 0) {
			closeMessageBox();
        } else if (status == -1) {        
            alert("Fault! Code:"+fault.exceptionCode+", Message:"+fault.exceptionMessage);
        } else {
            alert("Unknown problems. Status code:"+req.status+", Status text:"+req.statusText);        	
		}
    }
	var val = parseInt(document.getElementById("ratingValue").value) + 1;//parseInt(rate) + 1;
	
	parameters = "page=albums-photo-rate"+"&id="+document.getElementById("previewFavoriteId").value+"&rating="+val+"&ajax=1";
	ajaxCall(parameters, callback, true);
	document.getElementById("ratingsTable").style.display='none';	
}

function addPhotoToFavouriteAlbum() {
	var callback = function(status, req) {
		if (status == 0) {
			document.getElementById("addToFavouriteId").src="img/icon-added-to-favorites.gif";
        } else if (status == -1) {
            // on Fault cases
            alert("Fault! Code:"+fault.exceptionCode+", Message:"+fault.exceptionMessage);
        } else {
            //alert("Unknown problems. Status code:"+req.status+", Status text:"+req.statusText);
        	openAjaxMessageBox("page=show-ajax-login&text=info_login_message_box_favorite_photo", "setFavoriteParams()");
		}
    }
	
	var parameters = "page=albums-photo-favourite"+"&id="+document.getElementById("previewFavoriteId").value+"&ajax=1";	
	ajaxCall(parameters, callback, true);	
}

function setFavoriteParams() {	
	
	if(document.getElementById("submitAjaxLogin")) {
		document.getElementById("submitAjaxLogin").onclick = function () {
			sendAjaxLogin('page=login', true, "addPhotoToFavouriteAlbum()");		
		}	
	}
}

function setRate(radioObj) {
	var rateInput = document.getElementById("ratingValue");
	rateInput.value = radioObj.value;
}

// Paging
function simpleChangePage(page, item, pagerId) {
    var pageId = parseInt(item.innerHTML) - 1;
    if(pageId=='NaN') {pageId=0;}
    var parameters = "?page=" + page + "&p=" + pageId;
    if ($("pagingParameters") && $("pagingParameters").value && $("pagingParameters").value != ""){ parameters+= "&"+$("pagingParameters").value; }    
    parameters+="&m=3";
    document.location.href = parameters;
}

function simpleChangePageFirstLast(page, firstLast, item, pagerId) {
    var pageId = parseInt(firstLast);
    if(pageId=='NaN') {pageId=0;}
    var parameters = "?page=" + page + "&p=" + pageId;
    if ($("pagingParameters") && $("pagingParameters").value && $("pagingParameters").value != ""){ parameters+= "&"+$("pagingParameters").value; }
    
    parameters+="&m=4";
    document.location.href = parameters;
}

function newAjaxChangePage(page, item, pagerId) {
    var pageId = parseInt(item.innerHTML) - 1;
    ajaxChangePage(pageId, page);
}

function newAjaxChangePageFirstLast(page, firstLast, item, pagerId) {
    var pageId = parseInt(firstLast);
    ajaxChangePage(pageId, page);
}

function ajaxChangePage(pageId, page) {
	var callback = function(status, req) {
		if (status == 0) {
			contName = "";
			if($("pagingContainerNamePop")) {
				contName = $("pagingContainerNamePop").value;
			} else {
            	contName = $("pagingContainerName").value;
			}            
			contentElem = $(contName);
			contentElem.innerHTML = req.responseText;
			
			if(document.getElementById("commentsContainer")) {
				var anchorPosition = getPosition(document.getElementById("commentsAnchor"));
				scroll(anchorPosition.x, anchorPosition.y);
			} else {
				//scroll(0, 0);
			}
            
			if($("pagingCallbackFuncsPop") && $("pagingCallbackFuncsPop").value){
                eval($("pagingCallbackFuncsPop").value);
            } else if($("pagingCallbackFuncs") && $("pagingCallbackFuncs").value){				
				eval($("pagingCallbackFuncs").value);
			} 
        } else if (status == -1) {
            // on Fault cases
            alert("Fault! Code:"+fault.exceptionCode+", Message:"+fault.exceptionMessage);
        } else {
            alert("Unknown problems. Status code:"+req.status+", Status text:"+req.statusText);
        }
    }

	var parameters = "page="+page+"&pagerValue="+pageId;
	if(document.getElementById("countryOptions")) {
		var countrySelect = document.getElementById("countryOptions");
		parameters+="&countryId="+countrySelect.options[countrySelect.options.selectedIndex].value+"&ajax=1";
	}
	if($("pagingParametersPop") && $("pagingParametersPop").value && $("pagingParametersPop").value != ""){ parameters+= "&"+$("pagingParametersPop").value+"&ajax=1"; }
	else if ($("pagingParameters") && $("pagingParameters").value && $("pagingParameters").value != ""){ parameters+= "&"+$("pagingParameters").value+"&ajax=1";}
	ajaxCall(parameters, callback, true);
}


function ratingOver(rate) {
    for(i = 0; i < 5; i++){
        $("rate_"+i).className = i <= rate ? "filled" : "";
    }
}

function ratingOut(inputId){
	var rate = $(inputId).value;
    for(i = 0; i < 5; i++){
        $("rate_"+i).className = i <= rate ? "filled" : "";
    }
}

function ratingClick(rate, inputId){
    $(inputId).value = rate;
}


function submitenter(myfield, e) {
	var keycode;
	if (window.event) keycode = window.event.keyCode;
	else if (e) keycode = e.which;
	else return true;
	
	if (keycode == 13)
	   {
	   myfield.form.submit();
	   return false;
	   }
	else
	   return true;
}

function removeBasketItem(id, psi_id) {
	document.location.href = "/?page=basket-item-remove&id="+id+"&psi_id="+psi_id+"";
}

function clearBasket(){
	var choice = confirm("Do you want empty the basket");
	if( choice ){
		document.location.href = "/?page=basket-clear&redirect=true";
	}
}

function checkoutLater(){
	openAjaxMessageBox('page=show-ajax-login&text=basket_content_save', "loginBox()");
}

function loginBox() {
	if(document.getElementById("submitAjaxLogin")) {
		document.getElementById("submitAjaxLogin").onclick = function () {
			sendAjaxLogin('page=login', true, "window.location.href='/?page=basket-view'");		
		}	
	}		
}



function basketSizeNumber(number){
	$("basket").style.display = "inline";
	$("size").style.display = "inline";
	$("size").value = number;

}

function localUploadUser() {
	document.accountForm.submit();
}


function checkAlbum(){
	var val = document.getElementById("albumsOptions").value;
	if( val ==  "" ){
		alert('You must choose album.');
	}else{
        var account = document.getElementById("accountOptions").value;
        var album = document.getElementById("albumsOptions").value;
        document.getElementById("accountId").value =  account;
        document.getElementById("albumId").value = album;
            
		document.uploadForm.submit();
	}
}


String.prototype.startsWith = function(s) { return this.indexOf(s)==0; }
function addGAd(){
google_ad_client = 'pub-7872916044999602';
//RightSideAds
google_ad_slot = '4357807982';
google_ad_width = 160;
google_ad_height = 600;
}
var _uacct;
function setGAds(){
	_uacct = "UA-3194178-1";	
}
