function highlight(field) {
        field.focus();
        field.select();
}

var recorder_saved_html = '';
var media_type;

function disableme (what) {
    what = document.getElementById(what);
    what.disabled = true;
    what.value="uploading...";
}


function showoptions(what) {
  var disableswf= ($('#c').val() == '') ? false : true;
  var ext = what.value.substr(what.value.length - 3,3).toLowerCase();
  media_type = '';
  switch (ext) {
      case 'ico':
      case 'jpg':
      case 'peg':
      case 'png':
      case 'gif':
      case 'bmp':
      case 'tif':
      case 'iff': media_type = 'image';
      case 'flv': 
      case 'mp4':
      case 'wmv':
      case '3gp':
      case 'avi':
      case 'mov':
      case 'mkv': media_type = (media_type != 'image') ? 'video' : 'image';
            var o = document.getElementById('upload-options-resizing');
            if(media_type=='video') {if(!get('toggle1').checked) get('upform').action =  'videoupload.php';  hide('resizeoptions'); o.style.color='#BBBBBB'; }
            else o.style.color='#003399';
            hide('filetypeerror');
            document.getElementById('butan').disabled=false;
            break;
      case 'swf':
            if (disableswf) {
               document.getElementById('butan').disabled=true;
               show('filetypeerror');
            } else {
              //hide('resizeoptions');
              hide('filetypeerror');
              document.getElementById('butan').disabled=false;
            }
            break;
      case 'pdf':
            hide('resizeoptions');
            hide('filetypeerror');
            document.getElementById('butan').disabled=false;
            break;
      case '':
            document.getElementById('butan').disabled=true;
      default:
            hide('resizeoptions');
            show('filetypeerror');
            document.getElementById('butan').disabled=true;
            break;
  }
}

//
var cur_toggle = 0;

function showUploader(mode) {
  if( mode ) {
    $('#fsUploadProgress, #uploadbox_header, #uploadbox_footer, #btnCancel').show();
  } else {
    $('#fsUploadProgress, #uploadbox_header, #uploadbox_footer, #btnCancel').hide();
  }  
}

function toggleuploadmode(mode) 
{
    document.getElementById('butan').value = 'host it!';
    document.getElementById('butan').disabled = false;
    document.getElementById('toggle'+mode).checked = true;
    
    cur_toggle = mode;

    switch (mode)
    {
        case 0:   // No flash player
            hide('upurl');
            hide('upvideo');
            hide('swfbutan');
            hide('recorder');
            hide('snapshot');
            $('#SWFUpload_0').width(0).height(0);
            showUploader(false);
            show('regtags');
            show('butan_wrap');
            get('upform').action = $('#actionman').val();
            show('butan');
            show('filetypeallowed');
            show('upfile', 'block');
            break;
        case 1:   // url
            hide('upfile');
            hide('upvideo');
            $('#SWFUpload_0').width(0).height(0);
            showUploader(false);
            show('upurl', 'block');
            //show('resizeoptions');
            show('regtags');
            show('butan_wrap');
            show('butan');
            hide('swfbutan');
            get('upform').action="http://post.imageshack.us/transload.php";
            hide('recorder');
            show('filetypeallowed');
            hide('snapshot');
            get('transurl').disabled = false;
            if (get('snapurl'))
                get('snapurl').disabled = true;
            break;
        case 2:
            hide('upfile');
            hide('upurl');
            $('#SWFUpload_0').width(0).height(0);
            showUploader(false);
            show('upvideo', 'block');
            hide('regtags');
            hide('butan');
            hide('butan_wrap');
            hide('swfbutan');
            hide('recorder');
            show('filetypeallowed');
            hide('snapshot');
            break;
        case 3:   // images / videos
            hide('upfile');
            hide('upurl');
            hide('upvideo');
            if( total_filesize > 0 ) { 
              showUploader(true);
            }
		        $('#fsUploadProgress').show();
            $('#SWFUpload_0').height('').width('');
            show('regtags');
            hide('butan');
            hide('butan_wrap');
            show('swfbutan');
            hide('recorder');
            show('filetypeallowed');
            hide('snapshot');
            break;
        case 4:
            hide('upfile', 'block');
            hide('upurl');
            hide('upvideo');
            showUploader(false);
            hide('regtags');
            hide('butan_wrap');
            get('upform').action=$('#actionman').val();
            hide('butan');
            hide('swfbutan');
            show('recorder');
            hide('filetypeallowed');
            hide('snapshot');
            break;
        case 5:
            hide('upfile');
            hide('upurl');
            hide('upvideo');
            showUploader(false);
            hide('regtags');
            show('butan_wrap');
            show('butan');
            hide('swfbutan');
            hide('recorder');
            hide('filetypeallowed');
            show('snapshot');
            get('transurl').disabled = true;
            get('snapurl').disabled = false;
            document.getElementById('upform').action='http://imageshack.us/snapshot.php';
            break;
         case 6:
            showUploader(false);
            $("#webcam_dialog").dialog('open');
            if(navigator.userAgent.indexOf('Mac') > 0) {
              var pos_l = parseInt($("#webcam_dialog").parent().css('left'));
              if (pos_l > 150) {
                $("#webcam_dialog").parent().css('left',(pos_l-150)+'px');
              }
            }
            recorder_saved_html = $("#webcam_dialog").html();
            record_init();
            break;
    }
}
function toggleuploadmode2(file) {
    if (file) {
        show('upfile');
        hide('upzip');
        document.getElementById('upform').action='http://imageshack.us/index.php';
    } else {
        hide('upfile');
        show('upzip');
        document.getElementById('upform').action='http://imageshack.us/ie.php';
    }
}

