--- loncom/TODO	2001/03/02 22:10:54	1.46
+++ loncom/TODO	2001/11/16 07:03:03	1.136
@@ -1,27 +1,31 @@
+TODO list
+
 + add functionality
 & change functionality
 * bug
-! January
+! Priority
+? Questionable/unverified
 c Continual
 
 G=Gerd
 A=Alex
 S=Scott
-B=Ben
-H=Harsha
 Y=Guy
 N=Hon-Kie
 I=Issac
+?=not yet assigned
 
 XMLPARSE
     + support text_TAG functionality (Y/A)
    !* needs to fixup missing end tags in source (Y/A)
-    + style file recursion (Y/A)
     + add <options> tag (A)
     + counters and output formats for counters (A/Y)   
-    + support <tag /> or see if new HTLM::TokeParser does <tag/>
     + deregister()
     + register need to take care of overloading, and deregister needs to unload
+    + answer target - for simple display of correct answer for a problem
+      (<or> done <rbr> <ir> <nr> <sr> <fr> TODO)
+    * <m> tag needs to do variable evaluation before tth-ing the string, also 
+ 	add eval="nothing" to turn this off.
 
 CAPARESPONSE.C
    !+ pass back the reason (Y)
@@ -30,72 +34,220 @@ RUN.pm
     & ->share() a var rather than pass a parameter? Maybe set 
       a global in the safe enviroment using ->root()?
 
