function runMovie(src, id, w, h){ 

    document.write('<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="' + w +'" height="' + h +'" id="' + id + '" align="middle"><param name="allowScriptAccess" value="sameDomain" /><param name="movie" value="' + src + '" /><param name="quality" value="high" /><param name="wmode" value="transparent" /><embed src="' + src + '" quality="high" wmode="transparent" width="' + w + '" height="' + h +'" name="' + id + '" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" /></object>');
}


$(document).ready(function() {

    $("a.popinLink").popin({
        loaderImg : './images/ajax-loader.gif',
        opacity: .7
    });
});

function __get(id)
{
    if (document.layers)
    {
        return document.layers[id];
    }
    if (document.getElementById)
    {
        return document.getElementById(id);
    }       
    if (document.all)
    {
        return document.all[id];
    }
}

var winCol = new Date();
function wshow(url, width, height)
{
    if (!width) width = 640;
    if (!height) height = 480;
    window.open(url, (winCol++), 
                'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width=' 
                + width + 
                ',height=' + height + 
                ',left=' + ((screen.width - width) / 2) + 
                ',top=' + ((screen.height - height) / 2));
    return false;
}

//-------------------------------------------------------------------
function setTableStyle(tableObject, noHeader, isFooterTr) 
{
    var topLevel = tableObject.childNodes;
    
    for (var j = 0; j < topLevel.length; j++) {

        if (topLevel[j].nodeName == "TBODY") {

            var nodes;
            nodes = topLevel[j].childNodes;

            for (var i = 0, tr = 0; i < nodes.length; i++) {
                if (nodes[i].nodeName == "TR" && nodes[i].className != 'trDelim') {
                    
                    if (nodes[i].className == "") {

                        if ((tr == 0) && (!noHeader)) {
                            nodes[i].className = 'head';
                        } else {
                            if (isFooterTr == true && tr == nodes.length-1)  {

                                nodes[i].className = 'footer';
                            } else {

                                if (tr % 2) {
                                    nodes[i].className = 'light';
                                } else {
                                    nodes[i].className = 'dark';
                                }
                            }
                        }
                        
                        var tdNodes;
                        tdNodes = nodes[i].childNodes;
                        for (var k=0, td = 0; k<tdNodes.length; k++) {
                    
                            if (tdNodes[k].nodeName == "TD" && tdNodes[k].className != 'tdDelim') {
                    
                                if (tdNodes[k].className == "") {
                                    if (td % 2) {
                                        tdNodes[k].className = 'tdlight';
                                    } else {
                                        tdNodes[k].className = 'tdDark';
                                    }
                                }
                                td++;
                            }
                        }
                    } 
                    tr++;
                }
            }
        }
    }
}
function updateTables(noHeader, isFooterTr, tableClassName) 
{
    all = document.getElementsByTagName("table");
    for (var i = 0; i < all.length; i++) {

        var obj = all[i];
        if ((obj.className == 'colorTable' && !tableClassName) || (obj.className == tableClassName && tableClassName)) {
            setTableStyle(obj, noHeader, isFooterTr);
        } else if (obj.className == 'colorTableWithFooterLine' && !tableClassName) {
            setTableStyle(obj, noHeader, true);
        } else if (obj.className == 'colorTableWithNoHeader' && !tableClassName) {
            setTableStyle(obj, true, isFooterTr);
        } else if (obj.className == 'colorTableWithFooterLineWithNoHeader' && !tableClassName) {
            setTableStyle(obj, true, true);
        }
    }
}

