Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
M
midterm_nicsbabes
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Nics De Vega
midterm_nicsbabes
Commits
458d9613
Commit
458d9613
authored
May 11, 2023
by
Gabriel Geraldo
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'widget_calendarv2'
parents
6c13082c
ac6aefdc
Changes
8
Show whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
128 additions
and
38 deletions
+128
-38
forms.py
widget_nicsbabes/widget_calendar/forms.py
+11
-0
models.py
widget_nicsbabes/widget_calendar/models.py
+10
-3
calendar.html
...s/widget_calendar/templates/widget_calendar/calendar.html
+29
-0
event-add.html
.../widget_calendar/templates/widget_calendar/event-add.html
+15
-0
event-details.html
...get_calendar/templates/widget_calendar/event-details.html
+22
-0
event-edit.html
...widget_calendar/templates/widget_calendar/event-edit.html
+15
-0
urls.py
widget_nicsbabes/widget_calendar/urls.py
+6
-2
views.py
widget_nicsbabes/widget_calendar/views.py
+20
-33
No files found.
widget_nicsbabes/widget_calendar/forms.py
0 → 100644
View file @
458d9613
from
django
import
forms
from
.models
import
Event
class
EventCreateForm
(
forms
.
ModelForm
):
class
Meta
:
model
=
Event
fields
=
[
'activity'
,
'target_datetime'
,
'estimated_hours'
,
'location'
,
'course'
]
widgets
=
{
'target_datetime'
:
forms
.
DateTimeInput
(
attrs
=
{
'type'
:
'datetime-local'
})
}
widget_nicsbabes/widget_calendar/models.py
View file @
458d9613
from
django.db
import
models
from
django.db
import
models
from
assignments.models
import
Course
from
assignments.models
import
Course
from
django.urls
import
reverse
class
Location
(
models
.
Model
):
class
Location
(
models
.
Model
):
ONSITE
=
'onsite'
ONSITE
=
'onsite'
...
@@ -20,7 +20,7 @@ class Location(models.Model):
...
@@ -20,7 +20,7 @@ class Location(models.Model):
venue
=
models
.
CharField
(
max_length
=
255
)
venue
=
models
.
CharField
(
max_length
=
255
)
def
__str__
(
self
):
def
__str__
(
self
):
return
'{}
({})
'
.
format
(
return
'{}
- {}
'
.
format
(
self
.
venue
,
self
.
venue
,
self
.
mode
self
.
mode
)
)
...
@@ -38,4 +38,11 @@ class Event(models.Model):
...
@@ -38,4 +38,11 @@ class Event(models.Model):
self
.
activity
,
self
.
activity
,
self
.
course
self
.
course
)
)
def
get_absolute_url
(
self
):
return
reverse
(
"widget_calendar:event_details"
,
kwargs
=
{
"pk"
:
self
.
pk
})
def
get_date
(
self
):
return
self
.
target_datetime
.
strftime
(
"
%
m/
%
d/
%
Y"
)
def
get_time
(
self
):
return
self
.
target_datetime
.
strftime
(
"
%
I:
%
M
%
p"
)
\ No newline at end of file
widget_nicsbabes/widget_calendar/templates/widget_calendar/calendar.html
0 → 100644
View file @
458d9613
{% extends 'base.html' %}
{% load static %}
{% block title %}Widget's Calendar of Activities{% endblock title %}
{% block content %}
<h1>
Widget's Calendar of Activities
</h1>
{% for event in events %}
<p><strong>
<a
href=
"{{ event.get_absolute_url }}"
>
<li>
{{ event.activity }}
</li>
</a>
</strong></p>
{% endfor %}
<form
action=
"events/add"
>
<input
type=
"submit"
value=
"Add Activity"
>
</form>
<div>
<a
href=
"../dashboard/"
>
Dashboard
</a><br>
<a
href=
"../announcements/"
>
Announcements
</a><br>
<a
href=
"../forum/"
>
Forum
</a><br>
<a
href=
"../assignments/"
>
Assignments
</a><br>
</div>
{% endblock content %}
\ No newline at end of file
widget_nicsbabes/widget_calendar/templates/widget_calendar/event-add.html
0 → 100644
View file @
458d9613
{% extends 'base.html' %}
{% load static %}
{% block title %}Add Activity{% endblock %}
{% block content %}
<h1>
Add a new activity:
</h1>
<div
class=
"new_user"
>
<form
method=
"post"
>
{% csrf_token %}
{{ form.as_p }}
<button
type=
"submit"
>
Save New Activity
</button>
</form>
</div>
{% endblock %}
widget_nicsbabes/widget_calendar/templates/widget_calendar/event-details.html
0 → 100644
View file @
458d9613
{% extends 'base.html' %}
{% load static %}
{% block title %}{{ object.activity }}{% endblock %}
{% block content %}
<div
style=
"text-transform:uppercase;"
>
<h1>
{{ object.activity }}
</h1>
</div>
<h2>
Date and Time: {{ object.get_date }}, {{ object.get_time }}
<br>
Estimated Hours: {{ object.estimated_hours }}
<br>
{{ object.course.code }} {{ object.course.title }} - {{ object.course.section }}
<br>
Mode: {{ object.location.mode }}
<br>
Venue: {{ object.location.venue }}
</h2>
<form
action=
"edit"
>
<input
type=
"submit"
value=
"Edit Activity"
>
</form>
{% endblock %}
widget_nicsbabes/widget_calendar/templates/widget_calendar/event-edit.html
0 → 100644
View file @
458d9613
{% extends 'base.html' %}
{% load static %}
{% block title %}Edit Activity{% endblock %}
{% block content %}
<h1>
Edit Activity:
</h1>
<div
class=
"new_user"
>
<form
method=
"post"
>
{% csrf_token %}
{{ form.as_p }}
<button
type=
"submit"
>
Save New Activity
</button>
</form>
</div>
{% endblock %}
widget_nicsbabes/widget_calendar/urls.py
View file @
458d9613
from
django.urls
import
path
from
django.urls
import
path
from
.views
import
index
from
.views
import
index
,
EventDetailView
,
EventCreateView
,
EventUpdateView
urlpatterns
=
[
urlpatterns
=
[
path
(
''
,
index
,
name
=
'index'
)
path
(
''
,
index
,
name
=
'index'
),
path
(
'events/<int:pk>/details'
,
EventDetailView
.
as_view
(),
name
=
'event_details'
),
path
(
'events/<int:pk>/edit'
,
EventUpdateView
.
as_view
(),
name
=
'event_edit'
),
path
(
'events/add'
,
EventCreateView
.
as_view
(),
name
=
'event_add'
),
]
]
app_name
=
"widget_calendar"
app_name
=
"widget_calendar"
\ No newline at end of file
widget_nicsbabes/widget_calendar/views.py
View file @
458d9613
from
django.shortcuts
import
render
from
django.shortcuts
import
render
from
django.http
import
HttpResponse
from
django.http
import
HttpResponse
from
.models
import
Event
,
Location
from
.models
import
Event
,
Location
from
.forms
import
EventCreateForm
from
django.views.generic.edit
import
CreateView
,
UpdateView
from
django.views.generic.detail
import
DetailView
def
index
(
HttpRequest
):
def
index
(
HttpRequest
):
html_output
=
'''
events
=
Event
.
objects
.
all
()
<html>
args
=
{
'events'
:
events
}
<head>
return
render
(
HttpRequest
,
'widget_calendar/calendar.html'
,
args
)
<title>Calendar</title>
</head>
class
EventDetailView
(
DetailView
):
<body>
model
=
Event
<h1>Widget's Calendar of Activities</h1>
template_name
=
"widget_calendar/event-details.html"
'''
for
event
in
Event
.
objects
.
all
():
class
EventCreateView
(
CreateView
):
html_output
+=
'''
form_class
=
EventCreateForm
<p>
# taken from: https://stackoverflow.com/questions/27321692/override-a-django-generic-class-based-view-widget
Date and Time: {}<br>
template_name
=
"widget_calendar/event-add.html"
Activity: {}<br>
Estimated Hours: {}<br>
class
EventUpdateView
(
UpdateView
):
Course/Section: {} {}-{}<br>
model
=
Event
Mode: {}<br>
form_class
=
EventCreateForm
Venue: {}<br>
template_name
=
"widget_calendar/event-edit.html"
</p>
'''
.
format
(
event
.
target_datetime
.
strftime
(
"
%
m/
%
d/
%
Y,
%
I:
%
M
%
p"
),
event
.
activity
,
event
.
estimated_hours
,
event
.
course
,
event
.
course
.
title
,
event
.
course
.
section
,
event
.
location
.
mode
,
event
.
location
.
venue
)
html_output
+=
'''
</body>
</html>
'''
return
HttpResponse
(
html_output
)
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment