var main_slider = new Class({
Implements:[Options],options:{'iniSize':[],'iniTips':false,'iniDuration':[],'iniTransition':Fx.Transitions.Sine.easeInOut}
,initialize:function(element,options) {
if(options) { this.setOptions(options); }
this.slideElement = $(element);
if(this.slideElement) {
this.slideElements = {'bookmarks':this.slideElement.getElements('div.navigation span.link'),'items':this.slideElement.getElement('div.items'),'micro':this.slideElement.getElement('div.description div.complet'),'scroll':this.slideElement.getElement('div.items div.complet'),'bubble':this.slideElement.getElement('div.bubble'),'image':this.slideElement.getElement('div.ilustration div.image'),'loading':this.slideElement.getElement('div.ilustration div.image span.loading')}
this.slideArray = this.sliderGenerate(this,this.options,'array');
this.slideActual = this.sliderGenerate(this,this.options,'actual');
this.slideNumber = 0;
this.slideArrows = ['left','right'];
this.slideClause = [];
this.slideDelay = [];
this.slideEfect = ['element','loading','image'];
this.slideInitialize = new Fx.Scroll(this.slideElements['scroll'],{wait:false,duration:this.options.iniDuration['slide'],offset:{'x':0,'y':0},transition:this.options.iniTransition});
this.slideLanguage = {'cz':{'undefined':'Popisek není definován!'},'en':{'undefined':'Description isn\'t defined!'},'de':{'undefined':'Label ist nicht definiert!'},'ru':{'undefined':'Этикетка не определен!'}};
this.sliderBookmarks(this,this.options);
this.sliderArrows(this,this.options);
this.sliderContent(this,this.options,true,0);
this.sliderClicked(this,this.options);
this.sliderEfect(this,this.options,true,0);
this.sliderTips(this,this.options);
}
}
,sliderObject:function(init,element,types) {
this.bookmarkActive = init.activeBookmarks(init);
init.slideNumber = (types == 'next' ? (init.slideNumber < this.bookmarkActive['printTotal'] ? (init.slideNumber+1) : init.slideNumber) : (init.slideNumber > '0' ? (init.slideNumber-1) : init.slideNumber));
init.slideInitialize.toElement(this.bookmarkActive['printElement'][init.slideNumber]);
init.activeArrows(init,element);
return false;
}
,sliderArrows:function(init,element) {
this.printPrevious = new Element('a',{'class':'arrow left inactive','events':{'click':function(){init.sliderObject(init,element,'previous');}}}).inject(init.slideElements['items'],'top');
this.printNext = new Element('a',{'class':'arrow right active','events':{'click':function(){init.sliderObject(init,element,'next');}}}).inject(init.slideElements['items'],'bottom');
}
,activeArrows:function(init,element) {
this.bookmarkActive = init.activeBookmarks(init);
init.slideClause['left'] = (init.slideNumber > '0' ? true : false);
init.slideClause['right'] = (init.slideNumber < this.bookmarkActive['printTotal'] ? true : false);
init.slideArrows.each(function(el,number){
init.slideElement.getElement('a.arrow.'+el).removeClass((init.slideClause[el] ? 'inactive' : 'active'));
init.slideElement.getElement('a.arrow.'+el).addClass((init.slideClause[el] ? 'active' : 'inactive'));
});
}
,sliderContent:function(init,element,starts,number) {
init.printData = init.sliderData(init,element,number);
init.slideTitle = new Element('big',{'html':(init.printData['descSlider'] ? init.printData['descSlider'] : init.slideLanguage[config['language']]['undefined'])}).inject(init.slideElements['bubble'],'top');
init.slideElements['loading'].set('morph',{'duration':element.iniDuration['image'],'transition':'sine:in'}).morph({'opacity':'1'});
init.slideDelay['element'] = (function(){init.slideImage = new Element('img',{'src':init.printData['imageSlider'],'width':element.iniSize['width'],'height':element.iniSize['height']}).inject(init.slideElements['image'],'bottom').set({'opacity':'0'});}).delay((starts ? '0' : '1300'));
init.slideDelay['loading'] = (function(){init.slideElements['loading'].morph({'opacity':'0'});}).delay('1300');
init.slideDelay['image'] = (function(){init.slideImage.set('morph',{'duration':element.iniDuration['image'],'transition':'sine:in'}).morph({'opacity':'1'});}).delay('2000');
init.sliderMicro(init,element);
}
,sliderClicked:function(init,element) {
this.bookmarkActive = init.activeBookmarks(init);
this.bookmarkActive['printObjects'].each(function(el,num) {
el.addEvent('click',function(){
init.destroyElements(init,element);
init.sliderContent(init,element,false,num);
init.sliderEfect(init,element,false,num);
});
});
}
,destroyElements:function(init,element) {
init.slideEfect.each(function(el,num){
$clear(init.slideDelay[el]);
});
init.slideTitle.destroy();
init.slideImage.set('morph',{'duration':element.iniDuration['image'],'transition':'sine:in','onComplete':function(){init.slideImage.destroy();}}).morph({'opacity':'0'});
}
,sliderBookmarks:function(init,element) {
init.slideElements['bookmarks'].each(function(el,number) {
el.addEvent('click',function(){
init.slideElements['bookmarks'].addClass('inactive');
this.removeClass('inactive');
this.addClass('active');
init.slideActual = number;
init.slideNumber = 0;
init.slideInitialize.start(0,0);
init.activeArrows(init,element);
init.destroyElements(init,element);
init.sliderContent(init,element,false,0);
init.sliderClicked(init,element);
init.sliderEfect(init,element,true,0);
init.slideElement.getElements('div.block').removeClass('active');
init.slideElement.getElements('div.block').addClass('inactive');
init.slideElement.getElement('div.block.'+init.slideArray[number]).removeClass('inactive');
init.slideElement.getElement('div.block.'+init.slideArray[number]).addClass('active');
});
});
}
,activeBookmarks:function(init) {
this.printActive = init.slideArray[init.slideActual];
this.printBlock = init.slideElement.getElement('div.block.'+this.printActive);
this.printElement = init.slideElement.getElements('div.block.'+this.printActive+' div.slide');
this.printObjects = init.slideElement.getElements('div.block.'+this.printActive+' div.slide div.item');
this.printTotal = (this.printElement.length-2);
return {'printElement':this.printElement,'printObjects':this.printObjects,'printBlock':this.printBlock,'printTotal':this.printTotal};
}
,sliderEfect:function(init,element,starts,number) {
this.getActive = init.activeBookmarks(init);
this.getStyles = this.getActive['printObjects'][number].getStyles('width','margin-left');
this.getPosition = ((this.getStyles['width'].toInt()*number)+(this.getStyles['margin-left'].toInt()*number));
init.slideElements['scroll'].getElement('span.active').set('morph',{'duration':element.iniDuration['efect'],'transition':'circ:in'}).morph({'left':(starts ? '0' : this.getPosition)});
}
,sliderMicro:function(init,element) {
this.printActive = init.slideArray[init.slideActual];
this.scrollMicro = init.slideElement.getElement('div.description div.micro.'+this.printActive);
if(this.scrollMicro) {
this.scrollInitialize = new Fx.Scroll(init.slideElements['micro'],{wait:false,duration:element.iniDuration['micro'],offset:{'x':0,'y':0},transition:element.iniTransition});
this.scrollInitialize.toElement(this.scrollMicro);
}
}
,sliderData:function(init,element,number) {
var printResults = {};
this.bookmarkActive = init.activeBookmarks(init);
this.bookmarkActive['printObjects'].each(function(el,num){
printResults[num] = {'descSlider':el.getElement('span.desc').getProperty('html'),'imageSlider':el.getElement('span.image').getProperty('html')};
});
return printResults[number];
}
,sliderTips:function(init,element) {
if(element.iniTips) {
this.initializeMorph = new Tips(init.slideElements['items'].getElements('div.item'),{'className':'main_tooltip','offsets':{x:270,y:-20},'fixed':true});
}
}
,sliderGenerate:function(init,element,types) {
var printResults = (types == 'array' ? [] : 0);
if(types == 'array') {
init.slideElements['bookmarks'].each(function(el,number) {
printResults[number] = el.getProperty('title');
});
} else if(types == 'actual') {
init.slideElements['bookmarks'].each(function(el,number) {
printResults += (el.hasClass('active') ? number : 0);
});
}
return printResults;
}
});