function focusfield(fl) {
    if (fl.value=="Paste image url here") {
        fl.value='';
        fl.style.color='black';
    }
}


function checkemail()
{ 
    // Clear example text
    var ex_obj = document.getElementById('email-optional');
    if (ex_obj) focusoption(ex_obj);
    ex_obj = document.getElementById('tags');
    if (ex_obj) focusoption(ex_obj);
    ex_url = document.getElementById('transurl');
    if (ex_url) focusoption(ex_url);

    if (get('toggle5') && get('toggle5').checked)
    {
        var u = get('snapurl').value;
        if (u == '' || u == 'paste website url here')
        {
            alert('Please enter website address');
            return false;
        }
        disableme('butan');
        return true;
    }
    var e_obj = document.getElementById('email-optional');
    if (!e_obj)
    {
        disableme('butan');
        return true;
    }
    var email = e_obj.value;
    if (email.length == 0)
    {
        disableme('butan'); 
        return true;
    }
    var filter  = /^[^@]+@(([a-zA-Z0-9\-])+\.)+([a-zA-Z]{2,4})+$/;
    var ret = filter.test(email);
    if (!ret)
    {
        alert('Please enter valid email address');
        return false;
    }
    disableme('butan'); 
    return true;
}

function opentags()
{
    show('addtags');
    //show('addtagsdesc');
    hide('autoreg');
    //hide('autoregdesc');
}

function openemail()
{
    show('autoreg');
    //show('autoregdesc');
    hide('addtags');
    //hide('addtagsdesc');
}

function show(id, type)
{
    var o = document.getElementById(id);
    if (o)
        o.style.display = type || '';
}

function show(id)
{
    var o = document.getElementById(id);
    if (o)
        o.style.display = '';
}

function hide(id)
{
    var o = document.getElementById(id);
    if (o)
        o.style.display = 'none';
}


