home *** CD-ROM | disk | FTP | other *** search
/ FCE Gold Plus / GOLD.iso / pc / fscommand / linux / main.swf / scripts / __Packages / com / handler / TestSelectHandler.as < prev   
Encoding:
Text File  |  2007-09-06  |  6.0 KB  |  189 lines

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