Skip to content

[Feature] Automatic relocation of orphaned courses into the Archive tree structure #367

@mnietona

Description

@mnietona

Summary

Currently, when the load_tree and load_courses commands are run, courses that no longer exist in the new ULB curriculum are marked as is_archive=True. However, if their parent categories are deleted or changed, these courses become "orphans" and appear at the root of the Finder or disappear from the navigation.

The Problem

In the current implementation, moving an archived course to the archives category requires manual intervention via the Django shell. If multiple courses are archived, they clutter the root Archive column instead of maintaining their original faculty/program hierarchy.

Proposed Solution

  1. Logical Mapping: The load_tree command should automatically create a "shadow" hierarchy inside the archives slug that mirrors the last known valid structure for each course.
  2. Auto-nesting: When a course is detected as "not in the new program", it should be automatically moved to Archives > [Former Faculty] > [Former Program] instead of being detached.
  3. UI separation: Improve the finder.html template to handle columns containing both categories and courses (adding a "Direct Courses" separator).

This would ensure a seamless transition between academic years without breaking the user's ability to find old materials.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions