//var error_text='Не заполнено';
//var error_text='Requared fields are not fiiled';
//var reg_text=new RegExp(error_text);
var current_img,undefined;
var input=['name','company','email','message'];
var mail_check=new RegExp(/^(\w+[\w_-]*\.*)*[\w]+@[a-z0-9]+([a-z0-9-]*[a-z0-9]+)*\.[a-z]{2,}$/);
//var host=new RegExp(location.hostname.replace(/^(www|ru|eng)\./,''));

var host=new RegExp('roelcapital');
var mail=new RegExp('^mailto:');
var feed=new RegExp('\/(feedback|resume)\/$');
var title_clone,last_title,body=document.documentElement||document.body,slide_time=300;
var default_title='Ссылка откроется в новом окне';
var feedback_title='Нажмите, чтобы открыть форму';
var mail_title='Отправить письмо';
var title=document.createElement('div');
title.id='title';
/*
document.onclick=function(e){
  e=e||event;
  var target=e.target||e.srcElement;
  var parent_li=target;
  while(parent_li.parentNode&&parent_li.tagName!='LI')parent_li=parent_li.parentNode;
  if(parent_li.parentNode&&parent_li.parentNode.id=='menu'&&target.tagName=='SPAN'&&parent_li.getElementsByTagName('ul')[0]){
    if(parent_li.className=='on')parent_li.className='';
    else parent_li.className='on';
  }
}
*/

function addHandler(element,event,action,param){
  if(document.addEventListener)element.addEventListener(event,action,param);
  else if(document.attachEvent)element.attachEvent('on'+event,action);
}

function removeHandler(element,event,action,param){
  if(document.addEventListener)element.removeEventListener(event,action,param);
  else if(document.attachEvent)element.detachEvent('on'+event,action);
}

function addClass(element,name,flag){
  if(flag)element.className=name;
  else element.className+=' '+name;
}

function removeClass(element,name){
  if(name){
    var sentence=new RegExp('\\s*\\b'+name+'\\b','g');
    element.className=element.className.replace(sentence,'');
  }
  else element.className='';
}

function cancelEvent(e){
  if(e.preventDefault)e.preventDefault();
  else e.returnValue=false;
}

function stopEvent(e){
  if(e.stopPropagation)e.stopPropagation();
  else e.cancelBubble=true;
}

function check_parent(e,parent){
  while(e.parentNode&&e!=parent)e=e.parentNode;
  return e==parent?true:false;
}

function popup(e){
  var new_window=window.open(e.href,'',parameters());
  new_window.focus();
}
function img(e){
  current_img=e.href;
  var new_window=window.open('/popup/index.html','',parameters(1,740));
  new_window.focus();
}
function parameters(w,h){
  var screen_width=screen.availWidth;
  var screen_height=screen.availHeight;
  var my_width=(w&&w==1)?screen_width:w?w:520;
  var my_height=(h&&h==1)?screen_height:h?h:680;
  var my_left=screen_width>my_width?(screen_width-my_width)/2:0;
  var my_top=screen_height>my_height?(screen_height-my_height)/2:0;
  return 'width='+my_width+',height='+my_height+',top='+my_top+',left='+my_left+',scrollbars=1';
}

addHandler(window,'load',window_load,false);
addHandler(document,'mouseover',mouse_over,false);

function window_load(){
  var path='main';
  if(document.getElementById('flash'))document.getElementById('flash').innerHTML='<object type="application/x-shockwave-flash" data="/themes/roelcapital/img/'+path+'/top.swf" width="100%" height="205"><param name="movie" value="/themes/roelcapital/img/'+path+'/top.swf"><param name="menu" value="false"></object>';
  if(document.feedback){
    if(document.feedback.theme){
      document.feedback.theme.onchange=function(){
        if(this.options[this.options.selectedIndex].value!=0)addClass(document.getElementById('add'),'none');
        else{
          removeClass(document.getElementById('add'),'none');
          document.getElementById('add').getElementsByTagName('input')[0].focus();
        }
      }
      if(document.feedback.theme.value!=0)addClass(document.getElementById('add'),'none');
    }
    document.feedback.onsubmit=check_form;
    /*for(var i=0;input[i];i++){
      var element=document.feedback[input[i]];
      if(element){
        element.onfocus=focus_error;
        element.onblur=blur_error;
      }
    }*/
  }
}
function check_form(){
  var flag=true;
  for(var i=0;input[i];i++){
    var element=this[input[i]];
    if(element.value==''){
      addClass(element.parentNode,'error');
      flag=false;
    }
    else{
      if(/mail/.test(element.name)){
        if(!mail_check.test(element.value)){
          addClass(element.parentNode,'error');
          flag=false;
        }
      }
      else removeClass(element.parentNode);
    }
  }
  if(!flag)removeClass(document.getElementById('error'),'none');
  return flag;
}

function mouse_over(e){
  e=e||event;
  cancelEvent(e);
  var target=e.target||e.srcElement;
  if(!check_parent(target,title_clone)){
    remove_event();
    if(target.tagName=='IMG'&&/logo\.gif/.test(target.src))target.parentNode.title='';
    while(target.parentNode&&target.tagName!='A')target=target.parentNode;
    if(target.tagName=='A'&&target.title!=''){
      target.title2=target.title;
      target.title='';
    }
    else remove_event();
    if(check_element(target))add_event(e);
  }
}

function check_element(target){
  if(target.tagName=='A'){
    if(target.title2&&target.title2!=''){
      title.innerHTML=target.title2;
      return true;
    }
    else if(mail.test(target.href)){
      title.innerHTML=mail_title;
      return true;
    }
    else if(feed.test(target.href)){
      title.innerHTML=feedback_title;
      return true;
    }
    else if(!host.test(target.href)){
      title.innerHTML=default_title;
      target.target='_blank';
      return true;
    }
    return false;
  }
  else return false;
}
function add_event(e){
  add_element(e);
  addHandler(document,'mousemove',element_move,false);
}
function remove_event(e){
  remove_element(e);
  removeHandler(document,'mousemove',element_move,false);
}
function add_element(e){
  title_clone=document.body.appendChild(title.cloneNode(true));
  title_clone.left=body.scrollLeft+2;
  title_clone.top=body.scrollTop-5;
  element_position(e);
}
function remove_element(e){
  if(title_clone&&title_clone.parentNode)title_clone.parentNode.removeChild(title_clone);
  title_clone=undefined;
}
function element_position(e){
  title_clone.style.left=(e.clientX+title_clone.left)+'px';
  title_clone.style.top=(e.clientY+title_clone.top-title_clone.offsetHeight)+'px';
}
function element_move(e){
  stopEvent(e);
  element_position(e);
}
/*
function focus_error(){
  if(this.value!=''&&reg_text.test(this.value)){
    this.parentNode.className='';
    this.value='';
  }
}
function blur_error(){
  if(reg_text.test(this.value)||this.value==''){
    this.parentNode.className='error';
    this.value=error_text;
  }
  if(/mail/.test(this.name)){
    if(!mail_check.test(this.value)){
      this.parentNode.className='error';
    }
    else this.parentNode.className='';
  }
}
*/