var vbmenu_usepopups = false; 
var ignorequotechars = 0;
var userAgent = navigator.userAgent.toLowerCase(); 
var is_opera = (userAgent.indexOf('opera') != -1);
var is_saf = ((userAgent.indexOf('applewebkit') != -1) || (navigator.vendor == "Apple Computer, Inc."));
var is_webtv = (userAgent.indexOf('webtv') != -1); 
var is_ie = ((userAgent.indexOf('msie') != -1) && (!is_opera) && (!is_saf) && (!is_webtv));
var is_ie4 = ((is_ie) && (userAgent.indexOf("msie 4.") != -1)); 
var is_moz = ((navigator.product == 'Gecko') && (!is_saf));
var is_kon = (userAgent.indexOf('konqueror') != -1);
var is_ns = ((userAgent.indexOf('compatible') == -1) && (userAgent.indexOf('mozilla') != -1) && (!is_opera) && (!is_webtv) && (!is_saf)); 
var is_ns4 = ((is_ns) && (parseInt(navigator.appVersion) == 4)); 
var is_regexp = (window.RegExp) ? true : false; var vbDOMtype = '';
           
           if (document.getElementById) { 
                    vbDOMtype = "std"; 
           }
                else if (document.all) 
           { 
                vbDOMtype = "ie4"; 
           }
                else if (document.layers) { 
                vbDOMtype = "ns4"; }
               var vBobjects = new Array(); 
            function fetch_object(idname, forcefetch) 
            { 
                if (forcefetch || typeof(vBobjects[idname]) == "undefined") {
                switch (vbDOMtype) 
                { 
              case "std": { 
                vBobjects[idname] = document.getElementById(idname);
              } 
              break; 
                case "ie4": { 
                    vBobjects[idname] = document.all[idname]; 
                }
                break;
                    case "ns4": {
                         vBobjects[idname] = document.layers[idname]; 
                    } 
                    break;
                    }
               } 
                  return vBobjects[idname]; 
            } 
            function do_an_e(eventobj) { if (!eventobj || is_ie) 
                      { 
                        window.event.returnValue = false; window.event.cancelBubble = true; return window.event;
                      } 
                        else
                      {
                        eventobj.stopPropagation(); eventobj.preventDefault(); 
                        return eventobj; 
                        } 
                    }
                    function openWindow(url, width, height) 
                        { 
                            var dimensions = ""; 
                            if (width) { dimensions += ",width=" + width;
                    } 
                    if (height)
                        { 
                            dimensions += ",height=" + height;
                        } 
                            window.open(url, "vBPopup", "statusbar=no,menubar=no,toolbar=no,scrollbars=yes,resizable=yes" + dimensions); 
                            return false; 
                        } 
                            function imwindow(imtype, userid, width, height) 
                        { 
                            return openWindow("sendmessage.php?" + SESSIONURL + "do=im&type=" + imtype + "&userid=" + userid, width, height);
                        } 
                            function who(threadid) 
                        {
                            return openWindow("misc.php?" + SESSIONURL + "do=whoposted&threadid=" + threadid, 230, 300);
                        } 
                             function reputation(postid) 
                         { 
                            window.open("reputation.php?" + SESSIONURL + "p=" + postid, "Reputation", "toolbar=no, scrollbars=yes, resizable=yes, width=212, height=241"); 
                            return false; 
                         } 
                            function manageattachments(url, width, height, hash) 
                         { 
                            window.open(url, "Attach" + hash, "statusbar=no,menubar=no,toolbar=no,scrollbars=yes,resizable=yes,width=" + width + ",height=" + height);
                            return false; 
                         } 
                             function iif(condition, trueval, falseval)
                         { 
                             return condition ? trueval : falseval; 
                         } 
                              function in_array(ineedle, haystack, caseinsensitive) 
                         { 
                            var needle = new String(ineedle); 
                            if (caseinsensitive) 
                                { 
                                    needle = needle.toLowerCase(); 
                                        for (i in haystack) 
                                         {
                                            if (haystack[i].toLowerCase() == needle)
                                         { 
                                        return i;
                                        }
                                    }
                                }
                                else
                                    {
                                        for (i in haystack) 
                                    { 
                                        if (haystack[i] == needle)
                                   { 
                                        return i;
                                        } 
                                      } 
                                    }
                                        return -1;
                                        } 
                                            function js_toggle_all(formobj, formtype, option, exclude, setto) 
                                        { 
                                            for (var i =0; i < formobj.elements.length; i++)
                                                {
                                                    var elm = formobj.elements[i]; 
                                                        if (elm.type == formtype && in_array(elm.name, exclude, false) == -1) 
                                                { 
                                                    switch (formtype) 
                                                { 
                                                    case "radio": 
                                                    if (elm.value == option) 
                                                    {
                                                        elm.checked = setto;
                                                    } 
                                                        break; 
                                                        case "select-one": 
                                                        elm.selectedIndex = setto; 
                                                        break; 
                                                        default: elm.checked = setto; break;
                                                    }
                                                }
                                                }
                                            }
                                                    function js_select_all(formobj)
                                                { 
                                                    exclude = new Array();
                                                    exclude[0] = "selectall"; 
                                                    js_toggle_all(formobj, "select-one", '', exclude, formobj.selectall.selectedIndex);
                                                } 
                                                    function js_check_all(formobj) 
                                                        { 
                                                         exclude = new Array(); 
                                                         exclude[0] = "keepattachments"; 
                                                         exclude[1] = "allbox"; 
                                                         exclude[2] = "removeall";
                                                         js_toggle_all(formobj, "checkbox", '', exclude, formobj.allbox.checked);
                                                        } 
                                                            function js_check_all_option(formobj, option) 
                                                            { 
                                                              exclude = new Array();
                                                              exclude[0] = "useusergroup"; 
                                                              js_toggle_all(formobj, "radio", option, exclude, true);
                                                            } 
                                                                function checkall(formobj) 
                                                            { 
                                                                js_check_all(formobj); 
                                                            } 
                                                                function checkall_option(formobj, option) 
                                                            { 
                                                                js_check_all_option(formobj, option);
                                                            } 
                                                                function validatemessage(messageText, subjectText, minLength, maxLength, ishtml, tForm)
                                                            { 
                                                                if (is_kon || is_saf || is_webtv) 
                                                                { 
                                                                    return true; 
                                                                } 
                                                                    var strippedMessage = stripcode(messageText, ishtml, ignorequotechars); 
                                                                    if (subjectText.length < 1) 
                                                                    { 
                                                                        alert(vbphrase["must_enter_subject"]);
                                                                        return false;
                                                                    } 
                                                                        else if (strippedMessage.length < minLength) 
                                                                    { 
                                                                        alert(construct_phrase(vbphrase["message_too_short"], minLength));
                                                                        return false; 
                                                                    } 
                                                                        else 
                                                                    { 
                                                                        return true; 
                                                                    } 
                                                                } 
                                                                    function stripcode(str, ishtml, stripquotes) 
                                                                { 
                                                                    if (!is_regexp)
                                                                { 
                                                                    return str; 
                                                                } 
                                                                    if (stripquotes) 
                                                                { 
                                                                    var quote1 = new RegExp("(\\[QUOTE\\])(.*)(\\[\\/QUOTE\\])", "gi");
                                                                    var quote2 = new RegExp("(\\[QUOTE=(&quot;|\"|\\'|)(.*)\\1\\])(.*)(\\[\\/QUOTE\\])", "gi"); 
                                                                    while(str.match(quote1)) 
                                                                { 
                                                                    str = str.replace(quote1, ''); 
                                                                } 
                                                                    while(str.match(quote2))
                                                                    { 
                                                                        str = str.replace(quote2, '');
                                                                    }
                                                                } 
                                                                    if (ishtml) { 
                                                                         var html1 = new RegExp("<(\\w+)[^>]*>", "gi"); 
                                                                         var html2 = new RegExp("<\\/\\w+>", "gi"); 
                                                                         str = str.replace(html1, ''); 
                                                                         str = str.replace(html2, ''); 
                                                                         var html3 = new RegExp("&nbsp;"); 
                                                                         str = str.replace(html3, ''); 
                                                                    } 
                                                                    else 
                                                                        { 
                                                                             var bbcode1 = new RegExp("\\[(\\w+)[^\\]]*\\]", "gi"); 
                                                                             var bbcode2 = new RegExp("\\[\\/(\\w+)\\]", "gi"); 
                                                                             str = str.replace(bbcode1, ''); 
                                                                             str = str.replace(bbcode2, '');
                                                                        } 
                                                                            return str; 
                                                                    } 
                                                                        function construct_phrase() 
                                                                    { 
                                                                        if (!arguments || arguments.length < 1 || !is_regexp) 
                                                                    { 
                                                                        return false; 
                                                                    } 
                                                                      var args = arguments; 
                                                                      var str = args[0]; 
                                                                      var re; 
                                                                        for (var i = 1; i < args.length; i++) 
                                                                    { 
                                                                      re = new RegExp("%" + i + "\\$s", "gi");
                                                                      str = str.replace(re, args[i]); 
                                                                    } 
                                                                        return str; 
                                                                    } 
                                                                    function set_cp_title() 
                                                                    { 
                                                                        if (typeof(parent.document) != "undefined" && typeof(parent.document) != "unknown" && typeof(parent.document.title) == "string")
                                                                    {
                                                                        if (document.title != '') { parent.document.title = document.title; 
                                                                    } 
                                                                        else 
                                                                    { 
                                                                        parent.document.title = "vBulletin"; 
                                                                    }
                                                                }
                                                              }
                                                               function js_open_help(scriptname, actiontype, optionval) 
                                                                    {
                                                                        window.open("help.php?s=" + SESSIONHASH + "&do=answer&page=" + scriptname + "&pageaction=" + actiontype + "&option=" + optionval, "helpwindow", "toolbar=no,scrollbars=yes,resizable=yes,width=212,height=450");
                                                                    }
                                                                        function switch_styleid(selectobj) 
                                                                            { 
                                                                                var styleid = selectobj.options[selectobj.selectedIndex].value; if (styleid == "") 
                                                                            { 
                                                                        return; 
                                                                    } 
                                                                      var url = new String(window.location); 
                                                                      var fragment = new String(""); 
                                                                      url = url.split("#"); 
                                                                      if (url[1])
                                                                        { 
                                                                            fragment = "#" + url[1]; 
                                                                        } 
                                                                            url = url[0]; 
                                                                            if (url.indexOf("styleid=") != -1 && is_regexp) 
                                                                        { 
                                                                            re = new RegExp("styleid=\\d+&?"); 
                                                                            url = url.replace(re, ""); 
                                                                        } 
                                                                            if (url.indexOf("?") == -1) 
                                                                        { 
                                                                            url += "?"; 
                                                                        } 
                                                                            else 
                                                                        { 
                                                                            lastchar = url.substr(url.length - 1);
                                                                            if (lastchar != "&" && lastchar != "?") 
                                                                        { 
                                                                            url += "&"; 
                                                                        } 
                                                                    } 
                                                                    window.location = url + "styleid=" + styleid + fragment; 
                                                                    } 
                                                                    function toggle_display(idname) 
                                                                    { 
                                                                    obj = fetch_object(idname); 
                                                                    if (obj) 
                                                                    { 
                                                                    if (obj.style.display == "none") 
                                                                    { obj.style.display = ""; 
                                                                    }
                                                                     else { obj.style.display = "none"; 
                                                                     } 
                                                                     } 
                                                                     return false;
                                                                      } function set_cookie(name, value, expires)
                                                                       { 
                                                                       if (!expires) 
                                                                       { expires = new Date(); 
                                                                       } document.cookie = name + "=" + escape(value) + "; expires=" + expires.toGMTString() + "; path=/"; 
                                                                       } 
                                                                       function fetch_cookie(name) 
                                                                       { 
                                                                       cookie_name = name + "="; 
                                                                       cookie_length = document.cookie.length; cookie_begin = 0; 
                                                                       while (cookie_begin < cookie_length) 
                                                                       {
                                                                        value_begin = cookie_begin + cookie_name.length; 
                                                                        if (document.cookie.substring(cookie_begin, value_begin) == cookie_name) 
                                                                        { 
                                                                        var value_end = document.cookie.indexOf (";", value_begin); 
                                                                        if (value_end == -1) 
                                                                        { 
                                                                        value_end = cookie_length; 
                                                                        } 
                                                                        return unescape(document.cookie.substring(value_begin, value_end)); 
                                                                        } 
                                                                        cookie_begin = document.cookie.indexOf(" ", cookie_begin) + 1;
                                                                         if (cookie_begin == 0) { break; 
                                                                         } 
                                                                         } 
                                                                         return null; 
                                                                         } 
                                                                         function delete_cookie(name) 
                                                                         { 
                                                                         var expireNow = new Date(); 
                                                                         document.cookie = name + "=" + "; expires=Thu, 01-Jan-70 00:00:01 GMT" + "; path=/"; 
                                                                         } 
                                                                         function toggle_collapse(objid)
                                                                          { 
                                                                          if (!is_regexp) 
                                                                          { 
                                                                          return false; 
                                                                          } 
                                                                          obj = fetch_object("collapseobj_" + objid); 
                                                                          img = fetch_object("collapseimg_" + objid); 
                                                                          cel = fetch_object("collapsecel_" + objid); 
                                                                          if (!obj) 
                                                                          { 
                                                                          if (img) 
                                                                          {
                                                                           img.style.display = "none"; 
                                                                          }
                                                                           return false; 
                                                                          } 
                                                                          if (obj.style.display == "none") 
                                                                          { 
                                                                          obj.style.display = ""; 
                                                                          save_collapsed(objid, false); 
                                                                          if (img)
                                                                           {
                                                                            img_re = new RegExp("_collapsed\\.gif$"); 
                                                                          img.src = img.src.replace(img_re, '.gif');
                                                                           } 
                                                                           if (cel) 
                                                                          { 
                                                                          cel_re = new RegExp("^(thead|tcat)(_collapsed)$"); 
                                                                          cel.className = cel.className.replace(cel_re, '$1'); 
                                                                          }
                                                                           } 
                                                                           else { obj.style.display = "none"; 
                                                                           save_collapsed(objid, true); 
                                                                           if (img) 
                                                                           { 
                                                                           img_re = new RegExp("\\.gif$");
                                                                            img.src = img.src.replace(img_re, '_collapsed.gif');
                                                                             } 
                                                                             if (cel) 
                                                                             { cel_re = new RegExp("^(thead|tcat)$");
                                                                              cel.className = cel.className.replace(cel_re, '$1_collapsed');
                                                                               }
                                                                                } 
                                                                                return false;
                                                                                } 
                                                                                function save_collapsed(objid, addcollapsed) 
                                                                                { 
                                                                                var collapsed = fetch_cookie("vbulletin_collapse");
                                                                                 var tmp = new Array(); 
                                                                                 if (collapsed != null) 
                                                                                 { 
                                                                                 collapsed = collapsed.split("\n"); 
                                                                                 for (i in collapsed) 
                                                                                 { 
                                                                                 if (collapsed[i] != objid && collapsed[i] != "") 
                                                                                 { 
                                                                                 tmp[tmp.length] = collapsed[i]; 
                                                                                 }
                                                                                  } 
                                                                                  } 
                                                                                  if (addcollapsed)
                                                                                  {
                                                                                   tmp[tmp.length] = objid;
                                                                                   } 
                                                                                   expires = new Date(); expires.setTime(expires.getTime() + (1000 * 86400 * 365)); 
                                                                                   set_cookie("vbulletin_collapse", tmp.join("\n"), expires);
                                                                                    } 
                                                                                    function vbmenu_register(controlid, nowrite, datefield) 
                                                                                    { 
                                                                                    if (vbmenu_usepopups) 
                                                                                    { 
                                                                                    vbmenu_doregister(controlid, nowrite, datefield);
                                                                                     }
                                                                                      }
                                                                                       function activecells_mouseover(e) 
                                                                                       { 
                                                                                       this.className = this.swapclass; if (is_ie) 
                                                                                       { 
                                                                                       this.style.cursor = "hand"; 
                                                                                       } 
                                                                                       else 
                                                                                       { 
                                                                                       this.style.cursor = "pointer"; 
                                                                                       } 
                                                                                       return true; 
                                                                                       } 
                                                                                       function activecells_mouseout(e) 
                                                                                       { 
                                                                                       this.className = this.origclass; 
                                                                                       this.style.cursor = "default"; 
                                                                                       return true; 
                                                                                       } 
                                                                                       function activecells_click(e)
                                                                                        { 
                                                                                        this.className = this.origclass; 
                                                                                        var script = '';
                                                                                         if (r = this.id.match(/^([a-z]{1})([0-9]+)$/)) 
                                                                                         { 
                                                                                         switch (r[1]) 
                                                                                         { 
                                                                                         case "u": 
                                                                                         script = "member.php?" + SESSIONURL + "u="; 
                                                                                         break; 
                                                                                         case "f":
                                                                                         script = "forumdisplay.php?" + SESSIONURL + "f=";
                                                                                         break; 
                                                                                         case "t": 
                                                                                         script = "showthread.php?" + SESSIONURL + "t="; 
                                                                                         break; case "p":
                                                                                          script = "showthread.php?" + SESSIONURL + "p="; 
                                                                                          break; case "m": script = "private.php?" + SESSIONURL + "pmid="; 
                                                                                          break;
                                                                                           default: 
                                                                                           return; 
                                                                                           } 
                                                                                           window.location = script + r[2]; 
                                                                                           }
                                                                                            }
                                                                                             function vBulletin_init() 
                                                                                             { 
                                                                                             if (is_webtv) 
                                                                                             { 
                                                                                             return true; 
                                                                                             } 
                                                                                             var imgs = null; 
                                                                                             switch (vbDOMtype) 
                                                                                             { 
                                                                                             case "std": 
                                                                                             imgs = document.getElementsByTagName("img"); 
                                                                                             break; 
                                                                                             case "ie4": 
                                                                                             imgs = document.all.tags("img"); 
                                                                                             break; 
                                                                                             default: 
                                                                                             imgs = false; 
                                                                                             break;
                                                                                              }
                                                                                               if (imgs) 
                                                                                               { 
                                                                                               for (var i = 0; i < imgs.length; i++) 
                                                                                               { 
                                                                                               if (!imgs[i].title && imgs[i].alt != "") 
                                                                                               { 
                                                                                               imgs[i].title = imgs[i].alt; 
                                                                                               } 
                                                                                               } 
                                                                                               } 
                                                                                               if (vbmenu_usepopups && vbmenu_registered.length > 0) 
                                                                                               { 
                                                                                               for (i in vbmenu_registered) 
                                                                                               { vbmenu_init(vbmenu_registered[i]); 
                                                                                               } 
                                                                                               document.onclick = vbmenu_close; 
                                                                                               } 
                                                                                               return true; 
                                                                                               }
                                                                                                function activecells_init() 
                                                                                                { if (is_webtv || is_opera) 
                                                                                                { 
                                                                                                return; 
                                                                                                } 
                                                                                                tds = document.getElementsByTagName("td"); 
                                                                                                for (var i = 0; i < tds.length; i++) 
                                                                                                { 
                                                                                                switch (tds[i].className) 
                                                                                                { 
                                                                                                case "alt1Active":
                                                                                                 case "alt2Active": 
                                                                                                 { 
                                                                                                 tds[i].origclass = tds[i].className; 
                                                                                                 tds[i].swapclass = iif(tds[i].className == "alt1Active", "alt2Active", "alt1Active"); 
                                                                                                 tds[i].onmouseover = activecells_mouseover; 
                                                                                                 tds[i].onmouseout = activecells_mouseout;
                                                                                                  tds[i].onclick = activecells_click; } break; 
                                                                                                  } 
                                                                                                  } 
                                                                                                  }