var main_menu = new Class({
Implements:[Options],options:{'iniDuration':0}
,initialize:function(element,options) {
if(options) { this.setOptions(options); }
this.menuElement = $(element);
if(this.menuElement) {
this.menuElements = {'elements':this.menuElement.getElements('ul li')}
this.menuInitialize(this,this.options);
}
}
,menuInitialize:function(init,element) {
init.menuElements['elements'].each(function(el,num){
var menuContent = el.getElement('ul');
if(menuContent) {
menuContent.set({'opacity':'0','morph':{'duration':element.iniDuration,'transition':'sine:in'}});
el.addEvents({'mouseover':function(){init.menuEfect(init,element,el,'mouseover',menuContent,'1');},'mouseleave':function(){init.menuEfect(init,element,el,'mouseleave',menuContent,'0');}});
}
});
}
,menuEfect:function(init,element,object,types,content,opacity) {
if(types == 'mouseover') { object.addClass('hover'); }
object.getElement('a').removeClass((types == 'mouseover' ? 'remove' : 'inactive'));
object.getElement('a').addClass((types == 'mouseover' ? 'inactive' : 'remove'));
content.morph({'opacity':opacity});
}
});


var main_form = new Class({
Implements:[Options],options:{'iniClear':false,'iniElements':'','iniDuration':[],'iniColor':[]}
,initialize:function(element,options) {
if(options) { this.setOptions(options); }
this.formBody = $(document.body);
this.formElement = element;
this.formLoading = $('main_loading');
this.formScroll = {'background':document.getScrollSize().y,'inner':((window.getHeight()/2)+document.getScrollTop())};
this.formAlert = 0;
this.formLanguage = {'cz':{'alert':'Povinná políčka nejsou vyplněna, nebo obsahují chyby!','loading':'Zpracovávám data'},'en':{'alert':'Required fields are not filled, or includes mistakes!','loading':'Data processing'},'de':{'alert':'Pflichtfelder sind gefüllt oder Fehler enthalten!','loading':'Daten aufgereitet'},'ru':{'alert':'Обязательные поля заполнены или содержат ошибки!','loading':'Обработка данных'}};
this.clearData(this,this.options);
this.checkData(this,this.options);
}
,clearData:function(init,element) {
if(element.iniClear) {
var getData = init.getData(init,element);
init.formElement.each(function(el,num) {
if(getData['dataForm'][num]) {
getData['dataForm'][num].getElements(element.iniElements).each(function(el) {
if(el.hasClass('text')) {
var elemetValue = el.getProperty('value');
el.addEvents({'focus':function() {this.currencyValue = this.getProperty('value');this.setProperty('value',(this.currencyValue == elemetValue ? '' : this.currencyValue));},'blur':function() {this.currencyValue = this.getProperty('value');this.setProperty('value',(this.currencyValue == '' ? elemetValue : this.currencyValue));}});
}
});
}
});
}
}
,checkData:function(init,element) {
var getData = init.getData(init,element);
init.formElement.each(function(el,num) {
if(getData['dataForm'][num]) {
getData['dataForm'][num].getElement('input.button').addEvent('click',function() {
if(getData['dataArray'][num]) {
getData['dataArray'][num].each(function(el) {
this.checkElement = getData['dataForm'][num].getElement('input[name="'+el+'"],textarea[name="'+el+'"]');
this.checkValue = this.checkElement.getProperty('value');
this.checkNumber = (!this.checkValue || !(element.iniClear ? (this.checkValue == getData['dataValue'][el+num] ? false : true) : true) ? 1 : 0);
this.checkElement.set({'morph':{'duration':element.iniDuration['check'],'transition':'sine:in'}});
this.checkElement.morph({'color':'#'+element.iniColor[this.checkNumber]});
init.formAlert += this.checkNumber;
});
}
if(!init.formAlert) {
init.checkLoading(init,element,getData['dataForm'][num]);
} else {
alert(init.formLanguage[config['language']]['alert']);
}
init.formAlert = 0;
});
}
});
}
,checkLoading:function(init,element,formular) {
var getData = init.getData(init,element);
this.printBackground = new Element('div',{'class':'main_loading','styles':{'height':init.formScroll['background']}}).inject(init.formBody,'top');
this.printInner = new Element('div',{'class':'inner','styles':{'top':init.formScroll['inner']}}).inject(this.printBackground,'top').set({'opacity':'0','morph':{'duration':element.iniDuration['loading'],'transition':'sine:in'}});
this.printLoading = new Element('span',{'class':'loading'}).inject(this.printInner,'top');
this.printText = new Element('span',{'class':'text','html':init.formLanguage[config['language']]['loading']}).inject(this.printInner,'bottom');
this.printInner.morph({'opacity':'1'});
var printInner = this.printInner;
window.addEvent('scroll',function(){printInner.morph({'top':((window.getHeight()/2)+document.getScrollTop())});});
this.printSubmit = (function(){formular.submit();}).delay(element.iniDuration['submit']);
}
,getData:function(init,element) {
var printData = {'form':[],'array':[],'value':[]};
init.formElement.each(function(el,num) {
printData['form'][num] = $('formular_'+init.formElement[num]);
if(printData['form'][num]) {
this.formCheck = printData['form'][num].getElement('input[name="check"]');
if(this.formCheck && this.formCheck.getProperty('value')) {
printData['array'][num] = this.formCheck.getProperty('value').split(':');
printData['array'][num].each(function(el) {
this.printElement = printData['form'][num].getElement('input[name="'+el+'"],textarea[name="'+el+'"]');
printData['value'][el+num] = this.printElement.getProperty('value');
});
}
}
});
return {'dataForm':printData['form'],'dataArray':printData['array'],'dataValue':printData['value']};
}
});


