home *** CD-ROM | disk | FTP | other *** search
/ FCE Gold Plus / GOLD.iso / pc / shell.swf / scripts / __Packages / com / handler / TestSelectHandler.as < prev   
Text File  |  2007-10-16  |  6KB  |  190 lines

  1. class com.handler.TestSelectHandler
  2. {
  3.    function TestSelectHandler()
  4.    {
  5.       var _loc1_ = this;
  6.       _loc1_.c_hMap = new com.util.HashMap();
  7.       _loc1_.c_arrFileNames = [];
  8.       _loc1_.c_arrRecordFileNames = [];
  9.       _loc1_.c_iCounter = 0;
  10.    }
  11.    function startProcess(_strObjectName, _objRecordXML)
  12.    {
  13.       var _loc3_ = this;
  14.       _loc3_.c_objRecordXML = _objRecordXML;
  15.       var objData;
  16.       var objTest = "";
  17.       objData = com.controller.UICoordinator.getInstance().getObjectManagerInstance().getObject(_strObjectName);
  18.       objTest = _loc3_.c_hMap["get"]("objTest");
  19.       var _loc2_ = _loc3_.c_hMap.getKeys();
  20.       var bln = false;
  21.       var _loc1_ = 1;
  22.       while(_loc1_ <= _loc2_.length)
  23.       {
  24.          if("objTest" == _loc2_[_loc1_ - 1])
  25.          {
  26.             bln = true;
  27.             break;
  28.          }
  29.          _loc1_ = _loc1_ + 1;
  30.       }
  31.       if(bln == false)
  32.       {
  33.          _loc3_.c_hMap.put("objTest",objData);
  34.       }
  35.       if(delete objData)
  36.       {
  37.       }
  38.       _loc3_.getFileNames(objData);
  39.       var strFileName = _loc3_.getFilenameatIndex(_loc3_.c_iCounter);
  40.       _loc3_.c_strFileName = strFileName;
  41.       _loc3_.loadScoreXML(_loc3_.c_strFileName,0);
  42.    }
  43.    function loadScoreXML(_strFileName, _iIndex)
  44.    {
  45.       var _loc3_ = this;
  46.       _level101.txt_Trace.text += "\n LEngth::&&" + _loc3_.c_objRecordXML.record.testname.length;
  47.       var strtemp = _loc3_.c_strFileName + "_s";
  48.       var _loc2_ = com.controller.UICoordinator.getInstance().convertToASCII(strtemp.toString()) + ".xml";
  49.       _loc3_.c_arrRecordFileNames = _loc3_.c_objRecordXML.record.testname;
  50.       if(_loc3_.c_objRecordXML.record.testname.length > 1)
  51.       {
  52.          var _loc1_ = 0;
  53.          while(true)
  54.          {
  55.             if(_loc1_ < _loc3_.c_objRecordXML.record.testname.length)
  56.             {
  57.                strRecordXML = _loc3_.c_objRecordXML.record.testname[_loc1_].data;
  58.                if(_loc2_ == strRecordXML)
  59.                {
  60.                   _level101.txt_Trace.text += "\n greater  -- " + _loc2_ + "::";
  61.                   com.controller.UICoordinator.getInstance().doAction("LoadScore",_loc2_);
  62.                   break;
  63.                }
  64.                continue;
  65.             }
  66.          }
  67.       }
  68.       var strRecordXML = _loc3_.c_objRecordXML.record.testname.data;
  69.       if(_loc2_ == strRecordXML)
  70.       {
  71.          _level101.txt_Trace.text += "\n less -- " + _loc2_ + "::";
  72.          com.controller.UICoordinator.getInstance().doAction("LoadScore",_loc2_);
  73.       }
  74.       else
  75.       {
  76.          addr173:
  77.          _loc3_.getScore("NOXML");
  78.       }
  79.       ┬º┬ºgoto(addr173);
  80.    }
  81.    function getFilenameatIndex(iCount)
  82.    {
  83.       return this.c_arrFileNames[iCount];
  84.    }
  85.    function incrementCounter()
  86.    {
  87.       this.c_iCounter = this.c_iCounter + 1;
  88.    }
  89.    function getScore(strScreenName)
  90.    {
  91.       var _loc1_ = this;
  92.       var _loc2_ = undefined;
  93.       if("NOXML" != strScreenName)
  94.       {
  95.          _loc2_ = com.controller.UICoordinator.getInstance().getObjectManagerInstance().getObject("ScoreXML");
  96.          _level101.txt_Trace.text += "\n DATA DATA DATA" + _loc2_ + "    " + _loc1_.c_strFileName;
  97.          _loc1_.addScoreObject(_loc1_.c_strFileName,_loc2_);
  98.       }
  99.       _loc1_.incrementCounter();
  100.       var _loc3_ = _loc1_.getFilenameatIndex(_loc1_.c_iCounter);
  101.       _loc1_.c_strFileName = _loc3_;
  102.       if(_loc1_.c_iCounter <= _loc1_.c_arrFileNames.length)
  103.       {
  104.          _loc1_.loadScoreXML(_loc1_.c_strFileName,_loc1_.c_iCounter);
  105.       }
  106.       else
  107.       {
  108.          com.controller.UICoordinator.getInstance().getScreenFactoryInstance().showScreen("TestSelect",_loc1_.c_hMap,_loc1_,true);
  109.       }
  110.    }
  111.    function getNumberofTests(objTestData)
  112.    {
  113.       var _loc1_ = objTestData;
  114.       var _loc2_ = 0;
  115.       if(_loc1_ != "")
  116.       {
  117.          _loc2_ = _loc1_.length;
  118.          return _loc2_;
  119.       }
  120.    }
  121.    function getNumberofSkills(objTest)
  122.    {
  123.       var _loc1_ = 0;
  124.       if(objTest != "")
  125.       {
  126.          _loc1_ = objTest.skill.length;
  127.          return _loc1_;
  128.       }
  129.    }
  130.    function getFileNames(objData)
  131.    {
  132.       var objTests = objData.tests.test;
  133.       var iNumberofTests = this.getNumberofTests(objTests);
  134.       if(iNumberofTests == undefined)
  135.       {
  136.          iNumberofTests = 1;
  137.          objTests[0] = objData.tests.Test;
  138.       }
  139.       var struserName = com.controller.UICoordinator.getInstance().userName;
  140.       var arrFileNames = [];
  141.       var _loc3_ = 0;
  142.       var i = 0;
  143.       while(i < iNumberofTests)
  144.       {
  145.          var objTest = objTests[i];
  146.          var strTestTitle = objTest.attributes.title;
  147.          var iTotalSkills = this.getNumberofSkills(objTest);
  148.          var _loc2_ = 1;
  149.          while(_loc2_ <= iTotalSkills)
  150.          {
  151.             var _loc1_ = objTest.skill[_loc2_ - 1].attributes.name;
  152.             if(_loc1_.toUpperCase() == "Reading".toUpperCase())
  153.             {
  154.                _loc1_ = "R";
  155.             }
  156.             else if(_loc1_.toUpperCase() == "Writing".toUpperCase())
  157.             {
  158.                _loc1_ = "W";
  159.             }
  160.             else if(_loc1_.toUpperCase() == "Listening".toUpperCase())
  161.             {
  162.                _loc1_ = "L";
  163.             }
  164.             else if(_loc1_.toUpperCase() == "Use of English".toUpperCase())
  165.             {
  166.                _loc1_ = "UOE";
  167.             }
  168.             var strTestTitle = strTestTitle.split(" ").join("");
  169.             var strFileName = struserName + _loc1_ + strTestTitle;
  170.             this.c_arrFileNames[_loc3_] = strFileName;
  171.             _loc3_ += 1;
  172.             _loc2_ = _loc2_ + 1;
  173.          }
  174.          i++;
  175.       }
  176.       return this.c_arrFileNames;
  177.    }
  178.    function addScoreObject(strFileName, objScoreData)
  179.    {
  180.       if(this.c_hMap["get"]() != strFileName)
  181.       {
  182.          this.c_hMap.put(strFileName,objScoreData);
  183.       }
  184.    }
  185.    function onProcessComplete(_strProcessName, _objData)
  186.    {
  187.       com.controller.UICoordinator.getInstance().doAction(_strProcessName,_objData);
  188.    }
  189. }
  190.