﻿// JScript File
        
var OnLoadTextTransform = function(document) {
            var paragraphs = document.getElementsByTagName('p');

            for (var ind=0;ind<paragraphs.length;ind++)
            {
                ttParagraph_composer(paragraphs[ind],false);
            }
        }

setOpacity = function(el)
{
    pictSrc = 'img/window_screen.png';
    if (!el)
    return;
    if (Slider.Detector.isIE())
    {
        el.style.filter = 'progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\'' + pictSrc + '\', sizingMethod=\'scale\')';
    }
    else if (Slider.Detector.isFirefox())
    {
        el.style.backgroundImage = 'url(' + pictSrc + ')';
        el.style.backgroundRepeat = 'repeat';
    }
    else
    {
        el.style.backgroundColor = 'black';
    }
}
closeBoxes = function()
 {
    var boxes = document.getElementsByClassName('descBox');
    if (boxes)
    {
        for (ind = 0; ind < boxes.length; ind++)
        {
            boxes[ind].style.display = 'none';
        }
    }
}
changeElementVisible = function(divId)
 {
    var el = document.getElementById(divId);
    if (el)
    {
        if (el.style.display == 'block')
        {
            el.style.display = 'none';
        }
        else
        {
            closeBoxes();
            el.style.display = 'block';
            setOpacity(el);
        }
    }
    return false;
}

onIndexPageLoad = function() {
    var latestSliders = null;
    var galleryShingles = null;
    var container = $('gallery');
    latestSliders = new Slider.SlidingBureau(container);
    var drawers = $$("#gallery .drawers>li");
    for (var i = 0; i < drawers.length; i++) {
        var handle = drawers[i].getElementsByClassName('drawer-handle')[0];
        var content = drawers[i].getElementsByClassName('drawer-content')[0];
        var drawer = new Slider.SlidingDrawer(content, handle, latestSliders, {
            triggerEvent: 'mouseover',
            triggerDelay: 120
        });
        latestSliders.addDrawer(drawer);

    }
    var freeDrawers = function(container) {
        return function() {
            if (!Slider.Detector.isIEStrict()) {
                container.setStyle({
                    height: 'auto'
                });
            }
        }
    }
    setTimeout(freeDrawers(container), 1000);

    galleryShingles = new Slider.ShingleBureau('gallery-shingles');
    var challenges = $('gallery-shingles').getElementsByTagName('li');
    for (var i = 0; i < challenges.length; i++) {
        var handle;
        if(Element.getElementsByClassName)
        {
            handle = Element.getElementsByClassName(challenges[i], 'handle')[0];
        }
        else
        {
            handle = challenges[i].getElementsByClassName('handle')[0];
        }
        
        var drawer = new Slider.ShingleDrawer(challenges[i], handle, galleryShingles, {
            triggerEvent: 'mouseover',
            triggerDelay: 50
        });
        galleryShingles.addDrawer(drawer);

    }

    var descs = $$('.house div.descBox');
    descs.each(setOpacity);

}

var changeElementClass = function(elementMenu, hide,className)
{
    var ind = elementMenu.className.indexOf(className);
    if(hide)
    {
        if(ind!=-1)
        {
            var reg = new RegExp(className);
            elementMenu.className = elementMenu.className.replace(reg,'');
        }
    }
    else
    {
        if(ind==-1)
        {
            elementMenu.className = elementMenu.className + ' ' + className;
        }
    }
}

processMenuClick = function(elementId,config){
    var element = document.getElementById(elementId);
    currentMenuElement = null;
    var indHide = -1;
    if(element)
    {
        indHide = element.className.indexOf('hide');
    }
    
    for(var ind=0;ind<config.Menus.length;ind++)
    {
        closeMenus(config.Menus[ind]);
    }
    
    for(var ind=0;ind<config.Images.length;ind++)
    {
        changeElementDisplay(config.Images[ind],config.Images[ind].className.indexOf(elementId)==-1);
        element.style.backgroundPosition = 'center bottom';
    }
    
    if(element)
    {   
        if(indHide!=-1)
        {
            changeElementDisplay(element,false);
        }
    }
    return false;
}
highlightImage = function(elementId,config){
    var element = document.getElementById(elementId);
    var elementLink = document.getElementById('link' + elementId);
   
    if(elementLink)
    {
        elementLink.style.color = 'orange';
    }
    
    for(var ind=0;ind<config.Images.length;ind++)
    {
        if(config.Images[ind]!=element&&config.Images[ind]!=currentMenuElement)
        {
            config.Images[ind].style.backgroundPosition = 'center bottom';
        }
        else
        {
            element.style.backgroundPosition = 'center top';            
        }
    }
}


processSubMenuClick = function(elementId,config){
    currentMenuElement = document.getElementById(elementId);;
    highlightImage(elementId,config);
}

processHouseImageClick = function(elementId,config){
    processSubMenuClick(elementId,config);
    __doPostBack('link' + elementId,'');
    return false;
}