var BrowserDetect={init:function(){this.browser=this.searchString(this.dataBrowser)||"An unknown browser";this.version=this.searchVersion(navigator.userAgent)||this.searchVersion(navigator.appVersion)||"an unknown version";this.OS=this.searchString(this.dataOS)||"an unknown OS";},searchString:function(data){for(var i=0;i<data.length;i++){var dataString=data[i].string;var dataProp=data[i].prop;this.versionSearchString=data[i].versionSearch||data[i].identity;if(dataString){if(dataString.indexOf(data[i].subString)!=-1)
    return data[i].identity;}
    else if(dataProp)
        return data[i].identity;}},searchVersion:function(dataString){var index=dataString.indexOf(this.versionSearchString);if(index==-1)return;return parseFloat(dataString.substring(index+this.versionSearchString.length+1));},dataBrowser:[{string:navigator.userAgent,subString:"Chrome",identity:"Chrome"},{string:navigator.userAgent,subString:"OmniWeb",versionSearch:"OmniWeb/",identity:"OmniWeb"},{string:navigator.vendor,subString:"Apple",identity:"Safari",versionSearch:"Version"},{prop:window.opera,identity:"Opera"},{string:navigator.vendor,subString:"iCab",identity:"iCab"},{string:navigator.vendor,subString:"KDE",identity:"Konqueror"},{string:navigator.userAgent,subString:"Firefox",identity:"Firefox"},{string:navigator.vendor,subString:"Camino",identity:"Camino"},{string:navigator.userAgent,subString:"Netscape",identity:"Netscape"},{string:navigator.userAgent,subString:"MSIE",identity:"Explorer",versionSearch:"MSIE"},{string:navigator.userAgent,subString:"Gecko",identity:"Mozilla",versionSearch:"rv"},{string:navigator.userAgent,subString:"Mozilla",identity:"Netscape",versionSearch:"Mozilla"}],dataOS:[{string:navigator.platform,subString:"Win",identity:"Windows"},{string:navigator.platform,subString:"Mac",identity:"Mac"},{string:navigator.userAgent,subString:"iPhone",identity:"iPhone/iPod"},{string:navigator.platform,subString:"Linux",identity:"Linux"}]};BrowserDetect.init();

var FlashDetect=new function(){var self=this;self.installed=false;self.raw="";self.major=-1;self.minor=-1;self.revision=-1;self.revisionStr="";var activeXDetectRules=[{"name":"ShockwaveFlash.ShockwaveFlash.7","version":function(obj){return getActiveXVersion(obj);}},{"name":"ShockwaveFlash.ShockwaveFlash.6","version":function(obj){var version="6,0,21";try{obj.AllowScriptAccess="always";version=getActiveXVersion(obj);}catch(err){}
return version;}},{"name":"ShockwaveFlash.ShockwaveFlash","version":function(obj){return getActiveXVersion(obj);}}];var getActiveXVersion=function(activeXObj){var version=-1;try{version=activeXObj.GetVariable("$version");}catch(err){}
return version;};var getActiveXObject=function(name){var obj=-1;try{obj=new ActiveXObject(name);}catch(err){obj={activeXError:true};}
return obj;};var parseActiveXVersion=function(str){var versionArray=str.split(",");return{"raw":str,"major":parseInt(versionArray[0].split(" ")[1],10),"minor":parseInt(versionArray[1],10),"revision":parseInt(versionArray[2],10),"revisionStr":versionArray[2]};};var parseStandardVersion=function(str){var descParts=str.split(/ +/);var majorMinor=descParts[2].split(/\./);var revisionStr=descParts[3];return{"raw":str,"major":parseInt(majorMinor[0],10),"minor":parseInt(majorMinor[1],10),"revisionStr":revisionStr,"revision":parseRevisionStrToInt(revisionStr)};};var parseRevisionStrToInt=function(str){return parseInt(str.replace(/[a-zA-Z]/g,""),10)||self.revision;};self.majorAtLeast=function(version){return self.major>=version;};self.minorAtLeast=function(version){return self.minor>=version;};self.revisionAtLeast=function(version){return self.revision>=version;};self.versionAtLeast=function(major){var properties=[self.major,self.minor,self.revision];var len=Math.min(properties.length,arguments.length);for(i=0;i<len;i++){if(properties[i]>=arguments[i]){if(i+1<len&&properties[i]==arguments[i]){continue;}else{return true;}}else{return false;}}};self.FlashDetect=function(){if(navigator.plugins&&navigator.plugins.length>0){var type='application/x-shockwave-flash';var mimeTypes=navigator.mimeTypes;if(mimeTypes&&mimeTypes[type]&&mimeTypes[type].enabledPlugin&&mimeTypes[type].enabledPlugin.description){var version=mimeTypes[type].enabledPlugin.description;var versionObj=parseStandardVersion(version);self.raw=versionObj.raw;self.major=versionObj.major;self.minor=versionObj.minor;self.revisionStr=versionObj.revisionStr;self.revision=versionObj.revision;self.installed=true;}}else if(navigator.appVersion.indexOf("Mac")==-1&&window.execScript){var version=-1;for(var i=0;i<activeXDetectRules.length&&version==-1;i++){var obj=getActiveXObject(activeXDetectRules[i].name);if(!obj.activeXError){self.installed=true;version=activeXDetectRules[i].version(obj);if(version!=-1){var versionObj=parseActiveXVersion(version);self.raw=versionObj.raw;self.major=versionObj.major;self.minor=versionObj.minor;self.revision=versionObj.revision;self.revisionStr=versionObj.revisionStr;}}}}}();};FlashDetect.JS_RELEASE="1.0.4";

