示例#1
0
def edit(request, device_id):
    user = userService.get_user_from_request(request)
    try:
        device = Device.objects.get(id=device_id)
        if request.method == "POST":
            form = DeviceEdit(request.POST)
            if form.is_valid():
                device.name = form.cleaned_data["name"]
                device.isAlarmEnabled = form.cleaned_data["isAlarmEnabled"]
                device.save()
                return index(request)
            else:
                context = {
                    "currentUser": user,
                    "current_page": "Edit Device " + device.name,
                    "device_form": form,
                    "device": device
                }
                return render(request, "devices/edit.html", context)
        else:
            form = DeviceEdit(instance=device)
            context = {
                "currentUser": user,
                "current_page": "Edit Device " + device.name,
                "device_form": form,
                "device": device
            }
            return render(request, "devices/edit.html", context)
    except:
        context = {'currentUser': userService.get_user_from_request(request)}
        return render(request, 'devices/device_not_found.html', context)
示例#2
0
    def test_index_positive(self):
        url = reverse('home:index')
        request = self.factory.get(url)
        request.user = self.user
        response = views.index(request)

        self.assertEqual(response.status_code, 200)
示例#3
0
 def test_home_page(self):
     """
     This simulates viewing the home page and verifies
     that it receives a successful url request
     """
     request = self.factory.get('/')
     response = index(request)
     self.assertEqual(response.status_code, 200)
示例#4
0
def form_page(request):
    form = forms.Subscribe()
    if request.method == "POST":
        form = forms.Subscribe(request.POST)
        if form.is_valid():
            form.save(commit=True)
            return index(request)
    return render(request, "form/form_page.html", {"form": form})
示例#5
0
 def test_index_returns_correct_html(self):
     request = HttpRequest()
     response = index(request)
     html = response.content.decode('utf8')
     self.assertIn('<h1>Github shiny repositories search tool</h1>', html)
     self.assertIn('<form action="/browse/" method="post">', html)
     self.assertIn(
         '<input class="btn btn-primary" type="submit" value="Search and save"/>',
         html)
    def test_index_view(self):
        """
        Test authenticated and unauthenticated view of home page
        """
        # create  an instance of request by getting the home page
        request = self.factory.get('/')
        self.assertTemplateUsed('index.html')
        home_page = index(request)
        self.assertContains(home_page, 'For all your pet sitting needs')
        # verify has expected unauthenticated navigation
        self.assertContains(home_page, 'Login')
        self.assertContains(home_page, 'Register')
        self.assertNotContains(home_page, 'My Account')

        request.user = self.user1
        home_page = index(request)
        self.assertTemplateUsed('index.html')
        self.assertNotContains(home_page, 'Login')
        self.assertContains(home_page, 'My Account')
示例#7
0
def register(request):
    form = RegisterForm()

    if request.method == 'POST':
        form = RegisterForm(request.POST)
        if form.is_valid():
            form.save()
            return v1.index(request)
        else:
            form = RegisterForm()

    return render(request, 'register/register.html', {'form': form})
    def test_index_view(self):
        """
        Test authenticated and unauthenticated view of home page
        """
        # create  an instance of request by getting the home page
        request = self.factory.get('/')
        self.assertTemplateUsed('index.html')
        home_page = index(request)
        self.assertContains(home_page, 'Bring the next level of competition')
        # verify has expected unauthenticated navigation
        self.assertContains(home_page, 'Login')
        self.assertContains(home_page, 'Register')
        self.assertNotContains(home_page, 'My Account')

        # middleware isn't supported so  simulate loge din user by setting request.user manually
        request.user = self.user1
        home_page = index(request)
        self.assertTemplateUsed('index.html')
        self.assertNotContains(home_page, 'Login')
        self.assertContains(home_page, 'Challenges')
        self.assertContains(home_page, 'My Account')
示例#9
0
def delete_device(request, device_id):
    try:
        device = Device.objects.get(id=device_id)
        device_name = device.name
        if device.userOwner == userService.get_user_from_request(request):
            Device.objects.get(id=device_id).delete()
        return index(request,
                     message='Device "' + device_name +
                     '" unsynced successfully.')
    except:
        context = {'currentUser': userService.get_user_from_request(request)}
        return render(request, 'devices/device_not_found.html', context)
示例#10
0
def login(request):

    if request.method == "POST":
        username = request.POST.get("username")
        password = request.POST.get("password")
        user = {username: password}

        if user is not None:
            data = checkLogin.objects.all()
            arr_auth = {}
            for i in data:
                arr_auth[i.username] = i.password

            try:
                if arr_auth.get(username) == password:
                    return index(request)
                else:
                    return TemplateResponse(request, 'login/index.html')
            except:
                pass

    return TemplateResponse(request, 'login/index.html')
示例#11
0
    def test_home_page_returns_correct_html(self):

        # создали HttpRequest object, который использует Django когда пользователь запрашивает страницу.

        request = HttpRequest()

        # перенаправляем запрос на метод home_page view, который формирует response - экземпляр класса HttpResponse. Далее проверяем является ли .content в response HTML-текстом который мы отдаем пользователю.

        response = index(request)

        # HTML-текст должен начинаться с html тега, который должен закрываться вконце. response.content является сырым литералом (raw bytes), а не Python-строкой, поэтому мы используем b'' синтаксис.

        self.assertTrue(response.content.startswith(b'<html>'))

        # Мы хотим поместить тег title, содержащий наш заголовок.

        self.assertIn(b"""<html>
                        <title>Моя перша тестова сторінка</title>
                        <body>
                            <a href='http://localhost:8000/admin/'> В адмінку</a>
                        </body>
                        </html>""", response.content)
        self.assertTrue(response.content.endswith(b'</html>'))
