Files
SkinbaseNova/docs/legacy-routes-inventory.md
2026-03-20 21:17:26 +01:00

6.5 KiB

Legacy Routes Inventory

Source analyzed: routes/legacy.php Date: 2026-03-12

This list includes active (non-commented) routes still defined in the legacy compatibility layer.

Companion execution guide: docs/legacy-routes-removal-checklist.md

Avatar and Artwork

Method Path Route Name Handler / Target
GET /avatar/{id}/{name?} legacy.avatar LegacyAvatarController@show
GET, POST /art/{id}/comment - ArtController@show

Categories and Browse

Method Path Route Name Handler / Target
GET /sections sections 301 -> /categories
GET /browse-categories browse.categories 301 -> /categories
GET /{group}/{slug}/{id} legacy.category.short CategoryRedirectController
GET /category/{group}/{slug?}/{id?} legacy.category CategoryRedirectController
GET /browse legacy.browse 301 -> /explore
GET /featured-artworks legacy.featured_artworks 301 -> /featured
GET /daily-uploads legacy.daily_uploads 301 -> /uploads/daily

Community and Listings

Method Path Route Name Handler / Target
GET, POST /chat - 301 -> /messages
GET, POST /community/chat community.chat 301 -> /messages
GET /latest legacy.latest 301 -> /uploads/latest
GET /authors/top authors.top 301 -> /creators/top
GET /latest-artworks legacy.latest_artworks 301 -> /discover/fresh
GET /latest-comments legacy.latest_comments 301 -> /community/activity
GET /comments/latest comments.latest 301 -> /community/activity
GET /today-in-history legacy.today_in_history 301 -> /discover/on-this-day
GET /today-downloads legacy.today_downloads 301 -> /downloads/today
GET /monthly-commentators legacy.monthly_commentators 301 -> /comments/monthly
GET /members legacy.members 301 -> /creators/top
GET /top-favourites legacy.top_favourites 301 -> /discover/top-rated

Legacy Redirect Endpoints

Method Path Route Name Handler / Target
GET /top-authors legacy.top_authors 301 -> /creators/top
GET /interviews legacy.interviews 301 -> /stories
GET /apply legacy.apply.redirect 301 -> /contact
GET, POST /bug-report bug-report.redirect 301 -> /contact

Auth-Only Legacy Routes

Method Path Route Name Handler / Target
GET /mybuddies.php legacy.mybuddies.php 301 -> dashboard.following
GET /mybuddies legacy.mybuddies 301 -> dashboard.following
DELETE /mybuddies/{id} legacy.mybuddies.delete 302 -> dashboard.following
GET /buddies.php legacy.buddies.php 301 -> dashboard.followers
GET /buddies legacy.buddies 301 -> dashboard.followers
GET /statistics legacy.statistics StatisticsController@index
GET, POST /user legacy.user.redirect 301 -> dashboard.profile
GET /recieved-comments legacy.received_comments 301 -> dashboard.comments.received
GET /received-comments legacy.received_comments.corrected 301 -> dashboard.comments.received
Method Path Route Name Handler / Target
GET /favourites/{id?}/{username?} legacy.favourites FavouritesController@index
POST /favourites/{userId}/delete/{artworkId} legacy.favourites.delete FavouritesController@destroy
GET /gallery/{id}/{username?} legacy.gallery 301 -> /@username/gallery via GalleryController
GET /user/{username} legacy.user.profile ProfileController@legacyByUsername
GET /profile/{id}/{username?} legacy.profile.id ProfileController@legacyById
GET /profile/{username} legacy.profile ProfileController@legacyByUsername

Legacy RSS Feed URLs

Method Path Route Name Handler / Target
GET /rss/latest-uploads.xml rss.uploads RssFeedController@latestUploads
GET /rss/latest-skins.xml rss.skins RssFeedController@latestSkins
GET /rss/latest-wallpapers.xml rss.wallpapers RssFeedController@latestWallpapers
GET /rss/latest-photos.xml rss.photos RssFeedController@latestPhotos

Notes

  • Commented-out legacy blocks (manage pages, received-comments, forum.php redirect) are excluded from this active inventory.
  • Several routes are already transitional redirects; these are good early candidates for removal once logs show no meaningful traffic.

Deprecation Priority

Phase 1: Safe To Remove First (redirect-only)

These routes already do permanent redirects and typically carry the lowest removal risk once access logs confirm near-zero traffic.

  • /top-authors
  • /interviews
  • /apply
  • /bug-report
  • /browse-redirect
  • /wallpapers-redirect

Phase 2: Low-Risk Alias Pairs (keep canonical, remove duplicates)

For each pair, keep the cleaner canonical URL and remove the older alias after monitoring.

  • Keep /featured-artworks, remove /featured (or vice versa; pick one canonical)
  • Keep /uploads/latest, remove /latest
  • Keep /comments/latest, remove /latest-comments
  • Keep /downloads/today, remove /today-downloads
  • Keep /comments/monthly, remove /monthly-commentators

Phase 3: Needs Migration Plan (controller-backed legacy behavior)

These endpoints are not simple redirects and may have old templates, old query semantics, or SEO dependencies.

  • /browse
  • /category/{group}/{slug?}/{id?}
  • /browse-categories
  • /daily-uploads
  • /members
  • /members/photos
  • /authors/top
  • /top-favourites
  • /chat
  • /chat_post
  • /favourites/{id?}/{username?}
  • /favourites/{userId}/delete/{artworkId}

Phase 4: Legacy Profile URL Surface (requires 301 mapping checks)

These should eventually collapse to canonical @username/profile routes, but require careful redirect and username-edge-case validation.

  • /user/{username}
  • /profile/{id}/{username?}
  • /profile/{username}
  • /user

Phase 5: Keep For Compatibility (unless external consumers are migrated)

These are frequently consumed by feed readers or old clients and should be retired only with explicit migration communication.

  • /rss/latest-uploads.xml
  • /rss/latest-skins.xml
  • /rss/latest-wallpapers.xml
  • /rss/latest-photos.xml

Special Case: Auth-only legacy utility pages

Evaluate usage with auth logs before deprecating. They are likely niche but can still be bookmarked by long-time users.

  • /mybuddies.php
  • /mybuddies
  • /mybuddies/{id}
  • /buddies.php
  • /buddies
  • /statistics