Skip to content

Commit

Permalink
Merge pull request #1659 from openhealthcare/1505-kill-bulk-users
Browse files Browse the repository at this point in the history
Kill bulk create users closes #1505
  • Loading branch information
fredkingham authored Oct 30, 2018
2 parents 7ccd9db + 0f25c05 commit 6bd470e
Show file tree
Hide file tree
Showing 4 changed files with 0 additions and 103 deletions.
10 changes: 0 additions & 10 deletions elcid/forms.py

This file was deleted.

37 changes: 0 additions & 37 deletions elcid/test/test_views.py
Original file line number Diff line number Diff line change
Expand Up @@ -167,43 +167,6 @@ def assertStatusCode(self, path, expected_status_code):
self.assertEqual(expected_status_code, response.status_code)


class BulkCreateUserViewTestCase(OpalTestCase):
def setUp(self):
self.url = reverse("bulk-create-users")

def test_form(self):
self.assertTrue(
self.client.login(
username=self.user.username,
password=self.PASSWORD
)
)
response = self.client.post(self.url)
self.assertFalse(response.context_data["form"].is_valid())
self.assertEqual(response.status_code, 200)

def test_authenticated(self):
response = self.client.post(self.url, follow=True)
login = reverse('admin:login')
self.assertEqual(response.request["PATH_INFO"], login)

def test_authenticated_staff(self):
user = User.objects.create(
username="someone",
)
user.set_password("someone")
user.save()
self.assertTrue(
self.client.login(
username="someone",
password="someone"
)
)
response = self.client.post(self.url, follow=True)
login = reverse('admin:login')
self.assertEqual(response.request["PATH_INFO"], login)


class ViewStoriesTemplateTestCase(OpalTestCase):
def setUp(self):
self.url = reverse("stories")
Expand Down
5 changes: 0 additions & 5 deletions elcid/urls.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,6 @@
from elcid import views

urlpatterns = [
url(
'^admin/bulk-create-users$',
staff_member_required(views.BulkCreateUserView.as_view()),
name='bulk-create-users'
),
url(
r'^referrals/?$', views.TemplateView.as_view(
template_name='referral/referral_list.html'
Expand Down
51 changes: 0 additions & 51 deletions elcid/views.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,6 @@

from opal.core import application

from elcid.forms import BulkCreateUsersForm

app = application.get_app()


Expand All @@ -32,54 +30,5 @@ def get(self, *args, **kwargs):
raise Exception("This is a deliberate error")


class BulkCreateUserView(FormView):
"""
Used in the admin - bulk create users.
"""
form_class = BulkCreateUsersForm
template_name = 'admin/bulk_create_users.html'
success_url = '/admin/auth/user/'

def form_valid(self, form):
"""
Create the users from our uploaded file!
Arguments:
- `form`: Form
Return: HTTPResponse
Exceptions: None
"""
usernames = [u.username for u in User.objects.all()]
new_users = []

for row in csv.reader(form.cleaned_data['users']):
email = row[0]
name_part, _ = email.split('@')

# Check for reused usernames
if name_part in usernames:
form._errors['users'] = form.error_class(['Some of those users already exist :('])
del form.cleaned_data['users']
return self.form_invalid(form)

frist, last = name_part.split('.')
user = User(username=name_part,
email=email,
first_name=frist,
last_name=last,
is_active=True,
is_staff=False,
is_superuser=False)
user.tp = temp_password()
user.set_password(user.tp)
new_users.append(user)

for u in new_users:
u.save()

return super(BulkCreateUserView, self).form_valid(form)


class StoriesView(LoginRequiredMixin, TemplateView):
template_name = "stories.html"

0 comments on commit 6bd470e

Please sign in to comment.