jQuery.noConflict();
jQuery(document).ready(function()
{
    jQuery(".chapterName a").click(function()
        {
            var chapterDiv = jQuery(this).parent();
            var chapterImg = jQuery(this).prev();
            var selected = chapterDiv.hasClass("selectedChapter");
            if(selected)
            {
                chapterImg.attr("src", "/images/down.gif");
                chapterDiv.removeClass("selectedChapter");
                chapterDiv.next().slideUp();
            }
            else
            {
                chapterImg.attr("src", "/images/up.gif");
                chapterDiv.addClass("selectedChapter");
                chapterDiv.next().slideDown();
            }
        });

     jQuery("#newPatternBut").click(function()
        {
            function showResult(result)
            {
                jQuery("#newPatternId").html(result);
            }
            var newPatternType = jQuery("#newPatternType").val();
            var newPatternDesc = jQuery("#newPatternDesc").val();
            var newPattern = jQuery("#newPattern").val();
            if(check(newPatternType, newPatternDesc, newPattern))
            {
                var params = new Object();
                params[jQuery("#newPatternType").attr("name")] = newPatternType;
                params[jQuery("#newPatternDesc").attr("name")] = newPatternDesc;
                params[jQuery("#newPattern").attr("name")] = newPattern;
                jQuery.post(jQuery("#newPatternUrl").val(), params, function(data)
                {
                    showResult(isnumber(data) ? "Успешно! Id = " + data : "Ошибка! Сервер не смог обработать.");
                });
            }
            else
                showResult("Ошибка! Не заполнены поля.");
        });

     jQuery("#viewPatternBut").click(function()
        {
            function showResult(desc, type, pattern)
            {
                jQuery("#viewPatternDesc").html(desc);
                if(check(type, pattern))
                {
                    jQuery("#viewPatternType").html(type);
                    jQuery("#viewPattern").html(pattern);
                }
            }
            var viewPatternId = jQuery("#viewPatternId").val();
            if(check(viewPatternId))
            {
                if(isnumber(viewPatternId))
                {
                    var params = new Object();
                    params[jQuery("#viewPatternId").attr("name")] = viewPatternId;
                    jQuery.post(jQuery("#viewPatternUrl").val(), params, function(data)
                    {
                        showResult(data);
                    });
                }
                else
                    showResult("Ошибка! Некорректное значение в поле.");
            }
            else
                showResult("Ошибка! Не заполнено поле.");
        });

    jQuery("button.update-event").click(function()
            {
                var isNew = jQuery(this).attr("edo") == "new";
                var id = jQuery(this).attr("etype");
                var input_params = ['group','type','name','desc'];
                if(!isNew) input_params[input_params.length] = 'id';
                var checkbox_params = ['gsm','gps','brk','bal', 'level'];
                var camsCount = parseInt(jQuery("#camsCount").val());
                for(var i=1; i<=camsCount; i++) checkbox_params[checkbox_params.length] = "cam"+i;
                for(i=0; i<checkbox_params.length; i++){
                    input_params[input_params.length] = checkbox_params[i];
                    input_params[input_params.length] = checkbox_params[i] + "nor";
                }

                var checkFlag = true;
                var params = new Object();
                for(i=0; i<input_params.length; i++){
                    var param = jQuery("[p='"+input_params[i]+id+"']");
                    var isCheckbox = param.attr("type") == "checkbox";
                    //alert(input_params[i] + ": " + isCheckbox + " - " + param.attr("name") + " - " + (isCheckbox ? (param.attr("checked")?"1":"0") : param.val()));
                    params[param.attr("name")] = isCheckbox ? (param.attr("checked")?"1":"0") : param.val();
                    if(!isCheckbox && !check(param.val())) checkFlag = false;
                }

                if(checkFlag)
                {
                    jQuery.post(jQuery("#"+(isNew?"newEventTypeUrl":"updateEventTypeUrl")).val(), params, function(data){
                        var isrun = isnumber(data);
                        alert(isrun ? "Успешно!" : "Ошибка! Сервер не смог обработать.");
                        if(isrun && isNew) window.location.reload(true);
                    });
                }
                else
                    alert("Ошибка! Не заполнены поля.");
            });

});

function check()
{
    for(var i=0; i<arguments.length; i++)
        if(arguments[i] == undefined || arguments[i] == null || arguments[i] == "")
            return false;
    return true;
}

function isnumber(str)
{
    return !isNaN(parseInt(str));
}
