// Custom utility functions

function toTitleCase(str) {
    return str.substr(0,1).toUpperCase() + str.substr(1).toLowerCase();
}      

function formatTitle(title) {
    var newTitle = title.replace(/\//g,"")
	if(newTitle == "")
		newTitle = "Home";
    return toTitleCase(newTitle) + ' - Comrade Solutions';
}


// 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 updateChange(xhr) {
    if (xhr.readyState == 4) {
        if (xhr.status == 200) {
            var content = document.getElementById('content-left');
            /*if (asual.util.Browser.isIE()) {
                var _content = document.getElementById('_content-left');
                if (_content == null) {
                    var _content = content.cloneNode(false);
                    _content.id = '_content-left';
                    _content.style.position = 'absolute';
                    _content.style.top = content.offsetTop;
                    _content.style.left = '50%';
                    _content.style.width = content.offsetWidth;
                    _content.style.marginLeft = -content.offsetWidth/2;
                    document.body.appendChild(_content);
                }
                _content.innerHTML = xhr.responseText;
                content.style.height = _content.offsetHeight;

            } else {*/
                content.innerHTML = xhr.responseText;
           
            //}
            /*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('&');
            }*/
        } else {
            //alert('Error: ' + xhr.status + '!');
        }
    }
}

function handleChange(event) {
	var nEvent = event.path.replace("/","")
	if(nEvent=="objective" || nEvent=="skills" || nEvent=="education" || nEvent=="work")
	{
		window.location.href=('http://www.comradesolutions.net/#/resume');
		return;
	}
	if(nEvent=="clubs" || nEvent=="comm")
	{
		window.location.href=('http://www.comradesolutions.net/#/extracurricular');
		return;
	}
    var index, rel, links = document.getElementsByTagName('a');
    for (var i = 0, l, link; link = links[i]; i++) {
        index = link.rel.indexOf('?');
        rel = (index > -1) ? link.rel.substr(0, index) : link.rel;
        link.className = rel == event.path ? 'current-cat' : '';
    }
	if(nEvent=="")
		links[0].className = 'current-cat';
    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=' + event.path + parameters, true);
    xhr.send('');
    SWFAddress.setTitle(formatTitle(event.path));
}


SWFAddress.addEventListener(SWFAddressEvent.CHANGE, handleChange);
