<!--

function subsTopicsSwitchCreate(subsTopics) {
  this.form = subsTopics;
  this.subsTopicsMem = new Array(subsTopics.elements.length);
  this.subsTopicsMemActive = false;
  
  this.subsIsEmailEmpty = subsIsEmailEmpty;
  this.subsTopicsSave = subsTopicsSave;
  this.subsTopicsLoad = subsTopicsLoad;
  this.subsTopicsReset = subsTopicsReset;
  this.subsTopicsChangeRadio = subsTopicsChangeRadio;
  this.subsTopicsAnySelected = subsTopicsAnySelected;
  this.checkSubsTopicsForm = checkSubsTopicsForm;
}

function subsIsEmailEmpty() {
  if (this.form.subsEmail.value.trim()=="") {
     window.alert("Поле ввода e-mail адреса пусто!");
     this.form.subsEmail.focus();
     return false;
  }
  if (!checkEmail(this.form["name"],"subsEmail","{LABEL_YOUR_EMAIL}")) {
    return false;
  }
  return true;
}

function subsTopicsIsFlag(c) { 
  return c.name.slice(0,10) == "topicFlag["; }

function subsTopicsSave() {
  for (i=this.form.elements.length; i-->0;) {
    if (subsTopicsIsFlag(this.form.elements[i]))
      this.subsTopicsMem[i]= this.form.elements[i].checked; 
  }
  this.subsTopicsMemActive = true;
}

function subsTopicsLoad() {
  if (this.subsTopicsMemActive)
    for (i=this.form.elements.length; i-->0;) {
      if (subsTopicsIsFlag(this.form.elements[i]))
        this.form.elements[i].checked= this.subsTopicsMem[i]; 
    }
}

function subsTopicsReset() {
  for (i=this.form.elements.length; i-->0;) {
    if (subsTopicsIsFlag(this.form.elements[i]))
      this.form.elements[i].checked= false; 
  }
}

function subsTopicsChangeRadio() {
  this.subsTopicsMemActive = false;
  anyChecked= false;
  for (i=this.form.elements.length; i-->0;) {
    if (subsTopicsIsFlag(this.form.elements[i]))
      anyChecked= anyChecked || this.form.elements[i].checked; 
  }
  this.form.subsAllTopics[anyChecked ? 1 : 0].checked= true;    
}

function subsTopicsAnySelected() {
  if (this.form.subsAllTopics[0].checked) return true;
  for (i=this.form.elements.length; i-->0;) {
    if (subsTopicsIsFlag(this.form.elements[i]))
      if (this.form.elements[i].checked)
        return true; 
  }
  alert('Не выбрана ни одна тема подписки!');
  return false;
}

function checkSubsTopicsForm() {
  ret= this.subsIsEmailEmpty();
  if (ret) ret= this.subsTopicsAnySelected();
  return ret;
}

//-->
