libreStage v0.5.8

Inhaltsverzeichnis

  • Installation
    • Voraussetzungen
    • Repository klonen
    • Backend einrichten
    • Umgebungsvariablen konfigurieren
    • Datenbank initialisieren
      • Optional: Demo-Datenbank laden
    • Frontend einrichten
    • Anwendung starten
    • Erster Login
    • Produktion
  • Konfiguration
    • Umgebungsvariablen (.env)
    • Anwendungskonfiguration (appConfig.json)
      • Song-Status
      • Gig-Status
    • Frontend-Konfiguration
  • Benutzerhandbuch
    • Dashboard
      • Todos
        • Songbewertungen
        • Abstimmungen
      • Saison-Statistiken
      • Kalender-Export (iCal)
    • Gigs
      • Gig anlegen
      • Status-Workflow
      • Setlist verwalten
      • Setlist-PDF generieren
      • Ablaufplan-PDF generieren
      • GEMA-Export (Excel)
      • Statistiken
    • Setlist-Editor
      • Sets anlegen
        • Set umbenennen
        • Set löschen
      • Songs hinzufügen
      • Drag & Drop
      • Zeitberechnung
        • Pausen
      • Sänger-Farb-Kodierung
      • Tastaturkürzel
    • Live-Modus
      • Verfügbarkeit
      • Song-Navigation
        • Desktop
        • Mobile (Touch)
        • Fortschrittsanzeige
      • Songbewertung
      • Song überspringen
      • Song einfügen
      • Session wiederverbinden
    • Song-Datenbank
      • Song anlegen
      • Status-Workflow
      • Filtern und Suchen
      • Song-Details und Statistiken
      • Song-Vorschläge & Abstimmung
        • Abstimmen
        • Abstimmungsergebnis auf einen Blick
        • Freigabe-Kriterien
        • Song übernehmen
        • Persönliche Abstimmung
    • Proben
      • Probe anlegen
      • Zeitraum in der Listenansicht
      • Songs und Todos in Proben
      • Protokoll führen
      • Vergangene Proben - Protokoll-Ansicht
      • Suche in vergangenen Proben
      • iCal-Export
    • Abstimmungen
      • Abstimmung anlegen
      • Umfragetypen
        • Meinungsumfrage
        • Terminfindung
        • Auftrittsanfrage
      • Abstimmung schließen
      • Benachrichtigungen
    • Benutzerverwaltung & Profil
      • Eigenes Profil
      • Passwort ändern
      • Passwort vergessen
      • Rollen und Berechtigungen
      • Benutzerverwaltung (nur Admin)
        • Benutzer anlegen
        • Benutzer bearbeiten
        • Status-Spalte
        • Passwort zurücksetzen
        • Benutzer deaktivieren
        • Benutzer reaktivieren
    • Admin-Konfiguration
      • Aufruf
      • Welche Werte koennen geaendert werden?
      • Bedienung
      • Validierung und Speicherung
      • API-Hinweis
  • REST-API
    • API-Dokumentation (Swagger)
    • Authentifizierung
    • Endpunkt-Übersicht
    • Rate Limiting

