Made fresh database with frank user.
This commit is contained in:
commit
2a62eb94b1
19 changed files with 56 additions and 211 deletions
|
@ -1,4 +1,4 @@
|
|||
EMAIL_HOST_USER=reimbursinator@gmail.com
|
||||
EMAIL_HOST_PASSWORD=Frank12345
|
||||
SUBMIT_REPORT_DESTINATION_EMAIL=kououken@gmail.com
|
||||
SUBMIT_REPORT_FROM_EMAIL=admin@reimbursinator.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
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
# Generated by Django 2.1.5 on 2019-02-01 00:21
|
||||
# Generated by Django 2.1.7 on 2019-03-03 08:55
|
||||
|
||||
import datetime
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
|
||||
|
@ -16,16 +17,17 @@ class Migration(migrations.Migration):
|
|||
name='Field',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('field_name', models.CharField(default='field', max_length=512)),
|
||||
('label', models.CharField(max_length=512)),
|
||||
('number', models.IntegerField()),
|
||||
('type', models.CharField(max_length=128)),
|
||||
('number', models.IntegerField(default=0)),
|
||||
('field_type', models.CharField(max_length=128)),
|
||||
('completed', models.BooleanField(default=False)),
|
||||
('data_bool', models.BooleanField(default=False)),
|
||||
('data_decimal', models.DecimalField(blank=True, decimal_places=2, max_digits=9, null=True)),
|
||||
('data_decimal', models.DecimalField(decimal_places=2, default=0, max_digits=9)),
|
||||
('data_date', models.DateField(blank=True, null=True)),
|
||||
('data_file', models.FileField(blank=True, max_length=512, null=True, upload_to='uploads/%Y/%m/%d/')),
|
||||
('data_string', models.TextField(default='')),
|
||||
('data_integer', models.IntegerField(blank=True, null=True)),
|
||||
('data_string', models.TextField(blank=True, default='')),
|
||||
('data_integer', models.IntegerField(blank=True, default=0)),
|
||||
],
|
||||
),
|
||||
migrations.CreateModel(
|
||||
|
@ -33,21 +35,23 @@ class Migration(migrations.Migration):
|
|||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('title', models.CharField(max_length=128)),
|
||||
('date_created', models.DateTimeField(verbose_name='date created')),
|
||||
('date_submitted', models.DateTimeField(blank=True, null=True, verbose_name='date submitted')),
|
||||
('date_created', models.DateTimeField(default=datetime.date.today, verbose_name='date created')),
|
||||
('date_submitted', models.DateTimeField(default=datetime.date.today, verbose_name='date submitted')),
|
||||
('submitted', models.BooleanField(default=False)),
|
||||
('reference_number', models.CharField(default='', max_length=32)),
|
||||
],
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='Section',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('auto_submit', models.BooleanField()),
|
||||
('required', models.BooleanField()),
|
||||
('completed', models.BooleanField()),
|
||||
('auto_submit', models.BooleanField(default=False)),
|
||||
('required', models.BooleanField(default=False)),
|
||||
('completed', models.BooleanField(default=False)),
|
||||
('title', models.CharField(max_length=256)),
|
||||
('html_description', models.TextField()),
|
||||
('number', models.IntegerField()),
|
||||
('approved', models.BooleanField(default=False)),
|
||||
('report_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='backend.Report')),
|
||||
],
|
||||
),
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# Generated by Django 2.1.5 on 2019-02-01 00:21
|
||||
# Generated by Django 2.1.7 on 2019-03-03 08:55
|
||||
|
||||
from django.conf import settings
|
||||
from django.db import migrations, models
|
||||
|
@ -10,8 +10,8 @@ class Migration(migrations.Migration):
|
|||
initial = True
|
||||
|
||||
dependencies = [
|
||||
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
||||
('backend', '0001_initial'),
|
||||
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
||||
]
|
||||
|
||||
operations = [
|
|
@ -1,39 +0,0 @@
|
|||
# Generated by Django 2.1.5 on 2019-02-01 00:37
|
||||
|
||||
import datetime
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('backend', '0002_auto_20190131_1621'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='field',
|
||||
name='data_date',
|
||||
field=models.DateField(default=datetime.date.today, verbose_name='date'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='field',
|
||||
name='data_integer',
|
||||
field=models.IntegerField(blank=True, default=0),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='field',
|
||||
name='data_string',
|
||||
field=models.TextField(blank=True, default=''),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='report',
|
||||
name='date_created',
|
||||
field=models.DateTimeField(default=datetime.date.today, verbose_name='date created'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='report',
|
||||
name='date_submitted',
|
||||
field=models.DateTimeField(default=datetime.date.today, verbose_name='date submitted'),
|
||||
),
|
||||
]
|
|
@ -1,19 +0,0 @@
|
|||
# Generated by Django 2.1.5 on 2019-02-01 00:45
|
||||
|
||||
import datetime
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('backend', '0003_auto_20190131_1637'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='field',
|
||||
name='data_date',
|
||||
field=models.DateField(default=datetime.date.today),
|
||||
),
|
||||
]
|
|
@ -1,18 +0,0 @@
|
|||
# Generated by Django 2.1.5 on 2019-02-07 22:02
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('backend', '0004_auto_20190131_1645'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='field',
|
||||
name='field_name',
|
||||
field=models.CharField(default='field', max_length=512),
|
||||
),
|
||||
]
|
|
@ -1,18 +0,0 @@
|
|||
# Generated by Django 2.1.5 on 2019-02-14 01:19
|
||||
|
||||
from django.db import migrations
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('backend', '0005_field_field_name'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.RenameField(
|
||||
model_name='field',
|
||||
old_name='type',
|
||||
new_name='field_type',
|
||||
),
|
||||
]
|
|
@ -1,18 +0,0 @@
|
|||
# Generated by Django 2.1.5 on 2019-02-14 05:13
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('backend', '0005_field_field_name'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='field',
|
||||
name='data_date',
|
||||
field=models.DateField(blank=True, null=True),
|
||||
),
|
||||
]
|
|
@ -1,14 +0,0 @@
|
|||
# Generated by Django 2.1.5 on 2019-02-14 07:18
|
||||
|
||||
from django.db import migrations
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('backend', '0006_auto_20190213_1719'),
|
||||
('backend', '0006_auto_20190213_2113'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
]
|
|
@ -1,38 +0,0 @@
|
|||
# Generated by Django 2.1.5 on 2019-02-14 22:21
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('backend', '0007_merge_20190213_2318'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='field',
|
||||
name='data_decimal',
|
||||
field=models.DecimalField(decimal_places=2, default=0, max_digits=9),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='field',
|
||||
name='number',
|
||||
field=models.IntegerField(default=0),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='section',
|
||||
name='auto_submit',
|
||||
field=models.BooleanField(default=False),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='section',
|
||||
name='completed',
|
||||
field=models.BooleanField(default=False),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='section',
|
||||
name='required',
|
||||
field=models.BooleanField(default=False),
|
||||
),
|
||||
]
|
|
@ -1,18 +0,0 @@
|
|||
# Generated by Django 2.1.7 on 2019-03-01 19:22
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('backend', '0008_auto_20190214_1421'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='section',
|
||||
name='approved',
|
||||
field=models.BooleanField(default=False),
|
||||
),
|
||||
]
|
|
@ -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):
|
||||
"""
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
</head>
|
||||
<body>
|
||||
<h1>Title: {{ title }}</h1>
|
||||
<p>Reference #: {{ reference_number }}</p>
|
||||
{% for section in sections %}
|
||||
{% if section.completed %}
|
||||
<h2>{{section.title}} (SID: {{section.id}})</h2>
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
***
|
||||
|
||||
Title: {{title}}
|
||||
Reference #: {{reference_number}}
|
||||
{% for section in sections %}
|
||||
{{section.title}}(SID: {{section.id}})
|
||||
{% for field in section.fields %}
|
||||
|
|
|
@ -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,8 +391,18 @@ 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 = None
|
||||
if params['reference_number'] == '':
|
||||
message = EmailMultiAlternatives(
|
||||
"Reimbursinator - {}".format(params['title']),
|
||||
"{}".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],
|
||||
|
|
BIN
back/db.sqlite3
BIN
back/db.sqlite3
Binary file not shown.
|
@ -1,4 +1,4 @@
|
|||
# Generated by Django 2.1.5 on 2019-02-01 00:21
|
||||
# Generated by Django 2.1.7 on 2019-03-03 08:55
|
||||
|
||||
import django.contrib.auth.models
|
||||
import django.contrib.auth.validators
|
||||
|
@ -34,9 +34,9 @@ class Migration(migrations.Migration):
|
|||
('user_permissions', models.ManyToManyField(blank=True, help_text='Specific permissions for this user.', related_name='user_set', related_query_name='user', to='auth.Permission', verbose_name='user permissions')),
|
||||
],
|
||||
options={
|
||||
'verbose_name_plural': 'users',
|
||||
'verbose_name': 'user',
|
||||
'abstract': False,
|
||||
'verbose_name_plural': 'users',
|
||||
},
|
||||
managers=[
|
||||
('objects', django.contrib.auth.models.UserManager()),
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -51,6 +51,10 @@
|
|||
<label for="title">Report title:</label>
|
||||
<input type="text" class="form-control" name="title" id="title" autofocus>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="reference">Ticket number (if available):</label>
|
||||
<input type="text" class="form-control" name="reference" id="reference">
|
||||
</div>
|
||||
<button type="submit" class="btn btn-primary" data-toggle="modal" data-target="#newReportModal">Create</button>
|
||||
</form>
|
||||
</div>
|
||||
|
|
Loading…
Reference in a new issue