displayGroundOrnament = function(isShow){
    var groundElement = document.getElementById('ground_ornament');
    if(groundElement)
    {
        groundElement.style.display = isShow?'':'none';
    }
}
processMainMenuClick = function(elementId,config){  
    processMenuClick(elementId,config);
    displayGroundOrnament(true);
    return false;
}
processCokolMenuClick = function(elementId,config){
    processMenuClick(elementId,config);
    displayGroundOrnament(false);
    return false;
}

closeMenus = function(element){
    if(element)
    {
        changeElementDisplay(element,true);
    }
    return false;
}

darkImage = function(elementId){
    var element = document.getElementById(elementId);
    
    var elementLink = document.getElementById('link' + elementId);
   
    if(elementLink)
    {
        elementLink.style.color = '';
    }
    
    if(element && element!=currentMenuElement)
    {
        //changeElementClass(element,true,'upImage');
        element.style.backgroundPosition = 'center bottom';
    }
    
}

var changeElementDisplay = function(elementMenu, hide)
{
    var ind = elementMenu.className.indexOf('hide');
    if(hide)
    {
        if(ind==-1)
        {
            elementMenu.className = elementMenu.className + ' hide';
        }
    }
    else
    {
        if(ind!=-1)
        {
            elementMenu.className = elementMenu.className.replace(/hide/,'');
        }
    }
}

var exchangeElementDisplay = function(element)
{
    var ind = element.className.indexOf('hide');
    if(ind==-1)
    {
        element.className = element.className + ' hide';
    }
    else
    {
        element.className = element.className.replace(/hide/,'');
    }
}



var exchangeMenuImage = function(elementMenu)
{
    var hide;
    if(elementMenu.src.indexOf('down_arrow')==-1)
    {
        elementMenu.src = 'img/menu/down_arrow.gif';
        hide = false;
    }
    else
    {
        elementMenu.src = 'img/menu/left_arrow.gif';
        hide = true;
    }
    return hide;
}

var processMenuImage = function(element)
{
    var elem = getNextTag(element,'DIV');
    
    if(elem.childNodes.length<=1)
    {
        elem = getNextTag(elem,'DIV');
    }

    if(elem)
    {
        var hide = exchangeMenuImage(element);
        changeElementDisplay(elem,hide);
    }
}
var processMenu = function(element)
{
    var elem = getPrevTag(element,'IMG');
    
    if(elem)
    {
        processMenuImage(elem);
    }
}

var getNextTag = function(element,tag)
{   
    var elem = element.nextSibling;
    while(elem!=null&&(elem.tagName==undefined||elem.tagName.toUpperCase()!=tag))
    {
        elem = elem.nextSibling;
    }
    return elem;
}

var getPrevTag = function(element,tag)
{   
    var elem = element.previousSibling;
    while(elem!=null&&(elem.tagName==undefined||elem.tagName.toUpperCase()!=tag))
    {
        elem = elem.previousSibling;
    }
    return elem;
}

var getParentTag = function(element,tag)
{   
    var elem = element.parentNode;
    while(elem!=null&&(elem.tagName==undefined||elem.tagName.toUpperCase()!=tag))
    {
        elem = elem.parentNode;
    }
    return elem;
}

var getFirstChildTag = function(element,tag)
{   
    if(element.firstChild)
    {
        var elem = element.firstChild;
        if(elem!=null&&elem.tagName==undefined||elem.tagName.toUpperCase()!=tag)
        {
            elem = getNextTag(elem,tag);
        }
    }

    return elem;
}

var processSubMenuImage = function(element)
{
    var elem = getParentTag(element,'TR');
    
    if(elem)
    {
        var next = elem;
        while((next = getNextTag(next,'TR'))!=null&&next.className.indexOf('product')!=-1&&next.tagName.toUpperCase()!='DIV')
        {
            var tdEl = getFirstChildTag(next,'TD');
            if(tdEl!=null&&tdEl.className.indexOf('product_price')!=-1)
            {
                exchangeElementDisplay(next);
            }
            else
            {
                break;
            }
        }
        exchangeMenuImage(element);
    }
}

var processSubMenu = function(element)
{
    var elem = getPrevTag(element,'IMG');
    processSubMenuImage(elem);
}



var personToTable = [4,4,4,3,3,4,4,2,14,2];
var productIds = [];

