Пример #1
0
 def get_toolbar(self):
     toolbar = Toolbar()
     toolbar.append(
         JavaScriptActionButton(onclick="window.saveCategories();",
                                text=_("Save"),
                                icon="fa fa-save",
                                extra_css_class="btn-success"))
     return toolbar
Пример #2
0
 def get_toolbar(self):
     return Toolbar([
         URLActionButton(text="New Script",
                         icon="fa fa-plus",
                         extra_css_class="btn-success",
                         url=reverse("shuup_admin:notify.script.new"))
     ])
Пример #3
0
    def get_context_data(self, **kwargs):
        context = super(OrderCreateRefundView, self).get_context_data(**kwargs)
        context["title"] = _("Create Refund -- %s") % context["order"]
        context["toolbar"] = Toolbar([
            PostActionButton(
                icon="fa fa-check-circle",
                form_id="create_refund",
                text=_("Create Refund"),
                extra_css_class="btn-success",
            )
        ], view=self)

        # Allowing full refunds for suppliers would block the refunds for
        # rest of the suppliers since full refund can only be created once
        supplier = context["supplier"] = get_supplier(self.request)
        if not supplier:
            context["toolbar"].append(
                URLActionButton(
                    url=reverse("shuup_admin:order.create-full-refund", kwargs={"pk": self.object.pk}),
                    icon="fa fa-dollar",
                    text=_("Refund Entire Order"),
                    extra_css_class="btn-info",
                    disable_reason=_("This order already has existing refunds") if self.object.has_refunds() else None
                )
            )

        # Setting the line_numbers choices dynamically creates issues with the blank formset,
        # So adding that to the context to be rendered manually
        context["line_number_choices"] = self._get_line_number_choices(supplier)

        lines = lines = self.object.lines.all()
        if supplier:
            lines = lines.filter(supplier=supplier)
        context["json_line_data"] = [self._get_line_data(self.object, line) for line in lines]
        return context
Пример #4
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
Пример #5
0
    def get_context_data(self, **kwargs):
        context = super(AddonListView, self).get_context_data(**kwargs)
        context["toolbar"] = Toolbar([
            PostActionButton(
                icon="fa fa-save",
                form_id="addon_list",
                text=_("Save addon changes"),
                extra_css_class="btn-success",
            ),
            NewActionButton(
                reverse("shuup_admin:addon.upload"),
                text=_("Upload new addon"),
                extra_css_class="btn-info",
                icon="fa fa-upload",
            )
        ])
        if self.request.GET.get("reload"):
            context["toolbar"].append(
                URLActionButton(
                    reverse("shuup_admin:addon.reload"),
                    text=_("Reload application"),
                    extra_css_class="btn-warning",
                    icon="fa fa-refresh",
                ))

        return context
Пример #6
0
    def get_context_data(self, **kwargs):
        context = super(OrderCreateRefundView, self).get_context_data(**kwargs)
        context["title"] = _("Create Refund -- %s") % context["order"]
        context["toolbar"] = Toolbar([
            PostActionButton(
                icon="fa fa-check-circle",
                form_id="create_refund",
                text=_("Create Refund"),
                extra_css_class="btn-success",
            ),
            URLActionButton(
                url=reverse("shuup_admin:order.create-full-refund",
                            kwargs={"pk": self.object.pk}),
                icon="fa fa-dollar",
                text=_("Refund Entire Order"),
                extra_css_class="btn-info",
                disable_reason=_("This order already has existing refunds")
                if self.object.has_refunds() else None),
        ])

        # Setting the line_numbers choices dynamically creates issues with the blank formset,
        # So adding that to the context to be rendered manually
        context["line_number_choices"] = self._get_line_number_choices()
        context["json_line_data"] = [
            self._get_line_data(self.object.shop, line)
            for line in self.object.lines.all()
        ]

        return context
Пример #7
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")
     ])
