// Custom utility functions

function toTitleCase(str) {
    //return str.substr(0,1).toUpperCase() + str.substr(1).toLowerCase();
    return str.split("_").join(" ");
}      

function formatTitle(title) {
    return 'BIGOUDi | hair - make up - styling' + (title != '/' ? ' | ' + toTitleCase(title.substr(1, title.length - 2).replace(/\//g, ' | ')) : '');
}


// Custom SWFAddress and Ajax handling

function getTransport() {
    if (window.XMLHttpRequest) {
        return new XMLHttpRequest();
    } else if (window.ActiveXObject) {
        try {
            return new ActiveXObject('Msxml2.XMLHTTP');
        } catch(e) {
            return new ActiveXObject('Microsoft.XMLHTTP');
        }
    }
}

function appear(content, value) {
    if (typeof value == 'undefined') value = 0;
    var property = content.filters ? 'filter' : 'opacity';
    if (value == 100) {
        if (content.style.removeAttribute) {
            content.style.removeAttribute(property);
        } else {
            content.style[property] = 1;
        }
        //check_scroll_v(cat,section_name,show_name);
    } else {
        content.style[property] = content.filters ? 'alpha(opacity=' + value + ')' : value/100;
        setTimeout(function () {appear(content, value + 20)}, 50);
    }
    //alert(document.getElementById('content').style.display);
    
}

function bild_ladung_check() {
            if($(".last_img").width()) {
            	//alert("fertig "+$(".last_img").width());
            	check_scroll_v(cat,section_name,show_name);
            } else {
            	//alert("noch nicht");
            	setTimeout(bild_ladung_check);
            }

}

function updateChange(xhr) {
    
    if (xhr.readyState == 4) {
        if (xhr.status == 200) {
            var content = document.getElementById('content');
            content.innerHTML = xhr.responseText;
            if(content_div != false) {
            	appear(content_div);
            }
            var links = ""; //document.getElementById('social').getElementsByTagName('a');
            for (var i = 0, link, parts, pairs; link = links[i]; i++) {
                parts = link.href.split('?');
                pairs = parts[1].split('&');
                for (var j = 0, params; j < pairs.length; j++) {
                    params = pairs[j].split('=');
                    if (params[0] == 'url' || params[0] == 'u' || params[0] == 'bkmk')
                        pairs[j] = params[0] + '=' + SWFAddress.getBaseURL() + SWFAddress.getValue();
                    if (params[0] == 'title' || params[0] == 't')
                        pairs[j] = params[0] + '=' + SWFAddress.getTitle();
                }
                link.href = parts[0] + '?' + pairs.join('&');
                
                
            }
            //alert(show_start);
            if(show_start == true) {
            	show_start = false;
            	//alert(aktIMG);
            	startShow(aktIMG);
            	
            }
            //check_scroll_v(cat,section_name,show_name);
            //alert($(".last_img").width());
            if($(".last_img").width()) {
            	//alert("fertig "+$(".last_img").width());
            	check_scroll_v(cat,section_name,show_name);
            } else {
            	//alert("noch nicht");
            	setTimeout(bild_ladung_check);
            }
        } else {
            alert('Error: ' + xhr.status + '!');
        }
    }
}
var show_start = false;
var show_gestartet = false;
var cat = "";
var cat_old = "";
var section_name = "";
var show_name = "";
var artist = "";
var artist_old = "";

var content_div = document.getElementById('content');

function handleChange(event) {
   
    var index, rel, links = document.getElementsByTagName('a'), path = event.path;
    
    
    var cat_array = (path.split('/'));
    
    cat_old = cat;
    cat = cat_array[1];
    
    //alert(path+" | "+cat_array+" | "+cat);
    if (cat.substr(cat.length - 1) != '/') {
        cat = '/'+cat+'/';
    }
    
    //alert(cat_array[4]);
    if(cat_array[4] != "show") {
    	show_gestartet = false;
    }
    
    for (var i = 0, l, link; link = links[i]; i++) {
        //alert(link.rel.indexOf('?'));
        index = link.rel.indexOf('?');
        rel = (index > -1) ? link.rel.substr(0, index) : link.rel;
        //alert(rel+" - "+cat);
        link.className = (rel == cat) ? 'selected' : '';
    }
    cat = cat_array[1];
    
    artist_old = artist;
    artist = decodeURIComponent(cat_array[2]);
    //alert(cat+" | "+artist+" | "+artist_old);
    
    if( (cat != 'cities') && (artist != '') && (artist == artist_old) ) {
    	content_div = false;
    } else if( (cat == 'cities')  && (artist  != '') ) {
    	content_div = false;
    } else {
    	content_div = document.getElementById('content');
    }
    
    
    section_name = cat_array[3];
    //alert(event.path+" - "+decodeURIComponent(event.path)+" - "+encodeURIComponent(event.path));
    show_name = cat_array[4];
    
    
if(show_gestartet == false) {
    
    var parameters = '';
    for (var p in event.parameters) {
        parameters += '&' + p + '=' + event.parameters[p];
    }
    var xhr = getTransport();
    xhr.onreadystatechange = function() {
        updateChange(xhr);
    }
    xhr.open('get', 'datasource.php?swfaddress=' + encodeURIComponent(event.path) + parameters, true);
    xhr.send('');
    
    reset_newX();
    if(cat_array[4] == "show") {
    	
    	if(cat_array[5] == "") {
    		aktIMG = 1;
    	} else {
    		aktIMG = cat_array[5];
    	}
    	//alert(aktIMG);
    	show_start = true;
    	show_gestartet = true;
    }
    
    
    
}
    
    SWFAddress.setTitle(formatTitle(event.path));

}

function copyLink() {
    if (window.clipboardData && clipboardData.setData) {
        clipboardData.setData('Text', SWFAddress.getBaseURL() + SWFAddress.getValue());
    } else {
        alert('Unsupported browser.');
    }
}

SWFAddress.addEventListener(SWFAddressEvent.CHANGE, handleChange);
