




// addEvent() v1.0
function addEvent(obj, evt, fnc, useCapture){
	if (!useCapture) useCapture=false;
	if (obj.addEventListener){
		obj.addEventListener(evt,fnc,useCapture);
		return true;
	} else if (obj.attachEvent) return obj.attachEvent("on"+evt,fnc);
}

// getElementsByClassName() v1.0
document.getElementsByClassName = function(clsName){
    var retVal = new Array();
    var elements = document.getElementsByTagName("*");
    for(var i = 0;i < elements.length;i++){
        if(elements[i].className.indexOf(" ") >= 0){
            var classes = elements[i].className.split(" ");
            for(var j = 0;j < classes.length;j++){
                if(classes[j] == clsName)
                    retVal.push(elements[i]);
            }
        }
        else if(elements[i].className == clsName)
            retVal.push(elements[i]);
    }
	return retVal;
}

/*	
	mmAddEventHandler() v1.0
	Author: Mammon Media (c) 2006
	Description: Add events to elements with specific class names
	takes an array of items and adds fn to all
	Usage: mmAddEventHandler("classname", "event", function)
	run in onload event
	Depends on: getElementsByClassName()
*/
function mmAddEventHandler(cls, ev, fn) {

	var elm = document.getElementsByClassName(cls);
	
	if(elm.length > 0) {
		for(var i = 0; i < elm.length; i++) {
			if(elm[i].addEventListener) {
				elm[i].addEventListener(ev, fn, false);
			} else if(elm[i].attachEvent) {
				elm[i].attachEvent("on"+ev, fn);
			}
		}
	}
}

mmMenu = {
	
	subColor: "#b6b6b6",
    
	Activate: function() {
		var filename = document.location.href;
		filename = filename.substring(filename.lastIndexOf("/")+1, filename.length).toLowerCase();
		
		if (!filename) filename = "hem.aspx";
		
	    var id = filename.substring(0, filename.lastIndexOf(".")).toLowerCase();
	    id = id.substring(0, (id.indexOf("_") > 0) ? id.indexOf("_") : id.length);
	    
	    var item = document.getElementById(id);
	    	   
	    // alert(id);
	    if(item)
		    item.className += " active";

	},

	ActivateSub: function() {
		
		// Get container
		var container = document.getElementById("submenu");        
        
		// check if container element exists
		if (container) {
			
			// Get all LI elements in container
			var linklist = container.getElementsByTagName("li");
			
			// Get filename and remove everything before last "/" + set everything to lowercase
			var filename = document.location.href;
			filename = filename.substring(filename.lastIndexOf("/")+1, filename.length).toLowerCase();						
			
			// Remove querystring variable if plugin (ex. ?id=5)			
			if(filename.lastIndexOf("?") > 0) {							
				//filename.length - filename.lastIndexOf("?"); // antal tecken vi ska radera
				var newlength = filename.length - (filename.length - filename.lastIndexOf("?"));										
				filename = filename.substring(0, newlength);
			}
			
			for (var i = 0; i<linklist.length; i++) {
				var linkobj = linklist[i].firstChild;				
			
				if(linkobj.href) {
					
					var linkname = linkobj.href.substring(linkobj.href.lastIndexOf("/")+1, linkobj.href.length).toLowerCase();													
					
					// Set color to subColor if link href = current page name	
					//if(linkname == filename) linkobj.style.color = mmMenu.subColor;
					
					// Set class if link href = current page name	
					if(linkname == filename) linkobj.className = " active";
				}
			}
		}
	}
}

var Utils = {
	
	ExternalLinkRel: "external",
	
	ExternalLinks: function() 
	{
		
		var a = document.getElementsByTagName("a");
		
		for(var i = 0; i < a.length; i++)
		{
			if(a[i].rel == this.ExternalLinkRel) {
				a[i].onclick = function()
				{
					window.open(this.href, "external");
					return false;
				}
			}
		}
	},
	
	FocusBorder: function() {
		var nl = document.getElementsByTagName("a"), i;
		for (i=0; i<nl.length; i++)
			nl[i].setAttribute("onmousedown", "return false;");
	}
}

// send page-link 
function sendPage() {
    
    // console.log($('#sendpageform').find("input"));				
	
	$.getJSON("__Tellafriend.aspx", $('#sendpageform').find("input").serializeArray(), function(data)
    {	        
        
        if(!(data.message == undefined))
        {
            $("#formsentmsg").empty(); 
            $("#validationmsg").empty();  
		    $("<h4/>").text(data.message).appendTo("#formsentmsg");
        }
        
        if(!(data.validationmsg == undefined))
        {
			$("#formsentmsg").empty(); 
            $("#validationmsg").empty();   
		    $("<h4/>").text(data.validationmsg).appendTo("#validationmsg");
        }
                                         
        $("#formsentmsg").fadeIn("slow", function()
        {
            setTimeout(function()
            {                   
                $("#formsentmsg").fadeOut("slow");
            }, 3000);
        });
        
        
        $("#validationmsg").fadeIn("slow", function()
        {
            setTimeout(function()
            {                   
                $("#validationmsg").fadeOut("slow");
            }, 3000);
        });
        
        
    });    

    return false;	
}



mmGallery = {

 links : function() {
     var links = document.getElementsByClassName("thumb");
       
     for (var i = 0; i < links.length; i++)

         links[i].onclick = function (e) {

         (e) ? elm = e.target : elm = window.event.srcElement;
         if(elm.tagName != "A") elm = elm.parentNode;

         mmGallery.setImage(elm);

         return false;

     }

 },

 setImage : function(elm) {

    var img = document.getElementById("bigimg");
    img.src = elm.href;

 }

}

function _mmPageInit() {

    Utils.ExternalLinks();
	
	mmMenu.Activate();	
    mmMenu.ActivateSub(); 
		
	 if(document.getElementById("gallery"))
		mmGallery.links(); 
	
    var visibility = false;  

}

$(document).ready(function() {
    _mmPageInit();   
 });