var open_popup = function(url,names,widths,heights,scrollbar,download) {
this.windowProperty = 'height='+heights+',width='+widths+',top='+((screen.height-heights)/2)+',left='+((screen.width-widths)/2)+',scrollbars='+scrollbar;
this.windowInitialize = window.open(url,names,this.windowProperty);
if(parseInt(navigator.appVersion) >= '4'){ this.windowInitialize.window.focus(); }
if(download){ this.windowInitialize.window.print(); }
}

var main_tools = new Class({
Implements:[Options],options:{'iniTop':[],'iniBlank':[],'iniScroll':[],'iniPrint':[],'iniNotice':[]}
,initialize:function(element,options) {
if(options) { this.setOptions(options); }
this.toolsElement = $(element);
if(this.toolsElement) {
this.toolsElements = {'top':this.toolsElement.getElement('li.top'),'blank':this.toolsElement.getElements('a.blank'),'scroll':this.toolsElement.getElements('div.main_content, div.box.left div.scroll'),'print':this.toolsElement.getElement('div.main_crumbs a.print'),'notice':this.toolsElement.getElement('div.main_crumbs a.notice')};
this.toolTop(this,this.options);
this.toolBlank(this,this.options);
this.toolScroll(this,this.options);
this.toolPrint(this,this.options);
this.toolNotice(this,this.options);
}
}
,toolTop:function(init,element) {
if(element.iniTop['active'] && init.toolsElements['top']) {
init.toolsElements['top'].addEvent('click',function(){this.printTop = new Fx.Scroll(init.toolsElement,{offset:{'x':0,'y':0}}).toTop();return false;});
}
}
,toolBlank:function(init,element) {
if(element.iniBlank['active'] && init.toolsElements['blank']) {
init.toolsElements['blank'].addEvent('click',function(){this.setProperty('target','blank');});
}
}
,toolScroll:function(init,element) {
if(element.iniScroll['active'] && init.toolsElements['scroll']) {
init.printDefault = init.toolsElements['scroll']['1'].getCoordinates().top;
window.addEvent('scroll',function(){
this.printStyles = {'content':init.toolsElements['scroll']['0'].getStyle('height').toInt(),'scroll':init.toolsElements['scroll']['1'].getStyle('height').toInt()};
var hojka = init.toolsElement.getElement('div.main_content').getStyle('height').toInt();
this.printSizes = {'actual':document.getScrollTop(),'window':this.getSize().y};
this.printCounter = {'first':((this.printSizes['actual']-init.printDefault)+element.iniScroll['padding']['top']),'second':(((this.printStyles['content']-init.printDefault)+element.iniScroll['padding']['top'])-element.iniScroll['padding']['bottom'])};
init.toolsElements['scroll']['1'].set({'morph':{'duration':element.iniScroll['duration'],'transition':'sine:in'}}).morph({'top':(this.printSizes['actual'] > init.printDefault && this.printSizes['window'] > this.printStyles['scroll'] ? (this.printCounter['first'] > this.printCounter['second'] ? this.printCounter['second'] : this.printCounter['first']) : '0')});
});
}
}
,toolPrint:function(init,element) {
if(element.iniPrint['active'] && init.toolsElements['print']) {
init.toolsElements['print'].addEvent('click',function(){print();return false;});
}
}
,toolNotice:function(init,element) {
if(element.iniNotice['active'] && init.toolsElements['notice']) {
init.toolsElements['notice'].addEvent('click',function() {
var object = this;
this.printBox = init.toolsElement.getElement('div.box.left div.notice');
if(this.printBox) {
this.prinFunctions = (function(remove,add,displays,destroy,content){content.removeClass(remove);content.addClass(add);content.printBox.setStyles({'display':displays,'top':(content.getCoordinates().top-element.iniNotice['padding']['top']),'right':element.iniNotice['padding']['right']});if(destroy == true){content.printClose.destroy();}});
this.prinFunctions('inactive','active','block',(init.toolsRunning == true ? true : false),this);
this.printClose = new Element('a',{'class':'close','events':{'click':function(){object.prinFunctions('active','inactive','none',true,object);}}}).inject(this.printBox,'top');
init.toolsRunning = true;
return false;
}
});
}
}
});


