//Global JavaScript Document
width = new Array (490,650,800,290,450,800,1024,800,750,400);
height = new Array (420,620,800,340,430,600,768,600,620,140);

function openWindow(name,id,sc) {
         myWin = window.open(name,'','width='+width[id-1]+'; height='+height[id-1]+'; scrollbars='+sc+';  heightmargin:0;')
}
function ChooseLen() {
M = window.document.send.advbody.value.length;
window.document.send.count.value = M;
}

function length(data) {
	return data.length;
}

function IsEmpty(data) {
         if (data.length == 0) return true;
         else return false;
}
function FormTrue_AddLink(f) {
         //if (f.org_name.value.length<3) {
         //      alert ('Пожалуйста запоните поле Название организации');
         //      return false;
         //}
		 if (f.linkEmail.value.length<3) {
                alert('Пожалуйста, заполните поле Email адрес');
                return false;
         }		 
		 if (f.linkURL.value.length<3) {
                alert('Пожалуйста, заполните поле Адрес ресурса');
                return false;
         }
         if (f.linkTitle.value.length<3) {
                     alert('Пожалуйста, заполните поле Название ресурса');
                     return false;
         }
         if (f.linkTitle.value.length>50) {
                     alert('Поле Название ресурса не должно превышать 50 символов');
                     return false;
         }		 
         if (f.linkDescript.value.length<3) {
               alert ('Пожалуйста, заполните поле Описание ресурса');
               return false;
         }
         if (f.linkDescript.value.length>255) {
               alert ('Поле Описание ресурса не должно превышать 255 символов');
               return false;
         } 
         if (f.linkOut.value.length<7) {
               alert ('Пожалуйста, заполните поле URL расположения нашей ссылки');
               return false;
         }
		 
         return true;
}
function FormTrue_AddOrg(f) {
         if (f.org_name.value.length<3) {
               alert ('Пожалуйста, заполните поле Название организации');
               return false;
         }
		 if (f.address.value.length<3) {
                alert('Пожалуйста, заполните поле Адрес организации');
                return false;
         }
         if (f.phones.value.length<4) {
                     alert('Пожалуйста, заполните поле Телефон организации');
                     return false;
         }
         //if (f.emails.value.length<6) {
         //      alert ('Пожалуйста, заполните поле Email организации');
         //      return false;
         //}
         //if (f.descriptions.value.length<6) {
         //      alert ('Пожалуйста, заполните поле Описание деятельности организации');
         //      return false;
         //}		
         if (f.FCKeditor1.value.length>2000) {
               alert ('Поле Описание деятельности организации\nдолжно содержать не более 2000 символов');
               return false;
         }			 
		 
		 var i=0;
		 var s=0;
		 for (i=0; i<f.subitems.length; i++) {
			 if (f.subitems.options[i].selected) s++;
		 }
		 if (s>5) {
			alert("Выделено более 5 разделов!\nПожалуйста, выберите не более 5 разделов!");
			return false;				
		 }
		 if (s==0) {
			alert("Пожалуйста, выберите подраздел для публикации");
			return false;			 
		 }		 
		
         f.submit();
}

function FormTrue_EditOrg(f) {
         //alert("Работает форма");
		 
		 if (f.name.value.length<3) {
               alert ('Пожалуйста, заполните поле Имя');
               return false;
         }

         if (IsEmpty(f.author_type.value)) {
               alert ('Пожалуйста, заполните поле Должность');
               return false;
         }

         if (IsEmpty(f.contact.value)) {
               alert ('Пожалуйста, заполните поле Контактная информация');
               return false;
         }
		 
         f.submit();
}

function FormTrue_AddAdv(f) {
		 
         if (IsEmpty(f.person.value)) {
               alert ("Пожалуйста, заполните поле \nКонтактное лицо");
               return false;
         }	
         if (f.phone.value.length<4) {
               alert ("Пожалуйста, заполните поле \nКонтактный телефон");
               return false;
         }
         if (f.email.value.length<6) {
                     alert("Пожалуйста, заполните поле \nКонтактный Email");
                     return false;
         }
         if (f.advtitle.value.length<3) {
                     alert("Пожалуйста, заполните поле \nЗаголовок объявления");
                     return false;
         }
         if (f.advtitle.value.length>50) {
                     alert("Поле Заголовок объявления\nдолжно содержать меньше 50 символов");
                     return false;
         }		 
         if (f.advbody.value.length < 5) {
                     alert("Пожалуйста, запоните поле \nТекст объявления");
                     return false;
         }		
         if (f.advbody.value.length > 255) {
                     alert("Поле Текст объявления\nдолжно содержать меньше 255 символов");
                     return false;
         }	
		 
		 var i=0;
		 var s=0;
		 for (i=0; i<f.pages.length; i++) {
			 if (f.pages.options[i].selected) s++;
		 }
		 if (s>5) {
			if (f.pubType.options[0].selected) {
			 alert("Выделено более 5 страниц для публикации.\nЭто недопустимо при бесплатной публикации.\nПожалуйста, измените Тариф публикации на СРОЧНЫЙ\nили выберите менее 5 страниц!");
				return false;				
			}		 
		 }
		 if (s==0) {
			alert("Пожалуйста, выберите страницы для публикации");
			return false;			 
		 }

         return true;
}

