diff --git a/.gitignore b/.gitignore
index d25063b..40497c7 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,6 +2,7 @@
# Edit at https://www.gitignore.io/?templates=linux,macos,python,django,windows,pycharm,intellij,visualstudio
### Django ###
+*.env
*.log
*.pot
*.pyc
diff --git a/back/.env b/back/.env
index b47f7a4..3b79ce5 100644
--- a/back/.env
+++ b/back/.env
@@ -1,4 +1,4 @@
-EMAIL_HOST_USER=accountemail@yourmail.com
-EMAIL_HOST_PASSWORD=accountpasswordhere
-SUBMIT_REPORT_DESTINATION_EMAIL=to-address@yourmail.com
+EMAIL_HOST_USER=accountemail@youremail.com
+EMAIL_HOST_PASSWORD=yourpassword
+SUBMIT_REPORT_DESTINATION_EMAIL=administratoremail@yourmail.com
SUBMIT_REPORT_FROM_EMAIL=from-address@yourmail.com
diff --git a/back/backend/migrations/0009_report_reference_number.py b/back/backend/migrations/0009_report_reference_number.py
new file mode 100644
index 0000000..c2d275a
--- /dev/null
+++ b/back/backend/migrations/0009_report_reference_number.py
@@ -0,0 +1,18 @@
+# Generated by Django 2.1.7 on 2019-03-01 20:17
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('backend', '0008_auto_20190214_1421'),
+ ]
+
+ operations = [
+ migrations.AddField(
+ model_name='report',
+ name='reference_number',
+ field=models.CharField(default='', max_length=32),
+ ),
+ ]
diff --git a/back/backend/models.py b/back/backend/models.py
index 69db8ee..952a553 100644
--- a/back/backend/models.py
+++ b/back/backend/models.py
@@ -13,6 +13,7 @@ class Report(models.Model):
date_created = models.DateTimeField('date created', default=datetime.date.today)
date_submitted = models.DateTimeField('date submitted', default=datetime.date.today)
submitted = models.BooleanField(default=False)
+ reference_number = models.CharField(max_length=32, default='')
def __str__(self):
"""
diff --git a/back/backend/templates/backend/email.html b/back/backend/templates/backend/email.html
index b985302..44f9358 100644
--- a/back/backend/templates/backend/email.html
+++ b/back/backend/templates/backend/email.html
@@ -4,6 +4,7 @@
Title: {{ title }}
+ Reference #: {{ reference_number }}
{% for section in sections %}
{% if section.completed %}
{{section.title}}
diff --git a/back/backend/templates/backend/email.txt b/back/backend/templates/backend/email.txt
index 43f9df7..9f90da2 100644
--- a/back/backend/templates/backend/email.txt
+++ b/back/backend/templates/backend/email.txt
@@ -4,6 +4,7 @@
***
Title: {{title}}
+Reference #: {{reference_number}}
{% for section in sections %}
{{section.title}}
{% for field in section.fields %}
diff --git a/back/backend/views.py b/back/backend/views.py
index 1d55aec..2913f82 100644
--- a/back/backend/views.py
+++ b/back/backend/views.py
@@ -23,6 +23,7 @@ def get_report(report_pk):
"date_created": i.date_created,
"submitted": i.submitted,
"date_submitted": i.date_submitted,
+ "reference_number": i.reference_number,
}
# append the sections for each report
data.update(get_sections(i.id))
@@ -121,8 +122,12 @@ def report(request):
}
"""
# Create the report
- report = Report.objects.create(user_id=request.user, title=request.data['title'],
- date_created=datetime.date.today())
+ report = Report.objects.create(
+ user_id=request.user,
+ title=request.data['title'],
+ date_created=datetime.date.today(),
+ reference_number=request.data['reference']
+ )
report.save()
# Create the sections
@@ -161,6 +166,7 @@ def reports(request):
"date_created": i.date_created,
"submitted": i.submitted,
"date_submitted": i.date_submitted,
+ "reference_number": i.reference_number,
}
# append the sections for each report
report_set["reports"].append(data.copy())
@@ -385,13 +391,23 @@ def send_report_to_admin(request, report_pk):
cc = request.user.email
msg_html = render_to_string('backend/email.html', params)
msg_plain = render_to_string('backend/email.txt', params)
- message = EmailMultiAlternatives(
- "Reimbursinator - {}".format(params['title']),
- msg_plain,
- from_email,
- [to_email],
- cc=[request.user.email],
- )
+ message = None
+ if params['reference_number'] == '':
+ message = EmailMultiAlternatives(
+ "{}".format(params['title']),
+ msg_plain,
+ from_email,
+ [to_email],
+ cc=[request.user.email],
+ )
+ else:
+ message = EmailMultiAlternatives(
+ "[RT - Request Tracker #{}] {}".format(params['reference_number'], params['title']),
+ msg_plain,
+ from_email,
+ [to_email],
+ cc=[request.user.email],
+ )
message.attach_alternative(msg_html, "text/html")
for f in get_files(report_pk):
message.attach_file(f)
diff --git a/back/db.sqlite3 b/back/db.sqlite3
index e1d4159..2ab8b3b 100644
Binary files a/back/db.sqlite3 and b/back/db.sqlite3 differ
diff --git a/front/static/js/viewHistory.js b/front/static/js/viewHistory.js
index 99d182e..97b4884 100644
--- a/front/static/js/viewHistory.js
+++ b/front/static/js/viewHistory.js
@@ -560,7 +560,7 @@ if (newReportForm) {
newReportForm.addEventListener("submit", function(event) {
event.preventDefault();
const url = getEndpointDomain() + "api/v1/report";
- const payload = JSON.stringify({ "title": event.target.elements.title.value });
+ const payload = JSON.stringify({ "title": event.target.elements.title.value, "reference": event.target.elements.reference.value });
console.log("Payload:\n" + payload);
const type = reportType.NEW;
makeAjaxRequest("POST", url, createReportForm, type, payload);
diff --git a/front/static/new_report.html b/front/static/new_report.html
index 7caf52b..cda82ca 100644
--- a/front/static/new_report.html
+++ b/front/static/new_report.html
@@ -51,6 +51,10 @@
+
+
+
+