Dot-Notation for Users.username
This commit is contained in:
parent
5b5b67cd5c
commit
5a4e3ff1e2
@ -105,7 +105,7 @@ def send_verification_email(user, request):
|
|||||||
"""
|
"""
|
||||||
rendered_email = render_template(
|
rendered_email = render_template(
|
||||||
request, 'mediagoblin/auth/verification_email.txt',
|
request, 'mediagoblin/auth/verification_email.txt',
|
||||||
{'username': user['username'],
|
{'username': user.username,
|
||||||
'verification_url': EMAIL_VERIFICATION_TEMPLATE.format(
|
'verification_url': EMAIL_VERIFICATION_TEMPLATE.format(
|
||||||
host=request.host,
|
host=request.host,
|
||||||
uri=request.urlgen('mediagoblin.auth.verify_email'),
|
uri=request.urlgen('mediagoblin.auth.verify_email'),
|
||||||
@ -140,7 +140,7 @@ def send_fp_verification_email(user, request):
|
|||||||
"""
|
"""
|
||||||
rendered_email = render_template(
|
rendered_email = render_template(
|
||||||
request, 'mediagoblin/auth/fp_verification_email.txt',
|
request, 'mediagoblin/auth/fp_verification_email.txt',
|
||||||
{'username': user['username'],
|
{'username': user.username,
|
||||||
'verification_url': EMAIL_FP_VERIFICATION_TEMPLATE.format(
|
'verification_url': EMAIL_FP_VERIFICATION_TEMPLATE.format(
|
||||||
host=request.host,
|
host=request.host,
|
||||||
uri=request.urlgen('mediagoblin.auth.verify_forgot_password'),
|
uri=request.urlgen('mediagoblin.auth.verify_forgot_password'),
|
||||||
|
@ -80,7 +80,7 @@ def register(request):
|
|||||||
if extra_validation_passes:
|
if extra_validation_passes:
|
||||||
# Create the user
|
# Create the user
|
||||||
user = request.db.User()
|
user = request.db.User()
|
||||||
user['username'] = username
|
user.username = username
|
||||||
user['email'] = email
|
user['email'] = email
|
||||||
user['pw_hash'] = auth_lib.bcrypt_gen_password_hash(
|
user['pw_hash'] = auth_lib.bcrypt_gen_password_hash(
|
||||||
request.POST['password'])
|
request.POST['password'])
|
||||||
@ -98,7 +98,7 @@ def register(request):
|
|||||||
# message waiting for them to verify their email
|
# message waiting for them to verify their email
|
||||||
return redirect(
|
return redirect(
|
||||||
request, 'mediagoblin.user_pages.user_home',
|
request, 'mediagoblin.user_pages.user_home',
|
||||||
user=user['username'])
|
user=user.username)
|
||||||
|
|
||||||
return render_to_response(
|
return render_to_response(
|
||||||
request,
|
request,
|
||||||
@ -186,7 +186,7 @@ def verify_email(request):
|
|||||||
|
|
||||||
return redirect(
|
return redirect(
|
||||||
request, 'mediagoblin.user_pages.user_home',
|
request, 'mediagoblin.user_pages.user_home',
|
||||||
user=user['username'])
|
user=user.username)
|
||||||
|
|
||||||
|
|
||||||
def resend_activation(request):
|
def resend_activation(request):
|
||||||
@ -224,7 +224,7 @@ def resend_activation(request):
|
|||||||
_('Resent your verification email.'))
|
_('Resent your verification email.'))
|
||||||
return redirect(
|
return redirect(
|
||||||
request, 'mediagoblin.user_pages.user_home',
|
request, 'mediagoblin.user_pages.user_home',
|
||||||
user=request.user['username'])
|
user=request.user.username)
|
||||||
|
|
||||||
|
|
||||||
def forgot_password(request):
|
def forgot_password(request):
|
||||||
@ -268,7 +268,7 @@ def forgot_password(request):
|
|||||||
|
|
||||||
return redirect(
|
return redirect(
|
||||||
request, 'mediagoblin.user_pages.user_home',
|
request, 'mediagoblin.user_pages.user_home',
|
||||||
user=user['username'])
|
user=user.username)
|
||||||
|
|
||||||
# do not reveal whether or not there is a matching user
|
# do not reveal whether or not there is a matching user
|
||||||
return redirect(request, 'mediagoblin.auth.fp_email_sent')
|
return redirect(request, 'mediagoblin.auth.fp_email_sent')
|
||||||
|
@ -268,12 +268,12 @@ class MediaEntry(Document):
|
|||||||
if self.get('slug'):
|
if self.get('slug'):
|
||||||
return urlgen(
|
return urlgen(
|
||||||
'mediagoblin.user_pages.media_home',
|
'mediagoblin.user_pages.media_home',
|
||||||
user=uploader['username'],
|
user=uploader.username,
|
||||||
media=self['slug'])
|
media=self['slug'])
|
||||||
else:
|
else:
|
||||||
return urlgen(
|
return urlgen(
|
||||||
'mediagoblin.user_pages.media_home',
|
'mediagoblin.user_pages.media_home',
|
||||||
user=uploader['username'],
|
user=uploader.username,
|
||||||
media=unicode(self._id))
|
media=unicode(self._id))
|
||||||
|
|
||||||
def url_to_prev(self, urlgen):
|
def url_to_prev(self, urlgen):
|
||||||
@ -286,7 +286,7 @@ class MediaEntry(Document):
|
|||||||
'_id', ASCENDING).limit(1)
|
'_id', ASCENDING).limit(1)
|
||||||
if cursor.count():
|
if cursor.count():
|
||||||
return urlgen('mediagoblin.user_pages.media_home',
|
return urlgen('mediagoblin.user_pages.media_home',
|
||||||
user=self.get_uploader()['username'],
|
user=self.get_uploader().username,
|
||||||
media=unicode(cursor[0]['slug']))
|
media=unicode(cursor[0]['slug']))
|
||||||
|
|
||||||
def url_to_next(self, urlgen):
|
def url_to_next(self, urlgen):
|
||||||
@ -300,7 +300,7 @@ class MediaEntry(Document):
|
|||||||
|
|
||||||
if cursor.count():
|
if cursor.count():
|
||||||
return urlgen('mediagoblin.user_pages.media_home',
|
return urlgen('mediagoblin.user_pages.media_home',
|
||||||
user=self.get_uploader()['username'],
|
user=self.get_uploader().username,
|
||||||
media=unicode(cursor[0]['slug']))
|
media=unicode(cursor[0]['slug']))
|
||||||
|
|
||||||
def get_uploader(self):
|
def get_uploader(self):
|
||||||
|
@ -40,7 +40,7 @@ def require_active_login(controller):
|
|||||||
request.user.get('status') == u'needs_email_verification':
|
request.user.get('status') == u'needs_email_verification':
|
||||||
return redirect(
|
return redirect(
|
||||||
request, 'mediagoblin.user_pages.user_home',
|
request, 'mediagoblin.user_pages.user_home',
|
||||||
user=request.user['username'])
|
user=request.user.username)
|
||||||
elif not request.user or request.user.get('status') != u'active':
|
elif not request.user or request.user.get('status') != u'active':
|
||||||
return exc.HTTPFound(
|
return exc.HTTPFound(
|
||||||
location="%s?next=%s" % (
|
location="%s?next=%s" % (
|
||||||
|
@ -147,7 +147,7 @@ def edit_attachments(request, media):
|
|||||||
def edit_profile(request):
|
def edit_profile(request):
|
||||||
# admins may edit any user profile given a username in the querystring
|
# admins may edit any user profile given a username in the querystring
|
||||||
edit_username = request.GET.get('username')
|
edit_username = request.GET.get('username')
|
||||||
if request.user['is_admin'] and request.user['username'] != edit_username:
|
if request.user['is_admin'] and request.user.username != edit_username:
|
||||||
user = request.db.User.find_one({'username': edit_username})
|
user = request.db.User.find_one({'username': edit_username})
|
||||||
# No need to warn again if admin just submitted an edited profile
|
# No need to warn again if admin just submitted an edited profile
|
||||||
if request.method != 'POST':
|
if request.method != 'POST':
|
||||||
|
@ -50,7 +50,7 @@ def adduser(args):
|
|||||||
else:
|
else:
|
||||||
# Create the user
|
# Create the user
|
||||||
entry = db.User()
|
entry = db.User()
|
||||||
entry['username'] = unicode(args.username.lower())
|
entry.username = unicode(args.username.lower())
|
||||||
entry['email'] = unicode(args.email)
|
entry['email'] = unicode(args.email)
|
||||||
entry['pw_hash'] = auth_lib.bcrypt_gen_password_hash(args.password)
|
entry['pw_hash'] = auth_lib.bcrypt_gen_password_hash(args.password)
|
||||||
entry['status'] = u'active'
|
entry['status'] = u'active'
|
||||||
|
@ -86,7 +86,7 @@ def tag_atom_feed(request):
|
|||||||
feed.add(entry.get('title'),
|
feed.add(entry.get('title'),
|
||||||
entry.get('description_html'),
|
entry.get('description_html'),
|
||||||
content_type='html',
|
content_type='html',
|
||||||
author=entry.get_uploader()['username'],
|
author=entry.get_uploader().username,
|
||||||
updated=entry.get('created'),
|
updated=entry.get('created'),
|
||||||
url=entry.url_for_self(request.urlgen))
|
url=entry.url_for_self(request.urlgen))
|
||||||
|
|
||||||
|
@ -127,7 +127,7 @@ def submit_start(request):
|
|||||||
add_message(request, SUCCESS, _('Woohoo! Submitted!'))
|
add_message(request, SUCCESS, _('Woohoo! Submitted!'))
|
||||||
|
|
||||||
return redirect(request, "mediagoblin.user_pages.user_home",
|
return redirect(request, "mediagoblin.user_pages.user_home",
|
||||||
user=request.user['username'])
|
user=request.user.username)
|
||||||
except InvalidFileType, exc:
|
except InvalidFileType, exc:
|
||||||
submit_form.file.errors.append(
|
submit_form.file.errors.append(
|
||||||
_(u'Invalid file type.'))
|
_(u'Invalid file type.'))
|
||||||
|
@ -60,14 +60,14 @@
|
|||||||
{# the following link should only appear when verification is needed #}
|
{# the following link should only appear when verification is needed #}
|
||||||
{% if request.user.status == "needs_email_verification" %}
|
{% if request.user.status == "needs_email_verification" %}
|
||||||
<a href="{{ request.urlgen('mediagoblin.user_pages.user_home',
|
<a href="{{ request.urlgen('mediagoblin.user_pages.user_home',
|
||||||
user=request.user['username']) }}"
|
user=request.user.username) }}"
|
||||||
class="button_action_highlight">
|
class="button_action_highlight">
|
||||||
{% trans %}Verify your email!{% endtrans %}</a>
|
{% trans %}Verify your email!{% endtrans %}</a>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
<a href="{{ request.urlgen('mediagoblin.user_pages.user_home',
|
<a href="{{ request.urlgen('mediagoblin.user_pages.user_home',
|
||||||
user= request.user['username']) }}">
|
user= request.user.username) }}">
|
||||||
{{ request.user['username'] }}</a>
|
{{ request.user.username }}</a>
|
||||||
|
|
||||||
(<a href="{{ request.urlgen('mediagoblin.auth.logout') }}">{% trans %}log out{% endtrans %}</a>)
|
(<a href="{{ request.urlgen('mediagoblin.auth.logout') }}">{% trans %}log out{% endtrans %}</a>)
|
||||||
{% else %}
|
{% else %}
|
||||||
|
@ -22,11 +22,11 @@
|
|||||||
{% block mediagoblin_content %}
|
{% block mediagoblin_content %}
|
||||||
|
|
||||||
<form action="{{ request.urlgen('mediagoblin.edit.profile') }}?username={{
|
<form action="{{ request.urlgen('mediagoblin.edit.profile') }}?username={{
|
||||||
user['username'] }}"
|
user.username }}"
|
||||||
method="POST" enctype="multipart/form-data">
|
method="POST" enctype="multipart/form-data">
|
||||||
<div class="grid_8 prefix_1 suffix_1 edit_box form_box">
|
<div class="grid_8 prefix_1 suffix_1 edit_box form_box">
|
||||||
<h1>
|
<h1>
|
||||||
{%- trans username=user['username'] -%}
|
{%- trans username=user.username -%}
|
||||||
Editing {{ username }}'s profile
|
Editing {{ username }}'s profile
|
||||||
{%- endtrans %}
|
{%- endtrans %}
|
||||||
</h1>
|
</h1>
|
||||||
|
@ -80,8 +80,8 @@
|
|||||||
{% endautoescape %}
|
{% endautoescape %}
|
||||||
<img src="{{ request.staticdirect('/images/icon_comment.png') }}" />
|
<img src="{{ request.staticdirect('/images/icon_comment.png') }}" />
|
||||||
<a href="{{ request.urlgen('mediagoblin.user_pages.user_home',
|
<a href="{{ request.urlgen('mediagoblin.user_pages.user_home',
|
||||||
user = comment_author['username']) }}">
|
user = comment_author.username) }}">
|
||||||
{{ comment_author['username'] }}</a>
|
{{ comment_author.username }}</a>
|
||||||
{% trans %}at{% endtrans %}
|
{% trans %}at{% endtrans %}
|
||||||
<a href="{{ request.urlgen('mediagoblin.user_pages.media_home.view_comment',
|
<a href="{{ request.urlgen('mediagoblin.user_pages.media_home.view_comment',
|
||||||
comment = comment._id,
|
comment = comment._id,
|
||||||
|
@ -170,7 +170,7 @@ class TestSubmission:
|
|||||||
response = self.test_app.post(
|
response = self.test_app.post(
|
||||||
request.urlgen('mediagoblin.user_pages.media_confirm_delete',
|
request.urlgen('mediagoblin.user_pages.media_confirm_delete',
|
||||||
# No work: user=media.uploader().username,
|
# No work: user=media.uploader().username,
|
||||||
user=self.test_user['username'],
|
user=self.test_user.username,
|
||||||
media=media._id),
|
media=media._id),
|
||||||
# no value means no confirm
|
# no value means no confirm
|
||||||
{})
|
{})
|
||||||
@ -190,7 +190,7 @@ class TestSubmission:
|
|||||||
response = self.test_app.post(
|
response = self.test_app.post(
|
||||||
request.urlgen('mediagoblin.user_pages.media_confirm_delete',
|
request.urlgen('mediagoblin.user_pages.media_confirm_delete',
|
||||||
# No work: user=media.uploader().username,
|
# No work: user=media.uploader().username,
|
||||||
user=self.test_user['username'],
|
user=self.test_user.username,
|
||||||
media=media._id),
|
media=media._id),
|
||||||
{'confirm': 'y'})
|
{'confirm': 'y'})
|
||||||
|
|
||||||
|
@ -27,7 +27,7 @@ def test_get_test_app_wipes_db():
|
|||||||
assert mg_globals.database.User.find().count() == 0
|
assert mg_globals.database.User.find().count() == 0
|
||||||
|
|
||||||
new_user = mg_globals.database.User()
|
new_user = mg_globals.database.User()
|
||||||
new_user['username'] = u'lolcat'
|
new_user.username = u'lolcat'
|
||||||
new_user['email'] = u'lol@cats.example.org'
|
new_user['email'] = u'lol@cats.example.org'
|
||||||
new_user['pw_hash'] = u'pretend_this_is_a_hash'
|
new_user['pw_hash'] = u'pretend_this_is_a_hash'
|
||||||
new_user.save()
|
new_user.save()
|
||||||
|
@ -59,7 +59,7 @@ def user_home(request, page):
|
|||||||
|
|
||||||
user_gallery_url = request.urlgen(
|
user_gallery_url = request.urlgen(
|
||||||
'mediagoblin.user_pages.user_gallery',
|
'mediagoblin.user_pages.user_gallery',
|
||||||
user=user['username'])
|
user=user.username)
|
||||||
|
|
||||||
return render_to_response(
|
return render_to_response(
|
||||||
request,
|
request,
|
||||||
@ -173,7 +173,7 @@ def media_confirm_delete(request, media):
|
|||||||
|
|
||||||
if request.method == 'POST' and form.validate():
|
if request.method == 'POST' and form.validate():
|
||||||
if form.confirm.data is True:
|
if form.confirm.data is True:
|
||||||
username = media.get_uploader()['username']
|
username = media.get_uploader().username
|
||||||
|
|
||||||
# Delete all files on the public storage
|
# Delete all files on the public storage
|
||||||
delete_media_files(media)
|
delete_media_files(media)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user