Skip to content

Commit

Permalink
Initial code commit
Browse files Browse the repository at this point in the history
  • Loading branch information
YbeSpapen committed Mar 22, 2021
1 parent 8714aa1 commit 52c6695
Show file tree
Hide file tree
Showing 215 changed files with 39,620 additions and 0 deletions.
5 changes: 5 additions & 0 deletions .eslintignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
cartridges/*/cartridge/static/
coverage/
doc/
bin/
webpack.config.js
48 changes: 48 additions & 0 deletions .eslintrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
{
"root": true,
"extends": "airbnb-base/legacy",
"rules": {
"import/no-unresolved": "off",
"indent": ["error", 4, {
"SwitchCase": 1,
"VariableDeclarator": 1
}],
"func-names": "off",
"require-jsdoc": "error",
"valid-jsdoc": ["error", {
"preferType": {
"Boolean": "boolean",
"Number": "number",
"object": "Object",
"String": "string"
},
"requireReturn": false
}],
"vars-on-top": "off",
"global-require": "off",
"no-shadow": ["error", {
"allow": ["err", "callback"]
}],
"max-len": "off"
},
"env": {
"browser": true,
"commonjs": true,
"jquery": true,
"es6": true
},
"parserOptions": {
"ecmaVersion": 8
},
"globals": {
"session": true,
"XML": true,
"request": true,
"google": true,
"empty": true,
"grecaptcha" : true,
"response": true,
"cxsForm": true,
"customer": true
}
}
23 changes: 23 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
node_modules/
coverage/
npm-debug.log
cartridges.zip
.idea/
dw.json
dw.*.json
sitegenesisdata/
.DS_Store
test/appium/webdriver/config.json
.vscode/launch.json
dw.json
dw_dev.json
dw_demo.json
cartridges/dw.json
tmp/
global.css
cartridges/**/static/**/js
cartridges/**/static/**/fonts
cartridges/**/static/**/css
cartridges/dwCatalogsContent.json
crypto
cartridges\int_mollie\cartridge\scripts\jwt\constants.js
21 changes: 21 additions & 0 deletions .stylelintrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
{
"extends": "stylelint-config-standard",
"plugins": [
"stylelint-scss"
],
"rules": {
"at-rule-no-unknown": [true, { "ignoreAtRules": ["include", "each", "mixin", "if", "else", "content", "extend"] } ],
"indentation": 4,
"scss/at-import-no-partial-leading-underscore": true,
"scss/at-import-partial-extension-blacklist": ["scss"],
"scss/dollar-variable-no-missing-interpolation": true,
"scss/media-feature-value-dollar-variable": "always",
"scss/selector-no-redundant-nesting-selector": true,
"at-rule-empty-line-before": [ "always", { "ignoreAtRules": ["else"], "ignore": ["blockless-after-same-name-blockless", "inside-block"] } ],
"block-closing-brace-newline-after": [ "always", { "ignoreAtRules": ["if", "else"] } ],
"color-hex-length": "long",
"declaration-colon-newline-after": "always-multi-line",
"declaration-colon-space-after": "always-single-line",
"property-no-unknown": [true, { "ignoreProperties": ["scrollbar-color", "scrollbar-width"] } ]
}
}
92 changes: 92 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
# README #
# link_mollie

This is the integration cartridge for Mollie

# Getting Started

1. Clone this repository.
2. Install npm dependancies `npm install`.
3. Upload the `cartridges` folder to the WebDav location for cartridges for your Sandbox through CyberDuck or any other WebDAV client.
4. Add the mollie_sfra_changes, int_mollie_sfra and int_mollie cartridges to your cartridge path.


# Cartridges

## int_mollie

Contains all the business logic pertaining order and payment management through
the Mollie API.

## int_mollie_sfra

Contains Payment and Checkout controllers.

## mollie_sfra_changes

Contains SFRA overwritten templates / controllers.

# Configuration

## Site Management

Add the following cartridges to the storefront site you want to use the payment on:

- mollie_sfra_changes
- int_mollie_sfra
- int_mollie

Add the following cartridges to the business manager site:

- bm_mollie
- int_mollie
- app_storefront_base

## Site Preferences

- `mollieEnabledMode`: enum of strings
- `mollieBearerTestToken`: string
- `mollieBearerToken`: string
- `mollieProfileId`: string
- `mollieDefaultOrderExpiryDays`: enum-of-strings
- `mollieDefaultEnabledTransactionAPI`: enum of strings
- `mollieEnableSingleClickPayments`: boolean
- `mollieComponentsEnabled`: boolean
- `mollieLogCategory`: string

## Custom Properties

### PaymentMethod
- `molliePaymentMethodId`: string - external mollie payment method id
- `mollieOrderExpiryDays`: enum of int - expiry days of order
- `mollieEnabledTransactionAPI`: enum of strings - the enabled transaction API

### PaymentTransaction
- `molliePaymentId`: string - the id of the Mollie payment
- `molliePaymentStatus`: string - the payment status recieved from Mollie
- `molliePaymentDescription`: text - Generated payment description
- `mollieIssuerData`: text - selected issuer data

