예제 #1
0
 def test_valid_change_miniprofile_form(self):
     data = {
         'biography': '',
         'site': '',
         'avatar_url': '',
         'sign': ''
     }
     form = MiniProfileForm(data=data)
     self.assertTrue(form.is_valid())
예제 #2
0
 def test_too_long_signature_miniprofile_form(self):
     data = {
         "biography": "",
         "site": "",
         "avatar_url": "",
         "sign": stringof501chars
     }
     form = MiniProfileForm(data=data)
     self.assertFalse(form.is_valid())
예제 #3
0
 def test_too_long_signature_miniprofile_form(self):
     data = {
         'biography': '',
         'site': '',
         'avatar_url': '',
         'sign': stringof251chars
     }
     form = MiniProfileForm(data=data)
     self.assertFalse(form.is_valid())
예제 #4
0
 def test_site_url_with_https_protocol_miniprofile_form(self):
     data = {
         "biography": "",
         "site": "https://www.airbus.com",
         "avatar_url": "",
         "sign": ""
     }
     form = MiniProfileForm(data=data)
     self.assertTrue(form.is_valid())
예제 #5
0
 def test_valid_change_miniprofile_form(self):
     data = {
         'biography': '',
         'site': '',
         'avatar_url': '',
         'sign': ''
     }
     form = MiniProfileForm(data=data)
     self.assertTrue(form.is_valid())
예제 #6
0
 def test_site_url_with_https_protocol_miniprofile_form(self):
     data = {
         'biography': '',
         'site': 'https://www.airbus.com',
         'avatar_url': '',
         'sign': ''
     }
     form = MiniProfileForm(data=data)
     self.assertTrue(form.is_valid())
예제 #7
0
 def test_too_long_signature_miniprofile_form(self):
     data = {
         'biography': '',
         'site': '',
         'avatar_url': '',
         'sign': stringof501chars
     }
     form = MiniProfileForm(data=data)
     self.assertFalse(form.is_valid())
예제 #8
0
    def test_too_long_site_url_miniprofile_form(self):

        # url is one char too long
        data = {
            'biography': '',
            'site': stringof2001chars,
            'avatar_url': '',
            'sign': ''
        }
        form = MiniProfileForm(data=data)
        self.assertFalse(form.is_valid())
예제 #9
0
    def test_too_long_site_url_miniprofile_form(self):

        # url is one char too long
        data = {
            "biography": "",
            "site": stringof2001chars,
            "avatar_url": "",
            "sign": ""
        }
        form = MiniProfileForm(data=data)
        self.assertFalse(form.is_valid())
예제 #10
0
    def test_too_long_site_url_miniprofile_form(self):

        # url is one char too long
        data = {
            'biography': '',
            'site': stringof2001chars,
            'avatar_url': '',
            'sign': ''
        }
        form = MiniProfileForm(data=data)
        self.assertFalse(form.is_valid())
예제 #11
0
def settings_mini_profile(request, user_name):
    """Minimal settings of users for staff."""

    # extra information about the current user
    profile = get_object_or_404(Profile, user__username=user_name)
    if request.method == "POST":
        form = MiniProfileForm(request.POST)
        data = {"form": form, "profile": profile}
        if form.is_valid():
            profile.biography = form.data["biography"]
            profile.site = form.data["site"]
            profile.avatar_url = form.data["avatar_url"]
            profile.sign = form.data["sign"]

            if request.user.is_staff:
                profile.title = form.data["title"]

            # Save the profile and redirect the user to the configuration space
            # with message indicate the state of the operation

            try:
                profile.save()
            except:
                messages.error(request, u"Une erreur est survenue.")
                return redirect(
                    reverse("zds.member.views.settings_mini_profile"))

            messages.success(request,
                             _(u"Le profil a correctement été mis à jour."))
            return redirect(
                reverse("member-detail", args=[profile.user.username]))
        else:
            return render(request, "member/settings/profile.html", data)
    else:
        form = MiniProfileForm(
            initial={
                "biography": profile.biography,
                "site": profile.site,
                "avatar_url": profile.avatar_url,
                "sign": profile.sign,
                "title": profile.title
            })

        if not request.user.is_staff:
            form.title.widget.attrs['readonly'] = True

        data = {"form": form, "profile": profile}
        return render(request, "member/settings/profile.html", data)
