﻿function ew_UpdateOpt(obj, object_value_array, parent_obj) { 
	var i, j, lo;
	var arValue = [];
	if (obj.options) {
		for (i=0; i<obj.options.length; i++) {
			if (obj.options[i].selected)
				arValue[arValue.length] = obj.options[i].value;
		}
	} else {
		arValue[arValue.length] = obj.value;
	}
	lo = (obj.type == "select-multiple") ? 0 : 1;
	for (i=obj.length-1; i>=lo; i--) {
		obj.options[i] = null;
	}
	if (parent_obj.options) {
		for (i=0; i<parent_obj.options.length; i++) {
			if (parent_obj.options[i].selected) { 
				for (j=0; j<object_value_array.length; j=j+4) {
					if (object_value_array[j+3].toUpperCase() == parent_obj.options[i].value.toUpperCase()) {
						ew_NewOpt(obj, object_value_array[j], object_value_array[j+1], object_value_array[j+2]); 
					}
				}
			}
		}
	} else {
		for (j=0; j<object_value_array.length; j=j+4) {
			if (object_value_array[j+3].toUpperCase() == parent_obj.value.toUpperCase()) {
				ew_NewOpt(obj, object_value_array[j], object_value_array[j+1], object_value_array[j+2]);
			}
		}
	}
	ew_SelectOpt(obj, arValue);
}
