﻿// JavaScript Document

// Replaces variables defined in dictionary within given DOM element
function replaceVariables(dict, elem) {
	var html = elem.html();
	for (v in dict) {
		var regexp = new RegExp("\{" + v + "\}", "g");
		html = html.replace(regexp, dict[v]);
	}
	
	return html;
}

// Changes language version
function setLang(lang) {
	location.href = location.href.replace(/\/versions\/\w\w_\w\w\//, '/versions/' + lang + '/'); 
	}

$(document).ready(function() {
	// Replace variables
	$("#page").html(replaceVariables(variables, $("#page")));

	// Generate section navigation 
	var regexp = /.+\/([^\/]+)\/[^\/]+$/;
	var curDir = regexp.exec(location.href)[1];
	var html = "";
	
	for (dir in structure) {
		var href = "#";
		var active = ' class="active"';
		var label = structure[dir]["label"];
		if (curDir != dir) {
			href = "../" + dir + "/" + structure[dir]["pages"][0]["file"];
			active = "";
		}
		html += '<li' + active + '><a href="' + href + '"><strong>' + label + '</strong><span><!--do not delete - for strict xhtml validation--></span><span class="b"><!--do not delete - for strict xhtml validation--></span></a></li>';
	}
	$("#nav > div.inner_nav > ul").prepend(html);

	
	// Generate page navigation
	if (0 < $("#left-nav").length) {
		// Set section title
		$("#left-nav > h2").prepend(structure[curDir]["label"]);
		
		var curFile = location.href.substr(location.href.lastIndexOf("/") + 1);
		html = "";
		var pages = structure[curDir]["pages"];
		for (i = 0; i < pages.length; i++) {
			var href = structure[curDir]["pages"][i]["file"];
			var active = "";
			if (curFile == href) {
				href = "#";
				active = ' class="active"';
			}
			var label = structure[curDir]["pages"][i]["label"];
			html += '<li' + active + '><a href="' + href + '"><span>' + label + '</span></a></li>';
		}
		$("#left-nav > ul").prepend(html);
	
	}

	// Populate language change drop-down menu
	var menu = $("#language").get(0);
	for (i in languages["selected_languages"]) {
		var lang = languages["selected_languages"][i];
		var label = languages["all_languages"][lang];
		menu.options[menu.options.length] = new Option(label, lang, i==0);
	}

// Select current language on page load
	var regexp = /.+\/versions\/(\w\w_\w\w)\/.+/;
	var curLang = regexp.exec(location.href)[1];
	$("#language").val(curLang);
});
