function do_resize() {
  if (DOM.get('mirs_side_bar')) {
    var closed = false;
    var ph = parseInt(DOM.getViewportHeight());
    var pw = parseInt(DOM.getViewportWidth());
    var side_bar_width = parseInt(DOM.getStyle('mirs_side_bar','width'));
    if (side_bar_width >= parseInt(pw/2) || isNaN(side_bar_width)) {
      side_bar_width = 200;
    }
    if (side_bar_width <= 20) {
      DOM.setStyle('mirs_side_bar_content','visibility','hidden');
      DOM.setStyle('mirs_side_bar','overflow','hidden');
      DOM.setStyle('mirs_side_bar','background-color','#F3F3EE');
      DOM.setStyle('toggle_sidebar_button','background-position','-20px -140px');
      DOM.setStyle('toggle_sidebar_button','display','block')
      closed = true;
    }
    else {
      DOM.setStyle('mirs_side_bar_content','visibility','visible');
      DOM.setStyle('mirs_side_bar','overflow','auto');
      DOM.setStyle('mirs_side_bar','background-color','#FFFFFF');
      DOM.setStyle('toggle_sidebar_button','background-position','-20px -160px');
      DOM.setStyle('toggle_sidebar_button','display','block');
    }
    DOM.setStyle('mirs_side_bar','width',side_bar_width + 'px');
    DOM.setStyle('mirs_side_bar','height',(ph-176) + 'px');
    DOM.setStyle('mirs_main','overflow','auto');
    DOM.setStyle('mirs_main','height',(ph-176) + 'px');
    DOM.setStyle('mirs_main','width', (pw - side_bar_width) + 'px');
    DOM.setStyle('mirs_main','left', side_bar_width + 'px');
    COOKIE.setSub('mdk-state','mirs_side_bar_size',side_bar_width + 'px' + '|' + parseInt(DOM.getStyle('mirs_main','width')) + 'px',{ path: '/'});
    adjust_handle();
    DOM.setStyle('toggle_sidebar_button','top',DOM.getStyle('mirs_side_bar','top'));
    if (closed) {
      DOM.setStyle('toggle_sidebar_button','left',(side_bar_width-20) + 'px');
    }
    else {
      DOM.setStyle('toggle_sidebar_button','left',(side_bar_width-20) + 'px');
    }
  }
  if (YAHOO.env.ua.ie < 7 && YAHOO.env.ua.ie) {
    render_portlets();
  }
}
function adjust_handle() {
  var handle = DOM.getLastChildBy(document.getElementById('mirs_main'),function(node) {
  return DOM.hasClass(node,'yui-resize-handle-l');
  });
  if (handle) {
    DOM.setStyle(handle,'top',DOM.get('mirs_main').scrollTop + 'px');
    DOM.setStyle(handle,'left',DOM.get('mirs_main').scrollLeft + 'px');
  }
}
function add_resize_handle() {
    if (DOM.get('mirs_side_bar')) {
      var ph = parseInt(DOM.getViewportHeight());
      var pw = parseInt(DOM.getViewportWidth());
      DOM.setStyle('mirs_side_bar','height',(ph-176) + 'px');
      DOM.setStyle('mirs_main','height',(ph-176) + 'px');
      DOM.setStyle('mirs_side_bar','overflow','auto');
      DOM.setStyle('mirs_main','overflow','auto');
      var mirs_resize_handle = new RESIZE('mirs_main', {proxy:true,handles: ['l']});
      mirs_resize_handle.on('resize', function(ev) {
	  var w = ev.width;
	  var ph = parseInt(DOM.getViewportHeight());
	  var pw = parseInt(DOM.getViewportWidth());
	  DOM.setStyle('mirs_main','height',(ph-176) + 'px');
	  DOM.setStyle('mirs_main', 'left',  (pw - w) + 'px');
	  DOM.setStyle('mirs_main', 'width', w + 'px');
	  DOM.setStyle('mirs_side_bar','width',(pw - w) + 'px');
      });
      mirs_resize_handle.on('proxyResize', function(ev) {
	  var w = ev.width;
	  var ph = parseInt(DOM.getViewportHeight());
	  var pw = parseInt(DOM.getViewportWidth());
	  DOM.setStyle('mirs_main','overflow','hidden');
	  DOM.setStyle('mirs_main','height',(ph-44) + 'px');
      });
      var handle = mirs_resize_handle._handles.l;
      EVENT.on(handle,'click',toggle_sidebar);
      mirs_resize_handle.on('endResize', do_resize);
      EVENT.on('mirs_main','scroll',adjust_handle);
    }
    
    do_resize();
}

function toggle_sidebar() {
  var side_bar_width = parseInt(DOM.getStyle('mirs_side_bar','width'));
  if (side_bar_width <= 20) {
    DOM.setStyle('mirs_side_bar','width','200px');
  }
  else {
    DOM.setStyle('mirs_side_bar','width','20px');
  }
  do_resize();
}

// EVENT.onAvailable('mirs_main',add_resize_handle);
EVENT.on(window,'resize',do_resize);
// EVENT.onDOMReady(add_resize_handle);
