function showSubmenu(id){
	if (document.getElementById(id).style.visibility == 'visible') {
		document.getElementById(id).style.visibility = 'hidden';
		return;
	}

	$(".filter_list").each (function () {this.style.visibility = 'hidden';})
	document.getElementById(id).style.visibility = 'visible';

}
function hideSubmenu(id){
	document.getElementById(id).style.visibility = 'hidden';
	/*startSearch();*/
}
var state;
var force_open;

function toggleAll(id, value){
	 state = value;
	$('#' + id + ' input').each( function () {
		this.checked = state;
	});
 	startSearch();
}


function setPerPage(cnt) {
	per_page = cnt;
	page = 1;
	Refine()
}

function setPage(p){
	if (p >0 && p <= page_count){
		page = p;
		startSearch(1);
	}
}

function showNext(force){
	if (force) {
		force_open = force;
	} else {
		force_open = 0;
	}
	if (page < page_count){
		page++;
		startSearch(1);
	}

}

function showPrev(force){
	if (force) {
		force_open = force;
	} else {
		force_open = 0;
	}
	if (page >1){
		page--;
		startSearch(1);
	}

}

function showPage(pageNum) {
 
	if (page >=1){
		page = pageNum;
		startSearch(1);
	}
}


var pager;
function drawPager() {
	var max = ( page * per_page);
	if (max > item_count) max = item_count;
	/*
	$(".pager")
		 .html( 'View ' + ((page-1) * per_page + 1) + '-' + max + ' of ' + item_count );
	*/
		 
	$('#pgCount').html(' of '+page_count);	 
	
	pg = (page_count?page_count+1:2);
    var selPage = $('.pages>select').get(0);
    selPage.options.length=0;
    for(i=1; i<pg; i++)
    {
        $('<option value="'+ i +'" >'+ i + '</option>').appendTo(selPage);
    }
    selPage.options.selectedIndex = page-1;
    
        

	if (page <= 1) {
		$(".arr_left").css('visibility', 'hidden');
	} 
	else {
		$(".arr_left").css('visibility', 'visible');
	}
	if (page >= page_count) {
		$(".arr_right").css('visibility', 'hidden');
	} 
	else {
		$(".arr_right").css('visibility', 'visible');
	}

}

function saveCount(count, num_per_page){
	//page = 1;
	/*
	per_page = num_per_page;
	item_count = count;
	page_count = Math.ceil(count/per_page)

	drawPager();
	*/
}

function showYear(year){
	page = 1;
	Search('year[]=' + year)
}
function showIndustry(industry){
	page = 1;
	Search('industries[]=' + industry)
}
function showService(service){
	page = 1;
	Search('services[]=' + service)
}


function startSearch(savePage) {
	if (!savePage){
		page = 1;
	}
	Search($(".filter_select").serialize() +'&view=list' +'&page=' + page)
	//Search($(".filter_list input:checked").serialize() + '&page=' + page)
}

var oldParams = '';

var ProjectIds = new Array();

function Search(params){

	if (params == oldParams) {
		return;
	}
	oldParams = params;

	$("#loading").get(0).style.visibility = 'visible';

	/*$(".filter_list").each (function () {this.style.visibility = 'hidden';})*/

	jQuery.post(
		'/portfolio/',
		params,
		function (json){

			$("#loading").get(0).style.visibility = 'hidden';
			$("#pholio_container").empty();
			var cnt = 1;
			saveCount(json.count, json.per_page);

			var counter = 0;
			var count = 0;
			var years = json.years;

			ProjectIds = new Array();
			var year = '';
			for (var count = 0; count < years.length; count++) {
			    year=years[count].year;
			    var projects = years[count].projects;
			    
			    if(projects && projects.length>0) {
    			    $(
                        '<div id="pholio_gallery">'+
                        '<ul id="y' + year + '" class="pholio_block">'+
    
            			'<li class="pholio_year">'+year+
                		'</li>'+
                        '</ul></div>'
                	).appendTo($("#pholio_container"));
            		
			    
        			for (var pcount = 0; pcount < projects.length; pcount++) {
        				if (cnt >3 ) {
        					cnt = 1;
        				}
        				var project = projects[pcount];
        				
        				var sAppendTo = "div#pholio_container > div#pholio_gallery > ul#y"+year+".pholio_block";
        
        				//  console.log(sAppendTo);
        				
        				ProjectIds[counter] = project.id;
            			$(
                			'<li class="pholio_project">'+
                                '<a href="/portfolio/'+ project.id +'.html"> '+project.name+' </a>'+
                                '<img width="5" height="7" align="absmiddle" src="/img/bullet_arrow_green.gif"/><br />'+
                                //'<b class="project_data2">'+ project.year +'</b>'+
                                
                                
                                
                        		'<a class="pholio_item" href="/portfolio/'+ project.id +'.html">'+
                        		//'<img src="/uploads/'+project.thumb+'" width="210" height="100" alt="'+project.name +'"/>'+
                        		
                        		"<div style=\"background: transparent url('/resize/210x0/uploads/"+project.thumb +"') no-repeat scroll 0%;"+
                                " width: 210px; height: 200px;\"></div>"+
                        		
                                '</a>'+
                    		'</li>'
                		).appendTo($(sAppendTo));
                		
                        if( (pcount+1) % 3 == 0 ) {
        				   $('<li class="pholio_year">&nbsp;</li>').appendTo($(sAppendTo)); 
        				}
        				
        	  	  		cnt ++;
        	  	  		counter++
        
        
        			} 
			    }
			}
			
			

			/*
			if (force_open == "first"){
				showProject(projects[0].id);
			} else if (force_open == "last"){
				showProject(projects[projects.length-1].id);
			}
			*/
			force_open = 0;



		},
		'json'
	);
}


