コード例 #1
0
ファイル: test_forms.py プロジェクト: bestkatrina/Project
    def test_inlines(self):
        user = self._create_user("randomuser", is_staff=True, add_default_permissions=True)
        page = create_page("page_b", "nav_playground.html", "en",
                           created_by=self.get_superuser())
        data = {
            'page': page.pk,
            'grant_on': ACCESS_PAGE_AND_CHILDREN,
            'can_view': 'True',
            'user': '',
            'group': '',
        }
        set_current_user(self.get_superuser())
        form = ViewRestrictionInlineAdminForm(data=data, files=None)
        self.assertTrue(form.is_valid())
        data = {
            'page': page.pk,
            'grant_on': ACCESS_PAGE_AND_CHILDREN,
            'can_view': 'True',
            'user': '',
            'group': ''
        }
        form = GlobalPagePermissionAdminForm(data=data, files=None)
        self.assertFalse(form.is_valid())

        data = {
            'page': page.pk,
            'grant_on': ACCESS_PAGE_AND_CHILDREN,
            'can_view': 'True',
            'user': user.pk,

        }
        form = GlobalPagePermissionAdminForm(data=data, files=None)
        self.assertTrue(form.is_valid())
コード例 #2
0
    def handle(self, *args, **options):
        """
        Create published public version of selected drafts.
        """
        include_unpublished = options.get("include_unpublished")
        language = options.get("language")
        site = self.get_site(options.get("site"))

        # we need a super user to assign the publish action to
        try:
            user = get_user_model().objects.filter(is_active=True, is_staff=True, is_superuser=True)[0]
        except IndexError:
            raise CommandError("No super user found, create one using `manage.py createsuperuser`.")
        # set him as current user
        set_current_user(user)

        pages_published = 0
        pages_total = 0
        self.stdout.write("\nPublishing public drafts....\n")
        index = 0
        for page, add in publish_pages(include_unpublished, language, site):
            m = "*" if add else " "
            self.stdout.write("%d.\t%s  %s [%d]\n" % (index + 1, m, force_text(page), page.id))
            pages_total += 1
            if add:
                pages_published += 1
            index += 1

        self.stdout.write("\n")
        self.stdout.write("=" * 40)
        self.stdout.write("\nTotal:     %s\n" % pages_total)
        self.stdout.write("Published: %s\n" % pages_published)
コード例 #3
0
ファイル: forms.py プロジェクト: amaozhao/basecms
    def test_inlines(self):
        user = self._create_user("randomuser", is_staff=True, add_default_permissions=True)
        page = create_page("page_b", "nav_playground.html", "en",
                           created_by=self.get_superuser())
        data = {
            'page': page.pk,
            'grant_on': ACCESS_PAGE_AND_CHILDREN,
            'can_view': 'True',
            'user': '',
            'group': '',
        }
        set_current_user(self.get_superuser())
        form = ViewRestrictionInlineAdminForm(data=data, files=None)
        self.assertTrue(form.is_valid())
        data = {
            'page': page.pk,
            'grant_on': ACCESS_PAGE_AND_CHILDREN,
            'can_view': 'True',
            'user': '',
            'group': ''
        }
        form = GlobalPagePermissionAdminForm(data=data, files=None)
        self.assertFalse(form.is_valid())

        data = {
            'page': page.pk,
            'grant_on': ACCESS_PAGE_AND_CHILDREN,
            'can_view': 'True',
            'user': user.pk,

        }
        form = GlobalPagePermissionAdminForm(data=data, files=None)
        self.assertTrue(form.is_valid())
コード例 #4
0
    def publish_pages(self):
        from django.contrib.auth.models import User
        from cms.models import Page
        from cms.utils.permissions import set_current_user

        # thread locals middleware needs to know, who are we - login as a first
        # super user

        try:
            user = User.objects.filter(is_active=True,
                                       is_staff=True,
                                       is_superuser=True)[0]
        except IndexError:
            raise CommandError(
                "No super user found, create one using `manage.py createsuperuser`."
            )

        set_current_user(user)  # set him as current user

        qs = Page.objects.drafts().filter(published=True)
        pages_total, pages_published = qs.count(), 0

        print "\nPublishing public drafts....\n"

        for i, page in enumerate(qs):
            m = " "
            if page.publish():
                pages_published += 1
                m = "*"
            print "%d.\t%s  %s [%d]" % (i + 1, m, unicode(page), page.id)

        print "\n"
        print "=" * 40
        print "Total:    ", pages_total
        print "Published:", pages_published