Entwickler-Referenz

  • Code-Referenz
    • backend.main
      • global_exception_handler()
      • http_exception_handler()
      • startup_event()
      • periodic_token_cleanup()
      • start_background_tasks()
      • get_todo_list()
      • login()
      • refresh_token()
      • logout()
      • get_me()
      • update_user()
      • change_password()
      • get_users_list()
      • get_user_todo()
      • set_user_todo_done()
      • get_version_dict()
      • health_check()
    • backend.database
      • get_db()
    • backend.auth
      • get_token_from_cookie_or_header()
      • hash_pw()
      • verify_password()
      • authenticate_user()
      • create_access_token()
      • create_refresh_token()
      • verify_refresh_token()
      • revoke_refresh_token()
      • blacklist_access_token()
      • create_password_reset_token()
      • get_db()
      • get_current_user()
      • get_current_user_dep()
      • check_user_role()
      • verify_password_reset_token()
    • backend.models
      • time_to_str()
      • User
        • User.id
        • User.user_name
        • User.user_pw
        • User.user_group
        • User.email
        • User.clear_name
        • User.musician
        • User.is_singer
        • User.mm_username
        • User.id
        • User.user_name
        • User.user_pw
        • User.user_group
        • User.email
        • User.clear_name
        • User.musician
        • User.is_singer
        • User.mm_username
        • User.status
      • UsedPasswordResetToken
        • UsedPasswordResetToken.id
        • UsedPasswordResetToken.token_hash
        • UsedPasswordResetToken.used_at
        • UsedPasswordResetToken.id
        • UsedPasswordResetToken.token_hash
        • UsedPasswordResetToken.used_at
      • RefreshToken
        • RefreshToken.id
        • RefreshToken.token_hash
        • RefreshToken.user_id
        • RefreshToken.expires_at
        • RefreshToken.created_at
        • RefreshToken.revoked
        • RefreshToken.user
        • RefreshToken.id
        • RefreshToken.token_hash
        • RefreshToken.user_id
        • RefreshToken.expires_at
        • RefreshToken.created_at
        • RefreshToken.revoked
        • RefreshToken.user
      • TokenBlacklist
        • TokenBlacklist.id
        • TokenBlacklist.token_hash
        • TokenBlacklist.blacklisted_at
        • TokenBlacklist.expires_at
        • TokenBlacklist.id
        • TokenBlacklist.token_hash
        • TokenBlacklist.blacklisted_at
        • TokenBlacklist.expires_at
      • RehTodo
        • RehTodo.id
        • RehTodo.id_song
        • RehTodo.id_reh
        • RehTodo.id_user
        • RehTodo.todo
        • RehTodo.dt
        • RehTodo.done
        • RehTodo.id
        • RehTodo.id_song
        • RehTodo.id_reh
        • RehTodo.id_user
        • RehTodo.todo
        • RehTodo.dt
        • RehTodo.done
      • RehSong
        • RehSong.id
        • RehSong.id_rehearsal
        • RehSong.id_song
        • RehSong.comment
        • RehSong.todo
        • RehSong.done
        • RehSong.rehearsal
        • RehSong.song
        • RehSong.todos
        • RehSong.id
        • RehSong.id_rehearsal
        • RehSong.id_song
        • RehSong.comment
        • RehSong.todo
        • RehSong.done
        • RehSong.title
        • RehSong.interpret
        • RehSong.status
        • RehSong.setlist_comment
        • RehSong.song_todos
        • RehSong.rehearsal
        • RehSong.song
        • RehSong.todos
      • Rehearsal
        • Rehearsal.id
        • Rehearsal.comment
        • Rehearsal.begin
        • Rehearsal.end
        • Rehearsal.ical
        • Rehearsal.songs
        • Rehearsal.id
        • Rehearsal.comment
        • Rehearsal.begin
        • Rehearsal.end
        • Rehearsal.ical
        • Rehearsal.songs
      • Gig
        • Gig.id
        • Gig.name
        • Gig.datum
        • Gig.organizer
        • Gig.kind_of_gig
        • Gig.venue
        • Gig.doors
        • Gig.begin
        • Gig.end
        • Gig.status
        • Gig.publish
        • Gig.sets
        • Gig.id
        • Gig.name
        • Gig.datum
        • Gig.organizer
        • Gig.kind_of_gig
        • Gig.venue
        • Gig.doors
        • Gig.begin
        • Gig.end
        • Gig.status
        • Gig.publish
        • Gig.sets
        • Gig.schedule_items
        • Gig.debug_dump()
        • Gig.to_dict()
      • Song
        • Song.id
        • Song.title
        • Song.interpret
        • Song.genre
        • Song.singer_background
        • Song.singer_lead
        • Song.composer
        • Song.texter
        • Song.publisher
        • Song.arrangement
        • Song.text
        • Song.tone_key
        • Song.status
        • Song.comment
        • Song.ytlink
        • Song.duration
        • Song.brass
        • Song.rehearsal_links
        • Song.feedbacks
        • Song.id
        • Song.title
        • Song.interpret
        • Song.genre
        • Song.singer_background
        • Song.singer_lead
        • Song.composer
        • Song.texter
        • Song.publisher
        • Song.arrangement
        • Song.text
        • Song.tone_key
        • Song.status
        • Song.comment
        • Song.ytlink
        • Song.duration
        • Song.brass
        • Song.rehearsal_links
        • Song.feedbacks
        • Song.to_setlist_dict()
        • Song.to_setlist_element()
      • SongCandidateFeedback
        • SongCandidateFeedback.id
        • SongCandidateFeedback.song_id
        • SongCandidateFeedback.user_id
        • SongCandidateFeedback.date
        • SongCandidateFeedback.feedback
        • SongCandidateFeedback.song
        • SongCandidateFeedback.id
        • SongCandidateFeedback.song_id
        • SongCandidateFeedback.user_id
        • SongCandidateFeedback.date
        • SongCandidateFeedback.feedback
        • SongCandidateFeedback.song
      • Set
        • Set.id
        • Set.name
        • Set.pause
        • Set.setlist_name
        • Set.gig_links
        • Set.songs
        • Set.id
        • Set.name
        • Set.pause
        • Set.setlist_name
        • Set.gig_links
        • Set.songs
        • Set.to_setlist_dict()
      • SetSong
        • SetSong.id
        • SetSong.id_set
        • SetSong.id_song
        • SetSong.position
        • SetSong.eingeschoben
        • SetSong.uebersprungen
        • SetSong.feedback
        • SetSong.song
        • SetSong.set
        • SetSong.id
        • SetSong.id_set
        • SetSong.id_song
        • SetSong.position
        • SetSong.eingeschoben
        • SetSong.uebersprungen
        • SetSong.feedback
        • SetSong.song
        • SetSong.set
        • SetSong.to_setlist_dict()
      • GigSet
        • GigSet.id
        • GigSet.id_gig
        • GigSet.id_set
        • GigSet.position
        • GigSet.gig
        • GigSet.set
        • GigSet.id
        • GigSet.id_gig
        • GigSet.id_set
        • GigSet.position
        • GigSet.gig
        • GigSet.set
      • GigScheduleItem
        • GigScheduleItem.id
        • GigScheduleItem.gig_id
        • GigScheduleItem.item_datetime
        • GigScheduleItem.was
        • GigScheduleItem.wer
        • GigScheduleItem.wo
        • GigScheduleItem.gig
      • Surveys
        • Surveys.id
        • Surveys.kind_of_survey
        • Surveys.rf_survey
        • Surveys.released
        • Surveys.closed
        • Surveys.user_created
        • Surveys.release_date
        • Surveys.datum
        • Surveys.fields
        • Surveys.id
        • Surveys.kind_of_survey
        • Surveys.rf_survey
        • Surveys.released
        • Surveys.closed
        • Surveys.user_created
        • Surveys.release_date
        • Surveys.fields
        • Surveys.datum
      • SurveyFields
        • SurveyFields.id
        • SurveyFields.id_survey
        • SurveyFields.field_text
        • SurveyFields.feedbacks
        • SurveyFields.id
        • SurveyFields.id_survey
        • SurveyFields.field_text
        • SurveyFields.feedbacks
      • SurveyFeedback
        • SurveyFeedback.id
        • SurveyFeedback.id_sv_field
        • SurveyFeedback.id_user
        • SurveyFeedback.datum
        • SurveyFeedback.value
        • SurveyFeedback.comment
        • SurveyFeedback.id
        • SurveyFeedback.id_sv_field
        • SurveyFeedback.id_user
        • SurveyFeedback.datum
        • SurveyFeedback.value
        • SurveyFeedback.comment
    • backend.schemas
      • LoginRequest
        • LoginRequest.username
        • LoginRequest.password
        • LoginRequest.strip_username()
        • LoginRequest.model_config
      • TokenResponse
        • TokenResponse.access_token
        • TokenResponse.token_type
        • TokenResponse.model_config
      • RefreshRequest
        • RefreshRequest.refresh_token
        • RefreshRequest.model_config
      • LogoutRequest
        • LogoutRequest.refresh_token
        • LogoutRequest.model_config
      • UserGroup
        • UserGroup.admin
        • UserGroup.editor
        • UserGroup.user
      • UserStatus
        • UserStatus.active
        • UserStatus.deactivated
      • UserCreate
        • UserCreate.user_name
        • UserCreate.clear_name
        • UserCreate.email
        • UserCreate.user_pw
        • UserCreate.user_group
        • UserCreate.musician
        • UserCreate.is_singer
        • UserCreate.status
        • UserCreate.model_config
      • UserOut
        • UserOut.id
        • UserOut.user_name
        • UserOut.user_group
        • UserOut.email
        • UserOut.clear_name
        • UserOut.musician
        • UserOut.is_singer
        • UserOut.mm_username
        • UserOut.status
        • UserOut.model_config
      • UserTodo
        • UserTodo.id
        • UserTodo.todo
        • UserTodo.user_name
        • UserTodo.song_title
        • UserTodo.song_interpret
        • UserTodo.done
        • UserTodo.dt
        • UserTodo.model_config
      • SongForFeedback
        • SongForFeedback.id
        • SongForFeedback.title
        • SongForFeedback.interpret
        • SongForFeedback.status
        • SongForFeedback.model_config
      • SurveyForFeedback
        • SurveyForFeedback.id
        • SurveyForFeedback.kind_of_survey
        • SurveyForFeedback.rf_survey
        • SurveyForFeedback.release_date
        • SurveyForFeedback.model_config
      • UserTodoList
        • UserTodoList.todo
        • UserTodoList.songs_to_feedback
        • UserTodoList.surveys_to_feedback
        • UserTodoList.model_config
      • PasswordUpdateRequest
        • PasswordUpdateRequest.user_id
        • PasswordUpdateRequest.old_password
        • PasswordUpdateRequest.new_password
        • PasswordUpdateRequest.model_config
      • PasswordResetRequest
        • PasswordResetRequest.new_password
        • PasswordResetRequest.model_config
      • SoftConfigOption
        • SoftConfigOption.key
        • SoftConfigOption.label
        • SoftConfigOption.model_config
      • SoftConfigUpdateIn
        • SoftConfigUpdateIn.genres
        • SoftConfigUpdateIn.gigTypes
        • SoftConfigUpdateIn.songStatuses
        • SoftConfigUpdateIn.gigStatuses
        • SoftConfigUpdateIn.tonekeys
        • SoftConfigUpdateIn.rehearsalSongStatuses
        • SoftConfigUpdateIn.setlist_timing
        • SoftConfigUpdateIn.model_config
      • SoftConfigOut
        • SoftConfigOut.genres
        • SoftConfigOut.gigTypes
        • SoftConfigOut.songStatuses
        • SoftConfigOut.gigStatuses
        • SoftConfigOut.tonekeys
        • SoftConfigOut.rehearsalSongStatuses
        • SoftConfigOut.setlist_timing
        • SoftConfigOut.model_config
      • SoftConfigMeta
        • SoftConfigMeta.editableKeys
        • SoftConfigMeta.updatedAt
        • SoftConfigMeta.model_config
      • SoftConfigAdminResponse
        • SoftConfigAdminResponse.data
        • SoftConfigAdminResponse.meta
        • SoftConfigAdminResponse.model_config
      • SoftConfigUpdateResponse
        • SoftConfigUpdateResponse.message
        • SoftConfigUpdateResponse.updatedKeys
        • SoftConfigUpdateResponse.data
        • SoftConfigUpdateResponse.model_config
      • SongIn
        • SongIn.title
        • SongIn.interpret
        • SongIn.genre
        • SongIn.singer_background
        • SongIn.singer_lead
        • SongIn.composer
        • SongIn.texter
        • SongIn.publisher
        • SongIn.arrangement
        • SongIn.tone_key
        • SongIn.status
        • SongIn.comment
        • SongIn.ytlink
        • SongIn.brass
        • SongIn.text
        • SongIn.id
        • SongIn.duration
        • SongIn.parse_duration()
        • SongIn.model_config
      • SongFeedbackIn
        • SongFeedbackIn.song_id
        • SongFeedbackIn.user_id
        • SongFeedbackIn.feedback
        • SongFeedbackIn.model_config
      • SongFeedbackBase
        • SongFeedbackBase.song_id
        • SongFeedbackBase.user_id
        • SongFeedbackBase.feedback
        • SongFeedbackBase.model_config
      • SongFeedbackSummary
        • SongFeedbackSummary.song_id
        • SongFeedbackSummary.total_votes
        • SongFeedbackSummary.yes_votes
        • SongFeedbackSummary.no_votes
        • SongFeedbackSummary.abstain_votes
        • SongFeedbackSummary.unknown_votes
        • SongFeedbackSummary.model_config
      • SongCandidateOut
        • SongCandidateOut.id
        • SongCandidateOut.title
        • SongCandidateOut.interpret
        • SongCandidateOut.genre
        • SongCandidateOut.singer_lead
        • SongCandidateOut.singer_background
        • SongCandidateOut.composer
        • SongCandidateOut.tone_key
        • SongCandidateOut.status
        • SongCandidateOut.ytlink
        • SongCandidateOut.brass
        • SongCandidateOut.duration
        • SongCandidateOut.feedbacks
        • SongCandidateOut.model_config
      • SongOut
        • SongOut.title
        • SongOut.interpret
        • SongOut.genre
        • SongOut.singer_background
        • SongOut.singer_lead
        • SongOut.composer
        • SongOut.texter
        • SongOut.publisher
        • SongOut.arrangement
        • SongOut.tone_key
        • SongOut.status
        • SongOut.comment
        • SongOut.ytlink
        • SongOut.duration
        • SongOut.brass
        • SongOut.id
        • SongOut.singer_lead_short
        • SongOut.duration_formatted
        • SongOut.model_config
      • SongScrawlOut
        • SongScrawlOut.recording_id
        • SongScrawlOut.work_id
        • SongScrawlOut.duration
        • SongScrawlOut.ytlink
        • SongScrawlOut.composers
        • SongScrawlOut.lyricists
        • SongScrawlOut.composer
        • SongScrawlOut.texter
        • SongScrawlOut.model_config
      • GigIn
        • GigIn.name
        • GigIn.datum
        • GigIn.venue
        • GigIn.kind_of_gig
        • GigIn.doors
        • GigIn.begin
        • GigIn.end
        • GigIn.organizer
        • GigIn.status
        • GigIn.id
        • GigIn.publish
        • GigIn.parse_date()
        • GigIn.parse_time_field()
        • GigIn.model_config
      • NewGig
        • NewGig.name
        • NewGig.datum
        • NewGig.venue
        • NewGig.kind_of_gig
        • NewGig.begin
        • NewGig.doors
        • NewGig.end
        • NewGig.organizer
        • NewGig.status
        • NewGig.publish
        • NewGig.set_default_times()
        • NewGig.model_config
      • GigOut
        • GigOut.name
        • GigOut.datum
        • GigOut.venue
        • GigOut.organizer
        • GigOut.kind_of_gig
        • GigOut.doors
        • GigOut.begin
        • GigOut.end
        • GigOut.status
        • GigOut.id
        • GigOut.publish
        • GigOut.model_config
      • GigScheduleItemIn
        • GigScheduleItemIn.item_datetime
        • GigScheduleItemIn.was
        • GigScheduleItemIn.wer
        • GigScheduleItemIn.wo
        • GigScheduleItemIn.model_config
      • GigScheduleItemOut
        • GigScheduleItemOut.id
        • GigScheduleItemOut.gig_id
        • GigScheduleItemOut.item_datetime
        • GigScheduleItemOut.was
        • GigScheduleItemOut.wer
        • GigScheduleItemOut.wo
        • GigScheduleItemOut.is_fixed
        • GigScheduleItemOut.model_config
      • GigScheduleOut
        • GigScheduleOut.items
        • GigScheduleOut.model_config
      • GigScheduleBulkItemIn
        • GigScheduleBulkItemIn.id
        • GigScheduleBulkItemIn.item_datetime
        • GigScheduleBulkItemIn.was
        • GigScheduleBulkItemIn.wer
        • GigScheduleBulkItemIn.wo
        • GigScheduleBulkItemIn.model_config
      • GigScheduleBulkUpdateIn
        • GigScheduleBulkUpdateIn.items
        • GigScheduleBulkUpdateIn.model_config
      • SetOut
        • SetOut.id
        • SetOut.position
        • SetOut.pause
        • SetOut.setlist_name
        • SetOut.songs
        • SetOut.model_config
      • SongInSetOut
        • SongInSetOut.id
        • SongInSetOut.setsong_id
        • SongInSetOut.song_id
        • SongInSetOut.position
        • SongInSetOut.title
        • SongInSetOut.duration
        • SongInSetOut.singer_lead
        • SongInSetOut.singer_background
        • SongInSetOut.interpret
        • SongInSetOut.genre
        • SongInSetOut.tone_key
        • SongInSetOut.ytlink
        • SongInSetOut.comment
        • SongInSetOut.brass
        • SongInSetOut.status
        • SongInSetOut.model_config
      • SetInGigOut
        • SetInGigOut.id
        • SetInGigOut.gigset_id
        • SetInGigOut.set_id
        • SetInGigOut.set_name
        • SetInGigOut.pause
        • SetInGigOut.setlist_name
        • SetInGigOut.songs
        • SetInGigOut.model_config
      • GigSetlistTimingOut
        • GigSetlistTimingOut.schedule
        • GigSetlistTimingOut.pause_before
        • GigSetlistTimingOut.set_end
        • GigSetlistTimingOut.model_config
      • GigSetlistOut
        • GigSetlistOut.id
        • GigSetlistOut.name
        • GigSetlistOut.datum
        • GigSetlistOut.organizer
        • GigSetlistOut.kind_of_gig
        • GigSetlistOut.venue
        • GigSetlistOut.doors
        • GigSetlistOut.begin
        • GigSetlistOut.end
        • GigSetlistOut.status
        • GigSetlistOut.publish
        • GigSetlistOut.sets
        • GigSetlistOut.timing
        • GigSetlistOut.model_config
      • SongInSetLM
        • SongInSetLM.id
        • SongInSetLM.title
        • SongInSetLM.interpret
        • SongInSetLM.position
        • SongInSetLM.tone_key
        • SongInSetLM.comment
        • SongInSetLM.uebersprungen
        • SongInSetLM.eingeschoben
        • SongInSetLM.feedback
        • SongInSetLM.model_config
      • SongInSetLMUpdate
        • SongInSetLMUpdate.id
        • SongInSetLMUpdate.uebersprungen
        • SongInSetLMUpdate.eingeschoben
        • SongInSetLMUpdate.feedback
        • SongInSetLMUpdate.model_config
      • SetInGigLM
        • SetInGigLM.id
        • SetInGigLM.position
        • SetInGigLM.pause
        • SetInGigLM.setlist_name
        • SetInGigLM.songs
        • SetInGigLM.model_config
      • GigSetListLiveMode
        • GigSetListLiveMode.id
        • GigSetListLiveMode.name
        • GigSetListLiveMode.datum
        • GigSetListLiveMode.doors
        • GigSetListLiveMode.begin
        • GigSetListLiveMode.end
        • GigSetListLiveMode.sets
        • GigSetListLiveMode.model_config
      • GetSetlistIn
        • GetSetlistIn.id
        • GetSetlistIn.name
        • GetSetlistIn.datum
        • GetSetlistIn.organizer
        • GetSetlistIn.kind_of_gig
        • GetSetlistIn.venue
        • GetSetlistIn.doors
        • GetSetlistIn.begin
        • GetSetlistIn.end
        • GetSetlistIn.status
        • GetSetlistIn.publish
        • GetSetlistIn.sets
        • GetSetlistIn.model_config
      • SongToSetIn
        • SongToSetIn.gigId
        • SongToSetIn.songId
        • SongToSetIn.setId
        • SongToSetIn.position
      • TodoInSong
        • TodoInSong.id
        • TodoInSong.id_song
        • TodoInSong.id_reh
        • TodoInSong.id_user
        • TodoInSong.todo
        • TodoInSong.dt
        • TodoInSong.done
        • TodoInSong.model_config
      • SongInReh
        • SongInReh.id
        • SongInReh.id_rehearsal
        • SongInReh.id_song
        • SongInReh.interpret
        • SongInReh.title
        • SongInReh.status
        • SongInReh.comment
        • SongInReh.setlist_comment
        • SongInReh.todo
        • SongInReh.song_todos
        • SongInReh.done
        • SongInReh.model_config
      • SongRehearsalHistoryTodo
        • SongRehearsalHistoryTodo.id
        • SongRehearsalHistoryTodo.id_user
        • SongRehearsalHistoryTodo.todo
        • SongRehearsalHistoryTodo.done
        • SongRehearsalHistoryTodo.model_config
      • SongRehearsalHistoryEntry
        • SongRehearsalHistoryEntry.rehearsal_id
        • SongRehearsalHistoryEntry.rehearsal_date
        • SongRehearsalHistoryEntry.comment
        • SongRehearsalHistoryEntry.todo
        • SongRehearsalHistoryEntry.done
        • SongRehearsalHistoryEntry.rehearsal_comment
        • SongRehearsalHistoryEntry.todos
        • SongRehearsalHistoryEntry.model_config
      • GigPlayedEntry
        • GigPlayedEntry.gig_id
        • GigPlayedEntry.gig_name
        • GigPlayedEntry.gig_date
        • GigPlayedEntry.feedback
        • GigPlayedEntry.uebersprungen
        • GigPlayedEntry.eingeschoben
        • GigPlayedEntry.model_config
      • CompanionSong
        • CompanionSong.song_id
        • CompanionSong.title
        • CompanionSong.interpret
        • CompanionSong.count
        • CompanionSong.model_config
      • SongStatistics
        • SongStatistics.rehearsal_count
        • SongStatistics.first_rehearsal
        • SongStatistics.last_rehearsal
        • SongStatistics.gig_count
        • SongStatistics.gigs_played
        • SongStatistics.feedback_count
        • SongStatistics.feedback_avg
        • SongStatistics.feedback_distribution
        • SongStatistics.skipped_count
        • SongStatistics.inserted_count
        • SongStatistics.companion_songs
        • SongStatistics.model_config
      • GigOverviewEntry
        • GigOverviewEntry.gig_id
        • GigOverviewEntry.gig_name
        • GigOverviewEntry.gig_date
        • GigOverviewEntry.song_count
        • GigOverviewEntry.skipped_count
        • GigOverviewEntry.inserted_count
        • GigOverviewEntry.feedback_avg
        • GigOverviewEntry.model_config
      • TopSongEntry
        • TopSongEntry.song_id
        • TopSongEntry.title
        • TopSongEntry.interpret
        • TopSongEntry.count
        • TopSongEntry.model_config
      • GenreTimelinePoint
        • GenreTimelinePoint.label
        • GenreTimelinePoint.date
        • GenreTimelinePoint.kind_of_gig
        • GenreTimelinePoint.genre_counts
        • GenreTimelinePoint.total
        • GenreTimelinePoint.model_config
      • GenrePaletteOut
        • GenrePaletteOut.palette
        • GenrePaletteOut.model_config
      • SeasonStatistics
        • SeasonStatistics.jahr
        • SeasonStatistics.gig_count
        • SeasonStatistics.played_gig_count
        • SeasonStatistics.total_songs
        • SeasonStatistics.unique_songs
        • SeasonStatistics.skipped_count
        • SeasonStatistics.inserted_count
        • SeasonStatistics.feedback_count
        • SeasonStatistics.feedback_avg
        • SeasonStatistics.feedback_distribution
        • SeasonStatistics.genre_distribution
        • SeasonStatistics.genre_timeline
        • SeasonStatistics.top_songs
        • SeasonStatistics.gigs_overview
        • SeasonStatistics.model_config
      • GigStatsSongEntry
        • GigStatsSongEntry.song_id
        • GigStatsSongEntry.title
        • GigStatsSongEntry.interpret
        • GigStatsSongEntry.position
        • GigStatsSongEntry.feedback
        • GigStatsSongEntry.uebersprungen
        • GigStatsSongEntry.eingeschoben
        • GigStatsSongEntry.model_config
      • GigStatsSetEntry
        • GigStatsSetEntry.set_name
        • GigStatsSetEntry.feedback_avg
        • GigStatsSetEntry.songs
        • GigStatsSetEntry.model_config
      • GigStatistics
        • GigStatistics.gig_id
        • GigStatistics.gig_name
        • GigStatistics.gig_date
        • GigStatistics.song_count
        • GigStatistics.skipped_count
        • GigStatistics.inserted_count
        • GigStatistics.feedback_count
        • GigStatistics.feedback_avg
        • GigStatistics.feedback_distribution
        • GigStatistics.genre_distribution
        • GigStatistics.genre_timeline
        • GigStatistics.sets
        • GigStatistics.model_config
      • RehListElem
        • RehListElem.id
        • RehListElem.begin
        • RehListElem.end
        • RehListElem.comment
        • RehListElem.ical
        • RehListElem.songs
        • RehListElem.model_config
      • NewRehDict
        • NewRehDict.begin
        • NewRehDict.end
        • NewRehDict.comment
        • NewRehDict.validate_time_range()
        • NewRehDict.model_config
      • UserListElem
        • UserListElem.id
        • UserListElem.user_name
        • UserListElem.clear_name
        • UserListElem.email
        • UserListElem.model_config
      • SurveyFeedbackOut
        • SurveyFeedbackOut.id
        • SurveyFeedbackOut.id_sv_field
        • SurveyFeedbackOut.id_user
        • SurveyFeedbackOut.value
        • SurveyFeedbackOut.comment
        • SurveyFeedbackOut.model_config
      • SurveyFieldsOut
        • SurveyFieldsOut.id
        • SurveyFieldsOut.id_survey
        • SurveyFieldsOut.field_text
        • SurveyFieldsOut.feedbacks
        • SurveyFieldsOut.model_config
      • SurveyQuestionOut
        • SurveyQuestionOut.id
        • SurveyQuestionOut.kind_of_survey
        • SurveyQuestionOut.rf_survey
        • SurveyQuestionOut.released
        • SurveyQuestionOut.release_date
        • SurveyQuestionOut.closed
        • SurveyQuestionOut.fields
        • SurveyQuestionOut.user_created
        • SurveyQuestionOut.model_config
      • SurveyList
        • SurveyList.id
        • SurveyList.kind_of_survey
        • SurveyList.rf_survey
        • SurveyList.released
        • SurveyList.closed
        • SurveyList.release_date
        • SurveyList.user_created
        • SurveyList.model_config
      • SurveyFieldIn
        • SurveyFieldIn.field_text
        • SurveyFieldIn.model_config
      • SurveyIn
        • SurveyIn.kind_of_survey
        • SurveyIn.rf_survey
        • SurveyIn.released
        • SurveyIn.closed
        • SurveyIn.fields
        • SurveyIn.model_config
      • PublicSongHistogram
        • PublicSongHistogram.genre
        • PublicSongHistogram.count
        • PublicSongHistogram.model_config
      • PublicDate
        • PublicDate.Datum
        • PublicDate.Name
        • PublicDate.Ort
        • PublicDate.Einlass
        • PublicDate.Beginn
        • PublicDate.Ende
        • PublicDate.Veranstalter
        • PublicDate.Art
        • PublicDate.from_gig()
        • PublicDate.model_config
    • backend.app_config
      • ConfigValidationError
      • load_config()
      • get_config()
      • get_soft_config()
      • get_soft_config_updated_at()
      • update_soft_config()
      • get_frontend_config()
    • backend.routers
      • backend.routers.admin
        • user_is_admin()
        • admin_get_soft_config()
        • admin_update_soft_config()
        • LogFilter
        • get_all_users()
        • update_user()
        • deactivate_user()
        • activate_user()
        • create_user()
        • trigger_password_reset()
      • backend.routers.cal
        • LogFilter
        • get_iCal_Abo()
      • backend.routers.gigs
        • LogFilter
        • list_gigs()
        • get_season_statistics()
        • get_genre_palette()
        • get_livemode_available_batch()
        • is_livemode_available()
        • get_gig_statistics()
        • get_gig_schedule()
        • get_gig_schedule_pdf()
        • create_gig_schedule_item()
        • update_gig_schedule_bulk()
        • update_gig_schedule_item()
        • delete_gig_schedule_item()
        • update_gig()
        • parse_name()
        • download_gemalist()
        • download_setlist()
        • get_gig_setlist()
        • export_forscore_setlist()
        • update_gig_setlist()
        • create_new_gig()
        • delete_gig()
        • is_setlist_available()
      • backend.routers.gigs_livemode
        • LogFilter
        • get_gigs_lm()
        • update_songs_lm()
        • insert_song_after()
      • backend.routers.password_reset
        • mark_token_as_used()
        • verify_reset_token()
        • set_new_password()
      • backend.routers.public
        • LogFilter
        • get_app_config()
        • get_song_histogram()
        • get_dates()
        • get_logo()
      • backend.routers.rehearsals
        • get_reh_list()
        • get_rehearsal_list()
        • create_new_rehearsal()
        • update_rehearsal()
        • delete_rehearsal()
      • backend.routers.songs
        • get_song_candidates()
        • get_songs()
        • get_song_rehearsal_history()
        • get_song_feedback_history()
        • get_song_statistics()
        • update_song()
        • delete_song()
        • create_song()
        • update_song_feedback()
        • accept_song_candidate()
        • get_singers()
        • get_song_scrawls()
      • backend.routers.surveys
        • get_surveys_from_db()
        • read_surveys()
        • create_survey()
        • read_survey()
        • update_survey_feedback()
        • delete_survey()
        • close_survey()
        • send_reminder()
    • backend.services
      • backend.services.setlist
        • SetlistService
    • backend.utils
      • backend.utils.check_permissions
        • check_admin()
        • check_editor()
      • backend.utils.email
      • backend.utils.mattermost
        • send_mm_message()
      • backend.utils.password_validator
        • validate_password()
      • backend.utils.token_cleanup
        • cleanup_expired_tokens()
    • backend.pdf
      • backend.pdf.generator
        • SetlistPDF

