<commit_before># Pennsic University Thing TODO

## Authorization

Authorization rankings allow specific permissions.  Each level generally
allows all actions a lesser ranked member may perform.

* Guest -- Can only see public information -- accepted classes, etc.
* User -- Can (eventually) manage their own subscriptions / watches, generate calendars, etc.
* Instructor -- can manage their instructor profile, and request classes to be taught.
* Coordinator -- Can approve and schedule classes
* PU Staff -- Can look at any class
* PU Coordinator -- Can create coordinators
* Admin -- can do anything

## Tasks

### Basic Functionality

* <del>signup</del>
* <del>request to be a teacher form</del>
* <del>"request to teach a class" form (that is, class submission)</del>

### Administration

* <span class="low">(low) Send a password reset token to a user</span>
* <del>(high) Allow editing of all aspects, other than password, for a user</del>
* <span class="high">(high) generate a list of email addresses for users who are instructors</span>
* <span class="high">(high) generate a list of email addresses for users who are tract leads</span>
* <del>(high) Assign a user to a tract lead position</del>

### Email Notifications

* <span class="medium">(medium) Send email to instructors when their class status changes</span>
* <span class="medium">(medium) Send email to tract leads when a class is assigned to their area</span>
* <span class="medium">(medium) Send email to PU admin when a new class is added</span>
* <span class="low">(low) Periodic email reminders</span>
   * Tract leads
      * Statistics about classes in their area
      * Listing of pending-accept classes
      * Listing of pending-schedule classes
      * Listing of all classes
      * Any scheduling conflicts
   * Administrators
      * New classes which were added and need a tract assigned
      * New instructors which were added
      * Statistics about the system
      * Any scheduling conflicts

### Coordinators

* <del>(high) Enable coordinators' editing of classes assigned to their tract</del>
   * <span class="high">(high) A simple assign-to-location-and-time page</span>
* <del>(high) listing of classes which need to be accepted</del>
* <del>(high) listing of classes which need to be scheduled</del>
* <del>(high) listing of all classes in a tract</del>
* <span class="high">(high) listing of all classes by day</span>
* <span class="high">(high) listing of all classes by location</span>
* <del>(high) listing of all classes by topic</del>
* <span class="high">(high) some sort of display showing location allocations</span>

### Public View

* <span class="low">(low) List all classes which are accepted</span><commit_msg>move all issues to github tracker<commit_after># This has all moved to the GitHug issue tracker

https://github.com/skandragon/thing/issues
{'fraction_non_alphanumeric': 0.10478519035976248, 'fraction_numerical': 0.0, 'mean_word_length': 4.313543599257885, 'pattern_counts': {'":': 0, '<': 47, '<?xml version=': 0, '>': 47, 'https://': 1, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5223807', 'n_tokens_mistral': 775, 'n_tokens_neox': 757, 'n_words': 348}