aircox/notes.md
Thomas Kairos 2ce435fb5d !112 !94: tests commons modules that contains most of the logic + zoneinfo (#113)
!112

Co-authored-by: bkfox <thomas bkfox net>
Reviewed-on: #113
2023-08-23 15:28:17 +02:00

2.5 KiB
Executable File

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