// If image resize option is set, show option box.
var always_opt = get_cookie('always_opt');
if( always_opt && always_opt != '-1' && always_opt != 'resample' ) {
    show('resizeoptions');
}

if(cur_toggle == 0 && $("#no_multi").val() != "1" ) {
    // Redirect no flash user
    if ( !FlashDetect.installed )
        location.href = 'http://imageshack.us/?no_multi=1';

    // Display a message, "Upgrade to the latest Flash Player."
    if(!DetectFlashVer(10, 1, 0) && BrowserDetect.OS != 'Linux' ) {
      $("#oldflash_hack").css('display','block');
      $("#uploadform").css('margin-top','0px');
    }
}
// Hack for Firefox 3.0 browse button issue
// Display a message, "Upgrade to the latest Firefox."
//if(cur_toggle == 0 && navigator.userAgent.indexOf('Firefox/3.0') > 0 && BrowserDetect.OS != 'Linux' ) {
//  $("#ff30_hack").css('display','block');
//  $("#uploadform").css('margin-top','0px');
//}
// Hack for Linux users
// Display a message, "Use ImageShack uploader."
/*
if(cur_toggle == 0 && BrowserDetect.OS == 'Linux' ) {
  $("#linux_hack").css('display','block');
  $("#uploadform").css('margin-top','0px');
  $("#fileupload").attr('size',44);
}
*/
  
function toggle_upload_options() {
  if( media_type == 'video' ) return;
  if( $("#resizeoptions").css("display") == "none" ) {
    show('resizeoptions');
  } else {
    hide('resizeoptions');
  }
}