예제 #12
0
def settings_mini_profile(request, user_name):
    """Minimal settings of users for staff."""

    if not request.user.has_perm('member.change_profile'):
        raise PermissionDenied

    # extra information about the current user
    profile = get_object_or_404(Profile, user__username=user_name)
    if request.method == 'POST':
        form = MiniProfileForm(request.POST)
        data = {'form': form, 'profile': profile}
        if form.is_valid():
            profile.biography = form.data['biography']
            profile.site = form.data['site']
            profile.avatar_url = form.data['avatar_url']
            profile.sign = form.data['sign']

            # Save the profile and redirect the user to the configuration space
            # with message indicate the state of the operation

            try:
                profile.save()
            except:
                messages.error(request, _(u'Une erreur est survenue.'))
                return redirect(reverse('member-settings-mini-profile'))

            messages.success(request,
                             _(u'Le profil a correctement été mis à jour.'))
            return redirect(
                reverse('member-detail', args=[profile.user.username]))
        else:
            return render(request, 'member/settings/profile.html', data)
    else:
        form = MiniProfileForm(
            initial={
                'biography': profile.biography,
                'site': profile.site,
                'avatar_url': profile.avatar_url,
                'sign': profile.sign,
            })
        data = {'form': form, 'profile': profile}
        messages.warning(
            request,
            _(u'Le profil que vous éditez n\'est pas le vôtre. '
              u'Soyez encore plus prudent lors de l\'édition de celui-ci !'))
        return render(request, 'member/settings/profile.html', data)
예제 #13
0
def settings_mini_profile(request, user_name):
    """Minimal settings of users for staff."""

    # Extra information about the current user
    profile = get_object_or_404(Profile, user__username=user_name)
    if request.method == "POST":
        form = MiniProfileForm(request.POST)
        data = {"form": form, "profile": profile}
        if form.is_valid():
            profile.biography = form.data["biography"]
            profile.site = form.data["site"]
            profile.avatar_url = form.data["avatar_url"]
            profile.sign = form.data["sign"]

            # Save profile and redirect user to the settings page
            # with a message indicating the operation state.

            try:
                profile.save()
            except:
                messages.error(request, _("Une erreur est survenue."))
                return redirect(reverse("member-settings-mini-profile"))

            messages.success(request,
                             _("Le profil a correctement été mis à jour."))
            return redirect(
                reverse("member-detail", args=[profile.user.username]))
        else:
            return render(request, "member/settings/profile.html", data)
    else:
        form = MiniProfileForm(
            initial={
                "biography": profile.biography,
                "site": profile.site,
                "avatar_url": profile.avatar_url,
                "sign": profile.sign,
            })
        data = {"form": form, "profile": profile}
        messages.warning(
            request,
            _("Le profil que vous éditez n'est pas le vôtre. "
              "Soyez encore plus prudent lors de l'édition de celui-ci !"),
        )
        return render(request, "member/settings/profile.html", data)
예제 #14
0
파일: views.py 프로젝트: josephcab/zds-site
def settings_mini_profile(request, user_name):
    """Minimal settings of users for staff."""

    # Extra information about the current user
    profile = get_object_or_404(Profile, user__username=user_name)
    if request.method == 'POST':
        form = MiniProfileForm(request.POST)
        data = {'form': form, 'profile': profile}
        if form.is_valid():
            profile.biography = form.data['biography']
            profile.site = form.data['site']
            profile.avatar_url = form.data['avatar_url']
            profile.sign = form.data['sign']

            # Save profile and redirect user to the settings page
            # with a message indicating the operation state.

            try:
                profile.save()
            except:
                messages.error(request, _('Une erreur est survenue.'))
                return redirect(reverse('member-settings-mini-profile'))

            messages.success(request, _('Le profil a correctement été mis à jour.'))
            return redirect(reverse('member-detail', args=[profile.user.username]))
        else:
            return render(request, 'member/settings/profile.html', data)
    else:
        form = MiniProfileForm(initial={
            'biography': profile.biography,
            'site': profile.site,
            'avatar_url': profile.avatar_url,
            'sign': profile.sign,
        })
        data = {'form': form, 'profile': profile}
        messages.warning(request, _(
            'Le profil que vous éditez n\'est pas le vôtre. '
            'Soyez encore plus prudent lors de l\'édition de celui-ci !'))
        return render(request, 'member/settings/profile.html', data)
예제 #15
0
 def test_too_long_signature_miniprofile_form(self):
     data = {"biography": "", "site": "", "avatar_url": "", "sign": stringof251chars}
     form = MiniProfileForm(data=data)
     self.assertFalse(form.is_valid())
예제 #16
0
 def test_valid_change_miniprofile_form(self):
     data = {"biography": "", "site": "", "avatar_url": "", "sign": ""}
     form = MiniProfileForm(data=data)
     self.assertTrue(form.is_valid())
예제 #17
0
 def test_valid_change_miniprofile_form(self):
     data = {"biography": "", "site": "", "avatar_url": "", "sign": ""}
     form = MiniProfileForm(data=data)
     self.assertTrue(form.is_valid())