/* Zendbox */

// IE6+SSL fix courtesy of http://www.tribalogic.net/
// Object create Inspirativ.com for Spudaroo.com
var Zenbox = function(options) {
    this.options = options;
    this.buffer = null;
}
Zenbox.prototype.render = function() {
    if (!this.is_loaded) {
        // set Zenbox.is_loaded so we don't load the html twice
        // this.is_loaded = true;
        // Load zendesk iframe
        i_url = "//" + this.client_url + "/external/zenbox/index?x=5"
  
        if (this.options.tag) {
            i_url += "&set_tags=" + escape(this.options.tag);
        }
      
        if (this.options.email) {
            i_url += "&set_email=" + escape(this.options.email);
        }
        if (this.options.subject) {
            i_url += "&set_subject=" + escape(this.options.subject);
        }
        //if (this.options.with_captcha) { i_url += "&with_captcha=" + escape(this.options.with_captcha); }
      
        if (this.options.subject_header) {
            i_url += "&subject=" + escape(this.options.subject_header);
        }
        if (this.options.email_header) {
            i_url += "&email=" + escape(this.options.email_header);
        }
  
        if (window.location) {
            i_url += "&page=" + escape(window.location.href);
        }
  
        document.getElementById('zenbox_overlay').innerHTML = '<div id="zenbox_main">' +
        '<div id="overlay_header">' +
        '<span onclick="document.getElementById(\'zenbox_overlay\').style.display = \'none\';return false">close</span>' +
        '</div>' +
        '<div id="overlay_preamble"><h2 id="overlay_zenbox_title">' + this.options.title + '</h2>' +
        '<p id="overlay_zenbox_text">' + this.options.text + '</p>' +
        '</div>' +
        '<div id="overlay_loading">' +
        '<center><h2><img src="//assets0.zendesk.com/images/medium_load.gif"/> Loading...</h2></center><br>&nbsp;' +
        '</div>' +
        '<iframe src="' + i_url + '" id="zenbox_iframe" frameborder="0" scrolling="no" allowTransparency="true"></iframe>' +
        '</div>' +
        '<div id="zenbox_screen" onclick="document.getElementById(\'zenbox_overlay\').style.display = \'none\';return false" ></div>';
        if (document.getElementById('zenbox_iframe').attachEvent) { // IE
            //detachEvent("onload", Zenbox.done);
            document.getElementById('zenbox_iframe').attachEvent("onload", this.done);
        } else if (document.getElementById('zenbox_iframe').addEventListener) { // Mozilla
            document.getElementById('zenbox_iframe').addEventListener("load", this.done, false);
        }
        // Set position of zenbox
        document.getElementById('zenbox_screen').style.height = document.documentElement.scrollHeight + "px";
        //this.y_top = document.documentElement.scrollTop || document.body.scrollTop;
        this.client_height = window.innerHeight || document.documentElement.clientHeight;
        //document.getElementById('zenbox_main').style.top = this.y_top + (0.15*this.client_height) + "px";
        document.getElementById('zenbox_main').style.top = (0.15*this.client_height) + "px";
    }
    document.getElementById('zenbox_overlay').style.display = "block";
}
Zenbox.prototype.done = function() {
    document.getElementById('overlay_loading').style.display = "none";
    document.getElementById('zenbox_iframe').style.display = "block";
}
Zenbox.prototype.capture = function() {
    //this.prot = ("https:" == document.location.protocol) ? 'https:' : 'http'
    this.client_url = this.options.url; 
    
    document.write('<div id="zenbox_overlay" style="display:none">&nbsp;</div>');
    document.write('<div id="'+this.options.object+'" style="display:none">&nbsp;</div>');

    if (!this.options.hide_tab) {
        document.write("<style type=\"text/css\">a#zenbox_tab {background-color:" + this.options.tab_color + ";border-color:" + this.options.tab_color + ";}</style>" +
            '<a href="#" id="zenbox_tab" onclick="'+this.options.object+'.render(); return false;">Support</a>');
    
        var arVersion = navigator.appVersion.split("MSIE")
        var version = parseFloat(arVersion[1])
        tab_src = "//assets0.zendesk.com/external/zenbox/images/tab_" + this.options.tab_id + ".png"
        if ((version >= 5.5) && (version < 7) && (document.body.filters)) {
            document.getElementById('zenbox_tab').style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + tab_src + "', sizingMethod='crop')";
        } else {
            document.getElementById('zenbox_tab').style.backgroundImage = 'url(' + tab_src + ')';
        }
    }
}
/* Auth */
    function openForgotbox() {
        if ($('#forgotpass').css('display') == 'none')
            $('#forgotpass').css('display','block');
        else 
            $('#forgotpass').css('display','none');
        return false;
    }
    function closeForgotbox() {
        $('#forgotpass').css('display','none');
        return false;    
    }
    /**
     * Sign In
     */         
    $(function() {
        function signin() {
            var check = true;
            var val = $('#signinform input[name=email]').val();
            var reg = new RegExp('[a-zA-Z0-9._-]+@[a-zA-Z0-9_-]+[\.][a-zA-Z0-9._-]+$');
            if (! reg.test(val)) {
                showIndicator('email_ind', false);
                check = false;
            }
            var val  = $('#signinform input[name=pass]').val();
            if (val == '') {
                showIndicator('pass_ind', false);
                check = false;
            }
            if (check == true) {
                $('#signinform').get(0).submit();
            }
        }
        $('#signinform input[name=email]').blur(function() {
            var val = $(this).val();
            var reg = new RegExp('[a-zA-Z0-9._-]+@[a-zA-Z0-9_-]+[\.][a-zA-Z0-9._-]+$');
            if (! reg.test(val)) {
                showIndicator('email_ind', false);
            }
            else {
               showIndicator('email_ind', true);
            }
        });
        $('#signinform input[name=pass]').blur(function() {
            var val  = $(this).val();
            if (val == '') {
                showIndicator('pass_ind', false);
            }
            else {
               showIndicator('pass_ind', true);
            }
        });
        $("#signinform input[name=email]").keypress(function (e) {
            if (e.which == 13) {
                signin();
                return false;
            }
        });
        $("#signinform input[name=pass]").keypress(function (e) {
            if (e.which == 13) {
                signin();
                return false;
            }
        });
        $('#signinform_submit').click( function() {
            signin();
            return false;            
        });   
        $('#rpxform input[name=rpx_email]').blur(function() {
            var val = $(this).val();
            var reg = new RegExp('[a-zA-Z0-9._-]+@[a-zA-Z0-9_-]+[\.][a-zA-Z0-9._-]+$');
            if (! reg.test(val)) {
                showIndicator('rpx_email_ind', false);
            }
            else {
               showIndicator('rpx_email_ind', true);
            }
        });
        $('#rpxform input[name=rpx_name]').blur(function() {
            var val  = $(this).val();
            if (val == '') {
                showIndicator('rpx_name_ind', false);
            }
            else {
               showIndicator('rpx_name_ind', true);
            }
        });        
        $('#rpxform input[name=rpx_fullname]').blur(function() {
            var val  = $(this).val();
            if (val == '') {
                showIndicator('rpx_fullname_ind', false);
            }
            else {
               showIndicator('rpx_fullname_ind', true);
            }
        });
    });
    /**
     * Forgot password
     */         
    $(function() {
        $('#forgotform input[name=forgotemail]').blur(function() {
            var val = $(this).val();
            var reg = new RegExp('[a-zA-Z0-9._-]+@[a-zA-Z0-9_-]+[\.][a-zA-Z0-9._-]+$');
            if (! reg.test(val)) {
                showIndicator('forgotemail_ind', false);
            }
            else {
               showIndicator('forgotemail_ind', true);
            }
        });  
        $('#forgotform_submit').click( function() {
            var check = true;
            var val = $('#forgotform input[name=forgotemail]').val();
            var reg = new RegExp('[a-zA-Z0-9._-]+@[a-zA-Z0-9_-]+[\.][a-zA-Z0-9._-]+$');
            if (! reg.test(val)) {
                showIndicator('forgotemail_ind', false);
                check = false;
            }
            if (check == true) {
                $('#forgotform').get(0).submit();
            }
            return false;            
        });         
    }); 
    /*
     * Registration  
     */
    $(function() {
        $('#registerform input[name=name]').blur(function() {
            var val = $(this).val();
            if (val == '') {
                showIndicator('name_ind', false);
            }
            else {
               showIndicator('name_ind', true);
            }
        });
        $('#registerform input[name=email]').blur(function() {
            var val = $(this).val();
            var reg = new RegExp('[a-zA-Z0-9._-]+@[a-zA-Z0-9_-]+[\.][a-zA-Z0-9._-]+$');
            if (! reg.test(val)) {
                showIndicator('email_ind', false);
            }
            else {
               showIndicator('email_ind', true);
            }
        }); 
        $('#registerform input[name=pass]').blur(function() {
            var val  = $(this).val();
            if (val == '') {
                showIndicator('pass_ind', false);
            }
            else {
               showIndicator('pass_ind', true);
            }
        });          
        $('#registerform input[name=rpass]').blur(function() {
            var val  = $(this).val();
            var val2 = $('#registerform input[name=pass]').val();
            if (val == '' || val != val2) {
                showIndicator('rpass_ind', false);
            }
            else {
               showIndicator('rpass_ind', true);
            }
        });
        $('#registerform input[name=fullname]').blur(function() {
            var val = $(this).val();
            if (val == '') {
                showIndicator('fullname_ind', false);
            }
            else {
               showIndicator('fullname_ind', true);
            }
        });
        $('#registerform_submit').click( function() {
            var check = true;
                var val = $('#registerform input[name=name]').val();
                if (val == '') {
                    showIndicator('name_ind', false);
                    check = false;
                }
                var val = $('#registerform input[name=email]').val();
                var reg = new RegExp('[a-zA-Z0-9._-]+@[a-zA-Z0-9_-]+[\.][a-zA-Z0-9._-]+$');
                if (! reg.test(val)) {
                    showIndicator('email_ind', false);
                    check = false;
                }
                var val = $('#registerform input[name=fullname]').val();
                if (val == '') {
                    showIndicator('fullname_ind', false);
                    check = false;
                }
                var val  = $('#registerform input[name=pass]').val();
                if (val == '') {
                    showIndicator('pass_ind', false);
                    check = false;
                }
                var val  = $('#registerform input[name=rpass]').val();
                var val2 = $('#registerform input[name=pass]').val();
                if (val == '' || val != val2) {
                    showIndicator('rpass_ind', false);
                    check = false;
                }
                if (check == true) {
                    $('#registerform').get(0).submit();
                }
            return false;            
        });                      
    });   
    
    $(document).ready(function() {
    	$('.contest_step .short').focus(function(){
    		$(this).parent().next().children('.help').show();
    	});
    	$('.contest_step .short').blur(function(){
    	   $(this).parent().next().children('.help').fadeOut('slow');
    	});
    	$('.contest_step .text').focus(function(){
    		$(this).parent().next().children('.help').show();
    	});
    	$('.contest_step .text').blur(function(){
    	   $(this).parent().next().children('.help').fadeOut('slow');
    	});    	
    	
    	$('#show-upgrades').toggle(
            function() {
                $(this).html('&minus;');
                $('.upgrades-none').show();
            },
            function() {
                $(this).html('+');
                $('.upgrades-none').hide();
            }
        );
    });

  
    function showIndicator(id, res) {
        if (res == true) {
            $('#'+id).html('<img src="/images/correct.gif">');
        }
        else {
            $('#'+id).html('<img src="/images/incorrect.gif">');
        }
    }
  
    function displayGoodPrice() {
        $('#good_prize_box').toggle();
        return false;
    }
    function displayPrivacyBox() {
        $('#privacy_box').toggle();
        return false;
    }
    function displayPrivateContestBox() {
        $('#private_contest_box').toggle();
        return false;
    }
    function displayAcceptableBox() {
        $('#acceptable').toggle();
        return false;
    }   
    function displayPrivacyMessage() {
        $('#private_message').toggle();
        if ($('#private_message').css('display') == 'block') {
            $('#enter_contest_button').css('display','none');
        }  
        else {
            $('#enter_contest_button').css('display','block');
        }      
        return false;
    }
    function sorting() {
        var sortby = $("#sortby").get(0).options[$("#sortby").get(0).selectedIndex].value;
        document.location.href='/contest/sortby/'+sortby+'/';
    }
    function sortingEntries() {
        var sortby = $("#sortby").get(0).options[$("#sortby").get(0).selectedIndex].value;
        document.location.href='/contest/entry/sortby/'+sortby+'/';
    }   
    function displayBox(id) {
        $('#'+id).toggle();
        return false;
    } 
    function displayTab(id) {
        // Open box
        $('.tab_box').css('display','none');
        $('#tab_box'+id).css('display','block');
        // Remove select class 
        $('#tabs .sel').removeClass();
        $('#tabs .sep_sel_1').removeClass().addClass('sep');
        $('#tabs .sep_sel_2').removeClass().addClass('sep');
        $('#tabs .l_sel').removeClass().addClass('l_cor');;
        $('#tabs .r_sel').removeClass().addClass('r_cor');;        
        
        $('#tab'+id).addClass('sel');
        var size = $('#tabs td').size();
        // Last tab
        if ($('#tabs td').eq(size - 2).attr('id') == 'tab'+id) {
            $('#tabs .r_cor').removeClass().addClass('r_sel');
            $('#tabs td').eq(size - 3).removeClass().addClass('sep_sel_1');           
        } 
        // First tab
        else if ($('#tabs td').eq(1).attr('id') == 'tab'+id) {
            $('#tabs .l_cor').removeClass().addClass('l_sel');
            $('#tabs td').eq(2).removeClass().addClass('sep_sel_2');                
        }
        else {
            $('#tab'+id).prev('td').removeClass().addClass('sep_sel_1');      
            $('#tab'+id).next('td').removeClass().addClass('sep_sel_2');
        } 
        //$('#tab_select').val(id);
        return false;
    }
