Page tree
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

Shop module provides product management capabilities with an external database and the shopping cart process. There is no payment integrated yet.

JIRASHOP
GitGit

Installation

Maven is the easiest way to install the module. Add the following dependencies to your bundle:

<dependency>
  <groupId>info.magnolia.shop</groupId>
  <artifactId>magnolia-shop-core</artifactId>
  <version>${version}</version>
</dependency>
<dependency>
  <groupId>info.magnolia.shop</groupId>
  <artifactId>magnolia-shop-app</artifactId>
  <version>${version}</version>
</dependency>
<dependency>
  <groupId>info.magnolia.shop</groupId>
  <artifactId>magnolia-shop-rest</artifactId>
  <version>${version}</version>
</dependency>
<dependency>
  <groupId>info.magnolia.shop</groupId>
  <artifactId>magnolia-shop-workflow</artifactId>
  <version>${version}</version>
</dependency>

Versions

6.2Magnolia 6.2

Usage

After installation there will be a new item bar in the main admin central screen as shown in below screenshot.

Shop Core

The Shop Core module allows ecommerce (shop) related entities in external SQL Database.

To install this module add maven dependency to this module:

  <dependency>
      <groupId>info.magnolia.shop</groupId>
      <artifactId>magnolia-shop-core</artifactId>
      <version>${project.version}</version>
  </dependency>



To function properly this module requires configurations in module configuration location.
Configurations can be located in JCR config node or config.yaml file.
We need to pass database connection info to the module.
This is minimum configuration that needs to be passed to the module so it can connect to a database instance:

datasource:
  username: [db_user]
  password: [db_assword]
  url: [db_url]
  driver: [db_driver]
  migration:
    path: shop-core/dbmigration/[db_type]
    run: [true/false]


example configuration for MySql database server:

datasource:
  username: user
  password: password
  url: jdbc:mysql://127.0.0.1:3306/shop
  driver: com.mysql.cj.jdbc.Driver
  migration:
    path: shop-core/dbmigration/mysql
    run: true



All properties that are prefixed with "shop." will be passed to ebean server.
This way we can easily tune ebean ORM framework.
More info on Ebean ORM is available on this ebean documentation link.

This module does not create a database.
Database MUST EXISTS and database user has to have also CREATE/DROP/ALTER RIGHTS on that database.

For database connection to work we need appropriate database driver to be available on the classpath.
For example: if we are using mysql database with tomcat server we need to place "mysql-connector-java-8.0.18.jar" in tomcat lib folder.

Shop App

The Shop App module allows browsing and managing shop related entities (catalogs, products, categories, shippings, prices, etc ... ) from Magnolia's Custom Content Application.
This module is dependent on Shop Core module.

To install this module add maven dependency to this module:

  <dependency>
      <groupId>info.magnolia.shop</groupId>
      <artifactId>magnolia-shop-app</artifactId>
      <version>${project.version}</version>
  </dependency>



Shop Rest

The Shop Rest module provide rest api which can be used to manage shop related entities (CRUD operations).
This module is dependent on Shop Core module.

To install this module add maven dependency to this module:

  <dependency>
      <groupId>info.magnolia.shop</groupId>
      <artifactId>magnolia-shop-rest</artifactId>
      <version>${project.version}</version>
  </dependency>



Shop Workflow

The Shop Workflow module provide functionality for managing orders and transiting order from one state to another.
For example:

  • accept order
  • mark order as dispatched
  • etc..


To install this module add maven dependency to this module:
``` info.magnolia.shop magnolia-shop-workflow ${project.version} ```

Warnings

  • This module is at INCUBATOR level.

Changelog

  • Version 0.0.1 - Initial release beta.
  • No labels