Skip to content

Commit

Permalink
Merge branch '3.0'
Browse files Browse the repository at this point in the history
  • Loading branch information
dpfaffenbauer committed Apr 25, 2023
2 parents 4a9efe0 + c38d255 commit 6248cff
Show file tree
Hide file tree
Showing 290 changed files with 8,400 additions and 1,955 deletions.
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -56,4 +56,5 @@ public/bundles
public/var
drivers
vendor/
cache/
cache/
docs/generated-docs
5 changes: 4 additions & 1 deletion composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -161,6 +161,9 @@
}
},
"config": {
"sort-packages": true
"sort-packages": true,
"allow-plugins": {
"phpstan/extension-installer": false
}
}
}
9 changes: 0 additions & 9 deletions docs/00_Overview/00_CoreShop_Ecosystem.md

This file was deleted.

1 change: 0 additions & 1 deletion docs/00_Overview/index.md

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@
You need a running instance of Pimcore on your system before you can install CoreShop.

You can setup your own example:
- Allow dev version to be installed: ```composer config "minimum-stability" "dev"``` and ```composer config "prefer-stable" "true"```
- Install with composer ```composer require coreshop/core-shop ^3.0```
- Run enable Bundle command
```php bin/console pimcore:bundle:enable CoreShopCoreBundle```
Expand Down
File renamed without changes.
File renamed without changes.
66 changes: 3 additions & 63 deletions docs/02_Bundles/Address_Bundle.md
Original file line number Diff line number Diff line change
@@ -1,70 +1,10 @@
# CoreShop Address Bundle

Address Bundle provides you with Models for Storing Countries, States, Zones and Addresses. As well as Context Resolvers
to find the visitors Country.

## Installation
```bash
$ composer require coreshop/address-bundle:^3.0
```

### Adding required bundles to kernel
You need to enable the bundle inside the kernel.

```php
<?php

// app/AppKernel.php

public function registerBundlesToCollection(BundleCollection $collection)
{
$collection->addBundles([
new \CoreShop\Bundle\AddressBundle\CoreShopAddressBundle(),
]);
}
```

### Updating database schema
Run the following command.

```bash
$ php bin/console doctrine:schema:update --force
```

### Install Pimcore Entities

```bash
$ php bin/console coreshop:resources:install
```

Learn more about overriding Pimcore Classes [here](../03_Development/01_Extending_Guide/03_Extend_CoreShop_DataObjects.md))

## Usage

This Bundle integrates Address Component into Symfony and Doctrine

The Address Bundle provides you with basic information needed for addressing: Countries, States, Zones and Address

The Bundle also introduces an Address Formatter, which formats addresses in country based formats.

## Doctrine Entities
CoreShop Address Bundle provides a basic set of data for Addressing Information like:
- Country
- Zone
- State
- Address

## Pimcore Entities
- Address (CoreShopAddress)

## Pimcore UI

- Country
- State
- Zone
> This Bundle can be used separately, but doesn't provide any detail information how to use it.
How to use?

```javascript
coreshop.global.resource.open('coreshop.address', 'country');
coreshop.global.resource.open('coreshop.address', 'state');
coreshop.global.resource.open('coreshop.address', 'zone');
```
11 changes: 11 additions & 0 deletions docs/02_Bundles/Configuration_Bundle.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,14 @@
```bash
$ composer require coreshop/configuration-bundle:^3.0
```

## Usage

Configuration Component helps you store your configurations in database.

```php
$service = new CoreShop\Component\Configuration\Service\ConfigurationService($doctrineEntityManager, $configRepo, $configFactory);
$service->set('key', 'value');

$service->get('key');
```
12 changes: 1 addition & 11 deletions docs/02_Bundles/Core_Bundle.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,4 @@

Core Bundle glues all independent CoreShop Bundles into one e-commerce suite and extends certain parts accordingly.

## Installation
```bash
$ composer require coreshop/core-shop:^3.0
```

### Enable and Install
```bash
$ bin/console pimcore:bundle:enable CoreShopCoreBundle
$ bin/console coreshop:install
```

> This Bundle is not advised to be installed seperately!
5 changes: 5 additions & 0 deletions docs/02_Bundles/Frontend_Bundle.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# CoreShop Frontend Bundle

CoreShop FrontendBundle provides some FrontendControllers as well as a default Implementation for the Frontend.

> This Bundle is not advised to be installed seperately!
7 changes: 3 additions & 4 deletions docs/02_Bundles/Inventory_Bundle.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
# CoreShop Inventory Bundle

## Installation
```bash
$ composer require coreshop/inventory-bundle:^3.0
```
CoreShop Inventory Bundle provides a Basic implementation to handle Inventory for a Product.

> This Bundle can be used separately, but doesn't provide any detail information how to use it.
7 changes: 3 additions & 4 deletions docs/02_Bundles/Locale_Bundle.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
# CoreShop Locale Bundle

## Installation
```bash
$ composer require coreshop/locale-bundle:^3.0
```
CoreShop Locale Bundle provides a basic set of data for Locale Information.

> This Bundle can be used separately, but doesn't provide any detail information how to use it.
26 changes: 26 additions & 0 deletions docs/02_Bundles/Messenger_Bundle.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# CoreShop Messenger Bundle

