Index: trunk/webapps/EInotebook/scripts/LoadEvents.js
===================================================================
--- trunk/webapps/EInotebook/scripts/LoadEvents.js	(revision 359)
+++ trunk/webapps/EInotebook/scripts/LoadEvents.js	(revision 361)
@@ -21,66 +21,73 @@
 }
 
+// Parse the entire Incident XML Script file 
+// Extract the Incidents and Events and create lists of each
 function parseXml(response)
 {
-        var parser = new DOMParser();
-        xmlDoc = parser.parseFromString(response,"text/xml");
-        var eventTags = xmlDoc.getElementsByTagName("SCRIPT_EVENT");
+    // Create a parser and grab the high level tag we're interested in
+    var parser = new DOMParser();
+    xmlDoc = parser.parseFromString(response,"text/xml");
+    var eventTags = xmlDoc.getElementsByTagName("SCRIPT_EVENT");
 
-        // Process each event tag
-        for (var i = 0; i < eventTags.length; i++)
+    // Process each SCRIPT_EVENT tag
+    for (var i = 0; i < eventTags.length; i++)
+    {
+        var currEvt = eventTags[i];
+        // local variable declarations
+        var timeFields; var evtTime; var incidentNum; var cadProp; var telProp;
+        var proparray = new Array();
+        var evalarray = new Array();
+        // Process all the children of one event
+        for (var child = 1; child < currEvt.childNodes.length; child++)
         {
-            var currEvt = eventTags[i];
-            // Process all the children of one event
-            var timeFields; var evtTime; var incidentNum; var cadProp; var telProp;
-            var proparray = new Array();
-            var evalarray = new Array();
-            for (var child = 1; child < currEvt.childNodes.length; child++)
+            // Ignore undefined nodes
+            if (currEvt.childNodes[child].localName != undefined)
             {
-                if (currEvt.childNodes[child].localName != undefined)
+                // Determine the tag type and dispatch it for further processing
+                switch(currEvt.childNodes[child].localName)
                 {
-                    switch(currEvt.childNodes[child].localName)
-                    {
-                        case "TIME_INDEX": 
-                            timeFields = currEvt.childNodes[child].textContent.split(":"); 
-                            evtTime = new Time(Number(timeFields[0]), Number(timeFields[1]), Number(timeFields[2]));
-                            break;
-                        case "INCIDENT":
-                            incidentNum = Number(currEvt.childNodes[child].attributes["LogNum"].value); 
-                            break;
-                        case "CAD_DATA": 
-                            var caddata = parseCAD(currEvt.childNodes[child]); 
-                            if (caddata.length > 0)
-                            {
-                                cadProp = new Property("CHP CAD", caddata ); 
-                                proparray.push(cadProp);
-                            }
-                            break;
-                        case "TELEPHONE": 
-                            telProp = new Evaluation("Telephone Conversation", 
-                                     parseTelephone(currEvt.childNodes[child]) );  
-                            evalarray.push(telProp);
-                            break;
-                        case "CHP_RADIO": 
-                            var chpradio = parseCHPradio(currEvt.childNodes[child]); 
-                            if (chpradio.length > 0)
-                            {
-                                cadProp = new Property("CHP RADIO", chpradio ); 
-                                proparray.push(cadProp);
-                            }
-                            break;
-                        case "TMT_RADIO":  break;
-                        case "MAINTENANCE_RADIO": break;
-                        // case *_EVALUATION: break;
+                    case "TIME_INDEX": 
+                        timeFields = currEvt.childNodes[child].textContent.split(":"); 
+                        evtTime = new Time(Number(timeFields[0]), Number(timeFields[1]), Number(timeFields[2]));
+                        break;
+                    case "INCIDENT":
+                        incidentNum = Number(currEvt.childNodes[child].attributes["LogNum"].value); 
+                        break;
+                    case "GENERAL_INFO":  break;
+                    case "CAD_DATA": 
+                        var caddata = parseCAD(currEvt.childNodes[child]); 
+                        if (caddata.length > 0)
+                        {
+                            cadProp = new Property("CHP CAD", caddata ); 
+                            proparray.push(cadProp);
+                        }
+                        break;
+                    case "TELEPHONE": 
+                        telProp = new Evaluation("Telephone Conversation", 
+                                 parseTelephone(currEvt.childNodes[child]) );  
+                        evalarray.push(telProp);
+                        break;
+                    case "CHP_RADIO": 
+                        var chpradio = parseCHPradio(currEvt.childNodes[child]); 
+                        if (chpradio.length > 0)
+                        {
+                            cadProp = new Property("CHP RADIO", chpradio ); 
+                            proparray.push(cadProp);
+                        }
+                        break;
+                    case "TMT_RADIO":  break;
+                    case "MAINTENANCE_RADIO": break;
+                    // case *_EVALUATION: break;
 
-                    }
                 }
             }
-            //console.log(evtTime.format(), incidentNum, proparray.length, evalarray.length);
-            if (incidentNum != undefined)
-            {
-              events.add(new Event(evtTime, incidents.get(incidentNum), new Properties(proparray), 
-                    new Evaluations(evalarray)) );
-            }
         }
+        //console.log(evtTime.format(), incidentNum, proparray.length, evalarray.length);
+        if (incidentNum != undefined)
+        {
+          events.add(new Event(evtTime, incidents.get(incidentNum), new Properties(proparray), 
+                new Evaluations(evalarray)) );
+        }
+    }
 
 }
