(function() {

    var IEFixes = function() {
       this.body = document.getElementById('body');
    };
    IEFixes.prototype = {
       headings: function() {
           var h2s = this.body.getElementsByTagName('h2');
           var n = h2s.length;
           while (n--) {
               if (!h2s[n].id) continue;
               this.articleHeading(h2s[n]);
               this.articleDate(h2s[n].nextSibling);
           }

           var listen = document.getElementById('listening');
           if (listen) {
               this.listening(listen.nextSibling);
           }
           var hang = document.getElementById('hangouts');
           if (hang) {
               this.hangouts(hang);
           }
           var hang = document.getElementById('of-interest');
           if (hang) {
               this.interest(hang);
           }
           var misc = document.getElementById('misc');
           if (misc) {
               with (misc.style) {
                   marginLeft = '27px';
               }
           }

           var header = document.getElementById('header');
           if (header) {
               var links = header.getElementsByTagName('a');
               var n = links.length;
               while (n--) {
                   links[n].style.fontWeight = 'bold';
               }
               var list = header.getElementsByTagName('ul');
               list[0].style.paddingLeft = '50px';
           }
       },
       articleHeading: function(obj) {
           with (obj.style) {
               textIndent = '-9999px';
           }
       },
       articleDate: function(obj) {
           with (obj.style) {
               styleFloat = 'left';
               margin = '3px 5px 0 0'; 
               padding = '5px 10px 0';
               background = 'url(/css/images/date_bg.jpg) no-repeat 0 0';
           }
       },
       listening: function(obj) {
           with (obj.style) {
               width = '450px';
               margin = '0 0 0 15px'; 
               padding = '0';
           }
           var items = obj.getElementsByTagName('li');
           var n = items.length;
           while (n--) {
               with (items[n].style) {
                   styleFloat = 'left';
                   padding = '7px 2px 2px';
                   margin = '10px 2px';
               }
           }
       },
       hangouts: function(obj) {
           with (obj.style) {
               clear = 'both';
               styleFloat = 'none';
               margin = '5px 0 0 0';
           }

           obj = obj.nextSibling;
           with (obj.style) {
               clear = 'both';
               styleFloat = 'none';
               margin = '0 0 0 20px';
           }
       },
       interest: function(obj) {
           with (obj.style) {
               clear = 'both';
               styleFloat = 'none';
               margin = '5px 0 0 10px';
           }

           obj = obj.nextSibling;
           with (obj.style) {
               styleFloat = 'none';
               clear = 'both';
               margin = '0 0 0 20px';
           }
       },

       forms: function() {
           var textareas = document.getElementsByTagName('textarea');
           var n = textareas.length;
           while (n--) {
               this.fieldStyle(textareas[n]);
           }
           var inputs = document.getElementsByTagName('input');
           var n = inputs.length;
           while (n--) {
               if (inputs[n].type && inputs[n].type.toLowerCase() == 'text') {
                   this.fieldStyle(inputs[n]);
               } else if (inputs[n].name && inputs[n].name.toLowerCase() == 'post_comment' && inputs[n].value.toLowerCase() == 'preview comment') {
                   with (inputs[n].style) {
                       marginLeft = '120px';
                   }
               }
               
           }
       },
       fieldStyle: function(obj) {
               with (obj.style) {
                   margin = '3px';
                   padding = '2px';
                   border = '2px solid #ED4590';
                   font = '1em/1.5 arial,helvetica,sans-serif';
                   width = '300px';
                   background = '#fff url(images/text_bg.gif)';
                   color = '#666';
               }
       }
    };

    var init = function() {
        var fix = new IEFixes();
        fix.headings();
        fix.forms();
    };

    if (!window.opera && window.attachEvent) {
        window.attachEvent('onload', init);
    }
    

})();