var EmailPop = {
    emailState: false,
    rLinkId: "",
    startBox_1: '<div class="pic_l"><div class="pic_r"><div class="pic_a"><div class="pic_b"><div class="pic_c"><div class="pic_d">',
    endBox_1:   '</div></div></div></div></div></div>',
    doEmail: function(link, position,url) {
         if(!arguments.length) {//if called with zero parameter, just close the popup.
            $('emailPop').remove();
            $('blanket').remove();
            if($('emailPop_iefix') && (navigator.appVersion.indexOf('MSIE')>0) && (navigator.userAgent.indexOf('Opera')<0)) $('emailPop_iefix').hide();
            EmailPop.emailState = false;
            return;
        }
        if($('emailPop')) {
            $('emailPop').remove();
            $('blanket').remove();
        }

        if(!EmailPop.emailState) {
            if(EmailPop.rLinkId == "") {
                EmailPop.rLinkId = link.id;
            }
            var div = document.createElement("div");
            div.innerHTML = '<div class="box_bug clearfix">' +
                            EmailPop.startBox_1 +
                            '<div id="popUpEmail" style="display: block; left: 218.5px;">' +
                                '<div style="width:350px;padding:10px;font-family:verdana;background:#6486C3 none repeat scroll 0 0">' +
                                    '<div class="text_pop" id="emailHeader">' +
                                        '<h5><b>Send link to your friend</b></h5><p class="color_r"/>' +
                                        '<form id="frmEmail" name="frmEmail">' +
                                            '<div class="feed">' +
                                                '<div class="space">' +
                                                    '<div class="label">Your Name :</div>' +
                                                    '<input id="name_email" class="size" type="text" size="30" name="name"/>' +
                                                    '<input class="size" type="hidden" size="30" value="'+url+'" name="url"/>' +
                                                '</div>' +
                                                '<div class="space">' +
                                                    '<div class="label">Your Email :</div>' +
                                                    '<input id="your_email_email" class="size" type="text" size="30" name="your_email"/>' +
                                                    '<p id="err_your_email_email" class="btn" style="display: none; color: red;"></p>' +
                                                '</div>' +
                                                '<div class="space">' +
                                                    '<div class="label">Email To:</div>' +
                                                    '<input id="email_to_email" class="size" type="text" size="30" name="email_to"/>' +
                                                    '<p id="err_email_to_email" class="btn" style="display: none; color: red;"></p>' +
                                                '</div>' +
                                                '<div class="space">' +
                                                    '<div class="label">Description :</div>' +
                                                    '<textarea id="description_email" cols="35" name="description" rows="5"></textarea>' +
                                                    '<p id="err_description_email" class="btn" style="display: none; color: red;"/>' +
                                                '</div>' +
                                                '<div class="space btn">' +
                                                    '<input type="image" src="/images/base/submit.png" onclick="EmailPop.submitEmail(); return false;"/>&nbsp;' +
                                                    '<img src="/images/base/reset.png?1223985967" onclick="EmailPop.doEmail();" style="cursor: pointer;" alt="Reset"/>' +
                                                    '<div class="highligh_required" id="statusEmail" style="line-height: 15px">Status: Ready</div>'
                                                '</div>' +
                                            '</div>' +
                                        '</form>' +
                                    '</div>' +
                                '</div>' +
                            '</div>' +
                            EmailPop.endBox_1 +
                            '</div>';
            
            div.setAttribute("id", "emailPop");
            div.style.position = "absolute";
            div.style.display = "none";
            div.style.zIndex = "2";
            EmailPop.emailState = true;
            document.getElementsByTagName("body").item(0).appendChild(div);
            CPopup.setPosition('emailPop', link, position);
            WScript.fixIEOverlapping($('emailPop'));
            var div_blank = document.createElement("div");
            div_blank.id = "blanket";
            document.getElementsByTagName("body").item(0).appendChild(div_blank);
            blanket_size($('emailPop'));
            $('emailPop').show();
        }
        else {
            EmailPop.emailState = false;
            if(EmailPop.rLinkId != link.id) {
                EmailPop.doEmail(link, position, userID);
                EmailPop.rLinkId = link.id;
            }
        }
    },
    setCenter: function(element) {
        if(element) {
            element.style.left = ((pageDimension()[0]-element.getDimensions().width)/2) + "px";
            var top = (browserDimension()[1]-parseInt(element.getDimensions().height))/2;
            element.style.top = scrollY() + (top < 0 ? 0 : top) + "px";
        }
    },
    submitEmail: function() {
        var submit = true;
        if(CValidation.isValidEMail($('your_email_email'), false)) {
            $('err_your_email_email').hide();
        }
        else if($('your_email_email').value == ""){
            $('err_your_email_email').show();
            $('err_your_email_email').update("Your Email cannot be empty.");
            submit = false;
        }
        else {
            $('err_your_email_email').show();
            $('err_your_email_email').update("Your Email is invalid.");
            submit = false;
        }
        if(CValidation.isValidEMail($('email_to_email'), false)) {
            $('err_email_to_email').hide();
        }
        else if($('email_to_email').value == ""){
            $('err_email_to_email').show();
            $('err_email_to_email').update("Email To cannot be empty.");
            submit = false;
        }
        else {
            $('err_email_to_email').show();
            $('err_email_to_email').update("Email To is invalid.");
            submit = false;
        }
        if($('description_email').value == "") {
            $('err_description_email').update('Please, enter some text...');
            $('err_description_email').show();
            submit = false;
        }
        else {
            $('err_description_email').hide();
        }
        var index = $('description_email').value.search(/&|\"|>|</);
        if(index != -1) {
            $('err_description_email').update("Illegal character '" + $('description_email').value.substring(index, index+1) + "' at the character " + index);
            $('err_description_email').show();
            submit = false;
        }
        
        if(submit) {
            var params = Form.serialize("frmEmail");
            Form.disable("frmEmail");
            $('statusEmail').update("Status: Sending...");
            new Ajax.Request("/cambodia/email_friend", 
                {
                    method: 'post',
                    parameters: params,
                    onSuccess: handleEmailResponse,
                    on404: serverNotFound,
                    onFailure: serverError,
                    on301: serverError
                });
        }
    }
}   

function handleEmailResponse(request) {
   var reply = eval ( "(" + request.responseText + ")" );
   Form.enable("frmEmail");
   if(!reply.success) {
       $('statusEmail').update("Error: An undefined error occurred.");
   }
   else {
       $('statusEmail').update(reply.message);
       setTimeout('EmailPop.doEmail();', 1900);
   }
}