示例#12
0
def register_devices(request):
    if request.method == 'POST':
        form = DeviceRegister(request.POST)
        if form.is_valid():
            form.save(user=userService.get_user_from_request(request))
            device_name = form.cleaned_data['name']
            return index(request,
                         message='Device "' + device_name +
                         '" unsynced successfully.')
        else:
            context = {
                'currentUser': userService.get_user_from_request(request),
                'current_page': 'Register Device',
                'device_form': form
            }
            return render(request, 'devices/device_register.html', context)
    else:
        form = DeviceRegister()
        context = {
            'currentUser': userService.get_user_from_request(request),
            'current_page': 'Register Device',
            'device_form': form
        }
        return render(request, 'devices/device_register.html', context)
示例#13
0
文件: views.py 项目: hiromuller/pim
def index(request):
    #暫定的にsessionユーザを定義。あとで消す
#    test_user = SERVICE.getUserByLoginId('user1')
#    request.session['user'] = test_user
    #ここまで

    if request.method == "POST":
        action = request.POST["action"]
    else:
        action = CONFIG.ACTION_LOGIN

    if request.user.is_active:
        #ページの振り分け
        if action == CONFIG.ACTION_HOME:
            return HOME_VIEWS.index(request)

        elif action == CONFIG.ACTION_PROGRESS_LIST:
            return PROGRESS_VIEWS.index(request)

        elif action == CONFIG.ACTION_PROGRESS_ADD:
            return PROGRESS_VIEWS.add(request)

        elif action == CONFIG.ACTION_PROGRESS_UPDATE:
            return PROGRESS_VIEWS.update(request)

        elif action == CONFIG.ACTION_PROGRESS_SEARCH:
            return PROGRESS_VIEWS.search(request)

        elif action == CONFIG.ACTION_TARGET_LIST:
            return TARGET_VIEWS.index(request)

        elif action == CONFIG.ACTION_TARGET_ADD:
            return TARGET_VIEWS.add(request)

        elif action == CONFIG.ACTION_TARGET_DETAIL:
            return TARGET_VIEWS.targetDetail(request)

        elif action == CONFIG.ACTION_TARGET_UPDATE:
            return TARGET_VIEWS.targetUpdate(request)

        elif action == CONFIG.ACTION_TARGET_SEARCH:
            return TARGET_VIEWS.targetSearch(request)

        elif action == CONFIG.ACTION_ACCOUNT:
            return ACCOUNT_VIEWS.index(request)

        elif action == CONFIG.ACTION_ACCOUNT_UPDATE:
            return ACCOUNT_VIEWS.update(request)

        elif action == CONFIG.ACTION_TEAM:
            return TEAM_VIEWS.index(request)

        elif action == CONFIG.ACTION_TEAM_ADD:
            return TEAM_VIEWS.add(request)

        elif action == CONFIG.ACTION_TEAM_INVITE:
            return TEAM_VIEWS.invite(request)

        elif action == CONFIG.ACTION_TEAM_INVITE_ACCEPT_USER:
            return TEAM_VIEWS.acceptMember(request)

        elif action == CONFIG.ACTION_TEAM_INVITE_ACCEPT_TEAM:
            return TEAM_VIEWS.acceptTeam(request)

        elif action == CONFIG.ACTION_TEAM_DELETE_MEMBER:
            return TEAM_VIEWS.deleteMember(request)

        elif action == CONFIG.ACTION_TEAM_DELETE_TEAM:
            return TEAM_VIEWS.deleteTeam(request)

        elif action == CONFIG.ACTION_HELP:
            return HELP_VIEWS.index(request)

        elif action == CONFIG.ACTION_MANUAL:
            return MANUAL_VIEWS.index(request)

        elif action == CONFIG.ACTION_USERLIST:
            if request.user.username == SETTING.MASTER_USER_NAME:
                return USERLIST_VIEWS.index(request)
            else:
                return view(request)

        elif action == CONFIG.ACTION_USERLIST_DELETE_USER:
            if request.user.username == SETTING.MASTER_USER_NAME:
                return USERLIST_VIEWS.deleteUser(request)
            else:
                return view(request)

        elif action == CONFIG.ACTION_USERLIST_ACTIVATE_USER:
            if request.user.username == SETTING.MASTER_USER_NAME:
                return USERLIST_VIEWS.activateUser(request)
            else:
                return view(request)

        elif action == CONFIG.ACTION_USERLIST_DEACTIVATE_USER:
            if request.user.username == SETTING.MASTER_USER_NAME:
                return USERLIST_VIEWS.deactivateUser(request)
            else:
                return view(request)

        elif action == CONFIG.ACTION_DO_AGREE:
            return makeAgreement(request)

        else:
            if SERVICES.hasAgreement(request.user):
                return view(request)
            else:
                return askForAgreement(request)
    else:
        return informLocked(request)
示例#14
0
文件: views.py 项目: hiromuller/pim
def view(request):
    return HOME_VIEWS.index(request)