# Features — ieb-inde-6

Evidence date: 2026-10-12. Inspected revision: `main` at `d9e4836`.

Website root: `INDE-6/Evolution Software Unified Framework/Evolution Software Unified Framework/core_custom/INDE-6/`.

## Current

### School and group postboxes

- Surface objects and generated form, grid, and view controls:
  - `Schools` — centre number, NSC year, PSI year, phone, physical and postal address, primary email, school name, school postbox name, school type, affiliations, IEB uploads, school uploads. `App_Code/objects/oSchools.cs`, `controls/surface_custom/Schools_*`.
  - `SchoolContacts` — active year, area of responsibility, email, IEB liaison, mobile, name, non-RSA id, principal flag, RSA id, SACE number, school name, school type, title. `oSchoolContacts.cs`.
  - `SchoolAffiliations` — `oSchoolAffiliations.cs` and matching controls.
  - `GroupPostbox` — group name, type, description, assessment materials, assessment records, correspondence, linked schools. `oGroupPostbox.cs`. Saving creates three file canvases. `GroupPostbox_form.ascx.cs`.
  - `GroupPostboxSchools` — published by SQL `INDE-6-1.0.7`. Controls `GroupPostboxSchools_*`. Fields include per-canvas names used when a group file is replicated (`AssessmentMaterialsCanvasName`, `CorrespondenceCanvasName`, `AssessmentRecordsCanvasName` are read in `fileExplorer.ascx.cs`).
- SQL `INDE-6-1.0.8` publishes surface `GroupPostbox` and creates `publ_GroupPostbox`. `INDE-6-1.0.13` adds further group and group-school surface fields.

### File canvases

Canvas display tokens in `PostboxCanvasNums.CanvasDisplayName`: Materials, Records, Correspondence, Submissions, Circulars, Newsletters, RegModDocs, RegModReport.

Parent canvas ids in the same class: Materials `5561`, Records `2109`, Correspondence `3148`, Submissions `2129`, GroupPostbox `6097`, SchoolSubmissions `6098`, Circulars `2113`.

File explorer (`controls/module/fileExplorer.ascx.cs`):

- Upload metadata, 100 MB Telerik limit, page size 20.
- Group replication, school-submission replication, regional-moderation report replication.
- Mail on new files (see business rules).
- Date, owner, and origin columns.
- Zip download named `Combined.zip`.
- Download rows on surface `FileExplorerDownloads` (`oFileExplorerDownloads.cs`, SQL `INDE-6-1.0.5`).

### Regional moderators and subjects

- Surface name `RegionalModerators` triggers user creation and up to three subject/school assignments. `controls/surface/surface_form.ascx.cs`.
- Surface name `RegionalModerationSubjects` receives the generated subject rows. `PostboxHelper`.
- Surface name `SchoolPostbox` is the canvas (`GetCanvas("SchoolPostbox")`) that receives the new moderator in `customUsers`, and the row used to resolve a school postbox name.
- Subject catalogue `SubjectManagement`: level, subject code, subject name, unique name. SQL `INDE-6-1.0.15` renames cluster level to level on `publ_SubjectManagement` and `qt_SubjectManagement`.
- Welcome email and four regional-moderation templates inserted by SQL `INDE-6-1.0.18` and altered by `1.0.19`.

### Mail and download notice

- Template type Postbox, templates named `E-mail to School Contacts Template` and `E-mail to IEB Contacts Template`. SQL `INDE-6-1.0.0`, `1.0.2`.
- Setup columns `emailSubjectToSchoolContacts`, `emailSubjectToIEBContacts`, `submissionsEmail`. SQL `1.0.1`, `1.0.3`, `1.0.4`.

### Framework site that ships in the same website

These pages exist under `core_custom/INDE-6` and under `core`: Admin and the Admin_* maintenance pages (banners, calendar, campaigns, canvas, content, customers, FAQ, gallery, job cards, loyalty, media, products, projects, promotions, releases, reports, setup, sign-in, SMS credit, support, surfaces, tasks, templates, users), plus `Canvas.aspx`, `Cart.aspx`, `Default.aspx`, `Media.aspx`, `Products.aspx`, `Reset.aspx`, `Search.aspx`, `Sales_SalesItems.aspx`, `Unsubscribe.aspx`, `Error.aspx`, `SessionHeartbeat.ashx`, `WebMethods.ashx`.