コード例 #5
0
ファイル: publisher_publish.py プロジェクト: Asjohn720/cms
    def handle(self, *args, **options):
        """
        Create published public version of selected drafts.
        """
        include_unpublished = options.get('include_unpublished')
        language = options.get('language')
        site = self.get_site(options.get('site'))

        # we need a super user to assign the publish action to
        try:
            user = get_user_model().objects.filter(is_active=True, is_staff=True, is_superuser=True)[0]
        except IndexError:
            raise CommandError('No super user found, create one using `manage.py createsuperuser`.')
        # set him as current user
        set_current_user(user)

        pages_published = 0
        pages_total = 0
        self.stdout.write('\nPublishing public drafts....\n')
        index = 0
        for page, add in publish_pages(include_unpublished, language, site):
            m = '*' if add else ' '
            self.stdout.write('%d.\t%s  %s [%d]\n' % (index + 1, m, force_text(page), page.id))
            pages_total += 1
            if add:
                pages_published += 1
            index += 1

        self.stdout.write('\n')
        self.stdout.write('=' * 40)
        self.stdout.write('\nTotal:     %s\n' % pages_total)
        self.stdout.write('Published: %s\n' % pages_published)
コード例 #6
0
 def publish_pages(self):
     from django.contrib.auth.models import User
     from cms.models import Page
     from cms.utils.permissions import set_current_user
     
     # thread locals middleware needs to know, who are we - login as a first
     # super user
     
     try:
         user = User.objects.filter(is_active=True, is_staff=True, is_superuser=True)[0]
     except IndexError:
         raise CommandError("No super user found, create one using `manage.py createsuperuser`.")
     
     set_current_user(user) # set him as current user
     
     qs = Page.objects.drafts().filter(published=True)
     pages_total, pages_published = qs.count(), 0
     
     print "\nPublishing public drafts....\n"
     
     for i, page in enumerate(qs):
         m = " "
         if page.publish():
             pages_published += 1
             m = "*"
         print "%d.\t%s  %s [%d]" % (i + 1, m, unicode(page), page.id) 
     
     print "\n"
     print "=" * 40
     print "Total:    ", pages_total
     print "Published:", pages_published
コード例 #7
0
ファイル: user.py プロジェクト: USGM/django-cms
 def process_request(self, request):
     from cms.utils.permissions import set_current_user
     try:
         user = request.user
         user.is_authenticated()
     except AttributeError:
         user = None
     set_current_user(user)
コード例 #8
0
    def publish_pages(self, include_unpublished, language, site):
        from cms.models import Page
        from cms.utils.compat.dj import get_user_model
        from cms.utils.permissions import set_current_user

        # thread locals middleware needs to know, who are we - login as a first
        # super user

        try:
            user = get_user_model().objects.filter(is_active=True,
                                                   is_staff=True,
                                                   is_superuser=True)[0]
        except IndexError:
            raise CommandError(
                "No super user found, create one using `manage.py createsuperuser`."
            )

        set_current_user(user)  # set him as current user

        qs = Page.objects.drafts()
        if not include_unpublished:
            qs = qs.filter(title_set__published=True).distinct()
        if site:
            qs = qs.filter(site_id=site)

        pages_total, pages_published = qs.count(), 0

        self.stdout.write(u"\nPublishing public drafts....\n")
        output_language = None
        for i, page in enumerate(qs):
            m = " "
            add = True
            titles = page.title_set
            if not include_unpublished:
                titles = titles.filter(published=True)
            for lang in titles.values_list("language", flat=True):
                if language is None or lang == language:
                    if not output_language:
                        output_language = lang
                    if not page.publish(lang):
                        add = False
            # we may need to activate the first (main) language for proper page title rendering
            activate(output_language)
            if add:
                pages_published += 1
                m = "*"
            self.stdout.write(u"%d.\t%s  %s [%d]\n" %
                              (i + 1, m, force_unicode(page), page.id))

        self.stdout.write(u"\n")
        self.stdout.write(u"=" * 40)
        self.stdout.write(u"\nTotal:     %s\n" % pages_total)
        self.stdout.write(u"Published: %s\n" % pages_published)
