Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
AE UTBM
Sith
Commits
9d1eaed6
Commit
9d1eaed6
authored
Jan 03, 2017
by
Skia
🤘
Browse files
Make some weekmail views
parent
8bd81910
Changes
5
Hide whitespace changes
Inline
Side-by-side
com/models.py
View file @
9d1eaed6
from
django.db
import
models
from
django.db
import
models
,
transaction
from
django.utils.translation
import
ugettext_lazy
as
_
from
django.core.urlresolvers
import
reverse_lazy
,
reverse
from
django.conf
import
settings
from
django.core.mail
import
EmailMessage
from
core.models
import
User
from
club.models
import
Club
...
...
@@ -70,7 +71,7 @@ class Weekmail(models.Model):
"""
The weekmail class
"""
title
=
models
.
CharField
(
_
(
"title"
),
max_length
=
64
)
title
=
models
.
CharField
(
_
(
"title"
),
max_length
=
64
,
blank
=
True
)
intro
=
models
.
TextField
(
_
(
"intro"
),
blank
=
True
)
joke
=
models
.
TextField
(
_
(
"joke"
),
blank
=
True
)
protip
=
models
.
TextField
(
_
(
"protip"
),
blank
=
True
)
...
...
@@ -81,9 +82,18 @@ class Weekmail(models.Model):
ordering
=
[
'-id'
]
def
send
(
self
):
print
(
"Sending weekmail n°"
+
str
(
self
.
id
))
self
.
sent
=
True
self
.
save
()
with
transaction
.
atomic
():
print
(
"Sending weekmail n°"
+
str
(
self
.
id
))
email
=
EmailMessage
(
subject
=
self
.
title
,
body
=
"
\n\n
"
.
join
([
self
.
intro
,
self
.
joke
,
self
.
protip
,
self
.
conclusion
]),
from_email
=
settings
.
DEFAULT_FROM_EMAIL
,
to
=
[],
bcc
=
Sith
.
objects
.
first
().
weekmail_destinations
.
split
(
' '
),
)
self
.
sent
=
True
self
.
save
()
Weekmail
().
save
()
class
WeekmailArticle
(
models
.
Model
):
weekmail
=
models
.
ForeignKey
(
Weekmail
,
related_name
=
"articles"
,
verbose_name
=
_
(
"weekmail"
))
...
...
com/templates/com/weekmail.jinja
View file @
9d1eaed6
...
...
@@ -5,8 +5,13 @@
{%
endblock
%}
{%
block
content
%}
<h3>
{%
trans
%}
Weekmail
{%
endtrans
%}
</h3>
{{
object
}}
<h3>
{%
trans
%}
Weekmail
{%
endtrans
%}
</h3>
{{
object
}}
<form
action=
""
method=
"post"
enctype=
"multipart/form-data"
>
{%
csrf_token
%}
{{
form.as_p
()
}}
<p><input
type=
"submit"
value=
"
{%
trans
%}
Save
{%
endtrans
%}
"
/></p>
</form>
{%
endblock
%}
...
...
com/urls.py
View file @
9d1eaed6
...
...
@@ -7,6 +7,7 @@ urlpatterns = [
url
(
r
'^sith/edit/info$'
,
InfoMsgEditView
.
as_view
(),
name
=
'info_edit'
),
url
(
r
'^sith/edit/index$'
,
IndexEditView
.
as_view
(),
name
=
'index_edit'
),
url
(
r
'^weekmail$'
,
WeekmailEditView
.
as_view
(),
name
=
'weekmail'
),
url
(
r
'^weekmail/club/(?P<club_id>[0-9]+)/new_article$'
,
WeekmailArticleCreateView
.
as_view
(),
name
=
'weekmail_article'
),
url
(
r
'^news$'
,
NewsListView
.
as_view
(),
name
=
'news_list'
),
url
(
r
'^news/admin$'
,
NewsAdminListView
.
as_view
(),
name
=
'news_admin_list'
),
url
(
r
'^news/create$'
,
NewsCreateView
.
as_view
(),
name
=
'news_new'
),
...
...
com/views.py
View file @
9d1eaed6
...
...
@@ -223,8 +223,14 @@ class NewsDetailView(CanViewMixin, DetailView):
class
WeekmailEditView
(
UpdateView
):
model
=
Weekmail
template_name
=
'com/weekmail.jinja'
fields
=
[
'title'
,
'intro'
,
'joke'
,
'protip'
,
'conclusion'
]
success_url
=
reverse_lazy
(
'com:weekmail'
)
def
get_object
(
self
,
queryset
=
None
):
return
self
.
model
.
objects
.
order_by
(
'-id'
).
first
()
weekmail
=
self
.
model
.
objects
.
filter
(
sent
=
False
).
order_by
(
'-id'
).
first
()
if
not
weekmail
.
title
:
now
=
timezone
.
now
()
weekmail
.
title
=
_
(
"Weekmail of the "
)
+
(
now
+
timedelta
(
days
=
6
-
now
.
weekday
())).
strftime
(
'%d/%m/%Y'
)
return
weekmail
core/management/commands/populate.py
View file @
9d1eaed6
...
...
@@ -16,7 +16,7 @@ from core.utils import resize_image
from
club.models
import
Club
,
Membership
from
subscription.models
import
Subscription
from
counter.models
import
Customer
,
ProductType
,
Product
,
Counter
from
com.models
import
Sith
from
com.models
import
Sith
,
Weekmail
from
election.models
import
Election
,
Role
,
Candidature
,
ElectionList
...
...
@@ -87,6 +87,7 @@ class Command(BaseCommand):
club_root
.
save
()
Sith
().
save
()
Weekmail
().
save
()
p
=
Page
(
name
=
'Index'
)
p
.
set_lock
(
root
)
...
...
Write
Preview
Supports
Markdown
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