function addListener(element, type, expression) {
	try {
		if(window.attachEvent) { //For IE
			element.attachEvent('on'+type, expression);
		} else if(window.addEventListener)	{ //For FF, Opera, Safari etc
			element.addEventListener(type, expression, false);
		}
	} catch(e) { }
}

addListener(window, 'load', function() {
	addListener(document.getElementById('f_sorting_id'), 'change', submitFormItemSorting);

	var element = document.getElementById('comments_link_div');
    addListener(element, 'mouseover', function() {
		showMostRecentComments(element);
	});
    addListener(element, 'mouseout', function() {
		hideMostRecentComments(element);
	});

    var element = document.getElementById('most_recent_comments');
    addListener(element, 'mouseover', function() {
		showMostRecentComments(element);
	});
    addListener(element, 'mouseout', function() {
		hideMostRecentComments(element);
	});
    
    var element = document.getElementById('poll_form_submit');
    addListener(element, 'click', function() {
		submitPollForm();
	});
    
	initImageGallery('imageGallery_1');
	
	
	if(document.getElementById('category-id').value!=0) {
		categoriesMenuItemClick(document.getElementById('category'+document.getElementById('category-id').value));
	}
	
});


function submitFormItemSorting() {
	var form = document.getElementById('form_item_sorting');
    form.action = document.getElementById('friendlyurlgenerator').value;    
	form.submit();
}

function submitForm2(id){
    //alert(id);
    var oForm = document.getElementById(id);
    oForm.submit();
}

function showMostRecentComments(eElement) {
    eMostRecentComments = document.getElementById('most_recent_comments');

    if(eMostRecentComments) {
        eMostRecentComments.style.display = 'block';
    }
}

function hideMostRecentComments(eElement) {
    eMostRecentComments = document.getElementById('most_recent_comments');

    if(eMostRecentComments) {
        eMostRecentComments.style.display = 'none';
    }
}

function emailvalidation(email) {
    var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
    
    if(reg.test(email) == false) 
        return true;
    
    return false;
}


/* IMAGEGALLERY */

function initImageGallery(sImageGalery) {
    var eImageGalery = document.getElementById(sImageGalery);


    for(i=0; i<=4; i++) 
        if(document.getElementById('image'+'_'+i)) 
            addImageButtonAction(i, eImageGalery);


    if(document.getElementById('image'+'_'+'big')) {
        var image = document.getElementById('image'+'_'+'big');

        if(document.getElementById('image'+'_'+'big'+'_'+'button')) {
            var image_button = document.getElementById('image'+'_'+'big'+'_'+'button');
            
            addListener(image_button, 'click', function(event) {
                zoomImageShow('big', eImageGalery);
            });
        }
    }
    
    if(document.getElementById('image'+'_'+1)) {
        if(document.getElementById('image'+'_'+1+'_'+'button')) {
            document.getElementById('image'+'_'+1+'_'+'button').className = 'image active';
        }
        document.getElementById('image'+'_'+1).style.display = 'block';
    }
}

function hideAllImage(eImageGalery) {
    for(i=0; i<eImageGalery.childNodes.length; i++) 
        if(eImageGalery.childNodes[i].className=='images') 
            for(j=0; j<eImageGalery.childNodes[i].childNodes.length; j++) 
                if(eImageGalery.childNodes[i].childNodes[j].className=='image') 
                    eImageGalery.childNodes[i].childNodes[j].style.display = 'none';
}

function hideAllImageButton(eImageGalery) {
    for(i=0; i<eImageGalery.childNodes.length; i++)
        if(eImageGalery.childNodes[i].className=='navigation')
            for(j=0; j<eImageGalery.childNodes[i].childNodes.length; j++)
                if(eImageGalery.childNodes[i].childNodes[j].className=='image active')
                    eImageGalery.childNodes[i].childNodes[j].className = 'image';
}

function addImageButtonAction(index, eImageGalery) {
    var image = document.getElementById('image'+'_'+index);
    var image_button = document.getElementById('image'+'_'+index+'_'+'button');

    addListener(image_button, 'click', function(event) {
        hideAllImage(eImageGalery);
        hideAllImageButton(eImageGalery);
        image_button.className = 'image active';
        image.style.display = 'block';
    });

    addListener(image_button, 'mouseover', function(event) {
        if(image_button.className == 'image')
            image_button.className = 'image over';
    });

    addListener(image_button, 'mouseout', function(event) {
        if(image_button.className == 'image over')
            image_button.className = 'image';
    });
}

function zoomImageShow(index, eImageGalery) {
    var shadow = document.getElementById('imageGalleryShadow');
    var image = document.getElementById('image'+'_'+index);

    var width = getDocumentWidth();
    var height = getDocumentHeight();

    shadow.style.display = 'block';
    shadow.style.width = width;
    shadow.style.height = height;

    for(i=0; i<image.childNodes.length; i++) {
        if(image.childNodes[i].nodeName=='IMG') {
            var widthImage = image.childNodes[i].width;

            addListener(image.childNodes[i], 'click', function(event) {
                zoomImageHide(index, eImageGalery);
            });
            
            addListener(document.getElementById('image_big_buttonclose'), 'click', function(event) {
                zoomImageHide(index, eImageGalery);
            });
        }
    }
    
    image.style.display = 'block';
    image.style.top = 100;
    image.style.left = (width-widthImage)/2;
    image.style.width = widthImage;
}

function zoomImageHide(index, eImageGalery) {
    var shadow = document.getElementById('imageGalleryShadow');
    var image = document.getElementById('image'+'_'+index);

    shadow.style.display = 'none';
    image.style.display = 'none';
}

function getDocumentWidth() {
    var d = document;
    return Math.max(
        Math.max(d.body.scrollWidth, d.documentElement.scrollWidth),
        Math.max(d.body.offsetWidth, d.documentElement.offsetWidth),
        Math.max(d.body.clientWidth, d.documentElement.clientWidth)
    );
}

function getDocumentHeight() {
    var d = document;
    return Math.max(
        Math.max(d.body.scrollHeight, d.documentElement.scrollHeight),
        Math.max(d.body.offsetHeight, d.documentElement.offsetHeight),
        Math.max(d.body.clientHeight, d.documentElement.clientHeight)
    );
}

/* IMAGEGALLERY */


/* CATEGORIES_MENU */

function categoriesMenuItemShow(item) {
	
}

function categoriesMenuItemHide(item) {
	
}

function categoriesMenuItemClick(item) {
	if(haveClassName(item, 'item')) {
		if(haveClassName(item, 'over')) {
			removeClassName(item, 'over');
			
			
			if(haveClassName(item.parentNode, 'items')) {
				removeClassName(item.parentNode, 'over');
				
				if(haveClassName(item.parentNode.parentNode, 'item')) {
					removeClassName(item.parentNode.parentNode, 'over');
				}
			}
		} else {
			var items = item.parentNode;
			
			for(i=0; i<items.childNodes.length; i++) {
				if(haveClassName(items.childNodes[i], 'over')) {
					removeClassName(items.childNodes[i], 'over');
				}
			}
			
			addClassName(item, 'over');
			
			if(haveClassName(item.parentNode, 'items')) {
				addClassName(item.parentNode, 'over');
				
				if(haveClassName(item.parentNode.parentNode, 'item')) {
					addClassName(item.parentNode.parentNode, 'over');
				}
			}
		}
	}
}

function categoriesMenuItemsShow(items) {
	
}

function categoriesMenuItemsHide(item) {
	
}

function categoriesMenuItemsClick(item) {
	
}

function haveClassName(element, value) {
	if(element.className) {
		if(element.className.indexOf(value)==-1) {
			return false;
		} else {
			return true;
		}
	} else {
		return false;
	}
}

function addClassName(element, value) {
	element.className =  element.className + " " + value;
}

function removeClassName(element, value) {
	element.className =  element.className.replace(value, '');
}

/* CATEGORIES_MENU */


function share_button_click(site) {

            var site = site;

            u=location.href;

            t=document.title;

            

            if(site=='fb')

                        window.open('http://www.facebook.com/sharer.php?u='+encodeURIComponent(u)+'&t='+encodeURIComponent(t));

            if(site=='myspace')

                        window.open('http://www.myspace.com/Modules/PostTo/Pages/?u='+encodeURIComponent(u)+'&t='+encodeURIComponent(t)+'&l=3&c=');

            if(site=='twitter')

                        window.open('http://twitter.com/home?status=Currently reading '+encodeURIComponent(u));                             

            if(site=='stumbleupon')

                        window.open('http://www.stumbleupon.com/submit?url='+encodeURIComponent(u)+'&title='+encodeURIComponent(t));

            return false;

}