/*! SNAC beta2 | www.mavsic.ru/snac | WTFPL */
function Snac(){var a=null,b={},c={},d={},e="#snac-content",f="a.snac-link",g="snac-current",h=new Sten(e);$.ajax("global",{dataType:"text",cache:false,success:function(a){d=n(a)},error:function(){o('"global" file is missing in site/ directory')}});$(window).hashchange(function(a){j(location.hash.substr(1))});this.start=function(){$(window).hashchange()};var j=function(d){a=d||"index";if(c[a]==undefined){$(e).ajaxStop(function(){$(this).unbind("ajaxStop");k()});$.ajax(a,{dataType:"text",cache:false,success:function(d){b=c[a]=n(d);if(b.header==undefined)o('missing non-optional "header" property in "'+a+'" page file')},error:function(){if(d=="404")o('file "404" not found');else j("404")}})}else{b=c[a];k()}};var k=function(){document.title=b.header;h.render($.extend(d,b));window.scrollTo(0,0);m()};var l=function(){$(f).each(function(){$(this).attr("href","#"+$(this).attr("href"))})};var m=function(){$(f).each(function(){if($(this).attr("href").substr(1)==a)$(this).addClass(g);else $(this).removeClass(g)})};var n=function(a){var b=a.split(/^\$/m);var c={};for(i in b){if(i==0)continue;var d=b[i].split(/[\n\r]+/);c[d.shift()]=d.join("\r\n")}return c};var o=function(a){document.write("<strong>SNAC error:</strong> "+a+"<br />")};l()}function Sten(a){var b=[];var e=function(){$(a+" *").each(function(){if($(this).attr("class")!=undefined){var a=$(this).attr("class").split(/\s+/);for(c in a){var d=a[c];if(d.match(/^\$(\w|\@)+$/)){var e=d.split("@");b.push({target:$(this),datapiece:e[0].substr(1),attr:e[1]})}}}})};this.render=function(a){for(d in b){var c=b[d],e=a[c.datapiece];if(c.attr)c.target.attr(c.attr,e);else c.target.html(e)}};e()}$(function(){var a=new Snac;a.start()})
