Commit 586a30f2 authored by Nics De Vega's avatar Nics De Vega

modified app models and templates

parent da2041a0
from django.db import models from django.db import models
from dashboard.models import WidgetUser from dashboard.models import WidgetUser
from django.urls import reverse
from django.utils import timezone
class Announcement(models.Model): class Announcement(models.Model):
title = models.CharField(max_length=100,default="") title = models.CharField(max_length=100,default="")
body = models.TextField(default="") body = models.TextField(default="")
author = models.ForeignKey(WidgetUser,on_delete=models.CASCADE) author = models.ForeignKey(WidgetUser,on_delete=models.CASCADE)
pub_datetime = models.DateTimeField() pub_datetime = models.DateTimeField(default=timezone.now)
def __str__(self): def __str__(self):
return '{} by {}'.format(self.title, self.author) return '{} by {}'.format(self.title, self.author)
def get_absolute_url(self):
return reverse("announcement_board:announcement-details",kwargs={'pk':self.pk})
def get_reactions(self):
reacts = {'Like':0,'Love':0,'Angry':0}
for key in reacts.keys():
try:
reacts[key]=Reaction.objects.get(announcement=self,name=key).tally
except:
reacts[key]=0
return reacts
class Reaction(models.Model): class Reaction(models.Model):
name = models.CharField(max_length=20,default="") name = models.CharField(max_length=20,default="")
......
{% extends 'base.html' %} {% extends 'base.html' %}
{% load static %} {% load static %}
{% block title %}{% endblock %} {% block title %}Add Announcement{% endblock %}
{% block content %} {% block content %}
<h2>Add a new Announcement</h2>
<form method="post">
{% csrf_token %}
{% for field in form %}
<h3>{{field.label}}: {{field}} <br><br></h3>
{% endfor %}
<input type="submit" value="Add Announcement">
</form>
{% endblock %} {% endblock %}
{% extends 'base.html' %} {% extends 'base.html' %}
{% load static %} {% load static %}
{% block title %}{% endblock %} {% block title %}{{object.title}}{% endblock %}
{% block content %} {% block content %}
<h2>{{object.title}}</h2>
<ul>
<li><h3>by {{object.author.first_name}} {{object.author.last_name}}</h3></li>
<li><h3>{{object.pub_datetime|date:'m/d/Y h:i A'}}</h3></li>
<li><h3>{{object.body}}</h4></li>
{%for key, value in object.get_reactions.items%}
<li><h3>{{key}}: {{value}}</h3></li>
{% endfor%}
<h3><a href="../edit/">Edit Announcement</a></h3>
</ul>
{% endblock %} {% endblock %}
{% extends 'base.html' %} {% extends 'base.html' %}
{% load static %} {% load static %}
{% block title %}{% endblock %} {% block title %}Edit Announcement{% endblock %}
{% block content %} {% block content %}
<h2>Edit Announcement</h2>
<form method="post">
{% csrf_token %}
{% for field in form %}
<h3>{{field.label}}: {{field}} <br><br></h3>
{% endfor %}
<input type="submit" value="Save Changes to Announcement">
</form>
{% endblock %} {% endblock %}
{% extends 'base.html' %} {% extends 'base.html' %}
{% load static %} {% load static %}
{% block title %}{% endblock %} {% block title %}Widget's Announcement Board{% endblock %}
{% block content %} {% block content %}
<h2>Welcome to Widget's Announcement Board!</h2>
<br>
{% for object in announcements %}
<h3><a href="{{ object.get_absolute_url }}">{{object.title}} by {{object.author.first_name}} {{object.author.last_name}}</a></h3>
{% endfor %}
<br>
<h3><a href="add/">Add Announcement</a></h3>
<br>
<h2>
<small>
<a href="../dashboard/">Dashboard</a><br>
<a href="../forum/">Forum</a><br>
<a href="../assignments/">Assignments</a><br>
<a href="../calendar/">Calendar</a><br>
</small>
</h2>
{% endblock %} {% endblock %}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment