Subversion Repositories wimsdev

Rev

Rev 5195 | Rev 10305 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

!read adm/language lang/names.phtml
!read adm/levelname.phtml
!if robot isin $wims_session
 error=bad_sheet
 !exit
!endif

wims_trustfile=primitives/target.phtml
wims_prefix=class user tmp
wims_prefix2=$wims_prefix
!set wims_backslash_insmath=yes
wims_nw=deps prcnt empty job class_header data\
        imagedir Imagedir Class_header wims_prefix wims_prefix2
!default prcnt=0

authscoresuspend=!defof class_authscoresuspend in wimshome/log/classes/$wims_class/.def
!default authscoresuspend=yes
!setdef wims_authscoresuspend=$authscoresuspend in wimshome/sessions/$wims_session/var.stat

!if $authscoresuspend=yes
 !if $job=suspend
  wims_scorereg=suspend
 !endif
 !if $job=reopen
  wims_scorereg=$empty
 !endif
 !if ($job=suspend or $job=reopen) and $exo!=$empty
  !let limit=!recordcnt wimshome/log/classes/$wims_class/sheets/.sheet$sh
  !bound exo between 1 and $limit default 0
  !if $exo!=0
   !set ex=!record $exo of wimshome/log/classes/$wims_class/sheets/.sheet$sh
   !distribute lines $ex into di,pa,require,we,ti,de
   !setdef w_wims_scorereg=$wims_scorereg in wimshome/sessions/$wims_session/var
   !restart module=$di&cmd=new&worksheet=$public$sh&$pa
  !endif
 !endif
!else
 wims_scorereg=$empty
 !setdef w_wims_scorereg=$empty in wimshome/sessions/$wims_session/var
!endif

!if $seq!=
 !set wims_sequence=$seq
!endif

!bound job within read,raw,import,print default read

c=!char 1 of $sh
!if $c=P or $wims_class=$empty or / isin $sh
 public=P
 !if $c=P
  sh=!char 2 to -1 of $sh
 !endif
!endif

!if $job iswordof raw import and ($public!=P or $wims_user!=supervisor)
 job=read
!endif

!if $public!=P
 !bound sh between integer 1 and 1024 default 0
 !if $sh=0
  :badsheet
  error=bad_sheet
  !exit
 !endif
 data=wimshome/log/classes/$wims_class/sheets/.sheet$sh
 sheet=!record $sh of wimshome/log/classes/$wims_class/sheets/.sheets
 !distribute lines $sheet into sheet_active,sheet_expiration,sheet_title,sheet_desc,sheet_docpage
 !if $wims_user != supervisor and $sheet_active notin 12
  !distribute items $ into sheet_active,sheet_expiration,sheet_title,sheet_desc,sheet_docpage
  !if $job=print
   job=read
  !endif
 !endif
 sheet_docpage=!word 1 of $sheet_docpage
 !if $sheet_docpage!=$empty
  docdef=wimshome/log/classes/$wims_class/doc/$sheet_docpage.def
  doctit=!getdef titb in $docdef
  !if $doctit=$empty
   !reset docdef sheet_docpage
  !endif
 !endif
 requires=!getscorerequire sheet=$sh
 scores=!getscore sheet=$sh
 means=!getscoremean sheet=$sh
 !if $sheet_active=$empty
  n=0
 !else
  n=!recordcnt $data
 !endif
 !if $job=read and $n>0
  !read adm/mkdepsheet.proc $sh
 !endif
 exolog=!filelist $wims_home/$wims_sesdir/exolog.$sh.*
!else
 dd=!record 0 of wimshome/$wims_sesdir/.sheets
 !if / isin $sh
  test=!positionof line $sh in $dd
  !if $test=$empty
   !appendfile wimshome/$wims_sesdir/.sheets $sh
   shn=!linecnt $dd
   !advance shn
  !else
   shn=!item 1 of $test
  !endif
 !else
  !bound sh between integer 1 and 1024 default 0
  !if $sh=0
   !goto badsheet
  !endif
  shn=$sh
  sh=!line $shn of $dd
  sh=!trim $sh
  !if $sh=$empty
   !goto badsheet
  !endif
 !endif
 data=wimshome/public_html/bases/sheet/$sh.def
 sheet=!record 0 of $data
 sheet=!trim $sheet
 !distribute lines $sheet into sheet_title, sheet_desc, sheet_duration,\
        sheet_severity, sheet_level, sheet_domain, sheet_keywords
 !!sheet_remark=!lines 10 to -1 of $sheet
 !distribute words $sheet_duration into sheet_duration,sheet_year
 sheet_active=1
 n=!recordcnt $data
!endif
!!setdef wims_sheettitle=$sheet_title in wimshome/sessions/$wims_session/var.stat

maxexo=!recordcnt $data
!setdef wims_sheetmax=$maxexo in wimshome/sessions/$wims_session/var.stat
!reset exofeedback
!for e=1 to $maxexo
  redir=!record $e of wimshome/log/classes/$wims_class/sheets/.sheet$sh
  redir=!line 9 of $redir
  !if $e=1
    exofeedback=$redir
  !else
    exofeedback=$exofeedback;$redir 
   !endif
!next
!setdef wims_exofeedback=$exofeedback in wimshome/sessions/$wims_session/var.stat

!if $job iswordof print import
 !read $job.proc
!endif