コード例 #1
0
class SiteGeneralContentAdmin(admin.ModelAdmin):
    fields = public_fields(SiteGeneralContent)

    def get_form(self, request, obj=None, **kwargs):
        form = super().get_form(request, obj, **kwargs)
        form.base_fields['hero_content'].widget = CKEditorWidget()
        form.base_fields['action_list_lead_content'].widget = CKEditorWidget()
        form.base_fields[
            'indicator_list_lead_content'].widget = CKEditorWidget()
        form.base_fields['dashboard_lead_content'].widget = CKEditorWidget()
        return form

    def get_queryset(self, request):
        qs = super().get_queryset(request)
        plan = request.user.get_active_admin_plan()
        return qs.filter(plan=plan)

    def has_add_permission(self, request, obj=None):
        plan = request.user.get_active_admin_plan()
        if SiteGeneralContent.objects.filter(plan=plan).exists():
            return False
        return request.user.is_general_admin_for_plan(plan)

    def has_delete_permission(self, request, obj=None):
        return False

    def save_model(self, request, obj, form, change):
        obj.plan = request.user.get_active_admin_plan()
        super().save_model(request, obj, form, change)
コード例 #2
0
ファイル: api.py プロジェクト: sweco-sefjod/kausal-watch
 class Meta:
     model = Plan
     fields = public_fields(
         Plan,
         add_fields=['url'],
         remove_fields=[
             'static_pages', 'general_content', 'blog_posts', 'indicator_levels',
             'monitoring_quality_points'
         ]
     )
     filterset_fields = {
         'identifier': ('exact',),
     }
コード例 #3
0
ファイル: api.py プロジェクト: sweco-sefjod/kausal-watch
 class Meta:
     model = ImpactGroup
     fields = public_fields(ImpactGroup, remove_fields=['actions'])
コード例 #4
0
ファイル: api.py プロジェクト: sweco-sefjod/kausal-watch
 class Meta:
     model = Action
     fields = public_fields(Action, remove_fields=[
         'responsible_parties', 'contact_persons', 'impact', 'status_updates', 'monitoring_quality_points'
     ])
コード例 #5
0
ファイル: schema.py プロジェクト: kausaltech/kausal-watch
 class Meta:
     model = SiteGeneralContent
     only_fields = public_fields(SiteGeneralContent)
コード例 #6
0
ファイル: schema.py プロジェクト: kausaltech/kausal-watch
 class Meta:
     model = IndicatorGoal
     only_fields = public_fields(IndicatorGoal)
コード例 #7
0
ファイル: schema.py プロジェクト: kausaltech/kausal-watch
 class Meta:
     model = ImpactGroup
     only_fields = public_fields(ImpactGroup, remove_fields=['name'])
コード例 #8
0
ファイル: schema.py プロジェクト: kausaltech/kausal-watch
 class Meta:
     model = Scenario
     only_fields = public_fields(Scenario)
コード例 #9
0
ファイル: schema.py プロジェクト: kausaltech/kausal-watch
 class Meta:
     model = Plan
     only_fields = public_fields(Plan, remove_fields=['image_url'])