function remove_editor_scroll()
{
	var frms = document.getElementsByTagName("IFRAME");
	if (frms && frms.length)
	{
		frms[0].setAttribute('scrolling', 'no');
	}
}

function openHelp(id, mode, action)
{
	//window.open("http://printdirect.ru/index.php?mode=articles&action=help&popup=1&help_id="+id+"&help_mode="+mode+"&help_action="+action, "_pd_help", "height=200,width=370,scrollbars=yes");
	var container = document.getElementById('popup_help_container');
	if (!container) return;
	var div1 = container.getElementsByTagName("DIV")[0];
	if (!div1) return;
	var div_content = div1.getElementsByTagName("DIV")[0];
	if (!div_content) return;
	div_content.innerHTML = "";
	div_content.style['backgroundImage'] = 'url(/templates/images/printdirect_loader.gif)';
    var message = pd_modalMessage.prototype.create('popup_help_container', 320, 200, true, null);
    message.show();
    var help = x_get_help(id, mode, action, dummy, false);
    var div0 = message.getDomRef().getElementsByTagName("DIV")[0];
    if (div0)
    {
        var div1 = div0.getElementsByTagName("DIV")[0];
        if (div1)
        {
            div1.innerHTML = help;
            div1.style['backgroundImage'] = "none";
        }
    }
}

function openModal(id, w, h)
{
    var message = pd_modalMessage.prototype.create(id, w, h, true, null);
    message.show();
}


function openModalPopup(content, raw)
{
	var container = document.getElementById('popup_help_container');
	if (!container) return;
	var div1 = container.getElementsByTagName("DIV")[0];
	if (!div1) return;
	var div_content = div1.getElementsByTagName("DIV")[0];
	if (!div_content) return;
	div_content.innerHTML = "";
	//div_content.style['backgroundImage'] = 'url(/templates/images/printdirect_loader.gif)';
    var message = pd_modalMessage.prototype.create('popup_help_container', 420, 200, true, null);
    message.show();
    //var help = x_get_help(id, mode, action, dummy, false);
    var div0 = message.getDomRef().getElementsByTagName("DIV")[0];
    div0.style['width'] = "400px";
    if (div0)
    {
        var div1 = div0.getElementsByTagName("DIV")[0];
        if (div1)
        {
            if (raw)
            {
                var re1 = />/g;
                var re2 = /</g;
                content = content.replace(re1, '&gt;');
                content = content.replace(re2, '&lt;');
            }
            div1.innerHTML = content;
            div1.style['textAlign'] = "left";
            div1.style['width'] = "400px";
            //div1.style['backgroundImage'] = "none";
        }
    }
}

function openModalImage(src, w, h)
{
	var container = document.getElementById('popup_help_container');
	if (!container) return;
	var div1 = container.getElementsByTagName("DIV")[0];
	if (!div1) return;
	var div_content = div1.getElementsByTagName("DIV")[0];
	if (!div_content) return;
	div_content.innerHTML = "";
    var message = pd_modalMessage.prototype.create('popup_help_container', w, h, true, null);
    message.show();
    var div0 = message.getDomRef().getElementsByTagName("DIV")[0];
    div0.style['width'] = (w-20)+"px";
    div0.style['height'] = (h-30)+"px";
    if (div0)
    {
        var div1 = div0.getElementsByTagName("DIV")[0];
        if (div1)
        {
//            if (raw)
//            {
//                var re1 = />/g;
//                var re2 = /</g;
//                content = content.replace(re1, '&gt;');
//                content = content.replace(re2, '&lt;');
//            }
            div1.innerHTML = "<img src="+src+" />";
            div1.style['textAlign'] = "left";
            div1.style['width'] = (w-20) + "px";
            div1.style['height'] = (h-80) + "px";
        }
    }
}

function openMapping(id)
{
	window.open("http://printdirect.ru/index.php?mode=articles&action=show&aid="+id+"&media=4&popup=1", "", "height=360,width=515,scrollbars=yes");
}

