
// ****************************************************
var toggleQtyOpts = function(elm,itemid){
  if( !itemid ) return;
  var qty = parseInt( $(elm).getValue().replace(/[^\d]+/,'') );
  if( isNaN(qty) ) qty = 1;
  var tbl = $('price_tbl_'+itemid);
  var fld = tbl.select('input[id^=qty_data]');
  var fldData;
  for(var i=0;i<fld.length;i++)
    if( typeof fld[i]._data == 'undefined' ){
      fldData = unescape( fld[i].getValue() );
      fld[i]._data = fldData.evalJSON();
      fld[i]._data.set = i;
    }
  elm.value = qty;
  elm._data = null;
  for(var i=0;i<fld.length;i++)
    fld[i].up('tr').removeClassName('selected');
  for(var i=0;i<fld.length;i++){
    if( fld[i]._data.qty_start == 0 && fld[i]._data.qty_stop == 0 ){
      elm._data = fld[i]._data;
    } else if( fld[i]._data.qty_start == -1 && fld[i]._data.qty_stop == qty ){
      elm._data = fld[i]._data;
      break;
    } else if( (fld[i]._data.qty_start > 0 && fld[i]._data.qty_start <= qty) && (fld[i]._data.qty_stop < 0 || fld[i]._data.qty_stop >= qty) ){
      elm._data = fld[i]._data;
      break;
    }
  }
  if( elm._data ){
    fld[ elm._data.set ].up('tr').addClassName('selected');
    elm.style.border = '2px solid #009900';
  } else
    elm.style.border = '2px solid #990000';
};

// ****************************************************
var toggleQtyOpts_out = function(elm,itemid){
  if( !itemid ) return;
  var qty = parseInt( $(elm).getValue().replace(/[^\d]+/,'') );
  if( elm._data == null ){
    elm.value = 0;
    alert('Please Select a Valid Quantity Amount');
  }
  elm.style.border = 'auto';
}

// ****************************************************
var toggleQtyOpts_012109 = function(elm,chk){
  if(Object.isString(elm)){
    $(elm).select('tbody tr').each(function(e){
      e.observe('click',function(){
        this.down('input[type=text],input[type=radio]').click();
        });
      });
    toggleQtyOpts( $(elm).down('input[type=text],input[type=radio]') );
    return;
  } if( Object.isUndefined(elm) )
    return;
  elm = $(elm);
  if( !Object.isElement(elm) )
    return false;
  if(chk){
    var min = parseInt($(elm).readAttribute('min_val')),
        max = parseInt($(elm).readAttribute('max_val')),
        val = parseInt($(elm).getValue());
    if( min == max && max == 0 ) return;
    if( min > val ) val = min;
    if( max < val ) val = max;
    $(elm).value = val;
    return;
  }
  var qFds = $(elm).upOr('table').select('input[type=text],input[type=radio]');
  var iRad = (elm.readAttribute('type') == 'radio');
  qFds.each(function(e){
    if(iRad){
      if(e.readAttribute('type')=='text')
        e.value = '';
    } else {
      if(e.readAttribute('type')=='radio')
        e.checked = false;
      else if(elm != e)
        e.value = '';
    }
    e.up('tr').removeClassName('selected');
  });
  elm.up('tr').addClassName('selected');
};