var setToOrder = function(element,id)
{
    var parentTd = getParentTag(element,'TD')
    if(parentTd)
    {
        var el = getNextTag(parentTd,'TD');
        var measureItem = el.innerHTML;
        el = getNextTag(el,'TD');
        var price = el.innerHTML;
        var orderTable = document.getElementById('order');
        var childs = orderTable.childNodes;
        var tbody = getNextTag(childs[0],'TBODY');
        
        var trEl = document.createElement('TR');
        var tdEl = document.createElement('TD');
        tdEl.appendChild(document.createTextNode(''));
        trEl.appendChild(tdEl);
        
        tdEl = document.createElement('TD');
        tdEl.appendChild(document.createTextNode(element.innerHTML));
        trEl.appendChild(tdEl);
        
        tdEl = document.createElement('TD');
        tdEl.appendChild(document.createTextNode(measureItem));
        trEl.appendChild(tdEl);
        
        tdEl = document.createElement('TD');
        tdEl.appendChild(document.createTextNode(price));
        trEl.appendChild(tdEl);
        
        tdEl = document.createElement('TD');

        imgEl = document.createElement('IMG');
        imgEl.setAttribute('src','img/menu/delete_item.gif');
        imgEl.setAttribute('alt','-');
        imgEl.onclick = removeProduct;
        imgEl.value = id;
        tdEl.appendChild(imgEl);
        trEl.appendChild(tdEl);
        
        var hiddenPriceEl = $get('hiddenPrice');
        var priceValue = hiddenPriceEl.value;
        if(priceValue.length>0)
        {
            priceValue = priceValue + '&';
        }
        priceValue = priceValue + id;
        hiddenPriceEl.value = priceValue;        
        productIds.push(id);
        
        tbody.appendChild(trEl);
        recalculateOrder(tbody);
    }
}

var recalculateOrder = function(tbody)
{   
    var tr = getFirstChildTag(tbody,'TR');

    var sum = 0;
    if(tr)
    {
        var ind = 1;
        do
        {
            var td = getFirstChildTag(tr,'TD');
            td.innerHTML = ind + '.';
            //product name
            td = getNextTag(td,'TD');
            //measure item
            td = getNextTag(td,'TD');
            //price
            td = getNextTag(td,'TD');
            sum += parseInt(td.innerHTML);
        
            ind++;
        }
        while((tr = getNextTag(tr,'TR'))!=null)
    }
    var itogo_text = document.getElementById('itogo_text');
    if(itogo_text)
    {
        itogo_text.innerHTML = sum;
    } 
}

var removeProduct = function(element)
{
    var img;
    if(element)
    {
        img = element.target;
    }
    else
    {
        img = window.event.srcElement;
    }
    var tr = getParentTag(img,'TR');
    var tbody = getParentTag(tr,'TBODY');
    tbody.removeChild(tr);
    recalculateOrder(tbody);
    
    var index=-1,strValue = '';
    for(var ind=0;ind<productIds.length;ind++)
    {
        if(productIds[ind]==img.value&&index==-1)
        {
            index = ind;
        }
        else
        {
            if(strValue.length>0)
            {
                strValue = strValue + '&';
            }
            strValue = strValue + productIds[ind];
        }
    }
    $get('hiddenPrice').value = strValue;
    productIds.splice(index,1);
}
var messageBox = function(element)
{
    return confirm('Вы уверены, что хотите удалить ' + element + ' и все его содержимое?');
}

var priceCount = 2;
var addPrice = function(element)
{
    var tr = getParentTag(element,'TR');
    if(tr)
    {
        var cl = document.getElementById('');
        var clone = document.createElement('TR')

        
            var td = document.createElement('TD');
            var imgEl = document.createElement('IMG');
            imgEl.setAttribute('src','../img/admin/minus.gif');
            imgEl.setAttribute('alt','-');
            imgEl.onclick = removeProduct;
            td.appendChild(imgEl);
            
            clone.appendChild(td);
            
            td = document.createElement('TD');
            var inputEl = document.createElement('INPUT');
            inputEl.setAttribute('type','text');
            inputEl.setAttribute('class','input_medium');
            inputEl.setAttribute('id','item'+priceCount);
            td.appendChild(inputEl);
            
            inputEl = document.createTextNode('-');
            td.appendChild(inputEl);
            
            inputEl = document.createElement('INPUT');
            inputEl.setAttribute('type','text');
            inputEl.setAttribute('class','input_medium');
            inputEl.setAttribute('id','price'+priceCount);
            td.appendChild(inputEl);           
        
            clone.appendChild(td);
        

        tr.parentNode.insertBefore(clone,tr);
        priceCount++;
    }
}

var removePrice = function(img)
{    
    if(img)
    {    
        var tr = getParentTag(img,'TR');
        var tbody = getParentTag(tr,'TBODY');
        tbody.removeChild(tr);
    }
}

var emptyTextOnFocus = function(textCtrl,originText)
{
    if(textCtrl && textCtrl.value==originText)
    {
        textCtrl.value = '';
        textCtrl.className = textCtrl.className.replace(/gray/,'');
    }
}

var fillTextOnBlur = function(textCtrl,setText)
{
    if(textCtrl && textCtrl.value=='')
    {
        textCtrl.value = setText;
        textCtrl.className = textCtrl.className + ' gray';
    }
}

var showReserveForm = function(ctrlId)
{
    var ctrl = document.getElementById(ctrlId);
    if(ctrl)
    {
        ctrl.style.display = '';
    }
}

var hideReserveForm = function(ctrlId)
{
    var ctrl = document.getElementById(ctrlId);
    if(ctrl)
    {
        ctrl.style.display = 'none';
    }
}