コード例 #9
0
ファイル: test_menus.py プロジェクト: mangalam-research/btw
    def tearDown(self):
        super(MenuTestCase, self).tearDown()

        # This is needed to ensure that Django CMS does not blow a fuse
        # when we load fixtures for the next test.
        from cms.utils.permissions import set_current_user
        set_current_user(None)

        # This resets the menu pool to pre-expansion values.
        from menus.menu_pool import menu_pool
        menu_pool.menus = self.saved_menus
        menu_pool._expanded = False
        menu_pool.clear()
コード例 #10
0
    def publish_pages(self, include_unpublished, language, site):
        from cms.models import Page
        from cms.utils.compat.dj import get_user_model
        from cms.utils.permissions import set_current_user

        # thread locals middleware needs to know, who are we - login as a first
        # super user

        try:
            user = get_user_model().objects.filter(is_active=True, is_staff=True, is_superuser=True)[0]
        except IndexError:
            raise CommandError("No super user found, create one using `manage.py createsuperuser`.")

        set_current_user(user) # set him as current user

        qs = Page.objects.drafts()
        if not include_unpublished:
            qs = qs.filter(title_set__published=True).distinct()
        if site:
            qs = qs.filter(site_id=site)

        pages_total, pages_published = qs.count(), 0

        self.stdout.write(u"\nPublishing public drafts....\n")
        output_language = None
        for i, page in enumerate(qs):
            m = " "
            add = True
            titles = page.title_set
            if not include_unpublished:
                titles = titles.filter(published=True)
            for lang in titles.values_list("language", flat=True):
                if language is None or lang == language:
                    if not output_language:
                        output_language = lang
                    if not page.publish(lang):
                        add = False
            # we may need to activate the first (main) language for proper page title rendering
            activate(output_language)
            if add:
                pages_published += 1
                m = "*"
            self.stdout.write(u"%d.\t%s  %s [%d]\n" % (i + 1, m, force_unicode(page), page.id))

        self.stdout.write(u"\n")
        self.stdout.write(u"=" * 40)
        self.stdout.write(u"\nTotal:     %s\n" % pages_total)
        self.stdout.write(u"Published: %s\n" % pages_published)
コード例 #11
0
    def handle_noargs(self, **options):
        """Create published public version of selected drafts.
        """
        include_unpublished = options.get('include_unpublished')
        language = options.get('language')
        site = options.get('site')
        if site:
            try:
                site = int(site)
                site = Site.objects.get(pk=site)
            except (ValueError, Site.DoesNotExist):
                raise CommandError("There is no site with given site id.")
        else:
            site = None

        try:
            user = get_user_model().objects.filter(is_active=True,
                                                   is_staff=True,
                                                   is_superuser=True)[0]
        except IndexError:
            raise CommandError(
                "No super user found, create one using `manage.py createsuperuser`."
            )

        set_current_user(user)  # set him as current user

        pages_published = 0
        pages_total = 0
        self.stdout.write(u"\nPublishing public drafts....\n")
        index = 0
        for page, add in publish_pages(include_unpublished, language, site):
            m = '*' if add else ' '
            self.stdout.write(u"%d.\t%s  %s [%d]\n" %
                              (index + 1, m, force_text(page), page.id))
            pages_total += 1
            if add:
                pages_published += 1
            index += 1

        self.stdout.write(u"\n")
        self.stdout.write(u"=" * 40)
        self.stdout.write(u"\nTotal:     %s\n" % pages_total)
        self.stdout.write(u"Published: %s\n" % pages_published)
