function go(url, target) {
  if (target) { window.open(url, target) }
  else window.location = url;
}

function getElementsByClassName(cl, el) {
var retnode = [];
var myclass = new RegExp('\\b'+cl+'\\b');
var elem = el.getElementsByTagName('*');
for (var i = 0; i < elem.length; i++) {
var classes = elem[i].className;
if (myclass.test(classes)) retnode.push(elem[i]);
}
return retnode;
}

function showTab(tab, tabs_box, item, tabs_panel_id) {
  var tabs_el = document.getElementById(tabs_box);
  var tabs_items = getElementsByClassName('tab_item', tabs_el);
  for (var i = 0; i < tabs_items.length; i++) {
    tabs_items[i].className = tabs_items[i].id==item?'tab_item':'tab_item hidden';
  }
  var tabs_panel = (!tabs_panel_id)?tab.parentNode:document.getElementById(tabs_panel_id);
  if (tabs_panel.className == 'tabs_boxes_panel') {
    var boxes = getElementsByClassName('box', tabs_panel);
    for (i = 0; i < boxes.length; i++) {
      boxes[i].className = boxes[i]==tab.parentNode?'box box_blue':'box box_blue_light';
    }
  } else {
    var tabs = getElementsByClassName(tab.className, tabs_panel);
    for (i = 0; i < tabs.length; i++) {
      tabs[i].className = tabs[i]==tab?'tab tab_selected':'tab';
    }
  }
}
