alert("Call"); 
	evaluate: function (ioThisActivity)	{		// Clear previous evaluation state -- nothing should change due to rollup.		this.mIsCompleted = false;		this.mIsIncomplete = false;		this.mIsSatisfied = false;		this.mIsNotSatisfied = false;				// This method implements part of RB.1.5				// Evaluate all defined rollup rules for this activity.		// Make sure there is a legal target and a set of children. 		alert("Call");		if (ioThisActivity != null)		{			if (ioThisActivity.getChildren(false) != null)			{				// Step 3.1 -- apply the Measure Rollup Process				this.applyMeasureRollup(ioThisActivity);								var satisfiedRule = false;				var completedRule = false;								if (this.mRollupRules != null)				{					// Confirm at least one rule is defined for both sets --					//  Complete/Incomplete and Satisfied/Not Satisfied					for (var i = 0; i < this.mRollupRules.length; i++)					{						var rule = this.mRollupRules[i];												if (rule.mAction == ROLLUP_ACTION_SATISFIED ||							rule.mAction == ROLLUP_ACTION_NOTSATISFIED)						{							satisfiedRule = true;						}												if (rule.mAction == ROLLUP_ACTION_COMPLETED ||							rule.mAction == ROLLUP_ACTION_INCOMPLETE)						{							completedRule = true;						}					}				}								// If no satisfied rule is defined, use default objective rollup				if (!satisfiedRule)				{					if (this.mRollupRules == null )					{						this.mRollupRules = new Array();					}									// Create default Not Satisfied rule					var set = new SeqConditionSet(true);					var cond = new SeqCondition();					var rule = new SeqRollupRule();										set.mCombination = COMBINATION_ANY;					set.mConditions = new Array();										cond.mCondition = ATTEMPTED;					set.mConditions[0] = cond;										cond = new SeqCondition();					cond.mCondition = SATISFIED;					cond.mNot = true;					set.mConditions[1] = cond;										rule.mAction = ROLLUP_ACTION_NOTSATISFIED;					rule.mConditions = set;										// Add the default Not Satisfied rule to the set					this.mRollupRules[this.mRollupRules.length] = rule;										// Create default Satisfied rule					rule = new SeqRollupRule();					set = new SeqConditionSet(true);					cond = new SeqCondition();										set.mCombination = COMBINATION_ALL;					cond.mCondition = SATISFIED;					set.mConditions = new Array();					set.mConditions[0] = cond;										rule.mAction = ROLLUP_ACTION_SATISFIED;					rule.mConditions = set;										// Add the default Satisfied rule to the set					this.mRollupRules[this.mRollupRules.length] = rule;				}								// If no completion rule is defined, use default completion rollup				if (!completedRule)				{					if (this.mRollupRules == null)					{						this.mRollupRules = new Array();					}										// Create default Incomplete rule					var set = new SeqConditionSet(true);					var cond = new SeqCondition();					var rule = new SeqRollupRule();										set.mCombination = COMBINATION_ANY;					set.mConditions = new Array();										cond.mCondition = ATTEMPTED;					set.mConditions[0] = cond;										cond = new SeqCondition();					cond.mCondition = COMPLETED;					cond.mNot = true;					set.mConditions[1] = cond;										rule.mAction = ROLLUP_ACTION_INCOMPLETE;					rule.mConditions = set;										// Add the default Incomplete rule to the set					this.mRollupRules[this.mRollupRules.length] = rule;										// Create default Completion rule					rule = new SeqRollupRule();					set = new SeqConditionSet(true);					cond = new SeqCondition();										set.mCombination = COMBINATION_ALL;					cond.mCondition = COMPLETED;					set.mConditions = new Array();					set.mConditions[0] = cond;										rule = new SeqRollupRule();					rule.mAction = ROLLUP_ACTION_COMPLETED;					rule.mConditions = set;										// Add the default Completion rule to the set					this.mRollupRules[this.mRollupRules.length] = rule;				}								// Evaluate all rollup rules.				for (var i = 0; i < this.mRollupRules.length; i++)				{					var rule = this.mRollupRules[i];					var result = rule.evaluate(ioThisActivity.getChildren(false));										// Track state changes					switch (result)					{						case ROLLUP_ACTION_NOCHANGE:							break;												case ROLLUP_ACTION_SATISFIED:							this.mIsSatisfied = true;							break;												case ROLLUP_ACTION_NOTSATISFIED:							this.mIsNotSatisfied = true;							break;												case ROLLUP_ACTION_COMPLETED:							this.mIsCompleted = true;							break;												case ROLLUP_ACTION_INCOMPLETE:							this.mIsIncomplete = true;							break;												default:							break;					}				}								// If a measure threshold exists, it was already used to determine				// the activity's status.  Otherwise, use the results of the rollup				if (!ioThisActivity.getObjSatisfiedByMeasure())				{					if (this.mIsSatisfied)					{						ioThisActivity.setObjSatisfied(TRACK_SATISFIED);					}					else if (this.mIsNotSatisfied)					{						ioThisActivity.setObjSatisfied(TRACK_NOTSATISFIED);					}				}								if (this.mIsCompleted)				{					ioThisActivity.setProgress(TRACK_COMPLETED);				}				else if (this.mIsIncomplete)				{					ioThisActivity.setProgress(TRACK_INCOMPLETE);				}			}		}	},
6251	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/6251/41a8a11bad36a732e8970056ab880d5ace98ed52/SeqRollupRuleset.js/clean/Modules/Scorm2004/scripts/adl2js/SeqRollupRuleset.js