コード例 #12
0
ファイル: test_forms.py プロジェクト: kasksad/DjangoCMS
    def test_user_forms(self):
        user = self.get_superuser()
        user2 = self._create_user("randomuser",
                                  is_staff=True,
                                  add_default_permissions=True)
        set_current_user(user)
        data = {
            'username': "******",
            'password': '******',
            'password1': 'hello',
            'password2': 'hello',
            'created_by': user.pk,
            'last_login': datetime.now(),
            'date_joined': datetime.now(),
            'email': '*****@*****.**',
        }

        form = PageUserForm(data=data, files=None)
        self.assertTrue(form.is_valid(), form.errors)
        form.save()
        data = {
            'username': "******",
            'password': '******',
            'password1': 'hello',
            'password2': 'hello',
            'email': '*****@*****.**',
            'created_by': user.pk,
            'last_login': datetime.now(),
            'date_joined': datetime.now(),
            'notify_user': '******',
        }
        form = PageUserForm(data=data, files=None, instance=user2)
        self.assertTrue(form.is_valid(), form.errors)
        form.save()
        data = {'name': 'test_group'}
        form = PageUserGroupForm(data=data, files=None)
        self.assertTrue(form.is_valid(), form.errors)
        instance = form.save()

        form = PageUserGroupForm(data=data, files=None, instance=instance)
        self.assertTrue(form.is_valid(), form.errors)
        form.save()
コード例 #13
0
ファイル: forms.py プロジェクト: amaozhao/basecms
    def test_user_forms(self):
        user = self.get_superuser()
        user2 = self._create_user("randomuser", is_staff=True, add_default_permissions=True)
        set_current_user(user)
        data = {'username': "******",
                'password': '******',
                'password1': 'hello',
                'password2': 'hello',
                'created_by': user.pk,
                'last_login': datetime.now(),
                'date_joined': datetime.now(),
                'email': '*****@*****.**',
        }

        form = PageUserForm(data=data, files=None)
        self.assertTrue(form.is_valid(), form.errors)
        form.save()
        data = {'username': "******",
                'password': '******',
                'password1': 'hello',
                'password2': 'hello',
                'email': '*****@*****.**',
                'created_by': user.pk,
                'last_login': datetime.now(),
                'date_joined': datetime.now(),
                'notify_user': '******',
        }
        form = PageUserForm(data=data, files=None, instance=user2)
        self.assertTrue(form.is_valid(), form.errors)
        form.save()
        data = {
            'name': 'test_group'
        }
        form = PageUserGroupForm(data=data, files=None)
        self.assertTrue(form.is_valid(), form.errors)
        instance = form.save()

        form = PageUserGroupForm(data=data, files=None, instance=instance)
        self.assertTrue(form.is_valid(), form.errors)
        form.save()
コード例 #14
0
    def test_user_forms(self):
        user = self.get_superuser()
        user2 = self._create_user("randomuser", is_staff=True, add_default_permissions=True)
        set_current_user(user)
        data = {
            "username": "******",
            "password": "******",
            "password1": "hello",
            "password2": "hello",
            "created_by": user.pk,
            "last_login": datetime.now(),
            "date_joined": datetime.now(),
            "email": "*****@*****.**",
        }

        form = PageUserForm(data=data, files=None)
        self.assertTrue(form.is_valid(), form.errors)
        form.save()
        data = {
            "username": "******",
            "password": "******",
            "password1": "hello",
            "password2": "hello",
            "email": "*****@*****.**",
            "created_by": user.pk,
            "last_login": datetime.now(),
            "date_joined": datetime.now(),
            "notify_user": "******",
        }
        form = PageUserForm(data=data, files=None, instance=user2)
        self.assertTrue(form.is_valid(), form.errors)
        form.save()
        data = {"name": "test_group"}
        form = PageUserGroupForm(data=data, files=None)
        self.assertTrue(form.is_valid(), form.errors)
        instance = form.save()

        form = PageUserGroupForm(data=data, files=None, instance=instance)
        self.assertTrue(form.is_valid(), form.errors)
        form.save()