Weitere Informationen

  • Datenschutzrichtlinie (iOS-App)
    • 1. Verantwortliche Stelle
    • 2. Welche Daten verarbeitet werden
    • 3. Zwecke der Verarbeitung
    • 4. Rechtsgrundlagen
    • 5. Speicherung und Sicherheit
    • 6. Empfaenger und Drittland
    • 7. Speicherdauer
    • 8. Deine Rechte
    • 9. Bereitstellungspflicht
    • 10. Aenderungen
  • Änderungsprotokoll
    • 0.5.8 (2026-06-05)
      • Changed
    • 0.5.7 (2026-06-04)
      • Changed
    • 0.5.6 (2026-06-03)
      • Changed
    • 0.5.5 (2026-06-03)
      • Added
      • Changed
    • 0.5.4 (2026-06-02)
      • Added
      • Changed
    • 0.5.3 (2026-05-28)
      • Added
      • Changed
    • 0.5.2 (2026-05-27)
      • Added
      • Changed
    • 0.5.1 (2026-05-26)
      • Added
      • Changed
    • 0.5.0 (2026-05-26)
      • Added
      • Changed
    • 0.4.6a (2026-05-23)
      • Fixed
      • Changed
    • 0.4.6 (2026-05-23)
      • Changed
    • 0.4.5 (2026-05-22)
      • Added
      • Changed
    • 0.4.4 (2026-05-19)
      • Added
      • Changed
    • 0.4.3 (2026-05-18)
      • Added
      • Changed
    • 0.4.2 (2026-05-17)
      • Added
      • Changed
    • v0.4.1 (2026-05-15)
    • v0.4.0 (2026-05-12)
    • v0.3.16 (2026-05-04)
    • v0.3.15 (2026-04-18)
    • v0.3.13 (2026-03-16)
    • v0.3.12 (2026-03-15)
    • v0.3.11 (2026-03-15)
    • v0.3.10 (2026-03-15)
    • v0.3.9 (2026-03-14)
    • v0.3.5 (2026-03-10)
    • v0.3.0
    • v0.2.0
    • v0.1.0
libreStage v0.5.8
  • Überblick: Modul-Quellcode

Alle Module, für die Quellcode verfügbar ist

  • backend.app_config
  • backend.auth
  • backend.database
  • backend.main
  • backend.models
  • backend.pdf.generator
  • backend.routers.admin
  • backend.routers.cal
  • backend.routers.gigs
  • backend.routers.gigs_livemode
  • backend.routers.password_reset
  • backend.routers.public
  • backend.routers.rehearsals
  • backend.routers.songs
  • backend.routers.surveys
  • backend.schemas
  • backend.services.setlist
  • backend.utils.check_permissions
  • backend.utils.mattermost
  • backend.utils.password_validator
  • backend.utils.token_cleanup

© Copyright 2026, libreStage contributors.

Erstellt mit Sphinx mit einem theme bereitgestellt von Read the Docs.