var main_gallery = new Class({
Implements:[Options],options:{'iniSize':[],'iniReset':false,'iniDuration':[],'iniTransition':Fx.Transitions.Sine.easeInOut}
,initialize:function(element,options) {
if(options) { this.setOptions(options); }
this.galleryElement = $(element);
if(this.galleryElement) {
this.galleryElements = {'bookmarks':this.galleryElement.getElements('div.navigation span.link'),'reset':this.galleryElement.getElement('div.navigation'),'block':this.galleryElement.getElements('div.block'),'scroll':this.galleryElement.getElement('div.items div.complet'),'pagination':this.galleryElement.getElement('div.pagination')};
this.galleryArray = this.galleryGenerate(this,this.options,'array');
this.galleryActual = this.galleryGenerate(this,this.options,'actual');
this.galleryNumber = 0;
this.galleryHidden = true;
this.galleryInitialize = new Fx.Scroll(this.galleryElements['scroll'],{wait:false,duration:this.options.iniDuration['slide'],offset:{'x':0,'y':0},transition:this.options.iniTransition});
this.galleryLanguage = {'cz':{'next':'Další položky','actual':'Aktuální {actual}/{total} stránek','show':'Zobrazit všechny','hidde':'Skrýt všechny'},'en':{'next':'Other items','actual':'Actual {actual}/{total} pages','show':'Show all','hidde':'Hide all'},'de':{'next':'Sonstiges','actual':'Aktuell {actual}/{total} site','show':'Alle anzeigen','hidde':'Alle ausblenden'},'ru':{'next':'Другие предметы','actual':'Текущий {actual}/{total} cайт','show':'Посмотреть все','hidde':'Скрыть все'}};
this.galleryBookmarks(this,this.options);
this.galleryPagination(this,this.options);
}
}
,gallerySlide:function(init,element,object,content,number,types) {
this.getData = init.activeBookmarks(init);
this.getCounter = (types == 'next' ? (init.galleryNumber+1) : (init.galleryNumber-1));
this.getRules = (types == 'next' ? (this.getCounter >= this.getData['printTotal'] ? true : false) : (this.getCounter < '0' ? true : false));
this.getZero = (types == 'next' ? 0 : (this.getData['printTotal']-1));
this.getActual = (this.getRules ? this.getZero : this.getCounter);
this.getItems = (function(num){return ((element.iniSize['items']/num)-1);});
init.galleryNumber = (types == 'link' ? number : this.getActual);
init.galleryElements['pagination'].getElements('span').removeClass('active');
init.galleryElements['pagination'].getElements('span').addClass('inactive');
init.paginationTotal.setProperty('html',init.galleryLanguage[config['language']]['actual'].substitute({'actual':((init.galleryNumber+1) < '10' ? '0'+(init.galleryNumber+1) : (init.galleryNumber+1)),'total':(this.getData['printTotal'] < '10' ? '0'+this.getData['printTotal'] : this.getData['printTotal'])}));
init.paginationInitialize.start((this.getData['printTotal'] > this.getItems('1') ? ((init.galleryNumber*element.iniSize['numbers'])-(element.iniSize['numbers']*this.getItems('2'))) : 0),0);
this.getObject = (types == 'link' ? object : object[init.galleryNumber]);
this.getContent = (types == 'link' ? content : init.galleryElements['pagination'].getElements('span')[(init.galleryNumber+1)]);
init.galleryInitialize.toElement(this.getObject);
this.getContent.removeClass('inactive');
this.getContent.addClass('active');
}
,galleryBookmarks:function(init,element) {
init.galleryElements['bookmarks'].each(function(el,number) {
el.addEvent('click',function(){
init.galleryElements['bookmarks'].addClass('inactive');
this.removeClass('inactive');
this.addClass('active');
init.galleryActual = number;
init.galleryNumber = 0;
init.galleryInitialize.start(0,0);
if(element.iniReset) { init.printReset.destroy(); }
init.galleryPagination(init,element);
init.galleryElement.getElements('div.block').removeClass('active');
init.galleryElement.getElements('div.block').addClass('inactive');
init.galleryElement.getElement('div.block.'+init.galleryArray[number]).removeClass('inactive');
init.galleryElement.getElement('div.block.'+init.galleryArray[number]).addClass('active');
});
});
}
,activeBookmarks:function(init) {
this.printActive = init.galleryArray[init.galleryActual];
this.printElement = init.galleryElement.getElements('div.block.'+this.printActive+' div.slide');
this.printTotal = this.printElement.length;
return {'printElement':this.printElement,'printTotal':this.printTotal};
}
,galleryPagination:function(init,element) {
var getData = init.activeBookmarks(init);
if(getData['printTotal'] > '1') {
init.galleryElements['pagination'].empty();
init.paginationTitle = new Element('div',{'class':'text','html':init.galleryLanguage[config['language']]['next']+':'}).inject(init.galleryElements['pagination'],'top');
init.paginationNumbers = new Element('div',{'class':'text numbers'}).inject(init.galleryElements['pagination'],'bottom');
init.paginationComplet = new Element('div',{'class':'text complet'}).inject(init.paginationNumbers,'bottom');
init.paginationBlocked = new Element('div',{'class':' text blocked'}).inject(init.paginationComplet,'bottom');
init.paginationTotal = new Element('div',{'class':'text total','html':init.galleryLanguage[config['language']]['actual'].substitute({'actual':'01','total':(getData['printTotal'] < '10' ? '0'+getData['printTotal'] : getData['printTotal'])})}).inject(init.galleryElements['pagination'],'bottom');
getData['printElement'].each(function(el,number) {
this.printNumber = (number+1);
this.printElement = new Element('span',{'class':'number '+(init.galleryNumber == number ? 'active' : 'inactive'),'html':(this.printNumber < '10' ? '0'+this.printNumber : this.printNumber),'events':{'click':function(){init.gallerySlide(init,element,el,this,number,'link');}}}).inject(init.paginationBlocked,'bottom');
});
this.printNext = new Element('span',{'class':'arrows next','events':{'click':function(){init.gallerySlide(init,element,getData['printElement'],this,getData['printTotal'],'next');}}}).inject(init.paginationNumbers,'bottom');
this.printPrevious = new Element('span',{'class':'arrows previous','events':{'click':function(){init.gallerySlide(init,element,getData['printElement'],this,getData['printTotal'],'previous');}}}).inject(init.paginationNumbers,'top');
init.printReset = (element.iniReset ? new Element('span',{'class':'reset','html':'<span class="edges top_left"><!-- IE6 BUG --></span>'+(init.galleryHidden ? init.galleryLanguage[config['language']]['show'] : init.galleryLanguage[config['language']]['hidde'])+'<span class="edges top_right"><!-- IE6 BUG --></span>','events':{'click':function(){init.galleryReset(init,element);}}}).inject(init.galleryElements['reset'],'bottom') : false);
init.paginationInitialize = new Fx.Scroll(init.paginationComplet,{wait:false,duration:element.iniDuration['slide'],offset:{'x':0,'y':0},transition:element.iniTransition});
} else {
init.galleryElements['pagination'].empty();
init.galleryElements['pagination'].setStyles({'display':'none'});
}
}
,galleryReset:function(init,element) {
init.galleryHidden = (init.galleryHidden ? false: true);
init.printReset.destroy();
init.galleryPagination(init,element);
init.galleryNumber = 0;
init.galleryInitialize.set(0,0);
init.printReset.destroy();
init.galleryPagination(init,element);
init.galleryElements['block'].setStyles({'width':(init.galleryHidden ? element.iniSize['original'] : element.iniSize['actual'])});
init.galleryElements['pagination'].setStyles({'display':(init.galleryHidden ? 'block' : 'none')});
}
,galleryGenerate:function(init,element,types) {
var printResults = (types == 'array' ? [] : 0);
if(types == 'array') {
init.galleryElements['bookmarks'].each(function(el,number) {
printResults[number] = el.getProperty('title');
});
} else if(types == 'actual') {
init.galleryElements['bookmarks'].each(function(el,number) {
printResults += (el.hasClass('active') ? number : 0);
});
}
return printResults;
}
});


