Title:thomas_test
Sex: Female T Male T Trans T
Require:
Limits:
use:chastity
use:gen
;
label:StartTask
show:Select an option
choice:test code, delete review array elements, clear chastity, show review queue, show Task Log, delete Task log, show to-do list, next
assign:TestChoice:LASTASK
if:(TestChoice == 1)
  button:testing code
  ; ************************** test code start
  settemp1:0
  savetemp1:controlledCummingUnlock
  ; ************************** test code end
  button:done testing code
fi:
if:(TestChoice == 2)
  show:WARNING. You will delete some entries in the club review queue. Do you want this
  button:yes
  loadglist:chastityClubReviews
  asknumber:Entry number (starting count with 1)
  settemp3:(LASTASK - 1)
  listdelete:TEMP3
  saveglist:chastityClubReviews
  ; ********** Update number of pending reviews
  assign:numberOfReviews:(List.length)
  if:(($numberOfReviews == 0))
    goto:exitTask
  fi:
  settemp1:0
  loop:$numberOfReviews
    settemp2:List[(LOOPVAR - 1)]
    split:'TEMP2'
    if:(SPLIT5 == false)
      settemp1:TEMP1 + 1
    fi:
  endloop:
  savegtemp1:chastityClubNewVideos
fi:
if:(TestChoice == 3)
  settemp1:''
  savetemp1:chastityTagNumber
  savetemp1:chastityLock
  savetemp1:chastityStartTime
  savetemp1:chastityStartTimeP
  savetemp1:unlock_pending
  savetemp1:pending-unlock-time
  savetemp1:chastityLockPic
  savetemp1:chastityLastValidation
  savetemp1:chastityMustCumFast
fi:
if:(TestChoice == 4)
  loadglist:chastityClubReviews
  assign:numberOfReviews:(List.length)
  if:(($numberOfReviews == 0))
    show:There are no reviews to see
    button:ok
    goto:exitTask
  fi:
  loop:$numberOfReviews
    settemp2:List[(LOOPVAR - 1)]
    split:'TEMP2'
    show:Entry LOOPVAR TEMP2
    button:ok
  endloop:
  loadgtemp1:chastityClubNewVideos
  show:Number of pending reviews:TEMP1
  button:ok
fi:
if:(TestChoice == 5)
  show:Filter?
  choice:No, CC-Members, Other
  loadglist:logTaskList
  assign:numberOfLogs:(List.length)
  if:(($numberOfLogs == 0))
    show:There are no logs to see
    button:ok
    goto:exitTask
  fi:
  loop:$numberOfLogs
    settemp2:List[(LOOPVAR - 1)]
    split:'TEMP2'
    if:('TEMP2' != '')
      ; && (SPLIT2 > (STIME - 432000))
      if:(LASTASK == 1)
        call:showLogEntry
      fi:
      if:((LASTASK == 2) && (('SPLIT3' == 'Thomas3') || ('SPLIT3' == 'Chissoku') ||('SPLIT3' == 'JohnF') || ('SPLIT3' == 'lisa') || ('SPLIT3' == 'Loser1') || ('SPLIT3' == 'TittyTwister')))
        call:showLogEntry
      fi:
      if:((LASTASK == 3) && !SPLIT5)
        call:showLogEntry
      fi:
    fi:
    iframe:CLEAR
  endloop:
fi:
if:(TestChoice == 6)
  show:WARNING. You will delete all task log
  button:yes
  loadglist:logTaskList
  setlist:'EMPTY,STIME,SNAME,TID,HAS_PENIS'
  saveglist:logTaskList
  ;    loadlist:toDoTasks
  ;    setlist:'EMPTY,0,0,9000000000'
  ;    savelist:toDoTasks
fi:
if:(TestChoice == 7)
  loadlist:toDoTasks
  assign:numberOfTasks:(List.length)
  loop:$numberOfTasks
    settemp1:List[(LOOPVAR - 1)]
    split:'TEMP1'
    show:SPLIT1 SPLIT2 SPLIT3 SPLIT4
    button:next
  endloop:
fi:
if:(TestChoice != 8)
  goto:StartTask
