diff --git a/dr_botzo/settings.py b/dr_botzo/settings.py index 59b4dd9..426a5f4 100644 --- a/dr_botzo/settings.py +++ b/dr_botzo/settings.py @@ -38,7 +38,6 @@ INSTALLED_APPS = [ 'django.contrib.staticfiles', 'django.contrib.sites', 'django_extensions', - 'adminplus', 'bootstrap3', 'rest_framework', 'countdown', diff --git a/dr_botzo/urls.py b/dr_botzo/urls.py index c7c2163..6740a42 100644 --- a/dr_botzo/urls.py +++ b/dr_botzo/urls.py @@ -1,14 +1,9 @@ """General/baselite/site-wide URLs.""" -from adminplus.sites import AdminSitePlus from django.conf.urls import include from django.contrib import admin from django.urls import path from django.views.generic import TemplateView -admin.site = AdminSitePlus() -admin.sites.site = admin.site -admin.autodiscover() - urlpatterns = [ path('', TemplateView.as_view(template_name='index.html'), name='index'), diff --git a/ircbot/admin.py b/ircbot/admin.py index 6051ecb..2f3a99a 100644 --- a/ircbot/admin.py +++ b/ircbot/admin.py @@ -1,36 +1,13 @@ """Manage ircbot models and admin actions in the admin interface.""" - import logging -import xmlrpc.client from django.contrib import admin -from django.shortcuts import render -from ircbot.forms import PrivmsgForm from ircbot.models import Alias, BotUser, IrcChannel, IrcPlugin, IrcServer log = logging.getLogger('ircbot.admin') -def send_privmsg(request): - """Send a privmsg over XML-RPC to the IRC bot.""" - if request.method == 'POST': - form = PrivmsgForm(request.POST) - if form.is_valid(): - target = form.cleaned_data['target'] - message = form.cleaned_data['message'] - - bot_url = 'http://{0:s}:{1:d}/'.format(form.cleaned_data['xmlrpc_host'], - form.cleaned_data['xmlrpc_port']) - bot = xmlrpc.client.ServerProxy(bot_url, allow_none=True) - bot.reply(None, message, False, target) - form = PrivmsgForm() - else: - form = PrivmsgForm() - - return render(request, 'privmsg.html', {'form': form}) - - admin.site.register(Alias) admin.site.register(BotUser) admin.site.register(IrcChannel) diff --git a/ircbot/templates/privmsg.html b/ircbot/templates/privmsg.html deleted file mode 100644 index be86d3a..0000000 --- a/ircbot/templates/privmsg.html +++ /dev/null @@ -1,15 +0,0 @@ -{% extends 'adminplus/index.html' %} - -{% block title %}Ircbot - Privmsg{% endblock %} - -{% block content %} -
-
- {% csrf_token %} - - {{ form }} -
- -
-
-{% endblock %} diff --git a/markov/admin.py b/markov/admin.py index 393077f..c816659 100644 --- a/markov/admin.py +++ b/markov/admin.py @@ -1,15 +1,9 @@ """Manage Markov models and administrative commands.""" - import logging from django.contrib import admin -from django.contrib.auth.decorators import permission_required -from django.shortcuts import render - -from markov.forms import LogUploadForm, TeachLineForm -import markov.lib as markovlib -from markov.models import MarkovContext, MarkovTarget, MarkovState +from markov.models import MarkovContext, MarkovState, MarkovTarget log = logging.getLogger('markov.admin') @@ -17,91 +11,3 @@ log = logging.getLogger('markov.admin') admin.site.register(MarkovContext) admin.site.register(MarkovTarget) admin.site.register(MarkovState) - - -@permission_required('import_text_file', raise_exception=True) -def import_file(request): - """Accept a file upload and turn it into markov stuff. - - Current file formats supported: - * weechat - """ - - if request.method == 'POST': - form = LogUploadForm(request.POST, request.FILES) - if form.is_valid(): - if form.cleaned_data['text_file_format'] == LogUploadForm.FILE_FORMAT_WEECHAT: - text_file = request.FILES['text_file'] - context = form.cleaned_data['context'] - ignores = form.cleaned_data['ignore_nicks'].split(',') - strips = form.cleaned_data['strip_prefixes'].split(' ') - - whos = [] - for line in text_file: - log.debug(line) - (timestamp, who, what) = line.decode('utf-8').split('\t', 2) - - if who in ('-->', '<--', '--', ' *'): - continue - - if who in ignores: - continue - - whos.append(who) - - # this is a line we probably care about now - what = [x for x in what.rstrip().split(' ') if x not in strips] - markovlib.learn_line(' '.join(what), context) - log.debug("learned") - - log.debug(set(whos)) - form = LogUploadForm() - elif form.cleaned_data['text_file_format'] == LogUploadForm.FILE_FORMAT_RAW_TEXT: - text_file = request.FILES['text_file'] - context = form.cleaned_data['context'] - - k1 = MarkovState._start1 - k2 = MarkovState._start2 - for line in text_file: - for word in [x for x in line.decode('utf-8') .rstrip().split(' ')]: - log.info(word) - if word: - state, created = MarkovState.objects.get_or_create(context=context, k1=k1, - k2=k2, v=word) - state.count += 1 - state.save() - - if word[-1] in ['.', '?', '!']: - state, created = MarkovState.objects.get_or_create(context=context, k1=k2, - k2=word, v=MarkovState._stop) - state.count += 1 - state.save() - - k1 = MarkovState._start1 - k2 = MarkovState._start2 - else: - k1 = k2 - k2 = word - else: - form = LogUploadForm() - - return render(request, 'markov/import_file.html', {'form': form}) - - -@permission_required('teach_line', raise_exception=True) -def teach_line(request): - """Teach one line directly.""" - - if request.method == 'POST': - form = TeachLineForm(request.POST) - if form.is_valid(): - line = form.cleaned_data['line'] - context = form.cleaned_data['context'] - strips = form.cleaned_data['strip_prefixes'].split(' ') - what = [x for x in line.rstrip().split(' ') if x not in strips] - markovlib.learn_line(' '.join(what), context) - form = TeachLineForm() - else: - form = TeachLineForm() - - return render(request, 'markov/teach_line.html', {'form': form}) diff --git a/markov/templates/markov/import_file.html b/markov/templates/markov/import_file.html deleted file mode 100644 index 70bd456..0000000 --- a/markov/templates/markov/import_file.html +++ /dev/null @@ -1,15 +0,0 @@ -{% extends 'adminplus/index.html' %} - -{% block title %}Markov - Import log file{% endblock %} - -{% block content %} -
-
- {% csrf_token %} - - {{ form }} -
- -
-
-{% endblock %} diff --git a/markov/templates/markov/teach_line.html b/markov/templates/markov/teach_line.html deleted file mode 100644 index 8353010..0000000 --- a/markov/templates/markov/teach_line.html +++ /dev/null @@ -1,15 +0,0 @@ -{% extends 'adminplus/index.html' %} - -{% block title %}Markov - Teach line{% endblock %} - -{% block content %} -
-
- {% csrf_token %} - - {{ form }} -
- -
-
-{% endblock %} diff --git a/requirements/requirements-dev.txt b/requirements/requirements-dev.txt index ba28a18..f877b6e 100644 --- a/requirements/requirements-dev.txt +++ b/requirements/requirements-dev.txt @@ -51,8 +51,6 @@ django==5.0.4 # django-bootstrap3 # django-extensions # djangorestframework -django-adminplus==0.6 - # via -r requirements/requirements.in django-bootstrap3==24.2 # via -r requirements/requirements.in django-extensions==3.2.3 diff --git a/requirements/requirements.in b/requirements/requirements.in index 0dff09a..8e85e2d 100644 --- a/requirements/requirements.in +++ b/requirements/requirements.in @@ -1,5 +1,4 @@ Django # core -django-adminplus # admin.site.register_view django-bootstrap3 # bootstrap layout django-extensions # more commands djangorestframework # WS API diff --git a/requirements/requirements.txt b/requirements/requirements.txt index c3479fa..c489036 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -16,8 +16,6 @@ django==5.0.4 # django-bootstrap3 # django-extensions # djangorestframework -django-adminplus==0.6 - # via -r requirements/requirements.in django-bootstrap3==24.2 # via -r requirements/requirements.in django-extensions==3.2.3