$(document).ready(function() {
    $(".autocomplete-loading").ajaxStart(function(){
        $(this).fadeIn("slow");
    });    
    $(".autocomplete-loading").ajaxStop(function(){
        $(this).fadeOut("slow");
    });
    $('#open_auth').click(function() {
        $('.auth_submit').slideToggle('slow', function() {
        });
    });
    $('#auth_close').click(function() {
        $('.auth_submit').slideUp('fast');
    });
    $('#login').unbind("focusin").bind("focusin",function(){
        if ($(this).val() == "логин"){
            $(this).val("");    
        }        
    })
    $('#login').unbind("focusout").bind("focusout",function(){
        if ($(this).val() == ""){
            $(this).val("логин");    
        }
    })
    $('#pass').unbind("focusin").bind("focusin",function(){
        if ($(this).val() == "пароль"){
            $(this).val("");    
        }        
    })
    $('#pass').unbind("focusout").bind("focusout",function(){
        if ($(this).val() == ""){
            $(this).val("пароль");    
        }
    })
    $('#login').keyup(function(event) {
      if (event.keyCode == '13') {
         $('#auth_submit').click();
       }
    })
    $('#pass').keyup(function(event) {
      if (event.keyCode == '13') {
         $('#auth_submit').click();
       }
    })
    $('#auth_submit').bind('click', function() {
        $.ajax({
            type: "POST",
            url: "ajax/auth.php",
            data: "login="+ $('#login').val() +"&pass=" + $('#pass').val(),
            success: function(data){
                if (data == "true"){
                    $.cookie('login', $('#login').val());
                    $.cookie('pass', $('#pass').val());
                    $('.auth_submit').slideUp('fast');
                    $('.open_auth').slideUp('fast');
                    $('.open_admin').slideDown('fast');
                    $('.check_logged').show();
                    $('.href_slide').hide();
                    $('.block_admin_menu_abs').hide();
                }else{                   
                }            
            }
         }); 
    });   
    $('#exit').bind('click', function() {
        $.cookie('login', null);
        $.cookie('pass', null);
        $('.open_auth').slideDown('fast');
        $('.open_admin').slideUp('fast');
        $('.check_logged').hide();
        $('.href_slide').hide();
        $('.block_admin_menu_abs').hide();
    })
    $('.opacity_img > span').mouseover(function(){
        $(this).prev('img').fadeTo('fast', 1, function() {
        });
    })
    $('.opacity_img > span').mouseout(function(){
        $(this).prev('img').fadeTo('fast', 0.5, function() {
        });
    })
    $('.menu').unbind("mouseenter").unbind("mouseleave").bind("mouseenter",function(){
        $('div.block_admin_menu_abs', $(this)).show();
    }).bind("mouseleave",function(){
        $('div.block_admin_menu_abs', $(this)).hide();
    }); 
	$("#menu-edit").dialog({
	   autoOpen: false,
		resizable: true,
		height:466,
        width:400,
		modal: true,
		buttons: {
			"Применить": function() {
			    var mas = new Array(); 
			    $('ul#on_form_edit_menu > li, ul#on_form_edit_menu > li > ul > li').each(function(i){
			          mas[i] = $(this).attr('title');
			    })                
                $.ajax({
                    type: "POST",
                    url: "ajax/cats.php",
                    data: "action=edit_menu&data="+mas.toString(),
                    success: function(data){
                        $('#main_menu').html(data);
                    }
                })
                $(this).dialog('close');
			},
			"Отмена": function() {
				$(this).dialog('close');
			}
		}
	});
	$("#add_cat").dialog({
	   autoOpen: false,
		resizable: true,
		height:500,
        width:400,
		modal: true,
		buttons: {			
			"Закрыть": function() {
				$(this).dialog('close');
			}
		}
	});
    $("#edit_menu").unbind('click').bind('click', function(){
        $("#menu-edit").dialog('open');
        $.ajax({
            type: "POST",
            url: "ajax/cats.php",
            data: "action=refresh_menu",
            success: function(data){
                $("#menu-edit p").html(data);
                $('#on_form_edit_menu li').addClass('ui-state-default');
                $('#on_form_edit_menu li ul li').addClass('ui-state-highlight');                
                $('#on_form_edit_menu').sortable({
                    revert: true
                })
                $('#on_form_edit_menu li ul').sortable({
                    revert: true
                })
            }
        })
    })
	$("#trade-edit").dialog({
	   autoOpen: false,
		resizable: true,
		height:600,
        width:800,
		modal: true,
		buttons: {   
		    "Отмена": function() {			    
			    $("#trade-edit p").html("");
				$(this).dialog('close');
			},
			"Применить": function() {
			    save_trade(); 
                refresh_trade(parseInt($("#form_trade_id").val()));
			    $("#trade-edit p").html("");
				$(this).dialog('close');
			}
		}
	});
	$("#trade-add").dialog({
	   autoOpen: false,
		resizable: true,
		height:600,
        width:800,
		modal: true,
		buttons: {   
		    "Отмена": function() {			    
			    $("#trade-add p").html("");
				$(this).dialog('close');
			},
			"Добавить": function() {
			    add_trade(); 
                gotopage(1,$("#cat_form_trade").val());
			    $("#trade-add p").html("");
				$(this).dialog('close');
			}
		}
	});
    $("#page_edit").dialog({
	   autoOpen: false,
		resizable: true,
		height:600,
        width:800,
		modal: true,
		buttons: {   
		    "Отмена": function() {			    
				$(this).dialog('close');
			},
			"Применить": function() {
			    set_content_page() 
				$(this).dialog('close');
			}
		}
	}); 
    $("#edit_config").dialog({
	   autoOpen: false,
		resizable: true,
		height:600,
        width:500,
		modal: true,
		buttons: {   
		    "Отмена": function() {			    
				$(this).dialog('close');
			},
			"Применить": function() {
			    save_config(); 
				
			}
		}
	}); 
    $("#new_trade").unbind('click').bind('click', function(){
        $("#trade-add").dialog('open');
        $.ajax({
            type: "POST",
            url: "ajax/trades.php",
            data: "action=add_trade",
            success: function(data){
                $("#trade-add p").html(data);      
            }
        })
        return false;
    })  
    $("#new_cat").unbind('click').bind('click', function(){
        $("#add_cat").dialog('open');
        $.ajax({
            type: "POST",
            url: "ajax/cats.php",
            data: "action=create_form_cat",
            success: function(data){
                $("#add_cat p").html(data);       
            }
        })
        return false;
    })
    $("#delete_trade").unbind('click').bind('click', function(){        
        if (confirm("Вы действительно хотите удалить этот товар?")){
            id_trade = $("#form_trade_id").val();
            $.ajax({
                type: "POST",
                url: "ajax/trades.php",
                data: "action=delete_trade_do&id_trade="+id_trade,
                success: function(data){
                    $("#trade-edit").dialog('close');
                    gotopage(1,parseInt(data));
                }
            })            
        }
    })
    $("#add_new_cat").unbind('click').live('click', function(){
        var new_name = $("#new_cat_name").val();
        var type = $("#select_type_by_new_cat").val();
        $.ajax({
            type: "POST",
            url: "ajax/cats.php",
            data: "action=add_new_cat_do&name="+new_name+"&type="+type,
            success: function(data){
                $("#list_cat_field").html(data);
                $.ajax({
                    type: "POST",
                    url: "ajax/cats.php",
                    data: "action=add_info_for_edit&id="+$("#list_cat").val(),
                    success: function(data){
                        $("#field_edit_cat").html(data);
                    }
                })  
            }
        })
    })
    $("#list_cat").unbind('change').live('change', function(){
        $.ajax({
            type: "POST",
            url: "ajax/cats.php",
            data: "action=add_info_for_edit&id="+$(this).val(),
            success: function(data){
                $("#field_edit_cat").html(data);
            }
        })        
    })
    $("#edit_cur_cat").unbind('click').live('click', function(){             
        var edit_name = $("#edit_cat_name").val();
        var edit_about = $("#edit_cat_about").val();
        var type = parseInt($("#select_type_by_curr_cat").val());
        var id = parseInt($("#id_cur_cat").val());                
        var query = "";
            query += "&name=" + edit_name;
            query += "&about=" + edit_about;
            query += "&type=" + type;
            query += "&id=" + id;
        $.ajax({
            type: "POST",
            url: "ajax/cats.php",
            data: "action=edit_cat_do"+query,
            success: function(data){
            }
        })  
    })
    $("#del_cur_cat").unbind('click').live('click', function(){        
        if (confirm("Вы действительно хотите удалить эту страницу? Все товары привязанные к ней будут доступны на странице с товарами всех категорий.")){
            var id = $("#id_cur_cat").val();
            $.ajax({
                type: "POST",
                url: "ajax/cats.php",
                data: "action=delete_cat_do&id="+id,
                success: function(data){
                    $("#list_cat_field").html(data);
                    $.ajax({
                        type: "POST",
                        url: "ajax/cats.php",
                        data: "action=add_info_for_edit&id="+$("#list_cat").val(),
                        success: function(data){
                            $("#field_edit_cat").html(data);
                        }
                    })
                }
            })            
        }
    })
    $("#send_letter").unbind('click').live('click', function(){  
         var name = $("#name_sender").val();
         var text = $("#text_sender").val();
         if (name.length == 0 || text.length == 0){
            alert('Заполните все поля!');
            return false;
         }
        $.ajax({
            type: "POST",
            url: "ajax/mail.php",
            data: "name="+name+"&text="+text,
            success: function(data){
                $(".form_feedback").html(data);
            }
        })   
    }) 
    $("#edit_cur_trade").unbind('click').live('click', function(){
        $("#trade-edit").dialog('open');
        var id = parseInt($("#cur_trade_id").val());    
        $.ajax({
            type: "POST",
            url: "ajax/trades.php",
            data: "action=edit_trade&trade_id="+id,
            success: function(data){
                $("#trade-edit p").html(data); 
            }
        })
        return false;
    })    
    $("#config_site").unbind('click').live('click', function(){
        $("#edit_config").dialog('open');
        $.ajax({
            type: "POST",
            url: "ajax/config.php",
            data: "action=get_config",
            success: function(data){
                $("#edit_config p").html(data); 
            }
        })
        return false;
    })       
});
function set_content_page(){
    id = $("#id_page_for_edit").val();
    content = $("#content_edit_page").val();
    $("#page_edit").dialog('open');
    $.ajax({
        type: "POST",
        url: "ajax/parse.php",
        data: "page=set_page_content&id="+id+"&content="+content,
        success: function(data){
            gotopage(0, id);
        }
    })     
}
function get_content_page(id){
    $("#page_edit").dialog('open');
    $("#id_page_for_edit").val(id);
    $.ajax({
        type: "POST",
        url: "ajax/parse.php",
        data: "page=get_page_content&id="+id,
        success: function(data){
            $("#content_edit_page").html(data);
        }
    })     
}
function mycarousel_itemLoadCallback(carousel, state)
{
    if (carousel.has(carousel.first, carousel.last)) {
        return;
    }
    $.get(
        'ajax/carousel.php',
        {
            first: carousel.first,
            last: carousel.last
        },
        function(xml) {
            mycarousel_itemAddCallback(carousel, carousel.first, carousel.last, xml);
        },
        'xml'
    );
};
function mycarousel_itemAddCallback(carousel, first, last, xml)
{
    carousel.size(parseInt($('total', xml).text()));
    $('image', xml).each(function(i) {
        var mas = new Array();
        mas = $(this).text().split("|||");
        carousel.add(first + i, mycarousel_getItemHTML(mas[0],mas[1],mas[2], mas[3]));
    });
};
function mycarousel_getItemHTML(url_img_thumb, url_page, title, id)
{
    return '<a title="'+title+'" href="' + url_page + '" style="background: url(' + url_img_thumb + ') no-repeat scroll center center #FBFAF3;"  onClick="gotopage(2, '+id+'); return false;" class="trade_thumb" ></a>';
};
function check_logged(login, pass){
    if (typeof login != 'undefined' && typeof pass != 'undefined') {
        if (login === null || pass === null) {
            login = '';
            pass = '';
        }
        if (login != '' && pass != ''){
            $.ajax({
                type: "POST",
                url: "ajax/auth.php",
                data: "action=check&login="+ login +"&pass=" + pass,
                success: function(data){
                    if (data == "true"){
                        $('.open_admin').slideDown('fast');
                        $('.check_logged').show();
                        //$('.href_slide').hide();         
                    }else{                   
                        $('.open_auth').slideDown('fast');                    
                    }            
                }
             });
         }else {
            return false;
         }  
     }else {
        return false;
     }   
}
function init_block(){
    $(".lightbox").lightBox();
    $('.trades_img').unbind("mouseenter").unbind("mouseleave").bind("mouseenter",function(){
        $('div.href_slide', $(this)).slideDown(200);
    }).bind("mouseleave",function(){
        $('div.href_slide', $(this)).slideUp(200);
    });   
    $(".edit_trade").unbind('click').bind('click', function(){
        $("#trade-edit").dialog('open');
        $.ajax({
            type: "POST",
            url: "ajax/trades.php",
            data: "action=edit_trade&trade_id="+$(this).attr('alt'),
            success: function(data){
                $("#trade-edit p").html(data); 
            }
        })
        return false;
    })    
    $('#mycarousel').jcarousel({           
        itemLoadCallback: mycarousel_itemLoadCallback
    });   
}
function del_img_trade(){
    id_trade = $("#form_trade_id").val();
    $.ajax({
        type: "POST",
        url: "ajax/trades.php",
        data: "action=del_img_trade&id_trade="+id_trade,
        success: function(data){
            if (data != 'false'){
                $("#field_img_form_trade").html("<img name='img_form_trade' src='images/no.jpg' /><a href='#'  id='btnUpload'> Загрузить? </a>");   
                add_img();
            }
        }
    })
    return false;    
}
function add_img(){
    id_trade = $("#form_trade_id").val();
    var btnUpload=$('#btnUpload');
	var status=$('#status');
	new AjaxUpload(btnUpload, {
		action: 'ajax/upload-file.php?id='+parseInt(id_trade),
		name: 'uploadfile',
		onSubmit: function(file, ext){
			 if (! (ext && /^(jpg)$/.test(ext))){ 
				status.text('Только JPG файлы разрешены');
				return false;
			}
			status.text('Загружаю...');
		},
		onComplete: function(file, response){
			status.text('');
			if(response==="success"){ 
                var ext = file.split("."); 
                var isMSIE = (navigator.appVersion.indexOf("MSIE") != -1);
                var r = "";
                if (!isMSIE){
                    var r =  '?' +Math.random();
                }
				$('#field_img_form_trade').html('<img name="img_form_trade" src="images/'+parseInt(id_trade)+'_thumb.'+ ext[1] + r +'" /> <a href="#" onClick="del_img_trade(); return false;"> Удалить? </a>');
			} else{
				status.text('Произошла ошибка - '+response);
			}
		}
	});    
}
function showPreview(coords)
{
	if (parseInt(coords.w) > 0)
	{
		var rx = 100 / coords.w;
		var ry = 100 / coords.h;
		$('#preview').css({
			width: Math.round(rx * 500) + 'px',
			height: Math.round(ry * 370) + 'px',
			marginLeft: '-' + Math.round(rx * coords.x) + 'px',
			marginTop: '-' + Math.round(ry * coords.y) + 'px'
		});
	}
}
function save_trade(){
    var mas = $("#edit_form_trade").serialize();
    $.ajax({
        type: "POST",
        url: "ajax/trades.php",
        data: "action=edit_trade_do&"+mas,
        success: function(data){
        }
    })    
}
function add_trade(){
    var mas = $("#add_form_trade").serialize();
    $.ajax({
        type: "POST",
        url: "ajax/trades.php",
        data: "action=add_trade_do&"+mas,
        success: function(data){
        }
    })    
}
function gotopagenum(id,numpage){
    $.ajax({
        type: "POST",
        url: "ajax/parse.php",
        data: "page=category&cat="+id+"&cstart="+numpage,
        success: function(data){
            $('.block').html(data); 
            init_block();
            if (check_logged($.cookie('login'), $.cookie('pass')) === false){
                $('.open_auth').slideDown('fast');
            }
        }
     });     
}
function gotopage(type, id){
    if (type == 0){
        page = "static";
        type_id = "page_id";
    }
    if (type == 1){
        page = "category";
        type_id = "cat";
    }
    if (type == 2){
        page = "trade";
        type_id = "trade_id";
    }
    $.ajax({
        type: "POST",
        url: "ajax/parse.php",
        data: "page="+page+"&"+type_id+"="+id,
        success: function(data){
            $('.block').html(data); 
            init_block();
            if (check_logged($.cookie('login'), $.cookie('pass')) === false){
                $('.open_auth').slideDown('fast');
            }
        }
     });  
     $("ul#main_menu li").each(function(){
        $(this).removeClass();
     })  
     $("#m_"+id).addClass("active");
}
function refresh_trade(id){
$.ajax({
    type: "POST",
    url: "ajax/parse.php",
    data: "page=category&trade_id="+id,
    success: function(data){
        $('#trade_block_'+id).html(data); 
        init_block();
        if (check_logged($.cookie('login'), $.cookie('pass')) === false){
            $('.open_auth').slideDown('fast');
        }
    }
 });    
}
function save_config(){
    if ($("#pass_config").val() != $("#pass_config2").val()){
        alert("Пароли не совпадают");
        return false;
    }
    var mas = $("#form_edit_config").serialize();
    $.ajax({
        type: "POST",
        url: "ajax/config.php",
        data: "action=set_config&"+mas,
        success: function(data){
            $("#edit_config").dialog('close');
        }
    })      
}
