예제 #1
0
 def get_context_data(self, **kwargs):
     context = super(CouponListView, self).get_context_data(**kwargs)
     context["toolbar"] = Toolbar([
         NewActionButton("shuup_admin:coupon.new", text=_("Create new Coupon")),
         SettingsActionButton.for_model(self.model, return_url="coupon")
     ])
     return context
예제 #2
0
파일: list.py 프로젝트: shawnadelic/shuup
 def get_context_data(self, **kwargs):
     context = super(ContactGroupListView, self).get_context_data(**kwargs)
     context["toolbar"] = Toolbar([
         NewActionButton("shuup_admin:contact_group.new"),
         SettingsActionButton.for_model(ContactGroup, return_url="contact_group")
     ])
     return context
예제 #3
0
파일: _list.py 프로젝트: gurch101/shuup
 def get_context_data(self, **kwargs):
     context = super(CouponListView, self).get_context_data(**kwargs)
     context["toolbar"] = Toolbar([
         NewActionButton("shuup_admin:coupon.new", text=_("Create new Coupon")),
         SettingsActionButton.for_model(self.model, return_url="coupon")
     ])
     return context
예제 #4
0
 def get_toolbar(self):
     return Toolbar([
         NewActionButton.for_model(
             PersonContact, url=reverse("shuup_admin:contact.new") + "?type=person"),
         NewActionButton.for_model(
             CompanyContact, extra_css_class="btn-info", url=reverse("shuup_admin:contact.new") + "?type=company"),
         SettingsActionButton.for_model(Contact, return_url="contact")
     ])
예제 #5
0
 def get_toolbar(self):
     toolbar = Toolbar([
         NewActionButton.for_model(Order,
                                   url=reverse("shuup_admin:order.new")),
         SettingsActionButton.for_model(Order, return_url="order")
     ],
                       view=self)
     return toolbar
예제 #6
0
파일: list.py 프로젝트: gurch101/shuup
 def get_context_data(self, **kwargs):
     context = super(PermissionGroupListView, self).get_context_data(**kwargs)
     context["title"] = _("Permission Groups")
     context["toolbar"] = Toolbar([
         NewActionButton("shuup_admin:permission_group.new", text=_("Create new Permission Group")),
         SettingsActionButton.for_model(self.model, return_url="permission_group")
     ])
     return context
예제 #7
0
파일: list.py 프로젝트: ruqaiya/shuup
 def get_toolbar(self):
     toolbar = Toolbar([
         NewActionButton.for_model(
             Order, url=reverse("shuup_admin:order.new")
         ),
         SettingsActionButton.for_model(Order, return_url="order")
     ], view=self)
     return toolbar
예제 #8
0
 def get_context_data(self, **kwargs):
     context = super(ContactGroupListView, self).get_context_data(**kwargs)
     context["toolbar"] = Toolbar([
         NewActionButton("shuup_admin:contact_group.new"),
         SettingsActionButton.for_model(ContactGroup,
                                        return_url="contact_group")
     ])
     return context
예제 #9
0
파일: _list.py 프로젝트: yurkobb/shuup
 def get_context_data(self, **kwargs):
     context = super(CouponListView, self).get_context_data(**kwargs)
     if self.request.user.is_superuser:
         settings_button = SettingsActionButton.for_model(self.model, return_url="coupon")
     else:
         settings_button = None
     context["toolbar"] = Toolbar(
         [NewActionButton("shuup_admin:coupon.new", text=_("Create new Coupon")), settings_button], view=self
     )
     return context
예제 #10
0
파일: list.py 프로젝트: ruqaiya/shuup
 def get_context_data(self, **kwargs):
     context = super(ContactGroupListView, self).get_context_data(**kwargs)
     if self.request.user.is_superuser:
         settings_button = SettingsActionButton.for_model(ContactGroup, return_url="contact_group")
     else:
         settings_button = None
     context["toolbar"] = Toolbar([
         NewActionButton("shuup_admin:contact_group.new"),
         settings_button
     ], view=self)
     return context
예제 #11
0
 def get_context_data(self, **kwargs):
     context = super(ContactGroupListView, self).get_context_data(**kwargs)
     if self.request.user.is_superuser:
         settings_button = SettingsActionButton.for_model(ContactGroup, return_url="contact_group")
     else:
         settings_button = None
     context["toolbar"] = Toolbar([
         NewActionButton("shuup_admin:contact_group.new"),
         settings_button
     ])
     return context