$(document).ready(function(){
    
    $('#webcam_dialog').dialog({
        closeOnEscape: false,
        beforeclose: function(e,u){$("#webcam_dialog").html('<div id="recorder"></div>'); if($("#no_multi").val() == "1" ) toggleuploadmode(0); else toggleuploadmode(3);},
        draggable: false,
        autoOpen: false,
        modal: true,
        resizable: false,
        width: 510,
        height: 420,
        open:  function() {
            $('.ads').hide();
            $('.flash').hide();
        },
        close: function () {
            $('.ads').show();
            $('.flash').show();
            $("#webcam_dialog").html(recorder_saved_html);
        }
    });
    
    $("#webcam_close").live('click', function(){
        $("#webcam_dialog").dialog('close');
        $("#webcam_dialog").html(recorder_saved_html);
    })
    
    $("#webcam_help_close").live('click', function(){
        $("#webcam_help_dialog").dialog('close');
        record_init();
    })
    
    $('#webcam_help_dialog').dialog({
        closeOnEscape: false,
        draggable: false,
        autoOpen: false,
        modal: true,
        resizable: false,
        scroll: true,
        width: 580,
        height: 490,
        open:  function() {
            $('#webcam_dialog').hide();
        },
        close: function () {
            $('#webcam_dialog').show();
            record_init();
        }
    });
    
    $('#help_link').live('click', function(){
        if($('#webcam_help_dialog #help_text').html() == '')
        {
            $.get("camera_help.html", function(res){
                $('#webcam_help_dialog #help_text').html(res);
            });
        }
        $("#webcam_help_dialog").dialog('open');
    })
 
    $('#SWFUpload_0,#fileupload,#tags,#email-optional,#transurl').bind('keydown', function(e) {
        var code = (e.keyCode ? e.keyCode : e.which);
        if (code == 13) { // Start upload by enter key
            switch( $(this).attr("id") )
            {
              case "SWFUpload_0": 
                                $('#uploadstart').click();
                                break;
              case "fileupload": 
              case "transurl": 
                                $('#butan').click();
                                break;
              case "tags": 
              case "email-optional": 
                                if( $("#upflash").css("display") != "none" ) 
                                    $('#uploadstart').click();
                                else 
                                    $('#butan').click();
                                break;
            }
            e.stopPropagation();
            e.preventDefault();
        }
    })
     
    $('#butan').bind('click', function() {
        // Clear example text
        var ex_obj = document.getElementById('email-optional');
        if (ex_obj) focusoption(ex_obj);
        ex_obj = document.getElementById('tags');
        if (ex_obj) focusoption(ex_obj);
        ex_url = document.getElementById('transurl');
        if (ex_url) focusoption(ex_url);
        check_email_submit(2);
    })      
    $('#fileupload').bind('change', function(e) {
        // Focus hack
        if($('#c').val() == '') { 
          setTimeout(function() { $('#email-optional').focus(); }, 10);
          $('#email-optional').focus();
        } else {
          setTimeout(function() { $('#tags').focus(); }, 10);
          $('#tags').focus();
        }
    })
  
  
    $('a[rel]').overlay({
      expose: {         
         color: '#333',
         loadSpeed: 200,      
         opacity: 0.7     
       },     
       closeOnClick: true,
       left: 'center',
       top : 'center',
       onClose: function() {
          $('#register-upgrade').removeClass('lightbox').css({position: '', display: 'block'});
          $('#never-show-section').hide();
          $('#register-upgrade-lightbox').append($('#register-upgrade'));
          if( $('#never-show-btn').is(':checked') ) $.cookie('nevershow-home', 'y', {expires:3650, path:'/', domain:'.imageshack.us'});
       }
    }); 
  
    $('#never-show-btn').bind('click', function(e) {
        if( $(this).is(':checked') ) $.cookie('nevershow-home', 'y', {expires:3650, path:'/', domain:'.imageshack.us'});
        else $.cookie('nevershow-home', '', {expires:-1, path:'/', domain:'.imageshack.us'});
    });

    // Load homepage ads
    $('#newuploader_ad_top').attr( 'src', '/newuploader_ad.php?ad_tag=Imageshack_HomePage_Top' );  
    $('#Imageshack_HomePage_Bottom').attr( 'src', '/newuploader_ad.php?ad_tag=Imageshack_HomePage_Bottom' );  
    $('#newuploader_ad_bottom').attr( 'src', '/newuploader_ad.php?ad_tag=Imageshack_HomePage_Bottom_728x90' );

});


function error_msg($msg)
{
  if( jQuery('#error_msg') ) {
    jQuery("#ff30_hack").css('display','none'); // Clear other error messages.
    jQuery("#linux_hack").css('display','none');
    jQuery('#uploadform').css("margin-top","5px");
    jQuery('#error_msg').css("display","inline").html($msg);
  }  
}