var multimedia_box = new Class({
Implements:[Options],options:{iniElement:'',iniType:'top',iniPadding:[],iniToolbar:0,iniSize:[],iniEfect:false,iniPanel:{'panel':false,'slide':{'status':false,'automat':false,'duration':0},'drag':{'status':false,'dimension':{'x':[0,0],'y':[0,0]}}},iniEdges:true,iniBackground:false,iniUrl:'./',iniScroller:[]}
,initialize:function(links,options) {
if(options) { this.setOptions(options); }
this.bodyElement = $(document.body);
this.boxElement = $$(links);
this.boxNumber = (this.boxElement.length-1);
this.boxLanguage = {'cz':{'box':'Box','from':'ze','undefined':'Nedefinováno','content':'Obsah není definován'},'en':{'box':'Box','from':'from','undefined':'Undefined','content':'Content isn\'t defined!'},'de':{'box':'Box','from':'von','undefined':'Nicht definiert','content':'Inhalt ist nicht definiert'},'ru':{'box':'Вставка','from':'из','undefined':'Неопределённый','content':'Содержание не определено'}};
this.startEfect = [];
this.slideStatus = false;
this.firstLoad = true;
this.elementEfect = ['loading','transparent'];
this.elementFade = [0,0];
this.elementDelay = [1500,2000];
this.elementEvents = ['resize','scroll'];
this.objectX = [];
this.objectY = [];
this.createBox(this,this.options);
this.backgroundStyle(this,this.options);
}
,createBox:function(init,element) {
init.boxElement.each(function(el,number){
el.addEvent('click', function(e){
init.destroyBox(init,element);
this.getData = init.getData(this.getProperty('href'));
this.getData['numberBox'] = number;
this.getData['typeBox'] = init.typeContent(this.getData['contentBox']);
this.getData['widthBox'] = (this.getData['widthBox'] ? this.getData['widthBox'].toInt() : element.iniSize['0']);
this.getData['heightBox'] = (this.getData['heightBox'] ? this.getData['heightBox'].toInt() : element.iniSize['1']);
this.getData['contentBox'] = (this.getData['contentBox'] ? this.getData['contentBox'] : init.boxLanguage[config['language']]['content']);
this.multiBackground = new Element('div',{'class':element.iniElement+' background','styles':{'height':init.bodyElement.getScrollSize().y,'background':(element.iniBackground ? 'url('+element.iniUrl+'images/multibox_background.png) repeat 0 0' : 'transparent')},'events':{'click':function(){init.destroyBox(init,element);init.clearData(init,this,'slide');}}}).inject(init.bodyElement,'top');
this.multiInitial = new Element('div',{'id':element.iniElement,'class':element.iniElement+' initial '+element.iniType,'styles':{'top':((window.getHeight()/2)+init.bodyElement.getScrollTop()),'margin':'-'+((this.getData['heightBox']+(this.getData['typeBox'] == 'image' ? (element.iniPadding['0']-element.iniToolbar) : element.iniPadding['0']))/2).round(0)+'px 0 0 -'+((this.getData['widthBox']+element.iniPadding['1'])/2).round(0)+'px'}}).inject(init.bodyElement,'top').set((element.iniEfect ? {'opacity':'0'} : false));
this.multiBox = new Element('div',{'class':element.iniElement+' '+element.iniType}).inject(this.multiInitial,'top');
this.multiContent = (this.getData['typeBox'] == 'movie' ? '<div class="none"><embed src="./data/index_player.swf" width="'+this.getData['widthBox']+'" height="'+(this.getData['heightBox']+element.iniToolbar)+'" allowscriptaccess="always" allowfullscreen="true" flashvars="width='+this.getData['widthBox']+'&amp;height='+this.getData['heightBox']+'&amp;file='+this.getData['contentBox']+'&amp;fullscreen=true&amp;skin=./data/player_skin.swf" wmode="transparent"></embed></div>' : (this.getData['typeBox'] == 'image' ? '<div class="none"><img src="'+this.getData['contentBox']+'" /></div>' : '<div class="scroller"><div id="'+element.iniScroller['0']+'" class="none">'+this.getData['contentBox']+'</div><div class="scrollbar"><span class="top"><!-- IE6 BUG --></span><div id="'+element.iniScroller['1']+'"><div id="handle"><span class="top"><!-- IE6 BUG --></span><span class="bottom"><!-- IE6 BUG --></span></div></div><span class="bottom"><!-- IE6 BUG --></span></div></div>'));
this.multiInside = new Element('div',{'class':'inside','html':this.multiContent,'styles':{'width':this.getData['widthBox'],'height':(this.getData['heightBox']+(this.getData['typeBox'] == 'image' ? 0 : element.iniToolbar))}}).inject(this.multiBox,'bottom');
this.multiTransparent = new Element('div',{'class':'transparent'}).set({'opacity':1}).inject(this.multiInside,'top');
this.multiLoading = new Element('div',{'class':'loading'}).inject(this.multiInside,'bottom');
init.createTitle(init,element,this);
init.createPanel(init,element,this);
init.createEdges(init,element,this);
if(element.iniPanel['panel'] && element.iniPanel['slide']['status'] && element.iniPanel['slide']['automat'] && init.firstLoad){init.slideObject(init,element,this,$$('div.'+element.iniElement+' span.slide'));}
init.efectBox(init,element,this);
return false;
}
);
});
}
,createTitle:function(init,element,content) {
this.printBug = new Element('div').inject(content.multiBox,element.iniType);
this.printTitle = new Element('span',{'class':'title '+element.iniType,'html':'<strong>'+(content.getData['titleBox'] ? content.getData['titleBox'] : init.boxLanguage[config['language']]['undefined'])+'</strong><em>'+(content.getData['descBox'] ? content.getData['descBox'] : init.boxLanguage[config['language']]['undefined'])+'</em>'}).inject(this.printBug,'top');
this.printClose = new Element('span',{'class':'close '+element.iniType,'events':{'click':function(){init.destroyBox(init,element);init.clearData(init,this,'slide');}}}).inject(this.printBug,'top');
}
,typeContent:function(url) {
this.fileMark = url.substr(url.lastIndexOf('.')+1).toLowerCase();
return (this.fileMark.test('jpg|jpeg|gif|png|bmp') ? 'image' : (this.fileMark.test('mp4|mov|flv|mp3|wav') ? 'movie' : 'text'));
}
,destroyBox:function(init,element) {
init.clearData(init,element,'efect');
$$('div.'+element.iniElement).destroy();
}
,efectBox:function(init,element,content) {
var printStyle = (element.iniType == 'top' ? {'bottom':'0px'} : {'top':'0px'});
content.startPanel = (function(){(element.iniPanel['panel'] ? (element.iniEfect ? content.mainPanel.morph(printStyle) : content.mainPanel.setStyles(printStyle)) : false)});
if(element.iniEfect){content.multiInitial.set('morph',{'duration':600,'transition':'sine:in','onComplete':function(){content.startPanel.run();}}).morph({'opacity':'1'});} else {content.startPanel.run();}
init.elementEfect.each(function(el,index){
init.startEfect[init.elementEfect[index]] = (function(){$$('div.'+element.iniElement+' div.none').setStyle('display','block');$$('div.'+element.iniElement+' div.'+init.elementEfect[index]).fade(init.elementFade[index]);if(content.getData['typeBox'] == 'text'){new element_scroller(element.iniScroller['0'],element.iniScroller['1']);}}).delay(init.elementDelay[index]);
});
}
,clearData:function(init,element,types) {
if(types == 'efect') {
init.elementEfect.each(function(el,index){
$clear(init.startEfect[el]);
});
} else if(types == 'slide') {
$clear(init.startSlide);
init.slideStatus = false;
}
}
,backgroundStyle:function(init,element) {
init.elementEvents.each(function(el,index){
window.addEvent(el, function(){
$$('div.'+element.iniElement+'.background').setStyles({'width':($(document.body).getScrollSize().x <= element.iniSize['2'] ? element.iniSize['2'] : '100%'),'height':$(document.body).getScrollSize().y});
});
});
}
,nextObject:function(init,element,content) {
var nextNumber = (content.getData['numberBox']+1);
var nextStyles = (init.boxNumber >= nextNumber ? false : {'background-position':'0px -38px'});
new Element('span',{'class':'next','styles':nextStyles,'events':{'click':function(){init.clearData(init,content,'slide');(init.boxNumber >= nextNumber ? init.boxElement[nextNumber].fireEvent('click') : false)}}}).inject(content.mainPanel,'bottom');
}
,prevObject:function(init,element,content) {
var prevNumber = (content.getData['numberBox']-1);
var prevStyles = (prevNumber >= '0' ? false : {'background-position':'0px -38px'});
new Element('span',{'class':'prev','styles':prevStyles,'events':{'click':function(){init.clearData(init,content,'slide');(prevNumber >= "0" ? init.boxElement[prevNumber].fireEvent('click') : false)}}}).inject(content.mainPanel,'bottom');
}
,slideObject:function(init,element,content,panel) {
if(!init.slideStatus) {
init.slideStatus = true;
panel.addClass('active');
init.dragObject(init,element,content,true,'running');
this.slideCounter = {'counter':content.getData['numberBox']};
init.startSlide = function(){if(this.counter == init.boxNumber){this.counter = 0;} else {this.counter++;}init.boxElement[this.counter].fireEvent('click');}.periodical(element.iniPanel['slide']['duration'],this.slideCounter);
init.firstLoad = false;
} else {
init.slideStatus = false;
panel.removeClass('active');
init.dragObject(init,element,content,false,'running');
$clear(init.startSlide);
}
}
,dragObject:function(init,element,content,stat,types) {
if(element.iniPanel['drag']['status']) {
if(types == 'running'){content.mainDrag.destroy();}
var dragStyles = (!stat ? false : {'background-position':'0px -38px'});
content.mainDrag = new Element('span',{'class':'drag','styles':dragStyles}).inject(content.mainPanel,'top');
init.objectX['elem'] = (($(element.iniElement).getStyle('width').toInt()/2).round(0)+element.iniPanel['drag']['dimension']['x']['0']);
init.objectX['body'] = ((init.bodyElement.getScrollSize().x-init.objectX['elem'])-element.iniPanel['drag']['dimension']['x']['1']);
init.objectY['elem'] = (($(element.iniElement).getStyle('height').toInt()/2).round(0)+element.iniPanel['drag']['dimension']['y']['0']);
init.objectY['body'] = ((init.bodyElement.getScrollSize().y-init.objectY['elem'])-element.iniPanel['drag']['dimension']['y']['1']);
if(!stat){this.handles = new Drag.Move(element.iniElement,{'handle':content.mainDrag,'limit':{x:[init.objectX['elem'],init.objectX['body']],y:[init.objectY['elem'],init.objectY['body']]}});}
}
}
,createPanel:function(init,element,content) {
if(element.iniPanel['panel']) {
var actualNumber = (content.getData['numberBox']+1);
var totalNumber = (init.boxNumber+1);
content.mainPanel = new Element('div',{'class':'panel '+(element.iniType == 'top' ? 'bottom' : 'top'),'html':'<strong>'+init.boxLanguage[config['language']]['box']+' '+(actualNumber < '10' ? '0'+actualNumber : actualNumber)+' '+init.boxLanguage[config['language']]['from']+' '+(totalNumber < '10' ? '0'+totalNumber : totalNumber)+'</strong>'}).inject(content.multiInitial,'top');
content.panelSlide = (element.iniPanel['slide']['status'] ? new Element('span',{'class':'slide'+(init.slideStatus ? ' active' : ''),'events':{'click':function(){init.slideObject(init,element,content,this);}}}).inject(content.mainPanel,'bottom') : false);
init.nextObject(init,element,content);
init.prevObject(init,element,content);
init.dragObject(init,element,content,(!init.slideStatus ? false : true),'start');
}
}
,createEdges:function(init,element,content) {
if(element.iniEdges) {
this.edgesTop = new Element('div',{'class':'edges','html':'<span class="center"></span>','styles':{'width':(content.getData['widthBox']+element.iniPadding['2']),'top':'-10px'}}).inject(content.multiBox,'top');
this.edgesTopLeft = new Element('span',{'class':'left','styles':{'background-position':'0px 0px'}}).inject(this.edgesTop,'top');
this.edgesTopRight = new Element('span',{'class':'right','styles':{'background-position':'100% 0px'}}).inject(this.edgesTop,'top');
this.edgesBottom = new Element('div',{'class':'edges','html':'<span class="center"></span>','styles':{'width':(content.getData['widthBox']+element.iniPadding['2']),'bottom':'-10px'}}).inject(content.multiBox,'top');
this.edgesBottomLeft = new Element('span',{'class':'left','styles':{'background-position':'0px -10px'}}).inject(this.edgesBottom,'top');
this.edgesBottomRight = new Element('span',{'class':'right','styles':{'background-position':'100% -10px'}}).inject(this.edgesBottom,'top');
}
}
,getData:function(url) {
url = url.split('?');
var printResults = {};
if(url.length > '1') {
url = url['1'].split('#');
url['0'].split('&').each(function(printItem,index) {
printItem = printItem.split('=');
printResults[printItem['0']] = printItem['1'];
});
return printResults;
}
}
});


