Ajout d'une extension
This commit is contained in:
54
ext/phpbbstudio/ass/config/routing.yml
Normal file
54
ext/phpbbstudio/ass/config/routing.yml
Normal file
@@ -0,0 +1,54 @@
|
||||
phpbbstudio_ass_shop:
|
||||
path: /aps/shop
|
||||
defaults:
|
||||
_controller: phpbbstudio.ass.controller.shop:shop
|
||||
|
||||
phpbbstudio_ass_category:
|
||||
path: /aps/shop/{category_slug}
|
||||
defaults:
|
||||
_controller: phpbbstudio.ass.controller.shop:category
|
||||
page: 1
|
||||
|
||||
phpbbstudio_ass_category_pagination:
|
||||
path: /aps/shop/{category_slug}/page-{page}
|
||||
defaults:
|
||||
_controller: phpbbstudio.ass.controller.shop:category
|
||||
|
||||
phpbbstudio_ass_item:
|
||||
path: /aps/shop/{category_slug}/{item_slug}
|
||||
defaults:
|
||||
_controller: phpbbstudio.ass.controller.shop:item
|
||||
|
||||
phpbbstudio_ass_purchase:
|
||||
path: /aps/shop/purchase/{category_slug}/{item_slug}
|
||||
defaults:
|
||||
_controller: phpbbstudio.ass.controller.inventory:purchase
|
||||
purchase: true
|
||||
|
||||
phpbbstudio_ass_gift:
|
||||
path: /aps/shop/gift/{category_slug}/{item_slug}
|
||||
defaults:
|
||||
_controller: phpbbstudio.ass.controller.inventory:purchase
|
||||
purchase: false
|
||||
|
||||
phpbbstudio_ass_history:
|
||||
path: /aps/inventory/history
|
||||
defaults:
|
||||
_controller: phpbbstudio.ass.controller.inventory:history
|
||||
page: 1
|
||||
|
||||
phpbbstudio_ass_history_pagination:
|
||||
path: /aps/inventory/history/page-{page}
|
||||
defaults:
|
||||
_controller: phpbbstudio.ass.controller.inventory:history
|
||||
|
||||
phpbbstudio_ass_inventory:
|
||||
path: /aps/inventory/{category_slug}/{item_slug}/{index}/{action}
|
||||
defaults:
|
||||
_controller: phpbbstudio.ass.controller.inventory:inventory
|
||||
category_slug: ''
|
||||
item_slug: ''
|
||||
action: ''
|
||||
index: 1
|
||||
requirements:
|
||||
index: '\d+'
|
||||
11
ext/phpbbstudio/ass/config/services.yml
Normal file
11
ext/phpbbstudio/ass/config/services.yml
Normal file
@@ -0,0 +1,11 @@
|
||||
parameters:
|
||||
phpbbstudio.aps.extended: "phpBB Studio - Advanced Shop System"
|
||||
|
||||
imports:
|
||||
- { resource: services_controllers.yml }
|
||||
- { resource: services_helpers.yml }
|
||||
- { resource: services_items.yml }
|
||||
- { resource: services_listeners.yml }
|
||||
- { resource: services_notifications.yml }
|
||||
- { resource: services_objects.yml }
|
||||
- { resource: tables.yml }
|
||||
139
ext/phpbbstudio/ass/config/services_controllers.yml
Normal file
139
ext/phpbbstudio/ass/config/services_controllers.yml
Normal file
@@ -0,0 +1,139 @@
|
||||
services:
|
||||
phpbbstudio.ass.controller.acp.files:
|
||||
class: phpbbstudio\ass\controller\acp_files_controller
|
||||
arguments:
|
||||
- '@cache.driver'
|
||||
- '@config'
|
||||
- '@phpbbstudio.ass.files'
|
||||
- '@language'
|
||||
- '@request'
|
||||
- '@template'
|
||||
- '@user'
|
||||
|
||||
phpbbstudio.ass.controller.acp.inventory:
|
||||
class: phpbbstudio\ass\controller\acp_inventory_controller
|
||||
arguments:
|
||||
- '@dbal.conn'
|
||||
- '@group_helper'
|
||||
- '@language'
|
||||
- '@log'
|
||||
- '@phpbbstudio.ass.notification'
|
||||
- '@phpbbstudio.ass.operator.category'
|
||||
- '@phpbbstudio.ass.operator.item'
|
||||
- '@request'
|
||||
- '@template'
|
||||
- '@user'
|
||||
- '%tables.groups%'
|
||||
- '%tables.users%'
|
||||
- '%tables.user_group%'
|
||||
- '%phpbbstudio.ass.tables.inventory%'
|
||||
- '%core.root_path%'
|
||||
- '%core.php_ext%'
|
||||
|
||||
|
||||
phpbbstudio.ass.controller.acp.items:
|
||||
class: phpbbstudio\ass\controller\acp_items_controller
|
||||
arguments:
|
||||
- '@cache.driver'
|
||||
- '@phpbbstudio.ass.items.manager'
|
||||
- '@language'
|
||||
- '@log'
|
||||
- '@phpbbstudio.ass.operator.category'
|
||||
- '@phpbbstudio.ass.operator.inventory'
|
||||
- '@phpbbstudio.ass.operator.item'
|
||||
- '@request'
|
||||
- '@template'
|
||||
- '@phpbbstudio.ass.time'
|
||||
- '@user'
|
||||
- '%core.adm_relative_path%'
|
||||
- '%core.root_path%'
|
||||
- '%core.php_ext%'
|
||||
|
||||
phpbbstudio.ass.controller.acp.logs:
|
||||
class: phpbbstudio\ass\controller\acp_logs_controller
|
||||
arguments:
|
||||
- '@config'
|
||||
- '@phpbbstudio.ass.items.manager'
|
||||
- '@language'
|
||||
- '@phpbbstudio.ass.log'
|
||||
- '@log'
|
||||
- '@phpbbstudio.ass.operator.category'
|
||||
- '@phpbbstudio.ass.operator.item'
|
||||
- '@pagination'
|
||||
- '@request'
|
||||
- '@template'
|
||||
- '@user'
|
||||
|
||||
phpbbstudio.ass.controller.acp.overview:
|
||||
class: phpbbstudio\ass\controller\acp_overview_controller
|
||||
arguments:
|
||||
- '@config'
|
||||
- '@config_text'
|
||||
- '@dbal.conn'
|
||||
- '@language'
|
||||
- '@phpbbstudio.ass.operator.item'
|
||||
- '@text_formatter.parser'
|
||||
- '@text_formatter.renderer'
|
||||
- '@request'
|
||||
- '@template'
|
||||
- '@user_loader'
|
||||
- '@text_formatter.utils'
|
||||
- '%phpbbstudio.ass.tables.categories%'
|
||||
- '%phpbbstudio.ass.tables.items%'
|
||||
- '%phpbbstudio.ass.tables.logs%'
|
||||
|
||||
phpbbstudio.ass.controller.acp.settings:
|
||||
class: phpbbstudio\ass\controller\acp_settings_controller
|
||||
arguments:
|
||||
- '@phpbbstudio.aps.functions'
|
||||
- '@config'
|
||||
- '@config_text'
|
||||
- '@language'
|
||||
- '@log'
|
||||
- '@text_formatter.parser'
|
||||
- '@request'
|
||||
- '@template'
|
||||
- '@user'
|
||||
- '@text_formatter.utils'
|
||||
- '%core.root_path%'
|
||||
- '%core.php_ext%'
|
||||
|
||||
phpbbstudio.ass.controller.inventory:
|
||||
class: phpbbstudio\ass\controller\inventory_controller
|
||||
arguments:
|
||||
- '@phpbbstudio.aps.distributor'
|
||||
- '@phpbbstudio.aps.functions'
|
||||
- '@auth'
|
||||
- '@config'
|
||||
- '@phpbbstudio.ass.controller'
|
||||
- '@controller.helper'
|
||||
- '@phpbbstudio.ass.items.manager'
|
||||
- '@language'
|
||||
- '@phpbbstudio.ass.log'
|
||||
- '@log'
|
||||
- '@phpbbstudio.ass.operator.category'
|
||||
- '@phpbbstudio.ass.operator.inventory'
|
||||
- '@phpbbstudio.ass.operator.item'
|
||||
- '@phpbbstudio.ass.notification'
|
||||
- '@pagination'
|
||||
- '@request'
|
||||
- '@phpbbstudio.ass.router'
|
||||
- '@template'
|
||||
- '@phpbbstudio.ass.time'
|
||||
- '@user'
|
||||
- '@user_loader'
|
||||
|
||||
phpbbstudio.ass.controller.shop:
|
||||
class: phpbbstudio\ass\controller\shop_controller
|
||||
arguments:
|
||||
- '@config'
|
||||
- '@phpbbstudio.ass.controller'
|
||||
- '@dbal.conn'
|
||||
- '@controller.helper'
|
||||
- '@phpbbstudio.ass.items.manager'
|
||||
- '@language'
|
||||
- '@phpbbstudio.ass.operator.category'
|
||||
- '@phpbbstudio.ass.operator.item'
|
||||
- '@pagination'
|
||||
- '@request'
|
||||
- '@template'
|
||||
45
ext/phpbbstudio/ass/config/services_helpers.yml
Normal file
45
ext/phpbbstudio/ass/config/services_helpers.yml
Normal file
@@ -0,0 +1,45 @@
|
||||
services:
|
||||
phpbbstudio.ass.controller:
|
||||
class: phpbbstudio\ass\helper\controller
|
||||
arguments:
|
||||
- '@phpbbstudio.aps.functions'
|
||||
- '@auth'
|
||||
- '@config'
|
||||
- '@config_text'
|
||||
- '@controller.helper'
|
||||
- '@language'
|
||||
- '@phpbbstudio.ass.operator.category'
|
||||
- '@phpbbstudio.ass.router'
|
||||
- '@template'
|
||||
- '@user'
|
||||
|
||||
phpbbstudio.ass.files:
|
||||
class: phpbbstudio\ass\helper\files
|
||||
arguments:
|
||||
- '@cache'
|
||||
- '@files.factory'
|
||||
- '@filesystem'
|
||||
- '%core.root_path%'
|
||||
|
||||
phpbbstudio.ass.log:
|
||||
class: phpbbstudio\ass\helper\log
|
||||
arguments:
|
||||
- '@dbal.conn'
|
||||
- '@user'
|
||||
- '%phpbbstudio.ass.tables.categories%'
|
||||
- '%phpbbstudio.ass.tables.items%'
|
||||
- '%phpbbstudio.ass.tables.logs%'
|
||||
- '%tables.users%'
|
||||
|
||||
phpbbstudio.ass.router:
|
||||
class: phpbbstudio\ass\helper\router
|
||||
arguments:
|
||||
- '@controller.helper'
|
||||
- '%core.root_path%'
|
||||
- '%core.php_ext%'
|
||||
|
||||
phpbbstudio.ass.time:
|
||||
class: phpbbstudio\ass\helper\time
|
||||
arguments:
|
||||
- '@config'
|
||||
- '@language'
|
||||
50
ext/phpbbstudio/ass/config/services_items.yml
Normal file
50
ext/phpbbstudio/ass/config/services_items.yml
Normal file
@@ -0,0 +1,50 @@
|
||||
services:
|
||||
phpbbstudio.ass.items:
|
||||
class: phpbb\di\service_collection
|
||||
arguments:
|
||||
- '@service_container'
|
||||
tags:
|
||||
- { name: service_collection, tag: phpbbstudio.ass.item }
|
||||
|
||||
phpbbstudio.ass.items.manager:
|
||||
class: phpbbstudio\ass\items\manager
|
||||
arguments:
|
||||
- '@language'
|
||||
- '@template'
|
||||
- '@phpbbstudio.ass.items'
|
||||
|
||||
phpbbstudio.ass.items.base:
|
||||
class: phpbbstudio\ass\items\type\base
|
||||
shared: false
|
||||
abstract: true
|
||||
arguments:
|
||||
- '@auth'
|
||||
- '@config'
|
||||
- '@dbal.conn'
|
||||
- '@controller.helper'
|
||||
- '@language'
|
||||
- '@log'
|
||||
- '@request'
|
||||
- '@template'
|
||||
- '@user'
|
||||
- '%core.table_prefix%'
|
||||
|
||||
# --- Items --- #
|
||||
phpbbstudio.ass.items.points:
|
||||
class: phpbbstudio\ass\items\type\points
|
||||
parent: phpbbstudio.ass.items.base
|
||||
shared: false
|
||||
calls:
|
||||
- [set_aps_distributor, ['@phpbbstudio.aps.distributor']]
|
||||
- [set_aps_functions, ['@phpbbstudio.aps.functions']]
|
||||
tags:
|
||||
- { name: phpbbstudio.ass.item }
|
||||
|
||||
phpbbstudio.ass.items.file:
|
||||
class: phpbbstudio\ass\items\type\file
|
||||
parent: phpbbstudio.ass.items.base
|
||||
shared: false
|
||||
calls:
|
||||
- [set_files, ['@phpbbstudio.ass.files']]
|
||||
tags:
|
||||
- { name: phpbbstudio.ass.item }
|
||||
30
ext/phpbbstudio/ass/config/services_listeners.yml
Normal file
30
ext/phpbbstudio/ass/config/services_listeners.yml
Normal file
@@ -0,0 +1,30 @@
|
||||
services:
|
||||
phpbbstudio.ass.listener.blocks:
|
||||
class: phpbbstudio\ass\event\blocks_listener
|
||||
arguments:
|
||||
- '@phpbbstudio.ass.operator.blocks'
|
||||
- '@config'
|
||||
- '@language'
|
||||
tags:
|
||||
- { name: event.listener }
|
||||
|
||||
phpbbstudio.ass.listener.setup:
|
||||
class: phpbbstudio\ass\event\setup_listener
|
||||
arguments:
|
||||
- '@config'
|
||||
- '@phpbbstudio.aps.functions'
|
||||
- '@language'
|
||||
- '@template'
|
||||
tags:
|
||||
- { name: event.listener }
|
||||
|
||||
phpbbstudio.ass.listener.exception:
|
||||
class: phpbbstudio\ass\event\exception_listener
|
||||
arguments:
|
||||
- '@config_text'
|
||||
- '@phpbbstudio.ass.controller'
|
||||
- '@language'
|
||||
- '@text_formatter.renderer'
|
||||
- '@template'
|
||||
tags:
|
||||
- { name: event.listener }
|
||||
29
ext/phpbbstudio/ass/config/services_notifications.yml
Normal file
29
ext/phpbbstudio/ass/config/services_notifications.yml
Normal file
@@ -0,0 +1,29 @@
|
||||
services:
|
||||
phpbbstudio.ass.notification:
|
||||
class: phpbbstudio\ass\notification\notification
|
||||
arguments:
|
||||
- '@config'
|
||||
- '@notification_manager'
|
||||
- '@phpbbstudio.ass.operator.item'
|
||||
- '@user'
|
||||
|
||||
phpbbstudio.ass.notification.type.gift:
|
||||
class: phpbbstudio\ass\notification\type\gift
|
||||
shared: false # service MUST not be shared for this to work!
|
||||
parent: notification.type.base
|
||||
calls:
|
||||
- [set_auth, ['@auth']]
|
||||
- [set_router, ['@phpbbstudio.ass.router']]
|
||||
- [set_user_loader, ['@user_loader']]
|
||||
tags:
|
||||
- { name: notification.type }
|
||||
|
||||
phpbbstudio.ass.notification.type.stock:
|
||||
class: phpbbstudio\ass\notification\type\stock
|
||||
shared: false # service MUST not be shared for this to work!
|
||||
parent: notification.type.base
|
||||
calls:
|
||||
- [set_auth, ['@auth']]
|
||||
- [set_router, ['@phpbbstudio.ass.router']]
|
||||
tags:
|
||||
- { name: notification.type }
|
||||
75
ext/phpbbstudio/ass/config/services_objects.yml
Normal file
75
ext/phpbbstudio/ass/config/services_objects.yml
Normal file
@@ -0,0 +1,75 @@
|
||||
services:
|
||||
phpbbstudio.ass.entity.category:
|
||||
class: phpbbstudio\ass\entity\category
|
||||
shared: false
|
||||
arguments:
|
||||
- '@dbal.conn'
|
||||
- '@text_formatter.parser'
|
||||
- '@text_formatter.renderer'
|
||||
- '@text_formatter.utils'
|
||||
- '%phpbbstudio.ass.tables.categories%'
|
||||
|
||||
phpbbstudio.ass.entity.item:
|
||||
class: phpbbstudio\ass\entity\item
|
||||
shared: false
|
||||
arguments:
|
||||
- '@config'
|
||||
- '@dbal.conn'
|
||||
- '@text_formatter.parser'
|
||||
- '@text_formatter.renderer'
|
||||
- '@phpbbstudio.ass.time'
|
||||
- '@text_formatter.utils'
|
||||
- '%phpbbstudio.ass.tables.items%'
|
||||
|
||||
phpbbstudio.ass.operator.blocks:
|
||||
class: phpbbstudio\ass\operator\blocks
|
||||
arguments:
|
||||
- '@phpbbstudio.aps.functions'
|
||||
- '@auth'
|
||||
- '@config'
|
||||
- '@dbal.conn'
|
||||
- '@group_helper'
|
||||
- '@phpbbstudio.ass.operator.item'
|
||||
- '@template'
|
||||
- '@user_loader'
|
||||
- '%phpbbstudio.ass.tables.categories%'
|
||||
- '%phpbbstudio.ass.tables.items%'
|
||||
- '%phpbbstudio.ass.tables.logs%'
|
||||
|
||||
phpbbstudio.ass.operator.category:
|
||||
class: phpbbstudio\ass\operator\category
|
||||
arguments:
|
||||
- '@auth'
|
||||
- '@service_container'
|
||||
- '@dbal.conn'
|
||||
- '@phpbbstudio.ass.router'
|
||||
- '%phpbbstudio.ass.tables.categories%'
|
||||
|
||||
phpbbstudio.ass.operator.inventory:
|
||||
class: phpbbstudio\ass\operator\inventory
|
||||
arguments:
|
||||
- '@phpbbstudio.aps.distributor'
|
||||
- '@phpbbstudio.aps.functions'
|
||||
- '@config'
|
||||
- '@dbal.conn'
|
||||
- '@phpbbstudio.ass.operator.item'
|
||||
- '@user'
|
||||
- '%phpbbstudio.ass.tables.inventory%'
|
||||
- '%phpbbstudio.ass.tables.items%'
|
||||
- '%tables.users%'
|
||||
|
||||
phpbbstudio.ass.operator.item:
|
||||
class: phpbbstudio\ass\operator\item
|
||||
arguments:
|
||||
- '@phpbbstudio.aps.dbal'
|
||||
- '@auth'
|
||||
- '@service_container'
|
||||
- '@dbal.conn'
|
||||
- '@phpbbstudio.ass.files'
|
||||
- '@path_helper'
|
||||
- '@phpbbstudio.ass.router'
|
||||
- '@template'
|
||||
- '@phpbbstudio.ass.time'
|
||||
- '@user'
|
||||
- '%phpbbstudio.ass.tables.categories%'
|
||||
- '%phpbbstudio.ass.tables.items%'
|
||||
5
ext/phpbbstudio/ass/config/tables.yml
Normal file
5
ext/phpbbstudio/ass/config/tables.yml
Normal file
@@ -0,0 +1,5 @@
|
||||
parameters:
|
||||
phpbbstudio.ass.tables.categories: '%core.table_prefix%ass_categories'
|
||||
phpbbstudio.ass.tables.inventory: '%core.table_prefix%ass_inventory'
|
||||
phpbbstudio.ass.tables.items: '%core.table_prefix%ass_items'
|
||||
phpbbstudio.ass.tables.logs: '%core.table_prefix%ass_logs'
|
||||
Reference in New Issue
Block a user