check_email_submit = function(func) { 
    focusoption(document.getElementById('email-optional'));
    var email = jQuery.trim($('#email-optional').val());
    if( email != '') {
      if (!is_email_correct(email))  // Validation
      {
          error_msg( $('#errormsg3').val() ); // Invalid email
          return false;
      }

      // Display loader
			jQuery('#email-check-loader').css("display","inline"); 
			
      var api_url = '/registration/checkemail.php';
      jQuery.get(api_url, {email: email }, function(r) {
  				jQuery('#email-check-loader').css("display","none"); 
					if( r.error == 0 ) { // OK
            if(func == 1) swfUploadStart();
            else if(func == 2) {
              if($('#transurl').val() != '' || $('#fileupload').val() != '') { 
                    $('#upform').submit();
              }
            }
					} else if( r.error == 3 ) {
            error_msg( $('#errormsg3').val() ); return false; // Invalid email
					} else if( r.error == 4 ) { 
					  var errmsg = $('#errormsg4').val() + "   <div style='display:inline'><a href='#' id='btnlogin2'>"+$('#str_login').val()+"</a> | <a href='http://my.imageshack.us/registration/passwordrecovery.php'>"+$('#str_forgotpass').val()+"</a></div>";
            error_msg( errmsg ); return false; // Already taken
					} else {  // Unknown error
            error_msg( $('#errormsg5').val() ); return false; // Unknown error
					}
      },'json');        
			jQuery('#email-check-loader').css("display","none"); 

    } else {
    
      if(func == 1) swfUploadStart();
      else if(func == 2) {
          if($('#transurl').val() != '' || $('#fileupload').val() != '') { 
                $('#upform').submit();
          }
      }    
      
    }
}    

function record_init()
{
    var cookie = get_cookie('myimages');
    if(!cookie)
        cookie = '';
        
    var params = 
    {
        align: "middle",
        bgcolor: "#FFFFFF",
        allowScriptAccess: 'always',
        wmode : 'window',
        swliveconnect: true,
        allowNetworking: 'external',
        flashvars: "serverURL=rtmp://render3.imageshack.us/recorder/stream" + Math.random() + "&imgURL=http://imageshack.us/stillshot.php?cookie=" + cookie + "&localXML=http://imageshack.us/recorder.v2.xml&cookie="+cookie+"&openw=selfnavigate"
    };
    var attributes = {id : "recorder", name : 'recorder' };
    swfobject.embedSWF('recorder.v2.swf', "recorder", 480, 320, "9.0.28.0", "expressInstall.swf", {}, params, attributes);
}

function track (type)
{
      new Image().src = 'http://img1.imageshack.us/pixel.gif?' + type;
}

function showHelp(flag, context)
{
  if( flag ) {
    $('#help-text').html(context); $('#help-area').css('display','block');
  } else {
    $('#help-area').css('display','none');
  }
}

var NUM_WAYS = 2;
function display_uploadtools() {
  var selected_tool = Math.floor(Math.random()*NUM_WAYS);
  if( get('upload-tools'+selected_tool) )
    get('upload-tools'+selected_tool).style.display='block';
}
display_uploadtools();

function is_email_correct(value)
{
    var filter  = /^[^@]+@(([a-zA-Z0-9\-])+\.)+([a-zA-Z]{2,4})+$/;
    return filter.test(value);
}

// Hack for focus bug on ff in the Mac
function setFocus_FF_MAC(obj) {
    if(navigator.userAgent.indexOf('Firefox') > 0 &&
       navigator.userAgent.indexOf('Mac') > 0) {
       obj.focus();
       obj.focus();
    }
}

function change_optsize(obj) {
    var always_opt = get_cookie('always_opt');
    if(obj.value && obj.value != always_opt)
      set_cookie('always_opt', obj.value, 365, '.imageshack.us');
}

function change_rembar(obj) {
    var rem_bar = get_cookie('rem_bar');
    if(obj.value && obj.value != rem_bar)
      set_cookie('rem_bar', obj.value, 365, '.imageshack.us');
}

function get_cookie(name) 
{
    var dc = document.cookie;
    var prefix = name + "=";
    var begin = dc.indexOf("; " + prefix);
    if (begin == -1) {
        begin = dc.indexOf(prefix);
        if (begin != 0) return null;
    } else {
        begin += 2;
    }
    var end = document.cookie.indexOf(";", begin);
    if (end == -1) {
        end = dc.length;
    }
    return unescape(dc.substring(begin + prefix.length, end));
}