+EDIT INTERFACE
+    * insert (getting there) (Y)
+    + have inserts at bottom of page (Y)
+    c add more tags (Y)
+    + have textfield style entries protect against bad data (</parserlib> in 
+	the parserlib textfiled (Y)
+    + make default setup prettier
+    + more templates for different homework types
+    + <rbresponse> editing works
+    * testing problems in construction space, need someway to reset 
+       store/restore data
+
 HOMEWORK
-    + need to support /OR (Y)
-   !+ create <stringresponse> <formularesponse>(Y)
-   !+ <hintpart> ?done? (Y)
-   !+ <optionresponse> (Y)
+    + need to support /OR (do _OR_ in answer="" fields) (Y)
+   !+ create <formularesponse>(Y)
    !+ <rbresponse> <oresponse> need to restore last submitted response (Y)
     + <rbresponse> <oresponse> hints need to work (Y)
-    & <rbresponse> <oresponse> are ugly (Y)
-    & all response types need to be verified about what they do after the answer date (Y)
+    * <rbresponse> breaks when no true foils are possible
+    + <imageresponse> needs to be able to support multiple images and multiple
+        clicks on an image, need a Java applet most likely
+    * <essayresponse> needs to protect input / output
+    * if there are <*response> in a <problem> and there are also 
+	<part>s defined the handling of the <*response> outside of the 
+	<part> will be done poorly.
+    * input areas need to hide after correct
     + view problem as specific student (Y)
+    + show rendering of problem for another user in "view submissions" (please)
+    + be able to view homework as another user, see variables
+      (possibly coupled with /adm/grades, prev. submission)
+    &?intelligently react if answerdate incorrectly set before duedate
+    + <rbresponse> and <optionresponse> flip back on display to the last 
+      student entry when re-visiting a problem
+    & run student parser over instructor specified physical units
+    + <formularesponse>
+    + metadata parsing for "stores" of .libraries
 
 /ADM/GRADES
-    + modify status of a problem (Y)
-    + search for students (Y)
-    & find domain of student (Y)
+    * show list of multiple students if multiple match (Y)
     + handle ambiguous case (Y)
+    + handle extra fields (Y)
+    + interface needs to be driven more by the type field (Y)
+    + show only a subset of students (Y)
+    + set all to something (Y)
+    + set grades aren't correctly rendered in student view (Y)
+    + have $r->flush so that user sees it is working
 
 NUMERICALRESPONSE
    !* doesn't throw error when #response > #answer (Y)
    !* bad message when #response < #answer (Y)
 
+RANDOMLABEL
+    * Applet runs cross-platform, goes into library location /res/adm/pages
+    + template
+    + TEST: randomlabel
+    & GLabel needs to better support image specifications that aren't URLs
+    & GLabel needs to be in the install process
+
 GOODIES
-    * bookmarks don't work correctly (B)
-    * indexer does not always work (N)
-    + messaging (G)
+    & indexer needs to show location - bring back flip-open/close (N)
     + chatroom, etc
+    + annotations can be localized and published
+    + PURLs
+    + chart allows sorting/filtering by section
+    & chart handles multipart problems
+    & statistics handles multipart problems
+    + statistics link to problem
+    + "You've got mail!"
+    + navmaps shows new discussion postings
+    + LectureOnline converter handles optionresponse correctly
 
 TEX/TTH/TTM
-    * Address bugs in tth/ttm (second half January, A,Y,G)
+   !* Address bugs in tth/ttm (A,Y,G) - get new versions
+
+SYSTEM MONITORING
+    c update rpm lists and rpm monitoring (S)
+    & improve output of 'make status(post)' target in loncom/build (S)
 
 BUILD
-    * need to roll together anaconda reconfiguration interface (S)
-    * need to write a "run-time" teflon script to tighten down (S)
-      file ownerships on non-development LON-CAPA machines (S)
-    * need to debug anaconda installation interface (S)
-    * need to debug anaconda upgrade interface (S)
+    * make sure that ssh is always allowed, even for run-time servers (S)
+    c test code... up to date with latest CPAN modules (S)
+    + allow for debian and redhat 7.1 installation... redhat 7.1
+      installation well pioneered (S)
+    c add in new perl modules and update old ones (S)
+    c build and distribute CD-ROMs, upgrades, and installation/upgrade docs (S)
+    c document and reasonably automate aspects of source-to-build procedure (S)
+
+CODE QUALITY
+    c code lines less than 80 characters (somewhat done, but now put
+      on back-burner till 2002) (S)
+    c xhtml-ize output from perl modules (S)
+    c work on javascript library and modularizing code (S)
+    & fix handling of web browser windows (S)
+    c add in CPAN and POD conventions into modules and scripts (S)
+
+SQL DATABASE
+    + have result capping (S)
+    + scroll results page (S)
+    + enable abort button (S)
+    + e-mail admins if their sql setup is bad (S)
+    & restrict search fields to viewable fields (based on ENV{user.adv}) (S)
+    & update user-viewable metadata database documentation (S)
+    & restrict searching to browseable domain (S)
+    c monitor speed and performance of metadata database (S)
+    + prepare for and upgrade to the much superior MySQL version 4 (S)
+
+PUBLISHING
+    + handle big text documents (?)
 
 GERD STUFF
-    + lecture online converter does all types (G/Y)
-    + lond can add UNIX user and change UNIX password (G/S)
-    & lond produces no history files for nohist_ namespaces
-   !* make spreadsheet calculation less resource intensive (dump) (G)
-    * tmpget seems to only work up to a few hundred kilobytes (G)
-    + pageflip up and down work
-    + feedback, mailing and announcement mechanism finished
     + londropadd does XML
-    + loncreateuser can do system and domain roles
-    + loncreateuser can generate a new user
-    *?'delete' did not work in parmset (once)
     +?TAs can open and close assignments
+    +?Students can force-open assignments with instructor notification
+   !c tests interaction between parmset, problem handler and spreadsheet (G)
+    + replication hinting/prediction 
+    + replication, search local access servers if library is uncontactable
+    + intelligent update of hosts.tab (don't forget firewalls)
+    * Looks like no window status in IE 5.5 on Mac, Remote logs out
+    + change passwords (domain coordinator/users)
+    & stabilize lond (maybe not prefork)
+    * straighten out co-author, author, coordinator junk 
+    + lonstatistics stores info with metadata of problem
+    + implement initial questionaire
+    + do "evaluate this"
+    + summary on top of spreadsheet
+    + adjusts output in spreadsheet to type
+    + sort courses with same role in lonroles, color scheme
+    + fix Applet codebase on .page
+    & pages do not register with remote if not on map
+    * navmaps deals correctly with multiple path maps
+    * navmaps displays answerdates correctly (not due date instead)
+    + points for feedback, counts on feedback/discussion
+    + "do you want to be a tutor"?
+    + logging support for all transactions, interface for checking logs
+    + critical messages too agressive with sending receipt back 
+      (too many - make optional)
+    + mass deleting of messages from inbox
 
 RAT
-    + RAT can set resource parameters (G)
-    * RAT error line 1413 "insert resource into link" for recon link (G)
-    * focus on RAT when in /priv space (G)
+    *?RAT error line 1413 "insert resource into link" for recon link (G) 
+      (could not reproduce)
+    + need to be able to evaluate conditions in lonuserstate
+    + need to be able to set conditions in RAT client (G)
+    + simple RAT server-side interface
+    * undefined "guff" - maps full of objects value="undefined"
+    * bombs if inf-window closed by hand (needs browser restart) 
+    * errors, lines 1118, 1119, 2153, 2310 after cutting link in table mode
+    + "insert resource in link" shows that it is busy working on it
 
 PUBLISHER
-    + publishes material other than HTML, XML and problems (G)
-    * handles "publish directory" more gracefully (G)
-    + retrieve old versions button (G)
-    +?does HTML to XHTML cleanup job
-
-VERIFICATION OF CONTENT
-    c have TA's do homework (G)
-    c verify internal page links  (G)
-    c verify applets (G)
-    c do homeworks from home/computer labs (G)
-    c be always at least two weeks ahead in homework
+    * needs to devalidate spreadsheets in problem publishing (G)
+    * need to clear metacache of old versions of metadata when publishing
+    + deals with Micros*** files
+    *?entering construction space or a directory throws up a 
+      spurious error message (G)
+    c TEST: deal with absolute links
+    c TEST: deal with <allow>
+    + write dependencies to metadata
+    + incorporate thesaurus/vocabulary
+
+
+Large Chunks of funtionality that need work:
+============================================
+
+- Statistics
+	- Simple
+		- resource analysis class/system wide
+		- resource correlation course wide
+		- other stats from CAPA
+	- Complex
+		- foil level analysis/correlation measures
+		- derandomized foils analysis
+		- have/view reason student selected a foil
+	- resource quality, how good is a resource
+
+- Messaging
+	- email gateways into/out of the system
+	- handle more types of communication
+	       - messages seeded with data from spreadsheet
+	       - chat / whiteboard
+	       - "round robin" feedback handling
+               - "mailing lists"
+
+- Grading
+	- simple grading needs cleaning up (see Guy's TODO list)
+	- survey data extraction ( stat complex could handle most of
+	  this)
+	- essay / shortanswer
+		- instructor / autoget all/none
+		- team based submission
+		- peer graded
+		- peer suggest grade
+
+- homework engine
+	- new parm - mode -> homework/exam/survey controls response
+	  renderings / awards and solved status
+	- math stuff
+	- CAPA problems 
+	- <imageresponse> need Java applet
+	- <randomlabel> 
+
+- Exams
+
+- RAT
+	- choose parts
+	- set conditions
+	- language for conditions
+	- browse link
+	- some kind of non-anti-save
+
+- Publish
+	- review step
+	- co-author locking
+	- auto thumbnail / convert images
+
+- printing
+	- tex target (CGI / daemon?)