/* PNGFix */
(function($){jQuery.fn.pngFix=function(settings){settings=jQuery.extend({blankgif:'blank.gif'},settings);var ie55=(navigator.appName=="Microsoft Internet Explorer"&&parseInt(navigator.appVersion)==4&&navigator.appVersion.indexOf("MSIE 5.5")!=-1);var ie6=(navigator.appName=="Microsoft Internet Explorer"&&parseInt(navigator.appVersion)==4&&navigator.appVersion.indexOf("MSIE 6.0")!=-1);if(jQuery.browser.msie&&(ie55||ie6)){jQuery(this).find("img[@src$=.png]").each(function(){jQuery(this).attr('width',jQuery(this).width());jQuery(this).attr('height',jQuery(this).height());var prevStyle='';var strNewHTML='';var imgId=(jQuery(this).attr('id'))?'id="'+jQuery(this).attr('id')+'" ':'';var imgClass=(jQuery(this).attr('class'))?'class="'+jQuery(this).attr('class')+'" ':'';var imgTitle=(jQuery(this).attr('title'))?'title="'+jQuery(this).attr('title')+'" ':'';var imgAlt=(jQuery(this).attr('alt'))?'alt="'+jQuery(this).attr('alt')+'" ':'';var imgAlign=(jQuery(this).attr('align'))?'float:'+jQuery(this).attr('align')+';':'';var imgHand=(jQuery(this).parent().attr('href'))?'cursor:hand;':'';if(this.style.border){prevStyle+='border:'+this.style.border+';';this.style.border=''}if(this.style.padding){prevStyle+='padding:'+this.style.padding+';';this.style.padding=''}if(this.style.margin){prevStyle+='margin:'+this.style.margin+';';this.style.margin=''}var imgStyle=(this.style.cssText);strNewHTML+='<span '+imgId+imgClass+imgTitle+imgAlt;strNewHTML+='style="position:relative;white-space:pre-line;display:inline-block;background:transparent;'+imgAlign+imgHand;strNewHTML+='width:'+jQuery(this).width()+'px;'+'height:'+jQuery(this).height()+'px;';strNewHTML+='filter:progid:DXImageTransform.Microsoft.AlphaImageLoader'+'(src=\''+jQuery(this).attr('src')+'\', sizingMethod=\'scale\');';strNewHTML+=imgStyle+'"></span>';if(prevStyle!=''){strNewHTML='<span style="position:relative;display:inline-block;'+prevStyle+imgHand+'width:'+jQuery(this).width()+'px;'+'height:'+jQuery(this).height()+'px;'+'">'+strNewHTML+'</span>'}jQuery(this).hide();jQuery(this).after(strNewHTML)});jQuery(this).find("*").each(function(){var bgIMG=jQuery(this).css('background-image');if(bgIMG.indexOf(".png")!=-1){var iebg=bgIMG.split('url("')[1].split('")')[0];jQuery(this).css('background-image','none');jQuery(this).get(0).runtimeStyle.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+iebg+"',sizingMethod='scale')"}});jQuery(this).find("input[@src$=.png]").each(function(){var bgIMG=jQuery(this).attr('src');jQuery(this).get(0).runtimeStyle.filter='progid:DXImageTransform.Microsoft.AlphaImageLoader'+'(src=\''+bgIMG+'\', sizingMethod=\'scale\');';jQuery(this).attr('src',settings.blankgif)})}return jQuery}})(jQuery);    
/* Trancate */   
(function($){$.fn.jTruncate=function(h){var i={length:300,minTrail:20,moreText:"more",lessText:"less",ellipsisText:"...",moreAni:"",lessAni:""};var h=$.extend(i,h);return this.each(function(){obj=$(this);var a=obj.html();if(a.length>h.length+h.minTrail){var b=a.indexOf(' ',h.length);if(b!=-1){var b=a.indexOf(' ',h.length);var c=a.substring(0,b);var d=a.substring(b,a.length-1);obj.html(c+'<span class="truncate_ellipsis">'+h.ellipsisText+'</span>'+'<span class="truncate_more">'+d+'</span>');obj.find('.truncate_more').css("display","none");obj.append(' '+'<a href="#" class="truncate_more_link">'+h.moreText+'</a>'+'');var e=$('.truncate_more_link',obj);var f=$('.truncate_more',obj);var g=$('.truncate_ellipsis',obj);e.click(function(){if(e.text()==h.moreText){f.show(h.moreAni);e.text(h.lessText);g.css("display","none")}else{f.hide(h.lessAni);e.text(h.moreText);g.css("display","inline")}return false})}}})}})(jQuery);