function get(id)
{
    return document.getElementById(id);
}

/*
 * jquery.tools 1.1.2 - The missing UI library for the Web
 * 
 * [tools.overlay-1.1.2, tools.expose-1.0.5]
 * 
 * Copyright (c) 2009 Tero Piirainen
 * http://flowplayer.org/tools/
 *
 * Dual licensed under MIT and GPL 2+ licenses
 * http://www.opensource.org/licenses
 * 
 * -----
 * 
 * File generated: Fri Mar 26 20:58:58 GMT 2010
 */
(function(b){b.tools=b.tools||{};b.tools.expose={version:"1.0.5",conf:{maskId:null,loadSpeed:"slow",closeSpeed:"fast",closeOnClick:true,closeOnEsc:true,zIndex:9998,opacity:0.8,color:"#456",api:false}};function a(){if(b.browser.msie){var f=b(document).height(),e=b(window).height();return[window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth,f-e<20?e:f]}return[b(window).width(),b(document).height()]}function c(h,g){var e=this,j=b(this),d=null,f=false,i=0;b.each(g,function(k,l){if(b.isFunction(l)){j.bind(k,l)}});b(window).resize(function(){e.fit()});b.extend(this,{getMask:function(){return d},getExposed:function(){return h},getConf:function(){return g},isLoaded:function(){return f},load:function(n){if(f){return e}i=h.eq(0).css("zIndex");if(g.maskId){d=b("#"+g.maskId)}if(!d||!d.length){var l=a();d=b("<div/>").css({position:"absolute",top:0,left:0,width:l[0],height:l[1],display:"none",opacity:0,zIndex:g.zIndex});if(g.maskId){d.attr("id",g.maskId)}b("body").append(d);var k=d.css("backgroundColor");if(!k||k=="transparent"||k=="rgba(0, 0, 0, 0)"){d.css("backgroundColor",g.color)}if(g.closeOnEsc){b(document).bind("keydown.unexpose",function(o){if(o.keyCode==27){e.close()}})}if(g.closeOnClick){d.bind("click.unexpose",function(o){e.close(o)})}}n=n||b.Event();n.type="onBeforeLoad";j.trigger(n);if(n.isDefaultPrevented()){return e}b.each(h,function(){var o=b(this);if(!/relative|absolute|fixed/i.test(o.css("position"))){o.css("position","relative")}});h.css({zIndex:Math.max(g.zIndex+1,i=="auto"?0:i)});var m=d.height();if(!this.isLoaded()){d.css({opacity:0,display:"block"}).fadeTo(g.loadSpeed,g.opacity,function(){if(d.height()!=m){d.css("height",m)}n.type="onLoad";j.trigger(n)})}f=true;return e},close:function(k){if(!f){return e}k=k||b.Event();k.type="onBeforeClose";j.trigger(k);if(k.isDefaultPrevented()){return e}d.fadeOut(g.closeSpeed,function(){k.type="onClose";j.trigger(k);h.css({zIndex:b.browser.msie?i:null})});f=false;return e},fit:function(){if(d){var k=a();d.css({width:k[0],height:k[1]})}},bind:function(k,l){j.bind(k,l);return e},unbind:function(k){j.unbind(k);return e}});b.each("onBeforeLoad,onLoad,onBeforeClose,onClose".split(","),function(k,l){e[l]=function(m){return e.bind(l,m)}})}b.fn.expose=function(d){var e=this.eq(typeof d=="number"?d:0).data("expose");if(e){return e}if(typeof d=="string"){d={color:d}}var f=b.extend({},b.tools.expose.conf);d=b.extend(f,d);this.each(function(){e=new c(b(this),d);b(this).data("expose",e)});return d.api?e:this}})(jQuery);
(function(c){c.tools=c.tools||{};c.tools.overlay={version:"1.1.2",addEffect:function(e,f,g){b[e]=[f,g]},conf:{top:"10%",left:"center",absolute:false,speed:"normal",closeSpeed:"fast",effect:"default",close:null,oneInstance:true,closeOnClick:true,closeOnEsc:true,api:false,expose:null,target:null}};var b={};c.tools.overlay.addEffect("default",function(e){this.getOverlay().fadeIn(this.getConf().speed,e)},function(e){this.getOverlay().fadeOut(this.getConf().closeSpeed,e)});var d=[];function a(g,k){var o=this,m=c(this),n=c(window),j,i,h,e=k.expose&&c.tools.expose.version;var f=k.target?k.target:'#'+g.attr("rel");i=f?c(f):null||g;if(!i.length){throw"Could not find Overlay: "+f}if(g&&g.index(i)==-1){g.click(function(p){o.load(p);return p.preventDefault()})}c.each(k,function(p,q){if(c.isFunction(q)){m.bind(p,q)}});c.extend(o,{load:function(u){if(o.isOpened()){return o}var r=b[k.effect];if(!r){throw'Overlay: cannot find effect : "'+k.effect+'"'}if(k.oneInstance){c.each(d,function(){this.close(u)})}u=u||c.Event();u.type="onBeforeLoad";m.trigger(u);if(u.isDefaultPrevented()){return o}h=true;if(e){i.expose().load(u)}var t=k.top;var s=k.left;var p=i.outerWidth({margin:true});var q=i.outerHeight({margin:true});if(typeof t=="string"){t=t=="center"?Math.max((n.height()-q)/2,0):parseInt(t,10)/100*n.height()}if(s=="center"){s=Math.max((n.width()-p)/2,0)}if(!k.absolute){t+=n.scrollTop();s+=n.scrollLeft()}i.css({top:t,left:s,position:"absolute"});u.type="onStart";m.trigger(u);r[0].call(o,function(){if(h){u.type="onLoad";m.trigger(u)}});if(k.closeOnClick){c(document).bind("click.overlay",function(w){if(!o.isOpened()){return}var v=c(w.target);if(v.parents(i).length>1){return}c.each(d,function(){this.close(w)})})}if(k.closeOnEsc){c(document).unbind("keydown.overlay").bind("keydown.overlay",function(v){if(v.keyCode==27){c.each(d,function(){this.close(v)})}})}return o},close:function(q){if(!o.isOpened()){return o}q=q||c.Event();q.type="onBeforeClose";m.trigger(q);if(q.isDefaultPrevented()){return}h=false;b[k.effect][1].call(o,function(){q.type="onClose";m.trigger(q)});var p=true;c.each(d,function(){if(this.isOpened()){p=false}});if(p){c(document).unbind("click.overlay").unbind("keydown.overlay")}return o},getContent:function(){return i},getOverlay:function(){return i},getTrigger:function(){return g},getClosers:function(){return j},isOpened:function(){return h},getConf:function(){return k},bind:function(p,q){m.bind(p,q);return o},unbind:function(p){m.unbind(p);return o}});c.each("onBeforeLoad,onStart,onLoad,onBeforeClose,onClose".split(","),function(p,q){o[q]=function(r){return o.bind(q,r)}});if(e){if(typeof k.expose=="string"){k.expose={color:k.expose}}c.extend(k.expose,{api:true,closeOnClick:k.closeOnClick,closeOnEsc:false});var l=i.expose(k.expose);l.onBeforeClose(function(p){o.close(p)});o.onClose(function(p){l.close(p)})}j=i.find(k.close||".close");if(!j.length&&!k.close){j=c('<div class="close"></div>');i.prepend(j)}j.click(function(p){o.close(p)})}c.fn.overlay=function(e){var f=this.eq(typeof e=="number"?e:0).data("overlay");if(f){return f}if(c.isFunction(e)){e={onBeforeLoad:e}}var g=c.extend({},c.tools.overlay.conf);e=c.extend(true,g,e);this.each(function(){f=new a(c(this),e);d.push(f);c(this).data("overlay",f)});return e.api?f:this}})(jQuery);