예제 #12
0
파일: 52663_list.py 프로젝트: wanuop/shuup
 def get_context_data(self, **kwargs):
     context = super(PermissionGroupListView,
                     self).get_context_data(**kwargs)
     context["title"] = _("Permission Groups")
     context["toolbar"] = Toolbar([
         NewActionButton("shuup_admin:permission_group.new",
                         text=_("Create new Permission Group")),
         SettingsActionButton.for_model(self.model,
                                        return_url="permission_group")
     ])
     return context
예제 #13
0
파일: _list.py 프로젝트: ruqaiya/shuup
 def get_context_data(self, **kwargs):
     context = super(CampaignListView, self).get_context_data(**kwargs)
     if self.request.user.is_superuser:
         settings_button = SettingsActionButton.for_model(self.model, return_url="basket_campaign")
     else:
         settings_button = None
     context["toolbar"] = Toolbar([
         NewActionButton("shuup_admin:basket_campaign.new", text=_("Create new Basket Campaign")),
         settings_button
     ], view=self)
     return context
예제 #14
0
 def get_context_data(self, **kwargs):
     context = super(PermissionGroupListView, self).get_context_data(**kwargs)
     context["title"] = _("Permission Groups")
     if self.request.user.is_superuser:
         settings_button = SettingsActionButton.for_model(self.model, return_url="permission_group")
     else:
         settings_button = None
     context["toolbar"] = Toolbar([
         NewActionButton("shuup_admin:permission_group.new", text=_("Create new Permission Group")),
         settings_button
     ])
     return context
예제 #15
0
파일: list.py 프로젝트: ruqaiya/shuup
 def get_context_data(self, **kwargs):
     context = super(PermissionGroupListView, self).get_context_data(**kwargs)
     context["title"] = _("Permission Groups")
     if self.request.user.is_superuser:
         settings_button = SettingsActionButton.for_model(self.model, return_url="permission_group")
     else:
         settings_button = None
     context["toolbar"] = Toolbar([
         NewActionButton("shuup_admin:permission_group.new", text=_("Create new Permission Group")),
         settings_button
     ], view=self)
     return context
예제 #16
0
파일: list.py 프로젝트: tapan-ghosh/shuup
 def get_toolbar(self):
     if self.request.user.is_superuser:
         settings_button = SettingsActionButton.for_model(Contact, return_url="contact")
     else:
         settings_button = None
     return Toolbar([
         NewActionButton.for_model(
             PersonContact, url=reverse("shuup_admin:contact.new") + "?type=person"
         ),
         NewActionButton.for_model(
             CompanyContact, extra_css_class="btn-info", url=reverse("shuup_admin:contact.new") + "?type=company"
         ),
         settings_button
     ], view=self)
예제 #17
0
파일: list.py 프로젝트: ruqaiya/shuup
 def get_toolbar(self):
     if self.request.user.is_superuser:
         settings_button = SettingsActionButton.for_model(Contact, return_url="contact")
     else:
         settings_button = None
     return Toolbar([
         NewActionButton.for_model(
             PersonContact, url=reverse("shuup_admin:contact.new") + "?type=person"
         ),
         NewActionButton.for_model(
             CompanyContact, extra_css_class="btn-info", url=reverse("shuup_admin:contact.new") + "?type=company"
         ),
         settings_button
     ], view=self)
예제 #18
0
    def get_context_data(self, **kwargs):
        context = super(ContactGroupPriceDisplayListView, self).get_context_data(**kwargs)
        if self.request.user.is_superuser:
            settings_button = SettingsActionButton.for_model(
                ContactGroupPriceDisplay, return_url="contact_group_price_display")
        else:
            settings_button = None

        shop = get_shop(self.request)
        can_create = len(get_groups_for_price_display_create(shop))
        context["toolbar"] = Toolbar([
            NewActionButton("shuup_admin:contact_group_price_display.new") if can_create else None,
            settings_button
        ], view=self)
        return context
예제 #19
0
파일: list.py 프로젝트: ruqaiya/shuup
    def get_context_data(self, **kwargs):
        context = super(ContactGroupPriceDisplayListView, self).get_context_data(**kwargs)
        if self.request.user.is_superuser:
            settings_button = SettingsActionButton.for_model(
                ContactGroupPriceDisplay, return_url="contact_group_price_display")
        else:
            settings_button = None

        shop = get_shop(self.request)
        can_create = len(get_groups_for_price_display_create(shop))
        context["toolbar"] = Toolbar([
            NewActionButton("shuup_admin:contact_group_price_display.new") if can_create else None,
            settings_button
        ], view=self)
        return context