var image_src = '/uploads/';
var cur_image = 0;
function showProject(id){
	//$("#portfolio_splash")

	$("#board").ScrollTo(1000, 'easeout');
	if($("#portfolio_splash").get(0).style.display == "block"){

		$("#board")
			.animate({height: "hide"}, 500)
			.animate({height: "show"}, 500);
		$("#portfolio_splash").get(0).style.display = "none"
		$("#prev_portfolio").get(0).style.display = "block";

	} else {
		$("#board")
//			.animate({opacity: "hide"}, 500)
//			.animate({opacity: "show"}, 500);

	}

	$.getJSON('/portfolio/' + id + '.html', function(json) {

		$("#project_name")
			.html(json.name);

		itemId = json.id;
		if (!json.url) {
			$("#project_url").hide();
		} else {
			$("#project_url")
				.attr('href', json.url)
				.attr('target', '_new')
				.show();
		}

		Images = json.images;
		cur_image = 0;
		showImage(0)

		$("#project_year")
			.attr("href", "javascript:showYear(" + json.year  + ")")
			.html(json.year)
		//$(").get(0).innerHTML = ;

		$("#project_industry").empty()
		for (var item in json.industries){
			var value = json.industries[item];
			$("<a>")
				.attr("href", "javascript:showIndustry(" + item  + ")")
				.html(value)
				.appendTo("#project_industry")
	    };


		$("#project_service_1").empty()
	 	for (var item in json.service_col[1]){
			$("<a>")
				.attr("href", "javascript:showService(" + item  + ")")
				.html('&gt; ' + json.service_col[1][item])
				.appendTo("#project_service_1")

	    };

		$("#project_service_2").empty()
	 	for (var item in json.service_col[2]){
			$("<a>")
				.attr("href", "javascript:showService(" + item  + ")")
				.html('&gt; ' + json.service_col[2][item])
				.appendTo("#project_service_2")
	    };


	});
	return false; //Always return false to avoid href clicking.
}



function nextImage(){
	if (cur_image+1 >= Images.length) {
		var oldValue = 0;
		for(cnt in ProjectIds){
			if (itemId == oldValue) {
				var nextId = ProjectIds[cnt]
				if (nextId) {
					showProject(nextId);
				return;
				}
			}
			oldValue = ProjectIds[cnt];
		}
		if (page < page_count) {
			showNext("first");
		} else {
			showProject(ProjectIds[0]);
		}
		return;
	}

	cur_image += 1;
	showImage(cur_image)
}
var oldValue;
function prevImage(){
	if (cur_image-1 < 0) {
		var oldValue = 0;
		for(cnt in ProjectIds){

			if (itemId == ProjectIds[cnt]) {
				var prevId = oldValue
				if (prevId) {
					showProject(prevId);
					return;
				}
			}
			oldValue = ProjectIds[cnt];
		}
		if (page > 1 ) {
			showPrev("last");
		} else {
			showProject(ProjectIds[ProjectIds.length - 1]);
		}

		return;
	}

	cur_image -= 1;
	showImage(cur_image)
}

function showImage(id){

	var src = image_src + Images[id];
	if ($("#project_image").attr('src') == src) {
		return;
	}

	$("#loading_img").get(0).style.visibility = 'visible';

	$("#imager")
		.html('Image ' + (1+cur_image) + ' of ' + Images.length);
	$("#project_image")
		.attr("src", src);
	$("#project_image").get(0).onload = function () {
		$("#loading_img").get(0).style.visibility = 'hidden';

	}


}

function scrollHome(){
	$("#board").ScrollTo(1000, 'easeout');
}