function FormTrue_OrgForm(f) {
         if (IsEmpty(f.name.value)) {
               alert ('Пожалуйста, заполните поле Имя');
               return false;
         }

         if (IsEmpty(f.mymail.value)) {
               alert ('Пожалуйста, заполните поле Email');
               return false;
         }

         if (IsEmpty(f.message.value)) {
               alert ('Пожалуйста, заполните поле Сообщение');
               return false;
         }
		 
         f.submit();
}

function FormTrue_RegUser(f) {
         if (IsEmpty(f.login.value)) {
               alert ('Пожалуйста, заполните поле Логин');
               return false;
         }

         if (IsEmpty(f.password.value)) {
               alert ('Пожалуйста, заполните поле Пароль');
               return false;
         }

         if (IsEmpty(f.email.value)) {
               alert ('Пожалуйста, заполните поле Электронная почта');
               return false;
         }

         f.submit();
}

		  
		  // Библиотека 
/*===================================================================
 Author: Matt Kruse
 
 View documentation, examples, and source code at:
     http://www.JavascriptToolbox.com/

 NOTICE: You may use this code for any purpose, commercial or
 private, without any further permission from the author. You may
 remove this notice from your final code if you wish, however it is
 appreciated by the author if at least the web site address is kept.

 This code may NOT be distributed for download from script sites, 
 open source CDs or sites, or any other distribution method. If you
 wish you share this code with others, please direct them to the 
 web site above.
 
 Pleae do not link directly to the .js files on the server above. Copy
 the files to your own server for use with your site or webapp.
 ===================================================================*/
var Selectbox = new Object();
Selectbox.$VERSION = 1.0;

Selectbox.hasOptions = function(obj) {
  return (obj!=null && typeof(obj.options)!="undefined" && obj.options!=null);
}

Selectbox.selectUnselectMatchingOptions = function(obj,regex,which,only) {
  if (window.RegExp) {
    if (!this.hasOptions(obj)) { return false; }
    if (typeof(only)=="undefined" || only==null) { var only = false; }
    var re = new RegExp(regex);
    for (var i=0; i<obj.options.length; i++) {
      if (re.test(obj.options[i].text)) {
        obj.options[i].selected = (which=="select");
      }
      else if (only) {
        obj.options[i].selected = (which=="unselect");
      }
    }
    return true;
  }
  return false;
}

Selectbox.selectOptions = function(obj,regex) {
  return this.selectUnselectMatchingOptions(obj,regex,"select",false);
}

Selectbox.selectOnlyOptions = function(obj,regex) {
  return this.selectUnselectMatchingOptions(obj,regex,"select",true);
}

Selectbox.unselectOptions = function(obj,regex) {
  return this.selectUnselectMatchingOptions(obj,regex,"unselect",false);
}

Selectbox.sort = function(obj) {
  var o = new Array();
  if (!this.hasOptions(obj)) { return false; }
  for (var i=0; i<obj.options.length; i++) {
    o[o.length] = new Option( obj.options[i].text, obj.options[i].value, obj.options[i].defaultSelected, obj.options[i].selected) ;
  }
  if (o.length==0) { return true; }
  o = o.sort( 
    function(a,b) { 
      if ((a.text+"") < (b.text+"")) { return -1; }
      if ((a.text+"") > (b.text+"")) { return 1; }
      return 0;
    } 
  );

  for (var i=0; i<o.length; i++) {
    obj.options[i] = new Option(o[i].text, o[i].value, o[i].defaultSelected, o[i].selected);
  }
  return true;
}

Selectbox.selectAllOptions = function(obj) {
  if (!this.hasOptions(obj)) { return false; }
  for (var i=0; i<obj.options.length; i++) {
    obj.options[i].selected = true;
  }
  return true;
}

