Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
D
django-hope
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
5
Issues
5
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Incidents
Environments
Packages & Registries
Packages & Registries
Container Registry
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
CSTB
django-hope
Commits
5607f1a5
Commit
5607f1a5
authored
Dec 11, 2017
by
Timothée Mazzucotelli
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Update docs, CI, improve views/urls
parent
fc63ea02
Pipeline
#1584
failed with stages
in 7 minutes and 9 seconds
Changes
7
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
39 additions
and
18 deletions
+39
-18
.gitlab-ci.yml
.gitlab-ci.yml
+9
-3
src/hope/__init__.py
src/hope/__init__.py
+0
-2
src/hope/forms.py
src/hope/forms.py
+6
-0
src/hope/models.py
src/hope/models.py
+5
-1
src/hope/tokens.py
src/hope/tokens.py
+4
-0
src/hope/urls.py
src/hope/urls.py
+5
-1
src/hope/views.py
src/hope/views.py
+10
-11
No files found.
.gitlab-ci.yml
View file @
5607f1a5
...
...
@@ -61,15 +61,22 @@ py37-django20:
script
:
tox -e py37-dev-django20
setup
:
image
:
python:3.5
stage
:
lint
before_script
:
-
pip install tox
script
:
tox -e setup
safety
:
image
:
python:3.5
stage
:
lint
before_script
:
-
pip install tox
script
:
tox -e safety
allow_failure
:
true
style
:
image
:
python:3.5
stage
:
lint
before_script
:
-
pip install tox
...
...
@@ -77,6 +84,7 @@ style:
allow_failure
:
true
docs
:
image
:
python:3.5
stage
:
lint
before_script
:
-
pip install tox
...
...
@@ -84,8 +92,6 @@ docs:
allow_failure
:
true
build
:
image
:
docker:latest
services
:
...
...
src/hope/__init__.py
View file @
5607f1a5
# -*- coding: utf-8 -*-
"""Django HOPE package."""
src/hope/forms.py
View file @
5607f1a5
"""Forms module."""
from
django
import
forms
from
django.contrib.auth.forms
import
UserCreationForm
...
...
@@ -5,8 +7,12 @@ from .models import User
class
SignUpForm
(
UserCreationForm
):
"""Simple sign-up form overriding the basic Django user creation form."""
email
=
forms
.
EmailField
(
label
=
'Email'
,
max_length
=
254
)
class
Meta
:
"""Django meta-class."""
model
=
User
fields
=
(
'username'
,
'email'
,
'password1'
,
'password2'
,
)
src/hope/models.py
View file @
5607f1a5
from
django.db
import
models
"""Models module."""
from
django.contrib.auth.models
import
AbstractUser
from
django.db
import
models
from
cerberus_ac.models
import
RoleMixin
class
User
(
AbstractUser
,
RoleMixin
):
"""Simple User model derived from Django's abstract user."""
email_confirmed
=
models
.
BooleanField
(
default
=
False
)
src/hope/tokens.py
View file @
5607f1a5
"""Tokens module."""
from
django.contrib.auth.tokens
import
PasswordResetTokenGenerator
from
django.utils
import
six
class
AccountActivationTokenGenerator
(
PasswordResetTokenGenerator
):
"""Class to generate account activation tokens."""
def
_make_hash_value
(
self
,
user
,
timestamp
):
return
(
six
.
text_type
(
user
.
pk
)
+
six
.
text_type
(
timestamp
)
+
...
...
src/hope/urls.py
View file @
5607f1a5
"""URLs module."""
from
django.conf.urls
import
url
from
django.contrib.auth
import
views
as
auth_views
from
django.views.generic
import
TemplateView
from
.
import
views
...
...
@@ -10,7 +13,8 @@ urlpatterns = [
url
(
r
'^signout/$'
,
auth_views
.
logout
,
{
'template_name'
:
'hope/signout.html'
},
name
=
'signout'
),
url
(
r
'^account_activation_sent/$'
,
views
.
account_activation_sent
,
name
=
'account_activation_sent'
),
TemplateView
.
as_view
(
template_name
=
'hope/account_activation_sent.html'
),
# noqa
name
=
'account_activation_sent'
),
url
(
r
'^activate/'
r
'(?P<uidb64>[0-9A-Za-z_\-]+)/'
r
'(?P<token>[0-9A-Za-z]{1,13}-[0-9A-Za-z]{1,20})/$'
,
...
...
src/hope/views.py
View file @
5607f1a5
"""Views module."""
from
django.contrib.auth
import
login
from
django.contrib.sites.shortcuts
import
get_current_site
from
django.shortcuts
import
re
nder
,
redirect
from
django.shortcuts
import
re
direct
,
render
from
django.template.loader
import
render_to_string
from
django.utils.encoding
import
force_bytes
,
force_text
from
django.utils.http
import
urlsafe_base64_
encode
,
urlsafe_base64_de
code
from
django.utils.http
import
urlsafe_base64_
decode
,
urlsafe_base64_en
code
from
.forms
import
SignUpForm
from
.models
import
User
...
...
@@ -11,6 +13,7 @@ from .tokens import account_activation_token
def
signup
(
request
):
"""Sign-up view sending a mail to validation the account."""
if
request
.
method
==
'POST'
:
form
=
SignUpForm
(
request
.
POST
)
if
form
.
is_valid
():
...
...
@@ -19,7 +22,7 @@ def signup(request):
user
.
save
()
current_site
=
get_current_site
(
request
)
subject
=
'Activate Your MySite Account'
message
=
render_to_string
(
'account_activation_email.html'
,
{
message
=
render_to_string
(
'
hope/
account_activation_email.html'
,
{
'user'
:
user
,
'domain'
:
current_site
.
domain
,
'uid'
:
urlsafe_base64_encode
(
force_bytes
(
user
.
pk
)),
...
...
@@ -29,10 +32,11 @@ def signup(request):
return
redirect
(
'account_activation_sent'
)
else
:
form
=
SignUpForm
()
return
render
(
request
,
'
{{cookiecutter.package_name}}
/signup.html'
,
{
'form'
:
form
})
return
render
(
request
,
'
hope
/signup.html'
,
{
'form'
:
form
})
def
activate
(
request
,
uidb64
,
token
):
"""Activate the account based on a token."""
try
:
uid
=
force_text
(
urlsafe_base64_decode
(
uidb64
))
user
=
User
.
objects
.
get
(
pk
=
uid
)
...
...
@@ -44,11 +48,6 @@ def activate(request, uidb64, token):
user
.
email_confirmed
=
True
user
.
save
()
login
(
request
,
user
)
# TODO: add a message with django message app
return
redirect
(
'home'
)
else
:
return
render
(
request
,
'account_activation_invalid.html'
)
return
render
(
request
,
'hope/account_activated.html'
)
def
account_activation_sent
(
request
):
return
render
(
request
,
'account_activation_sent.html'
)
return
render
(
request
,
'hope/account_activation_invalid.html'
)
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