Files
2025-03-12 17:06:23 +01:00

195 lines
12 KiB
YAML

generator:
class: stAdminGenerator
param:
user_model_class: sfGuardUser
product_model_class: Product
range_model_class: DiscountRange
documentation:
pl: https://www.sote.pl/docs/rabaty
en: https://www.soteshop.com/docs/discounts
custom_actions:
list: [user, product, range]
edit: [range]
model_class: Discount
theme: simple
head:
package: stDiscountPlugin
category_head:
package: stDiscountPlugin
applications: [stProduct, stUser]
fields:
name: {name: Nazwa, params: size=30}
priority: {name: Priorytet, params: size=5}
active: {name: Aktywny}
all_products: {name: Dla wszystkich produktów, params: class=all_products}
all_clients: {name: Dla klientów zalogowanych}
allow_anonymous_clients: {name: Dla klientów niezalogowanych}
auto_active: {name: Przypisz do nowych klientów}
type: {name: Rodzaj rabatu}
edit:
use_helper: [stDiscount]
title: Edycja Rabatu
description: Zarządzanie rabatami w sklepie
display:
"NONE": [active, _type, name, _value, product, _conditions, all_products, all_clients, allow_anonymous_clients, auto_active]
"Kategorie i producenci": [_categories, _producers]
actions:
_list: {name: Lista, i18n: stDiscountBackend}
_save: {name: Zapisz}
_save_and_add: {name: Zapisz i dodaj nowy}
_delete: {name: Usuń}
menu:
display: [edit, user, product]
fields:
edit: {name: Edycja, action: stDiscountBackend/edit?id=%%id%%}
user: {name: Przypisz klientów, action: stDiscountBackend/userList?discount_id=%%id%%}
product: {name: Przypisz produkty, action: stDiscountBackend/productList?discount_id=%%id%%}
fields:
type: {required: false}
active: {required: false}
all_products: {required: false, help: Jeśli zaznaczone rabat będzie pokazywany dla wszystkich produktów w sklepie}
auto_active: {required: false, help: Jeśli zaznaczone rabat będzie przypisywany do nowo zarejestrowanych klientów}
conditions: {name: Od kwoty zamówienia, required: true}
product: {required: true, name: Produkt główny, type: product_set_discount, params: control_name=product_set_discount}
allow_anonymous_clients: {required: false, help: Jeśli zaznaczone rabat będzie pokazywany również dla klientów niezalogowanych w sklepie}
all_clients: {required: false, help: Jeśli zaznaczone rabat będzie pokazywany dla wszystkich klientów zalogowanych w sklepie}
categories: {name: Kategorie, i18n: stCategory}
producers: {name: Producenci, i18n: stProducer}
value: {name: Rabat}
list:
use_helper: [stCurrency]
title: Rabaty
description: Zarządzanie rabatami w sklepie
display: [=name, _value, _wholesale_value, active, type_label, all_products, all_clients, allow_anonymous_clients, auto_active, _priority]
fields:
name: {name: Nazwa, params: size=30, sortable: false}
value: {name: Rabat, params: size=3, sortable: false}
wholesale_value: {name: Rabat hurtowy, sortable: false}
priority: {name: Priorytet, sortable: false, filterable: false}
active: {name: Aktywny, sortable: false}
type_label: {name: Rodzaj, sortable: false}
all_products: {name: Wszyst. prod., sortable: false}
all_clients: {name: Klienci zalog., sortable: false}
allow_anonymous_clients: {name: Klienci niezalog., sortable: false}
auto_active: {name: Nowi klienci, sortable: false}
actions:
_create: {name: Dodaj}
menu:
display: [list, range, coupon_code]
fields:
list: {name: Grupy rabatowe, action: "@stDiscountPluginDefault"}
range: {name: Progi rabatowe, action: stDiscountBackend/rangeList}
coupon_code: {name: Kody rabatowe, action: stDiscountCouponCodeBackend/list}
object_actions:
_edit: -
_delete: -
actions:
_create: {name: Dodaj}
filters:
type_label: {partial: type_label_filter}
empty_message: {message: "Tutaj pojawi się lista grup rabatowych.", i18n: stDiscountBackend}
range_edit:
title: Edycja progu rabatowego
description: Zarządzanie rabatami w sklepie
fields:
total_value: {name: Wartość progowa, params: size=20}
discount_id: {name: Rabat}
display: [total_value, _discount_id]
menu: {use: list.menu}
actions:
_list: {name: Progi rabatowe, i18n: stDiscountBackend}
_save: {name: Zapisz}
_save_and_add: {name: Zapisz i dodaj nowy}
range_list:
title: Progi rabatowe
description: Zarządzanie rabatami w sklepie
fields:
total_value: {name: Wartość progowa}
discount: {name: Rabat}
display: [=total_value, discount]
menu: {use: list.menu}
object_actions:
_edit: -
_delete: -
actions:
_create: {name: Dodaj}
user_list:
title: Przypisywanie klientów do grupy rabatowej
description: Zarządzanie rabatami w sklepie
forward_parameters: [discount_id]
menu: {use: edit.menu}
display: [username, ~full_name, ~company, _wholesale_list, is_admin_confirm]
fields:
username: {name: Login (E-mail), params: size=50, i18n: stUser}
company: {name: Firma, width: 20%, i18n: stUser, module: stUser}
full_name: {name: Imię i nazwisko, width: 20%, i18n: stUser, module: stUser}
wholesale_list: {name: Hurtownik - grupa, sort_field: sf_guard_user.wholesale, align: center, module: stUser, i18n: stUser}
is_admin_confirm: {name: Zweryfikowany, align: center, i18n: stUser, module: stUser}
filters:
wholesale_list: {filter_field: sf_guard_user.wholesale, partial: filter_wholesale, module: stUser}
company: {partial: filter_company, module: stUser}
full_name: {partial: filter_full_name, module: stUser}
object_actions: []
actions: []
build_options:
through_class: UserHasDiscount
related_id: forward_parameters.discount_id
product_list:
title: Przypisywanie produktów do grupy rabatowej
description: Zarządzanie rabatami w sklepie
use_stylesheet: [backend/stProductList.css]
use_helper: [stProduct/stProduct]
forward_parameters: [discount_id]
menu: {use: edit.menu}
display: [list_image, opt_name, code, opt_price_brutto, active, list_stock]
fields:
code: {name: Kod, width: 1%}
opt_name: {name: Nazwa, params: truncate_text=true}
list_image: {name: Zdjęcie, width: 1%, callback: list_product_image}
opt_price_brutto: {name: Cena, width: 1%, callback: list_product_price, label_callback: list_product_price_label}
active: {name: Aktywny, width: 1%, align: center}
list_stock: {name: Magazyn, align: right, width: 1%, i18n: stDepositoryBackend, callback: list_stock, sort_field: product.stock}
build_options:
through_class: DiscountHasProduct
related_id: forward_parameters.discount_id
object_actions: []
actions: []
filters:
list_image: {partial: filter_list_image, module: stProduct}
config:
title: Konfiguracja
description: Zarządzanie rabatami w sklepie
display:
NONE: [disable_for_wholesale]
"Rabaty na zamówienie": [disable_for_promotion_products]
"Kody rabatowe": [coupon_code, code_format, coupon_code_calculate_method]
fields:
code_format:
name: Format kodu
help: code_format.help
params: maxlength=32 size=30
i18n: stGiftCardBackend
disable_for_promotion_products: {name: Wyłącz dla produktów w promocji, help: "Jeśli zaznaczone rabaty na zamówienie są wyłączane jeżeli w koszyku znajduję się produkt w promocji", type: checkbox}
disable_for_wholesale: {name: Wyłącz rabaty dla klientów hurtowych, type: checkbox}
coupon_code: {name: Włącz kody rabatowe, type: checkbox}
coupon_code_calculate_method:
name: Metoda naliczania
type: select
display: [overwrite, add_up, highest]
options:
overwrite: {name: Nadpisuj inne rabaty, value: overwrite}
add_up: {name: Sumuj z innymi rabatami, value: add_up}
highest: {name: Najwyższy rabat, value: highest}
selected: overwrite
actions:
_save: {name: Zapisz}