diff --git a/TealCode/TealCode/settings.py b/TealCode/TealCode/settings.py index 6b45e23..8754e2d 100644 --- a/TealCode/TealCode/settings.py +++ b/TealCode/TealCode/settings.py @@ -42,6 +42,7 @@ INSTALLED_APPS = [ 'django.contrib.staticfiles', 'main.apps.MainConfig', 'analytics.apps.AnalyticsConfig', + 'taggit', ] MIDDLEWARE = [ diff --git a/TealCode/main/admin.py b/TealCode/main/admin.py index 142aea1..578afce 100644 --- a/TealCode/main/admin.py +++ b/TealCode/main/admin.py @@ -1,5 +1,6 @@ from django.contrib import admin -from .models import Category, Topic +from .models import Category, Rating, Topic admin.site.register(Category) -admin.site.register(Topic) \ No newline at end of file +admin.site.register(Topic) +admin.site.register(Rating) \ No newline at end of file diff --git a/TealCode/main/migrations/0009_auto_20211122_0903.py b/TealCode/main/migrations/0009_auto_20211122_0903.py new file mode 100644 index 0000000..30b2d22 --- /dev/null +++ b/TealCode/main/migrations/0009_auto_20211122_0903.py @@ -0,0 +1,30 @@ +# Generated by Django 3.2.9 on 2021-11-22 08:03 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('main', '0008_alter_topic_output'), + ] + + operations = [ + migrations.RemoveField( + model_name='topic', + name='not_useful', + ), + migrations.RemoveField( + model_name='topic', + name='tags', + ), + migrations.RemoveField( + model_name='topic', + name='useful', + ), + migrations.AddField( + model_name='topic', + name='read_more', + field=models.TextField(blank=True), + ), + ] diff --git a/TealCode/main/migrations/0010_topic_tags.py b/TealCode/main/migrations/0010_topic_tags.py new file mode 100644 index 0000000..42ba376 --- /dev/null +++ b/TealCode/main/migrations/0010_topic_tags.py @@ -0,0 +1,20 @@ +# Generated by Django 3.2.9 on 2021-11-22 09:59 + +from django.db import migrations +import taggit.managers + + +class Migration(migrations.Migration): + + dependencies = [ + ('taggit', '0003_taggeditem_add_unique_index'), + ('main', '0009_auto_20211122_0903'), + ] + + operations = [ + migrations.AddField( + model_name='topic', + name='tags', + field=taggit.managers.TaggableManager(help_text='A comma-separated list of tags.', through='taggit.TaggedItem', to='taggit.Tag', verbose_name='Tags'), + ), + ] diff --git a/TealCode/main/migrations/0011_rating.py b/TealCode/main/migrations/0011_rating.py new file mode 100644 index 0000000..d40972e --- /dev/null +++ b/TealCode/main/migrations/0011_rating.py @@ -0,0 +1,25 @@ +# Generated by Django 3.2.9 on 2021-11-22 10:47 + +from django.db import migrations, models +import django.db.models.deletion +import django.utils.timezone + + +class Migration(migrations.Migration): + + dependencies = [ + ('main', '0010_topic_tags'), + ] + + operations = [ + migrations.CreateModel( + name='Rating', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('is_positive', models.BooleanField()), + ('ip', models.CharField(max_length=90)), + ('date_created', models.DateTimeField(default=django.utils.timezone.now)), + ('topic', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='main.topic')), + ], + ), + ] diff --git a/TealCode/main/models.py b/TealCode/main/models.py index 044827a..7ccd553 100644 --- a/TealCode/main/models.py +++ b/TealCode/main/models.py @@ -1,6 +1,7 @@ from django.db import models from django.db.models.fields.related import ForeignKey from django.utils import timezone +from taggit.managers import TaggableManager class Category(models.Model): title = models.CharField(max_length=100, unique=True) @@ -18,9 +19,17 @@ class Topic(models.Model): date_created = models.DateTimeField(default=timezone.now) category = models.ForeignKey(Category, on_delete=models.CASCADE) version = models.CharField(max_length=100, blank=True) - tags = models.CharField(max_length=200, blank=True) - useful = models.IntegerField(default=0) - not_useful = models.IntegerField(default=0) + read_more = models.TextField(blank=True) + tags = TaggableManager() def __str__(self): return self.category.title + " - " + self.title + +class Rating(models.Model): + topic = models.ForeignKey(Topic, on_delete=models.CASCADE) + is_positive = models.BooleanField() + ip = models.CharField(max_length=90 ) + date_created = models.DateTimeField(default=timezone.now) + + def __str__(self): + return self.topic.title + " - " + self.is_positive + " - " + self.ip + " - " + self.date_created \ No newline at end of file diff --git a/TealCode/main/static/css/style.css b/TealCode/main/static/css/style.css index 5dfd94e..0b81ce6 100644 --- a/TealCode/main/static/css/style.css +++ b/TealCode/main/static/css/style.css @@ -19,6 +19,11 @@ color:rgb(21, 200, 132) !important; } +.current{ + color:rgb(21, 200, 132) !important; + text-decoration: underline; +} + .list-group-item{ background-color: rgb(32, 102, 99); color: white; diff --git a/TealCode/main/templates/base.html b/TealCode/main/templates/base.html index 079c2b0..b95a0a1 100644 --- a/TealCode/main/templates/base.html +++ b/TealCode/main/templates/base.html @@ -20,7 +20,7 @@ {% if title %} -