fi:
choice:run task, delete to-do list, exit, back
assign:TestChoice:LASTASK
if:(TestChoice == 1)
  show:about to schedule a task
  button:ok
  dmsg:0:Jennifer:Time for your task
  dtask:0:Jennifer:chastity_edging:1
fi:
if:(TestChoice == 2)
  show:removing to-do list items
  loadlist:toDoTasks
  settemp1:'Empty, 100, 100, 5000000000'
  setlist:'TEMP1'
  savelist:toDoTasks
  button:ok
fi:
if:(TestChoice != 3)
  goto:StartTask
fi:
;
label:exitTask
;
;--------------------------------------------------------------------------------------------------------
function:scheduleToDoTask
  ;** Schedules a task as standard JIC delayed task AND stores the need to run the task in a list
  ;** accessible by tasks. This function will become obsolete once the standard JIC delayed task
  ;** system will be able to punish slaves for ignoring to-do tasks
  ;** Expected arguments:$taskName, $taskDelay, $taskGrace
  ;** Return values: none
  ;** Modifies TEMP1 variable.
  dtask:$taskDelay:Jennifer:$taskName:$taskGrace
  loadlist:toDoTasks
  settemp1:'$taskName, $taskDelay, $taskGrace, STIME'
  listadd:'TEMP1'
  savelist:toDoTasks
end:
;--------------------------------------------------------------------------------------------------------
function:validateToDoTasks
  ;** Validates whether any to-do tasks of the slave are overdue.
  ;** Assigns a punishment in case one or more are overdue
  ;** Expected arguments: none. Returned value: none
  ;** Modifies TEMP1 variable.
  loadlist:toDoTasks
  assign:numberOfTasks:(List.length)
  assign:punishmentDue:false
  loop:$numberOfTasks
    settemp1:List[(LOOPVAR - 1)]
    split:'TEMP1'
    if:(SPLIT4 + ((SPLIT2 + SPLIT3) * 3600) < STIME)
      show:You are lated doing SPLIT1 task. A punishment will be assigned
      log:Slave is late doing SPLIT1 task. A punishment will be assigned
      button:Yes DTITLE
      assign:punishmentDue:true
    fi:
  endloop:
  if:punishmentDue
    show:Punishment logic will be inserted here
    button:ok
  fi:
end:
;--------------------------------------------------------------------------------------------------------
function:t_logTaskRun
  ;** Maintains a log of how often a task has been run.
  ;** Removes the task from the task toDo list in case it is on there
  ;** Modifies TEMP1 variables
  ;** Expected arguments: logTaskName. Returned values: none
  ;
  ; log task run
  loadglist:logTaskList
  settemp1:'$logTaskName,STIME,SNAME,TID,HAS_PENIS'
  listadd:'TEMP1'
  saveglist:logTaskList
  ;
  ; remove task from to-do list in case its on there
  loadlist:toDoTasks
  assign:numberOfTasks:(List.length)
  assign:taskPosition:0
  assign:taskTime:0
  loop:$numberOfTasks
    settemp1:List[(LOOPVAR - 1)]
    split:'TEMP1'
    if:(('SPLIT1' == '$logTaskName') && (($taskTime == 0) || (SPLIT4 < $taskTime)))
      assign:taskPosition: (LOOPVAR - 1)
      assign:taskTime:SPLIT4
    fi:
  endloop:
  if: ($taskTime != 0)
    listdelete:$taskPosition
    savelist:toDoTasks
  fi:
end:
;
function:showLogEntry
  show:Entry LOOPVAR<br>Task SPLIT1<br>Time SPLIT2<br>Slave SPLIT3<br>SPLIT4 SPLIT5
  iframe:https://play-link.com/jennifer/rtask.php?task=SPLIT4
  button:ok
end:
;
function:reviewCCslavesInstructions
  if:'SNAME' == 'Thomas3'
    image:taskimg/chastity/Thomas3 Instructions.jpg
    show:Please verify that the slave has done the following in the video<br><br><b>1</b> Did he <b>strongly</b> pull on the tag<br><b>2</b> Is the wire threaded through <b>tube AND piercing</b><br><b>3</b> Did he show  the cut tag <b>with all wires visible</b><br><b>4</b> Did he use his long tube</b>
    button:Yes I have verified this
  fi:
end:
;