Enable / Disable Plugins

Fixes #2292
This commit is contained in:
Matthias 2021-11-12 00:46:47 +01:00
parent ae5031e997
commit 685d3df6d1
No known key found for this signature in database
GPG Key ID: F50EF5741D33E076
4 changed files with 74 additions and 0 deletions

View File

@ -0,0 +1,9 @@
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
from django.contrib import admin
import plugin.models as models
admin.site.register(models.PluginConfig, admin.ModelAdmin)

View File

@ -0,0 +1,23 @@
# Generated by Django 3.2.5 on 2021-11-11 23:37
from django.db import migrations, models
class Migration(migrations.Migration):
initial = True
dependencies = [
]
operations = [
migrations.CreateModel(
name='PluginConfig',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('key', models.CharField(help_text='Key of plugin', max_length=255, unique=True, verbose_name='Key')),
('name', models.CharField(blank=True, help_text='PluginName of the plugin', max_length=255, null=True, verbose_name='Name')),
('active', models.BooleanField(default=False, help_text='Is the plugin active', verbose_name='Active')),
],
),
]

View File

View File

@ -0,0 +1,42 @@
"""
Plugin model definitions
"""
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
from django.utils.translation import gettext_lazy as _
from django.db import models
class PluginConfig(models.Model):
""" A PluginConfig object holds settings for plugins.
It is used to designate a Part as 'subscribed' for a given User.
Attributes:
key: slug of the plugin - must be unique
name: PluginName of the plugin - serves for a manual double check if the right plugin is used
active: Should the plugin be loaded?
"""
key = models.CharField(
unique=True,
max_length=255,
verbose_name=_('Key'),
help_text=_('Key of plugin'),
)
name = models.CharField(
null=True,
blank=True,
max_length=255,
verbose_name=_('Name'),
help_text=_('PluginName of the plugin'),
)
active = models.BooleanField(
default=False,
verbose_name=_('Active'),
help_text=_('Is the plugin active'),
)