// TODO: убрать в продуктиве
function trace(obj) {
    var s = '';
    for (var a in obj) {
        s += a + ': ' + obj[a] + '\n<br><hr>';
    }    
    var width = 800;
    var height = 600;
    var w = window.open('', 'debug', 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes');
    w.document.write(s);
}


function mouseovermap (type) {
    if ($('#mapImg').attr('src') == './images/spacer.gif') { $('#mapImg').attr('src', './images/map.gif'); }
    if (type == 0) {
        $('#bottomMapContainer').fadeIn('slow');
    } else {
        $('#bottomMapContainer').show();
    }
}
function mouseoutmap () {

    $('#bottomMapContainer').hide();
}

// check form F. Checkes last element only if (L == true)
function checkForm(F, L){

    var T = '';
    var err = false;
    
    for (var i = 0; i < F.length; i++) {

        var e = F.elements[i];
        var v = e.value;
        
        if (v) { 
            
            if (e.id == 'questForm2_email' || e.name == 'form[questForm2_email]') { // test emails
            
                var re = /[0-9a-z_]+@[0-9a-z_^\.]+\.[a-z]{2,3}/i;
                if (re.test(v)) { e.style.borderColor = '#C6C6C6'; }
                else { 
                    
                    e.style.borderColor = '#ff0000';
                    err = true;
                }
                
            } else {
            
                e.style.borderColor = '#C6C6C6';
            }

        } else {

            if (i != F.length - 2) { // all inputs, except last
            
                e.style.borderColor = '#ff0000';
                if (!err) { e.focus(); }
                err = true;

            } else { // last input
            
                if (L) { 
                    
                    e.style.borderColor = '#ff0000';
                    if (!err) { e.focus(); }
                    err = true;
                }
            }
        }
    }
    

    if (!err) { F.submit(); }
    
    return false;
}


// check form F. Checkes last element only if (L == true)
function checkFormInternship(F){

    var T = '';
    var err = false;
    var $checkBoxes = [];

    for (var i = 0; i < F.length; i++) {

        var e = F.elements[i];
        var v = e.value;

        if (e.id != 'questForm2_name' && e.id != 'questForm2_lastname' && e.id != 'questForm2_email'
            && e.id != 'questForm2_phone' && e.id != 'questForm2_school') { continue; }
        
        if (v) { 
            
            if (e.id == 'questForm2_email' || e.name == 'form[questForm2_email]') { // test emails
            
                var re = /[0-9a-z_]+@[0-9a-z_^\.]+\.[a-z]{2,3}/i;
                if (re.test(v)) { e.style.borderColor = '#C6C6C6'; }
                else { 
                    
                    e.style.borderColor = '#ff0000';
                    err = true;
                }
                
            } else {
            
                e.style.borderColor = '#C6C6C6';
            }

        } else {

            if (i != F.length - 2) { // all inputs, except last
            
                e.style.borderColor = '#ff0000';
                if (!err) { e.focus(); }
                err = true;
            }
        }
    }


    if ($('input[id^="questForm2_term"]:checked').length > 0) { $('#questForm2_term_block').css('border', '1px solid #ffffff'); }
    else {
    
        $('#questForm2_term_block').css('border', '1px solid #ff0000');
        err = true;
    }

    if ($('input[id^="questForm2_internship"]:checked').length > 0) { $('#questForm2_internship_block').css('border', '1px solid #ffffff'); }
    else {
    
        $('#questForm2_internship_block').css('border', '1px solid #ff0000');
        err = true;
    }

    

    if (!err) { F.submit(); }
    
    return false;
}



// set paging arrows
function setArrowsTop() {

    if ($('#newsDetailContainer div.portfolioPrev div').length + $('#newsDetailContainer div.portfolioNext div').length < 1) { 
        
        return;
    }
    
    // set arrows in middle
    $blockHeight = $('#newsDetailContainer').height();
    if ($blockHeight > 32) {

        $top = Math.floor(($blockHeight - 32)/2); // 32 - arrow's height
        $('#newsDetailContainer div.portfolioPrev div').css('top', $top);
        $('#newsDetailContainer div.portfolioNext div').css('top', $top);
    }

    $('#newsDetailContainer div.portfolioPrev div').css('display', 'block');
    $('#newsDetailContainer div.portfolioNext div').css('display', 'block');
}




// prods slider
function initSlider(type) {

    // get widths
    var $id = '#' + type;
    var $prodBlock = $($id + ' .prodBlock:first');
    var $blockWidth = parseInt($($id + ' .sliderContent').width());
    var $tableWidth = parseInt($($id + ' table').width());
    var $prodWidth = parseInt($($prodBlock).width()) + parseInt($($prodBlock).css('padding-left')) + parseInt($($prodBlock).css('padding-right'));
    var $overL = false;
    var $overR = false;
    var $sliding = false;


    $('#sliderPaging').append('<img src="./templates/insegment/images/s.gif" class="sliderlArr" alt="previous" />');

    // slider paging
    var $prodCnt = $('.prodBlock').length;
    if ($prodCnt < 6) { $('#sliderPaging').remove(); }
    else {

        var $pageId = 0;
        var $active;
        for (var $i = 0; $i < Math.ceil($prodCnt / 5); $i++) {

            $active = ($pageId == 0)?'_active':'';
                
            $('#sliderPaging').append('<img src="./templates/insegment/images/paging_dot' + $active + '.gif" alt="' + $pageId + '" id="pageImg' + $pageId + '" />');
            $pageId++;
        }
    }
    $('#sliderPaging').append('<img src="./templates/insegment/images/s.gif" class="sliderrArr" alt="next" />');



    $('img[id^="pageImg"]').click(function() {
    
        if ($sliding) { return false; }
        
        var $nom = parseInt($(this).attr('alt'));
        var $this = this;
        
        // slide
        var $elementsShift = ((1 + $nom)*5 >= $prodCnt)?($prodCnt - 5):($nom*5);
        var $shift = correctLimits($prodWidth*$elementsShift);
    
        $sliding = true;
        $($id + ' .sliderShift').animate({left:-($shift)}, 500, "swing", function() {
    
            // enable/disable arrows
            $($id + ' .sliderlArr').attr('class', 'sliderlArrActive');
            $($id + ' .sliderrArr').attr('class', 'sliderrArrActive');
            if ($blockWidth - parseInt($($id + ' .sliderShift').css('left')) + $prodWidth > $tableWidth) {
        
                $($id + ' .sliderrArrActive').attr('class', 'sliderrArr');
            }
    
            if (parseInt($($id + ' .sliderShift').css('left')) >= 0) {
        
                $($id + ' .sliderlArrActive').attr('class', 'sliderlArr');
            }
            
    
            $('img[id^="pageImg"]').attr('src', './templates/insegment/images/paging_dot.gif');
            $($this).attr('src', './templates/insegment/images/paging_dot_active.gif');

            correctShift();
            $sliding = false;
        });
    });
    // /slider paging
    
    
    
    // slide right
    $($id + ' .sliderrArr').click(function() {
    
        if ($sliding) { return false; }
        if (!$(this).is('.sliderrArrActive')) { return; }
    
        // slide
        var $left = parseInt($($id + ' .sliderShift').css('left'));
        $($id + ' .sliderrArrActive').attr('class', 'sliderrArr');

        var $shift = correctLimits($left - $prodWidth);
        
        $sliding = true;
        $($id + ' .sliderShift').animate({left:-$shift}, 500, "swing", function() {
    
            // enable/disable arrows
            $($id + ' .sliderlArr').attr('class', 'sliderlArrActive');
            $($id + ' .sliderrArr').attr('class', 'sliderrArrActive');
            if ($blockWidth - parseInt($($id + ' .sliderShift').css('left')) + $prodWidth > $tableWidth) {
        
                $($id + ' .sliderrArrActive').attr('class', 'sliderrArr');
            }
    
            
            if ($overR && $($id + ' .sliderrArrActive').is('.sliderrArrActive')) {
    
                $($id + ' .sliderrArrActive').trigger('click');
            }
    
            $('img[id^="pageImg"]').attr('src', './templates/insegment/images/paging_dot.gif');
            var $activeNom = -parseInt($($id + ' .sliderShift').css('left'))/(5*$prodWidth);
            $('#pageImg' + Math.ceil($activeNom)).attr('src', './templates/insegment/images/paging_dot_active.gif');

            correctShift();
            $sliding = false;
        });
    });
    
    // slide left
    $($id + ' .sliderlArr').click(function() {
    
        if ($sliding) { return false; }
        if (!$(this).is('.sliderlArrActive')) { return; }
    
        // slide
        var $left = parseInt($($id + ' .sliderShift').css('left'));
        $($id + ' .sliderlArrActive').attr('class', 'sliderlArr');
        
        var $shift = correctLimits($left + $prodWidth);
        
        $sliding = true;
        $($id + ' .sliderShift').animate({left:-$shift}, 500, "swing", function() {
        
            // enable/disable arrows
            $($id + ' .sliderrArr').attr('class', 'sliderrArrActive');
            $($id + ' .sliderlArr').attr('class', 'sliderlArrActive');
            if (parseInt($($id + ' .sliderShift').css('left')) + $prodWidth > 0) {
        
                $($id + ' .sliderlArrActive').attr('class', 'sliderlArr');
            }
    
            if ($overL && $($id + ' .sliderlArrActive').is('.sliderlArrActive')) {
    
                $($id + ' .sliderlArrActive').trigger('click');
            }
    
            $('img[id^="pageImg"]').attr('src', './templates/insegment/images/paging_dot.gif');
            var $activeNom = -parseInt($($id + ' .sliderShift').css('left'))/(5*$prodWidth);
            $('#pageImg' + Math.ceil($activeNom)).attr('src', './templates/insegment/images/paging_dot_active.gif');

            correctShift();
            $sliding = false;
        });
    });
    

    function correctShift() {

        var $left = Math.abs(parseInt($($id + ' .sliderShift').css('left')));

        if ($left%$prodWidth == 0) { return; }

        var $cnt = parseInt($left/$prodWidth);
        var $toPrev = $left - $cnt*$prodWidth;
        var $toNext = ($cnt + 1)*$prodWidth - $left;

        var $correctNom = ($toPrev < $toNext)?$cnt:($cnt + 1);
        var $correctShift = $correctNom*$prodWidth;

        $correctShift = correctLimits($correctShift);

        $($id + ' .sliderShift').css('left', -$correctShift);
    }

    // overflow limits
    function correctLimits($shift) {

        $shift = Math.abs($shift);
        
        if ($shift < 0) { $shift = 0; }
        if ($shift > $tableWidth - 5*$prodWidth) { $shift = $tableWidth - 5*$prodWidth; }

        return $shift;
    }


    
    $($id + ' .sliderrArr').hover(function() { $overR = true; }, function() { $overR = false; });
    $($id + ' .sliderlArr').hover(function() { $overL = true; }, function() { $overL = false; });
    $($id + ' .sliderrArr').mouseover(function() { return $(this).trigger('click'); });
    $($id + ' .sliderlArr').mouseover(function() { return $(this).trigger('click'); });
        
    
    
    // enable right arrow
    if ($tableWidth > $blockWidth) {
    
        $($id + ' .sliderrArr').attr('class', 'sliderrArrActive');
    }
}