CoreShop Messenger Bundle provides you with a nice UI to see what Messenger Tasks are queued in which queues:

![Messenger](img/messenger.png)

## Installation
```bash
$ composer require coreshop/messenger-bundle:^3.0
```

### Adding required bundles to kernel
You need to enable the bundle inside the kernel.

```php
<?php

// app/AppKernel.php

public function registerBundlesToCollection(BundleCollection $collection)
{
$collection->addBundles([
new \CoreShop\Bundle\MessengerBundle\CoreShopMessengerBundle(),
]);
}
```
15 changes: 12 additions & 3 deletions docs/02_Bundles/Notification_Bundle.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,15 @@
# CoreShop Notification Bundle

## Installation
```bash
$ composer require coreshop/notification-bundle:^3.0
CoreShop Notification Bundle handles all communication between CoreShop and the outside world. It provides a basic set of data for Notifications like:
- Notification Rules
- Notification Rule Conditions
- Notification Rule Actions

> This Bundle can be used separately, but doesn't provide any detail information how to use it.
## Usage
Notifications run async in a Symfony messenger queue:

```
bin/console messenger:consume coreshop_notification coreshop_index --time-limit=300
```
33 changes: 33 additions & 0 deletions docs/02_Bundles/OptimisticEntityLock_Bundle.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# CoreShop Optimistic Entity Lock Bundle

The CoreShop Optimistic Entity Lock Bundle is a package for the CoreShop e-commerce framework, based on the Pimcore platform, designed to handle optimistic entity locking. This bundle helps prevent conflicts when multiple users try to edit the same entity concurrently by implementing an optimistic locking strategy.
![Messenger](img/messenger.png)

## Installation
```bash
$ composer require optimistic-entity-lock-bundle
```

### Adding required bundles to kernel
You need to enable the bundle inside the kernel.

```php
<?php

// app/AppKernel.php

public function registerBundlesToCollection(BundleCollection $collection)
{
$collection->addBundles([
new \CoreShop\Bundle\OptimisticEntityLockBundle\CoreShopOptimisticEntityLockBundle(),
]);
}
```

## Usage

Your Pimcore DataObject Class needs to implement the Interface `CoreShop\Bundle\OptimisticEntityLockBundle\Model\OptimisticLockedInterface`.

You can therefore add the field `optimisticLockVersion` to your Pimcore Class Definition.

From now on, everytime the DataObject gets saved, CoreShop compares the Versions and increases it before saving. If the version is different, someone else saved the entity before you and you get a exception.
75 changes: 2 additions & 73 deletions docs/02_Bundles/Order_Bundle.md
Original file line number Diff line number Diff line change
@@ -1,76 +1,5 @@
# CoreShop Order Bundle

## Installation
```bash
$ composer require coreshop/order-bundle:^3.0
```
CoreShop Order Bundle provides a basic set of data for Orders.

### Adding required bundles to kernel
You need to enable the bundle inside the kernel

```php
<?php

// app/AppKernel.php

public function registerBundlesToCollection(BundleCollection $collection)
{
$collection->addBundles([
new \CoreShop\Bundle\OrderBundle\CoreShopOrderBundle(),
]);
}
```

### Updating database schema
Run the following command.

```bash
$ php bin/console doctrine:schema:update --force
```

### Install Pimcore Entities

```bash
$ php bin/console coreshop:resources:install
```

Learn more about overriding Pimcore Classes [here](../03_Development/01_Extending_Guide/03_Extend_CoreShop_DataObjects.md)

## Usage

This Bundle integrates Order Component into Symfony and Doctrine

The Order Bundle provides you with basic information needed for ordering: Orders, Invoices, Shipments and Cart Rules

## Doctrine Entities
- CartPriceRule
- CartPriceRuleVoucherCode
- State

## Pimcore Entities
- Cart (CoreShopCart)
- CartItem (CoreShopCartItem)
- Order (CoreShopOrder)
- OrderItem (CoreShopOrderItem)
- OrderInvoice (CoreShopOrderInvoice)
- OrderInvoiceItem (CoreShopOrderInvoiceItem)
- OrderShipment (CoreShopOrderShipment)
- OrderShipmentItem (CoreShopOrderShipmentItem)

## Cart Price Rule

### Conditions
Learn more about adding new Conditions [here](../03_Development/01_Extending_Guide/04_Extending_Rule_Conditions.md)

### Actions
Learn more about adding new Actions [here](../03_Development/01_Extending_Guide/04_Extending_Rule_Actions.md)

## Pimcore UI

- Order Grid

How to use?

```javascript
coreshop.global.resource.open('coreshop.order', 'orders');
```
> This Bundle can be used separately, but doesn't provide any detail information how to use it.
3 changes: 3 additions & 0 deletions docs/02_Bundles/PayumPayment_Bundle.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# CoreShop Payum Payment Bundle

Integrates CoreShop Payment Bundle with Payum.
7 changes: 3 additions & 4 deletions docs/02_Bundles/Payum_Bundle.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
# CoreShop Payum Bundle

## Installation
```bash
$ composer require coreshop/payum-bundle:^3.0
```
Handles the Payum Integration with CoreShop. This Bundle requires the Core and can only be used in the full installation.

> This Bundle is not advised to be installed seperately!
Loading

0 comments on commit 6248cff

Please sign in to comment.