
var recommendation_form_conf = {
        textarea_comment: 'Napisz rekomendację...',
        input_author: 'podpis...'
};

function parseCompanyId(company_id)
{
    return company_id.split('_')[0];
}

$(document).ready(function(){
    $.ajaxSetup({'async': true});

    $(".share-items").hide();

    //
    //        podziel sie (a: @naro)
    //

	$("a.share").click(function(){

		 if($(this).hasClass('share')) {
	 		$(this).parents(".krak-belt").next(".share-items").slideDown("slow");
	 		$(this).addClass('share-up').removeClass('share');
      
		} else {
	 		$(this).parents(".krak-belt").next(".share-items").slideUp("slow");
			$(this).addClass('share').removeClass('share-up');
	
		}

	return false;
	});

    $("a.close").click(function(){
        $(this).parent().slideUp("slow");
        return false;
    });

   //
    //        krak platinium - zobacz wiecej (a: naro)
    //
	

 $(".share-gallery-platinium").hide();

 
    $("a.share-platinium").click(function(){

	if($(this).hasClass('share-platinium')) {
	
		$(this).parents(".krak-galerry-platinium").next(".share-gallery-platinium").slideDown("slow");
	 	$(this).parents(".krak-galerry-platinium").addClass('krak-galerry-platinium-up').removeClass('krak-galerry-platinium');
	 	$(this).addClass('share-platinium-up').removeClass('share-platinium');
		$('.share-platinium-up').text('Ukryj galerię') ;
	
	} else {
	
		$(this).parents(".krak-galerry-platinium-up").next(".share-gallery-platinium").slideUp("slow");
		$(this).parents(".krak-galerry-platinium-up").addClass('krak-galerry-platinium').removeClass('krak-galerry-platinium-up');
	 	$(this).addClass('share-platinium').removeClass('share-platinium-up');
		$('.share-platinium').text('Zobacz galerię') ;
	}
	

        return false;

    });



    //
    //        rekomenduj
    //


    $(".recommends").hide();


    $("a.rec-link, a.recommend").hover(function(){
        if ($.browser.msie && $.browser.version <= "7.0"){
            $(this).next().css("z-index", 1000000);

            // FIXME:  no nie dało sie inaczej... IE7 sucks!
            // http://css-tricks.com/snippets/jquery/fixing-ie-z-index/
            var zIndexNumber = 1000;
            $("div.item-search").each(function() {
                if (($(this).get(0).tagName == 'P')
                && ($(this).attr('class') == 'industry'))
                {
                    $(this).css("margin-left", "125px");
                    $(this).css('z-index', -1);
                } else {
                    $(this).css("zIndex", zIndexNumber);
                    zIndexNumber -= 10;
                }
            });

            // schowaj "podziel się"
            $("div.share-items").css("z-index", -1);

            $(this).parent().parent().parent().parent().parent().find('.industry').each(function(){
                if (($(this).get(0).tagName == 'P')
                        && ($(this).attr('class') == 'industry'))
                {
                    $(this).css("margin-left", "125px");
                    $(this).css('z-index', -1);
                }
            });

            /*
            $(this).parent().parent().parent().parent().parent().find('.cross').each(function(){
                if (($(this).get(0).tagName == 'P')
                        && ($(this).attr('class') == 'cross'))
                {
                    $(this).css("margin-left", "125px");
                    $(this).css('z-index', -1);
                }
            });
            */

            $(this).next().show();
            $(this).next().css('height', "35px");
            $(this).next().css('bottom', "-35px");
            $(this).next().find("input.rec-send-box").toggle();
            $(this).next().find("input.rec-send-box").css({display:"none"});
            $(this).next().find("a.closeMe").toggle();
            $(this).next().find("a.closeMe").css({display:"none"});

            $(this).next().find(".rec-max").hide();
            $(this).next().find(".rec-min").show();
            $(this).next().find(".rec-max").css('z-index', 1000000);
            
            // recommends
            if ($.browser.msie && $.browser.version < 7)
            {
            	$('.industry').css("margin-left", "68px");
            }
        } else {
            $(this).next().find(".rec-min").show();
            $(this).next().css({height:"35px", bottom:"-35px"}).show();
            $(this).next().find(".rec-max").hide();
        }

        }, function(){
            var self = this;
            setTimeout(function(){
                                if (!$(self).next().hasClass("aaa")){
                                   $(self).next().hide();
                                };
                            }, 100);
    });

    $(".recommends").hover(function(){

        $(this).addClass("aaa");

        }, function(){

            if ($(this).children(".rec-max").css("display") == "block"){

                    //$(this).addClass("aaa");

                } else {

                    $(this).removeClass("aaa").hide();
            }

    });

    $(".rec-max a.closeMe").click(function(){ //.rec-max .rec-send-box,
        $(this).parents(".recommends").css({height:"35px", bottom:"-35px"}).hide();
        $(this).parents(".rec-max").hide();

        // wyczyszczenie wartości w formie okienka
        $(this).parent().find('textarea[name=comment]').val(recommendation_form_conf.textarea_comment);
        $(this).parent().find('input[name=author]').val(recommendation_form_conf.input_author);

        return false;
    });


    $("a.blue").click(function(){
        if ($.browser.msie && $.browser.version <= "7.0")
        {
            $(this).parent().parent().find("input.rec-send-box").show();
            $(this).parent().parent().find("a.closeMe").show();
        }
        var ajax_url = '/serwis/ajax/recommend';
        var params = {
                  check: 1,
                  idCompany: parseCompanyId($(this).parent().parent().find('input[name=companyId]').val()) || '',
                  idCategory: $(this).parent().parent().find('input[name=categoryId]').val() || ''
          };
        var ajax_url = '/serwis/ajax/recommend';

        var current_element = $(this);
        $.ajax({
            type: 'GET',
            url: ajax_url,
            data: params,
            dataType: 'json',
            beforeSend: function(){
            },
            success: function(data){
                if (data.messages){
                    var msgs = '';
                    for (key in data.messages)
                    {
                        if (key == "alreadyRecomended")
                        {
                            msgs += data.messages[key] + "\n";
                            current_element.parents().find(".recommends").hide();
                            alert(msgs);
                            return;
                        }
                    }
                }
                // wyświetl teraz reszte
                current_element.parents(".recommends").css({height:"101px", bottom:"-101px"});
                current_element.parent().hide();
                current_element.parent().next().show();
            },
            complete: function(){
            }
        });

        return false;
    });


    $("a.rec-link, a.recommend").click(function(){
        return false;
    });


    //
    //
    //

    $("textarea.rec-box, input.rec-signature").click(function(){
        if ($(this).val() == 'Napisz rekomendację...')
        {
            $(this).val('');
        }
    });

    $("textarea.rec-box inner, input.rec-signature").click(function(){
        if ($(this).val() == 'podpis...')
        {
            $(this).val('');
        }

    });

    // click submit one recommendation form result
    $(".rec-send-box[type=button]").click(function(e){
        e.preventDefault();
        var ajax_url = '/serwis/ajax/recommend';
        var params = {
        			content: $(this).parent().find('textarea[name=comment]').val() || '',
        			signature: $(this).parent().find('input[name=author]').val() || '',
                  idCompany: parseCompanyId($(this).parent().find('input[name=companyId]').val()) || '',
                  idCategory: $(this).parent().find('input[name=categoryId]').val() || ''
          };
        var ajax_url = '/serwis/ajax/recommend';

        var current_element = $(this);
        $.ajax({
            type: 'POST',
            url: ajax_url,
            data: params,
            dataType: 'json',
                beforeSend: function(req, s){
                    if(params.signature == recommendation_form_conf.input_author &&
                        params.content == recommendation_form_conf.textarea_comment)
                    {
                        params.content = '';
                        params.signature = '';
                        s.data = jQuery.param(params);
                    }
                },
                success: function(data)
                {
                    var msgs = '';
                    if(data)
                    {
                        if(data.result)
                        {
                            msgs = 'Twoja rekomendacja została dodana';
                        }
                        else
                        {
                            if(data.messages)
                            {
                                msgs = '';
                                for(key in data.messages)
                                {
                                    if(key != 0 && key != 1)
                                    {
                                        msgs += data.messages[key] + "\n";
                                    }
                                    else
                                    {
                                        for(key2 in data.messages[key])
                                        {
                                            msgs += data.messages[key][key2] + "\n";
                                        }
                                    }
                                }
                            }
                            else
                            {
                                // msgs = 'Twoja rekomendacja nie została dodana';
                            }
                        }
                    }
                    else
                    {
                        //msgs = 'Wystąpił wyjątek w modeule dodajrekomendacje';
                    }

                    if(msgs)
                    {
                        alert(msgs);
                    }

                    current_element.parent().find('textarea[name=comment]').val(recommendation_form_conf.textarea_comment);
                    current_element.parent().find('input[name=author]').val(recommendation_form_conf.input_author);
                    current_element.parents().find(".recommends").hide();

                    return false;
                },
                complete: function(){
                }
        });
    });

    //->
    // click submit on standalone recommendation form
    $('#rec-max-inner > form > input[class=rec-send]').click(function (e){
        e.preventDefault();

        // $(location).attr('href');
        var params = {
        		content: $('#rec-max-inner > form > textarea[name=comment]').val() || '',
        		signature: $('#rec-max-inner > form > input[name=author]').val() || '',
        idCompany: parseCompanyId($('#rec-send-company_id').val()) || '',
        idCategory: $('#rec-send-category_id').val() || ''
        };

        var ajax_url = '/serwis/ajax/recommend';
        var current_element = $(this);
        $.ajax({
            type: 'POST',
        url: ajax_url,
        data: params,
        dataType: 'json',
                beforeSend: function(req, s){
                    if(params.signature == recommendation_form_conf.input_author &&
                        params.content == recommendation_form_conf.textarea_comment)
                    {
                        params.content = '';
                        params.signature = '';
                        s.data = jQuery.param(params);
                    }
                },
                success: function(data)
                {
                    var msgs = '';
                    if(data){
                    	msgs = data.m;
                    }else{
                        msgs = 'Wystąpił wyjątek w modeule dodajrekomendacje';
                    }

                    if(msgs)
                    {
                        alert(msgs);
                    }

                    current_element.parent().find('textarea[name=comment]').val(recommenation_form_conf.textarea_comment);
                    current_element.parent().find('input[name=author]').val(recommendation_form_conf.input_author);

                    return false;
                },
                complete: function(){
                }
            });
            return true;
    });
});