コード例 #15
0
ファイル: publisher_publish.py プロジェクト: Barro/cms
    def handle_noargs(self, **options):
        """Create published public version of selected drafts.
        """
        include_unpublished = options.get('include_unpublished')
        language = options.get('language')
        site = options.get('site')
        if site:
            try:
                site = int(site)
                site = Site.objects.get(pk=site)
            except (ValueError, Site.DoesNotExist):
                raise CommandError("There is no site with given site id.")
        else:
            site = None

        try:
            user = get_user_model().objects.filter(is_active=True, is_staff=True, is_superuser=True)[0]
        except IndexError:
            raise CommandError("No super user found, create one using `manage.py createsuperuser`.")

        set_current_user(user) # set him as current user

        pages_published = 0
        pages_total = 0
        self.stdout.write(u"\nPublishing public drafts....\n")
        index = 0
        for page, add in publish_pages(include_unpublished, language, site):
            m = '*' if add else ' '
            self.stdout.write(u"%d.\t%s  %s [%d]\n" % (index + 1, m, force_text(page), page.id))
            pages_total += 1
            if add:
                pages_published += 1
            index += 1

        self.stdout.write(u"\n")
        self.stdout.write(u"=" * 40)
        self.stdout.write(u"\nTotal:     %s\n" % pages_total)
        self.stdout.write(u"Published: %s\n" % pages_published)
コード例 #16
0
ファイル: user.py プロジェクト: Axion/django-cms
 def process_request(self, request):
     from cms.utils.permissions import set_current_user
     set_current_user(getattr(request, 'user', None))
コード例 #17
0
ファイル: runner.py プロジェクト: mangalam-research/btw
def setUpTestData(cls):
    set_current_user(None)
    if old_setUpTestData:
        old_setUpTestData()
コード例 #18
0
ファイル: runner.py プロジェクト: mangalam-research/btw
def setUp(self):
    set_current_user(None)
    if old_setUp:
        old_setUp(self)
コード例 #19
0
ファイル: testcases.py プロジェクト: 31H0B1eV/django-cms
 def _post_teardown(self):
     # Needed to clean the menu keys cache, see menu.menu_pool.clear()
     menu_pool.clear()
     super(CMSTestCase, self)._post_teardown()
     set_current_user(None)
コード例 #20
0
ファイル: runner.py プロジェクト: mangalam-research/btw
def setUp(self):
    set_current_user(None)
    if old_setUp:
        old_setUp(self)
コード例 #21
0
 def _post_teardown(self):
     menu_pool.clear()
     cache.clear()
     super()._post_teardown()
     set_current_user(None)
コード例 #22
0
def setup():
    from django.contrib.auth.models import User
    from cms.utils.permissions import set_current_user
    set_current_user(User.objects.get(id=1))
コード例 #23
0
ファイル: runner.py プロジェクト: mangalam-research/btw
def setUpTestData(cls):
    set_current_user(None)
    if old_setUpTestData:
        old_setUpTestData()
コード例 #24
0
ファイル: testcases.py プロジェクト: evildmp/django-cms
 def _post_teardown(self):
     menu_pool.clear()
     cache.clear()
     super(BaseCMSTestCase, self)._post_teardown()
     set_current_user(None)
コード例 #25
0
def setup():
    from django.contrib.auth.models import User
    from cms.utils.permissions import set_current_user
    set_current_user(User.objects.get(id=1))
コード例 #26
0
 def _post_teardown(self):
     menu_pool.clear()
     cache.clear()
     super(BaseCMSTestCase, self)._post_teardown()
     set_current_user(None)
コード例 #27
0
 def _post_teardown(self):
     # Needed to clean the menu keys cache, see menu.menu_pool.clear()
     menu_pool.clear()
     cache.clear()
     super(BaseCMSTestCase, self)._post_teardown()
     set_current_user(None)
コード例 #28
0
ファイル: user.py プロジェクト: artemrizhov/itcm
 def process_request(self, request):
     set_current_user(getattr(request, 'user', None))
コード例 #29
0
    def process_request(self, request):
        from cms.utils.permissions import set_current_user

        set_current_user(getattr(request, 'user', None))