function openItemInfo(id)
{
	window.open("http://printdirect.ru/index.php?mode=articles&action=show&aid="+id+"&media=4&popup=1", "", "height=670,width=640,scrollbars=yes");
}

function openSizeInfo(id)
{
	window.open("http://printdirect.ru/index.php?mode=articles&action=show&aid="+id+"&media=4&popup=1", "", "height=670,width=640,scrollbars=yes");
}

function setCounter(name)
{
	document.getElementById(name+"_counter").innerHTML = document.getElementById(name).getAttribute('maxlength') - document.getElementById(name).value.length;
}

function setPrice(elem)
{
	var amt;
    if (isNaN(parseFloat(elem.value))) 
    {
         amt = 0;
    }
    else
    {
   	     amt = Math.round(elem.value);
    }
	document.getElementById('total_price').innerHTML = (isNaN(amt) ? 0 : parseFloat(amt)) + (isNaN(parseFloat(document.getElementById('bp_span').innerHTML)) ? 0 : parseFloat(document.getElementById('bp_span').innerHTML));
}

function setAmount(elem, target_id)
{
    var target = document.getElementById(target_id);
    if (!target) reurn;
    var amt;
    
    if (isNaN(parseFloat(elem.value)))
    {
        amt = 0;
    }
    else
    {
        amt = Math.round(elem.value);
    }
    var perc = target.getAttribute("disc_perc");
    var val = Math.round(amt - (amt*perc/100));
    if (isNaN(val)) val = 0;
    target.value = val;
}

function remove_wait_backgrounds()
{
	var divs = document.getElementsByTagName("DIV");
	for (var i=0; i<divs.length; i++)
	{
		if (divs[i].className.indexOf('pleasewait') != -1)
		{
			divs[i].style['backgroundImage'] = "none";
		}
	}
}

function setCounterSectionVisibility()
{
    if (document.getElementById('store_stat_google').checked)
    {
        document.getElementById('counter_google_section').style['display'] = "block";
    }
    else
    {
        document.getElementById('counter_google_section').style['display'] = "none";
    }
}

function show_product_image(container)
{
    var e = document.getElementById(container);
    if (!e) return;
    
    var imgs = e.getElementsByTagName('IMG');
    for (var i=0; i<imgs.length; i++)
    {
        if (imgs[i].getAttribute('is_product_image') == '1')
        {
            document.images[imgs[i].id].src = imgs[i].getAttribute('target_src');
        }
    }
}

function show_cart_image(elem, args)
{
    var full = $(args['elem']).find("img.bimage:first");
    var src = full.attr("src");
    $('#full_img').attr("src", "/images/spacer.gif");
    if (src)
    {
        $('#full_img').attr("src", src);
    }
}

function postOrderForm(act)
{
	var out = Array();
	var cbx = document.getElementsByTagName("INPUT");
	for (var i=0; i<cbx.length; i++)
	{
		if (cbx[i].type == "checkbox" && cbx[i].getAttribute('order') && cbx[i].checked)
		{
			out[out.length] = cbx[i].getAttribute('order') + "~" + document.getElementById('status_'+cbx[i].getAttribute('order')).value + "~" + document.getElementById('payment_'+cbx[i].getAttribute('order')).value + "~" + document.getElementById('delivery_'+cbx[i].getAttribute('order')).value;
		}
	}
	document.getElementById('orders').value = out.join("|");
	document.getElementById('submit_action').value = act;
	switch (act)
	{
		case "change_status":
		case "set_status":
		default:
			document.forms['orderlist_form'].target = "_self";
		break;
		case "register":
        case "delivery_register":
		case "courier_register":
		case "sticker":
		case "invoices":
                case "print_invoices":
                case "complect_lists":
                case "dpd_form":
        case "internal_blanks":
            case "summary_register":
            case "summary_register_new":
			document.forms['orderlist_form'].target = "_blank";
		break;
	}
	document.forms['orderlist_form'].submit();
}