Selectbox.moveSelectedOptions = function(from,to) {
  if (!this.hasOptions(from)) { return false; }
  // Unselect matching options, if required
  if (arguments.length>3) {
    var regex = arguments[3];
    if (regex != "") {
      if (!this.unselectOptions(from,regex)) {
        return false;
      }
    }
  }
  // Move them over
  for (var i=0; i<from.options.length; i++) {
    var o = from.options[i];
    if (o.selected) {
      if (!this.hasOptions(to)) { 
        var index = 0; 
      } 
      else { 
        var index=to.options.length; 
      }
      to.options[index] = new Option(o.text, o.value, false, false);
    }
  }
  // Delete them from original
  for (var i=(from.options.length-1); i>=0; i--) {
    var o = from.options[i];
    if (o.selected) {
      from.options[i] = null;
    }
  }
  if ((arguments.length<3) || (arguments[2])) {
    this.sort(from);
    this.sort(to);
  }
  from.selectedIndex = -1;
  to.selectedIndex = -1;

  return true;
}

Selectbox.copySelectedOptions = function(from,to) {
  if (!this.hasOptions(from)) { return false; }
  var options = new Object();
  if (this.hasOptions(to)) {
    for (var i=0; i<to.options.length; i++) {
      options[to.options[i].value] = to.options[i].text;
    }
  }
  for (var i=0; i<from.options.length; i++) {
    var o = from.options[i];
    if (o.selected) {
      if (typeof(options[o.value])=="undefined" || options[o.value]==null || options[o.value]!=o.text) {
        if (!this.hasOptions(to)) { 
          var index = 0; 
        } 
        else { 
          var index=to.options.length; 
        }
        to.options[index] = new Option( o.text, o.value, false, false);
      }
    }
  }
  if ((arguments.length<3) || (arguments[2]==true)) {
    this.sort(to);
  }
  from.selectedIndex = -1;
  to.selectedIndex = -1;

  return true;
}

Selectbox.moveAllOptions = function(from,to) {
  this.selectAllOptions(from);
  if (arguments.length==2) {
    this.moveSelectedOptions(from,to);
  }
  else if (arguments.length==3) {
    this.moveSelectedOptions(from,to,arguments[2]);
    }
  else if (arguments.length==4) {
    this.moveSelectedOptions(from,to,arguments[2],arguments[3]);
  }
}

Selectbox.copyAllOptions = function(from,to) {
  this.selectAllOptions(from);
  if (arguments.length==2) {
    this.copySelectedOptions(from,to);
  }
  else if (arguments.length==3) {
    this.copySelectedOptions(from,to,arguments[2]);
  }
}

Selectbox.swapOptions = function(obj,i,j) {
  if (!this.hasOptions(obj)) { return false; }
  var o = obj.options;
  if (i<0 || i>=o.length || j<0 || j>=o.length) { return false; }
  var i_selected = o[i].selected;
  var j_selected = o[j].selected;
  var temp = new Option(o[i].text, o[i].value, o[i].defaultSelected, o[i].selected);
  var temp2= new Option(o[j].text, o[j].value, o[j].defaultSelected, o[j].selected);
  o[i] = temp2;
  o[j] = temp;
  o[i].selected = j_selected;
  o[j].selected = i_selected;
  return true;
}

Selectbox.moveOptionUp = function(obj) {
  if (!this.hasOptions(obj)) { return false; }
  for (i=0; i<obj.options.length; i++) {
    if (obj.options[i].selected) {
      if (i>0 && !obj.options[i-1].selected) {
        this.swapOptions(obj,i,i-1);
        obj.options[i-1].selected = true;
      }
    }
  }
  return true;
}

Selectbox.moveOptionDown = function(obj) {
  if (!this.hasOptions(obj)) { return false; }
  for (i=obj.options.length-1; i>=0; i--) {
    if (obj.options[i].selected) {
      if (i != (obj.options.length-1) && ! obj.options[i+1].selected) {
        this.swapOptions(obj,i,i+1);
        obj.options[i+1].selected = true;
      }
    }
  }
  return true;
}

Selectbox.removeSelectedOptions = function(from) { 
  if (!this.hasOptions(from)) { return false; }
  if (from.type=="select-one" && from.selectedIndex>=0) {
    from.options[from.selectedIndex] = null;
  }
  else {
    for (var i=(from.options.length-1); i>=0; i--) { 
      var o=from.options[i]; 
      if (o.selected) { 
        from.options[i] = null; 
      } 
    }
  }
  from.selectedIndex = -1; 
} 

Selectbox.removeAllOptions = function(from) { 
  if (!this.hasOptions(from)) { return false; }
  for (var i=(from.options.length-1); i>=0; i--) { 
    from.options[i] = null; 
  } 
  from.selectedIndex = -1; 
  return true;
} 

Selectbox.addOption = function(obj,text,value,selected) {
  if (obj!=null && obj.options!=null) {
    obj.options[obj.options.length] = new Option(text, value, false, selected);
  }
}
//Конец библиотеки