Пример #8
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
Пример #9
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
Пример #10
0
    def get_context_data(self, **kwargs):
        context = super(ScriptEditView, self).get_context_data(**kwargs)
        if self.object.pk:
            buttons = []

            edit_button_title = _("Edit Script Contents")

            # this script was created through a template
            # so show an option to easily edit the template
            if self.object.template:
                template_cls = get_identifier_to_object_map(
                    SCRIPT_TEMPLATES_PROVIDE_CATEGORY).get(
                        self.object.template)

                # check whether is possible to edit the script through the template editor
                if template_cls and template_cls(
                        self.object).can_edit_script():
                    # change the editor button title to advanced mode
                    edit_button_title = _("Edit Script (advanced)")

                    buttons.append(
                        URLActionButton(
                            text=_("Edit Template"),
                            icon="fa fa-pencil-square-o",
                            extra_css_class="btn-primary",
                            url=reverse(
                                "shuup_admin:notify.script-template-edit",
                                kwargs={"pk": self.object.pk}),
                        ))

            buttons.insert(
                0,
                URLActionButton(
                    text=edit_button_title,
                    icon="fa fa-pencil",
                    extra_css_class="btn-primary",
                    url=reverse("shuup_admin:notify.script.edit-content",
                                kwargs={"pk": self.object.pk}),
                ),
            )

            buttons.insert(
                1,
                PostActionButton(
                    post_url=reverse("shuup_admin:notify.script.delete",
                                     kwargs={"pk": self.object.pk}),
                    text=_("Delete"),
                    icon="fa fa-trash",
                    extra_css_class="btn-danger",
                    confirm=_(
                        'Are you sure you wish to delete "%s" notification?') %
                    self.object,
                    required_permissions=("notify.script.delete", ),
                ),
            )

            context["toolbar"] = Toolbar(buttons, view=self)
        return context
Пример #11
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 Toolbar(buttons)
Пример #12
0
 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
Пример #13
0
 def get_toolbar(self):
     toobar = Toolbar([
         PostActionButton(
             icon="fa fa-check-circle",
             form_id="gdpr_form",
             text=_("Save"),
             extra_css_class="btn-success",
         )
     ], view=self)
     return toobar
Пример #14
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
Пример #15
0
 def get_context_data(self, **kwargs):
     context = super(AddonUploadView, self).get_context_data(**kwargs)
     context["toolbar"] = Toolbar([
         PostActionButton(
             icon="fa fa-upload",
             form_id="upload_form",
             text=_("Upload"),
             extra_css_class="btn-success",
         )
     ])
     return context
Пример #16
0
 def get_context_data(self, **kwargs):
     context = super(SystemSettingsView, self).get_context_data(**kwargs)
     context["toolbar"] = Toolbar([
         PostActionButton(
             icon="fa fa-check-circle",
             form_id="settings_form",
             text=_("Save system settings"),
             extra_css_class="btn-success",
         )
     ])
     return context
Пример #17
0
 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
Пример #18
0
 def get_toolbar(self):
     return Toolbar([
         URLActionButton(
             text=_("New Script"), icon="fa fa-plus", extra_css_class="btn-success",
             url=reverse("shuup_admin:notify.script.new")
         ),
         JavaScriptActionButton(
             text=_("New From Template"), icon="fa fa-book",
             onclick="showScriptTemplates()"
         )
     ])
Пример #19
0
 def get_context_data(self, **kwargs):
     context = super(OrderAddressEditView, self).get_context_data(**kwargs)
     context["title"] = _("Edit Addresses -- %s") % context["order"]
     context["toolbar"] = Toolbar([
         PostActionButton(
             icon="fa fa-check-circle",
             form_id="edit-addresses",
             text=_("Edit Addresses"),
             extra_css_class="btn-success",
         ),
     ])
     return context
Пример #20
0
 def get_context_data(self, **kwargs):
     context = super(ScriptEditView, self).get_context_data(**kwargs)
     if self.object.pk:
         context["toolbar"] = Toolbar([
             URLActionButton(text=_(u"Edit Script Contents..."),
                             icon="fa fa-pencil",
                             extra_css_class="btn-info",
                             url=reverse(
                                 "shuup_admin:notify.script.edit-content",
                                 kwargs={"pk": self.object.pk}))
         ])
     return context
Пример #21
0
 def get_toolbar(self):
     toolbar = Toolbar.for_view(self)
     toolbar.extend([
         JavaScriptActionButton(onclick="window.saveCategories();",
                                text=_("Save"),
                                icon="fa fa-save",
                                extra_css_class="btn-success"),
         JavaScriptActionButton(onclick="window.createNewCategory();",
                                text=_("Create New"),
                                icon="fa fa-plus")
     ])
     return toolbar
Пример #22
0
 def get_context_data(self, **kwargs):
     context = super(ProductCrossSellEditView, self).get_context_data(**kwargs)
     context["title"] = _("Edit Cross-Sell: %s") % self.object
     context["toolbar"] = Toolbar([
         PostActionButton(
             icon="fa fa-save",
             form_id="xsell_form",
             text=_("Save"),
             extra_css_class="btn-success",
         ),
     ])
     return context