예제 #20
0
파일: views.py 프로젝트: yourkin/shuup
    def get_toolbar(self):
        buttons = []
        model = self.model
        if hasattr(self, "get_model"):
            model = self.get_model()
        new_button = NewActionButton.for_model(model)
        if new_button:
            buttons.append(new_button)

        return_url = self.url_identifier if self.url_identifier else None
        settings_button = SettingsActionButton.for_model(model, return_url=return_url)
        if settings_button:
            buttons.append(settings_button)

        return Toolbar(buttons)
예제 #21
0
    def get_toolbar(self):
        buttons = []
        model = self.model
        if hasattr(self, "get_model"):
            model = self.get_model()
        new_button = NewActionButton.for_model(model)
        if new_button:
            buttons.append(new_button)

        return_url = self.url_identifier if self.url_identifier else None
        settings_button = SettingsActionButton.for_model(model, return_url=return_url)
        if settings_button:
            buttons.append(settings_button)

        return Toolbar(buttons)
예제 #22
0
파일: views.py 프로젝트: ruqaiya/shuup
    def get_toolbar(self):
        toolbar = Toolbar()

        model = self.model
        if hasattr(self, "get_model"):
            model = self.get_model()
        new_button = NewActionButton.for_model(model)
        if new_button:
            toolbar.append(new_button)

        return_url = self.url_identifier if self.url_identifier else None
        if self.request.user.is_superuser:
            settings_button = SettingsActionButton.for_model(model, return_url=return_url)
        else:
            settings_button = None
        if settings_button:
            toolbar.append(settings_button)

        toolbar.extend(Toolbar.for_view(self))
        return toolbar
예제 #23
0
    def get_toolbar(self):
        toolbar = Toolbar()

        model = self.model
        if hasattr(self, "get_model"):
            model = self.get_model()
        new_button = NewActionButton.for_model(model)
        if new_button:
            toolbar.append(new_button)

        return_url = self.url_identifier if self.url_identifier else None
        if self.request.user.is_superuser:
            settings_button = SettingsActionButton.for_model(model, return_url=return_url)
        else:
            settings_button = None
        if settings_button:
            toolbar.append(settings_button)

        toolbar.extend(Toolbar.for_view(self))
        return toolbar
예제 #24
0
    button = button_class(required_permissions=permissions, **kwargs)
    rendered_button = "".join(bit for bit in button.render(request))
    assert not rendered_button

    # Set permissions for the user
    set_permissions_for_group(request.user.groups.first(), permissions)
    rendered_button = "".join(bit for bit in button.render(request))
    assert rendered_button


@pytest.mark.parametrize("button, permission, instance", [
    (URLActionButton(url=reverse("shuup_admin:shop_product.new")), "shop_product.new", URLActionButton),
    (URLActionButton(url=reverse_lazy("shuup_admin:shop_product.new")), "shop_product.new", URLActionButton),

    (NewActionButton.for_model(ShopProduct), "shop_product.new", URLActionButton),
    (SettingsActionButton.for_model(ShopProduct, return_url="/"), "shop_product.list_settings", URLActionButton),

    # for_model without shuup_admin url returns None
    (NewActionButton.for_model(AbstractUser), "abstract_user.new", type(None)),
    (SettingsActionButton.for_model(AbstractUser), "abstract_user.list_settings", type(None)),
])
def test_url_buttons_permission(rf, button, permission, instance):
    request = rf.get("/")

    assert isinstance(button, instance)

    if button is not None:
        request.user = factories.get_default_staff_user()
        assert not "".join(bit for bit in button.render(request))

        set_permissions_for_group(request.user.groups.first(), (permission,))
예제 #25
0
    # Set permissions for the user
    set_permissions_for_group(request.user.groups.first(), permissions)
    rendered_button = "".join(bit for bit in button.render(request))
    assert rendered_button


@pytest.mark.parametrize(
    "button, permission, instance",
    [
        (URLActionButton(url=reverse("shuup_admin:shop_product.new")),
         "shop_product.new", URLActionButton),
        (URLActionButton(url=reverse_lazy("shuup_admin:shop_product.new")),
         "shop_product.new", URLActionButton),
        (NewActionButton.for_model(ShopProduct), "shop_product.new",
         URLActionButton),
        (SettingsActionButton.for_model(ShopProduct, return_url="/"),
         "shop_product.list_settings", URLActionButton),

        # for_model without shuup_admin url returns None
        (NewActionButton.for_model(AbstractUser), "abstract_user.new",
         type(None)),
        (SettingsActionButton.for_model(AbstractUser),
         "abstract_user.list_settings", type(None)),
    ])
def test_url_buttons_permission(rf, button, permission, instance):
    request = rf.get("/")

    assert isinstance(button, instance)

    if button is not None:
        request.user = factories.get_default_staff_user()