window.addEvent('domready',function() {
new main_slider('main_slider',{'iniSize':{'width':539,'height':270},'iniTips':false,'iniDuration':{'slide':1000,'micro':700,'efect':200,'image':700},'iniTransition':Fx.Transitions.Sine.easeInOut});
new main_menu('main_submenu',{'iniDuration':400});
new main_tools(document.body,{'iniTop':{'active':true},'iniBlank':{'active':true},'iniScroll':{'active':true,'padding':{'top':13,'bottom':73},'duration':700},'iniPrint':{'active':true},'iniNotice':{'active':true,'padding':{'top':45,'right':13}}});
new main_form(['search'],{'iniClear':false,'iniElements':'input,textarea','iniDuration':{'check':400,'loading':800,'submit':2500},'iniColor':['5180c4','f7362b']});
new main_form(['notice'],{'iniClear':true,'iniElements':'input,textarea','iniDuration':{'check':400,'loading':800,'submit':2500},'iniColor':['5180c4','f7362b']});
new main_gallery('main_gallery',{'iniSize':{'actual':637,'original':50000,'numbers':32,'items':10},'iniReset':true,'iniDuration':{'slide':1200},'iniTransition':Fx.Transitions.Sine.easeInOut});
new multimedia_box('a.multibox.text, a.multibox.gallery',{iniElement:'main_multibox',iniType:'bottom',iniPadding:[151,60,62],iniToolbar:0,iniSize:[500,240,651],iniEfect:true,iniPanel:{'panel':true,'slide':{'status':true,'automat':false,'duration':4000},'drag':{'status':true,'dimension':{'x':[29,1],'y':[39,31]}}},iniEdges:true,iniBackground:false,iniUrl:config['url'],iniScroller:['scroller','scrollbar']});
});