Пример #23
0
 def get_context_data(self, **kwargs):
     context = super(OrderCreateFullRefundView, self).get_context_data(**kwargs)
     context["title"] = _("Create Full Refund -- %s") % context["order"]
     context["toolbar"] = Toolbar([
         URLActionButton(
             url=reverse("shuup_admin:order.create-refund", kwargs={"pk": self.object.pk}),
             icon="fa fa-check-circle",
             text=_("Cancel"),
             extra_css_class="btn-danger",
         ),
     ])
     return context
Пример #24
0
 def get_context_data(self, **kwargs):
     context = super(OrderCreateShipmentView, self).get_context_data(**kwargs)
     context["title"] = _("Create Shipment -- %s") % context["order"]
     context["toolbar"] = Toolbar([
         PostActionButton(
             icon="fa fa-check-circle",
             form_id="create_shipment",
             text=_("Create Shipment"),
             extra_css_class="btn-success",
         ),
     ], view=self)
     return context
Пример #25
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
Пример #26
0
 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)
Пример #27
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
Пример #28
0
 def get_context_data(self, **kwargs):
     context = super(EditScriptContentView, self).get_context_data(**kwargs)
     context["title"] = get_create_or_change_title(self.request, self.object)
     context["action_infos"] = Action.get_ui_info_map()
     context["condition_infos"] = Condition.get_ui_info_map()
     context["cond_op_names"] = get_enum_choices_dict(StepConditionOperator)
     context["step_next_names"] = get_enum_choices_dict(StepNext)
     context["toolbar"] = Toolbar([
         JavaScriptActionButton(
             text="Save", icon="fa fa-save", extra_css_class="btn-success",
             onclick="ScriptEditor.save();return false"
         ),
         get_discard_button(get_model_url(self.object, "edit"))
     ])
     return context
Пример #29
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
Пример #30
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)
Пример #31
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
Пример #32
0
    def get_toolbar(self):
        order = self.object
        toolbar = Toolbar()
        toolbar.append(URLActionButton(
            text=_("Create Refund"),
            icon="fa fa-dollar",
            disable_reason=_("This order cannot be refunded") if not order.can_create_refund() else None,
            url=reverse("shuup_admin:order.create-refund", kwargs={"pk": order.pk}),
            extra_css_class="btn-info"
        ))

        toolbar.append(URLActionButton(
            text=_("Create Payment"),
            icon="fa fa-money",
            disable_reason=_("This order cannot be paid at this point") if order.is_paid() else None,
            url=reverse("shuup_admin:order.create-payment", kwargs={"pk": order.pk}),
            extra_css_class="btn-info"
        ))

        toolbar.append(URLActionButton(
            text=_("Create Shipment"),
            icon="fa fa-truck",
            disable_reason=_("There are no products to ship") if not order.get_unshipped_products() else None,
            url=reverse("shuup_admin:order.create-shipment", kwargs={"pk": order.pk}),
            extra_css_class="btn-info"
        ))

        toolbar.append(PostActionButton(
            post_url=reverse("shuup_admin:order.set-status", kwargs={"pk": order.pk}),
            name="status",
            value=OrderStatus.objects.get_default_complete().pk,
            text=_("Set Complete"),
            icon="fa fa-check-circle",
            disable_reason=(
                _("This order can not be set as complete at this point")
                if not order.can_set_complete()
                else None
            ),
            extra_css_class="btn-success"
        ))

        toolbar.append(PostActionButton(
            post_url=reverse("shuup_admin:order.set-status", kwargs={"pk": order.pk}),
            name="status",
            value=OrderStatus.objects.get_default_canceled().pk,
            text=_("Cancel Order"),
            icon="fa fa-trash",
            disable_reason=(
                _("Paid, shipped, or canceled orders cannot be canceled")
                if not order.can_set_canceled()
                else None
            ),
            extra_css_class="btn-danger btn-inverse"
        ))
        toolbar.append(URLActionButton(
            text=_("Edit order"),
            icon="fa fa-money",
            disable_reason=_("This order cannot modified at this point") if not order.can_edit() else None,
            url=reverse("shuup_admin:order.edit", kwargs={"pk": order.pk}),
            extra_css_class="btn-info"
        ))

        for button in get_provide_objects("admin_order_toolbar_button"):
            toolbar.append(button(order))

        return toolbar
Пример #33
0
 def get_toolbar(self):
     return Toolbar.for_view(self)