Skip to content

Commit

Permalink
Merge 1ed700f into 219ad38
Browse files Browse the repository at this point in the history
  • Loading branch information
riaJha97 committed Sep 6, 2018
2 parents 219ad38 + 1ed700f commit 44c3775
Show file tree
Hide file tree
Showing 3 changed files with 25 additions and 5 deletions.
5 changes: 5 additions & 0 deletions portal/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -202,6 +202,11 @@ def schoolFactory(self, klass, name, password):
first_name=name)

user_profile = UserProfile.objects.create(user=user)
# school = klass.teacher.school
# if school:
# if school.eligible_for_testing and not user_profile.preview_user:
# user_profile.set_to_preview_user()
# user_profile.save()
return Student.objects.create(class_field=klass, user=user_profile, new_user=user)

def independentStudentFactory(self, username, name, email, password):
Expand Down
6 changes: 5 additions & 1 deletion portal/tests/test_admin.py
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@
from portal.tests.pageObjects.portal.admin.admin_login_page import AdminLoginPage
from portal.tests.base_test import BaseTest
from portal.views import admin
from portal.models import UserProfile


class TestAdmin(BaseTest):
Expand Down Expand Up @@ -81,7 +82,8 @@ def test_navigate_to_admin_map(self):
def test_superuser_access(self):
username = self.randomId()
password = 'abc123'
User.objects.create_superuser(username=username, password=password, email='')
user = User.objects.create_superuser(username=username, password=password, email='')
user_profile = UserProfile.objects.create(user=user)
page = self.navigate_to_admin_data().login_to_data(username, password)
self.assertTrue(page.is_on_admin_data_page())
page = page.go_to_admin_map_page()
Expand All @@ -92,6 +94,7 @@ def test_view_map_data_permission_access(self):
username = self.randomId()
password = 'abc123'
user = User.objects.create_user(username=username, password=password)
user_profile = UserProfile.objects.create(user=user)
permission = Permission.objects.get(codename='view_map_data')
user.user_permissions.add(permission)
page = self.navigate_to_admin_map().login_to_map(username, password)
Expand All @@ -104,6 +107,7 @@ def test_view_aggregated_data_permission_access(self):
username = self.randomId()
password = 'abc123'
user = User.objects.create_user(username=username, password=password)
user_profile = UserProfile.objects.create(user=user)
permission = Permission.objects.get(codename='view_aggregated_data')
user.user_permissions.add(permission)
page = self.navigate_to_admin_data().login_to_data(username, password)
Expand Down
19 changes: 15 additions & 4 deletions portal/views/home.py
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@
from django.utils.http import is_safe_url
from django.views.decorators.csrf import csrf_exempt

from portal.models import Teacher, Student
from portal.models import Teacher, Student, Class
from portal.forms.teach import TeacherSignupForm, TeacherLoginForm
from portal.forms.play import StudentLoginForm, IndependentStudentLoginForm, StudentSignupForm
from portal.forms.newsletter_form import NewsletterForm
Expand Down Expand Up @@ -434,12 +434,23 @@ def is_eligible_for_testing(request):
request.user.userprofile.student.class_field.teacher.school.eligible_for_testing)


def make_students_preview_users(request):
class_members = Class.objects.all_members(request.user.userprofile)
for c in class_members:
c.user.set_to_preview_user()
c.user.save()


def make_preview_tester(request):
if request.method == 'GET':
if is_eligible_for_testing(request):
user = request.user.userprofile
user.set_to_preview_user()
user.save()
if is_logged_in_as_teacher(request):
make_students_preview_users(request)
else:
user = request.user.userprofile
user.set_to_preview_user()
user.save()

return HttpResponseRedirect(reverse_lazy('play_aimmo'))
return HttpResponse(status=401)
return HttpResponse(status=405)

0 comments on commit 44c3775

Please sign in to comment.