aircox-radiocampus/notes.md
Chris Tactic 55123c386d #132 | #121: backoffice / dev-1.0-121 (#131)
cfr #121

Co-authored-by: Christophe Siraut <d@tobald.eu.org>
Co-authored-by: bkfox <thomas bkfox net>
Co-authored-by: Thomas Kairos <thomas@bkfox.net>
Reviewed-on: rc/aircox#131
Co-authored-by: Chris Tactic <ctactic@noreply.git.radiocampus.be>
Co-committed-by: Chris Tactic <ctactic@noreply.git.radiocampus.be>
2024-04-28 22:02:09 +02:00

2.8 KiB
Executable File

TODO

  • card: url

  • page header:

    • content inline
    • responsive
  • remove vue-carousel

  • statistics & monitor

Proposals

  • diffusion list view for a program + link on program page view
  • add podcast list to playlist
  • pause on "space" key

##############

This file is used as a reminder, can be used as crappy documentation too.

  • player
  • monitor interface
  • statistics interface
  • traduction
  • hot reload

Améliorations:

  • calendar dashboard
  • accessibilité
  • player: playlist

for the 1.0

  • logs:
    • do not add track if between two consecutive diffusions
  • run tests:
    • streamer: dealer & streams hours (to localtime) x diffusions: update & check algorithms x check in templates x diffusion page date info
  • streamer:
    • restart running streamer on demand
    • add restart button for the streamer --> rewrite streamer for client-server controller --> move liquidsoap control on commands/streamer.py
  • cms: x button to select the current station
    • section's title: format with current page info e.g. "The diffusions of {program.name}" -- perhaps use pass **context
    • section exclude: exclude a section for a given page type
    • category page
    • for timetable, logs, etc. make station optional
    • django's message css displayed on pages when element is modified (remove bullet)
    • articles preview in different format

conventions

coding style

  • name of classes relative to a class:

    • metaclass: class_name + 'Meta'
    • base classes: class_name + 'Base'
  • import and naming:

    • the imported "models" file in the same application is named "models"
    • the imported "models" file from another application is named with the application's name
    • to avoid conflict:
      • django's settings can be named "main_settings"

aircox.cms

  • icons: cropped to 32x32
  • cover in list items: cropped 64x64

To discuss / To think

  • aircox_cms.signals: handle renaming of the program if the article's title has not been changed -> need to cache of the title at init
  • ensure per station website for all generated publications
  • aircox_cms: remove "station" fields when it is possible in the pages & sections

Long term TODO

programs: - sounds monitor: max_size of path, take in account - archives can be set afterwards for rerun, so check must be done at the same time we monitor - logs: archive functionnality - tools: - track stats for diffusions

cms: - player support diffusions with multiple archive files - comments -> remove/edit by the author

For the next version:

Refactorisation

  • move into aircox_streamer: Log, Port
  • move into aircox_cms: Page, NavItem, Category, StaticPage, etc.
  • use TextChoice and IntegerChoices in models fields enums