function implodeCheckboxesAndSubmit(elem, frm, attr, fld)
{
    if (!document.getElementById(fld)) return;
    if (!frm) return;
    if (!elem) return;
    frm.elements['frm_submit_action'].name = elem.name;
    var out = new Array();
    var cbx = document.getElementsByTagName("INPUT");
    for (var i=0; i<cbx.length; i++)
    {
		if (cbx[i].type == "checkbox" && cbx[i].getAttribute(attr) && cbx[i].checked)
		{
            out[out.length] = cbx[i].value;
		}
    }
    if (out.length)
    {
        frm.elements[fld].value = out.join("~");
        frm.submit();
    }
    else
    {
        alert("Ничего не выбрано");
    }
}

function removeDocumentForms()
{
    var inputs = document.getElementsByTagName("input");
    var butids = new Array();
    var selids = new Array();
    var taids = new Array();
    for (var i=0; i<inputs.length; i++)
    {
        if (inputs[i].getAttribute("type") == "button"
            || inputs[i].getAttribute("type") == "submit")
        {
            butids[butids.length] = inputs[i].id;
        }
    }
    var selects = document.getElementsByTagName("select");
    for (var i=0; i<selects.length; i++)
    {
        selids[selids.length] = selects[i].id;
    }
    var textareas = document.getElementsByTagName('textarea');
    for (var i=0; i<textareas.length; i++)
    {
        taids[taids.length] = textareas[i].id;
    }
    
    
    for (var i=0; i<butids.length; i++)
    {
        if (document.getElementById(butids[i]))
        {
            document.getElementById(butids[i]).parentNode.removeChild(document.getElementById(butids[i]));
        }
    }
    for (var i=0; i<selids.length; i++)
    {
        var el = document.getElementById(selids[i]);
        var v = el.options[el.selectedIndex].text;
        var par = el.parentNode;
        par.removeChild(el);
        var span = document.createElement("SPAN");
        span.className="admin_text";
        span.innerHTML = v;
        par.appendChild(span);
    }

    if (document.getElementById('order_delivery_date') && document.getElementById('f-calendar-trigger-1'))
    {
        document.getElementById('f-calendar-trigger-1').style.display = 'none';


        var v = 'не определена';
        if (document.getElementById('order_delivery_date').value != '')
        {
            v = document.getElementById('order_delivery_date').value;
        }

        var par = document.getElementById('order_delivery_date').parentNode;
        par.removeChild(document.getElementById('order_delivery_date'));
        var span = document.createElement("SPAN");
        span.className="admin_text";
        span.innerHTML = v;
        par.appendChild(span);

    }

    for (var i=0; i<taids.length; i++)
    {
        var el = document.getElementById(taids[i]);
        //alert(el);
        if (el)
        {
            var v = el.value;
            var par = el.parentNode;
            par.removeChild(el);
            var span = document.createElement("SPAN");
            span.className="admin_text invert";
            span.style['backgroundColor'] = el.style['backgroundColor'];
            span.innerHTML = v;
            par.appendChild(span);
        }
    }
}

function dummy()
{
    
}

function process_admin_toolbar()
{
    if (document.getElementById("atb_user").value)
    {
        window.open('/admin.php?mode=users&action=list&filter='+document.getElementById('atb_user').value+'&submit_filter=1');
    }
    else if (document.getElementById('atb_order').value)
    {
        window.open('/admin.php?mode=orders&action=order_invoice&popup=1&order_number='+document.getElementById('atb_order').value);
    }
    else if (document.getElementById('atb_tovar').value)
    {
        window.open('/admin.php?mode=instance&action=tovar_card&popup=1&tovar_id='+document.getElementById('atb_tovar').value);
    }
    else if (document.getElementById('atb_ticket').value)
    {
        window.open('/admin.php?mode=tickets&action=ticket_info&tid='+document.getElementById('atb_ticket').value);
    }
    else if (document.getElementById('atb_store').value)
    {
        window.open('/admin.php?mode=instance&action=stores&search='+document.getElementById('atb_store').value);
    }
}

