/** * Cookie plugin
 *
 * Copyright (c) 2006 Klaus Hartl (stilbuero.de)
 * Dual licensed under the MIT and GPL licenses:
 * http://www.opensource.org/licenses/mit-license.php
 * http://www.gnu.org/licenses/gpl.html
 *
 */

/**
 * Create a cookie with the given name and value and other optional parameters.
 *
 * @example $.cookie('the_cookie', 'the_value');
 * @desc Set the value of a cookie.
 * @example $.cookie('the_cookie', 'the_value', { expires: 7, path: '/', domain: 'jquery.com', secure: true });
 * @desc Create a cookie with all available options.
 * @example $.cookie('the_cookie', 'the_value');
 * @desc Create a session cookie.
 * @example $.cookie('the_cookie', null);
 * @desc Delete a cookie by passing null as value. Keep in mind that you have to use the same path and domain
 *       used when the cookie was set.
 *
 * @param String name The name of the cookie.
 * @param String value The value of the cookie.
 * @param Object options An object literal containing key/value pairs to provide optional cookie attributes.
 * @option Number|Date expires Either an integer specifying the expiration date from now on in days or a Date object.
 *                             If a negative value is specified (e.g. a date in the past), the cookie will be deleted.
 *                             If set to null or omitted, the cookie will be a session cookie and will not be retained
 *                             when the the browser exits.
 * @option String path The value of the path atribute of the cookie (default: path of page that created the cookie).
 * @option String domain The value of the domain attribute of the cookie (default: domain of page that created the cookie).
 * @option Boolean secure If true, the secure attribute of the cookie will be set and the cookie transmission will
 *                        require a secure protocol (like HTTPS).
 * @type undefined
 *
 * @name $.cookie
 * @cat Plugins/Cookie
 * @author Klaus Hartl/klaus.hartl@stilbuero.de
 */

/**
 * Get the value of a cookie with the given name.
 *
 * @example $.cookie('the_cookie');
 * @desc Get the value of a cookie.
 *
 * @param String name The name of the cookie.
 * @return The value of the cookie.
 * @type String
 *
 * @name $.cookie
 * @cat Plugins/Cookie
 * @author Klaus Hartl/klaus.hartl@stilbuero.de
 */
