home *** CD-ROM | disk | FTP | other *** search
/ FCE Gold Plus / GOLD.iso / pc / xml / Exe_conv.xom < prev    next >
Text File  |  2007-05-23  |  7KB  |  221 lines

  1. global stream outfile
  2. global stream filename
  3. global stream problemfile
  4. global stream unit variable
  5. global stream nav
  6. global counter unitnum
  7. global counter activnum
  8. global counter loop
  9. global counter totalexercisenum
  10. global stream gab variable
  11. global stream modnum
  12. global stream activenum
  13. global stream problem
  14. global stream player variable
  15. global stream section
  16. global stream hwd
  17. global stream sectioncheck
  18. global counter diarynum
  19. global stream playerout
  20. global stream playernum 
  21.  
  22. process
  23. open problemfile as file "problem.txt"
  24. using group "player"
  25.  submit file "Player.xml"
  26. Repeat scan file "dir.lst"
  27.  match " " (ul "Mod" "0"? digit+=>temp2 "-Activ" digit+=>temp3 ".xml")=>temp99
  28.   set modnum to temp2
  29.   set activenum to temp3
  30.   using group "gab"
  31.    submit file (temp99)
  32.  match any
  33. again        
  34. open nav as file "Navigation.xml"
  35. put nav "<?xml version=%"1.0%" encoding=%"iso-8859-1%" ?>%n  <navigation>%n  <folder label=%"Units%">%n" 
  36. set unitnum to 1
  37. repeat
  38.  do when unitnum=1
  39.   put nav "<folder label=%"Unit 1%" title=%"Unit 1%">%n"
  40.   set totalexercisenum to 6
  41.  done
  42.  do when unitnum=2 
  43.   put nav "<folder label=%"Unit 2%" title=%"Unit 2%">%n"
  44.   set totalexercisenum to 6
  45.  done
  46.  do when unitnum=3
  47.   put nav "<folder label=%"Unit 3%" title=%"Unit 3%">%n"
  48.   set totalexercisenum to 6
  49.  done
  50.  do when unitnum=4
  51.   put nav "<folder label=%"Unit 4%" title=%"Unit 4%">%n"
  52.   set totalexercisenum to 6
  53.  done
  54.  do when unitnum=5
  55.   put nav "<folder label=%"Unit 5%" title=%"Unit 5%">%n"
  56.   set totalexercisenum to 6
  57.  done
  58.  do when unitnum=6
  59.   put nav "<folder label=%"Unit 6%" title=%"Unit 6%">%n"
  60.   set totalexercisenum to 6
  61.  done
  62.  do when unitnum=7
  63.   put nav "<folder label=%"Unit 7%" title=%"Unit 7%">%n"
  64.   set totalexercisenum to 6
  65.  done
  66.  do when unitnum=8
  67.   put nav "<folder label=%"Unit 8%" title=%"Unit 8%">%n"
  68.   set totalexercisenum to 6
  69.  done   
  70.  do when unitnum=9
  71.   put nav "<folder label=%"Unit 9%" title=%"Unit 9%">%n"
  72.   set totalexercisenum to 6
  73.  done
  74.  do when unitnum=10
  75.   put nav "<folder label=%"Unit 10%" title=%"Unit 10%">%n"
  76.   set totalexercisenum to 6
  77.  done   
  78.  do when unitnum=11
  79.   put nav "<folder label=%"Unit 11%" title=%"Unit 11%">%n"
  80.   set totalexercisenum to 6
  81.  done
  82.  do when unitnum=12
  83.   put nav "<folder label=%"Unit 12%" title=%"Unit 12%">%n"
  84.   set totalexercisenum to 6
  85.  done
  86.  do when unitnum=13
  87.   put nav "<folder label=%"Unit 13%" title=%"Unit 13%">%n"
  88.   set totalexercisenum to 6
  89.  done
  90.  do when unitnum=14
  91.   put nav "<folder label=%"Unit 14%" title=%"Unit 14%">%n"
  92.   set totalexercisenum to 6
  93.  done
  94.  set activnum to 0
  95.  repeat
  96.   set activnum to activnum+1
  97.   do when gab has key ("%d(unitnum).%d(activnum)")
  98.    set problem to "YES"
  99.    do when gab key ("%d(unitnum).%d(activnum)")="player"
  100.     put nav (player key ("%d(unitnum).%d(activnum)"))||"%n"
  101.    else
  102.     put nav "    <file activityFile=%"Mod%2fzd(unitnum)-Activ%d(activnum).xml%" url=%"preview.swf%" activity=%"%d(activnum)%" type=%""       
  103.     repeat scan gab key ("%d(unitnum).%d(activnum)")
  104.      match [any-text except "\"]*=>temp1 "\" [any-text except "\"]+ "\" " "* ((letter|"&") [any-text except "\"]*)=>temp2 "\" any-text*=>temp3
  105.       put nav temp1||"%" label=%""||temp2||"%" PDF=%""||temp3||"%" />%n"
  106.       set problem to "NO"
  107.      match [any-text except "\"]*=>temp1 "\" [any-text except "\"]+ "\" " "* ((letter|"&") any-text*)=>temp2 
  108.       put nav temp1||"%" label=%""||temp2||"%" />%n"
  109.       set problem to "NO"
  110.      match [any-text except "\"]*=>temp1 "\" [any-text except "\"]+=>temp2 "\" any-text*=>temp3 
  111.       put nav temp1||"%" label=%""||temp2||"%" PDF=%""||temp3||"%" />%n"
  112.       set problem to "NO"
  113.      match [any-text except "\"]*=>temp1 "\" any-text*=>temp2
  114.       put nav temp1||"%" label=%""||temp2||"%" />%n"
  115.       set problem to "NO"      
  116.      match any
  117.     again          
  118.     do when problem ="YES"
  119.      put nav "Problem%" label=%"Problem%" />%n"
  120.      put #main-output "%d(unitnum).%d(activnum) HWD="||gab key ("%d(unitnum).%d(activnum)")||" Strange HWD%n"  
  121.      put problemfile "%d(unitnum).%d(activnum) HWD="||gab key ("%d(unitnum).%d(activnum)")||" Strange HWD%n"  
  122.     done
  123.    done 
  124.   else 
  125.     put nav "    <file activityFile=%"Mod%2fzd(unitnum)-Activ%d(activnum).xml%" url=%"preview.swf%" activity=%"%d(activnum)%" type=%"Not Done%" label=%"Not Done%" />%n" 
  126.   done
  127.   exit when activnum=totalexercisenum
  128.  again
  129.  set diarynum to unitnum - 1
  130.  put nav "   <file activityFile=%"Learner/Mod%2fzd(unitnum)-Diary.xml%" url=%"DiaryMain.swf%" unitNum=%"%d(diarynum)%" type=%"Diary%" label=%"Checklist%" header=%"Checklist%" rubric=%"Read the sentences. Tick the boxes."
  131.  do when unitnum=0
  132.   put nav "the Get Ready Module."
  133.  else
  134.   put nav "Module %d(unitnum)."
  135.  done
  136.  put nav " Tick the boxes that are true for you.%" />%n"
  137.  put nav "   </folder>%n"
  138.  set unitnum to unitnum+1
  139.  exit when unitnum=15
  140. again
  141. put nav "  </folder>%n"
  142.  
  143. put nav "  </folder>%n</navigation>"
  144.  
  145. Group "player"
  146.  
  147. find line-start (" "* "<file activityFile=%"Mod" "0"? digit+=>temp1 "-Activ" digit+=>temp2 ".xml" any-text+)=>temp99
  148.  do when player has key (temp1||"."||temp2)
  149.   put problem temp99||" Duplicate activaty in Player%n"
  150.   put #main-output temp99||" Duplicate activaty in Player%n"  
  151.  else
  152.   set playernum to temp1||"."||temp2
  153.   open playerout as buffer
  154.   repeat scan temp99
  155.    match " "* "\" " "* "<I>" " "*
  156.     put playerout "\<I>"  
  157.    match " "* "\" " "*
  158.     put playerout "\" 
  159.    match ul "<PRON>"
  160.     put playerout "<FONT FACE="Pelphon Pel SILDoulos">"
  161.    match ul "</PRON>"
  162.     put playerout "</FONT>"   
  163.    match ul "<I>"
  164.     put playerout "<I>"
  165.    match ul "</I>"
  166.     put playerout "</I>"  
  167.    match "&"
  168.     put playerout "&"
  169.    match "Æ"
  170.     put playerout "'"
  171.    match "ΓÇÖ"
  172.     put playerout "'"  
  173.    match any=>temp5
  174.     put playerout temp5
  175.   again
  176.   close playerout  
  177.   set new player key playernum to playerout
  178.   set new gab key playernum to "player" 
  179.  done
  180.  
  181. find any       
  182.  
  183. Group "gab"
  184.  
  185. find "<HWD>" " "* ((lookahead not "</HWD>")any)*=>temp1 "</HWD>"
  186.  open hwd as buffer
  187.  repeat scan temp1
  188.    match "\\"
  189.     put hwd "\"
  190.    match " "* "\" " "* "<I>" " "*
  191.     put hwd "\<I>"  
  192.    match " "* "\" " "*
  193.     put hwd "\" 
  194.    match ul "<PRON>"
  195.    put hwd "<FONT FACE="Pelphon Pel SILDoulos">"
  196.   match ul "</PRON>"
  197.    put hwd "</FONT>"   
  198.   match ul "<I>"
  199.    put hwd "<I>"
  200.   match ul "</I>"
  201.    put hwd "</I>"  
  202.   match "&"
  203.    put hwd "&"
  204.   match "Æ"
  205.    put hwd "'"
  206.   match "ΓÇÖ"
  207.    put hwd "'"  
  208.   match any=>temp2
  209.    put hwd temp2
  210.  again
  211.  close hwd
  212.  do when gab has key (modnum||"."||activenum)
  213.   put #main-output modnum||"."||activenum||" Dup Exercise !!!!!!!!!!%n"
  214.   put problemfile modnum||"."||activenum||" Dup Exercise !!!!!!!!!!%n"
  215.  else
  216.   set new gab key (modnum||"."||activenum) to hwd  
  217.  done         
  218.  
  219. find any
  220.  
  221.