### Order
- `mollieOrderId`: string - the id of the Mollie order
- `mollieOrderStatus`: string - the payment status recieved from Mollie
- `mollieUsedTransactionAPI`: string - api used for creating payment (payment / order)
- `mollieRefundStatus`: enum of strings - the status of the refund
- `mollieOrderIsAuthorized`: boolean - the order is authorized

### Profile
- `mollieCustomerId`: string - the id of the Mollie customer (used for single click payments)

### Product
- `mollieProductCategory`: enum of strings - category used for voucher method

# NPM scripts
Use the provided NPM scripts to compile and upload changes to your Sandbox.

#Testing
You can run `npm test` to execute all unit tests in the project. Run `npm run test:coverage` to get coverage information. Coverage will be available in coverage folder under root directory.

# Mollie Documentation

- [Integration guide](https://docs.mollie.com/index/)
- [JSON Api Spec](https://docs.mollie.com/reference/v2/payments-api/create-payment)
17 changes: 17 additions & 0 deletions cartridges/bm_mollie/.project
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
<?xml version='1.0' encoding='UTF-8'?>
<projectDescription>
<name>bm_mollie</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>com.demandware.studio.core.beehiveElementBuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>com.demandware.studio.core.beehiveNature</nature>
</natures>
</projectDescription>
80 changes: 80 additions & 0 deletions cartridges/bm_mollie/cartridge/bm_extensions.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!-- =============================================================== -->
<!-- == CSC EXTENSIONS == -->
<!-- =============================================================== -->
<extensions xmlns="http://www.demandware.com/xml/bmmodules/2007-12-11"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.demandware.com/xml/bmmodules/2007-12-11 bmext.xsd">

<menuitem id="order_payment" site="true" type="CSC">
<name xml:lang="x-default">CSC Order</name>
<short_description xml:lang="x-default">Customer Service Center Order</short_description>
<description xml:lang="x-default">Customer Service Center Order</description>
</menuitem>
<menuaction id="order_payment_link" menupath="order" type="CSC" site="true" position="1">
<name xml:lang="x-default">Request payment link</name>
<short_description xml:lang="x-default">Request payment link</short_description>
<description xml:lang="x-default">Request payment link</description>
<exec pipeline="CSCOrderPaymentLink" node="Start"/>
<sub-pipelines>
<pipeline name="CSCOrderPaymentLink" />
</sub-pipelines>
<parameters>
<parameter name="order_no" value="/order_no"/>
</parameters>
<icon>check_address.png</icon>
</menuaction>
<menuaction id="order_payment_refund" menupath="order" type="CSC" site="true" position="1">
<name xml:lang="x-default">Refund payment</name>
<short_description xml:lang="x-default">Refund payment</short_description>
<description xml:lang="x-default">Refund payment</description>
<exec pipeline="CSCOrderPaymentRefund" node="Start"/>
<sub-pipelines>
<pipeline name="CSCOrderPaymentRefund" />
</sub-pipelines>
<parameters>
<parameter name="order_no" value="/order_no"/>
</parameters>
<icon>check_address.png</icon>
</menuaction>
<menuaction id="order_shipment" menupath="order" type="CSC" site="true" position="1">
<name xml:lang="x-default">Ship order</name>
<short_description xml:lang="x-default">Ship order</short_description>
<description xml:lang="x-default">Ship order</description>
<exec pipeline="CSCOrderShipment" node="Start"/>
<sub-pipelines>
<pipeline name="CSCOrderShipment" />
</sub-pipelines>
<parameters>
<parameter name="order_no" value="/order_no"/>
</parameters>
<icon>check_address.png</icon>
</menuaction>
<menuaction id="order_payment_cancel" menupath="order" type="CSC" site="true" position="1">
<name xml:lang="x-default">Cancel payment</name>
<short_description xml:lang="x-default">Cancel payment</short_description>
<description xml:lang="x-default">Cancel payment</description>
<exec pipeline="CSCOrderPaymentCancel" node="Start"/>
<sub-pipelines>
<pipeline name="CSCOrderPaymentCancel" />
</sub-pipelines>
<parameters>
<parameter name="order_no" value="/order_no"/>
</parameters>
<icon>check_address.png</icon>
</menuaction>

<menuaction id="mollie_settings" menupath="site-prefs" position="2" site="true">
<name xml:lang="x-default">Mollie settings</name>
<short_description xml:lang="x-default">Mollie settings</short_description>
<description xml:lang="x-default">Mollie settings</description>
<exec pipeline="MollieSettings" node="Start"/>
<sub-pipelines>
<pipeline name="MollieSettings" />
</sub-pipelines>
<parameters>
<parameter name="pref_group" value="Mollie Config"/>
</parameters>
<icon>mollie.svg</icon>
</menuaction>

</extensions>
2 changes: 2 additions & 0 deletions cartridges/bm_mollie/cartridge/bm_mollie.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
demandware.cartridges.bm_mollie.multipleLanguageStorefront=true
demandware.cartridges.bm_mollie.id=bm_mollie
Loading

0 comments on commit 52c6695

Please sign in to comment.