jQuery.cookie = function(name, value, options) {
    if (typeof value != 'undefined') { // name and value given, set cookie
        options = options || {};
        if (value === null) {
            value = '';
            options.expires = -1;
        }
        var expires = '';
        if (options.expires && (typeof options.expires == 'number' || options.expires.toUTCString)) {
            var date;
            if (typeof options.expires == 'number') {
                date = new Date();
                date.setTime(date.getTime() + (options.expires * 24 * 60 * 60 * 1000));
            } else {
                date = options.expires;
            }
            expires = '; expires=' + date.toUTCString(); // use expires attribute, max-age is not supported by IE
        }
        // CAUTION: Needed to parenthesize options.path and options.domain
        // in the following expressions, otherwise they evaluate to undefined
        // in the packed version for some reason...
        var path = options.path ? '; path=' + (options.path) : '';
        var domain = options.domain ? '; domain=' + (options.domain) : '';
        var secure = options.secure ? '; secure' : '';
        document.cookie = [name, '=', encodeURIComponent(value), expires, path, domain, secure].join('');
    } else { // only name given, get cookie
        var cookieValue = null;
        if (document.cookie && document.cookie != '') {
            var cookies = document.cookie.split(';');
            for (var i = 0; i < cookies.length; i++) {
                var cookie = jQuery.trim(cookies[i]);
                // Does this cookie string begin with the name we want?
                if (cookie.substring(0, name.length + 1) == (name + '=')) {
                    cookieValue = decodeURIComponent(cookie.substring(name.length + 1));
                    break;
                }
            }
        }
        return cookieValue;
    }
};  /**
   * jQuery MD5 hash algorithm function
   * 
   *   <code>
   *     Calculate the md5 hash of a String 
   *     String $.md5 ( String str )
   *   </code>
   * 
   * Calculates the MD5 hash of str using the » RSA Data Security, Inc. MD5 Message-Digest Algorithm, and returns that hash. 
   * MD5 (Message-Digest algorithm 5) is a widely-used cryptographic hash function with a 128-bit hash value. MD5 has been employed in a wide variety of security applications, and is also commonly used to check the integrity of data. The generated hash is also non-reversable. Data cannot be retrieved from the message digest, the digest uniquely identifies the data.
   * MD5 was developed by Professor Ronald L. Rivest in 1994. Its 128 bit (16 byte) message digest makes it a faster implementation than SHA-1.
   * This script is used to process a variable length message into a fixed-length output of 128 bits using the MD5 algorithm. It is fully compatible with UTF-8 encoding. It is very useful when u want to transfer encrypted passwords over the internet. If you plan using UTF-8 encoding in your project don't forget to set the page encoding to UTF-8 (Content-Type meta tag). 
   * This function orginally get from the WebToolkit and rewrite for using as the jQuery plugin.
   * 
   * Example
   *   Code
   *     <code>
   *       $.md5("I'm Persian."); 
   *     </code>
   *   Result
   *     <code>
   *       "b8c901d0f02223f9761016cfff9d68df"
   *     </code>
   * 
   * @alias Muhammad Hussein Fattahizadeh < muhammad [AT] semnanweb [DOT] com >
   * @link http://www.semnanweb.com/jquery-plugin/md5.html
   * @see http://www.webtoolkit.info/
   * @license http://www.gnu.org/licenses/gpl.html [GNU General Public License]
   * @param {jQuery} {md5:function(string))
   * @return string
   */
  
  (function($){
    
    var rotateLeft = function(lValue, iShiftBits) {
      return (lValue << iShiftBits) | (lValue >>> (32 - iShiftBits));
    }
    
    var addUnsigned = function(lX, lY) {
      var lX4, lY4, lX8, lY8, lResult;
      lX8 = (lX & 0x80000000);
      lY8 = (lY & 0x80000000);
      lX4 = (lX & 0x40000000);
      lY4 = (lY & 0x40000000);
      lResult = (lX & 0x3FFFFFFF) + (lY & 0x3FFFFFFF);
      if (lX4 & lY4) return (lResult ^ 0x80000000 ^ lX8 ^ lY8);
      if (lX4 | lY4) {
        if (lResult & 0x40000000) return (lResult ^ 0xC0000000 ^ lX8 ^ lY8);
        else return (lResult ^ 0x40000000 ^ lX8 ^ lY8);
      } else {
        return (lResult ^ lX8 ^ lY8);
      }
    }
    
    var F = function(x, y, z) {
      return (x & y) | ((~ x) & z);
    }
    
    var G = function(x, y, z) {
      return (x & z) | (y & (~ z));
    }
    
    var H = function(x, y, z) {
      return (x ^ y ^ z);
    }
    
    var I = function(x, y, z) {
      return (y ^ (x | (~ z)));
    }
    
    var FF = function(a, b, c, d, x, s, ac) {
      a = addUnsigned(a, addUnsigned(addUnsigned(F(b, c, d), x), ac));
      return addUnsigned(rotateLeft(a, s), b);
    };
    
    var GG = function(a, b, c, d, x, s, ac) {
      a = addUnsigned(a, addUnsigned(addUnsigned(G(b, c, d), x), ac));
      return addUnsigned(rotateLeft(a, s), b);
    };
    
    var HH = function(a, b, c, d, x, s, ac) {
      a = addUnsigned(a, addUnsigned(addUnsigned(H(b, c, d), x), ac));
      return addUnsigned(rotateLeft(a, s), b);
    };
    
    var II = function(a, b, c, d, x, s, ac) {
      a = addUnsigned(a, addUnsigned(addUnsigned(I(b, c, d), x), ac));
      return addUnsigned(rotateLeft(a, s), b);
    };
    
    var convertToWordArray = function(string) {
      var lWordCount;
      var lMessageLength = string.length;
      var lNumberOfWordsTempOne = lMessageLength + 8;
      var lNumberOfWordsTempTwo = (lNumberOfWordsTempOne - (lNumberOfWordsTempOne % 64)) / 64;
      var lNumberOfWords = (lNumberOfWordsTempTwo + 1) * 16;
      var lWordArray = Array(lNumberOfWords - 1);
      var lBytePosition = 0;
      var lByteCount = 0;
      while (lByteCount < lMessageLength) {
        lWordCount = (lByteCount - (lByteCount % 4)) / 4;
        lBytePosition = (lByteCount % 4) * 8;
        lWordArray[lWordCount] = (lWordArray[lWordCount] | (string.charCodeAt(lByteCount) << lBytePosition));
        lByteCount++;
      }
      lWordCount = (lByteCount - (lByteCount % 4)) / 4;
      lBytePosition = (lByteCount % 4) * 8;
      lWordArray[lWordCount] = lWordArray[lWordCount] | (0x80 << lBytePosition);
      lWordArray[lNumberOfWords - 2] = lMessageLength << 3;
      lWordArray[lNumberOfWords - 1] = lMessageLength >>> 29;
      return lWordArray;
    };
    
    var wordToHex = function(lValue) {
      var WordToHexValue = "", WordToHexValueTemp = "", lByte, lCount;
      for (lCount = 0; lCount <= 3; lCount++) {
        lByte = (lValue >>> (lCount * 8)) & 255;
        WordToHexValueTemp = "0" + lByte.toString(16);
        WordToHexValue = WordToHexValue + WordToHexValueTemp.substr(WordToHexValueTemp.length - 2, 2);
      }
      return WordToHexValue;
    };
    
    var uTF8Encode = function(string) {
      string = string.replace(/\x0d\x0a/g, "\x0a");
      var output = "";
      for (var n = 0; n < string.length; n++) {
        var c = string.charCodeAt(n);
        if (c < 128) {
          output += String.fromCharCode(c);
        } else if ((c > 127) && (c < 2048)) {
          output += String.fromCharCode((c >> 6) | 192);
          output += String.fromCharCode((c & 63) | 128);
        } else {
          output += String.fromCharCode((c >> 12) | 224);
          output += String.fromCharCode(((c >> 6) & 63) | 128);
          output += String.fromCharCode((c & 63) | 128);
        }
      }
      return output;
    };
    
    $.extend({
      md5: function(string) {
        var x = Array();
        var k, AA, BB, CC, DD, a, b, c, d;
        var S11=7, S12=12, S13=17, S14=22;
        var S21=5, S22=9 , S23=14, S24=20;
        var S31=4, S32=11, S33=16, S34=23;
        var S41=6, S42=10, S43=15, S44=21;
        string = uTF8Encode(string);
        x = convertToWordArray(string);
        a = 0x67452301; b = 0xEFCDAB89; c = 0x98BADCFE; d = 0x10325476;
        for (k = 0; k < x.length; k += 16) {
          AA = a; BB = b; CC = c; DD = d;
          a = FF(a, b, c, d, x[k+0],  S11, 0xD76AA478);
          d = FF(d, a, b, c, x[k+1],  S12, 0xE8C7B756);
          c = FF(c, d, a, b, x[k+2],  S13, 0x242070DB);
          b = FF(b, c, d, a, x[k+3],  S14, 0xC1BDCEEE);
          a = FF(a, b, c, d, x[k+4],  S11, 0xF57C0FAF);
          d = FF(d, a, b, c, x[k+5],  S12, 0x4787C62A);
          c = FF(c, d, a, b, x[k+6],  S13, 0xA8304613);
          b = FF(b, c, d, a, x[k+7],  S14, 0xFD469501);
          a = FF(a, b, c, d, x[k+8],  S11, 0x698098D8);
          d = FF(d, a, b, c, x[k+9],  S12, 0x8B44F7AF);
          c = FF(c, d, a, b, x[k+10], S13, 0xFFFF5BB1);
          b = FF(b, c, d, a, x[k+11], S14, 0x895CD7BE);
          a = FF(a, b, c, d, x[k+12], S11, 0x6B901122);
          d = FF(d, a, b, c, x[k+13], S12, 0xFD987193);
          c = FF(c, d, a, b, x[k+14], S13, 0xA679438E);
          b = FF(b, c, d, a, x[k+15], S14, 0x49B40821);
          a = GG(a, b, c, d, x[k+1],  S21, 0xF61E2562);
          d = GG(d, a, b, c, x[k+6],  S22, 0xC040B340);
          c = GG(c, d, a, b, x[k+11], S23, 0x265E5A51);
          b = GG(b, c, d, a, x[k+0],  S24, 0xE9B6C7AA);
          a = GG(a, b, c, d, x[k+5],  S21, 0xD62F105D);
          d = GG(d, a, b, c, x[k+10], S22, 0x2441453);
          c = GG(c, d, a, b, x[k+15], S23, 0xD8A1E681);
          b = GG(b, c, d, a, x[k+4],  S24, 0xE7D3FBC8);
          a = GG(a, b, c, d, x[k+9],  S21, 0x21E1CDE6);
          d = GG(d, a, b, c, x[k+14], S22, 0xC33707D6);
          c = GG(c, d, a, b, x[k+3],  S23, 0xF4D50D87);
          b = GG(b, c, d, a, x[k+8],  S24, 0x455A14ED);
          a = GG(a, b, c, d, x[k+13], S21, 0xA9E3E905);
          d = GG(d, a, b, c, x[k+2],  S22, 0xFCEFA3F8);
          c = GG(c, d, a, b, x[k+7],  S23, 0x676F02D9);
          b = GG(b, c, d, a, x[k+12], S24, 0x8D2A4C8A);
          a = HH(a, b, c, d, x[k+5],  S31, 0xFFFA3942);
          d = HH(d, a, b, c, x[k+8],  S32, 0x8771F681);
          c = HH(c, d, a, b, x[k+11], S33, 0x6D9D6122);
          b = HH(b, c, d, a, x[k+14], S34, 0xFDE5380C);
          a = HH(a, b, c, d, x[k+1],  S31, 0xA4BEEA44);
          d = HH(d, a, b, c, x[k+4],  S32, 0x4BDECFA9);
          c = HH(c, d, a, b, x[k+7],  S33, 0xF6BB4B60);
          b = HH(b, c, d, a, x[k+10], S34, 0xBEBFBC70);
          a = HH(a, b, c, d, x[k+13], S31, 0x289B7EC6);
          d = HH(d, a, b, c, x[k+0],  S32, 0xEAA127FA);
          c = HH(c, d, a, b, x[k+3],  S33, 0xD4EF3085);
          b = HH(b, c, d, a, x[k+6],  S34, 0x4881D05);
          a = HH(a, b, c, d, x[k+9],  S31, 0xD9D4D039);
          d = HH(d, a, b, c, x[k+12], S32, 0xE6DB99E5);
          c = HH(c, d, a, b, x[k+15], S33, 0x1FA27CF8);
          b = HH(b, c, d, a, x[k+2],  S34, 0xC4AC5665);
          a = II(a, b, c, d, x[k+0],  S41, 0xF4292244);
          d = II(d, a, b, c, x[k+7],  S42, 0x432AFF97);
          c = II(c, d, a, b, x[k+14], S43, 0xAB9423A7);
          b = II(b, c, d, a, x[k+5],  S44, 0xFC93A039);
          a = II(a, b, c, d, x[k+12], S41, 0x655B59C3);
          d = II(d, a, b, c, x[k+3],  S42, 0x8F0CCC92);
          c = II(c, d, a, b, x[k+10], S43, 0xFFEFF47D);
          b = II(b, c, d, a, x[k+1],  S44, 0x85845DD1);
          a = II(a, b, c, d, x[k+8],  S41, 0x6FA87E4F);
          d = II(d, a, b, c, x[k+15], S42, 0xFE2CE6E0);
          c = II(c, d, a, b, x[k+6],  S43, 0xA3014314);
          b = II(b, c, d, a, x[k+13], S44, 0x4E0811A1);
          a = II(a, b, c, d, x[k+4],  S41, 0xF7537E82);
          d = II(d, a, b, c, x[k+11], S42, 0xBD3AF235);
          c = II(c, d, a, b, x[k+2],  S43, 0x2AD7D2BB);
          b = II(b, c, d, a, x[k+9],  S44, 0xEB86D391);
          a = addUnsigned(a, AA);
          b = addUnsigned(b, BB);
          c = addUnsigned(c, CC);
          d = addUnsigned(d, DD);
        }
        var tempValue = wordToHex(a) + wordToHex(b) + wordToHex(c) + wordToHex(d);
        return tempValue.toLowerCase();
      }
    });
  })(jQuery);/*    SWFObject v2.2 <http://code.google.com/p/swfobject/> 
    is released under the MIT License <http://www.opensource.org/licenses/mit-license.php> 
*/
var swfobject=function(){
    var D="undefined",r="object",S="Shockwave Flash",W="ShockwaveFlash.ShockwaveFlash",q="application/x-shockwave-flash",R="SWFObjectExprInst",x="onreadystatechange",O=window,j=document,t=navigator,T=false,U=[h],o=[],N=[],I=[],l,Q,E,B,J=false,a=false,n,G,m=true,M=function(){var aa=typeof j.getElementById!=D&&typeof j.getElementsByTagName!=D&&typeof j.createElement!=D,ah=t.userAgent.toLowerCase(),Y=t.platform.toLowerCase(),ae=Y?/win/.test(Y):/win/.test(ah),ac=Y?/mac/.test(Y):/mac/.test(ah),af=/webkit/.test(ah)?parseFloat(ah.replace(/^.*webkit\/(\d+(\.\d+)?).*$/,"$1")):false,X=!+"\v1",ag=[0,0,0],ab=null;if(typeof t.plugins!=D&&typeof t.plugins[S]==r){ab=t.plugins[S].description;if(ab&&!(typeof t.mimeTypes!=D&&t.mimeTypes[q]&&!t.mimeTypes[q].enabledPlugin)){T=true;X=false;ab=ab.replace(/^.*\s+(\S+\s+\S+$)/,"$1");ag[0]=parseInt(ab.replace(/^(.*)\..*$/,"$1"),10);ag[1]=parseInt(ab.replace(/^.*\.(.*)\s.*$/,"$1"),10);ag[2]=/[a-zA-Z]/.test(ab)?parseInt(ab.replace(/^.*[a-zA-Z]+(.*)$/,"$1"),10):0}}else{if(typeof O.ActiveXObject!=D){try{var ad=new ActiveXObject(W);if(ad){ab=ad.GetVariable("$version");if(ab){X=true;ab=ab.split(" ")[1].split(",");ag=[parseInt(ab[0],10),parseInt(ab[1],10),parseInt(ab[2],10)]}}}catch(Z){}}}return{w3:aa,pv:ag,wk:af,ie:X,win:ae,mac:ac}}(),k=function(){if(!M.w3){return}if((typeof j.readyState!=D&&j.readyState=="complete")||(typeof j.readyState==D&&(j.getElementsByTagName("body")[0]||j.body))){f()}if(!J){if(typeof j.addEventListener!=D){j.addEventListener("DOMContentLoaded",f,false)}if(M.ie&&M.win){j.attachEvent(x,function(){if(j.readyState=="complete"){j.detachEvent(x,arguments.callee);f()}});if(O==top){(function(){if(J){return}try{j.documentElement.doScroll("left")}catch(X){setTimeout(arguments.callee,0);return}f()})()}}if(M.wk){(function(){if(J){return}if(!/loaded|complete/.test(j.readyState)){setTimeout(arguments.callee,0);return}f()})()}s(f)}}();function f(){if(J){return}try{var Z=j.getElementsByTagName("body")[0].appendChild(C("span"));Z.parentNode.removeChild(Z)}catch(aa){return}J=true;var X=U.length;for(var Y=0;Y<X;Y++){U[Y]()}}function K(X){if(J){X()}else{U[U.length]=X}}function s(Y){if(typeof O.addEventListener!=D){O.addEventListener("load",Y,false)}else{if(typeof j.addEventListener!=D){j.addEventListener("load",Y,false)}else{if(typeof O.attachEvent!=D){i(O,"onload",Y)}else{if(typeof O.onload=="function"){var X=O.onload;O.onload=function(){X();Y()}}else{O.onload=Y}}}}}function h(){if(T){V()}else{H()}}function V(){var X=j.getElementsByTagName("body")[0];var aa=C(r);aa.setAttribute("type",q);var Z=X.appendChild(aa);if(Z){var Y=0;(function(){if(typeof Z.GetVariable!=D){var ab=Z.GetVariable("$version");if(ab){ab=ab.split(" ")[1].split(",");M.pv=[parseInt(ab[0],10),parseInt(ab[1],10),parseInt(ab[2],10)]}}else{if(Y<10){Y++;setTimeout(arguments.callee,10);return}}X.removeChild(aa);Z=null;H()})()}else{H()}}function H(){var ag=o.length;if(ag>0){for(var af=0;af<ag;af++){var Y=o[af].id;var ab=o[af].callbackFn;var aa={success:false,id:Y};if(M.pv[0]>0){var ae=c(Y);if(ae){if(F(o[af].swfVersion)&&!(M.wk&&M.wk<312)){w(Y,true);if(ab){aa.success=true;aa.ref=z(Y);ab(aa)}}else{if(o[af].expressInstall&&A()){var ai={};ai.data=o[af].expressInstall;ai.width=ae.getAttribute("width")||"0";ai.height=ae.getAttribute("height")||"0";if(ae.getAttribute("class")){ai.styleclass=ae.getAttribute("class")}if(ae.getAttribute("align")){ai.align=ae.getAttribute("align")}var ah={};var X=ae.getElementsByTagName("param");var ac=X.length;for(var ad=0;ad<ac;ad++){if(X[ad].getAttribute("name").toLowerCase()!="movie"){ah[X[ad].getAttribute("name")]=X[ad].getAttribute("value")}}P(ai,ah,Y,ab)}else{p(ae);if(ab){ab(aa)}}}}}else{w(Y,true);if(ab){var Z=z(Y);if(Z&&typeof Z.SetVariable!=D){aa.success=true;aa.ref=Z}ab(aa)}}}}}function z(aa){var X=null;var Y=c(aa);if(Y&&Y.nodeName=="OBJECT"){if(typeof Y.SetVariable!=D){X=Y}else{var Z=Y.getElementsByTagName(r)[0];if(Z){X=Z}}}return X}function A(){return !a&&F("6.0.65")&&(M.win||M.mac)&&!(M.wk&&M.wk<312)}function P(aa,ab,X,Z){a=true;E=Z||null;B={success:false,id:X};var ae=c(X);if(ae){if(ae.nodeName=="OBJECT"){l=g(ae);Q=null}else{l=ae;Q=X}aa.id=R;if(typeof aa.width==D||(!/%$/.test(aa.width)&&parseInt(aa.width,10)<310)){aa.width="310"}if(typeof aa.height==D||(!/%$/.test(aa.height)&&parseInt(aa.height,10)<137)){aa.height="137"}j.title=j.title.slice(0,47)+" - Flash Player Installation";var ad=M.ie&&M.win?"ActiveX":"PlugIn",ac="MMredirectURL="+O.location.toString().replace(/&/g,"%26")+"&MMplayerType="+ad+"&MMdoctitle="+j.title;if(typeof ab.flashvars!=D){ab.flashvars+="&"+ac}else{ab.flashvars=ac}if(M.ie&&M.win&&ae.readyState!=4){var Y=C("div");X+="SWFObjectNew";Y.setAttribute("id",X);ae.parentNode.insertBefore(Y,ae);ae.style.display="none";(function(){if(ae.readyState==4){ae.parentNode.removeChild(ae)}else{setTimeout(arguments.callee,10)}})()}u(aa,ab,X)}}function p(Y){if(M.ie&&M.win&&Y.readyState!=4){var X=C("div");Y.parentNode.insertBefore(X,Y);X.parentNode.replaceChild(g(Y),X);Y.style.display="none";(function(){if(Y.readyState==4){Y.parentNode.removeChild(Y)}else{setTimeout(arguments.callee,10)}})()}else{Y.parentNode.replaceChild(g(Y),Y)}}function g(ab){var aa=C("div");if(M.win&&M.ie){aa.innerHTML=ab.innerHTML}else{var Y=ab.getElementsByTagName(r)[0];if(Y){var ad=Y.childNodes;if(ad){var X=ad.length;for(var Z=0;Z<X;Z++){if(!(ad[Z].nodeType==1&&ad[Z].nodeName=="PARAM")&&!(ad[Z].nodeType==8)){aa.appendChild(ad[Z].cloneNode(true))}}}}}return aa}function u(ai,ag,Y){var X,aa=c(Y);if(M.wk&&M.wk<312){return X}if(aa){if(typeof ai.id==D){ai.id=Y}if(M.ie&&M.win){var ah="";for(var ae in ai){if(ai[ae]!=Object.prototype[ae]){if(ae.toLowerCase()=="data"){ag.movie=ai[ae]}else{if(ae.toLowerCase()=="styleclass"){ah+=' class="'+ai[ae]+'"'}else{if(ae.toLowerCase()!="classid"){ah+=" "+ae+'="'+ai[ae]+'"'}}}}}var af="";for(var ad in ag){if(ag[ad]!=Object.prototype[ad]){af+='<param name="'+ad+'" value="'+ag[ad]+'" />'}}aa.outerHTML='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"'+ah+">"+af+"</object>";N[N.length]=ai.id;X=c(ai.id)}else{var Z=C(r);Z.setAttribute("type",q);for(var ac in ai){if(ai[ac]!=Object.prototype[ac]){if(ac.toLowerCase()=="styleclass"){Z.setAttribute("class",ai[ac])}else{if(ac.toLowerCase()!="classid"){Z.setAttribute(ac,ai[ac])}}}}for(var ab in ag){if(ag[ab]!=Object.prototype[ab]&&ab.toLowerCase()!="movie"){e(Z,ab,ag[ab])}}aa.parentNode.replaceChild(Z,aa);X=Z}}return X}function e(Z,X,Y){var aa=C("param");aa.setAttribute("name",X);aa.setAttribute("value",Y);Z.appendChild(aa)}function y(Y){var X=c(Y);if(X&&X.nodeName=="OBJECT"){if(M.ie&&M.win){X.style.display="none";(function(){if(X.readyState==4){b(Y)}else{setTimeout(arguments.callee,10)}})()}else{X.parentNode.removeChild(X)}}}function b(Z){var Y=c(Z);if(Y){for(var X in Y){if(typeof Y[X]=="function"){Y[X]=null}}Y.parentNode.removeChild(Y)}}function c(Z){var X=null;try{X=j.getElementById(Z)}catch(Y){}return X}function C(X){return j.createElement(X)}function i(Z,X,Y){Z.attachEvent(X,Y);I[I.length]=[Z,X,Y]}function F(Z){var Y=M.pv,X=Z.split(".");X[0]=parseInt(X[0],10);X[1]=parseInt(X[1],10)||0;X[2]=parseInt(X[2],10)||0;return(Y[0]>X[0]||(Y[0]==X[0]&&Y[1]>X[1])||(Y[0]==X[0]&&Y[1]==X[1]&&Y[2]>=X[2]))?true:false}function v(ac,Y,ad,ab){if(M.ie&&M.mac){return}var aa=j.getElementsByTagName("head")[0];if(!aa){return}var X=(ad&&typeof ad=="string")?ad:"screen";if(ab){n=null;G=null}if(!n||G!=X){var Z=C("style");Z.setAttribute("type","text/css");Z.setAttribute("media",X);n=aa.appendChild(Z);if(M.ie&&M.win&&typeof j.styleSheets!=D&&j.styleSheets.length>0){n=j.styleSheets[j.styleSheets.length-1]}G=X}if(M.ie&&M.win){if(n&&typeof n.addRule==r){n.addRule(ac,Y)}}else{if(n&&typeof j.createTextNode!=D){n.appendChild(j.createTextNode(ac+" {"+Y+"}"))}}}function w(Z,X){if(!m){return}var Y=X?"visible":"hidden";if(J&&c(Z)){c(Z).style.visibility=Y}else{v("#"+Z,"visibility:"+Y)}}function L(Y){var Z=/[\\\"<>\.;]/;var X=Z.exec(Y)!=null;return X&&typeof encodeURIComponent!=D?encodeURIComponent(Y):Y}var d=function(){if(M.ie&&M.win){window.attachEvent("onunload",function(){var ac=I.length;for(var ab=0;ab<ac;ab++){I[ab][0].detachEvent(I[ab][1],I[ab][2])}var Z=N.length;for(var aa=0;aa<Z;aa++){y(N[aa])}for(var Y in M){M[Y]=null}M=null;for(var X in swfobject){swfobject[X]=null}swfobject=null})}}();return{registerObject:function(ab,X,aa,Z){if(M.w3&&ab&&X){var Y={};Y.id=ab;Y.swfVersion=X;Y.expressInstall=aa;Y.callbackFn=Z;o[o.length]=Y;w(ab,false)}else{if(Z){Z({success:false,id:ab})}}},getObjectById:function(X){if(M.w3){return z(X)}},embedSWF:function(ab,ah,ae,ag,Y,aa,Z,ad,af,ac){var X={success:false,id:ah};if(M.w3&&!(M.wk&&M.wk<312)&&ab&&ah&&ae&&ag&&Y){w(ah,false);K(function(){ae+="";ag+="";var aj={};if(af&&typeof af===r){for(var al in af){aj[al]=af[al]}}aj.data=ab;aj.width=ae;aj.height=ag;var am={};if(ad&&typeof ad===r){for(var ak in ad){am[ak]=ad[ak]}}if(Z&&typeof Z===r){for(var ai in Z){if(typeof am.flashvars!=D){am.flashvars+="&"+ai+"="+Z[ai]}else{am.flashvars=ai+"="+Z[ai]}}}if(F(Y)){var an=u(aj,am,ah);if(aj.id==ah){w(ah,true)}X.success=true;X.ref=an}else{if(aa&&A()){aj.data=aa;P(aj,am,ah,ac);return}else{w(ah,true)}}if(ac){ac(X)}})}else{if(ac){ac(X)}}},switchOffAutoHideShow:function(){m=false},ua:M,getFlashPlayerVersion:function(){return{major:M.pv[0],minor:M.pv[1],release:M.pv[2]}},hasFlashPlayerVersion:F,createSWF:function(Z,Y,X){if(M.w3){return u(Z,Y,X)}else{return undefined}},showExpressInstall:function(Z,aa,X,Y){if(M.w3&&A()){P(Z,aa,X,Y)}},removeSWF:function(X){if(M.w3){y(X)}},createCSS:function(aa,Z,Y,X){if(M.w3){v(aa,Z,Y,X)}},addDomLoadEvent:K,addLoadEvent:s,getQueryParamValue:function(aa){var Z=j.location.search||j.location.hash;if(Z){if(/\?/.test(Z)){Z=Z.split("?")[1]}if(aa==null){return L(Z)}var Y=Z.split("&");for(var X=0;X<Y.length;X++){if(Y[X].substring(0,Y[X].indexOf("="))==aa){return L(Y[X].substring((Y[X].indexOf("=")+1)))}}}return""},expressInstallCallback:function(){if(a){var X=c(R);if(X&&l){X.parentNode.replaceChild(l,X);if(Q){w(Q,true);if(M.ie&&M.win){l.style.display="block"}}if(E){E(B)}}a=false}}}}();// Pixelsilk Website Navigation Menu Plugin
// v 3.3
/*
  Options that can  be passed to the plugin:
    fadeInTime
    fadeOutTime
    menuWidth: (int) width of the submenu container element
    containerElement: (string) theme element to check width against
    containerWidth: (int) width to use instead of containerElement's; overrides
    menuElement: (string) submenu container element to look for
    subIndicatorClass: (string) class name of floating submenu arrow indicator
    rightArrow: (html) HTML to render the "submenu" arrow indicator
*/
jQuery.fn.navMenu = function(options) {

  var defaults = {
    fadeInTime: 200, // in milliseconds
    fadeOutTime: 300,  // in milliseconds
    menuWidth: 250,
    containerElement: "#theme",
    containerWidth: 0,
    menuElement: "ul",
    subIndicatorClass: "menu-sub-indicator",
    rightArrow: " »"
  }

  var settings = $.extend({}, defaults, options);

  var obj = $(this);

  $(obj).find('li ul li:has(ul) > a').prepend('<span class="'+settings.subIndicatorClass+'">' + settings.rightArrow + '</span>');

  var pos;
  var menuWidth = settings.menuWidth;
  var containerWidth =  $(settings.containerElement).width();
  if ( settings.containerWidth >  0 ) {
    containerWidth = settings.containerWidth;
  }
  $(obj).find('li ' + settings.menuElement + ' li ' + settings.menuElement).each(function() {
    pos = $(this).parent().parent().parent().position().left;
    if (containerWidth  - pos < (menuWidth  * 2)) {
      $(this).css('left', '-' + menuWidth + 'px');
    }
  });

  $(obj).find('li ' + settings.menuElement).attr('fadeState', 'none');
  $(obj).find('li').hover(
    function() {
      var fadeElement = $(this).find(settings.menuElement).eq(0);

      if($(fadeElement).attr('fadeState') == 'fadeOut'){
        $(fadeElement).stop(true,true);
        $(fadeElement).attr('fadeState','none');
      }
      if($(fadeElement).attr('fadeState') == 'none'){
        $(fadeElement).attr('fadeState','fadeIn');
        $(fadeElement).fadeIn(settings.fadeInTime,function(){
          $(this).attr('fadeState', 'none');
        });
      }
      if ( !$(this).hasClass("current") ) {
        $(this).addClass("currentFade");
      }
    },
    function() {
      var fadeElement = $(this).find(settings.menuElement).eq(0);
      
      if($(fadeElement).attr('fadeState') == 'fadeIn'){
        $(fadeElement).stop(true,true);
        $(fadeElement).attr('fadeState','none');
      }
      if($(fadeElement).attr('fadeState') == 'none'){
        $(fadeElement).attr('fadeState','fadeOut');
        $(fadeElement).fadeOut(settings.fadeOutTime, function() {
          $(this).attr('fadeState', 'none');
        });
      }
      if ( !$(this).hasClass("current") ) {
        $(this).removeClass("currentFade");
      }
   }
  );

  $(obj).find('li ul:empty').css('visibility', 'hidden');
}// Initializes User Scripts:

$(document).ready(function() {
  // Selects text in Search Box when focused:
  $('input[type=text].clearText').each(function() {
    var txtSearchText = $(this).val();
    $(this).focus(function() {
      if ($(this).val() == txtSearchText)
        $(this).val('');
    });
    $(this).blur(function() {
      if ($(this).val() == '')
        $(this).val(txtSearchText);
    });
  });

  // Links - pop up in new window / tab:
  $("a.lnkBlank").click(function() {
    window.open($(this).attr("href"), 'window2', '');
    return false;
  });

  // hide text in spans (text replacement). Adds sprite class for 'image'.
  $('.imgText').each(function() {
    $(this).find('>span').hide();
    $(this).addClass('spriteTheme');
  });

  // Smartz Logo
  $('#smartzLink')
    .find('>span')
    .html('&nbsp;')
    .addClass('spriteTheme');
  
  $("#topMenu>li:not(:last)").after('<li class="separator"></li>');
  if ( !($.browser.msie && $.browser.version <= '6.0') ) {
    $("#siteMenu").after('<div id="siteMenuBottom"><div id="siteMenuBottomCorner" class="spriteTheme"></div></div>');
    $("#topMenu>li>a").append('<span class="corner"></span>');
  } else {
    $("#siteMenu").after('<div id="siteMenuBottom"><img src="/spacer.gif" width="1" height="5" alt="" /></div>');
  }
  $("body.home #mainColumn h3").append('<span class="spriteTheme"></span>');

  pixelsilk2.renderSkin({skin:"["+"[Menu1]"+"]", path:""}, function(html) {
    $("#siteMenu").after('<div id="subNavigation" style="display:none;"></div>');
    $("#subNavigation").html(html);
    var sections = $("#subNavigation div");
    var topElements = $("#topMenu li:not(.separator)");
    for (z = 0; z < sections.length; z++) {
      var li = topElements[z];
      var lihtml = li.innerHTML;
      li.innerHTML = lihtml + sections[z].innerHTML;
    }
    $("#topMenu").navMenu({
      menuWidth: 200,
      containerElement: "#theme",
      menuElement: "ul",
      rightArrow: ' &raquo;'
    });
    $("#subNavigation").remove();
  });
  
  if ( document.URL.indexOf('EditListItem.aspx') == -1 ) {
    $("img").each(function() {
      var img = $(this).attr("src");
      if ( typeof(img) == 'undefined' || img == '' || img == '/' || img.substr(0, 1) == '?' || img.substr(0, 2) == '/?' ) $(this).hide();
    });
    $("img").error(function() {
      $(this).hide();
    });
  }
  
  if ( $.browser.msie && $.browser.version <= '6.0' ) {
    var username = location.search.replace(/.*(\?|\&)username\=/g, '');
    if ( username.length ) {
      $("a").each(function() {
        var href = $(this).attr('href');
        if ( !(href.indexOf('http://') > -1 && href.indexOf('prostorsystems.com') == -1) && href.indexOf('logout.aspx') == -1 ) {
          if ( href.indexOf('?') > -1 ) {
            href += '&username=' + username;
          } else {
            href += '?username=' + username;
          }
          $(this).attr('href', href);
        }
      });
    }
  }
});

$(window).load(function() {
  if ( $("#leftColumn").height() < $("#mainColumn").height() ) {
    $("#leftColumn").height($("#mainColumn").height());
  } else if ( $("#leftColumn").height() > $("#mainColumn").height() ) {
    $("#mainColumn").height($("#leftColumn").height());
  }
});
