/* 
 * acesta este un js pentru lucruri comune, este necesar
 * 
*/

$(document).ready(function(){
    $('form:not(.disable_ajax)').live("submit", function(){
        var form = $(this);
        
        /*
        $.msg({
            autoUnblock : false,
            clickUnblock : false,
            content: '<p>Va rugam asteptati, se proceseaza</p>'
          });
          */        
        
        
        //if (form.hasClass('blockui')) {
        	$.blockUI({ css: { 
                border: 'none', 
                padding: '15px', 
                backgroundColor: '#000', 
                '-webkit-border-radius': '10px', 
                '-moz-border-radius': '10px', 
                opacity: .5, 
                color: '#fff'
            },
            message: '<p><strong>Va rugam asteptati, se proceseaza</strong></p>'
        	}); 
        //}
        
    
        alldata = $(this).find('input, textarea, select');
        data = $.grep(alldata, function (value,key) {
            //return ($(value).attr("type") != "checkbox" && $(value).attr("type") != "radio") || $(value).attr("checked");
            return ($(value).attr("type") == "file" && $(value).val() != '') || ($(value).attr("type") != "checkbox" && $(value).attr("type") != "radio" && $(value).attr("type") != "file") || $(value).attr("checked");
        });
        
        url = $(this).attr('action');
        
        method = $(this).attr('method');
        if (!method) {
            method = "post";
        }

        $.ajax({
            type: method,
            data: data,
            dataType: "json",
            async: false,
            url: url,
            success: function(data){
                //if (form.hasClass('blockui')) {
                //}
            	
	            $.unblockUI();
                
                interpretor(data);
            }

        });
        

        return false;
    });
    
    $('a.remote_content').live('click', function(){
        url = $(this).attr('href');
       
        $.ajax({
            method: "GET",
            dataType: "json",
            async: false,
            url: url,
            success: function(data){
                interpretor(data);
            }

        });
       
        return false;
    });
    
})

function interpretor(data) {
    if (data.content) {
        for (i in data.content) {
            $(i).html(data.content[i]);
        }
    }
    
    if (data.error) {
        showError(data.error);
    }
    
    if (data.alert) {
        alertMessage(data.alert);
    }
    
    if (data.redirect) {
        document.location = data.redirect;
    }
}

function getContent(url) {
    var output = null;
    
    $.ajax({
        type: "get",
        dataType: "json",
        async: false,
        url: url,
        success: function(data){
            interpretor(data);
            if (data.output) {
                output = data.output;
            }
        }

    });
    
    return output;
}


function blockWindow(content) {
    var closeButton = $('<button></button>')
    .html('close')
    .attr('id', 'closeButton')
    ;
    
    var window = $('<div></div>');
    
    var divContent = $('<div></div>');
    divContent.css('padding: 15px;');
    divContent.css('min-width: 5px;');
    divContent.css('min-height: 5px;');
    
    divContent.append(content);
    
    window.append(divContent);
    window.append('<br>');
    window.append(closeButton);
    
    closeButton.click(function(){
        $.unblockUI(); 
    });
    
    $.blockUI({ 
        message: window, 
        css: {
            top: '10%'
        } 
    }); 
}

function showWindow(content) {
    var div = $('<div></div>');
    div.html(content);
    $(div).dialog();
    return;
    

    var width = $(document).width();
    var height = $(document).height();
        
    var layer = $('<div id="windowClickerLayer"></div>')
    .css('z-index', 99999)
    .css('background-color', 'gray')
    .css('width', width)
    .css('height', height)
    .css('position', 'absolute')
    .css('top', 0)
    .css('left', 0)
    .css('opacity', '0.6')
    ;
	
    $('html').append(layer);
    
    var closeButton = $('<button></button>')
    .html('close')
    .attr('id', 'closeButton')
    ;
    
    var window = $('<div></div>')
    .css('z-index', 100000)
    .css('background-color', 'white')
    .css('min-width', '30px')
    .css('min-height', '30px')
    .css('margin-left', 'auto')
    .css('margin-right', 'auto')
    .html(content)
    ;
	
    $('#windowClickerLayer').append(window);
    $('#windowClickerLayer').append(closeButton);
}

function showError(message) {
    var content = '<div class="msg-red-10">'+message+'</div>';
    $('#errorMessage').html(content);
    


//alert(message);
/*
                     $('.errorMessage').html(data.error)
                    .fadeIn("1000");
                    */

}

function alertMessage(message) {
	alert(message);
}






