Tag progetto, @menzioni, appuntamenti da conversazioni
- Modello Tag con nome e colore, M2M su Conversazione - Modello Appuntamento con luogo, note, partecipanti, link a Conversazione - @menzioni nei commenti e aggiornamenti: @username → link al profilo - Autocomplete JS per @menzioni nelle textarea - Auto-data conversazioni (default=now) - CRUD completo appuntamenti con permessi autore - Appuntamenti in agenda, dashboard, dettaglio conversazione - Crea riunione direttamente da una conversazione (pre-compila titolo e partecipanti) - Admin: Tag, Appuntamento registrati
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
from django.contrib import admin
|
||||
from .models import Conversazione, Obiettivo, AggiornamentoObiettivo, CommentoConversazione, Documento
|
||||
from .models import Conversazione, Obiettivo, AggiornamentoObiettivo, CommentoConversazione, Documento, Tag, Appuntamento
|
||||
|
||||
|
||||
class AggiornamentoInline(admin.TabularInline):
|
||||
@@ -31,9 +31,9 @@ class DocumentoObiettivoInline(admin.TabularInline):
|
||||
@admin.register(Conversazione)
|
||||
class ConversazioneAdmin(admin.ModelAdmin):
|
||||
list_display = ('titolo', 'data', 'registrato_da')
|
||||
list_filter = ('data', 'registrato_da')
|
||||
list_filter = ('data', 'registrato_da', 'tags')
|
||||
search_fields = ('titolo', 'contenuto')
|
||||
filter_horizontal = ('partecipanti',)
|
||||
filter_horizontal = ('partecipanti', 'tags')
|
||||
readonly_fields = ('data',)
|
||||
inlines = [CommentoConversazioneInline, DocumentoInline]
|
||||
|
||||
@@ -68,3 +68,23 @@ class DocumentoAdmin(admin.ModelAdmin):
|
||||
search_fields = ('titolo', 'descrizione')
|
||||
readonly_fields = ('data_caricamento',)
|
||||
|
||||
|
||||
@admin.register(Tag)
|
||||
class TagAdmin(admin.ModelAdmin):
|
||||
list_display = ('nome', 'colore')
|
||||
search_fields = ('nome',)
|
||||
|
||||
|
||||
class AppuntamentoPartecipantiInline(admin.TabularInline):
|
||||
model = Appuntamento.partecipanti.through
|
||||
extra = 0
|
||||
|
||||
|
||||
@admin.register(Appuntamento)
|
||||
class AppuntamentoAdmin(admin.ModelAdmin):
|
||||
list_display = ('titolo', 'data_ora', 'luogo', 'creato_da', 'conversazione')
|
||||
list_filter = ('data_ora', 'creato_da')
|
||||
search_fields = ('titolo', 'note', 'luogo')
|
||||
filter_horizontal = ('partecipanti',)
|
||||
readonly_fields = ('data_creazione',)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user