rem: /* don't reset first_load as done in selectProduct.  That's because we want selectProduct to handle the first_load attribute */ 
context: function selectClassification(classfield, product, component, version, milestone) {    /* this is to avoid handling events that occur before the form     * itself is ready, which could happen in buggy browsers.     */    if (!classfield) {        return;    }    /* if this is the first load and nothing is selected, no need to     * merge and sort all components; perl gives it to us sorted.     */    if ((first_load) && (classfield.selectedIndex == -1)) {        first_load = false;        return;    }        /* don't reset first_load as done in selectProduct.  That's because we       want selectProduct to handle the first_load attribute    */    /* - sel keeps the array of classifications we are selected.      * - merging says if it is a full list or just a list of classifications      *   that were added to the current selection.     */    var merging = false;    var sel = Array();    /* if nothing selected, pick all */    var findall = classfield.selectedIndex == -1;    sel = get_selection(classfield, findall, false);    if (!findall) {        /* save sel for the next invocation of selectClassification() */        var tmp = sel;            /* this is an optimization: if we have just added classifications to an         * existing selection, no need to clear the form controls and add          * everybody again; just merge the new ones with the existing          * options.	 */        if ((last_sel.length > 0) && (last_sel.length < sel.length)) {            sel = fake_diff_array(sel, last_sel);            merging = true;        }        last_sel = tmp;    }    /* save original options selected */    var saved_prods = get_selection(product, false, true);    /* do the actual fill/update, reselect originally selected options */    updateSelect(prods, sel, product, merging);    restoreSelection(product, saved_prods);    selectProduct(product, component, version, milestone);}
meta: 9421	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/9421/c95e4cb4ebd2002b5f063a35d614719da901c7c0/productform.js/clean/webtools/bugzilla/js/productform.js