var coregHidden = 0;
var coregNoDefaultFields = 0;
var coregField = new Array();

function coregConfig(id,descr,type,name,title,options,values)
{
   var i,item = new Array();
   item[0] = id;
   item[1] = type;
   item[2] = name;
   item[3] = title;
   if(!options) options = '';
   item[4] = options.split(',');
   if(!values) values = '';
   item[5] = values.split(',');
   item[6] = descr;
   coregField[coregField.length] = item;
}

function coregRefresh(form) {
  if(coregHidden) return;
  var obj = document.getElementById('form');
  if(!obj) return;
  var fields = new Array();
  var values = new Array();
  if(!coregNoDefaultFields) {
    values['first_name'] = "";
    values['last_name'] = "";
    values['email'] = "";
  }
  for(var j = 0; j < form.length; j++) {
    switch(form.elements[j].type) {
     case 'select':
     case 'select-one':
        values[form.elements[j].name] = form.elements[j].selectedIndex >= 0 ? form.elements[j].options[form.elements[j].selectedIndex].value : '';
        break;
     case 'text':
        values[form.elements[j].name] = form.elements[j].value;
        break;
    }
  }
  var i,d,j,item,value,text = '';
  for(j = 0; j < form.length; j++) {
    if(form.elements[j].type != "checkbox" || !form.elements[j].checked) continue;
    for(f = 0;f < coregField.length;f++) {
      if(coregField[f][0] == form.elements[j].value) {
        item = coregField[f];
        for(i = 0;i < fields.length;i++) if(fields[i] == item[2]) break;
        if(i != fields.length) continue;
        descr = item[6];
        value = values[item[2]] ? values[item[2]] : '';
        for(y = j+1; y < form.length; y++) {
          if(form.elements[y].type != 'checkbox' || !form.elements[y].checked) continue;
          for(x = 0;x < coregField.length;x++) {
            if(coregField[x][0] == form.elements[y].value && 
               coregField[x][2] == item[2] &&
               coregField[x][6] != '') {
              if(descr != '') descr += '<BR>';
              descr += coregField[x][6];
              break;       
            }
          }
        }
        switch(item[1]) {
         case 'text':
            text += '<tr><td width=18% nowrap><b>'+item[3]+' :</b></td>'+
                    '<td><input size=30 name='+item[2]+' value="'+value+'"></td>'+
                    '<td width=1% nowrap align=right>'+descr+'</td>'+
                    '</tr>';
            break;
         case 'select':
            text += '<tr><td width=18% nowrap><b>'+item[3]+' :</b></td>'+
                    '<td><select name='+item[2]+'>';
            var options = item[4];
            var values = item[5];
            for(i = 0;i < options.length;i++)
              text += '<option value="'+values[i]+'" '+(value == values[i] ? 'selected' : '')+'>'+options[i];
            text += '</select></td>';
            text += '<td width=1% nowrap align=right>'+descr+'</td></tr>';
            break;
        }
        fields[fields.length] = item[2]; 
      }
    }
  }
  if(!coregNoDefaultFields) {
    text = '<tr><td width=18% nowrap><b>First Name :</b></td>'+
           '     <td><input size=30 name=first_name value="'+values['first_name']+'"></td>'+
           '     <td>All Offers</td>'+
           '</tr>'+
           '<tr><td width=18% nowrap><b>Last Name:</b></td>'+
           '    <td><input size=30 name=last_name value="'+values['last_name']+'"></td>'+
           '     <td>All Offers</td>'+
           '</tr>'+
           '<tr><td width=18% nowrap><b>Email :</b></td>'+
           '    <td><input size=30 name=email value="'+values['email']+'"></td>'+
           '     <td>All Offers</td>'+
           '</tr>'+text;
  }
  text = '<tr><th colspan=2><font size=2>Information Required</font></th>'+
         '    <th><font size=2>Offers Required</font></th>'+
         '</tr>' + text;
  text = '<table cellspacing=1 cellpadding=1 width=100% border=0 bgcolor=CFDFF8>'+text+'</table>';
  obj.innerHTML = text;
  return true;
}

function coregSubmit(form)
{
  for(var j = 0; j < form.length; j++) {
    if(form.elements[j].value == "") {
      alert("All fields should be filled");
      return false;
    }
  }
  return true;
}