function setRadioGroupValue(name, value)
{
    var elems = document.getElementsByTagName('INPUT');
    for (var i=0; i<elems.length; i++)
    {
        if (elems[i].type == "radio" && elems[i].name == name && elems[i].value == value)
        {
            elems[i].checked = true;
        }
    }
}

function getRadioGroupValueByAttr(attr)
{
    var elems = document.getElementsByTagName("INPUT");
    for (var i=0; i<elems.length; i++)
    {
        if (elems[i].type == "radio" && elems[i].checked && elems[i].getAttribute(attr) == 1)
        {
            return elems[i].value;
        }
    }
    return 0;
}

function initMaxlengthCountdown(id)
{
    if (!document.getElementById(id))
    {
        return;
    }
    document.getElementById(id).onkeyup = function (event)
    {
        if (this.getAttribute("maxlength") - this.value.length < 0)
        {
            this.value = this.value.substr(0, this.getAttribute('maxlength'));
        }
        if (document.getElementById(this.id+"_countdown"))
        {
            document.getElementById(this.id+"_countdown").innerHTML = "Осталось: "+(this.getAttribute("maxlength") - this.value.length)+" символов";
        }
    }
}

function initAllCountdowns()
{
    var inputs = document.getElementsByTagName('INPUT');
    for (var i=0; i<inputs.length; i++)
    {
        if (inputs[i].getAttribute("is_countdown") == 1)
        {
            initMaxlengthCountdown(inputs[i].id);
        }
    }
    var areas = document.getElementsByTagName('TREXTAREA');
    for (var i=0; i<areas.length; i++)
    {
        if (areas[i].getAttribute("is_countdown") == 1)
        {
            initMaxlengthCountdown(areas[i].id);
        }
    }
}

function extractJson(str)
{
  return eval("("+str+")");
}

function joinSelectedCheckboxes(attr)
{
    var data = new Array();
    var cbx = document.getElementsByTagName("INPUT");
    for (var i=0; i<cbx.length; i++)
    {
        if (cbx[i].type == "checkbox" && cbx[i].getAttribute(attr) == '1' && cbx[i].checked)
        {
            data.push(cbx[i].value);
        }
    }
    return data.join("~");
}

function checkByAttribute(attr, elem)
{
    var cbx = document.getElementsByTagName("INPUT");
    for (var i=0; i<cbx.length; i++)
    {
        if (cbx[i].type == "checkbox" && cbx[i].getAttribute(attr) == '1')
        {
            cbx[i].checked = elem.checked;
        }
    }
}

function show_present_image(ref, args)
{
    var e = document.getElementById(ref);
    $(e).find("img").attr({width: args['width'], height: args['height'], src: args['src']});
}

var active_banner_id = null;
var current_code = null;

function populateBannerCode(txtarea_class,type,banner_id)
{
    $(".pleasewait").mask("Идет загрузка...");
    if (banner_id)
    {
        active_banner_id = banner_id
    }

    $.post("/index.php?mode=account&action=get_banner_code", {banner_id: banner_id, type: type},
            function(data)
            {
                 current_code = data;
                 $("."+txtarea_class).val(data);
                 $(".pleasewait").unmask();
            }
    );
}

function generateUrl(url, args)
{
    if (url == null)
    {
        url = location.href;
    }
    url = url.replace(/\#/, "");
    var parts = url.split("?");
    if (typeof(parts[1]) != "undefined")
    {
        var params = parts[1].split("&");
    }
    else
    {
        var params = new Array();
    }
    for (var i=0; i<params.length; i++)
    {
        var arr = params[i].split("=");
        if (args != null && typeof(args[arr[0]]) != "undefined")
        {
            params[i] = arr[0]+"="+args[arr[0]];
            delete args[arr[0]];
        }
    }
    if (args != null)
    {
        for (var i in args)
        {
            params.push(i+"="+args[i]);
        }
    }
    parts[1] = params.join("&");
    var new_url = parts.join("?");
    return new_url;
}