They are the Evolution framework shell. Postbox-specific classes do not implement cart or product behaviour.

### Examination authoring still compiled here

- `examHandler.cs`, `examNums.cs`.
- Objects `oExaminationAuthoringandModeration`, `oExaminationDocumentPack`, `oCollabDetailParcel`, `oComplianceFeedbackCRITERION`.
- Module control `controls/module_custom/CriterionFeedback.ascx`.
- Calls from `controls/module/surfaceNotes.ascx.cs` and `controls/admin/attachments.ascx.cs`.

The readme assigns Exams to INDE-1. Treat this as code present in the INDE-6 tree, not as a confirmed Postbox feature.

### Cluster surfaces

Generated controls and objects: ClusterInformation (area, document library, forum), ClusterLevels, ClusterMeetings, ClusterMembers, ClusterResources. No Postbox email or canvas method references these names. **Unknown** whether the live menu shows them.

### WCF service and tools

- `service/framework_service.svc`.
- `tools/constructor`, `tools/exporter`, `tools/scheduler`, `tools/dataImporter`.
- `library` and `business` projects.

## Partial

### Upload size

The explorer and the new regional-moderation config allow 100 MB. `Web.config` `maxRequestLength` is 10048 KB. Both limits are in the tree. The effective limit is the smaller one for an ASP.NET request.

### Website title

`website` is stored as both `IEB (INDE-6 Local)` and `IEB CRM`. `subject` is `IEB (INDE-6 Local) - {content}`.

### File protection

Handler registered for path `upload`. Nested upload URLs are not explicitly listed.

### School-type detection

Two helpers disagree for any bracket letter other than `P` and `S`. See business rules.

### Multi-file download tracking

Tracking indexes selected paths and expanded files together. A directory selection can overrun the path array.

## Unused or dormant in configuration

- `MediSwitchResponses` = `0`. QA MediSwitch URLs are active in config; live URLs are commented.
- `getCountriesFromWebService` = `0`.
- `loyaltyEmail` = `0`.
- Patient registration mail runs only when setup code is `SHOU-1` (`surface_form.ascx.cs`). It does not run for `INDE-6`.
- `Unsubscribe.aspx` and `Test.aspx` are present. Their page logic was not traced as Postbox behaviour.
- `tools/CAPI.Custom` and `tools/CEP` are quote and purchase-order projects. No Postbox class references them.
- `mobile` is a class library project. No screens were found.
- SQL script folders other than `INDE-6`: `CAPI-1`, `CHUU-1`, `CLOS-1`, `INDE-1`, `INDE-2`, `OLIV-1`, `REAP-1`, `ROBI-1`, `SCHO-1`, `SHEN-1`, `SHOU-1`, `STUD-1`, archives `major 1` through `1.6.1`, and `published to LIVE-CAPI-1 on 190930`. `data/Framework_STUD-1.bak` is a database backup file name in the SQL project. These are framework leftovers in this tree, not Postbox scripts.
- `controls/surface_custom_backup` holds `.exclude` copies of school and school-contact code-behinds dated 2018-05-15 and 2018-05-19.

## Planned

No planned-feature list, ticket, or unfinished flag for Postbox was found in the readme or in git history.

## Recently changed

Git has two commits on 2025-07-09 (`a99f6ea` initial, `d9e4836` "Added INDE-6"). There is no earlier commit to diff product behaviour against.

The newest product SQL file by version number is `INDE-6-1.0.19-alter-regional-moderation-subject-email-template-27082020.sql`.

## Deprecated / removed

Not established from git history, because history starts at the import. The `.exclude` backups and the column rename from `Subjects_SubjectDetails_ClusterLevel` to `Subjects_SubjectDetails_Level` (SQL `1.0.15`) are the visible signs of older shapes.

## Not in this git revision

- `sonarqube_scan.bat`, which the onboarding scan listed at the repository root.
- A test project.
- A pipeline build or deploy of the .NET solution.
- Unpacked contents of `release/*/files.zip` and `scripts.zip`.
