/* doporucte wrapper */
/* @using dialog from jquery UI, effects */

$(document).ready(function(){
    $('img.tisk').tooltip({
        tooltipClass: "ui-widget-header tooltipWidgetFix",
        position: { my: "right top", at: "right bottom", offset: "0 0" }
    });
    
    $('.amazonList>u').tooltip({
        tooltipClass: "ui-widget-header tooltipWidgetFix2",
        position: { my: "center top", at: "right bottom", offset: "0 0" }
    });
    
    $('button.smallButton').tooltip({
        tooltipClass: "ui-widget-header tooltipWidgetFix3",
        position: { my: "left top", at: "right top", offset: "15 0" }
    });
    
    
      
    $('img#tiskniStranku').click(function(){
        window.print();
    });
    
    var phase = 0;
    
    var messageContent = 'Zdravím,<br /><br />\
                          zaujala mě stránka na webu EDU agency:<br />'
                          + location.href + '<br /><br />';

    var messageFoot = '<br /><br />Email byl odeslán z webu EDU agency:<br />'
                        + 'http://www.edu-agency.cz';                          
    
    var htmlContent = '<table id="tab1"><tr><td><label for="myEmail">Váš email</label></td>\
                        <td><input type="hidden" value="' + location.href + '" id="address" /><input type="text" value="" name="myEmail" id="myEmail" style="width: 250px" /><span id="error1" style="color: red"></span></td></tr>\
                        <tr><td><label for="hisEmail">Email adresáta</label></td>\
                        <td><input type="text" value="" name="hisEmail" id="hisEmail" style="width: 250px" /><span id="error2" style="color: red"></span></td></tr>\
                        <tr><td><label for="message">Volitelný vzkaz</label></td>\
                        <td><textarea name="message" id="message" cols="30" rows="8" /></textarea></tr>\
                       </table>\
                       <table id="tab2" style="display:none">\
                       <tr><td>Od:</td><td><span id="myEmailPrev"></span></td></tr>\
                       <tr><td>Pro:</td><td><span id="hisEmailPrev"></span></td></tr>\
                       <tr><td>Předmět:</td><td><strong>Doporučení stránky z webu EDU agency</strong></td></tr>\
                       <tr><td colspan="2"><br/></td></tr>\
                       <tr><td>Zpráva:</td><td style="border: 1px dashed black; padding: 4px;"><span id="messagePrev"></span></td></tr>\
                       </table>\
                       <table id="tab3" style="display:none">\
                       <tr><td style="height: 200px; vertical-align: middle; text-align: center">\
                       <strong id="posErr">Zpráva byla v pořádku odeslána. Děkujeme za doporučení!</strong>\
                       </td></tr>\
                       </table>';

    $('img#doporucteNas').click(function(){
        if(phase > 0) return;
        $('img.tisk').tooltip("close");
        $('img.tisk').tooltip("disable");
        var pos = $(this).offset();
        phase=1;
        $('#dialog').dialog({
			autoOpen: false,
			show: "drop",
			hide: "explode",
			position: [pos.left-400, pos.top+35],
			width: 400,
			height: 340,
			title: "Doporučte tuto stránku známému",
			resizable: false,
			buttons: {
                "Náhled zprávy před odesláním" : function() {                                    
                    validateAndPreview();
                }
            },
			close: function() {
                phase = 0;
                $('img.tisk').tooltip("enable"); 
            }
		});
        $('#dialog').html(htmlContent); 
        $('#dialog').dialog("open");   
    });
    
    function validateAndPreview() {
        /* check for errors */
        var myEmail = $('input#myEmail').val();
        var hisEmail = $('input#hisEmail').val();
        var msg = $('textarea#message').val();
        
        
        if(myEmail == "") {
            $('span#error1').html('<br />Musíte vyplnit svoji emailovou adresu!<br />Adresát ji uvidí ve zprávě v poli "od".');
            return;            
        } else if(!validateEmail(myEmail)) {
            $('span#error1').html('<br />Toto není platná emailová adresa!');
            return;            
        } else {
            $('span#error1').html('');
            $('span#myEmailPrev').html(myEmail);
        }
        
        if(hisEmail == "") {
            $('span#error2').html('<br />Musíte vyplnit emailovou adresu příjemce!');
            return;            
        } else if(!validateEmail(hisEmail)) {
            $('span#error2').html('<br />Toto není platná emailová adresa!');
            return;            
        } else {
            $('span#error2').html('');
            $('span#hisEmailPrev').html(hisEmail);
        } 
        
        $('span#messagePrev').html(messageContent + msg + messageFoot);
        
        /* only if success */
        $('#dialog table#tab1').hide();
        $('#dialog table#tab2').show();        
        $('#dialog').dialog("option", "buttons", {
            "Odeslat zprávu" : function() {
                sendAndConfirm();
            }
        });
    }
    
    function sendAndConfirm() {
        /* go ajax and communicate sendmail */
        var myEmail = $('input#myEmail').val();
        var hisEmail = $('input#hisEmail').val();
        var msg = $('textarea#message').val();
        var url = $('input#address').val();
        
        $.post(PATH + "?ajax=web_p-postRecommend", 
            {email_from: myEmail, email_to: hisEmail, message: msg, url: url}, function(data) {
                dat = jQuery.parseJSON(data);
                if(dat['succ'] == 0) {
                    $('#posErr').html('Chyba při odesílání emailu! Zkuste to znovu...');        
                }
                $('#dialog table#tab2').hide();
                $('#dialog table#tab3').show();
                $('#dialog').dialog("option", "buttons", {
                    "Zavřít" : function() {
                        $(this).dialog("close");     
                    }
                });             
        });
    }
    
    function validateEmail(elementValue){  
       var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;  
       return emailPattern.test(elementValue);  
    }
    
});                                           
