diff --git a/.eslintrc.cjs b/.eslintrc.cjs new file mode 100644 index 0000000..34df7bd --- /dev/null +++ b/.eslintrc.cjs @@ -0,0 +1,16 @@ +module.exports = { + root: true, + env: { + browser: true, + es2021: true, + }, + extends: [ + "eslint:recommended", + ], + parserOptions: { + sourceType: "module" + }, + globals: { + Translator: 'readonly', + }, +}; diff --git a/.github/workflows/code_quality.yaml b/.github/workflows/code_quality.yaml index ff5807d..7441bba 100644 --- a/.github/workflows/code_quality.yaml +++ b/.github/workflows/code_quality.yaml @@ -15,20 +15,20 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: 'Setup PHP' uses: shivammathur/setup-php@v2 with: - php-version: '7.4' + php-version: '8.0' coverage: none - name: Composer - Get Cache Directory id: composer-cache run: echo "::set-output name=dir::$(composer config cache-files-dir)" - - uses: actions/cache@v1 + - uses: actions/cache@v3 id: cache-composer with: path: ${{ steps.composer-cache.outputs.dir }} @@ -48,5 +48,15 @@ jobs: - name: Composer - Update dependencies run: composer update --no-progress + - name: Yarn install + uses: borales/actions-yarn@v4 + with: + cmd: install + + - name: Yarn ESLint + uses: borales/actions-yarn@v4 + with: + cmd: lint + - name: TwigCS - Check - run: vendor/bin/twigcs SyliusShopBundle/ --severity error --display blocking + run: vendor/bin/twigcs templates/ --severity error --display blocking --reporter githubAction diff --git a/.github/workflows/sylius.yaml b/.github/workflows/sylius.yaml new file mode 100644 index 0000000..1432b38 --- /dev/null +++ b/.github/workflows/sylius.yaml @@ -0,0 +1,101 @@ +name: Install & Test +'on': + push: + branches: + - master + paths-ignore: + - README.md + pull_request: + paths-ignore: + - README.md +jobs: + sylius: + name: 'Sylius ${{ matrix.sylius }} Node ${{ matrix.node }}' + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + php: + - 8.2 + sylius: + - 1.12.0 + symfony: + - 6.3 + node: + - 18.x + env: + APP_ENV: test + package-name: sylius/bootstrap-theme + steps: + - + name: 'Setup PHP' + uses: shivammathur/setup-php@v2 + with: + php-version: '${{ matrix.php }}' + ini-values: date.timezone=UTC + extensions: intl + tools: symfony + coverage: none + - + name: 'Setup Node' + uses: actions/setup-node@v3 + with: + node-version: '${{ matrix.node }}' + - + uses: actions/checkout@v3 + - + name: 'Composer - Get Cache Directory' + id: composer-cache + run: 'echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT' + - + name: 'Composer - Set cache' + uses: actions/cache@v3 + id: cache-composer + with: + path: '${{ steps.composer-cache.outputs.dir }}' + key: 'php-${{ matrix.php }}-sylius-${{ matrix.sylius }}-symfony-${{ matrix.symfony }}-composer-${{ hashFiles(''**/composer.json'') }}' + restore-keys: 'php-${{ matrix.php }}-sylius-${{ matrix.sylius }}-symfony-${{ matrix.symfony }}-composer-' + - + name: 'Composer - Create cache directory' + run: 'mkdir -p /home/runner/.composer/cache' + if: 'steps.cache-composer.outputs.cache-hit != ''true''' + - + name: 'Composer - Github Auth' + run: 'composer config -g github-oauth.github.com ${{ github.token }}' + - + name: 'Yarn - Get cache directory' + id: yarn-cache + run: 'echo "dir=$(yarn cache dir)" >> $GITHUB_OUTPUT' + - + name: 'Yarn - Set Cache' + uses: actions/cache@v3 + with: + path: '${{ steps.yarn-cache.outputs.dir }}' + key: 'node-${{ matrix.node }}-yarn-${{ hashFiles(''**/package.json **/yarn.lock'') }}' + restore-keys: "node-${{ matrix.node }}-yarn-\n" + - + name: 'Install Sylius-Standard and Plugin' + run: 'make install -e SYLIUS_VERSION=${{ matrix.sylius }} SYMFONY_VERSION=${{ matrix.symfony }} PHP_VERSION=${{ matrix.php }}' + - + name: 'Output PHP version for Symfony CLI' + working-directory: ./tests/Application + run: 'php -v | head -n 1 | awk ''{ print $2 }'' > .php-version' + - + name: 'Install certificates' + working-directory: ./tests/Application + run: 'symfony server:ca:install' + - + name: 'Run webserver' + working-directory: ./tests/Application + run: 'symfony server:start --port=8080 --dir=public --daemon' + - + name: 'Run PHPUnit' + run: 'make phpunit' + services: + mariadb: + image: 'mariadb:10' + ports: + - '3306:3306' + env: + MYSQL_ALLOW_EMPTY_PASSWORD: true + options: '--health-cmd="mysqladmin ping" --health-interval=5s --health-timeout=2s --health-retries=3' diff --git a/.gitignore b/.gitignore index 4784486..47d964d 100644 --- a/.gitignore +++ b/.gitignore @@ -1,16 +1,13 @@ -/vendor/ -/node_modules /composer.lock /etc/build/* !/etc/build/.gitignore -/tests/Application/yarn.lock +/tests/Application/ +/install/Application/*.local /.phpunit.result.cache /behat.yml -/phpspec.yml -/phpunit.xml ###> symfony/webpack-encore-bundle ### /node_modules/ diff --git a/Dockerfile b/Dockerfile deleted file mode 100644 index 12f5266..0000000 --- a/Dockerfile +++ /dev/null @@ -1,69 +0,0 @@ -FROM php:7.4-fpm-alpine - -# Install composer -COPY --from=composer:2 /usr/bin/composer /usr/bin/composer -COPY --from=symfonycorp/cli /symfony /usr/bin/symfony - -# Install make -RUN apk add --no-cache make - -# Install php extensions -# persistent / runtime deps -RUN apk add --no-cache \ - acl \ - file \ - gettext \ - git \ - mariadb-client \ - ; - -ARG APCU_VERSION=5.1.18 -RUN set -eux; \ - apk add --no-cache --virtual .build-deps \ - $PHPIZE_DEPS \ - coreutils \ - freetype-dev \ - icu-dev \ - libjpeg-turbo-dev \ - libpng-dev \ - libtool \ - libwebp-dev \ - libzip-dev \ - mariadb-dev \ - zlib-dev \ - ; \ - \ - docker-php-ext-configure gd --with-jpeg --with-webp --with-freetype; \ - docker-php-ext-configure zip; \ - docker-php-ext-install -j$(nproc) \ - exif \ - gd \ - intl \ - pdo_mysql \ - zip \ - ; \ - pecl install \ - apcu-${APCU_VERSION} \ - ; \ - pecl clear-cache; \ - docker-php-ext-enable \ - apcu \ - opcache \ - ; \ - \ - runDeps="$( \ - scanelf --needed --nobanner --format '%n#p' --recursive /usr/local/lib/php/extensions \ - | tr ',' '\n' \ - | sort -u \ - | awk 'system("[ -e /usr/local/lib/" $1 " ]") == 0 { next } { print "so:" $1 }' \ - )"; \ - apk add --no-cache --virtual .sylius-phpexts-rundeps $runDeps; \ - \ - apk del .build-deps - -EXPOSE 8080 -WORKDIR /srv/sylius - -ARG APP_ENV=test - -CMD ["symfony", "server:start", "--dir=tests/Application/public", "--port=8080"] diff --git a/Makefile b/Makefile index 607c2af..85b7cdc 100644 --- a/Makefile +++ b/Makefile @@ -1,63 +1,90 @@ .DEFAULT_GOAL := help +SHELL=/bin/bash +COMPOSER_ROOT=composer +TEST_DIRECTORY=tests/Application +CONSOLE=cd tests/Application && php bin/console -e test +COMPOSER=cd tests/Application && composer +YARN=cd tests/Application && yarn -## -## Project setup -##--------------------------------------------------------------------------- -.PHONY: install start stop clean - -install: start ## Install requirements for tests - sudo chmod -Rf 777 tests/Application/var - sudo chmod -Rf 777 tests/Application/public/media - docker-compose exec php php -d memory_limit=-1 /usr/bin/composer install - docker-compose exec nodejs yarn --cwd tests/Application install - docker-compose exec php tests/Application/bin/console doctrine:database:create --if-not-exists -vvv - docker-compose exec php tests/Application/bin/console doctrine:schema:create -vvv - docker-compose exec php tests/Application/bin/console assets:install tests/Application/public -vvv - docker-compose exec nodejs yarn --cwd tests/Application build - docker-compose exec php php -d memory_limit=-1 tests/Application/bin/console cache:warmup -vvv - docker-compose exec php tests/Application/bin/console sylius:fixtures:load -n - -start: ## Start the project - docker-compose up -d - -stop: ## Stop and clean - docker-compose kill - docker-compose rm -v --force - -clean: stop ## Clean plugin - docker-compose down -v - sudo rm -Rf node_modules vendor .phpunit.result.cache composer.lock - -## -## Assets -##--------------------------------------------------------------------------- -.PHONY: assets assets-watch - -assets: ## Build assets for dev environment - docker-compose exec nodejs yarn --cwd tests/Application dev - -assets-watch: ## Watch asset during development - docker-compose exec nodejs yarn --cwd tests/Application watch - -## -## QA -##--------------------------------------------------------------------------- -.PHONY: validate behat ci - -validate: ## Validate composer.json - docker-compose exec php composer validate --ansi --strict - -behat: ## Run behat - docker-compose exec php php -d memory_limit=-1 vendor/bin/behat --profile docker --colors --strict -vvv -f progress --no-interaction --tags="@javascript && ~@todo && ~@cli" - -ci: validate behat ## Execute github actions tasks - -## -## Utilities -##--------------------------------------------------------------------------- -.PHONY: help +SYLIUS_VERSION=1.12.0 +SYMFONY_VERSION=6.3 +PHP_VERSION=8.2 +PLUGIN_NAME=sylius/bootstrap-theme + +### +### DEVELOPMENT +### ¯¯¯¯¯¯¯¯¯¯¯ + +install: sylius ## Install Plugin on Sylius [SYLIUS_VERSION=1.12.0] [SYMFONY_VERSION=6.3] [PHP_VERSION=8.2] +.PHONY: install + +reset: ## Remove dependencies +ifneq ("$(wildcard tests/Application/bin/console)","") + ${CONSOLE} doctrine:database:drop --force --if-exists || true +endif + rm -rf tests/Application +.PHONY: reset + +phpunit: phpunit-configure phpunit-run ## Run PHPUnit +.PHONY: phpunit + +### +### OTHER +### ¯¯¯¯¯¯ + +sylius: sylius-standard update-dependencies install-plugin install-theme install-sylius +.PHONY: sylius -help: ## Show all make tasks (default) - @grep -E '(^[a-zA-Z_-]+:.*?##.*$$)|(^##)' $(MAKEFILE_LIST) | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[32m%-30s\033[0m %s\n", $$1, $$2}' | sed -e 's/\[32m##/[33m/' +sylius-standard: + ${COMPOSER_ROOT} create-project sylius/sylius-standard ${TEST_DIRECTORY} "~${SYLIUS_VERSION}" --no-install --no-scripts + ${COMPOSER} config allow-plugins true + ${COMPOSER} require sylius/sylius:"~${SYLIUS_VERSION}" --include Makefile.local +update-dependencies: + ${COMPOSER} config extra.symfony.require "~${SYMFONY_VERSION}" + ${COMPOSER} update --no-progress -n + +install-plugin: + ${COMPOSER} config repositories.plugin '{"type": "path", "url": "../../"}' + ${COMPOSER} config extra.symfony.allow-contrib true + ${COMPOSER} config minimum-stability "dev" + ${COMPOSER} config prefer-stable true + ${COMPOSER} req ${PLUGIN_NAME}:* --prefer-source --no-scripts + +install-theme: +ifneq ("$(wildcard install/Application)","") + cp -r install/Application tests +endif + mkdir ${TEST_DIRECTORY}/themes/BootstrapTheme + cp -r assets ${TEST_DIRECTORY}/themes/BootstrapTheme + cp -r templates ${TEST_DIRECTORY}/themes/BootstrapTheme + cp composer.json ${TEST_DIRECTORY}/themes/BootstrapTheme + cp webpack.config.js ${TEST_DIRECTORY}/themes/BootstrapTheme + echo "const bootstrapTheme = require('./themes/BootstrapTheme/webpack.config');" >> ${TEST_DIRECTORY}/webpack.config.js + echo "module.exports = [shopConfig, adminConfig, appShopConfig, appAdminConfig, bootstrapTheme];" >> ${TEST_DIRECTORY}/webpack.config.js + echo " bootstrapTheme:" >> ${TEST_DIRECTORY}/config/packages/assets.yaml + echo " json_manifest_path: '%kernel.project_dir%/public/themes/bootstrap-theme/manifest.json'" >> ${TEST_DIRECTORY}/config/packages/assets.yaml + echo " bootstrapTheme: '%kernel.project_dir%/public/themes/bootstrap-theme'" >> ${TEST_DIRECTORY}/config/packages/webpack_encore.yaml + +install-sylius: + ${CONSOLE} doctrine:database:create --if-not-exists + ${CONSOLE} doctrine:migrations:migrate -n + ${CONSOLE} sylius:fixtures:load default -n + ${YARN} install + ${YARN} add bootstrap@^5.3 @fortawesome/fontawesome-free@^6.4.2 lightbox axios @popperjs/core@^2.11 glightbox + ${YARN} build + ${CONSOLE} cache:clear + +phpunit-configure: + cp phpunit.xml.dist ${TEST_DIRECTORY}/phpunit.xml + +phpunit-run: + cd ${TEST_DIRECTORY} && ./vendor/bin/phpunit --testdox + +help: SHELL=/bin/bash +help: ## Dislay this help + @IFS=$$'\n'; for line in `grep -h -E '^[a-zA-Z_#-]+:?.*?##.*$$' $(MAKEFILE_LIST)`; do if [ "$${line:0:2}" = "##" ]; then \ + echo $$line | awk 'BEGIN {FS = "## "}; {printf "\033[33m %s\033[0m\n", $$2}'; else \ + echo $$line | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m%s\n", $$1, $$2}'; fi; \ + done; unset IFS; +.PHONY: help diff --git a/README.md b/README.md index 68ba658..2266b00 100644 --- a/README.md +++ b/README.md @@ -1,78 +1,142 @@

- -

Sylius Bootstrap Theme

+ +

SyliusBootstrapTheme

Sylius Bootstrap theme with build process based on Webpack Encore.

- It allows to swap to Bootstrap-based theme separately in each channel.

-Installation ------------- +## Preview + +### Homepage + + + + +  +
+ Gallery +
+ + + +
+ +### Checkout + +
+ Gallery +
+ + + +
+ + + +
+ + + +
+ + + +
+ + + +
+ +### Products + +
+ Gallery +
+ + + +
+ + + +
+ + + +
+ +### Cart + +
+ Gallery +
+ + + +
+ + + +
+ +### User account + +
+ Gallery +
+ + + +
+ + + +
+ + + +
+ +## Installation + +There are two ways to install a theme. It is possible to copy files in `themes/` or add this package as a composer dependency and create a child theme. The instructions below refer to an installation in the theme folder. + +### Composer installation + +Installation as a composer dependency [is documented here](https://docs.sylius.com/en/latest/book/themes/bootstrap-theme.html) -There are two ways to install a theme. It is possible to copy files in `themes/` or add this package as a composer dependency and create a child theme. - -The instructions below refer to an installation in the theme folder. Installation as a composer dependency (with child theme) [is also documented](https://docs.sylius.com/en/latest/book/themes/bootstrap-theme.html). - -- Sylius 1.6 : `composer require sylius/bootstrap-theme:~0.1.0` -- Sylius 1.7 : `composer require sylius/bootstrap-theme:~0.2.0` -- Sylius 1.8 : `composer require sylius/bootstrap-theme:~0.3.0` -- Sylius 1.8, 1.9 and 1.10 : `composer require sylius/bootstrap-theme:~0.4.0` -- Sylius 1.11 : `composer require sylius/bootstrap-theme:~0.6.0` -- Sylius 1.12 : `composer require sylius/bootstrap-theme:~0.7.0` - -Sylius 1.11 tested with Node v15.14.0, Sylius 1.12 tested with **Node v18**.16.0 - -1. Copy files from repository to `./themes/BootstrapTheme` +```bash +composer require sylius/bootstrap-theme:1.12 +``` -Only `assets` and `SyliusShopBundle` directories and the `webpack.config.js` file are required. +### Manual installation -2. Install Encore (Only for sylius **<1.12**) +#### 1. Copy files from the repository to `./themes/BootstrapTheme` -```bash -composer require encore -``` +Files/folders to copy: +* `assets` +* `templates` +* `composer.json` +* `webpack.config.js` -3. Install node dependencies +#### 2. Install node dependencies ```bash -yarn -yarn add @symfony/webpack-encore sass-loader@^13.0.0 node-sass -D -yarn add lodash.throttle -D -yarn add bootstrap@^4.5.0 bootstrap.native@^3.0.0 glightbox axios form-serialize @fortawesome/fontawesome-svg-core @fortawesome/free-brands-svg-icons @fortawesome/free-regular-svg-icons @fortawesome/free-solid-svg-icons popper.js -yarn add @popperjs/core +yarn install +yarn add bootstrap@^5.3 @fortawesome/fontawesome-free@^6.4.2 lightbox axios @popperjs/core@^2.11 glightbox ``` -4. Import bootstrap-theme config in the main webpack file +#### 3. Import `bootstrap-theme` config in your `./webpack.config.js` ```diff -# ./webpack.config.js - + const bootstrapTheme = require('./themes/BootstrapTheme/webpack.config'); +// ... + - module.exports = [shopConfig, adminConfig, appShopConfig, appAdminConfig]; + module.exports = [shopConfig, adminConfig, appShopConfig, appAdminConfig, bootstrapTheme]; - ``` -For sylius **1.11** and **1.12** change output paths - -```diff -# ./webpack.config.js -// Shop config -Encore -- .setOutputPath('public/build/shop/') -- .setPublicPath('/build/shop') -- .addEntry('shop-entry', './vendor/sylius/sylius/src/Sylius/Bundle/ShopBundle/Resources/private/entry.js') -+ .setOutputPath('public/bootstrap-theme') -+ .setPublicPath('/bootstrap-theme') -+ .addEntry('app', './themes/BootstrapTheme/assets/app.js') - .disableSingleRuntimeChunk() - .cleanupOutputBeforeBuild() - .enableSourceMaps(!Encore.isProduction()) - .enableVersioning(Encore.isProduction()) - .enableSassLoader(); -``` - -5. Edit project config files +#### 4. Edit project configuration ```diff # ./config/packages/assets.yaml @@ -81,7 +145,7 @@ framework: assets: packages: + bootstrapTheme: -+ json_manifest_path: '%kernel.project_dir%/public/bootstrap-theme/manifest.json' ++ json_manifest_path: '%kernel.project_dir%/public/themes/bootstrap-theme/manifest.json' ``` ```diff @@ -90,156 +154,49 @@ framework: webpack_encore: output_path: '%kernel.project_dir%/public/build' builds: -+ bootstrapTheme: '%kernel.project_dir%/public/bootstrap-theme' ++ bootstrapTheme: '%kernel.project_dir%/public/themes/bootstrap-theme' ``` -```diff -# ./config/packages/_sylius.yaml -sylius_theme: -+ legacy_mode: true # for sylius 1.9, 1.10, 1.11, 1.12 -``` +#### 5. Build assets -6. To build the assets, run one of the following commands ```bash # compile assets once -yarn encore dev +yarn dev # recompile assets automatically when files change -yarn encore dev --watch - -# recompile assets automatically with live reload -yarn encore dev-server +yarn watch # create a production build -yarn encore production -``` - -In Sylius 1.12 you can use predefined commands - -```bash -# compile assets once yarn build - -# recompile assets automatically when files change -yarn watch ``` -7. Change theme in the admin panel by visiting the Edit Channel page - -Screenshots ------------ - -#### Homepage - -![Homepage](docs/homepage.png) +#### 6. Change theme in the admin panel -#### Product show +1. Go to `Configuration > Channels` +2. Edit desired channel from the list +3. Go to `Look & feel > Theme` section +4. Change theme to `Sylius Bootstrap Theme` -![Product page](docs/product-page.png) +## Contribution -#### Cart +### Quickstart Installation -![Cart page](docs/cart.png) +#### Localhost -#### Checkout bar +This command will install the selected version of Sylius and the Bootstrap theme with its configuration. +You just need to activate the theme in admin panel as described in the point above. -![Checkout bar](docs/checkout-bar.png) - -#### Changing the theme -![Changing the theme](docs/edit-channel-page.png) - -Developers ----------- - -1. Run `composer create-project sylius/bootstrap-theme ProjectName` or clone this project - -### Quickstart Installation (docker) - -1. From the plugin skeleton root directory, run the following commands: +:information_source: To be able to setup the plugin database, remember to configure you database credentials +in `install/Application/.env.local` and/or `install/Application/.env.test.local`. ```bash -sudo chmod -Rf 777 tests/Application/var -sudo chmod -Rf 777 tests/Application/public/media -docker-compose exec php php -d memory_limit=-1 /usr/bin/composer install -docker-compose exec nodejs yarn --cwd tests/Application install -docker-compose exec php tests/Application/bin/console doctrine:database:create --if-not-exists -vvv -docker-compose exec php tests/Application/bin/console doctrine:schema:create -vvv -docker-compose exec php tests/Application/bin/console assets:install tests/Application/public -vvv -docker-compose exec nodejs yarn --cwd tests/Application build -docker-compose exec php php -d memory_limit=-1 tests/Application/bin/console cache:warmup -vvv -docker-compose exec php tests/Application/bin/console sylius:fixtures:load -n +$ make install -e SYLIUS_VERSION=XX SYMFONY_VERSION=YY PHP_VERSION=ZZ ``` -#### Quality tools +Default values : XX=1.12.0 and YY=6.3 and ZZ=8.2 +:information_source: To reset (drop database and delete files) test environment: ```bash -docker-compose exec php composer validate --ansi --strict -docker-compose exec php php -d memory_limit=-1 vendor/bin/behat --profile docker --colors --strict -vvv -f progress --no-interaction --tags="@javascript && ~@todo && ~@cli" -``` - -__ProTip__ use `Makefile` ;) - -### Quickstart Installation (legacy) - -1. From the plugin skeleton root directory, run the following commands: - - ```bash - $ (cd tests/Application && yarn install) - $ (cd tests/Application && yarn build) - $ (cd tests/Application && APP_ENV=test bin/console assets:install public) - - $ (cd tests/Application && APP_ENV=test bin/console doctrine:database:create) - $ (cd tests/Application && APP_ENV=test bin/console doctrine:schema:create) - ``` - -To be able to setup a plugin's database, remember to configure you database credentials in `tests/Application/.env` and `tests/Application/.env.test`. - -### Usage - -#### Running plugin tests - -- Behat (non-JS scenarios) - - ```bash - vendor/bin/behat --strict --tags="~@javascript" - ``` - -- Behat (JS scenarios) - - 1. [Install Symfony CLI command](https://symfony.com/download). - - 2. Start Headless Chrome: - - ```bash - google-chrome-stable --enable-automation --disable-background-networking --no-default-browser-check --no-first-run --disable-popup-blocking --disable-default-apps --allow-insecure-localhost --disable-translate --disable-extensions --no-sandbox --enable-features=Metal --headless --remote-debugging-port=9222 --window-size=2880,1800 --proxy-server='direct://' --proxy-bypass-list='*' http://127.0.0.1 - ``` - - 3. Install SSL certificates (only once needed) and run test application's webserver on `127.0.0.1:8080`: - - ```bash - symfony server:ca:install - APP_ENV=test symfony server:start --port=8080 --dir=tests/Application/public --daemon - ``` - - 4. Run Behat: - - ```bash - vendor/bin/behat --strict --tags="@javascript" - ``` - -#### Opening Sylius with your plugin - -- Using `test` environment: - - ```bash - (cd tests/Application && APP_ENV=test bin/console sylius:fixtures:load) - (cd tests/Application && APP_ENV=test bin/console server:run -d public) - ``` - -- Using `dev` environment: - - ```bash - (cd tests/Application && APP_ENV=dev bin/console sylius:fixtures:load) - (cd tests/Application && APP_ENV=dev bin/console server:run -d public) - ``` +$ make reset +``` diff --git a/SyliusShopBundle/views/Account/AddressBook/_defaultAddress.html.twig b/SyliusShopBundle/views/Account/AddressBook/_defaultAddress.html.twig deleted file mode 100644 index e5c4e58..0000000 --- a/SyliusShopBundle/views/Account/AddressBook/_defaultAddress.html.twig +++ /dev/null @@ -1,19 +0,0 @@ -
-
- {% include '@SyliusShop/Common/_address.html.twig' with {'address': address} %} -
- -
- {{ 'sylius.ui.edit'|trans }} - -
- - - -
-
-
-
-
diff --git a/SyliusShopBundle/views/Account/AddressBook/_defaultAddressForm.html.twig b/SyliusShopBundle/views/Account/AddressBook/_defaultAddressForm.html.twig deleted file mode 100644 index eb84beb..0000000 --- a/SyliusShopBundle/views/Account/AddressBook/_defaultAddressForm.html.twig +++ /dev/null @@ -1,9 +0,0 @@ -{% set id = app.request.attributes.get('id') %} - -{{ form_start(form, {'action': path('sylius_shop_account_address_book_set_as_default', {'id': id}), 'method': 'PATCH'}) }} - - -{{ form_row(form._token) }} -{{ form_end(form, {'render_rest': false}) }} diff --git a/SyliusShopBundle/views/Account/AddressBook/_item.html.twig b/SyliusShopBundle/views/Account/AddressBook/_item.html.twig deleted file mode 100644 index 1b1af56..0000000 --- a/SyliusShopBundle/views/Account/AddressBook/_item.html.twig +++ /dev/null @@ -1,19 +0,0 @@ -
-
- {% include '@SyliusShop/Common/_address.html.twig' with {'address': address} %} -
- {{ render(path('sylius_shop_account_address_book_set_as_default', {'id': address.id})) }} -
- {{ 'sylius.ui.edit'|trans }} - -
- - - -
-
-
-
-
diff --git a/SyliusShopBundle/views/Account/AddressBook/layout.html.twig b/SyliusShopBundle/views/Account/AddressBook/layout.html.twig deleted file mode 100644 index abef885..0000000 --- a/SyliusShopBundle/views/Account/AddressBook/layout.html.twig +++ /dev/null @@ -1,11 +0,0 @@ -{% extends '@SyliusShop/Account/layout.html.twig' %} - -{% block breadcrumb %} - -{% endblock %} diff --git a/SyliusShopBundle/views/Account/Order/Index/_breadcrumb.html.twig b/SyliusShopBundle/views/Account/Order/Index/_breadcrumb.html.twig deleted file mode 100644 index 1876f84..0000000 --- a/SyliusShopBundle/views/Account/Order/Index/_breadcrumb.html.twig +++ /dev/null @@ -1,7 +0,0 @@ - diff --git a/SyliusShopBundle/views/Account/Order/Label/State/cancelled.html.twig b/SyliusShopBundle/views/Account/Order/Label/State/cancelled.html.twig deleted file mode 100644 index f33bf46..0000000 --- a/SyliusShopBundle/views/Account/Order/Label/State/cancelled.html.twig +++ /dev/null @@ -1,3 +0,0 @@ - - {{ value|trans }} - diff --git a/SyliusShopBundle/views/Account/Order/Label/State/fulfilled.html.twig b/SyliusShopBundle/views/Account/Order/Label/State/fulfilled.html.twig deleted file mode 100644 index ed707c2..0000000 --- a/SyliusShopBundle/views/Account/Order/Label/State/fulfilled.html.twig +++ /dev/null @@ -1,3 +0,0 @@ - - {{ value|trans }} - diff --git a/SyliusShopBundle/views/Account/Order/Label/State/new.html.twig b/SyliusShopBundle/views/Account/Order/Label/State/new.html.twig deleted file mode 100644 index 61a2e6e..0000000 --- a/SyliusShopBundle/views/Account/Order/Label/State/new.html.twig +++ /dev/null @@ -1,3 +0,0 @@ - - {{ value|trans }} - diff --git a/SyliusShopBundle/views/Account/Order/Show/_breadcrumb.html.twig b/SyliusShopBundle/views/Account/Order/Show/_breadcrumb.html.twig deleted file mode 100644 index c023439..0000000 --- a/SyliusShopBundle/views/Account/Order/Show/_breadcrumb.html.twig +++ /dev/null @@ -1,8 +0,0 @@ - diff --git a/SyliusShopBundle/views/Account/Order/Show/_header.html.twig b/SyliusShopBundle/views/Account/Order/Show/_header.html.twig deleted file mode 100644 index 9566690..0000000 --- a/SyliusShopBundle/views/Account/Order/Show/_header.html.twig +++ /dev/null @@ -1,29 +0,0 @@ -{% import '@SyliusUi/Macro/flags.html.twig' as flags %} - -{% import '@SyliusShop/Common/Macro/headers.html.twig' as headers %} - -{{ headers.default('sylius.ui.order'|trans ~ ' #' ~ order.number) }} - -
-
-
-
- {{ order.checkoutCompletedAt|format_date }} -
-
- {% include [('@SyliusShop/Account/Order/Label/State' ~ '/' ~ order.state ~ '.html.twig'), '@SyliusUi/Label/_default.html.twig'] with {'value': ('sylius.ui.' ~ order.state)|trans} %} -
-
- {{ order.currencyCode }} -
-
- {{ flags.fromLocaleCode(order.localeCode) }}{{ order.localeCode|locale_name }} -
-
-
-
- - -{% if order.paymentState in ['awaiting_payment'] %} - {{ 'sylius.ui.pay'|trans }} -{% endif %} diff --git a/SyliusShopBundle/views/Account/dashboard.html.twig b/SyliusShopBundle/views/Account/dashboard.html.twig deleted file mode 100644 index 0ff6073..0000000 --- a/SyliusShopBundle/views/Account/dashboard.html.twig +++ /dev/null @@ -1,49 +0,0 @@ -{% extends '@SyliusShop/Account/layout.html.twig' %} - -{% block title %}{{ 'sylius.ui.my_account'|trans }} | {{ parent() }}{% endblock %} - -{% import '@SyliusShop/Common/Macro/headers.html.twig' as headers %} -{% import "@SyliusShop/Common/Macro/icons.html.twig" as icons %} - -{% block breadcrumb %} - -{% endblock %} - -{% block subcontent %} - {{ headers.default('sylius.ui.my_account'|trans, '', 'sylius.ui.manage_your_personal_information_and_preferences'|trans) }} - - {{ sylius_template_event('sylius.shop.account.dashboard.after_content_header', {'customer': customer}) }} - -
- - {% if not customer.user.verified %} -
-
{{ 'sylius.ui.not_verified'|trans }}
-
- -
-
- {% endif %} - -
{{ customer.fullName }}
-
{{ customer.email }}
- {% if customer.user.verified %} -
{{ 'sylius.ui.verified'|trans }}
- {% endif %} -
- - {{ sylius_template_event('sylius.shop.account.dashboard.after_information', {'customer': customer}) }} - -
- {{ 'sylius.ui.edit'|trans }} - {{ 'sylius.ui.change_password'|trans }} -
-{% endblock %} diff --git a/SyliusShopBundle/views/Account/requestPasswordReset.html.twig b/SyliusShopBundle/views/Account/requestPasswordReset.html.twig deleted file mode 100644 index 1220227..0000000 --- a/SyliusShopBundle/views/Account/requestPasswordReset.html.twig +++ /dev/null @@ -1,27 +0,0 @@ -{% extends '@SyliusShop/layout.html.twig' %} - -{% form_theme form '@SyliusShop/Form/theme.html.twig' %} - -{% block title %}{{ 'sylius.ui.reset_password'|trans }} | {{ parent() }}{% endblock %} - -{% import '@SyliusShop/Common/Macro/headers.html.twig' as headers %} - -{% block content %} -
- {{ headers.default('sylius.ui.reset_password'|trans, '', 'sylius.ui.set_a_new_password_for_your_account'|trans) }} - - {{ sylius_template_event('sylius.shop.request_password_reset_token.after_content_header') }} -
- {{ form_start(form, {'action': path('sylius_shop_request_password_reset_token'), 'attr': {'class': 'loadable', 'novalidate': 'novalidate'}}) }} - {{ form_row(form.email, sylius_test_form_attribute('reset-email')) }} - - {{ sylius_template_event('sylius.shop.request_password_reset_token.form', {'form': form}) }} - - {{ form_row(form._token) }} - - {{ form_end(form, {'render_rest': false}) }} -
-
-{% endblock %} diff --git a/SyliusShopBundle/views/Account/resetPassword.html.twig b/SyliusShopBundle/views/Account/resetPassword.html.twig deleted file mode 100644 index 6364af1..0000000 --- a/SyliusShopBundle/views/Account/resetPassword.html.twig +++ /dev/null @@ -1,22 +0,0 @@ -{% extends '@SyliusShop/layout.html.twig' %} - -{% form_theme form '@SyliusShop/Form/theme.html.twig' %} - -{% block title %}{{ 'sylius.ui.reset_password'|trans }} | {{ parent() }}{% endblock %} - -{% import '@SyliusShop/Common/Macro/headers.html.twig' as headers %} - -{% block content %} -
- {{ headers.default('sylius.ui.reset_password'|trans, '', 'sylius.ui.set_a_new_password_for_your_account'|trans) }} - -
- {{ form_start(form, {'action': path('sylius_shop_password_reset', {'token': user.passwordResetToken}), 'attr': {'class': 'loadable', 'novalidate': 'novalidate'}}) }} - {{ form_row(form.password.first, {'label': 'sylius.form.user_reset_password.new'|trans}) }} - {{ form_row(form.password.second, {'label': 'sylius.form.user_reset_password.confirmation'|trans}) }} - {{ form_row(form._token) }} - - {{ form_end(form, {'render_rest': false}) }} -
-
-{% endblock %} diff --git a/SyliusShopBundle/views/Cart/Summary/_header.html.twig b/SyliusShopBundle/views/Cart/Summary/_header.html.twig deleted file mode 100644 index ed434bf..0000000 --- a/SyliusShopBundle/views/Cart/Summary/_header.html.twig +++ /dev/null @@ -1,16 +0,0 @@ -{% import '@SyliusShop/Common/Macro/headers.html.twig' as headers %} - -
-
- {{ headers.default(header|trans, '', 'sylius.ui.edit_your_items_apply_coupon_or_proceed_to_the_checkout'|trans) }} -
-
-
- - - -
-
-
diff --git a/SyliusShopBundle/views/Cart/Summary/_item.html.twig b/SyliusShopBundle/views/Cart/Summary/_item.html.twig deleted file mode 100644 index 5cf76a6..0000000 --- a/SyliusShopBundle/views/Cart/Summary/_item.html.twig +++ /dev/null @@ -1,31 +0,0 @@ -{% import "@SyliusShop/Common/Macro/money.html.twig" as money %} -{% import "@SyliusShop/Common/Macro/icons.html.twig" as icons %} - -{% set product_variant = item.variant %} - - - - - - - {% include '@SyliusShop/Product/_info.html.twig' with {'variant': product_variant} %} - - - {% if item.unitPrice != item.discountedUnitPrice %} - {{ money.convertAndFormat(item.unitPrice) }} - {% endif %} - {{ money.convertAndFormat(item.discountedUnitPrice) }} - - - {{ form_widget(form.quantity, sylius_test_form_attribute('cart-item-quantity-input', item.productName)) }} - - - {{ money.convertAndFormat(item.subtotal) }} - - diff --git a/SyliusShopBundle/views/Cart/Summary/_items.html.twig b/SyliusShopBundle/views/Cart/Summary/_items.html.twig deleted file mode 100644 index 93c645f..0000000 --- a/SyliusShopBundle/views/Cart/Summary/_items.html.twig +++ /dev/null @@ -1,39 +0,0 @@ -
- {{ form_start(form, {'action': path('sylius_shop_cart_save'), 'attr': {'class': 'loadable', 'novalidate': 'novalidate', 'id': form.vars.id}}) }} - {{ form_errors(form) }} - - - {{ sylius_template_event('sylius.shop.cart.summary.items', {'cart': cart, 'form': form}) }} - - - - - - - - - - - - - {% for key, item in cart.items %} - {% include '@SyliusShop/Cart/Summary/_item.html.twig' with {'item': item, 'form': form.items[key], 'main_form': form.vars.id} %} - {% endfor %} - -
{{ 'sylius.ui.item'|trans }}{{ 'sylius.ui.unit_price'|trans }}{{ 'sylius.ui.qty'|trans }}{{ 'sylius.ui.total'|trans }}
-
-
- {% if form.promotionCoupon is defined %} -
- {{ sylius_template_event('sylius.shop.cart.coupon', {'cart': cart, 'form': form, 'main_form': form.vars.id}) }} -
- {% endif %} - -
- {% include '@SyliusShop/Cart/Summary/_update.html.twig' with {'main_form': form.vars.id} %} -
-
-
- {{ form_row(form._token) }} - {{ form_end(form, {'render_rest': false}) }} -
diff --git a/SyliusShopBundle/views/Cart/Summary/_totals.html.twig b/SyliusShopBundle/views/Cart/Summary/_totals.html.twig deleted file mode 100644 index 59320d7..0000000 --- a/SyliusShopBundle/views/Cart/Summary/_totals.html.twig +++ /dev/null @@ -1,62 +0,0 @@ -{% import "@SyliusShop/Common/Macro/money.html.twig" as money %} - -{% set items_subtotal = sylius_order_items_subtotal(cart) %} -{% set tax_included = sylius_order_tax_included(cart) %} -{% set tax_excluded = sylius_order_tax_excluded(cart) %} - -
-
- {{ 'sylius.ui.summary'|trans }} -
- - {{ sylius_template_event('sylius.shop.cart.summary.totals', {'cart': cart}) }} - - -
diff --git a/SyliusShopBundle/views/Cart/Summary/_update.html.twig b/SyliusShopBundle/views/Cart/Summary/_update.html.twig deleted file mode 100644 index 42741ac..0000000 --- a/SyliusShopBundle/views/Cart/Summary/_update.html.twig +++ /dev/null @@ -1,6 +0,0 @@ -{% import "@SyliusShop/Common/Macro/icons.html.twig" as icons %} - - diff --git a/SyliusShopBundle/views/Cart/Widget/_button.html.twig b/SyliusShopBundle/views/Cart/Widget/_button.html.twig deleted file mode 100644 index 6f3f4db..0000000 --- a/SyliusShopBundle/views/Cart/Widget/_button.html.twig +++ /dev/null @@ -1,11 +0,0 @@ -{% import "@SyliusShop/Common/Macro/money.html.twig" as money %} -{% import "@SyliusShop/Common/Macro/icons.html.twig" as icons %} - - - {{ money.convertAndFormat(cart.itemsTotal) }} - {{ icons.cart('h1 m-0') }} - {{ cart.items|length }} - diff --git a/SyliusShopBundle/views/Cart/Widget/_popup.html.twig b/SyliusShopBundle/views/Cart/Widget/_popup.html.twig deleted file mode 100644 index d08dc86..0000000 --- a/SyliusShopBundle/views/Cart/Widget/_popup.html.twig +++ /dev/null @@ -1,31 +0,0 @@ -{% import "@SyliusShop/Common/Macro/money.html.twig" as money %} - -{% if cart.empty %} -
- {{ 'sylius.ui.your_cart_is_empty'|trans }}. -
-{% else %} - - - {% for item in cart.items %} - - - - - {% endfor %} - - - - - -
{{ item.product }} - {{ item.quantity }} x - {{ money.convertAndFormat(item.unitPrice) }} -
{{ 'sylius.ui.subtotal'|trans }}:{{ money.convertAndFormat(cart.itemsTotal) }}
- -
- {{ 'sylius.ui.view_and_edit_cart'|trans }} - {{ 'sylius.ui.checkout'|trans }} -
-{% endif %} - diff --git a/SyliusShopBundle/views/Checkout/Address/_form.html.twig b/SyliusShopBundle/views/Checkout/Address/_form.html.twig deleted file mode 100644 index 6c4574e..0000000 --- a/SyliusShopBundle/views/Checkout/Address/_form.html.twig +++ /dev/null @@ -1,35 +0,0 @@ -
-

{{ 'sylius.ui.billing_address'|trans }}

- -
-
-
- {% include '@SyliusShop/Checkout/Address/_addressBookSelect.html.twig' %} -
- - {% if form.customer is defined %} - {% include '@SyliusShop/Common/Form/_login.html.twig' with {'form': form.customer} %} - {% endif %} - {% include '@SyliusShop/Common/Form/_address.html.twig' with {'form': form.billingAddress, 'order': order, 'type': 'billing'} %} - {{ form_row(form.differentShippingAddress, sylius_test_form_attribute('different-shipping-address')|sylius_merge_recursive({'attr': {'data-js-toggle': '[data-js-address-book="sylius-shipping-address"]'}})) }} - - {{ sylius_template_event('sylius.shop.checkout.address.billing_address_form', {'order': order}) }} -
-
-
- -
-

{{ 'sylius.ui.shipping_address'|trans }}

- -
-
-
- {% include '@SyliusShop/Checkout/Address/_addressBookSelect.html.twig' %} -
- - {% include '@SyliusShop/Common/Form/_address.html.twig' with {'form': form.shippingAddress, 'order': order, 'type': 'shipping'} %} - - {{ sylius_template_event('sylius.shop.checkout.address.shipping_address_form', {'order': order}) }} -
-
-
diff --git a/SyliusShopBundle/views/Checkout/Address/_navigation.html.twig b/SyliusShopBundle/views/Checkout/Address/_navigation.html.twig deleted file mode 100644 index d3c271f..0000000 --- a/SyliusShopBundle/views/Checkout/Address/_navigation.html.twig +++ /dev/null @@ -1,12 +0,0 @@ -
-
- - {{ 'sylius.ui.back_to_store'|trans }} - -
-
- -
-
diff --git a/SyliusShopBundle/views/Checkout/Complete/_form.html.twig b/SyliusShopBundle/views/Checkout/Complete/_form.html.twig deleted file mode 100644 index fc36506..0000000 --- a/SyliusShopBundle/views/Checkout/Complete/_form.html.twig +++ /dev/null @@ -1 +0,0 @@ -{{ form_row(form.notes, sylius_test_form_attribute('extra-notes')|merge({'attr': {'rows': 3}})) }} diff --git a/SyliusShopBundle/views/Checkout/Complete/_navigation.html.twig b/SyliusShopBundle/views/Checkout/Complete/_navigation.html.twig deleted file mode 100644 index 9d444b2..0000000 --- a/SyliusShopBundle/views/Checkout/Complete/_navigation.html.twig +++ /dev/null @@ -1,5 +0,0 @@ -
- -
diff --git a/SyliusShopBundle/views/Checkout/SelectPayment/_choice.html.twig b/SyliusShopBundle/views/Checkout/SelectPayment/_choice.html.twig deleted file mode 100644 index a2fd38b..0000000 --- a/SyliusShopBundle/views/Checkout/SelectPayment/_choice.html.twig +++ /dev/null @@ -1,13 +0,0 @@ -
-
-
-
- {{ form_widget(form, sylius_test_form_attribute('payment-method-select')) }} - {{ form_label(form) }} -
-
- {% if method.description is not null %} -

{{ method.description }}

- {% endif %} -
-
diff --git a/SyliusShopBundle/views/Checkout/SelectPayment/_form.html.twig b/SyliusShopBundle/views/Checkout/SelectPayment/_form.html.twig deleted file mode 100644 index 21a3050..0000000 --- a/SyliusShopBundle/views/Checkout/SelectPayment/_form.html.twig +++ /dev/null @@ -1,7 +0,0 @@ -
- {% for payment_form in form.payments %} - {% include '@SyliusShop/Checkout/SelectPayment/_payment.html.twig' with {'form': payment_form} %} - {% else %} - {% include '@SyliusShop/Checkout/SelectPayment/_unavailable.html.twig' %} - {% endfor %} -
diff --git a/SyliusShopBundle/views/Checkout/SelectPayment/_navigation.html.twig b/SyliusShopBundle/views/Checkout/SelectPayment/_navigation.html.twig deleted file mode 100644 index b17bf8c..0000000 --- a/SyliusShopBundle/views/Checkout/SelectPayment/_navigation.html.twig +++ /dev/null @@ -1,20 +0,0 @@ -{% set enabled = order.payments|length %} - -
-
- {% if sylius_is_shipping_required(order) %} - - {{ 'sylius.ui.change_shipping_method'|trans }} - - {% else %} - - {{ 'sylius.ui.change_address'|trans }} - - {% endif %} -
-
- -
-
diff --git a/SyliusShopBundle/views/Checkout/SelectPayment/_payment.html.twig b/SyliusShopBundle/views/Checkout/SelectPayment/_payment.html.twig deleted file mode 100644 index dde2b2a..0000000 --- a/SyliusShopBundle/views/Checkout/SelectPayment/_payment.html.twig +++ /dev/null @@ -1,12 +0,0 @@ -
-

{{ 'sylius.ui.payment'|trans }} #{{ loop.index }}

-
- {{ form_errors(form.method) }} - - {% for key, choice_form in form.method %} - {% include '@SyliusShop/Checkout/SelectPayment/_choice.html.twig' with {'form': choice_form, 'method': form.method.vars.choices[key].data} %} - {% else %} - {% include '@SyliusShop/Checkout/SelectPayment/_unavailable.html.twig' %} - {% endfor %} -
-
diff --git a/SyliusShopBundle/views/Checkout/SelectShipping/_choice.html.twig b/SyliusShopBundle/views/Checkout/SelectShipping/_choice.html.twig deleted file mode 100644 index 7c1be06..0000000 --- a/SyliusShopBundle/views/Checkout/SelectShipping/_choice.html.twig +++ /dev/null @@ -1,21 +0,0 @@ -{% import '@SyliusShop/Common/Macro/money.html.twig' as money %} - -
-
-
-
-
- {{ form_widget(form, sylius_test_form_attribute('shipping-method-select')) }} -
- -
- {{ form_label(form) }} -
-
- {{ money.convertAndFormat(fee) }} -
- {% if method.description is not null %} -

{{ method.description }}

- {% endif %} -
-
diff --git a/SyliusShopBundle/views/Checkout/SelectShipping/_form.html.twig b/SyliusShopBundle/views/Checkout/SelectShipping/_form.html.twig deleted file mode 100644 index 02a83a2..0000000 --- a/SyliusShopBundle/views/Checkout/SelectShipping/_form.html.twig +++ /dev/null @@ -1,7 +0,0 @@ -
- {% for key, shipment in order.shipments %} - {% include '@SyliusShop/Checkout/SelectShipping/_shipment.html.twig' with {'form': form.shipments[key]} %} - {% else %} - {% include '@SyliusShop/Checkout/SelectShipping/_unavailable.html.twig' %} - {% endfor %} -
diff --git a/SyliusShopBundle/views/Checkout/SelectShipping/_navigation.html.twig b/SyliusShopBundle/views/Checkout/SelectShipping/_navigation.html.twig deleted file mode 100644 index 416c315..0000000 --- a/SyliusShopBundle/views/Checkout/SelectShipping/_navigation.html.twig +++ /dev/null @@ -1,14 +0,0 @@ -{% set enabled = order.shipments|length %} - -
-
- - {{ 'sylius.ui.change_address'|trans }} - -
-
- -
-
diff --git a/SyliusShopBundle/views/Checkout/SelectShipping/_shipment.html.twig b/SyliusShopBundle/views/Checkout/SelectShipping/_shipment.html.twig deleted file mode 100644 index 2e98920..0000000 --- a/SyliusShopBundle/views/Checkout/SelectShipping/_shipment.html.twig +++ /dev/null @@ -1,14 +0,0 @@ -
-

{{ 'sylius.ui.shipment'|trans }} #{{ loop.index }}

-
- {{ form_errors(form.method) }} - - {% for key, choice_form in form.method %} - {% set fee = form.method.vars.shipping_costs[choice_form.vars.value] %} - {% set method = form.method.vars.choices[key].data %} - {% include '@SyliusShop/Checkout/SelectShipping/_choice.html.twig' with {'form': choice_form, 'method': method, 'fee': fee} %} - {% else %} - {% include '@SyliusShop/Checkout/SelectShipping/_unavailable.html.twig' %} - {% endfor %} -
-
diff --git a/SyliusShopBundle/views/Checkout/_steps.html.twig b/SyliusShopBundle/views/Checkout/_steps.html.twig deleted file mode 100644 index 737437e..0000000 --- a/SyliusShopBundle/views/Checkout/_steps.html.twig +++ /dev/null @@ -1,56 +0,0 @@ -{% import "@SyliusShop/Common/Macro/icons.html.twig" as icons %} - -{% if active is not defined or active == 'address' %} - {% set steps = {'address': 'active', 'select_shipping': 'disabled', 'select_payment': 'disabled', 'complete': 'disabled'} %} -{% elseif active == 'select_shipping' %} - {% set steps = {'address': 'completed', 'select_shipping': 'active', 'select_payment': 'disabled', 'complete': 'disabled'} %} -{% elseif active == 'select_payment' %} - {% set steps = {'address': 'completed', 'select_shipping': 'completed', 'select_payment': 'active', 'complete': 'disabled'} %} -{% else %} - {% set steps = {'address': 'completed', 'select_shipping': 'completed', 'select_payment': 'completed', 'complete': 'active'} %} -{% endif %} - -{% set order_requires_payment = sylius_is_payment_required(order) %} -{% set order_requires_shipping = sylius_is_shipping_required(order) %} - -{% set steps_count = 'four' %} -{% if not order_requires_payment and not order_requires_shipping %} - {% set steps_count = 'two' %} -{% elseif not order_requires_payment or not order_requires_shipping %} - {% set steps_count = 'three' %} -{% endif %} - -
- -
{{ icons.address() }}
-
-
{{ 'sylius.ui.address'|trans }}
-
{{ 'sylius.ui.fill_in_your_billing_and_shipping_addresses'|trans }}
-
-
- {% if order_requires_shipping %} - -
{{ icons.transport() }}
-
-
{{ 'sylius.ui.shipping'|trans }}
-
{{ 'sylius.ui.choose_how_your_goods_will_be_delivered'|trans }}
-
-
- {% endif %} - {% if order_requires_payment %} - -
{{ icons.creditCard() }}
-
-
{{ 'sylius.ui.payment'|trans }}
-
{{ 'sylius.ui.choose_how_you_will_pay'|trans }}
-
-
- {% endif %} - -
{{ icons.flag() }}
-
-
{{ 'sylius.ui.complete'|trans }}
-
{{ 'sylius.ui.review_and_confirm_your_order'|trans }}
-
-
-
diff --git a/SyliusShopBundle/views/Checkout/_summary.html.twig b/SyliusShopBundle/views/Checkout/_summary.html.twig deleted file mode 100644 index 3c0ea76..0000000 --- a/SyliusShopBundle/views/Checkout/_summary.html.twig +++ /dev/null @@ -1,86 +0,0 @@ -{% import "@SyliusShop/Common/Macro/money.html.twig" as money %} - -{% set items_subtotal = sylius_order_items_subtotal(order) %} -{% set tax_included = sylius_order_tax_included(order) %} -{% set tax_excluded = sylius_order_tax_excluded(order) %} - -
- - - - - - - - - - {% for item in order.items %} - - - - - - {% endfor %} - - - - - - - - - - - - - - - - - - - - - - - -
{{ 'sylius.ui.item'|trans }}{{ 'sylius.ui.quantity'|trans }}{{ 'sylius.ui.subtotal'|trans }}
{{ item.getVariant.product.name }} - {{ item.quantity }} - - {{ money.convertAndFormat(item.subtotal) }} -
- {{ 'sylius.ui.items_total'|trans }}: - - {{ money.convertAndFormat(items_subtotal) }} -
- {{ 'sylius.ui.taxes_total'|trans }}: - - {% if not tax_included and not tax_excluded %} -
{{ money.convertAndFormat(0) }}
- {% endif %} - {% if tax_excluded %} -
{{ money.convertAndFormat(tax_excluded) }}
- {% endif %} - {% if tax_included %} -
- ({{ 'sylius.ui.included_in_price'|trans }}) - {{ money.convertAndFormat(tax_included) }} -
- {% endif %} -
- {{ 'sylius.ui.discount'|trans }}: - - {{ money.convertAndFormat(order.orderPromotionTotal) }} -
- {{ 'sylius.ui.shipping_estimated_cost'|trans }}: - - {% if order.getAdjustmentsTotal('shipping') > order.shippingTotal %} - {{ money.convertAndFormat(order.getAdjustmentsTotal('shipping')) }} - {% endif %} - {{ money.convertAndFormat(order.shippingTotal) }} -
-
{{ 'sylius.ui.order_total'|trans }}:
-
-
{{ money.convertAndFormat(order.total) }}
-
-
diff --git a/SyliusShopBundle/views/Checkout/selectShipping.html.twig b/SyliusShopBundle/views/Checkout/selectShipping.html.twig deleted file mode 100644 index 87be516..0000000 --- a/SyliusShopBundle/views/Checkout/selectShipping.html.twig +++ /dev/null @@ -1,35 +0,0 @@ -{% extends '@SyliusShop/Checkout/layout.html.twig' %} - -{% form_theme form '@SyliusShop/Form/theme.html.twig' %} - -{% block title %}{{ 'sylius.ui.shipping'|trans }} | {{ parent() }}{% endblock %} - -{% block content %} - {{ sylius_template_event(['sylius.shop.checkout.select_shipping.steps', 'sylius.shop.checkout.steps'], _context|merge({'active': 'select_shipping', 'orderTotal': order.total})) }} - -
-
-
-
- {{ sylius_template_event('sylius.shop.checkout.select_shipping.before_form', {'order': order}) }} - - {{ form_start(form, {'action': path('sylius_shop_checkout_select_shipping'), 'attr': {'class': 'loadable', 'novalidate': 'novalidate'}}) }} - {{ form_errors(form) }} - - - {% include '@SyliusShop/Checkout/SelectShipping/_form.html.twig' %} - - {{ sylius_template_event('sylius.shop.checkout.select_shipping.before_navigation', {'order': order}) }} - - {% include '@SyliusShop/Checkout/SelectShipping/_navigation.html.twig' %} - - {{ form_row(form._token) }} - {{ form_end(form, {'render_rest': false}) }} -
-
-
-
- {{ sylius_template_event(['sylius.shop.checkout.select_shipping.sidebar', 'sylius.shop.checkout.sidebar'], _context) }} -
-
-{% endblock %} diff --git a/SyliusShopBundle/views/Common/Macro/pagination.html.twig b/SyliusShopBundle/views/Common/Macro/pagination.html.twig deleted file mode 100644 index ab003e0..0000000 --- a/SyliusShopBundle/views/Common/Macro/pagination.html.twig +++ /dev/null @@ -1,23 +0,0 @@ -{% macro simple(paginator, options) %} -{% if paginator.haveToPaginate() %} - {{ pagerfanta(paginator, 'twitter_bootstrap4', options|default({'prev_message': '← ' ~ 'sylius.ui.previous'|trans, 'next_message': 'sylius.ui.next'|trans ~ ' →'})) }} -{% endif %} -{% endmacro %} -{% macro perPage(paginator, paginationLimits) %} - {# The dropdown don't work actually, let's remove it #} - {# - - #} -{% endmacro %} diff --git a/SyliusShopBundle/views/Common/Macro/sectionHeaders.html.twig b/SyliusShopBundle/views/Common/Macro/sectionHeaders.html.twig deleted file mode 100644 index a31f361..0000000 --- a/SyliusShopBundle/views/Common/Macro/sectionHeaders.html.twig +++ /dev/null @@ -1,6 +0,0 @@ -{% macro default(header, subheader) %} -

{{ header }}

- {% if subheader is not empty %} -

{{ subheader|raw }}

- {% endif %} -{% endmacro %} diff --git a/SyliusShopBundle/views/Common/Macro/table.html.twig b/SyliusShopBundle/views/Common/Macro/table.html.twig deleted file mode 100644 index 3949d5a..0000000 --- a/SyliusShopBundle/views/Common/Macro/table.html.twig +++ /dev/null @@ -1,47 +0,0 @@ -{% macro headers(grid, definition, requestAttributes) %} - {% import '@SyliusShop/Common/Macro/sorting.html.twig' as sorting %} - - {% if definition.actionGroups.bulk is defined and definition.getEnabledActions('bulk')|length > 0 %} - - {% endif %} - - {% for field in definition.fields|sort_by('position') %} - {% if field.enabled %} - {% if field.isSortable %} - {{ sorting.tableHeader(grid, field, requestAttributes) }} - {% else %} - {{ field.label|trans }} - {% endif %} - {% endif %} - {% endfor %} - {% if definition.actionGroups.item is defined and definition.getEnabledActions('item')|length > 0 %} - {{ 'sylius.ui.actions'|trans }} - {% endif %} -{% endmacro %} - -{% macro row(grid, definition, row) %} - - {% if definition.actionGroups.bulk is defined and definition.getEnabledActions('bulk')|length > 0 %} - - {% endif %} - {% for field in definition.enabledFields|sort_by('position') %} - {{ sylius_grid_render_field(grid, field, row) }} - {% endfor %} - {% if definition.actionGroups.item is defined and definition.getEnabledActions('item')|length > 0 %} - -
- {% for action in definition.getEnabledActions('item')|sort_by('position') %} - {{ sylius_grid_render_action(grid, action, row) }} - {% endfor %} -
- {% if definition.actionGroups.subitem is defined and definition.getEnabledActions('subitem')|length > 0 %} -
- {% for action in definition.getEnabledActions('subitem')|sort_by('position') %} - {{ sylius_grid_render_action(grid, action, row) }} - {% endfor %} -
- {% endif %} - - {% endif %} - -{% endmacro %} diff --git a/SyliusShopBundle/views/Common/Order/Label/PaymentState/orderPaymentState.html.twig b/SyliusShopBundle/views/Common/Order/Label/PaymentState/orderPaymentState.html.twig deleted file mode 100644 index 131ec6c..0000000 --- a/SyliusShopBundle/views/Common/Order/Label/PaymentState/orderPaymentState.html.twig +++ /dev/null @@ -1,18 +0,0 @@ -{% set view_options = { - authorized: {icon: "fas fa-check", color: "primary"}, - awaiting_payment: {icon: "fas fa-clock", color: "secondary"}, - cancelled: {icon: "fas fa-ban", color: "danger"}, - paid: {icon: "fas fa-adjust", color: "success"}, - partially_authorized: {icon: "fas fa-ban", color: "warning"}, - partially_paid: {icon: "fas fa-clock", color: "info"}, - partially_refunded: {icon: "fas fa-check", color: "info"}, - refunded: {icon: "fas fa-reply-all", color: "light"}, - } -%} - -{% set value = 'sylius.ui.' ~ state %} - - - - {{ 'sylius.ui.state'|trans }}: {{ value|trans }} - diff --git a/SyliusShopBundle/views/Common/Order/Label/PaymentState/singlePaymentState.html.twig b/SyliusShopBundle/views/Common/Order/Label/PaymentState/singlePaymentState.html.twig deleted file mode 100644 index 88a429d..0000000 --- a/SyliusShopBundle/views/Common/Order/Label/PaymentState/singlePaymentState.html.twig +++ /dev/null @@ -1,17 +0,0 @@ -{% set view_options = { - authorized: {icon: "fas fa-check", color: "primary"}, - cancelled: {icon: "fas fa-ban", color: "warning"}, - completed: {icon: "fas fa-adjust", color: "success"}, - failed: {icon: "fas fa-ban", color: "danger"}, - new: {icon: "fas fa-clock", color: "secondary"}, - processing: {icon: "fas fa-check", color: "info"}, - refunded: {icon: "fas fa-reply-all", color: "light"}, -} -%} - -{% set value = 'sylius.ui.' ~ state %} - - - - {{ value|trans }} - diff --git a/SyliusShopBundle/views/Common/Order/Label/ShipmentState/orderShipmentState.html.twig b/SyliusShopBundle/views/Common/Order/Label/ShipmentState/orderShipmentState.html.twig deleted file mode 100644 index 6b1c3f6..0000000 --- a/SyliusShopBundle/views/Common/Order/Label/ShipmentState/orderShipmentState.html.twig +++ /dev/null @@ -1,15 +0,0 @@ -{% set view_options = { - cart: {icon: "fas fa-adjust", color: "secondary"}, - cancelled: {icon: "fas fa-ban", color: "danger"}, - shipped: {icon: "fas fa-plane", color: "success"}, - partially_shipped: {icon: "fas fa-adjust", color: "warning"}, - partially_paid: {icon: "fas fa-clock", color: "primary"}, - } -%} - -{% set value = 'sylius.ui.' ~ state %} - - - - {{ 'sylius.ui.state'|trans }}: {{ value|trans }} - diff --git a/SyliusShopBundle/views/Common/Order/Label/ShipmentState/singleShipmentState.html.twig b/SyliusShopBundle/views/Common/Order/Label/ShipmentState/singleShipmentState.html.twig deleted file mode 100644 index f0dc4df..0000000 --- a/SyliusShopBundle/views/Common/Order/Label/ShipmentState/singleShipmentState.html.twig +++ /dev/null @@ -1,14 +0,0 @@ -{% set view_options = { - cart: {icon: "fas fa-adjust", color: "secondary"}, - cancelled: {icon: "fas fa-ban", color: "danger"}, - shipped: {icon: "fas fa-plane", color: "success"}, - ready: {icon: "fas fa-clock", color: "primary"}, -} -%} - -{% set value = 'sylius.ui.' ~ state %} - - - - {{ value|trans }} - diff --git a/SyliusShopBundle/views/Common/Order/Table/_headers.html.twig b/SyliusShopBundle/views/Common/Order/Table/_headers.html.twig deleted file mode 100644 index 3c8c493..0000000 --- a/SyliusShopBundle/views/Common/Order/Table/_headers.html.twig +++ /dev/null @@ -1,6 +0,0 @@ - - {{ 'sylius.ui.item'|trans }} - {{ 'sylius.ui.unit_price'|trans }} - {{ 'sylius.ui.qty'|trans }} - {{ 'sylius.ui.subtotal'|trans }} - diff --git a/SyliusShopBundle/views/Common/Order/Table/_item.html.twig b/SyliusShopBundle/views/Common/Order/Table/_item.html.twig deleted file mode 100644 index ccff2b8..0000000 --- a/SyliusShopBundle/views/Common/Order/Table/_item.html.twig +++ /dev/null @@ -1,23 +0,0 @@ -{% import "@SyliusShop/Common/Macro/money.html.twig" as money %} - -{% set unit_promotion_adjustment = constant('Sylius\\Component\\Core\\Model\\AdjustmentInterface::ORDER_UNIT_PROMOTION_ADJUSTMENT') %} -{% set unit_promotions = item.units.first.adjustments(unit_promotion_adjustment) %} - - - {% include '@SyliusShop/Product/_info.html.twig' with {'variant': item.variant} %} - - {% if item.unitPrice != item.discountedUnitPrice %} - {{ money.convertAndFormat(item.unitPrice) }} - {% endif %} - - {{ money.convertAndFormat(item.discountedUnitPrice) }} - {% if item.unitPrice != item.discountedUnitPrice %} - - - - {% endif %} - - - {{ item.quantity }} - {{ money.convertAndFormat(item.subtotal) }} - diff --git a/SyliusShopBundle/views/Common/Order/Table/_items.html.twig b/SyliusShopBundle/views/Common/Order/Table/_items.html.twig deleted file mode 100644 index dbb084c..0000000 --- a/SyliusShopBundle/views/Common/Order/Table/_items.html.twig +++ /dev/null @@ -1,3 +0,0 @@ -{% for item in order.items %} - {% include '@SyliusShop/Common/Order/Table/_item.html.twig' %} -{% endfor %} diff --git a/SyliusShopBundle/views/Common/Order/Table/_promotion.html.twig b/SyliusShopBundle/views/Common/Order/Table/_promotion.html.twig deleted file mode 100644 index 268ff75..0000000 --- a/SyliusShopBundle/views/Common/Order/Table/_promotion.html.twig +++ /dev/null @@ -1,16 +0,0 @@ -{% import "@SyliusShop/Common/Macro/money.html.twig" as money %} - -{% set order_promotion_adjustment = constant('Sylius\\Component\\Core\\Model\\AdjustmentInterface::ORDER_PROMOTION_ADJUSTMENT') %} -{% set order_promotions = sylius_aggregate_adjustments(order.getAdjustmentsRecursively(order_promotion_adjustment)) %} - -{% if not order_promotions is empty %} - - {% for label, amount in order_promotions %} - {{ label }}: {{ money.convertAndFormat(amount) }} - {% endfor %} - -{% endif %} - - {{ 'sylius.ui.promotion_total'|trans }}: - {{ money.format(order.orderPromotionTotal, order.currencyCode) }} - diff --git a/SyliusShopBundle/views/Common/Order/Table/_shipping.html.twig b/SyliusShopBundle/views/Common/Order/Table/_shipping.html.twig deleted file mode 100644 index e1149bf..0000000 --- a/SyliusShopBundle/views/Common/Order/Table/_shipping.html.twig +++ /dev/null @@ -1,23 +0,0 @@ -{% import "@SyliusShop/Common/Macro/money.html.twig" as money %} - -{% set order_shipping_promotion_adjustment = constant('Sylius\\Component\\Core\\Model\\AdjustmentInterface::ORDER_SHIPPING_PROMOTION_ADJUSTMENT') %} -{% set shipping_adjustment = constant('Sylius\\Component\\Core\\Model\\AdjustmentInterface::SHIPPING_ADJUSTMENT') %} -{% set order_shipping_promotions = sylius_aggregate_adjustments(order.getAdjustmentsRecursively(order_shipping_promotion_adjustment)) %} - -{% if not order_shipping_promotions is empty %} - - {{ 'sylius.ui.shipping_total'|trans }}: - {{ money.convertAndFormat(order.getAdjustmentsTotal(shipping_adjustment)) }} - - {{ money.convertAndFormat(order.getAdjustmentsTotal(shipping_adjustment) + order.getAdjustmentsTotal(order_shipping_promotion_adjustment)) }} - - - - - -{% else %} - - {{ 'sylius.ui.shipping_total'|trans }}: - {{ money.convertAndFormat(order.shippingTotal) }} - -{% endif %} diff --git a/SyliusShopBundle/views/Common/Order/Table/_totals.html.twig b/SyliusShopBundle/views/Common/Order/Table/_totals.html.twig deleted file mode 100644 index 9f7d9c1..0000000 --- a/SyliusShopBundle/views/Common/Order/Table/_totals.html.twig +++ /dev/null @@ -1,60 +0,0 @@ -{% import "@SyliusShop/Common/Macro/money.html.twig" as money %} - -{% set items_subtotal = sylius_order_items_subtotal(order) %} -{% set tax_included = sylius_order_tax_included(order) %} -{% set tax_excluded = sylius_order_tax_excluded(order) %} - -{% set order_promotion_adjustment = constant('Sylius\\Component\\Core\\Model\\AdjustmentInterface::ORDER_PROMOTION_ADJUSTMENT') %} -{% set order_promotions = sylius_aggregate_adjustments(order.adjustmentsRecursively(order_promotion_adjustment)) %} - - - - {{ 'sylius.ui.items_total'|trans }}: {{ money.convertAndFormat(items_subtotal) }} - - - - -
-
{{ 'sylius.ui.taxes_total'|trans }}: 
-
- {% if not tax_included and not tax_excluded %} -
{{ money.convertAndFormat(0) }}
- {% endif %} - {% if tax_excluded %} -
{{ money.convertAndFormat(tax_excluded) }}
- {% endif %} - {% if tax_included %} -
- ({{ 'sylius.ui.included_in_price'|trans }}) - {{ money.convertAndFormat(tax_included) }} -
- {% endif %} -
-
- - - - - {{ 'sylius.ui.discount'|trans }}: {{ money.convertAndFormat(order.orderPromotionTotal) }} - {% if order.orderPromotionTotal != 0 %} - - - - {% endif %} - - - - {% include '@SyliusShop/Common/Order/Table/_shipping.html.twig' with {'order': order} %} - - - - {{ 'sylius.ui.total'|trans }}: {{ money.convertAndFormat(order.total) }} - - -{% if order.currencyCode is not same as(sylius.currencyCode) %} - - - {{ 'sylius.ui.total_in_base_currency'|trans }}: {{ money.format(order.total, order.currencyCode) }} - - -{% endif %} diff --git a/SyliusShopBundle/views/Common/Order/_addresses.html.twig b/SyliusShopBundle/views/Common/Order/_addresses.html.twig deleted file mode 100644 index 7259600..0000000 --- a/SyliusShopBundle/views/Common/Order/_addresses.html.twig +++ /dev/null @@ -1,22 +0,0 @@ -
-
-
-
- {{ 'sylius.ui.shipping_address'|trans }} -
-
- {% include '@SyliusShop/Common/_address.html.twig' with {'address': order.shippingAddress} %} -
-
-
-
-
-
- {{ 'sylius.ui.billing_address'|trans }} -
-
- {% include '@SyliusShop/Common/_address.html.twig' with {'address': order.billingAddress} %} -
-
-
-
diff --git a/SyliusShopBundle/views/Common/Order/_shipments.html.twig b/SyliusShopBundle/views/Common/Order/_shipments.html.twig deleted file mode 100644 index cc2087c..0000000 --- a/SyliusShopBundle/views/Common/Order/_shipments.html.twig +++ /dev/null @@ -1,23 +0,0 @@ -{% import "@SyliusShop/Common/Macro/icons.html.twig" as icons %} - -{% for shipment in order.shipments %} - {% set state = shipment.state %} - -
-
-
-
{{ icons.transport() }}
- -
- {{ shipment.method }} -
- - {% if state != 'cart' %} - - {% include "@SyliusShop/Common/Order/Label/ShipmentState/singleShipmentState.html.twig" with {'state': state} %} - - {% endif %} -
-
-
-{% endfor %} diff --git a/SyliusShopBundle/views/Common/Order/_summary.html.twig b/SyliusShopBundle/views/Common/Order/_summary.html.twig deleted file mode 100644 index dd1856f..0000000 --- a/SyliusShopBundle/views/Common/Order/_summary.html.twig +++ /dev/null @@ -1,16 +0,0 @@ -
- {% include '@SyliusShop/Common/Order/_addresses.html.twig' %} -
- -
- {% include '@SyliusShop/Common/Order/_table.html.twig' %} -
- -
-
- {% include '@SyliusShop/Common/Order/_payments.html.twig' %} -
-
- {% include '@SyliusShop/Common/Order/_shipments.html.twig' %} -
-
diff --git a/SyliusShopBundle/views/Common/Order/_table.html.twig b/SyliusShopBundle/views/Common/Order/_table.html.twig deleted file mode 100644 index 0745ff0..0000000 --- a/SyliusShopBundle/views/Common/Order/_table.html.twig +++ /dev/null @@ -1,11 +0,0 @@ - - - {% include '@SyliusShop/Common/Order/Table/_headers.html.twig' %} - - - {% include '@SyliusShop/Common/Order/Table/_items.html.twig' %} - - - {% include '@SyliusShop/Common/Order/Table/_totals.html.twig' %} - -
diff --git a/SyliusShopBundle/views/Common/_rating.html.twig b/SyliusShopBundle/views/Common/_rating.html.twig deleted file mode 100644 index 43716d0..0000000 --- a/SyliusShopBundle/views/Common/_rating.html.twig +++ /dev/null @@ -1,12 +0,0 @@ -{% import "@SyliusShop/Common/Macro/icons.html.twig" as icons %} - -
- -
{{ icons.star('text-warning') }}
-
{{ icons.star('text-muted') }}
-
diff --git a/SyliusShopBundle/views/Form/theme.html.twig b/SyliusShopBundle/views/Form/theme.html.twig deleted file mode 100644 index b809639..0000000 --- a/SyliusShopBundle/views/Form/theme.html.twig +++ /dev/null @@ -1 +0,0 @@ -{% extends 'bootstrap_4_layout.html.twig' %} diff --git a/SyliusShopBundle/views/Grid/Filter/string.html.twig b/SyliusShopBundle/views/Grid/Filter/string.html.twig deleted file mode 100644 index ab409d3..0000000 --- a/SyliusShopBundle/views/Grid/Filter/string.html.twig +++ /dev/null @@ -1,6 +0,0 @@ -{% form_theme form '@SyliusShop/Form/theme.html.twig' %} - -{% if form.type is defined %} -{{ form_row(form.type, {'label': filter.label}) }} -{% endif %} -{{ form_row(form.value, {'label': form.type is defined ? form.value.vars.label : filter.label}) }} diff --git a/SyliusShopBundle/views/Homepage/_aboutUs.html.twig b/SyliusShopBundle/views/Homepage/_aboutUs.html.twig deleted file mode 100644 index b0affa0..0000000 --- a/SyliusShopBundle/views/Homepage/_aboutUs.html.twig +++ /dev/null @@ -1,10 +0,0 @@ -{% import '@SyliusShop/Common/Macro/sectionHeaders.html.twig' as headers %} - -
-
- {{ headers.default('sylius.homepage.about_us'|trans) }} -

- {{ 'sylius.homepage.about_us_content'|trans }} -

-
-
diff --git a/SyliusShopBundle/views/Homepage/_banner.html.twig b/SyliusShopBundle/views/Homepage/_banner.html.twig deleted file mode 100644 index 298bea5..0000000 --- a/SyliusShopBundle/views/Homepage/_banner.html.twig +++ /dev/null @@ -1,13 +0,0 @@ -
-
- {% if use_webpack %} - {{ 'sylius.homepage.banner_content'|trans }} - {% else %} - {{ 'sylius.homepage.banner_content'|trans }} - {% endif %} -
-
-

{{ 'sylius.homepage.banner_content'|trans }}

-

{{ 'sylius.homepage.banner_button'|trans }}

-
-
diff --git a/SyliusShopBundle/views/Homepage/_carousel.html.twig b/SyliusShopBundle/views/Homepage/_carousel.html.twig deleted file mode 100644 index 3225a74..0000000 --- a/SyliusShopBundle/views/Homepage/_carousel.html.twig +++ /dev/null @@ -1,28 +0,0 @@ - diff --git a/SyliusShopBundle/views/Homepage/_latestProductsCarousel.html.twig b/SyliusShopBundle/views/Homepage/_latestProductsCarousel.html.twig deleted file mode 100644 index dd04eea..0000000 --- a/SyliusShopBundle/views/Homepage/_latestProductsCarousel.html.twig +++ /dev/null @@ -1,5 +0,0 @@ -{% import '@SyliusShop/Common/Macro/sectionHeaders.html.twig' as headers %} - -{{ headers.default('sylius.homepage.carousel_header'|trans) }} - -{{ render(url('sylius_shop_partial_product_index_latest', {'count': 4, 'template': '@SyliusShop/Homepage/_carousel.html.twig'})) }} diff --git a/SyliusShopBundle/views/Homepage/_list.html.twig b/SyliusShopBundle/views/Homepage/_list.html.twig deleted file mode 100644 index 7726b36..0000000 --- a/SyliusShopBundle/views/Homepage/_list.html.twig +++ /dev/null @@ -1,15 +0,0 @@ -{% if products|length == 4 %} - {% set columns = "col-6" %} -{% endif %} -{% if products|length == 3 %} - {% set columns = "col-4" %} -{% endif %} - -
- {% for product in products %} -
- {% include '@SyliusShop/Product/_box.html.twig' %} -
- {% endfor %} -
- diff --git a/SyliusShopBundle/views/Homepage/_newsletter.html.twig b/SyliusShopBundle/views/Homepage/_newsletter.html.twig deleted file mode 100644 index f31c8d4..0000000 --- a/SyliusShopBundle/views/Homepage/_newsletter.html.twig +++ /dev/null @@ -1,21 +0,0 @@ -{% import '@SyliusShop/Common/Macro/sectionHeaders.html.twig' as headers %} - -
-
- {{ headers.default('sylius.homepage.newsletter'|trans, 'sylius.homepage.newsletter_description'|trans) }} -
- -
-
-
-
- -
- - -
-
-
-
diff --git a/SyliusShopBundle/views/Homepage/_productsGrid.html.twig b/SyliusShopBundle/views/Homepage/_productsGrid.html.twig deleted file mode 100644 index 3c48ae7..0000000 --- a/SyliusShopBundle/views/Homepage/_productsGrid.html.twig +++ /dev/null @@ -1,9 +0,0 @@ -
-
- {{ render(url('sylius_shop_partial_product_index_latest', {'count': 1, 'template': '@SyliusShop/Homepage/_list.html.twig'})) }} -
- -
- {{ render(url('sylius_shop_partial_product_index_latest', {'count': 4, 'template': '@SyliusShop/Homepage/_list.html.twig'})) }} -
-
diff --git a/SyliusShopBundle/views/Layout/Footer/Grid/_customer_care.html.twig b/SyliusShopBundle/views/Layout/Footer/Grid/_customer_care.html.twig deleted file mode 100644 index 574f414..0000000 --- a/SyliusShopBundle/views/Layout/Footer/Grid/_customer_care.html.twig +++ /dev/null @@ -1,9 +0,0 @@ -
-

{{ 'sylius.ui.customer_care'|trans }}

- -
diff --git a/SyliusShopBundle/views/Layout/Footer/Grid/_payment_methods.html.twig b/SyliusShopBundle/views/Layout/Footer/Grid/_payment_methods.html.twig deleted file mode 100644 index 311504f..0000000 --- a/SyliusShopBundle/views/Layout/Footer/Grid/_payment_methods.html.twig +++ /dev/null @@ -1,8 +0,0 @@ -
-

{{ 'sylius.ui.payment_methods'|trans }}

-
- - - -
-
diff --git a/SyliusShopBundle/views/Layout/Footer/Grid/_plus.html.twig b/SyliusShopBundle/views/Layout/Footer/Grid/_plus.html.twig deleted file mode 100644 index 5c05adf..0000000 --- a/SyliusShopBundle/views/Layout/Footer/Grid/_plus.html.twig +++ /dev/null @@ -1,9 +0,0 @@ -
- -

- Need even more features? -
Check Sylius Plus out!
-

- Sylius Plus -
-
diff --git a/SyliusShopBundle/views/Layout/Footer/Grid/_your_store.html.twig b/SyliusShopBundle/views/Layout/Footer/Grid/_your_store.html.twig deleted file mode 100644 index f7413ab..0000000 --- a/SyliusShopBundle/views/Layout/Footer/Grid/_your_store.html.twig +++ /dev/null @@ -1,9 +0,0 @@ -
-

{{ 'sylius.ui.your_store'|trans }}

- -
diff --git a/SyliusShopBundle/views/Layout/Footer/_content.html.twig b/SyliusShopBundle/views/Layout/Footer/_content.html.twig deleted file mode 100644 index 7bc1433..0000000 --- a/SyliusShopBundle/views/Layout/Footer/_content.html.twig +++ /dev/null @@ -1,8 +0,0 @@ -
-

© {{ 'sylius.ui.your_store'|trans }}. {{ 'sylius.ui.powered_by'|trans }} Sylius.

-

- - - -

-
diff --git a/SyliusShopBundle/views/Layout/Header/_logo.html.twig b/SyliusShopBundle/views/Layout/Header/_logo.html.twig deleted file mode 100644 index 5171297..0000000 --- a/SyliusShopBundle/views/Layout/Header/_logo.html.twig +++ /dev/null @@ -1,5 +0,0 @@ -
- - - -
diff --git a/SyliusShopBundle/views/Login/_login.html.twig b/SyliusShopBundle/views/Login/_login.html.twig deleted file mode 100644 index a265d04..0000000 --- a/SyliusShopBundle/views/Login/_login.html.twig +++ /dev/null @@ -1,15 +0,0 @@ -

{{ 'sylius.ui.registered_customers'|trans }}

-

{{ 'sylius.ui.if_you_have_an_account_sign_in_with_your_email_address'|trans }}.

-{{ form_start(form, {'action': path('sylius_shop_login_check'), 'attr': {'class': 'loadable', 'novalidate': 'novalidate'}}) }} - {% include '@SyliusShop/Login/_form.html.twig' %} - - {{ sylius_template_event('sylius.shop.login.form', {'form': form}) }} - - - - {{ 'sylius.ui.forgot_password'|trans }} - - -{{ form_end(form, {'render_rest': false}) }} diff --git a/SyliusShopBundle/views/Login/_register.html.twig b/SyliusShopBundle/views/Login/_register.html.twig deleted file mode 100644 index 35fb54f..0000000 --- a/SyliusShopBundle/views/Login/_register.html.twig +++ /dev/null @@ -1,4 +0,0 @@ -

{{ 'sylius.ui.new_customers'|trans }}

- - {{ 'sylius.ui.create_an_account'|trans }} - diff --git a/SyliusShopBundle/views/Menu/_security.html.twig b/SyliusShopBundle/views/Menu/_security.html.twig deleted file mode 100644 index 6f1e88a..0000000 --- a/SyliusShopBundle/views/Menu/_security.html.twig +++ /dev/null @@ -1,24 +0,0 @@ - - diff --git a/SyliusShopBundle/views/Menu/simple.html.twig b/SyliusShopBundle/views/Menu/simple.html.twig deleted file mode 100644 index 81c74a0..0000000 --- a/SyliusShopBundle/views/Menu/simple.html.twig +++ /dev/null @@ -1,26 +0,0 @@ -{% extends 'knp_menu.html.twig' %} - -{% block root %} -
-
{{ item.label|trans }}
- {{ block('list') }} -
-{% endblock %} - -{% block list %} - {% for item in item.children %} - {{ block('item') }} - {% endfor %} -{% endblock %} - -{% block item %} - - {{ block('icon') }} - {{ item.label|trans }} - -{% endblock %} - -{% block icon %} - {% set icon = item.labelAttribute('icon') %} - {% if icon %} {% endif %} -{% endblock %} diff --git a/SyliusShopBundle/views/Order/_summary.html.twig b/SyliusShopBundle/views/Order/_summary.html.twig deleted file mode 100644 index 411dbb6..0000000 --- a/SyliusShopBundle/views/Order/_summary.html.twig +++ /dev/null @@ -1,20 +0,0 @@ -{% import "@SyliusShop/Common/Macro/money.html.twig" as money %} -{% import '@SyliusShop/Common/Macro/headers.html.twig' as headers %} - -{{ headers.default('sylius.ui.summary_of_your_order'|trans ~ ' #' ~ order.number) }} - -
-
-
-
- {{ order.checkoutCompletedAt|date }} -
-
- {{ money.convertAndFormat(order.total) }} -
-
- {{ order.totalQuantity }} {{ 'sylius.ui.items'|trans|lower }} -
-
-
-
diff --git a/SyliusShopBundle/views/Product/Box/_content.html.twig b/SyliusShopBundle/views/Product/Box/_content.html.twig deleted file mode 100644 index 771ae7b..0000000 --- a/SyliusShopBundle/views/Product/Box/_content.html.twig +++ /dev/null @@ -1,16 +0,0 @@ -{% import "@SyliusShop/Common/Macro/money.html.twig" as money %} - -
- - {% include '@SyliusShop/Product/_mainImage.html.twig' with {'product': product, 'class': 'card-img-top'} %} - -
-
{{ product.name }}
- {% if not product.variants.empty() %} - - {{ money.calculatePrice(product|sylius_resolve_variant) }} | - - {% endif %} - {{ 'sylius.ui.view_more'|trans }} -
-
diff --git a/SyliusShopBundle/views/Product/Index/_header.html.twig b/SyliusShopBundle/views/Product/Index/_header.html.twig deleted file mode 100644 index 8f20e79..0000000 --- a/SyliusShopBundle/views/Product/Index/_header.html.twig +++ /dev/null @@ -1,4 +0,0 @@ -{{ render(url('sylius_shop_partial_taxon_show_by_slug', { - 'slug': app.request.attributes.get('slug'), - 'template': '@SyliusShop/Taxon/_header.html.twig' -})) }} diff --git a/SyliusShopBundle/views/Product/Index/_search.html.twig b/SyliusShopBundle/views/Product/Index/_search.html.twig deleted file mode 100644 index fca057a..0000000 --- a/SyliusShopBundle/views/Product/Index/_search.html.twig +++ /dev/null @@ -1,19 +0,0 @@ -
-
-
-
-
- {% for filter in products.definition.enabledFilters %} - {{ sylius_grid_render_filter(products, filter) }} - {% endfor %} -
-
- - - {{ 'sylius.ui.clear'|trans }} - -
-
-
-
-
diff --git a/SyliusShopBundle/views/Product/Index/_sorting.html.twig b/SyliusShopBundle/views/Product/Index/_sorting.html.twig deleted file mode 100644 index 0d29ab7..0000000 --- a/SyliusShopBundle/views/Product/Index/_sorting.html.twig +++ /dev/null @@ -1,47 +0,0 @@ -{% if resources.data.nbResults > 0 %} - -{% set route = app.request.attributes.get('_route') %} -{% set route_parameters = app.request.attributes.get('_route_params')|merge(app.request.query.all) %} - -{% set criteria = app.request.query.get('criteria', '') %} - -{% set default_path = path(route, route_parameters|merge({'sorting': null, 'criteria': criteria})) %} -{% set from_a_to_z_path = path(route, route_parameters|merge({'sorting': {'name': 'asc'}, 'criteria': criteria})) %} -{% set from_z_to_a_path = path(route, route_parameters|merge({'sorting': {'name': 'desc'}, 'criteria': criteria})) %} -{% set oldest_first_path = path(route, route_parameters|merge({'sorting': {'createdAt': 'asc'}, 'criteria': criteria})) %} -{% set newest_first_path = path(route, route_parameters|merge({'sorting': {'createdAt': 'desc'}, 'criteria': criteria})) %} -{% set cheapest_first_path = path(route, route_parameters|merge({'sorting': {'price': 'asc'}, 'criteria': criteria})) %} -{% set most_expensive_first_path = path(route, route_parameters|merge({'sorting': {'price': 'desc'}, 'criteria': criteria})) %} - -{% if app.request.query.get('sorting') is empty %} - {% set current_sorting_label = 'sylius.ui.by_position'|trans|lower %} -{% elseif app.request.query.get('sorting').name is defined and app.request.query.get('sorting').name == 'asc'%} - {% set current_sorting_label = 'sylius.ui.from_a_to_z'|trans|lower %} -{% elseif app.request.query.get('sorting').name is defined and app.request.query.get('sorting').name == 'desc'%} - {% set current_sorting_label = 'sylius.ui.from_z_to_a'|trans|lower %} -{% elseif app.request.query.get('sorting').createdAt is defined and app.request.query.get('sorting').createdAt == 'desc'%} - {% set current_sorting_label = 'sylius.ui.newest_first'|trans|lower %} -{% elseif app.request.query.get('sorting').createdAt is defined and app.request.query.get('sorting').createdAt == 'asc'%} - {% set current_sorting_label = 'sylius.ui.oldest_first'|trans|lower %} -{% elseif app.request.query.get('sorting').price is defined and app.request.query.get('sorting').price == 'asc'%} - {% set current_sorting_label = 'sylius.ui.cheapest_first'|trans|lower %} -{% elseif app.request.query.get('sorting').price is defined and app.request.query.get('sorting').price == 'desc' %} - {% set current_sorting_label = 'sylius.ui.most_expensive_first'|trans|lower %} -{% endif %} - - - -{% endif %} diff --git a/SyliusShopBundle/views/Product/Show/Tabs/Attributes/_list.html.twig b/SyliusShopBundle/views/Product/Show/Tabs/Attributes/_list.html.twig deleted file mode 100644 index 3de032d..0000000 --- a/SyliusShopBundle/views/Product/Show/Tabs/Attributes/_list.html.twig +++ /dev/null @@ -1,22 +0,0 @@ - - - {% for attribute in product.getAttributesByLocale(configuration.request.locale, configuration.request.defaultLocale, sylius_base_locale)|sort_by('attribute.position') %} - - - - - {% endfor %} - -
- {{ attribute.name }} - - {% include [ - '@SyliusShop/Product/Show/Types/' ~ attribute.attribute.type ~ '.html.twig', - '@SyliusAttribute/Types/' ~ attribute.attribute.type ~ '.html.twig', - '@SyliusShop/Product/Show/Types/default.html.twig' - ] with { - 'attribute': attribute, - 'locale': configuration.request.locale, - 'fallbackLocale': configuration.request.defaultLocale - } %} -
diff --git a/SyliusShopBundle/views/Product/Show/Tabs/_menu.html.twig b/SyliusShopBundle/views/Product/Show/Tabs/_menu.html.twig deleted file mode 100644 index c74eb7e..0000000 --- a/SyliusShopBundle/views/Product/Show/Tabs/_menu.html.twig +++ /dev/null @@ -1,5 +0,0 @@ -{{ 'sylius.ui.details'|trans }} -{% if product.attributes|length > 0 %} - {{ 'sylius.ui.attributes'|trans }} -{% endif %} -{{ 'sylius.ui.reviews'|trans }} ({{ product.acceptedReviews|length }}) diff --git a/SyliusShopBundle/views/Product/Show/_addToCart.html.twig b/SyliusShopBundle/views/Product/Show/_addToCart.html.twig deleted file mode 100644 index 097a83b..0000000 --- a/SyliusShopBundle/views/Product/Show/_addToCart.html.twig +++ /dev/null @@ -1,40 +0,0 @@ -{% import "@SyliusShop/Common/Macro/icons.html.twig" as icons %} - -{% set product = order_item.variant.product %} - -{% form_theme form '@SyliusShop/Form/theme.html.twig' %} - -
-
- {{ sylius_template_event('sylius.shop.product.show.before_add_to_cart', {'product': product, 'order_item': order_item}) }} - - {{ form_start(form, {'action': path('sylius_shop_ajax_cart_add_item', {'productId': product.id}), 'attr': {'id': 'sylius-product-adding-to-cart', 'data-js-add-to-cart': 'form', 'class': 'loadable', 'novalidate': 'novalidate', 'data-redirect': path(configuration.getRedirectRoute('summary'))}}) }} - {{ form_errors(form) }} -
- {% if not product.simple %} - {% if product.variantSelectionMethodChoice %} - {% include '@SyliusShop/Product/Show/_variants.html.twig' %} - {% else %} - {% include '@SyliusShop/Product/Show/_options.html.twig' %} - {% endif %} - {% endif %} - -
-
- {{ form_row(form.cartItem.quantity, sylius_test_form_attribute('quantity')) }} - - {{ sylius_template_event('sylius.shop.product.show.add_to_cart_form', {'product': product, 'order_item': order_item}) }} -
-
-
- -
-
-
- {{ form_row(form._token) }} - {{ form_end(form, {'render_rest': false}) }} -
-
diff --git a/SyliusShopBundle/views/Product/Show/_breadcrumb.html.twig b/SyliusShopBundle/views/Product/Show/_breadcrumb.html.twig deleted file mode 100644 index d720d11..0000000 --- a/SyliusShopBundle/views/Product/Show/_breadcrumb.html.twig +++ /dev/null @@ -1,26 +0,0 @@ - diff --git a/SyliusShopBundle/views/Product/Show/_header.html.twig b/SyliusShopBundle/views/Product/Show/_header.html.twig deleted file mode 100644 index d7d06ae..0000000 --- a/SyliusShopBundle/views/Product/Show/_header.html.twig +++ /dev/null @@ -1,3 +0,0 @@ -

- {{ product.name }} -

diff --git a/SyliusShopBundle/views/Product/Show/_imageVariants.html.twig b/SyliusShopBundle/views/Product/Show/_imageVariants.html.twig deleted file mode 100644 index eed782b..0000000 --- a/SyliusShopBundle/views/Product/Show/_imageVariants.html.twig +++ /dev/null @@ -1,11 +0,0 @@ -
-{% if product.getVariantSelectionMethod() == 'match' %} - {% for variant in image.productVariants %} -
- {% endfor %} -{% else %} - {% for variant in image.productVariants %} -
- {% endfor %} -{% endif %} -
diff --git a/SyliusShopBundle/views/Product/Show/_images.html.twig b/SyliusShopBundle/views/Product/Show/_images.html.twig deleted file mode 100644 index c435232..0000000 --- a/SyliusShopBundle/views/Product/Show/_images.html.twig +++ /dev/null @@ -1,35 +0,0 @@ -{% if product.imagesByType('main') is not empty %} - {% set source_path = product.imagesByType('main').first.path %} - {% set original_path = source_path|imagine_filter('sylius_shop_product_original') %} - {% set path = source_path|imagine_filter(filter|default('sylius_shop_product_large_thumbnail')) %} -{% elseif product.images.first %} - {% set source_path = product.images.first.path %} - {% set original_path = source_path|imagine_filter('sylius_shop_product_original') %} - {% set path = source_path|imagine_filter(filter|default('sylius_shop_product_large_thumbnail')) %} -{% else %} - {% set original_path = '//placehold.it/400x300' %} - {% set path = original_path %} -{% endif %} - -
- - {{ product.name }} - -{% if product.images|length > 1 %} - -{{ sylius_template_event('sylius.shop.product.show.before_thumbnails', {'product': product}) }} - -
- {% for image in product.images %} - {% set path = image.path is not null ? image.path|imagine_filter('sylius_shop_product_small_thumbnail') : '//placehold.it/200x200' %} -
- {% if product.isConfigurable() and product.variants|length > 0 %} - {% include '@SyliusShop/Product/Show/_imageVariants.html.twig' %} - {% endif %} - - {{ product.name }} - -
- {% endfor %} -
-{% endif %} diff --git a/SyliusShopBundle/views/Product/Show/_price.html.twig b/SyliusShopBundle/views/Product/Show/_price.html.twig deleted file mode 100644 index 09f3b83..0000000 --- a/SyliusShopBundle/views/Product/Show/_price.html.twig +++ /dev/null @@ -1,14 +0,0 @@ -{% import "@SyliusShop/Common/Macro/money.html.twig" as money %} - -{% set variant = product|sylius_resolve_variant %} -{% set has_discount = variant|sylius_has_discount({'channel': sylius.channel}) %} - - - {{ money.calculatePrice(product|sylius_resolve_variant) }} - - - - {% if has_discount %} - {{ money.calculateOriginalPrice(variant) }} - {% endif %} - diff --git a/SyliusShopBundle/views/Product/Show/_priceWidget.html.twig b/SyliusShopBundle/views/Product/Show/_priceWidget.html.twig deleted file mode 100644 index 5e59080..0000000 --- a/SyliusShopBundle/views/Product/Show/_priceWidget.html.twig +++ /dev/null @@ -1,6 +0,0 @@ -
- {% if not product.variants.empty() %} - {% include '@SyliusShop/Product/Show/_price.html.twig' %} - {% endif %} - {{ product.code }} -
diff --git a/SyliusShopBundle/views/Product/Show/_reviews.html.twig b/SyliusShopBundle/views/Product/Show/_reviews.html.twig deleted file mode 100644 index 87d0d6c..0000000 --- a/SyliusShopBundle/views/Product/Show/_reviews.html.twig +++ /dev/null @@ -1,5 +0,0 @@ -
-
{% include '@SyliusShop/Product/_starRating.html.twig' %}
- {{ product.acceptedReviews|length }} {{ 'sylius.ui.reviews'|trans }} - {{ 'sylius.ui.add_your_review'|trans }} -
diff --git a/SyliusShopBundle/views/Product/Show/_shortDescription.html.twig b/SyliusShopBundle/views/Product/Show/_shortDescription.html.twig deleted file mode 100644 index d187f87..0000000 --- a/SyliusShopBundle/views/Product/Show/_shortDescription.html.twig +++ /dev/null @@ -1 +0,0 @@ -

{{ product.shortDescription }}

diff --git a/SyliusShopBundle/views/Product/Show/_tabs.html.twig b/SyliusShopBundle/views/Product/Show/_tabs.html.twig deleted file mode 100644 index 488f8e8..0000000 --- a/SyliusShopBundle/views/Product/Show/_tabs.html.twig +++ /dev/null @@ -1,14 +0,0 @@ -
-
-
- -
-
-
- {% include '@SyliusShop/Product/Show/Tabs/_content.html.twig' %} -
-
-
-
diff --git a/SyliusShopBundle/views/Product/Show/_variants.html.twig b/SyliusShopBundle/views/Product/Show/_variants.html.twig deleted file mode 100644 index 5cbcd55..0000000 --- a/SyliusShopBundle/views/Product/Show/_variants.html.twig +++ /dev/null @@ -1,28 +0,0 @@ -{% import "@SyliusShop/Common/Macro/money.html.twig" as money %} - - - - - - - - - - - {% for key, variant in product.enabledVariants %} - - - - - - {% endfor %} - -
{{ 'sylius.ui.variant'|trans }}{{ 'sylius.ui.price'|trans }}
- {{ variant.name }} - {% if product.hasOptions() %} - | - {% for option_value in variant.optionValues %} - {{ option_value.value }} - {% endfor %} - {% endif %} - {{ money.calculatePrice(variant) }}{{ form_widget(form.cartItem.variant[key], {'label': false}) }}
diff --git a/SyliusShopBundle/views/Product/_info.html.twig b/SyliusShopBundle/views/Product/_info.html.twig deleted file mode 100644 index 3cffd4a..0000000 --- a/SyliusShopBundle/views/Product/_info.html.twig +++ /dev/null @@ -1,29 +0,0 @@ -{% set product = variant.product %} - -
-
- {% include '@SyliusShop/Product/_mainImage.html.twig' with {'product': product, 'filter': 'sylius_shop_product_tiny_thumbnail'} %} -
-
-
- {{ item.productName }} -
- - {{ variant.code }} - - - {% if product.hasOptions() %} -
- {% for option_value in variant.optionValues %} -
- {{ option_value.value }} -
- {% endfor %} -
- {% elseif item.variantName is not null %} -
- {{ item.variantName }} -
- {% endif %} -
-
diff --git a/SyliusShopBundle/views/Product/index.html.twig b/SyliusShopBundle/views/Product/index.html.twig deleted file mode 100644 index 718927a..0000000 --- a/SyliusShopBundle/views/Product/index.html.twig +++ /dev/null @@ -1,13 +0,0 @@ -{% extends '@SyliusShop/layout.html.twig' %} - -{% block content %} -{% include '@SyliusShop/Product/Index/_header.html.twig' %} -
-
- {% include '@SyliusShop/Product/Index/_sidebar.html.twig' %} -
-
- {% include '@SyliusShop/Product/Index/_main.html.twig' %} -
-
-{% endblock %} diff --git a/SyliusShopBundle/views/Product/show.html.twig b/SyliusShopBundle/views/Product/show.html.twig deleted file mode 100644 index 15033da..0000000 --- a/SyliusShopBundle/views/Product/show.html.twig +++ /dev/null @@ -1,21 +0,0 @@ -{% extends '@SyliusShop/layout.html.twig' %} - -{% block title %}{{ product.name }} | {{ parent() }}{% endblock %} - -{% block content %} -{% include '@SyliusShop/Product/Show/_breadcrumb.html.twig' %} - -
-
-
- {{ sylius_template_event('sylius.shop.product.show.left_sidebar', _context) }} -
-
-
- {{ sylius_template_event('sylius.shop.product.show.right_sidebar', _context) }} -
-
- -{{ sylius_template_event('sylius.shop.product.show.content', _context) }} - -{% endblock %} diff --git a/SyliusShopBundle/views/ProductReview/Box/_content.html.twig b/SyliusShopBundle/views/ProductReview/Box/_content.html.twig deleted file mode 100644 index bc80e5c..0000000 --- a/SyliusShopBundle/views/ProductReview/Box/_content.html.twig +++ /dev/null @@ -1,5 +0,0 @@ -{{ render(url('sylius_shop_partial_product_show_by_slug', { - 'slug': app.request.attributes.get('slug'), - 'template': '@SyliusShop/Product/_box.html.twig' - })) -}} diff --git a/SyliusShopBundle/views/ProductReview/_single.html.twig b/SyliusShopBundle/views/ProductReview/_single.html.twig deleted file mode 100644 index 0343d87..0000000 --- a/SyliusShopBundle/views/ProductReview/_single.html.twig +++ /dev/null @@ -1,8 +0,0 @@ -
-
{{ review.title }}
-
{{ review.comment }}
-
- {% include '@SyliusShop/Common/_rating.html.twig' with {'average': review.rating, 'viewonly': 'true'} %} - {{ review.author.firstName }} / {{ review.createdAt|format_date }} -
-
diff --git a/SyliusShopBundle/views/ProductReview/create.html.twig b/SyliusShopBundle/views/ProductReview/create.html.twig deleted file mode 100644 index 0de29c8..0000000 --- a/SyliusShopBundle/views/ProductReview/create.html.twig +++ /dev/null @@ -1,34 +0,0 @@ -{% extends '@SyliusShop/layout.html.twig' %} - -{% form_theme form '@SyliusShop/Form/theme.html.twig' %} - -{% block title %}{{ 'sylius.ui.write_your_own_review'|trans }} | {{ parent() }}{% endblock %} - -{% set product = product_review.reviewSubject %} - -{% block content %} -
-
- {{ sylius_template_event('sylius.shop.product_review.create.product_box', _context) }} -
-
-
- {{ 'sylius.ui.write_your_own_review'|trans }}
- {{ 'sylius.ui.you_are_reviewing'|trans }} {{ product.name }}. -
- - {{ sylius_template_event('sylius.shop.product_review.create.before_form', {'product_review': product_review}) }} - - {{ form_start(form, {'action': path('sylius_shop_product_review_create', {'slug': product.slug, '_locale': product.translation.locale}), 'attr': {'class': 'loadable', 'novalidate': 'novalidate'}}) }} - {% include '@SyliusShop/ProductReview/_form.html.twig' %} - - {{ sylius_template_event('sylius.shop.product_review.create.form', {'product_review': product_review, 'form': form}) }} - - {{ form_row(form._token) }} - - {{ form_end(form, {'render_rest': false}) }} -
-
-{% endblock %} diff --git a/SyliusShopBundle/views/ProductReview/index.html.twig b/SyliusShopBundle/views/ProductReview/index.html.twig deleted file mode 100644 index 39404da..0000000 --- a/SyliusShopBundle/views/ProductReview/index.html.twig +++ /dev/null @@ -1,14 +0,0 @@ -{% extends '@SyliusShop/layout.html.twig' %} - -{% block content %} -
-
- {{ sylius_template_event('sylius.shop.product_review.index.product_box', _context) }} -
-
-
- {{ sylius_template_event('sylius.shop.product_review.index.list', _context) }} -
-
-
-{% endblock %} diff --git a/SyliusShopBundle/views/Register/_form.html.twig b/SyliusShopBundle/views/Register/_form.html.twig deleted file mode 100644 index 1b229be..0000000 --- a/SyliusShopBundle/views/Register/_form.html.twig +++ /dev/null @@ -1,15 +0,0 @@ -

{{ 'sylius.ui.personal_information'|trans }}

- -
-
{{ form_row(form.firstName) }}
-
{{ form_row(form.lastName) }}
-
- -{{ form_row(form.email) }} -{{ form_row(form.phoneNumber) }} -{{ form_row(form.subscribedToNewsletter) }} - -

{{ 'sylius.ui.account_credentials'|trans }}

- -{{ form_row(form.user.plainPassword.first) }} -{{ form_row(form.user.plainPassword.second) }} diff --git a/SyliusShopBundle/views/Taxon/Header/_content.html.twig b/SyliusShopBundle/views/Taxon/Header/_content.html.twig deleted file mode 100644 index 1450c07..0000000 --- a/SyliusShopBundle/views/Taxon/Header/_content.html.twig +++ /dev/null @@ -1,3 +0,0 @@ -{% import '@SyliusShop/Common/Macro/headers.html.twig' as headers %} - -{{ headers.default(taxon.name, '', taxon.description) }} diff --git a/SyliusShopBundle/views/Taxon/_breadcrumb.html.twig b/SyliusShopBundle/views/Taxon/_breadcrumb.html.twig deleted file mode 100644 index 715f06c..0000000 --- a/SyliusShopBundle/views/Taxon/_breadcrumb.html.twig +++ /dev/null @@ -1,17 +0,0 @@ -{% set ancestors = taxon.ancestors|reverse %} - - diff --git a/SyliusShopBundle/views/Taxon/_horizontalMenu.html.twig b/SyliusShopBundle/views/Taxon/_horizontalMenu.html.twig deleted file mode 100644 index 9ea7316..0000000 --- a/SyliusShopBundle/views/Taxon/_horizontalMenu.html.twig +++ /dev/null @@ -1,35 +0,0 @@ -{% macro item(taxon, isChild) %} - {% import _self as macros %} - - {% if taxon.children|length > 0 %} - - {% else %} -
  • - {{ taxon.name }} -
  • - {% endif %} -{% endmacro %} - -{% import _self as macros %} - -{% if taxons|length > 0 %} - -{% endif %} diff --git a/SyliusShopBundle/views/_footer.html.twig b/SyliusShopBundle/views/_footer.html.twig deleted file mode 100644 index ff544f8..0000000 --- a/SyliusShopBundle/views/_footer.html.twig +++ /dev/null @@ -1,5 +0,0 @@ -
    -
    - {{ sylius_template_event('sylius.shop.layout.footer') }} -
    -
    diff --git a/SyliusShopBundle/views/_header.html.twig b/SyliusShopBundle/views/_header.html.twig deleted file mode 100644 index 7c5fe98..0000000 --- a/SyliusShopBundle/views/_header.html.twig +++ /dev/null @@ -1,18 +0,0 @@ -
    -
    -
    - - {{ sylius_template_event('sylius.shop.layout.header.grid') }} - - {% if taxons is defined and taxons|length > 0 %} -
    - -
    - {% endif %} -
    -
    -
    diff --git a/SyliusShopBundle/views/error.html.twig b/SyliusShopBundle/views/error.html.twig deleted file mode 100644 index ec201a0..0000000 --- a/SyliusShopBundle/views/error.html.twig +++ /dev/null @@ -1,9 +0,0 @@ -{% extends '@SyliusShop/layout.html.twig' %} - -{% block content %} -

    - {{ 'sylius.ui.unexpected_error_occurred'|trans }} -

    - - Sylius logo -{% endblock %} diff --git a/SyliusShopBundle/views/error403.html.twig b/SyliusShopBundle/views/error403.html.twig deleted file mode 100644 index a1cf2f8..0000000 --- a/SyliusShopBundle/views/error403.html.twig +++ /dev/null @@ -1,9 +0,0 @@ -{% extends '@SyliusShop/layout.html.twig' %} - -{% block content %} -

    - {{ 'sylius.ui.the_page_you_are_looking_for_is_forbidden'|trans }} -

    - - Sylius logo -{% endblock %} diff --git a/SyliusShopBundle/views/error404.html.twig b/SyliusShopBundle/views/error404.html.twig deleted file mode 100644 index b4e6539..0000000 --- a/SyliusShopBundle/views/error404.html.twig +++ /dev/null @@ -1,9 +0,0 @@ -{% extends '@SyliusShop/layout.html.twig' %} - -{% block content %} -

    - {{ 'sylius.ui.the_page_you_are_looking_for_does_not_exist'|trans }} -

    - - Sylius logo -{% endblock %} diff --git a/SyliusShopBundle/views/error500.html.twig b/SyliusShopBundle/views/error500.html.twig deleted file mode 100644 index 6cd0fb7..0000000 --- a/SyliusShopBundle/views/error500.html.twig +++ /dev/null @@ -1,9 +0,0 @@ -{% extends '@SyliusShop/layout.html.twig' %} - -{% block content %} -

    - {{ 'sylius.ui.server_has_encountered_some_errors'|trans }} -

    - - Sylius logo -{% endblock %} diff --git a/SyliusShopBundle/views/login.html.twig b/SyliusShopBundle/views/login.html.twig deleted file mode 100644 index f637ae7..0000000 --- a/SyliusShopBundle/views/login.html.twig +++ /dev/null @@ -1,29 +0,0 @@ -{% extends '@SyliusShop/layout.html.twig' %} - -{% form_theme form '@SyliusShop/Form/theme.html.twig' %} - -{% block title %}{{ 'sylius.ui.customer_login'|trans }} | {{ parent() }}{% endblock %} - -{% block content %} - {% include '@SyliusShop/Login/_header.html.twig' %} - - {{ sylius_template_event('sylius.shop.login.after_content_header') }} - -
    -
    -
    -
    - {{ sylius_template_event('sylius.shop.login.main_column', _context) }} -
    -
    -
    - -
    -
    -
    - {{ sylius_template_event('sylius.shop.login.register_column', _context) }} -
    -
    -
    -
    -{% endblock %} diff --git a/assets/fonts/OpenSans/OpenSans-Bold.ttf b/assets/fonts/OpenSans/OpenSans-Bold.ttf new file mode 100644 index 0000000..4a5bc39 Binary files /dev/null and b/assets/fonts/OpenSans/OpenSans-Bold.ttf differ diff --git a/assets/fonts/OpenSans/OpenSans-BoldItalic.ttf b/assets/fonts/OpenSans/OpenSans-BoldItalic.ttf new file mode 100644 index 0000000..8878a3e Binary files /dev/null and b/assets/fonts/OpenSans/OpenSans-BoldItalic.ttf differ diff --git a/assets/fonts/OpenSans/OpenSans-ExtraBold.ttf b/assets/fonts/OpenSans/OpenSans-ExtraBold.ttf new file mode 100644 index 0000000..5dfb66c Binary files /dev/null and b/assets/fonts/OpenSans/OpenSans-ExtraBold.ttf differ diff --git a/assets/fonts/OpenSans/OpenSans-ExtraBoldItalic.ttf b/assets/fonts/OpenSans/OpenSans-ExtraBoldItalic.ttf new file mode 100644 index 0000000..d266998 Binary files /dev/null and b/assets/fonts/OpenSans/OpenSans-ExtraBoldItalic.ttf differ diff --git a/assets/fonts/OpenSans/OpenSans-Italic.ttf b/assets/fonts/OpenSans/OpenSans-Italic.ttf new file mode 100644 index 0000000..e84f9ee Binary files /dev/null and b/assets/fonts/OpenSans/OpenSans-Italic.ttf differ diff --git a/assets/fonts/OpenSans/OpenSans-Light.ttf b/assets/fonts/OpenSans/OpenSans-Light.ttf new file mode 100644 index 0000000..cf8e0c7 Binary files /dev/null and b/assets/fonts/OpenSans/OpenSans-Light.ttf differ diff --git a/assets/fonts/OpenSans/OpenSans-LightItalic.ttf b/assets/fonts/OpenSans/OpenSans-LightItalic.ttf new file mode 100644 index 0000000..d913f35 Binary files /dev/null and b/assets/fonts/OpenSans/OpenSans-LightItalic.ttf differ diff --git a/assets/fonts/OpenSans/OpenSans-Medium.ttf b/assets/fonts/OpenSans/OpenSans-Medium.ttf new file mode 100644 index 0000000..a76d4ce Binary files /dev/null and b/assets/fonts/OpenSans/OpenSans-Medium.ttf differ diff --git a/assets/fonts/OpenSans/OpenSans-MediumItalic.ttf b/assets/fonts/OpenSans/OpenSans-MediumItalic.ttf new file mode 100644 index 0000000..5599691 Binary files /dev/null and b/assets/fonts/OpenSans/OpenSans-MediumItalic.ttf differ diff --git a/assets/fonts/OpenSans/OpenSans-Regular.ttf b/assets/fonts/OpenSans/OpenSans-Regular.ttf new file mode 100644 index 0000000..29e9e60 Binary files /dev/null and b/assets/fonts/OpenSans/OpenSans-Regular.ttf differ diff --git a/assets/fonts/OpenSans/OpenSans-SemiBold.ttf b/assets/fonts/OpenSans/OpenSans-SemiBold.ttf new file mode 100644 index 0000000..a571167 Binary files /dev/null and b/assets/fonts/OpenSans/OpenSans-SemiBold.ttf differ diff --git a/assets/fonts/OpenSans/OpenSans-SemiBoldItalic.ttf b/assets/fonts/OpenSans/OpenSans-SemiBoldItalic.ttf new file mode 100644 index 0000000..a7d2323 Binary files /dev/null and b/assets/fonts/OpenSans/OpenSans-SemiBoldItalic.ttf differ diff --git a/assets/app.js b/assets/index.js similarity index 51% rename from assets/app.js rename to assets/index.js index 0920292..a39857b 100644 --- a/assets/app.js +++ b/assets/index.js @@ -1,14 +1,9 @@ -require('bootstrap'); - // Main scripts file import './js/index'; // Main styles file -import './scss/index.scss'; +import './scss/main.scss'; // Images import './media/sylius-logo.png'; - -// Font awesome icons -import './js/fontawesome'; - +import './media/sylius-plus.png'; diff --git a/assets/js/fontawesome.js b/assets/js/fontawesome.js deleted file mode 100644 index 0033c1e..0000000 --- a/assets/js/fontawesome.js +++ /dev/null @@ -1,37 +0,0 @@ -// FontAwesome Icons -// Import icons one by one to reduce size of the output -import { library, dom } from '@fortawesome/fontawesome-svg-core'; - -import { faStar } from '@fortawesome/free-solid-svg-icons/faStar'; -import { faShoppingBag } from '@fortawesome/free-solid-svg-icons/faShoppingBag'; -import { faCheck } from '@fortawesome/free-solid-svg-icons/faCheck'; -import { faExclamationCircle } from '@fortawesome/free-solid-svg-icons/faExclamationCircle'; -import { faInfoCircle } from '@fortawesome/free-solid-svg-icons/faInfoCircle'; -import { faChevronUp } from '@fortawesome/free-solid-svg-icons/faChevronUp'; -import { faMapMarkerAlt } from '@fortawesome/free-solid-svg-icons/faMapMarkerAlt'; -import { faShuttleVan } from '@fortawesome/free-solid-svg-icons/faShuttleVan'; -import { faCreditCard } from '@fortawesome/free-solid-svg-icons/faCreditCard'; -import { faFlag } from '@fortawesome/free-solid-svg-icons/faFlag'; -import { faCcMastercard } from '@fortawesome/free-brands-svg-icons/faCcMastercard'; -import { faCcVisa } from '@fortawesome/free-brands-svg-icons/faCcVisa'; -import { faCcPaypal } from '@fortawesome/free-brands-svg-icons/faCcPaypal'; -import { faTimes } from '@fortawesome/free-solid-svg-icons/faTimes'; -import { faSearch } from '@fortawesome/free-solid-svg-icons/faSearch'; -import { faPlus } from '@fortawesome/free-solid-svg-icons/faPlus'; -import { faPencilAlt } from '@fortawesome/free-solid-svg-icons/faPencilAlt'; -import { faSyncAlt } from '@fortawesome/free-solid-svg-icons/faSyncAlt'; -import { faQuestionCircle } from '@fortawesome/free-solid-svg-icons/faQuestionCircle'; -import { faFacebook } from '@fortawesome/free-brands-svg-icons/faFacebook'; -import { faTwitter } from '@fortawesome/free-brands-svg-icons/faTwitter'; -import { faInstagram } from '@fortawesome/free-brands-svg-icons/faInstagram'; -import { faBan } from '@fortawesome/free-solid-svg-icons/faBan'; -import { faAdjust } from '@fortawesome/free-solid-svg-icons/faAdjust'; -import { faClock } from '@fortawesome/free-solid-svg-icons/faClock'; -import { faReplyAll } from '@fortawesome/free-solid-svg-icons/faReplyAll'; - -library.add(faStar, faQuestionCircle, faShoppingBag, faCheck, faExclamationCircle, - faInfoCircle, faChevronUp, faMapMarkerAlt, faShuttleVan, faCreditCard, faFlag, - faCcMastercard, faCcVisa, faCcPaypal, faTimes, faSearch, faPlus, faPencilAlt, - faSyncAlt, faFacebook, faTwitter, faInstagram, faBan, faAdjust, faClock, faReplyAll -); -dom.watch(); diff --git a/assets/js/index.js b/assets/js/index.js index 9a0a471..97a1d59 100644 --- a/assets/js/index.js +++ b/assets/js/index.js @@ -11,7 +11,7 @@ import GLightbox from 'glightbox'; import axios from 'axios'; -import 'bootstrap.native/dist/bootstrap-native'; +import 'bootstrap'; import SyliusRating from './sylius-rating'; import SyliusToggle from './sylius-toggle'; @@ -32,7 +32,7 @@ axios.defaults.headers.post['X-Requested-With'] = 'XMLHttpRequest'; document.addEventListener('DOMContentLoaded', () => { // Lightbox - const glightbox = GLightbox({ selector: '.glightbox' }); + GLightbox({ selector: '.glightbox' }); // Add to cart document.querySelectorAll('[data-js-add-to-cart="form"]') diff --git a/assets/js/sylius-add-to-cart.js b/assets/js/sylius-add-to-cart.js index 44c84ac..d2747fa 100644 --- a/assets/js/sylius-add-to-cart.js +++ b/assets/js/sylius-add-to-cart.js @@ -10,7 +10,6 @@ /* eslint-env browser */ import axios from 'axios'; -import serialize from 'form-serialize'; const SyliusAddToCart = (el) => { const element = el; @@ -19,7 +18,7 @@ const SyliusAddToCart = (el) => { const validationElement = element.querySelector('[data-js-add-to-cart="error"]'); element.addEventListener('submit', (e) => { - const request = axios.post(url, serialize(element)); + const request = axios.post(url, new FormData(element)); e.preventDefault(); diff --git a/assets/js/sylius-api-toggle.js b/assets/js/sylius-api-toggle.js index 7ffde56..41e37d9 100644 --- a/assets/js/sylius-api-toggle.js +++ b/assets/js/sylius-api-toggle.js @@ -10,14 +10,25 @@ /* eslint-env browser */ import axios from 'axios'; -import throttle from 'lodash.throttle'; const SyliusApiToggle = (el) => { const element = el; const url = element.getAttribute('data-js-login-check-email-url'); const toggleableElement = document.querySelector('[data-js-login="form"]'); - element.addEventListener('input', throttle((e) => { + const debounce = (callback, duration) => { + // eslint-disable-next-line + let timeout = null; + + return (...args) => { + timeout = setTimeout(() => { + callback.apply(this, args); + timeout = null; + }, duration); + } + } + + element.addEventListener('input', debounce((e) => { toggleableElement.classList.add('d-none'); if (e.target.value.length > 3) { diff --git a/assets/js/sylius-variants-prices.js b/assets/js/sylius-variants-prices.js index 46d5bb3..6f43647 100644 --- a/assets/js/sylius-variants-prices.js +++ b/assets/js/sylius-variants-prices.js @@ -40,10 +40,10 @@ const handleProductOptionsChange = function handleProductOptionsChange() { const handleProductVariantsChange = function handleProductVariantsChange() { document.querySelectorAll('[name="sylius_add_to_cart[cartItem][variant]"]').forEach((item) => { - item.addEventListener('change', (e) => { + item.addEventListener('change', () => { const priceElement = item.closest('tr').querySelector('[data-js-product-variant-price]'); const price = priceElement.innerHTML; - + document.querySelector('[data-js-product-price]').innerHTML = price; if (priceElement.hasAttribute('data-original-price')) { diff --git a/assets/media/sylius-plus.png b/assets/media/sylius-plus.png new file mode 100755 index 0000000..08e5cbf Binary files /dev/null and b/assets/media/sylius-plus.png differ diff --git a/assets/scss/_custom.scss b/assets/scss/_custom.scss deleted file mode 100644 index 71dbf05..0000000 --- a/assets/scss/_custom.scss +++ /dev/null @@ -1,76 +0,0 @@ - - -@include media-breakpoint-up(lg) { - .dropdown-menu .dropdown-menu { - top: 0; - left: 100%; - margin-top: 0; - } -} - -.logo { - @include media-breakpoint-up(md) { - width: 160px; - } - - @include media-breakpoint-down(sm) { - width: 130px; - } -} - -.main-content > :first-child:not(nav):not(.nav) { - margin-top: map-get($spacers, 4); -} - - -.loading-overlay { - position: absolute; - top: 0; - left: 0; - z-index: 99999; - display: none; - justify-content: center; - align-items: center; - width: 100%; - height: 100%; - background: rgba(255, 255, 255, .7); -} - -.loadable.loading .loading-overlay { display: flex; } - - -label.required { - &::after { - content: '*'; - display: inline-block; - padding-left: 4px; - color: $danger; - } -} - -.btn-icon { - padding-right: 5px; - padding-left: 5px; - //font-size: $font-size-lg; -} - -.homepage-banner{ - @include media-breakpoint-up(lg) { - position: relative; - &__content{ - position: absolute; - bottom: 70px; - left: 70px; - max-width: 500px; - line-height: 1.4; - background-color: unset !important; - h1{ - font-size: 50px; - color: #fff; - } - p{ - font-size: 22px; - } - } - } -} diff --git a/assets/scss/_steps.scss b/assets/scss/_steps.scss deleted file mode 100644 index 1b7f79f..0000000 --- a/assets/scss/_steps.scss +++ /dev/null @@ -1,68 +0,0 @@ -.steps { - - @include media-breakpoint-up(lg) { - display: flex; - flex-wrap: wrap; - } - - .steps-item { - display: flex; - flex-grow: 1; - flex-basis: 0; - background: $light; - border-radius: $border-radius; - padding: 1.2rem 1.8rem; - - &:hover { - text-decoration: none; - } - - &:not(:last-child) { - margin-right: 2px; - margin-bottom: 2px; - } - - &.active { - background: $primary; - - .steps-icon, - .steps-text { - color: rgba(255, 255, 255, .6); - } - - .steps-title { - color: #fff; - } - } - - &.completed { - background: theme-color-level('primary', -11); - - .steps-icon, - .steps-text { - color: theme-color-level('primary', -4); - } - - .steps-title { - color: theme-color-level('primary', 3); - } - } - - &.disabled { - cursor: auto; - pointer-events: none; - } - } - - .steps-icon { - font-size: 2rem; - padding-right: 1rem; - color: $text-muted; - } - - .steps-text { - color: $text-muted; - font-size: $font-size-sm; - line-height: 1.5; - } -} diff --git a/assets/scss/_variables.scss b/assets/scss/_variables.scss deleted file mode 100644 index 7f61436..0000000 --- a/assets/scss/_variables.scss +++ /dev/null @@ -1,73 +0,0 @@ -// Color system - -$white: #fff !default; -$gray-100: #f8f9fa !default; -$gray-200: #e9ecef !default; -$gray-300: #dee2e6 !default; -$gray-400: #ced4da !default; -$gray-500: #adb5bd !default; -$gray-600: #6c757d !default; -$gray-700: #495057 !default; -$gray-800: #343a40 !default; -$gray-900: #212529 !default; -$black: #000 !default; - -$primary: #1abb9c !default; - - -// Body - -$body-bg: $white !default; -$body-color: $gray-600 !default; - - -// Fonts - -$font-size-base: .88rem !default; - -$font-weight-normal: 400 !default; -$font-weight-bold: 700 !default; - -$line-height-base: 1.7 !default; - -$h1-font-size: $font-size-base * 2 !default; -$h2-font-size: $font-size-base * 1.8 !default; -$h3-font-size: $font-size-base * 1.6 !default; -$h4-font-size: $font-size-base * 1.4 !default; -$h5-font-size: $font-size-base * 1.2 !default; -$h6-font-size: $font-size-base !default; - -$headings-color: $gray-900 !default; - -$text-muted: $gray-500 !default; - - -// Breadcrumbs - -$breadcrumb-padding-y: 0 !default; -$breadcrumb-padding-x: 0 !default; -$breadcrumb-margin-bottom: 2rem !default; - -$breadcrumb-bg: transparent !default; -$breadcrumb-divider-color: $gray-300 !default; - - -// Navs - -$nav-link-padding-y: .8rem !default; - - -// Navbar - -$navbar-padding-y: 0 !default; -$navbar-padding-x: 0 !default; - -$navbar-nav-link-padding-x: 20px !default; - -$navbar-toggler-padding-y: .4rem !default; -$navbar-light-toggler-border-color: transparent !default; - - -// Alerts - -$alert-bg-level: -12 !default; diff --git a/assets/scss/base/_colors.scss b/assets/scss/base/_colors.scss new file mode 100644 index 0000000..58ca2ca --- /dev/null +++ b/assets/scss/base/_colors.scss @@ -0,0 +1,24 @@ +@each $level, $color in $grays { + .text-gray-#{$level} { + color: $color; + } + + .bg-gray-#{$level} { + background-color: $color; + } + + .border-gray-#{$level} { + border-color: $color; + --#{$prefix}border-color: #{$color}; + } +} + +@each $level, $color in $primaries { + .text-#{$level} { + color: $color; + } + + .bg-#{$level} { + background-color: $color; + } +} \ No newline at end of file diff --git a/assets/scss/base/_grid.scss b/assets/scss/base/_grid.scss new file mode 100644 index 0000000..b7e30da --- /dev/null +++ b/assets/scss/base/_grid.scss @@ -0,0 +1,5 @@ +@if $enable-cssgrid { + .grid { + @include make-cssgrid-rows; + } +} \ No newline at end of file diff --git a/assets/scss/base/_typography.scss b/assets/scss/base/_typography.scss new file mode 100644 index 0000000..3ec0de1 --- /dev/null +++ b/assets/scss/base/_typography.scss @@ -0,0 +1,12 @@ +@include font-face(OpenSans, '../../../fonts/OpenSans/OpenSans-Light', 300, normal, ttf); +@include font-face(OpenSans, '../../../fonts/OpenSans/OpenSans-LightItalic', 300, italic, ttf); +@include font-face(OpenSans, '../../../fonts/OpenSans/OpenSans-Regular', 400, normal, ttf); +@include font-face(OpenSans, '../../../fonts/OpenSans/OpenSans-Italic', 400, italic, ttf); +@include font-face(OpenSans, '../../../fonts/OpenSans/OpenSans-Medium', 500, normal, ttf); +@include font-face(OpenSans, '../../../fonts/OpenSans/OpenSans-MediumItalic', 500, italic, ttf); +@include font-face(OpenSans, '../../../fonts/OpenSans/OpenSans-SemiBold', 600, normal, ttf); +@include font-face(OpenSans, '../../../fonts/OpenSans/OpenSans-SemiBoldItalic', 600, italic, ttf); +@include font-face(OpenSans, '../../../fonts/OpenSans/OpenSans-Bold', 700, normal, ttf); +@include font-face(OpenSans, '../../../fonts/OpenSans/OpenSans-BoldItalic', 700, italic, ttf); +@include font-face(OpenSans, '../../../fonts/OpenSans/OpenSans-ExtraBold', 900, normal, ttf); +@include font-face(OpenSans, '../../../fonts/OpenSans/OpenSans-ExtraBoldItalic', 900, italic, ttf); \ No newline at end of file diff --git a/assets/scss/base/main.scss b/assets/scss/base/main.scss new file mode 100644 index 0000000..4dc9c07 --- /dev/null +++ b/assets/scss/base/main.scss @@ -0,0 +1,3 @@ +@import './colors'; +@import './grid'; +@import './typography'; diff --git a/assets/scss/components/_breadcrumbs.scss b/assets/scss/components/_breadcrumbs.scss new file mode 100644 index 0000000..cea409c --- /dev/null +++ b/assets/scss/components/_breadcrumbs.scss @@ -0,0 +1,7 @@ +.breadcrumb { + &-item { + &::before { + font-family: $font-family-icons; + } + } +} \ No newline at end of file diff --git a/assets/scss/components/_buttons.scss b/assets/scss/components/_buttons.scss new file mode 100644 index 0000000..8a0acc2 --- /dev/null +++ b/assets/scss/components/_buttons.scss @@ -0,0 +1,3 @@ +.btn-primary { + --#{$prefix}btn-color: #{$white}; +} \ No newline at end of file diff --git a/assets/scss/components/_card.scss b/assets/scss/components/_card.scss new file mode 100644 index 0000000..4f85587 --- /dev/null +++ b/assets/scss/components/_card.scss @@ -0,0 +1,52 @@ +.card-product { + .card-title a { + color: $card-title-color; + text-decoration: none; + transition: color 75ms; + + &:hover { + color: $primary; + } + } + + &.grid-item { + position: relative; + + .card-body { + position: absolute; + inset: 0; + display: flex; + flex-direction: column; + justify-content: flex-end; + border-radius: $card-border-radius; + background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.5)); + } + + .card-title, + .card-title a { + color: $white; + + &:hover { + color: $primary; + } + } + + .card-subtitle { + color: $gray-200; + } + } + + @include media-breakpoint-down(md) { + &.carousel-product { + display: flex; + align-items: center; + flex-direction: row; + + > a { + display: inline-block; + flex: 0 0 25%; + max-width: 25%; + } + } + } +} \ No newline at end of file diff --git a/assets/scss/components/_carousel.scss b/assets/scss/components/_carousel.scss new file mode 100644 index 0000000..1bf3d51 --- /dev/null +++ b/assets/scss/components/_carousel.scss @@ -0,0 +1,26 @@ +.carousel { + + &-control-prev, + &-control-next { + @include media-breakpoint-up(lg) { + bottom: 50%; + top: unset; + height: auto; + } + } + + &-control-prev { + @include media-breakpoint-up(lg) { + left: unset; + right: 100%; + } + } + + &-control-next { + @include media-breakpoint-up(lg) { + right: unset; + left: 100%; + } + } + +} \ No newline at end of file diff --git a/assets/scss/components/_dropdown.scss b/assets/scss/components/_dropdown.scss new file mode 100644 index 0000000..47bd8f8 --- /dev/null +++ b/assets/scss/components/_dropdown.scss @@ -0,0 +1,10 @@ +.dropdown { + &-item { + i { + width: 1.5rem; + text-align: center; + margin-right: .75rem; + color: $gray-500; + } + } +} \ No newline at end of file diff --git a/assets/scss/components/_pagination.scss b/assets/scss/components/_pagination.scss new file mode 100644 index 0000000..c54d809 --- /dev/null +++ b/assets/scss/components/_pagination.scss @@ -0,0 +1,5 @@ +.pagination { + .page-link { + border-radius: $pagination-border-radius; + } +} \ No newline at end of file diff --git a/assets/scss/components/_steps.scss b/assets/scss/components/_steps.scss new file mode 100644 index 0000000..d21e469 --- /dev/null +++ b/assets/scss/components/_steps.scss @@ -0,0 +1,102 @@ +.steps { + $this: &; + display: flex; + flex-direction: column; + border-width: $steps-border-width; + border-color: $steps-border-color; + border-style: solid; + border-radius: $steps-border-radius; + font-size: $steps-font-size; + + @include media-breakpoint-up(lg) { + flex-direction: row; + flex-wrap: wrap; + } + + &-item { + display: flex; + flex: 1; + gap: $spacer * 1.5; + padding: $steps-padding; + border-bottom: 4px solid transparent; + position: relative; + background-color: $steps-bg; + transition: $steps-transition; + + &.completed { + border-color: $steps-completed-border-color; + background: $steps-completed-bg; + + #{$this}-icon { + color: $steps-completed-icon-color; + } + #{$this}-title { + color: $steps-completed-color; + } + } + + &:hover { + text-decoration: none; + background: $steps-hover-bg; + border-color: $steps-hover-border-color; + + #{$this}-icon { + color: $steps-hover-icon-color; + } + + #{$this}-title { + color: $steps-hover-color; + } + } + + &.active { + border-color: $steps-active-border-color; + background: $steps-active-bg; + + #{$this}-icon { + color: $steps-active-icon-color; + } + #{$this}-title { + color: $steps-active-color; + } + } + + &.disabled { + cursor: auto; + pointer-events: none; + border-color: $steps-disabled-border-color; + background: $steps-disabled-bg; + + #{$this}-icon { + color: $steps-disabled-icon-color; + } + #{$this}-title { + color: $steps-disabled-color; + } + } + } + + &-title { + color: $steps-color; + } + + &-icon { + font-size: 2rem; + color: $steps-icon-color; + } + + &-text { + color: $steps-subtitle-color; + font-size: $steps-subtitle-font-size; + line-height: 1.5; + } + + &-divider { + position: absolute; + top: 0; + left: 0; + height: 100%; + width: 1rem; + color: $steps-border-color; + } +} diff --git a/assets/scss/components/main.scss b/assets/scss/components/main.scss new file mode 100644 index 0000000..8352453 --- /dev/null +++ b/assets/scss/components/main.scss @@ -0,0 +1,7 @@ +@import './breadcrumbs'; +@import './buttons'; +@import './card'; +@import './carousel'; +@import './dropdown'; +@import './pagination'; +@import './steps'; diff --git a/assets/scss/index.scss b/assets/scss/index.scss deleted file mode 100644 index 3556cf9..0000000 --- a/assets/scss/index.scss +++ /dev/null @@ -1,13 +0,0 @@ -// Overriding default Bootstrap variables -@import "variables"; - -// All Bootstrap styles -@import "~bootstrap/scss/bootstrap"; - -// Custom theme styles -@import "steps"; -@import "custom"; - -// Third party components -@import '~semantic-ui-css/components/flag.min.css'; -@import '~glightbox/dist/css/glightbox.min.css'; diff --git a/assets/scss/layout/_footer.scss b/assets/scss/layout/_footer.scss new file mode 100644 index 0000000..7ad1ce7 --- /dev/null +++ b/assets/scss/layout/_footer.scss @@ -0,0 +1,20 @@ +.pre-footer { + transform: translateY(-50%); + margin-top: -3rem; + + &-col { + display: flex; + align-items: center; + gap: 1.5rem; + } + + .fa-solid { + width: 3rem; + text-align: center; + color: $teal-200; + } +} + +.footer { + margin-top: 6rem; +} \ No newline at end of file diff --git a/assets/scss/layout/_nav.scss b/assets/scss/layout/_nav.scss new file mode 100644 index 0000000..0aa76f1 --- /dev/null +++ b/assets/scss/layout/_nav.scss @@ -0,0 +1,10 @@ +.nav { + &-link { + border-radius: $border-radius; + + &:hover, + &.show { + background-color: $gray-200; + } + } +} \ No newline at end of file diff --git a/assets/scss/layout/main.scss b/assets/scss/layout/main.scss new file mode 100644 index 0000000..5925ed0 --- /dev/null +++ b/assets/scss/layout/main.scss @@ -0,0 +1,2 @@ +@import './footer'; +@import './nav'; diff --git a/assets/scss/main.scss b/assets/scss/main.scss new file mode 100644 index 0000000..01b2a13 --- /dev/null +++ b/assets/scss/main.scss @@ -0,0 +1,18 @@ +// -------------------------------------------------------------------------- +// +// Sass Architecture Structure: +// https://gist.github.com/AdamMarsden/7b85e8d5bdb5bef969a0 +// +// -------------------------------------------------------------------------- + +@import './sass-utils/main.scss'; + +@import './vendors/main.scss'; + +@import './base/main.scss'; + +@import './components/main.scss'; + +@import './layout/main.scss'; + +@import './pages/main.scss'; \ No newline at end of file diff --git a/SyliusShopBundle/views/Product/Show/_menu.html.twig b/assets/scss/pages/main.scss similarity index 100% rename from SyliusShopBundle/views/Product/Show/_menu.html.twig rename to assets/scss/pages/main.scss diff --git a/assets/scss/sass-utils/_utilities.scss b/assets/scss/sass-utils/_utilities.scss new file mode 100644 index 0000000..54d9038 --- /dev/null +++ b/assets/scss/sass-utils/_utilities.scss @@ -0,0 +1,16 @@ +// How to use utilities api: https://getbootstrap.com/docs/5.0/utilities/api/ + +$utilities: ( + "object-fit": ( + property: object-fit, + values: contain cover fill none revert scale-down unset, + ), + "place-content": ( + property: place-content, + values: center start end flex-start flex-end left right baseline first baseline last baseline space-between space-around space-evenly stretch safe center unsafe, + ), + "cursor": ( + property: cursor, + values: auto default pointer, + ), +); \ No newline at end of file diff --git a/assets/scss/sass-utils/_variables.scss b/assets/scss/sass-utils/_variables.scss new file mode 100644 index 0000000..c9c832e --- /dev/null +++ b/assets/scss/sass-utils/_variables.scss @@ -0,0 +1,326 @@ +// Color system + +$white: #fff; +$gray-50: #f8fafc; +$gray-100: #f8f9fa; +$gray-200: #e9ecef; +$gray-300: #dee2e6; +$gray-400: #ced4da; +$gray-500: #adb5bd; +$gray-600: #6c757d; +$gray-700: #495057; +$gray-800: #343a40; +$gray-900: #212529; +$gray-950: #020617; +$black: #000; + +$grays: ( + "50": $gray-50, + "100": $gray-100, + "200": $gray-200, + "300": $gray-300, + "400": $gray-400, + "500": $gray-500, + "600": $gray-600, + "700": $gray-700, + "800": $gray-800, + "900": $gray-900, + "950": $gray-950 +); + +$blue: #0d6efd; +$indigo: #6610f2; +$purple: #6f42c1; +$pink: #d63384; +$red: #dc3545; +$orange: #fd7e14; +$yellow: #ffc107; +$green: #198754; +$teal: #20c997; +$cyan: #0dcaf0; +$red: #f43f5e; +$yellow: #f59e0b; +$green: #84cc16; + +$colors: ( + "blue": $blue, + "indigo": $indigo, + "purple": $purple, + "pink": $pink, + "red": $red, + "orange": $orange, + "yellow": $yellow, + "green": $green, + "teal": $teal, + "cyan": $cyan, + "black": $black, + "white": $white, + "gray": $gray-600, + "gray-dark": $gray-800 +); + +$red-50: #fff1f2; +$red-100: #ffe4e6; +$red-200: #fecdd3; +$red-300: #fda4af; +$red-400: #fb7185; +$red-500: #f43f5e; +$red-600: #e11d48; +$red-700: #be123c; +$red-800: #9f1239; +$red-900: #881337; +$red-950: #4c0519; + +$yellow-50: #fffbeb; +$yellow-100: #fef3c7; +$yellow-200: #fde68a; +$yellow-300: #fcd34d; +$yellow-400: #fbbf24; +$yellow-500: #f59e0b; +$yellow-600: #d97706; +$yellow-700: #b45309; +$yellow-800: #92400e; +$yellow-900: #78350f; +$yellow-950: #451a03; + +$green-50: #f7fee7; +$green-100: #ecfccb; +$green-200: #d9f99d; +$green-300: #bef264; +$green-400: #a3e635; +$green-500: #84cc16; +$green-600: #65a30d; +$green-700: #4d7c0f; +$green-800: #3f6212; +$green-900: #365314; +$green-950: #1a2e05; + +$teal-50: #F1FCF9; +$teal-100: #CFF8EB; +$teal-200: #A0EFD8; +$teal-300: #68E0C2; +$teal-400: #39C8A8; +$teal-500: #22B99A; +$teal-600: #178A75; +$teal-700: #166F5F; +$teal-800: #16594E; +$teal-900: #174A41; +$teal-950: #072C27; + +$reds: ( + "red-50": $red-50, + "red-100": $red-100, + "red-200": $red-200, + "red-300": $red-300, + "red-400": $red-400, + "red-500": $red-500, + "red-600": $red-600, + "red-700": $red-700, + "red-800": $red-800, + "red-900": $red-900, + "red-950": $red-950, +); + +$yellows: ( + "yellow-50": $yellow-50, + "yellow-100": $yellow-100, + "yellow-200": $yellow-200, + "yellow-300": $yellow-300, + "yellow-400": $yellow-400, + "yellow-500": $yellow-500, + "yellow-600": $yellow-600, + "yellow-700": $yellow-700, + "yellow-800": $yellow-800, + "yellow-900": $yellow-900, + "yellow-950": $yellow-950, +); + +$greens: ( + "green-50": $green-50, + "green-100": $green-100, + "green-200": $green-200, + "green-300": $green-300, + "green-400": $green-400, + "green-500": $green-500, + "green-600": $green-600, + "green-700": $green-700, + "green-800": $green-800, + "green-900": $green-900, + "green-950": $green-950, +); + +$primaries: ( + "primary-50": $teal-50, + "primary-100": $teal-100, + "primary-200": $teal-200, + "primary-300": $teal-300, + "primary-400": $teal-400, + "primary-500": $teal-500, + "primary-600": $teal-600, + "primary-700": $teal-700, + "primary-800": $teal-800, + "primary-900": $teal-900, + "primary-950": $teal-950, +); + +$primary: $teal-500; +$secondary: $gray-500; +$info: $gray-300; +$dark: $gray-800; +$light: $gray-100; +$component-active-bg: $primary; + +$enable-shadows: true; +$enable-cssgrid: true; +$enable-dark-mode: false; + +$variable-prefix: bs-; // Deprecated in v5.2.0 for the shorter `$prefix` +$prefix: $variable-prefix; + +$link-color: $dark; +$link-decoration: none; + +$grid-rows: 5; // custom variable for grid-rows mixin + +$border-radius-sm: .125rem; +$border-radius-md: .375rem; +$border-radius-lg: .5rem; +$border-radius-xl: .75rem; +$border-radius-xxl: 1rem; +$border-radius-pill: 9999px; + +$box-shadow: 0 1px 3px 0 rgba($black, 0.1), 0 1px 2px -1px rgba($black, 0.1); +$box-shadow-sm: 0 1px 2px 0 rgba($black, 0.05); +$box-shadow-md: 0 4px 6px -1px rgba($black, 0.1), 0 2px 4px -2px rgba($black, 0.1); +$box-shadow-lg: 0 10px 15px -3px rgba($black, 0.1), 0 4px 6px -4px rgba($black, 0.1); +$box-shadow-xl: 0 20px 25px -5px rgba($black, 0.1), 0 8px 10px -6px rgba($black, 0.1); +$box-shadow-xxl: 0 25px 50px -12px rgba($black, 0.25); +$box-shadow-inset: inset 0 2px 4px 0 rgba($black, 0.05); +$box-shadow-none: 0 0 $black; + +$focus-ring-offset: .125rem; +$focus-ring-offset-color: $white; +$focus-ring-width: .125rem; +$focus-ring-opacity: 1; +$focus-ring-color: rgba($primary, $focus-ring-opacity); +$focus-ring-blur: 0; +$focus-ring-box-shadow: 0 0 0 $focus-ring-offset $focus-ring-offset-color, 0 0 $focus-ring-blur add($focus-ring-width, $focus-ring-offset) $focus-ring-color; + +$font-family-sans-serif: 'Open Sans', Arial, sans-serif; +$font-family-monospace: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; +$font-family-icons: "Font Awesome 6 Free"; + +$font-size-base: 1rem; +$font-size-sm: $font-size-base * .875; +$h1-font-size: $font-size-base * 3; + +$input-btn-padding-y: .5rem; +$input-btn-padding-x: 1rem; +$input-btn-padding-y-sm: .375rem; +$input-btn-padding-x-sm: .625rem; +$input-btn-padding-y-lg: .750rem; +$input-btn-padding-x-lg: 1.5rem; + +$font-weight-semibold: 600; +$btn-font-weight: $font-weight-semibold; +$btn-box-shadow: null; +$btn-active-box-shadow: null; +$input-box-shadow: unset; +$form-select-box-shadow: unset; +$navbar-nav-link-padding-x: .75rem; + +$border-color: $gray-300; +$navbar-light-color: $gray-900; +$navbar-light-icon-color: $gray-700; +$navbar-light-toggler-border-color: $border-color; + +$spacer: 1rem; +$spacers: ( + 0: 0, + 1: $spacer * .25, + 2: $spacer * .5, + 3: $spacer, + 4: $spacer * 1.5, + 5: $spacer * 3, +); + +$dropdown-min-width: 14rem; +$dropdown-border-color: $gray-100; +$dropdown-divider-bg: $gray-200; +$dropdown-divider-margin-y: $spacer * .75; +$dropdown-box-shadow: $box-shadow-lg; +$dropdown-item-padding-y: $spacer * .75; +$dropdown-item-padding-x: $spacer * 1.25; + +$pagination-padding-y: $spacer * .375; +$pagination-padding-x: $spacer; + +$pagination-border-width: 0px; +$pagination-disabled-color: $gray-100; +$pagination-disabled-bg: $light; + +$card-title-color: $gray-900; +$card-subtitle-color: $gray-700; +$card-border-width: 0; +$card-border-radius: $border-radius-lg; +$card-cap-bg: $gray-100; + +$badge-padding-y: .25rem; +$badge-padding-x: .5rem; + +$alert-padding-y: $spacer * 1.5; +$alert-padding-x: $spacer * 1.5; + +$alert-border-width: 0; + +// Steps + +$steps-padding: $spacer * 0.75 $spacer * 2 $spacer * 0.75 $spacer * 1.5; +$steps-font-size: $font-size-base; + +$steps-color: var(--#{$prefix}gray); +$steps-icon-color: var(--#{$prefix}gray); +$steps-bg: none; +$steps-border-radius: var(--#{$prefix}border-radius); +$steps-border-width: 1px; +$steps-margin-start: calc(#{$steps-border-width} * -1); // stylelint-disable-line function-disallowed-list +$steps-border-color: var(--#{$prefix}border-color); + +$steps-subtitle-color: var(--#{$prefix}gray); +$steps-subtitle-font-size: $font-size-sm; + +$steps-hover-color: var(--#{$prefix}gray); +$steps-hover-icon-color: var(--#{$prefix}gray); +$steps-hover-border-color: var(--#{$prefix}light); // Todo in v6: remove this? +$steps-hover-bg: none; + +$steps-active-color: $component-active-bg; +$steps-active-icon-color: $component-active-bg; +$steps-active-border-color: $component-active-bg; +$steps-active-bg: none; + +$steps-completed-color: var(--#{$prefix}gray-dark); +$steps-completed-icon-color: var(--#{$prefix}primary); +$steps-completed-border-color: none; // Todo in v6: remove this? +$steps-completed-bg: none; + +$steps-disabled-color: var(--#{$prefix}gray); +$steps-disabled-icon-color: var(--#{$prefix}gray); +$steps-disabled-border-color: none; +$steps-disabled-bg: none; + +$steps-transition: border-color .15s ease-in-out; + +$breadcrumb-font-size: $font-size-sm; +$breadcrumb-item-padding-x: 1rem; +$breadcrumb-divider-color: $gray-500; +$breadcrumb-active-color: $gray-700; +$breadcrumb-divider: quote(""); + +$carousel-control-color: $dark; +$carousel-control-width: 3rem; +$carousel-indicator-width: 2rem; +$carousel-indicator-height: 5px; +$carousel-indicator-active-bg: $dark; + +$code-color: $yellow; diff --git a/assets/scss/sass-utils/main.scss b/assets/scss/sass-utils/main.scss new file mode 100644 index 0000000..29985e7 --- /dev/null +++ b/assets/scss/sass-utils/main.scss @@ -0,0 +1,13 @@ +@import "variables"; + +@import "~bootstrap/scss/functions"; +@import "~bootstrap/scss/variables"; +@import "~bootstrap/scss/variables-dark"; +@import "~bootstrap/scss/maps"; +@import "~bootstrap/scss/mixins"; +@import "~bootstrap/scss/utilities"; +@import "~bootstrap/scss/helpers"; +@import "~bootstrap/scss/utilities/api"; + +@import "utilities"; +@import "./mixins/main.scss"; diff --git a/assets/scss/sass-utils/mixins/_font-face.scss b/assets/scss/sass-utils/mixins/_font-face.scss new file mode 100644 index 0000000..9cfbde6 --- /dev/null +++ b/assets/scss/sass-utils/mixins/_font-face.scss @@ -0,0 +1,27 @@ +@mixin font-face($name, $path, $weight: null, $style: null, $exts: eot woff2 woff ttf svg) { + $src: null; + + $extmods: ( + eot: "?", + svg: "#" + str-replace($name, " ", "_"), + ); + + $formats: ( + otf: "opentype", + ttf: "truetype", + ); + + @each $ext in $exts { + $extmod: if(map-has-key($extmods, $ext), $ext + map-get($extmods, $ext), $ext); + $format: if(map-has-key($formats, $ext), map-get($formats, $ext), $ext); + $src: append($src, url(quote($path + "." + $extmod)) format(quote($format)), comma); + } + + @font-face { + font-family: quote($name); + font-style: $style; + font-weight: $weight; + src: $src; + font-display: swap; + } +} \ No newline at end of file diff --git a/assets/scss/sass-utils/mixins/_grid-rows.scss b/assets/scss/sass-utils/mixins/_grid-rows.scss new file mode 100644 index 0000000..66d2f72 --- /dev/null +++ b/assets/scss/sass-utils/mixins/_grid-rows.scss @@ -0,0 +1,23 @@ +@mixin make-cssgrid-rows($rows: $grid-rows, $breakpoints: $grid-breakpoints) { + @each $breakpoint in map-keys($breakpoints) { + $infix: breakpoint-infix($breakpoint, $breakpoints); + + @include media-breakpoint-up($breakpoint, $breakpoints) { + @if $rows >0 { + @for $i from 1 through $rows { + .g-row#{$infix}-#{$i} { + grid-row: auto / span $i; + } + } + + // Start with `1` because `0` is and invalid value. + // Ends with `$rows - 1` because offsetting by the width of an entire row isn't possible. + @for $i from 1 through ($rows - 1) { + .g-row-start#{$infix}-#{$i} { + grid-row-start: $i; + } + } + } + } + } +} \ No newline at end of file diff --git a/assets/scss/sass-utils/mixins/main.scss b/assets/scss/sass-utils/mixins/main.scss new file mode 100644 index 0000000..3c171b8 --- /dev/null +++ b/assets/scss/sass-utils/mixins/main.scss @@ -0,0 +1,2 @@ +@import './font-face'; +@import './grid-rows'; diff --git a/assets/scss/vendors/_custom.scss b/assets/scss/vendors/_custom.scss new file mode 100644 index 0000000..7716744 --- /dev/null +++ b/assets/scss/vendors/_custom.scss @@ -0,0 +1,25 @@ + +.loading-overlay { + position: fixed; + top: 0; + left: 0; + z-index: 99999; + display: none; + justify-content: center; + align-items: center; + width: 100%; + height: 100%; + background: rgba(255, 255, 255, .7); +} + +.loadable.loading .loading-overlay { display: flex; } + + +label.required { + &::after { + content: '*'; + display: inline-block; + padding-left: 4px; + color: $danger; + } +} diff --git a/assets/scss/vendors/main.scss b/assets/scss/vendors/main.scss new file mode 100644 index 0000000..f6da1de --- /dev/null +++ b/assets/scss/vendors/main.scss @@ -0,0 +1,49 @@ +/* -------------------------------------------------- Font Awesome -------------------------------------------------- */ + +@import "~@fortawesome/fontawesome-free/scss/fontawesome"; +@import "~@fortawesome/fontawesome-free/scss/solid"; +@import "~@fortawesome/fontawesome-free/scss/brands"; + +/* -------------------------------------------------- Bootstrap v5 -------------------------------------------------- */ + +// Layout & components +@import "~bootstrap/scss/root"; +@import "~bootstrap/scss/reboot"; +@import "~bootstrap/scss/type"; +@import "~bootstrap/scss/images"; +@import "~bootstrap/scss/containers"; +@import "~bootstrap/scss/grid"; +@import "~bootstrap/scss/tables"; +@import "~bootstrap/scss/forms"; +@import "~bootstrap/scss/buttons"; +@import "~bootstrap/scss/transitions"; +@import "~bootstrap/scss/dropdown"; +@import "~bootstrap/scss/button-group"; +@import "~bootstrap/scss/nav"; +@import "~bootstrap/scss/navbar"; +@import "~bootstrap/scss/card"; +@import "~bootstrap/scss/accordion"; +@import "~bootstrap/scss/breadcrumb"; +@import "~bootstrap/scss/pagination"; +@import "~bootstrap/scss/badge"; +@import "~bootstrap/scss/alert"; +@import "~bootstrap/scss/progress"; +@import "~bootstrap/scss/list-group"; +@import "~bootstrap/scss/close"; +@import "~bootstrap/scss/toasts"; +@import "~bootstrap/scss/modal"; +@import "~bootstrap/scss/tooltip"; +@import "~bootstrap/scss/popover"; +@import "~bootstrap/scss/carousel"; +@import "~bootstrap/scss/spinners"; +@import "~bootstrap/scss/offcanvas"; +@import "~bootstrap/scss/placeholders"; + +/* ----------------------------------------------------- Plugins ---------------------------------------------------- */ + +@import '~semantic-ui-css/components/flag.min.css'; +@import '~glightbox/dist/css/glightbox.min.css'; + +// ------------------------------------------------ Temporary imports ----------------------------------------------- // + +@import './custom'; \ No newline at end of file diff --git a/behat.yml.dist b/behat.yml.dist index 02f79f2..25a93c6 100644 --- a/behat.yml.dist +++ b/behat.yml.dist @@ -2,6 +2,12 @@ imports: - vendor/sylius/sylius/src/Sylius/Behat/Resources/config/suites.yml default: + formatters: + pretty: + verbose: true + paths: false + snippets: false + extensions: DMore\ChromeExtension\Behat\ServiceContainer\ChromeExtension: ~ @@ -22,6 +28,10 @@ default: chrome: api_url: http://127.0.0.1:9222 validate_certificate: false + chrome_headless_second_session: + chrome: + api_url: http://127.0.0.1:9222 + validate_certificate: false chrome: selenium2: browser: chrome @@ -53,40 +63,6 @@ default: paths: - "vendor/sylius/sylius/features" -docker: - extensions: - Behat\MinkExtension: - files_path: "%paths.base%/vendor/sylius/sylius/src/Sylius/Behat/Resources/fixtures/" - base_url: "http://php:8080/" - default_session: symfony - javascript_session: chrome_headless - sessions: - symfony: - symfony: ~ - chrome_headless: - chrome: - api_url: http://chrome:9222 - validate_certificate: false - chrome_docker: - chrome: - api_url: http://chrome:9222 - validate_certificate: false - chrome: - selenium2: - browser: chrome - capabilities: - browserName: chrome - browser: chrome - version: "" - marionette: null # https://github.com/Behat/MinkExtension/pull/311 - chrome: - switches: - - "start-fullscreen" - - "start-maximized" - - "no-sandbox" - extra_capabilities: - unexpectedAlertBehaviour: accept - firefox: - selenium2: - browser: firefox - show_auto: false + gherkin: + filters: + tags: "~@todo&&~@cli" # CLI is excluded as it registers an error handler that mutes fatal errors diff --git a/bin/create_node_symlink.php b/bin/create_node_symlink.php deleted file mode 100644 index 10d69b4..0000000 --- a/bin/create_node_symlink.php +++ /dev/null @@ -1,45 +0,0 @@ - `' . NODE_MODULES_FOLDER_NAME . '` already exists as a link or folder, keeping existing as may be intentional.' . PHP_EOL; - exit(0); - } else { - echo '> Invalid symlink `' . NODE_MODULES_FOLDER_NAME . '` detected, recreating...' . PHP_EOL; - if (!@unlink(NODE_MODULES_FOLDER_NAME)) { - echo '> Could not delete file `' . NODE_MODULES_FOLDER_NAME . '`.' . PHP_EOL; - exit(1); - } - } -} - -/* try to create the symlink using PHP internals... */ -$success = @symlink(PATH_TO_NODE_MODULES, NODE_MODULES_FOLDER_NAME); - -/* if case it has failed, but OS is Windows... */ -if (!$success && strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') { - /* ...then try a different approach which does not require elevated permissions and folder to exist */ - echo '> This system is running Windows, creation of links requires elevated privileges,' . PHP_EOL; - echo '> and target path to exist. Fallback to NTFS Junction:' . PHP_EOL; - exec(sprintf('mklink /J %s %s 2> NUL', NODE_MODULES_FOLDER_NAME, PATH_TO_NODE_MODULES), $output, $returnCode); - $success = $returnCode === 0; - if (!$success) { - echo '> Failed o create the required symlink' . PHP_EOL; - exit(2); - } -} - -$path = @readlink(NODE_MODULES_FOLDER_NAME); -/* check if link points to the intended directory */ -if ($path && realpath($path) === realpath(PATH_TO_NODE_MODULES)) { - echo '> Successfully created the symlink.' . PHP_EOL; - exit(0); -} - -echo '> Failed to create the symlink to `' . NODE_MODULES_FOLDER_NAME . '`.' . PHP_EOL; -exit(3); diff --git a/composer.json b/composer.json index 6a35586..4d1d832 100644 --- a/composer.json +++ b/composer.json @@ -1,22 +1,22 @@ { "name": "sylius/bootstrap-theme", "type": "sylius-plugin", - "keywords": ["sylius", "sylius-plugin"], + "keywords": ["sylius", "sylius-plugin", "sylius-theme"], "description": "Bootstrap Theme for Sylius", "license": "MIT", "authors": [ { - "name": "Szymon Kulczyński", - "email": "szymon.kulczynski@sylius.com" + "name": "Community contributions", + "homepage": "https://github.com/SyliusCrafts/BootstrapTheme/graphs/contributors" } ], "require": { - "php": "^7.4 || ^8.0", - "sylius/sylius": "~1.8.0 || ~1.9.0 || ~1.10.0 || ~1.11.0 || ~1.12.0", + "php": "^8.0", + "sylius/sylius": "1.12.*", "symfony/webpack-encore-bundle": "^1.12" }, "require-dev": { - "behat/behat": "^3.6.1", + "behat/behat": "^3.13.0", "behat/mink-selenium2-driver": "^1.4", "dmore/behat-chrome-extension": "^1.3", "dmore/chrome-mink-driver": "^2.7", @@ -29,8 +29,7 @@ "friends-of-behat/symfony-extension": "^2.1", "friends-of-behat/variadic-extension": "^1.3", "friendsofsymfony/oauth-server-bundle": "^1.6 || >2.0.0-alpha.0 ^2.0@dev", - "friendsoftwig/twigcs": "^4.0 || ^5.0", - "sensiolabs/security-checker": "^6.0", + "friendsoftwig/twigcs": "^6.4", "sylius-labs/coding-standard": "^4.0", "symfony/browser-kit": "^5.4", "symfony/debug-bundle": "^5.4", @@ -41,16 +40,15 @@ }, "autoload-dev": { "psr-4": { - "Tests\\Acme\\SyliusExamplePlugin\\": "tests/" - }, - "classmap": ["tests/Application/Kernel.php"] + "Tests\\BootstrapTheme\\": "tests/PHPUnit/" + } }, "extra": { "sylius-theme": { "title": "Sylius Bootstrap Theme" }, "branch-alias": { - "dev-master": "0.8-dev" + "dev-master": "1.0-dev" } }, "config": { @@ -59,16 +57,5 @@ "dealerdirect/phpcodesniffer-composer-installer": true, "symfony/thanks": true } - }, - "scripts": { - "post-install-cmd": [ - "php bin/create_node_symlink.php" - ], - "post-update-cmd": [ - "php bin/create_node_symlink.php" - ], - "post-create-project-cmd": [ - "php bin/create_node_symlink.php" - ] } } diff --git a/docker-compose.yml b/docker-compose.yml deleted file mode 100644 index 596f06e..0000000 --- a/docker-compose.yml +++ /dev/null @@ -1,64 +0,0 @@ -version: '3.4' - -services: - php: - build: - context: . - volumes: - - .:/srv/sylius:rw - environment: - - COMPOSER_HOME=/tmp/composer - - APP_ENV=test - - APP_SECRET=EDITME - - DATABASE_URL=mysql://sylius:nopassword@mysql/sylius - - MAILER_URL=smtp://mailhog:1025 - - PHP_DATE_TIMEZONE=${PHP_DATE_TIMEZONE:-UTC} - depends_on: - - mysql - ports: - - "8080:8080" - - mysql: - image: percona:5.7 - environment: - - MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD:-nopassword} - - MYSQL_DATABASE=sylius - - MYSQL_USER=sylius - - MYSQL_PASSWORD=${MYSQL_PASSWORD:-nopassword} - volumes: - - mysql-data:/var/lib/mysql:rw - # you may use a bind-mounted host directory instead, so that it is harder to accidentally remove the volume and lose all your data! - # - ./docker/mysql/data:/var/lib/mysql:rw,delegated - ports: - - "3306:3306" - - nodejs: - image: node:10 - tty: true - depends_on: - - php - environment: - - PHP_HOST=php - - PHP_PORT=9000 - working_dir: /srv/sylius - volumes: - - ./:/srv/sylius:rw,cached - - mailhog: - # do not use in production! - image: mailhog/mailhog:latest - environment: - - MH_STORAGE=maildir - # volumes: - # - ./docker/mailhog/maildir:/maildir:rw,delegated - ports: - - "8025:8025" - - chrome: - image: zenika/alpine-chrome:latest - command: [ chromium-browser, "--headless", "--disable-gpu", "--no-sandbox", "--remote-debugging-address=0.0.0.0", "--remote-debugging-port=9222" ] - ports: - - "9222:9222" - -volumes: - mysql-data: diff --git a/docs/cart-dropdown.png b/docs/cart-dropdown.png new file mode 100644 index 0000000..8d1bc5f Binary files /dev/null and b/docs/cart-dropdown.png differ diff --git a/docs/cart-preview.png b/docs/cart-preview.png new file mode 100644 index 0000000..5184c4f Binary files /dev/null and b/docs/cart-preview.png differ diff --git a/docs/cart.png b/docs/cart.png deleted file mode 100644 index e2a75f9..0000000 Binary files a/docs/cart.png and /dev/null differ diff --git a/docs/category.png b/docs/category.png new file mode 100644 index 0000000..2ebde8c Binary files /dev/null and b/docs/category.png differ diff --git a/docs/checkout-1.png b/docs/checkout-1.png new file mode 100644 index 0000000..25f3db9 Binary files /dev/null and b/docs/checkout-1.png differ diff --git a/docs/checkout-2.png b/docs/checkout-2.png new file mode 100644 index 0000000..913e7c7 Binary files /dev/null and b/docs/checkout-2.png differ diff --git a/docs/checkout-3.png b/docs/checkout-3.png new file mode 100644 index 0000000..d8fd3cb Binary files /dev/null and b/docs/checkout-3.png differ diff --git a/docs/checkout-4.png b/docs/checkout-4.png new file mode 100644 index 0000000..b5d3c85 Binary files /dev/null and b/docs/checkout-4.png differ diff --git a/docs/checkout-5.png b/docs/checkout-5.png new file mode 100644 index 0000000..d12f615 Binary files /dev/null and b/docs/checkout-5.png differ diff --git a/docs/checkout-bar.png b/docs/checkout-bar.png deleted file mode 100644 index b1390b7..0000000 Binary files a/docs/checkout-bar.png and /dev/null differ diff --git a/docs/edit-channel-page.png b/docs/edit-channel-page.png deleted file mode 100644 index 8fb1cfb..0000000 Binary files a/docs/edit-channel-page.png and /dev/null differ diff --git a/docs/homepage-preview.png b/docs/homepage-preview.png new file mode 100644 index 0000000..fbb8528 Binary files /dev/null and b/docs/homepage-preview.png differ diff --git a/docs/homepage-sections.png b/docs/homepage-sections.png new file mode 100644 index 0000000..5ac13d8 Binary files /dev/null and b/docs/homepage-sections.png differ diff --git a/docs/homepage.png b/docs/homepage.png deleted file mode 100644 index 1a564d2..0000000 Binary files a/docs/homepage.png and /dev/null differ diff --git a/docs/product-options.png b/docs/product-options.png new file mode 100644 index 0000000..d1e9b88 Binary files /dev/null and b/docs/product-options.png differ diff --git a/docs/product-page.png b/docs/product-page.png deleted file mode 100644 index 8a1066d..0000000 Binary files a/docs/product-page.png and /dev/null differ diff --git a/docs/product-promotions.png b/docs/product-promotions.png new file mode 100644 index 0000000..caa4f2e Binary files /dev/null and b/docs/product-promotions.png differ diff --git a/docs/user-dashboard.png b/docs/user-dashboard.png new file mode 100644 index 0000000..bfcd4dc Binary files /dev/null and b/docs/user-dashboard.png differ diff --git a/docs/user-dropdown.png b/docs/user-dropdown.png new file mode 100644 index 0000000..2d6d868 Binary files /dev/null and b/docs/user-dropdown.png differ diff --git a/docs/user-order-history.png b/docs/user-order-history.png new file mode 100644 index 0000000..4a347cd Binary files /dev/null and b/docs/user-order-history.png differ diff --git a/ecs.php b/ecs.php deleted file mode 100644 index 6f57bba..0000000 --- a/ecs.php +++ /dev/null @@ -1,10 +0,0 @@ -import('vendor/sylius-labs/coding-standard/ecs.php'); -}; diff --git a/tests/Application/config/secrets/dev/.gitignore b/install/Application/.gitignore similarity index 100% rename from tests/Application/config/secrets/dev/.gitignore rename to install/Application/.gitignore diff --git a/package.json b/package.json new file mode 100644 index 0000000..c693226 --- /dev/null +++ b/package.json @@ -0,0 +1,10 @@ +{ + "name": "sylius-bootstrap-theme", + "license": "MIT", + "scripts": { + "lint": "eslint -c .eslintrc.cjs ./assets" + }, + "devDependencies": { + "eslint": "^8.56.0" + } +} diff --git a/phpunit.xml.dist b/phpunit.xml.dist new file mode 100644 index 0000000..ba31acd --- /dev/null +++ b/phpunit.xml.dist @@ -0,0 +1,22 @@ + + + + + + vendor/sylius/bootstrap-theme/tests/PHPUnit + + + + + + + + + + + + + diff --git a/templates/bundles/SyliusShopBundle/Account/AddressBook/_defaultAddress.html.twig b/templates/bundles/SyliusShopBundle/Account/AddressBook/_defaultAddress.html.twig new file mode 100644 index 0000000..49a577e --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Account/AddressBook/_defaultAddress.html.twig @@ -0,0 +1,21 @@ +
    +
    + {% include '@SyliusShop/Common/_address.html.twig' with {'address': address} %} +
    + + +
    diff --git a/templates/bundles/SyliusShopBundle/Account/AddressBook/_defaultAddressForm.html.twig b/templates/bundles/SyliusShopBundle/Account/AddressBook/_defaultAddressForm.html.twig new file mode 100644 index 0000000..0b1f809 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Account/AddressBook/_defaultAddressForm.html.twig @@ -0,0 +1,9 @@ +{% set id = app.request.attributes.get('id') %} + +{{ form_start(form, {'action': path('sylius_shop_account_address_book_set_as_default', {'id': id}), 'method': 'PATCH'}) }} + + +{{ form_row(form._token) }} +{{ form_end(form, {'render_rest': false}) }} diff --git a/templates/bundles/SyliusShopBundle/Account/AddressBook/_item.html.twig b/templates/bundles/SyliusShopBundle/Account/AddressBook/_item.html.twig new file mode 100644 index 0000000..0aea94b --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Account/AddressBook/_item.html.twig @@ -0,0 +1,20 @@ +
    +
    + {% include '@SyliusShop/Common/_address.html.twig' with {'address': address} %} +
    + + +
    diff --git a/SyliusShopBundle/views/Account/AddressBook/create.html.twig b/templates/bundles/SyliusShopBundle/Account/AddressBook/create.html.twig similarity index 59% rename from SyliusShopBundle/views/Account/AddressBook/create.html.twig rename to templates/bundles/SyliusShopBundle/Account/AddressBook/create.html.twig index 4149dd1..619d800 100644 --- a/SyliusShopBundle/views/Account/AddressBook/create.html.twig +++ b/templates/bundles/SyliusShopBundle/Account/AddressBook/create.html.twig @@ -13,19 +13,19 @@ {{ sylius_template_event('sylius.shop.account.address_book.create.after_content_header', {'address': address}) }} {{ form_start(form, {'action': path('sylius_shop_account_address_book_create'), 'attr': {'class': 'loadable', 'novalidate': 'novalidate'}}) }} - {% include '@SyliusShop/Common/Form/_address.html.twig' with {'form': form} %} -
    - -
    - -
    + {% include '@SyliusShop/Common/Form/_address.html.twig' with {'form': form} %} +
    + +
    + +
    +
    {{ sylius_template_event('sylius.shop.account.address_book.create.form', {'address': address}) }} diff --git a/SyliusShopBundle/views/Account/AddressBook/index.html.twig b/templates/bundles/SyliusShopBundle/Account/AddressBook/index.html.twig similarity index 81% rename from SyliusShopBundle/views/Account/AddressBook/index.html.twig rename to templates/bundles/SyliusShopBundle/Account/AddressBook/index.html.twig index 23f9386..a0214b9 100644 --- a/SyliusShopBundle/views/Account/AddressBook/index.html.twig +++ b/templates/bundles/SyliusShopBundle/Account/AddressBook/index.html.twig @@ -24,17 +24,17 @@
    {% if addresses|length > 0 %} -
    +
    {% set default_address = (sylius.customer.defaultAddress) %} {% if default_address is not null %} -
    +
    {% include '@SyliusShop/Account/AddressBook/_defaultAddress.html.twig' with {'address': default_address} %}
    {% endif %} - {% for address in addresses|filter(address => address.id != default_address.id or default_address is null) %} -
    + {% for address in addresses|filter(address => default_address is null or address.id != default_address.id) %} +
    {% include '@SyliusShop/Account/AddressBook/_item.html.twig' %}
    {% endfor %} diff --git a/templates/bundles/SyliusShopBundle/Account/AddressBook/layout.html.twig b/templates/bundles/SyliusShopBundle/Account/AddressBook/layout.html.twig new file mode 100644 index 0000000..e469b81 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Account/AddressBook/layout.html.twig @@ -0,0 +1,7 @@ +{% extends '@SyliusShop/Account/layout.html.twig' %} +{% import '@SyliusShop/Common/Macro/breadcrumbs.html.twig' as breadcrumbs %} + +{% block breadcrumb breadcrumbs.standard([ + {'link': path('sylius_shop_account_dashboard'), 'label': 'sylius.ui.my_account'|trans}, + {'label': 'sylius.ui.address_book'|trans} +]) %} diff --git a/SyliusShopBundle/views/Account/AddressBook/update.html.twig b/templates/bundles/SyliusShopBundle/Account/AddressBook/update.html.twig similarity index 100% rename from SyliusShopBundle/views/Account/AddressBook/update.html.twig rename to templates/bundles/SyliusShopBundle/Account/AddressBook/update.html.twig diff --git a/SyliusShopBundle/views/Account/Menu/_content.html.twig b/templates/bundles/SyliusShopBundle/Account/Menu/_content.html.twig similarity index 100% rename from SyliusShopBundle/views/Account/Menu/_content.html.twig rename to templates/bundles/SyliusShopBundle/Account/Menu/_content.html.twig diff --git a/SyliusShopBundle/views/Account/Order/Grid/Action/pay.html.twig b/templates/bundles/SyliusShopBundle/Account/Order/Grid/Action/pay.html.twig similarity index 100% rename from SyliusShopBundle/views/Account/Order/Grid/Action/pay.html.twig rename to templates/bundles/SyliusShopBundle/Account/Order/Grid/Action/pay.html.twig diff --git a/SyliusShopBundle/views/Account/Order/Grid/Field/address.html.twig b/templates/bundles/SyliusShopBundle/Account/Order/Grid/Field/address.html.twig similarity index 100% rename from SyliusShopBundle/views/Account/Order/Grid/Field/address.html.twig rename to templates/bundles/SyliusShopBundle/Account/Order/Grid/Field/address.html.twig diff --git a/SyliusShopBundle/views/Account/Order/Grid/Field/number.html.twig b/templates/bundles/SyliusShopBundle/Account/Order/Grid/Field/number.html.twig similarity index 100% rename from SyliusShopBundle/views/Account/Order/Grid/Field/number.html.twig rename to templates/bundles/SyliusShopBundle/Account/Order/Grid/Field/number.html.twig diff --git a/SyliusShopBundle/views/Account/Order/Grid/Field/total.html.twig b/templates/bundles/SyliusShopBundle/Account/Order/Grid/Field/total.html.twig similarity index 100% rename from SyliusShopBundle/views/Account/Order/Grid/Field/total.html.twig rename to templates/bundles/SyliusShopBundle/Account/Order/Grid/Field/total.html.twig diff --git a/templates/bundles/SyliusShopBundle/Account/Order/Index/_breadcrumb.html.twig b/templates/bundles/SyliusShopBundle/Account/Order/Index/_breadcrumb.html.twig new file mode 100644 index 0000000..608c207 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Account/Order/Index/_breadcrumb.html.twig @@ -0,0 +1,6 @@ +{% import '@SyliusShop/Common/Macro/breadcrumbs.html.twig' as breadcrumbs %} + +{% block breadcrumb breadcrumbs.standard([ + {'link': path('sylius_shop_account_dashboard'), 'label': 'sylius.ui.my_account'|trans}, + {'label': 'sylius.ui.order_history'|trans} +]) %} diff --git a/SyliusShopBundle/views/Account/Order/Index/_header.html.twig b/templates/bundles/SyliusShopBundle/Account/Order/Index/_header.html.twig similarity index 100% rename from SyliusShopBundle/views/Account/Order/Index/_header.html.twig rename to templates/bundles/SyliusShopBundle/Account/Order/Index/_header.html.twig diff --git a/SyliusShopBundle/views/Account/Order/Index/_subcontent.html.twig b/templates/bundles/SyliusShopBundle/Account/Order/Index/_subcontent.html.twig similarity index 100% rename from SyliusShopBundle/views/Account/Order/Index/_subcontent.html.twig rename to templates/bundles/SyliusShopBundle/Account/Order/Index/_subcontent.html.twig diff --git a/templates/bundles/SyliusShopBundle/Account/Order/Label/State/cancelled.html.twig b/templates/bundles/SyliusShopBundle/Account/Order/Label/State/cancelled.html.twig new file mode 100644 index 0000000..27ba54d --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Account/Order/Label/State/cancelled.html.twig @@ -0,0 +1,3 @@ + + {{ value|trans }} + diff --git a/templates/bundles/SyliusShopBundle/Account/Order/Label/State/fulfilled.html.twig b/templates/bundles/SyliusShopBundle/Account/Order/Label/State/fulfilled.html.twig new file mode 100644 index 0000000..7dc899e --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Account/Order/Label/State/fulfilled.html.twig @@ -0,0 +1,3 @@ + + {{ value|trans }} + diff --git a/templates/bundles/SyliusShopBundle/Account/Order/Label/State/new.html.twig b/templates/bundles/SyliusShopBundle/Account/Order/Label/State/new.html.twig new file mode 100644 index 0000000..d01173a --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Account/Order/Label/State/new.html.twig @@ -0,0 +1,3 @@ + + {{ value|trans }} + diff --git a/templates/bundles/SyliusShopBundle/Account/Order/Show/_breadcrumb.html.twig b/templates/bundles/SyliusShopBundle/Account/Order/Show/_breadcrumb.html.twig new file mode 100644 index 0000000..27a5003 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Account/Order/Show/_breadcrumb.html.twig @@ -0,0 +1,9 @@ +{% import '@SyliusShop/Common/Macro/breadcrumbs.html.twig' as breadcrumbs %} + +{% set order_label = "sylius.ui.order"|trans ~ ' #' ~ order.number ~ '' %} + +{% block breadcrumb breadcrumbs.standard([ + {'link': path('sylius_shop_account_dashboard'), 'label': 'sylius.ui.my_account'|trans}, + {'link': path('sylius_shop_account_order_index'), 'label': 'sylius.ui.order_history'|trans}, + {'label': order_label} +]) %} diff --git a/templates/bundles/SyliusShopBundle/Account/Order/Show/_header.html.twig b/templates/bundles/SyliusShopBundle/Account/Order/Show/_header.html.twig new file mode 100644 index 0000000..3bb5b1a --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Account/Order/Show/_header.html.twig @@ -0,0 +1,25 @@ +{% import '@SyliusUi/Macro/flags.html.twig' as flags %} + +{% import '@SyliusShop/Common/Macro/headers.html.twig' as headers %} + +{{ headers.default('sylius.ui.order'|trans ~ ' #' ~ order.number) }} + +
    +
    + {{ order.checkoutCompletedAt|format_date }} +
    +
    + {% include [('@SyliusShop/Account/Order/Label/State' ~ '/' ~ order.state ~ '.html.twig'), '@SyliusUi/Label/_default.html.twig'] with {'value': ('sylius.ui.' ~ order.state)|trans} %} +
    +
    + {{ order.currencyCode }} +
    +
    + {{ flags.fromLocaleCode(order.localeCode) }}{{ order.localeCode|locale_name }} +
    +
    + + +{% if order.paymentState in ['awaiting_payment'] %} + {{ 'sylius.ui.pay'|trans }} +{% endif %} diff --git a/SyliusShopBundle/views/Account/Order/index.html.twig b/templates/bundles/SyliusShopBundle/Account/Order/index.html.twig similarity index 100% rename from SyliusShopBundle/views/Account/Order/index.html.twig rename to templates/bundles/SyliusShopBundle/Account/Order/index.html.twig diff --git a/SyliusShopBundle/views/Account/Order/show.html.twig b/templates/bundles/SyliusShopBundle/Account/Order/show.html.twig similarity index 100% rename from SyliusShopBundle/views/Account/Order/show.html.twig rename to templates/bundles/SyliusShopBundle/Account/Order/show.html.twig diff --git a/SyliusShopBundle/views/Account/changePassword.html.twig b/templates/bundles/SyliusShopBundle/Account/changePassword.html.twig similarity index 75% rename from SyliusShopBundle/views/Account/changePassword.html.twig rename to templates/bundles/SyliusShopBundle/Account/changePassword.html.twig index 08f51ff..4c77c2a 100644 --- a/SyliusShopBundle/views/Account/changePassword.html.twig +++ b/templates/bundles/SyliusShopBundle/Account/changePassword.html.twig @@ -5,16 +5,12 @@ {% block title %}{{ 'sylius.ui.change_password'|trans }} | {{ parent() }}{% endblock %} {% import '@SyliusShop/Common/Macro/headers.html.twig' as headers %} +{% import '@SyliusShop/Common/Macro/breadcrumbs.html.twig' as breadcrumbs %} -{% block breadcrumb %} - -{% endblock %} +{% block breadcrumb breadcrumbs.standard([ + {link: path('sylius_shop_account_dashboard'), label: 'sylius.ui.my_account'|trans}, + {label: 'sylius.ui.change_password'|trans} +]) %} {% block subcontent %}
    diff --git a/templates/bundles/SyliusShopBundle/Account/dashboard.html.twig b/templates/bundles/SyliusShopBundle/Account/dashboard.html.twig new file mode 100644 index 0000000..f7a09c7 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Account/dashboard.html.twig @@ -0,0 +1,92 @@ +{% extends '@SyliusShop/Account/layout.html.twig' %} + +{% block title %} + {{ 'sylius.ui.my_account'|trans }} + | + {{ parent() }} +{% endblock %} + +{% import '@SyliusShop/Common/Macro/headers.html.twig' as headers %} +{% import "@SyliusShop/Common/Macro/icons.html.twig" as icons %} +{% import '@SyliusShop/Common/Macro/breadcrumbs.html.twig' as breadcrumbs %} + +{% block breadcrumb breadcrumbs.standard([ + {link: path('sylius_shop_account_dashboard'), label: 'sylius.ui.my_account'|trans}, + {label: 'sylius.ui.my_account'|trans} +]) %} + +{% block subcontent %} + {{ headers.default('sylius.ui.my_account'|trans, '', 'sylius.ui.manage_your_personal_information_and_preferences'|trans) }} + + {{ sylius_template_event('sylius.shop.account.dashboard.after_content_header', {'customer': customer}) }} + +
    + +
    + {{ customer.fullName }} + +
    +
    +
    {{ 'sylius.ui.email'|trans }}
    +
    + {{ customer.email }} + {% if not customer.user.verified %} +
    + + {{ 'sylius.ui.not_verified'|trans }} +
    + {% endif %} +
    +
    +
    +
    {{ 'sylius.ui.phone_number'|trans }}
    +
    {{ customer.phoneNumber }}
    +
    +
    +
    {{ 'sylius.ui.password'|trans }}
    +
    *********
    +
    +
    +
    + + + +
    + + {% if customer.defaultAddress %} +
    +
    + {{ 'sylius.ui.default_address'|trans }} + {% include '@SyliusShop/Common/_address.html.twig' with {'address': customer.defaultAddress} %} +
    + + +
    + {% endif %} + + {{ sylius_template_event('sylius.shop.account.dashboard.after_information', {'customer': customer}) }} + + +{% endblock %} diff --git a/SyliusShopBundle/views/Account/layout.html.twig b/templates/bundles/SyliusShopBundle/Account/layout.html.twig similarity index 71% rename from SyliusShopBundle/views/Account/layout.html.twig rename to templates/bundles/SyliusShopBundle/Account/layout.html.twig index ea46f57..874cdac 100644 --- a/SyliusShopBundle/views/Account/layout.html.twig +++ b/templates/bundles/SyliusShopBundle/Account/layout.html.twig @@ -1,14 +1,13 @@ {% extends '@SyliusShop/layout.html.twig' %} {% block content %} - {% block breadcrumb %} - {% endblock %} + {% block breadcrumb '' %} -
    -
    +
    +
    {{ sylius_template_event('sylius.shop.account.layout.menu') }}
    -
    +
    {{ sylius_template_event('sylius.shop.account.layout.before_subcontent') }} {% block subcontent %} diff --git a/SyliusShopBundle/views/Account/profileUpdate.html.twig b/templates/bundles/SyliusShopBundle/Account/profileUpdate.html.twig similarity index 76% rename from SyliusShopBundle/views/Account/profileUpdate.html.twig rename to templates/bundles/SyliusShopBundle/Account/profileUpdate.html.twig index d8b12c7..c947cac 100644 --- a/SyliusShopBundle/views/Account/profileUpdate.html.twig +++ b/templates/bundles/SyliusShopBundle/Account/profileUpdate.html.twig @@ -5,16 +5,12 @@ {% block title %}{{ 'sylius.ui.your_profile'|trans }} | {{ parent() }}{% endblock %} {% import '@SyliusShop/Common/Macro/headers.html.twig' as headers %} +{% import '@SyliusShop/Common/Macro/breadcrumbs.html.twig' as breadcrumbs %} -{% block breadcrumb %} - -{% endblock %} +{% block breadcrumb breadcrumbs.standard([ + {'link': path('sylius_shop_account_dashboard'), 'label': 'sylius.ui.my_account'|trans}, + {'label': 'sylius.ui.personal_information'|trans} +]) %} {% block subcontent %}
    @@ -24,7 +20,7 @@ {{ sylius_template_event('sylius.shop.account.profile.update.after_content_header', {'customer': customer, 'form': form}) }} - +
    {{ form_row(form.firstName) }}
    diff --git a/templates/bundles/SyliusShopBundle/Account/requestPasswordReset.html.twig b/templates/bundles/SyliusShopBundle/Account/requestPasswordReset.html.twig new file mode 100644 index 0000000..9d80960 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Account/requestPasswordReset.html.twig @@ -0,0 +1,32 @@ +{% extends '@SyliusShop/layout.html.twig' %} + +{% form_theme form '@SyliusShop/Form/theme.html.twig' %} + +{% block title %}{{ 'sylius.ui.reset_password'|trans }} | {{ parent() }}{% endblock %} + +{% import '@SyliusShop/Common/Macro/headers.html.twig' as headers %} + +{% block content %} + +
    +
    +

    {{ 'sylius.ui.reset_password'|trans }}

    +

    {{ 'sylius.ui.set_a_new_password_for_your_account'|trans }}

    + + {{ sylius_template_event('sylius.shop.request_password_reset_token.after_content_header') }} +
    + {{ form_start(form, {'action': path('sylius_shop_request_password_reset_token'), 'attr': {'class': 'loadable', 'novalidate': 'novalidate'}}) }} + {{ form_row(form.email, sylius_test_form_attribute('reset-email')) }} + + {{ sylius_template_event('sylius.shop.request_password_reset_token.form', {'form': form}) }} + + {{ form_row(form._token) }} + + {{ form_end(form, {'render_rest': false}) }} +
    +
    +
    + +{% endblock %} diff --git a/templates/bundles/SyliusShopBundle/Account/resetPassword.html.twig b/templates/bundles/SyliusShopBundle/Account/resetPassword.html.twig new file mode 100644 index 0000000..6459795 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Account/resetPassword.html.twig @@ -0,0 +1,25 @@ +{% extends '@SyliusShop/layout.html.twig' %} + +{% form_theme form '@SyliusShop/Form/theme.html.twig' %} + +{% block title %}{{ 'sylius.ui.reset_password'|trans }} | {{ parent() }}{% endblock %} + +{% import '@SyliusShop/Common/Macro/headers.html.twig' as headers %} + +{% block content %} +
    +
    +

    {{ 'sylius.ui.reset_password'|trans }}

    +

    {{ 'sylius.ui.set_a_new_password_for_your_account'|trans }}

    + +
    + {{ form_start(form, {'action': path('sylius_shop_password_reset', {'token': user.passwordResetToken}), 'attr': {'class': 'loadable', 'novalidate': 'novalidate'}}) }} + {{ form_row(form.password.first, {'label': 'sylius.form.user_reset_password.new'|trans}) }} + {{ form_row(form.password.second, {'label': 'sylius.form.user_reset_password.confirmation'|trans}) }} + {{ form_row(form._token) }} + + {{ form_end(form, {'render_rest': false}) }} +
    +
    +
    +{% endblock %} diff --git a/SyliusShopBundle/views/Cart/Summary/_checkout.html.twig b/templates/bundles/SyliusShopBundle/Cart/Summary/_checkout.html.twig similarity index 79% rename from SyliusShopBundle/views/Cart/Summary/_checkout.html.twig rename to templates/bundles/SyliusShopBundle/Cart/Summary/_checkout.html.twig index b007bc8..0c0afd6 100644 --- a/SyliusShopBundle/views/Cart/Summary/_checkout.html.twig +++ b/templates/bundles/SyliusShopBundle/Cart/Summary/_checkout.html.twig @@ -1,3 +1,3 @@ - + {{ 'sylius.ui.checkout'|trans }} diff --git a/SyliusShopBundle/views/Cart/Summary/_coupon.html.twig b/templates/bundles/SyliusShopBundle/Cart/Summary/_coupon.html.twig similarity index 62% rename from SyliusShopBundle/views/Cart/Summary/_coupon.html.twig rename to templates/bundles/SyliusShopBundle/Cart/Summary/_coupon.html.twig index 448539b..b5f1a78 100644 --- a/SyliusShopBundle/views/Cart/Summary/_coupon.html.twig +++ b/templates/bundles/SyliusShopBundle/Cart/Summary/_coupon.html.twig @@ -1,8 +1,6 @@
    {{ form_widget(form.promotionCoupon, sylius_test_form_attribute('cart-promotion-coupon-input')|sylius_merge_recursive({'attr': {'form': main_form, 'placeholder': 'sylius.ui.enter_your_code'|trans ~ '...'}})) }} -
    - -
    +
    diff --git a/templates/bundles/SyliusShopBundle/Cart/Summary/_header.html.twig b/templates/bundles/SyliusShopBundle/Cart/Summary/_header.html.twig new file mode 100644 index 0000000..711fe83 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Cart/Summary/_header.html.twig @@ -0,0 +1,16 @@ +{% import '@SyliusShop/Common/Macro/headers.html.twig' as headers %} + +
    +
    + {{ headers.default(header|trans, '', 'sylius.ui.edit_your_items_apply_coupon_or_proceed_to_the_checkout'|trans) }} +
    + +
    + + + +
    +
    diff --git a/templates/bundles/SyliusShopBundle/Cart/Summary/_item.html.twig b/templates/bundles/SyliusShopBundle/Cart/Summary/_item.html.twig new file mode 100644 index 0000000..cdca7af --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Cart/Summary/_item.html.twig @@ -0,0 +1,48 @@ +{% import "@SyliusShop/Common/Macro/money.html.twig" as money %} +{% import "@SyliusShop/Common/Macro/icons.html.twig" as icons %} + +{% set variant = item.variant %} +{% set product = variant.product %} +{% set original_price_to_display = sylius_order_item_original_price_to_display(item) %} + +
  • +
    +
    + {% include '@SyliusShop/Product/_mainImage.html.twig' with {'product': product, 'filter': 'sylius_shop_product_tiny_thumbnail'} %} +
    + +
    + {% include '@SyliusShop/Product/_info.html.twig' with {variant} %} + + +
    + +
    + {{ form_widget(form.quantity, {attr: {class: 'w-25'}}|merge(sylius_test_form_attribute('cart-item-quantity-input', item.productName))) }} + +
    + {{ money.convertAndFormat(item.subtotal) }} + +
    + {{ 'sylius.ui.unit_price'|trans }} + + {% if original_price_to_display is not null %} + + {{ money.convertAndFormat(original_price_to_display) }} + + {% endif %} + + {{ money.convertAndFormat(item.discountedUnitPrice) }} +
    +
    +
    +
    +
  • diff --git a/templates/bundles/SyliusShopBundle/Cart/Summary/_items.html.twig b/templates/bundles/SyliusShopBundle/Cart/Summary/_items.html.twig new file mode 100644 index 0000000..fefc8e1 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Cart/Summary/_items.html.twig @@ -0,0 +1,27 @@ +
    + {{ form_start(form, {'action': path('sylius_shop_cart_save'), 'attr': {'class': 'loadable', 'novalidate': 'novalidate', 'id': form.vars.id}}) }} + {{ form_errors(form) }} + + + {{ sylius_template_event('sylius.shop.cart.summary.items', {'cart': cart, 'form': form}) }} + +
      + {% for key, item in cart.items %} + {% include '@SyliusShop/Cart/Summary/_item.html.twig' with {'item': item, 'form': form.items[key], 'main_form': form.vars.id} %} + {% endfor %} +
    + +
    +
    + {% if form.promotionCoupon is defined %} + {{ sylius_template_event('sylius.shop.cart.coupon', {'cart': cart, 'form': form, 'main_form': form.vars.id}) }} + {% endif %} +
    +
    + {% include '@SyliusShop/Cart/Summary/_update.html.twig' with {'main_form': form.vars.id} %} +
    +
    + + {{ form_row(form._token) }} + {{ form_end(form, {'render_rest': false}) }} +
    diff --git a/SyliusShopBundle/views/Cart/Summary/_suggestions.html.twig b/templates/bundles/SyliusShopBundle/Cart/Summary/_suggestions.html.twig similarity index 100% rename from SyliusShopBundle/views/Cart/Summary/_suggestions.html.twig rename to templates/bundles/SyliusShopBundle/Cart/Summary/_suggestions.html.twig diff --git a/templates/bundles/SyliusShopBundle/Cart/Summary/_totals.html.twig b/templates/bundles/SyliusShopBundle/Cart/Summary/_totals.html.twig new file mode 100644 index 0000000..0d836ce --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Cart/Summary/_totals.html.twig @@ -0,0 +1,67 @@ +{% import "@SyliusShop/Common/Macro/money.html.twig" as money %} + +{% set items_subtotal = sylius_order_items_subtotal(cart) %} +{% set tax_included = sylius_order_tax_included(cart) %} +{% set tax_excluded = sylius_order_tax_excluded(cart) %} + +{% set item_class = 'list-style-none d-flex justify-content-between align-items-center py-3 border-top bg-transparent' %} + +
    +

    {{ 'sylius.ui.summary'|trans }}

    + + {{ sylius_template_event('sylius.shop.cart.summary.totals', {'cart': cart}) }} + +
      +
      + {{ 'sylius.ui.items_total'|trans }}: + {{ money.convertAndFormat(items_subtotal) }} +
      + + {% if cart.orderPromotionTotal %} +
      + {{ 'sylius.ui.discount'|trans }}: + {{ money.convertAndFormat(cart.orderPromotionTotal) }} +
      + {% endif %} + +
      + {{ 'sylius.ui.shipping_estimated_cost'|trans }}: + + {% if cart.getAdjustmentsTotal('shipping') > cart.shippingTotal %} + {{ money.convertAndFormat(cart.getAdjustmentsTotal('shipping')) }} + {% endif %} + {{ money.convertAndFormat(cart.shippingTotal) }} + +
      + +
      + {{ 'sylius.ui.taxes_total'|trans }}: + + + {% if not tax_included and not tax_excluded %} + {{ money.convertAndFormat(0) }} + {% endif %} + {% if tax_excluded %} + {{ money.convertAndFormat(tax_excluded) }} + {% endif %} + {% if tax_included and tax_excluded %}
      {% endif %} + + {% if tax_included %} + ({{ 'sylius.ui.included_in_price'|trans }}) {{ money.convertAndFormat(tax_included) }} + {% endif %} +
      +
      + +
      + {{ 'sylius.ui.order_total'|trans }}: + {{ money.convertAndFormat(cart.total) }} +
      + + {% if cart.currencyCode is not same as(sylius.currencyCode) %} +
      + {{ 'sylius.ui.base_currency_order_total'|trans }}: + {{ money.format(cart.total, cart.currencyCode) }} +
      + {% endif %} +
    +
    diff --git a/templates/bundles/SyliusShopBundle/Cart/Summary/_update.html.twig b/templates/bundles/SyliusShopBundle/Cart/Summary/_update.html.twig new file mode 100644 index 0000000..98e17ae --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Cart/Summary/_update.html.twig @@ -0,0 +1,6 @@ +{% import "@SyliusShop/Common/Macro/icons.html.twig" as icons %} + + diff --git a/templates/bundles/SyliusShopBundle/Cart/Widget/_button.html.twig b/templates/bundles/SyliusShopBundle/Cart/Widget/_button.html.twig new file mode 100644 index 0000000..5c5477b --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Cart/Widget/_button.html.twig @@ -0,0 +1,11 @@ +{% import "@SyliusShop/Common/Macro/money.html.twig" as money %} +{% import "@SyliusShop/Common/Macro/icons.html.twig" as icons %} + + diff --git a/templates/bundles/SyliusShopBundle/Cart/Widget/_popup.html.twig b/templates/bundles/SyliusShopBundle/Cart/Widget/_popup.html.twig new file mode 100644 index 0000000..590bfa9 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Cart/Widget/_popup.html.twig @@ -0,0 +1,35 @@ +{% import "@SyliusShop/Common/Macro/money.html.twig" as money %} + +{% if cart.empty %} +
    + {{ 'sylius.ui.your_cart_is_empty'|trans }}. +
    +{% else %} +
      + {% for item in cart.items %} + {% set variant = item.variant %} + {% set product = variant.product %} + +
    • +
      {% include '@SyliusShop/Product/_mainImage.html.twig' with {product, filter: 'sylius_shop_product_tiny_thumbnail'} %}
      +
      + {{ item.product }} +
      + {{ item.quantity }} x + {{ money.convertAndFormat(item.unitPrice) }} +
      +
      +
    • + {% endfor %} +
      + {{ 'sylius.ui.subtotal'|trans }}: + {{ money.convertAndFormat(cart.itemsTotal) }} +
      +
    + + +{% endif %} + diff --git a/SyliusShopBundle/views/Cart/_widget.html.twig b/templates/bundles/SyliusShopBundle/Cart/_widget.html.twig similarity index 77% rename from SyliusShopBundle/views/Cart/_widget.html.twig rename to templates/bundles/SyliusShopBundle/Cart/_widget.html.twig index 475c3dc..0af82be 100644 --- a/SyliusShopBundle/views/Cart/_widget.html.twig +++ b/templates/bundles/SyliusShopBundle/Cart/_widget.html.twig @@ -2,7 +2,7 @@
    {{ sylius_template_event('sylius.shop.cart.widget.button', {'cart': cart}) }} - diff --git a/SyliusShopBundle/views/Cart/summary.html.twig b/templates/bundles/SyliusShopBundle/Cart/summary.html.twig similarity index 66% rename from SyliusShopBundle/views/Cart/summary.html.twig rename to templates/bundles/SyliusShopBundle/Cart/summary.html.twig index 7c24567..d48cf99 100644 --- a/SyliusShopBundle/views/Cart/summary.html.twig +++ b/templates/bundles/SyliusShopBundle/Cart/summary.html.twig @@ -12,12 +12,14 @@ {% if not cart.empty %} {% include '@SyliusShop/Cart/Summary/_header.html.twig' %} -
    -
    - {{ sylius_template_event('sylius.shop.cart.items', {'cart': cart, 'form': form}) }} +
    +
    + {{ sylius_template_event('sylius.shop.cart.items', {cart, form}) }}
    -
    - {{ sylius_template_event('sylius.shop.cart.summary', {'cart': cart}) }} +
    +
    + {{ sylius_template_event('sylius.shop.cart.summary', {cart}) }} +
    diff --git a/SyliusShopBundle/views/Checkout/Address/_addressBookSelect.html.twig b/templates/bundles/SyliusShopBundle/Checkout/Address/_addressBookSelect.html.twig similarity index 87% rename from SyliusShopBundle/views/Checkout/Address/_addressBookSelect.html.twig rename to templates/bundles/SyliusShopBundle/Checkout/Address/_addressBookSelect.html.twig index 4ccbfee..06f8a9a 100644 --- a/SyliusShopBundle/views/Checkout/Address/_addressBookSelect.html.twig +++ b/templates/bundles/SyliusShopBundle/Checkout/Address/_addressBookSelect.html.twig @@ -1,6 +1,6 @@ {% if app.user is not empty and app.user.customer is not empty and app.user.customer.addresses|length > 0 %} diff --git a/templates/bundles/SyliusShopBundle/Checkout/Address/_form.html.twig b/templates/bundles/SyliusShopBundle/Checkout/Address/_form.html.twig new file mode 100644 index 0000000..538440f --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Checkout/Address/_form.html.twig @@ -0,0 +1,32 @@ +
    +

    {{ 'sylius.ui.billing_address'|trans }}

    + +
    +
    + {% include '@SyliusShop/Checkout/Address/_addressBookSelect.html.twig' %} +
    + + {% if form.customer is defined %} + {% include '@SyliusShop/Common/Form/_login.html.twig' with {'form': form.customer} %} + {% endif %} + + {% include '@SyliusShop/Common/Form/_address.html.twig' with {'form': form.billingAddress, 'order': order, 'type': 'billing'} %} + {{ form_row(form.differentShippingAddress, sylius_test_form_attribute('different-shipping-address')|sylius_merge_recursive({'attr': {'data-js-toggle': '[data-js-address-book="sylius-shipping-address"]'}})) }} + + {{ sylius_template_event('sylius.shop.checkout.address.billing_address_form', {'order': order}) }} +
    +
    + +
    +

    {{ 'sylius.ui.shipping_address'|trans }}

    + +
    +
    + {% include '@SyliusShop/Checkout/Address/_addressBookSelect.html.twig' %} +
    + + {% include '@SyliusShop/Common/Form/_address.html.twig' with {form: form.shippingAddress, order: order, type: 'shipping'} %} + + {{ sylius_template_event('sylius.shop.checkout.address.shipping_address_form', {'order': order}) }} +
    +
    diff --git a/templates/bundles/SyliusShopBundle/Checkout/Address/_navigation.html.twig b/templates/bundles/SyliusShopBundle/Checkout/Address/_navigation.html.twig new file mode 100644 index 0000000..b087f28 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Checkout/Address/_navigation.html.twig @@ -0,0 +1,8 @@ +
    + + {{ 'sylius.ui.back_to_store'|trans }} + + +
    diff --git a/templates/bundles/SyliusShopBundle/Checkout/Complete/_form.html.twig b/templates/bundles/SyliusShopBundle/Checkout/Complete/_form.html.twig new file mode 100644 index 0000000..d843b9b --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Checkout/Complete/_form.html.twig @@ -0,0 +1,3 @@ +
    + {{ form_row(form.notes, sylius_test_form_attribute('extra-notes')|merge({attr: {rows: 3}, row_attr: {class: 'mb-0'}})) }} +
    diff --git a/SyliusShopBundle/views/Checkout/Complete/_header.html.twig b/templates/bundles/SyliusShopBundle/Checkout/Complete/_header.html.twig similarity index 92% rename from SyliusShopBundle/views/Checkout/Complete/_header.html.twig rename to templates/bundles/SyliusShopBundle/Checkout/Complete/_header.html.twig index beecc78..48e6d63 100644 --- a/SyliusShopBundle/views/Checkout/Complete/_header.html.twig +++ b/templates/bundles/SyliusShopBundle/Checkout/Complete/_header.html.twig @@ -4,7 +4,7 @@ {{ 'sylius.ui.summary_of_your_order'|trans }} -

    +

    {{ order.currencyCode }} diff --git a/templates/bundles/SyliusShopBundle/Checkout/Complete/_navigation.html.twig b/templates/bundles/SyliusShopBundle/Checkout/Complete/_navigation.html.twig new file mode 100644 index 0000000..1ae1e15 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Checkout/Complete/_navigation.html.twig @@ -0,0 +1,5 @@ +

    + +
    diff --git a/templates/bundles/SyliusShopBundle/Checkout/SelectPayment/_choice.html.twig b/templates/bundles/SyliusShopBundle/Checkout/SelectPayment/_choice.html.twig new file mode 100644 index 0000000..2724d05 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Checkout/SelectPayment/_choice.html.twig @@ -0,0 +1,21 @@ + diff --git a/templates/bundles/SyliusShopBundle/Checkout/SelectPayment/_form.html.twig b/templates/bundles/SyliusShopBundle/Checkout/SelectPayment/_form.html.twig new file mode 100644 index 0000000..93e4986 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Checkout/SelectPayment/_form.html.twig @@ -0,0 +1,5 @@ +{% for payment_form in form.payments %} + {% include '@SyliusShop/Checkout/SelectPayment/_payment.html.twig' with {'form': payment_form} %} +{% else %} + {% include '@SyliusShop/Checkout/SelectPayment/_unavailable.html.twig' %} +{% endfor %} diff --git a/templates/bundles/SyliusShopBundle/Checkout/SelectPayment/_navigation.html.twig b/templates/bundles/SyliusShopBundle/Checkout/SelectPayment/_navigation.html.twig new file mode 100644 index 0000000..be0cfac --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Checkout/SelectPayment/_navigation.html.twig @@ -0,0 +1,16 @@ +{% set enabled = order.payments|length %} + +
    + {% if sylius_is_shipping_required(order) %} + + {{ 'sylius.ui.change_shipping_method'|trans }} + + {% else %} + + {{ 'sylius.ui.change_address'|trans }} + + {% endif %} + +
    diff --git a/templates/bundles/SyliusShopBundle/Checkout/SelectPayment/_payment.html.twig b/templates/bundles/SyliusShopBundle/Checkout/SelectPayment/_payment.html.twig new file mode 100644 index 0000000..2259afc --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Checkout/SelectPayment/_payment.html.twig @@ -0,0 +1,11 @@ +

    {{ 'sylius.ui.payment'|trans }} #{{ loop.index }}

    + +
    + {{ form_errors(form.method) }} + + {% for key, choice_form in form.method %} + {% include '@SyliusShop/Checkout/SelectPayment/_choice.html.twig' with {'form': choice_form, 'method': form.method.vars.choices[key].data} %} + {% else %} + {% include '@SyliusShop/Checkout/SelectPayment/_unavailable.html.twig' %} + {% endfor %} +
    diff --git a/SyliusShopBundle/views/Checkout/SelectPayment/_unavailable.html.twig b/templates/bundles/SyliusShopBundle/Checkout/SelectPayment/_unavailable.html.twig similarity index 71% rename from SyliusShopBundle/views/Checkout/SelectPayment/_unavailable.html.twig rename to templates/bundles/SyliusShopBundle/Checkout/SelectPayment/_unavailable.html.twig index b475a3a..a7475ca 100644 --- a/SyliusShopBundle/views/Checkout/SelectPayment/_unavailable.html.twig +++ b/templates/bundles/SyliusShopBundle/Checkout/SelectPayment/_unavailable.html.twig @@ -1,4 +1,4 @@

    {{ 'sylius.ui.warning'|trans }}

    -

    {{ 'sylius.ui.no_payment_methods_available'|trans }}.

    +

    {{ 'sylius.ui.no_payment_methods_available'|trans }}.

    diff --git a/templates/bundles/SyliusShopBundle/Checkout/SelectShipping/_choice.html.twig b/templates/bundles/SyliusShopBundle/Checkout/SelectShipping/_choice.html.twig new file mode 100644 index 0000000..23c7f03 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Checkout/SelectShipping/_choice.html.twig @@ -0,0 +1,24 @@ +{% import '@SyliusShop/Common/Macro/money.html.twig' as money %} + + diff --git a/templates/bundles/SyliusShopBundle/Checkout/SelectShipping/_form.html.twig b/templates/bundles/SyliusShopBundle/Checkout/SelectShipping/_form.html.twig new file mode 100644 index 0000000..3500af1 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Checkout/SelectShipping/_form.html.twig @@ -0,0 +1,5 @@ +{% for key, shipment in order.shipments %} + {% include '@SyliusShop/Checkout/SelectShipping/_shipment.html.twig' with {form: form.shipments[key]} %} +{% else %} + {% include '@SyliusShop/Checkout/SelectShipping/_unavailable.html.twig' %} +{% endfor %} diff --git a/templates/bundles/SyliusShopBundle/Checkout/SelectShipping/_navigation.html.twig b/templates/bundles/SyliusShopBundle/Checkout/SelectShipping/_navigation.html.twig new file mode 100644 index 0000000..a1f9237 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Checkout/SelectShipping/_navigation.html.twig @@ -0,0 +1,10 @@ +{% set enabled = order.shipments|length %} + +
    + + {{ 'sylius.ui.change_address'|trans }} + + +
    diff --git a/templates/bundles/SyliusShopBundle/Checkout/SelectShipping/_shipment.html.twig b/templates/bundles/SyliusShopBundle/Checkout/SelectShipping/_shipment.html.twig new file mode 100644 index 0000000..bbb58ad --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Checkout/SelectShipping/_shipment.html.twig @@ -0,0 +1,13 @@ +

    {{ 'sylius.ui.shipment'|trans }} #{{ loop.index }}

    + +
    + {{ form_errors(form.method) }} + + {% for key, choice_form in form.method %} + {% set fee = form.method.vars.shipping_costs[choice_form.vars.value] %} + {% set method = form.method.vars.choices[key].data %} + {% include '@SyliusShop/Checkout/SelectShipping/_choice.html.twig' with {'form': choice_form, 'method': method, 'fee': fee} %} + {% else %} + {% include '@SyliusShop/Checkout/SelectShipping/_unavailable.html.twig' %} + {% endfor %} +
    diff --git a/SyliusShopBundle/views/Checkout/SelectShipping/_unavailable.html.twig b/templates/bundles/SyliusShopBundle/Checkout/SelectShipping/_unavailable.html.twig similarity index 72% rename from SyliusShopBundle/views/Checkout/SelectShipping/_unavailable.html.twig rename to templates/bundles/SyliusShopBundle/Checkout/SelectShipping/_unavailable.html.twig index 1d7d206..3678ee8 100644 --- a/SyliusShopBundle/views/Checkout/SelectShipping/_unavailable.html.twig +++ b/templates/bundles/SyliusShopBundle/Checkout/SelectShipping/_unavailable.html.twig @@ -1,4 +1,4 @@

    {{ 'sylius.ui.warning'|trans }}

    -

    {{ 'sylius.ui.no_shipping_methods_available'|trans }}.

    +

    {{ 'sylius.ui.no_shipping_methods_available'|trans }}.

    diff --git a/SyliusShopBundle/views/Checkout/_header.html.twig b/templates/bundles/SyliusShopBundle/Checkout/_header.html.twig similarity index 68% rename from SyliusShopBundle/views/Checkout/_header.html.twig rename to templates/bundles/SyliusShopBundle/Checkout/_header.html.twig index 54597e5..3152b0c 100644 --- a/SyliusShopBundle/views/Checkout/_header.html.twig +++ b/templates/bundles/SyliusShopBundle/Checkout/_header.html.twig @@ -1,11 +1,15 @@
    - + + +
    {% if order.customer.id|default(null) is not null %} -
    {{ 'sylius.ui.checking_out_as'|trans }} {{ order.customer.fullName|default(order.customer.email) }}.
    +
    {{ 'sylius.ui.checking_out_as'|trans }} {{ order.customer.fullName|default(order.customer.email) }} + . +
    {% else %} {{ 'sylius.ui.sign_in'|trans }} {% endif %} diff --git a/templates/bundles/SyliusShopBundle/Checkout/_steps.html.twig b/templates/bundles/SyliusShopBundle/Checkout/_steps.html.twig new file mode 100644 index 0000000..5bbb2f4 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Checkout/_steps.html.twig @@ -0,0 +1,71 @@ +{% import "@SyliusShop/Common/Macro/icons.html.twig" as icons %} + +{% if active is not defined or active == 'address' %} + {% set steps = {address: 'active', select_shipping: 'disabled', select_payment: 'disabled', complete: 'disabled'} %} +{% elseif active == 'select_shipping' %} + {% set steps = {address: 'completed', select_shipping: 'active', select_payment: 'disabled', complete: 'disabled'} %} +{% elseif active == 'select_payment' %} + {% set steps = {address: 'completed', select_shipping: 'completed', select_payment: 'active', complete: 'disabled'} %} +{% else %} + {% set steps = {address: 'completed', select_shipping: 'completed', select_payment: 'completed', complete: 'active'} %} +{% endif %} + + +{% set order_requires_payment = sylius_is_payment_required(order) %} +{% set order_requires_shipping = sylius_is_shipping_required(order) %} + +{% set steps_count = 'four' %} +{% if not order_requires_payment and not order_requires_shipping %} + {% set steps_count = 'two' %} +{% elseif not order_requires_payment or not order_requires_shipping %} + {% set steps_count = 'three' %} +{% endif %} + + + +{% macro sep() %} +
    + + + +
    +{% endmacro %} diff --git a/templates/bundles/SyliusShopBundle/Checkout/_summary.html.twig b/templates/bundles/SyliusShopBundle/Checkout/_summary.html.twig new file mode 100644 index 0000000..9e1c5c4 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Checkout/_summary.html.twig @@ -0,0 +1,73 @@ +{% import "@SyliusShop/Common/Macro/money.html.twig" as money %} + +{% set items_subtotal = sylius_order_items_subtotal(order) %} +{% set tax_included = sylius_order_tax_included(order) %} +{% set tax_excluded = sylius_order_tax_excluded(order) %} + +
    +
      + {% for item in order.items %} + {% set variant = item.variant %} + {% set product = variant.product %} + +
    • +
      {% include '@SyliusShop/Product/_mainImage.html.twig' with {product, filter: 'sylius_shop_product_tiny_thumbnail'} %}
      +
      + {{ item.getVariant.product.name }} +
      + {{ item.quantity }} + x + + {{ money.convertAndFormat(item.unitPrice) }} +
      +
      +
      + {{ money.convertAndFormat(item.subtotal) }} +
      +
    • + {% endfor %} + +
      + {{ 'sylius.ui.items_total'|trans }}: + {{ money.convertAndFormat(items_subtotal) }} +
      + +
      + {{ 'sylius.ui.taxes_total'|trans }}: + {% if not tax_included and not tax_excluded %} +
      {{ money.convertAndFormat(0) }}
      + {% endif %} + {% if tax_excluded %} +
      {{ money.convertAndFormat(tax_excluded) }}
      + {% endif %} + {% if tax_included %} +
      + ({{ 'sylius.ui.included_in_price'|trans }}) + {{ money.convertAndFormat(tax_included) }} +
      + {% endif %} +
      + +
      + {{ 'sylius.ui.discount'|trans }}: + {{ money.convertAndFormat(order.orderPromotionTotal) }} +
      + +
      + {{ 'sylius.ui.shipping_estimated_cost'|trans }}: + + {% if order.getAdjustmentsTotal('shipping') > order.shippingTotal %} + + {{ money.convertAndFormat(order.getAdjustmentsTotal('shipping')) }} + + {% endif %} + {{ money.convertAndFormat(order.shippingTotal) }} + +
      + +
      + {{ 'sylius.ui.total'|trans }}: + {{ money.convertAndFormat(order.total) }} +
      +
    +
    diff --git a/SyliusShopBundle/views/Checkout/_support.html.twig b/templates/bundles/SyliusShopBundle/Checkout/_support.html.twig similarity index 58% rename from SyliusShopBundle/views/Checkout/_support.html.twig rename to templates/bundles/SyliusShopBundle/Checkout/_support.html.twig index f23ba71..54d59ba 100644 --- a/SyliusShopBundle/views/Checkout/_support.html.twig +++ b/templates/bundles/SyliusShopBundle/Checkout/_support.html.twig @@ -2,8 +2,8 @@

    +48 123 456 789

    {{ 'sylius.ui.need_assistance'|trans }} {{ 'sylius.ui.call_us'|trans }}
    - - - + + +
    diff --git a/SyliusShopBundle/views/Checkout/address.html.twig b/templates/bundles/SyliusShopBundle/Checkout/address.html.twig similarity index 60% rename from SyliusShopBundle/views/Checkout/address.html.twig rename to templates/bundles/SyliusShopBundle/Checkout/address.html.twig index 2a9e066..0d74217 100644 --- a/SyliusShopBundle/views/Checkout/address.html.twig +++ b/templates/bundles/SyliusShopBundle/Checkout/address.html.twig @@ -7,24 +7,24 @@ {% block content %} {{ sylius_template_event(['sylius.shop.checkout.address.steps', 'sylius.shop.checkout.steps'], _context) }} -
    -
    +
    +
    {{ sylius_template_event('sylius.shop.checkout.address.before_form', {'order': order}) }} {{ form_start(form, {'action': path('sylius_shop_checkout_address'), 'attr': {'class': 'loadable', 'novalidate': 'novalidate'}}) }} - {{ form_errors(form) }} - + {{ form_errors(form) }} + - {% include '@SyliusShop/Checkout/Address/_form.html.twig' %} + {% include '@SyliusShop/Checkout/Address/_form.html.twig' %} - {{ sylius_template_event('sylius.shop.checkout.address.before_navigation', {'order': order}) }} + {{ sylius_template_event('sylius.shop.checkout.address.before_navigation', {'order': order}) }} - {% include '@SyliusShop/Checkout/Address/_navigation.html.twig' %} + {% include '@SyliusShop/Checkout/Address/_navigation.html.twig' %} - {{ form_row(form._token) }} + {{ form_row(form._token) }} {{ form_end(form, {'render_rest': false}) }}
    -
    +
    {{ sylius_template_event(['sylius.shop.checkout.address.sidebar', 'sylius.shop.checkout.sidebar'], _context) }}
    diff --git a/SyliusShopBundle/views/Checkout/complete.html.twig b/templates/bundles/SyliusShopBundle/Checkout/complete.html.twig similarity index 63% rename from SyliusShopBundle/views/Checkout/complete.html.twig rename to templates/bundles/SyliusShopBundle/Checkout/complete.html.twig index b209cc3..28b8b62 100644 --- a/SyliusShopBundle/views/Checkout/complete.html.twig +++ b/templates/bundles/SyliusShopBundle/Checkout/complete.html.twig @@ -15,18 +15,18 @@ {% include '@SyliusShop/_flashes.html.twig' %} {{ form_start(form, {'action': path('sylius_shop_checkout_complete'), 'attr': {'class': 'loadable', 'novalidate': 'novalidate'}}) }} - {{ form_errors(form) }} - + {{ form_errors(form) }} + - {{ sylius_template_event('sylius.shop.checkout.complete.summary', _context) }} + {{ sylius_template_event('sylius.shop.checkout.complete.summary', _context) }} - {% include '@SyliusShop/Checkout/Complete/_form.html.twig' %} + {% include '@SyliusShop/Checkout/Complete/_form.html.twig' %} - {{ sylius_template_event('sylius.shop.checkout.complete.before_navigation', {'order': order}) }} + {{ sylius_template_event('sylius.shop.checkout.complete.before_navigation', {'order': order}) }} - {% include '@SyliusShop/Checkout/Complete/_navigation.html.twig' %} + {% include '@SyliusShop/Checkout/Complete/_navigation.html.twig' %} - {{ form_row(form._token) }} + {{ form_row(form._token) }} {{ form_end(form, {'render_rest': false}) }}
    {% endblock %} diff --git a/SyliusShopBundle/views/Checkout/layout.html.twig b/templates/bundles/SyliusShopBundle/Checkout/layout.html.twig similarity index 100% rename from SyliusShopBundle/views/Checkout/layout.html.twig rename to templates/bundles/SyliusShopBundle/Checkout/layout.html.twig diff --git a/SyliusShopBundle/views/Checkout/selectPayment.html.twig b/templates/bundles/SyliusShopBundle/Checkout/selectPayment.html.twig similarity index 61% rename from SyliusShopBundle/views/Checkout/selectPayment.html.twig rename to templates/bundles/SyliusShopBundle/Checkout/selectPayment.html.twig index fe8bad5..6ea556b 100644 --- a/SyliusShopBundle/views/Checkout/selectPayment.html.twig +++ b/templates/bundles/SyliusShopBundle/Checkout/selectPayment.html.twig @@ -7,23 +7,23 @@ {% block content %} {{ sylius_template_event(['sylius.shop.checkout.select_payment.steps', 'sylius.shop.checkout.steps'], _context|merge({'active': 'select_payment', 'orderTotal': order.total})) }} -
    -
    +
    +
    {{ sylius_template_event('sylius.shop.checkout.select_payment.before_form', {'order': order}) }} {{ form_start(form, {'action': path('sylius_shop_checkout_select_payment'), 'attr': {'class': 'loadable', 'novalidate': 'novalidate'}}) }} - {{ form_errors(form) }} - + {{ form_errors(form) }} + - {% include '@SyliusShop/Checkout/SelectPayment/_form.html.twig' %} + {% include '@SyliusShop/Checkout/SelectPayment/_form.html.twig' %} - {{ sylius_template_event('sylius.shop.checkout.select_payment.before_navigation', {'order': order}) }} - {% include '@SyliusShop/Checkout/SelectPayment/_navigation.html.twig' %} + {{ sylius_template_event('sylius.shop.checkout.select_payment.before_navigation', {'order': order}) }} + {% include '@SyliusShop/Checkout/SelectPayment/_navigation.html.twig' %} - {{ form_row(form._token) }} + {{ form_row(form._token) }} {{ form_end(form, {'render_rest': false}) }}
    -
    +
    {{ sylius_template_event(['sylius.shop.checkout.select_payment.sidebar', 'sylius.shop.checkout.sidebar'], _context) }}
    diff --git a/templates/bundles/SyliusShopBundle/Checkout/selectShipping.html.twig b/templates/bundles/SyliusShopBundle/Checkout/selectShipping.html.twig new file mode 100644 index 0000000..75b7036 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Checkout/selectShipping.html.twig @@ -0,0 +1,33 @@ +{% extends '@SyliusShop/Checkout/layout.html.twig' %} + +{% form_theme form '@SyliusShop/Form/theme.html.twig' %} + +{% block title %} + {{ 'sylius.ui.shipping'|trans }} | {{ parent() }} +{% endblock %} + +{% block content %} + {{ sylius_template_event(['sylius.shop.checkout.select_shipping.steps', 'sylius.shop.checkout.steps'], _context|merge({'active': 'select_shipping', 'orderTotal': order.total})) }} + +
    +
    + {{ sylius_template_event('sylius.shop.checkout.select_shipping.before_form', {'order': order}) }} + + {{ form_start(form, {'action': path('sylius_shop_checkout_select_shipping'), 'attr': {'class': 'loadable', 'novalidate': 'novalidate'}}) }} + {{ form_errors(form) }} + + + {% include '@SyliusShop/Checkout/SelectShipping/_form.html.twig' %} + + {{ sylius_template_event('sylius.shop.checkout.select_shipping.before_navigation', {'order': order}) }} + + {% include '@SyliusShop/Checkout/SelectShipping/_navigation.html.twig' %} + + {{ form_row(form._token) }} + {{ form_end(form, {'render_rest': false}) }} +
    +
    + {{ sylius_template_event(['sylius.shop.checkout.select_shipping.sidebar', 'sylius.shop.checkout.sidebar'], _context) }} +
    +
    +{% endblock %} diff --git a/SyliusShopBundle/views/Common/Form/_address.html.twig b/templates/bundles/SyliusShopBundle/Common/Form/_address.html.twig similarity index 77% rename from SyliusShopBundle/views/Common/Form/_address.html.twig rename to templates/bundles/SyliusShopBundle/Common/Form/_address.html.twig index 62b5b91..766bf40 100644 --- a/SyliusShopBundle/views/Common/Form/_address.html.twig +++ b/templates/bundles/SyliusShopBundle/Common/Form/_address.html.twig @@ -1,21 +1,24 @@ +{% set has_province = form.provinceCode is defined or form.provinceName is defined %} + {% if type is defined %} {% set type = type ~ '-' %} {% else %} {% set type = null %} {% endif %} -
    +
    {{ form_row(form.firstName, sylius_test_form_attribute(type ~ 'first-name')) }}
    {{ form_row(form.lastName, sylius_test_form_attribute(type ~ 'last-name')) }}
    + {{ form_row(form.company, sylius_test_form_attribute(type ~ 'company')) }} {{ form_row(form.street, sylius_test_form_attribute(type ~ 'street')) }} {% include '@SyliusShop/Common/Form/_countryCode.html.twig' with {'form': form.countryCode} %} -
    +
    {% if form.provinceCode is defined %} - {{ form_row(form.provinceCode, sylius_test_form_attribute('province-code')|sylius_merge_recursive({'attr': {'class': 'ui dropdown'}})) }} + {{ form_row(form.provinceCode, sylius_test_form_attribute('province-code')) }} {% elseif form.provinceName is defined %} {{ form_row(form.provinceName, sylius_test_form_attribute('province-name')) }} {% endif %} @@ -25,8 +28,9 @@ {{ form_errors(form) }} {% endif %} -
    +
    {{ form_row(form.city, sylius_test_form_attribute(type ~ 'city')) }}
    {{ form_row(form.postcode, sylius_test_form_attribute(type ~ 'postcode')) }}
    + {{ form_row(form.phoneNumber) }} diff --git a/SyliusShopBundle/views/Common/Form/_countryCode.html.twig b/templates/bundles/SyliusShopBundle/Common/Form/_countryCode.html.twig similarity index 100% rename from SyliusShopBundle/views/Common/Form/_countryCode.html.twig rename to templates/bundles/SyliusShopBundle/Common/Form/_countryCode.html.twig diff --git a/SyliusShopBundle/views/Common/Form/_login.html.twig b/templates/bundles/SyliusShopBundle/Common/Form/_login.html.twig similarity index 100% rename from SyliusShopBundle/views/Common/Form/_login.html.twig rename to templates/bundles/SyliusShopBundle/Common/Form/_login.html.twig diff --git a/SyliusShopBundle/views/Common/Form/_province.html.twig b/templates/bundles/SyliusShopBundle/Common/Form/_province.html.twig similarity index 100% rename from SyliusShopBundle/views/Common/Form/_province.html.twig rename to templates/bundles/SyliusShopBundle/Common/Form/_province.html.twig diff --git a/templates/bundles/SyliusShopBundle/Common/Macro/breadcrumbs.html.twig b/templates/bundles/SyliusShopBundle/Common/Macro/breadcrumbs.html.twig new file mode 100644 index 0000000..c1442c9 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Common/Macro/breadcrumbs.html.twig @@ -0,0 +1,33 @@ +{% macro standard(items, options) %} + {% set attr = options.attr|default({}) %} + +{% endmacro %} + +{% block attributes -%} + {%- for attrname, attrvalue in attr -%} + {{- " " -}} + {%- if attrname in ['placeholder', 'title'] -%} + {{- attrname }}="{{ translation_domain is same as(false) or attrvalue is null ? attrvalue : attrvalue|trans(attr_translation_parameters, translation_domain) }}" + {%- elseif attrvalue is same as(true) -%} + {{- attrname }}="{{ attrname }}" + {%- elseif attrvalue is not same as(false) -%} + {{- attrname }}="{{ attrvalue }}" + {%- endif -%} + {%- endfor -%} +{%- endblock attributes -%} diff --git a/SyliusShopBundle/views/Common/Macro/buttons.html.twig b/templates/bundles/SyliusShopBundle/Common/Macro/buttons.html.twig similarity index 98% rename from SyliusShopBundle/views/Common/Macro/buttons.html.twig rename to templates/bundles/SyliusShopBundle/Common/Macro/buttons.html.twig index 285a106..7ade908 100644 --- a/SyliusShopBundle/views/Common/Macro/buttons.html.twig +++ b/templates/bundles/SyliusShopBundle/Common/Macro/buttons.html.twig @@ -57,7 +57,7 @@ - + {% endmacro %} @@ -67,6 +67,6 @@ - + {% endmacro %} diff --git a/SyliusShopBundle/views/Common/Macro/headers.html.twig b/templates/bundles/SyliusShopBundle/Common/Macro/headers.html.twig similarity index 77% rename from SyliusShopBundle/views/Common/Macro/headers.html.twig rename to templates/bundles/SyliusShopBundle/Common/Macro/headers.html.twig index a4563ea..2af3f40 100644 --- a/SyliusShopBundle/views/Common/Macro/headers.html.twig +++ b/templates/bundles/SyliusShopBundle/Common/Macro/headers.html.twig @@ -8,6 +8,6 @@ {% if subheader is not empty %} -

    {{ subheader|raw }}

    +

    {{ subheader|raw }}

    {% endif %} {% endmacro %} diff --git a/SyliusShopBundle/views/Common/Macro/icons.html.twig b/templates/bundles/SyliusShopBundle/Common/Macro/icons.html.twig similarity index 52% rename from SyliusShopBundle/views/Common/Macro/icons.html.twig rename to templates/bundles/SyliusShopBundle/Common/Macro/icons.html.twig index 90a9d7f..be9f2c0 100644 --- a/SyliusShopBundle/views/Common/Macro/icons.html.twig +++ b/templates/bundles/SyliusShopBundle/Common/Macro/icons.html.twig @@ -4,65 +4,75 @@ {% macro cart(extraClass) %} {% import _self as icons %} - {{ icons.base('fas fa-shopping-bag', extraClass) }} + {{ icons.base('fa-solid fa-shopping-bag', extraClass) }} {% endmacro %} {% macro star(extraClass) %} {% import _self as icons %} - {{ icons.base('fas fa-star', extraClass) }} + {{ icons.base('fa-solid fa-star', extraClass) }} {% endmacro %} {% macro success(extraClass) %} {% import _self as icons %} - {{ icons.base('fas fa-check', extraClass) }} + {{ icons.base('fa-solid fa-check', extraClass) }} {% endmacro %} {% macro danger(extraClass) %} {% import _self as icons %} - {{ icons.base('fas fa-exclamation-circle', extraClass) }} + {{ icons.base('fa-solid fa-exclamation-circle', extraClass) }} {% endmacro %} {% macro info(extraClass) %} {% import _self as icons %} - {{ icons.base('fas fa-info-circle', extraClass) }} + {{ icons.base('fa-solid fa-info-circle', extraClass) }} {% endmacro %} {% macro arrowUp(extraClass) %} {% import _self as icons %} - {{ icons.base('fas fa-chevron-up', extraClass) }} + {{ icons.base('fa-solid fa-chevron-up', extraClass) }} {% endmacro %} {% macro address(extraClass) %} {% import _self as icons %} - {{ icons.base('fas fa-map-marker-alt', extraClass) }} + {{ icons.base('fa-solid fa-map-marker-alt', extraClass) }} {% endmacro %} {% macro transport(extraClass) %} {% import _self as icons %} - {{ icons.base('fas fa-shuttle-van', extraClass) }} + {{ icons.base('fa-solid fa-shuttle-van', extraClass) }} {% endmacro %} {% macro creditCard(extraClass) %} {% import _self as icons %} - {{ icons.base('fas fa-credit-card', extraClass) }} + {{ icons.base('fa-solid fa-credit-card', extraClass) }} {% endmacro %} {% macro flag(extraClass) %} {% import _self as icons %} - {{ icons.base('fas fa-flag', extraClass) }} + {{ icons.base('fa-solid fa-flag', extraClass) }} {% endmacro %} {% macro times(extraClass) %} {% import _self as icons %} - {{ icons.base('fas fa-times', extraClass) }} + {{ icons.base('fa-solid fa-times', extraClass) }} {% endmacro %} {% macro reload(extraClass) %} {% import _self as icons %} - {{ icons.base('fas fa-sync-alt', extraClass) }} + {{ icons.base('fa-solid fa-sync-alt', extraClass) }} {% endmacro %} {% macro plus(extraClass) %} {% import _self as icons %} - {{ icons.base('fas fa-plus', extraClass) }} + {{ icons.base('fa-solid fa-plus', extraClass) }} +{% endmacro %} + +{% macro edit(extraClass) %} + {% import _self as icons %} + {{ icons.base('fa-solid fa-pen', extraClass) }} +{% endmacro %} + +{% macro lock(extraClass) %} + {% import _self as icons %} + {{ icons.base('fa-solid fa-lock', extraClass) }} {% endmacro %} diff --git a/SyliusShopBundle/views/Common/Macro/labels.html.twig b/templates/bundles/SyliusShopBundle/Common/Macro/labels.html.twig similarity index 80% rename from SyliusShopBundle/views/Common/Macro/labels.html.twig rename to templates/bundles/SyliusShopBundle/Common/Macro/labels.html.twig index 81eb054..2683d97 100644 --- a/SyliusShopBundle/views/Common/Macro/labels.html.twig +++ b/templates/bundles/SyliusShopBundle/Common/Macro/labels.html.twig @@ -1,5 +1,5 @@ {% macro default(text) %} - {{ text|trans }} + {{ text|trans }} {% endmacro %} {% macro status(status) %} @@ -13,14 +13,14 @@ {% endmacro %} {% macro enabled() %} - + {{ 'sylius.ui.enabled'|trans }} {% endmacro %} {% macro disabled() %} - + {{ 'sylius.ui.disabled'|trans }} @@ -37,14 +37,14 @@ {% endmacro %} {% macro yes() %} - + {{ 'sylius.ui.yes_label'|trans }} {% endmacro %} {% macro no() %} - + {{ 'sylius.ui.no_label'|trans }} diff --git a/SyliusShopBundle/views/Common/Macro/messages.html.twig b/templates/bundles/SyliusShopBundle/Common/Macro/messages.html.twig similarity index 63% rename from SyliusShopBundle/views/Common/Macro/messages.html.twig rename to templates/bundles/SyliusShopBundle/Common/Macro/messages.html.twig index 0a4245d..9ab6a47 100644 --- a/SyliusShopBundle/views/Common/Macro/messages.html.twig +++ b/templates/bundles/SyliusShopBundle/Common/Macro/messages.html.twig @@ -1,15 +1,15 @@ {% macro default(message, icon, type, header) %} -
    -
    - - {{ icon }} - - - {% if type is not empty %} - {{ header|default(type)|trans }}  - {% endif %} - - {{ message|trans }} +
    + + {{ icon }} + +
    + {% if type is not empty %} + + {{ header|default(type)|trans }} + + {% endif %} +

    {{ message|trans }}

    {% endmacro %} diff --git a/SyliusShopBundle/views/Common/Macro/money.html.twig b/templates/bundles/SyliusShopBundle/Common/Macro/money.html.twig similarity index 93% rename from SyliusShopBundle/views/Common/Macro/money.html.twig rename to templates/bundles/SyliusShopBundle/Common/Macro/money.html.twig index 23f22ff..a569d25 100644 --- a/SyliusShopBundle/views/Common/Macro/money.html.twig +++ b/templates/bundles/SyliusShopBundle/Common/Macro/money.html.twig @@ -14,7 +14,7 @@ {{- convertAndFormat(variant|sylius_calculate_price({'channel': sylius.channel})) }} {%- endmacro -%} -{%- macro calculateOriginalPrice(variant) -%} +{%- macro calculate_original_price(variant) -%} {% from _self import convertAndFormat %} {{- convertAndFormat(variant|sylius_calculate_original_price({'channel': sylius.channel})) }} diff --git a/templates/bundles/SyliusShopBundle/Common/Macro/pagination.html.twig b/templates/bundles/SyliusShopBundle/Common/Macro/pagination.html.twig new file mode 100644 index 0000000..512db5e --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Common/Macro/pagination.html.twig @@ -0,0 +1,9 @@ +{% macro simple(paginator, options) %} + {% if paginator.haveToPaginate() %} + {{ pagerfanta(paginator, 'twitter_bootstrap5', options|default({ + 'prev_message': 'sylius.ui.previous'|trans, + 'next_message': 'sylius.ui.next'|trans, + 'css_disabled_class': 'd-none', + })) }} + {% endif %} +{% endmacro %} diff --git a/templates/bundles/SyliusShopBundle/Common/Macro/sectionHeaders.html.twig b/templates/bundles/SyliusShopBundle/Common/Macro/sectionHeaders.html.twig new file mode 100644 index 0000000..15c191d --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Common/Macro/sectionHeaders.html.twig @@ -0,0 +1,6 @@ +{% macro default(header, subheader) %} +

    {{ header }}

    + {% if subheader is not empty %} +

    {{ subheader|raw }}

    + {% endif %} +{% endmacro %} diff --git a/SyliusShopBundle/views/Common/Macro/sorting.html.twig b/templates/bundles/SyliusShopBundle/Common/Macro/sorting.html.twig similarity index 100% rename from SyliusShopBundle/views/Common/Macro/sorting.html.twig rename to templates/bundles/SyliusShopBundle/Common/Macro/sorting.html.twig diff --git a/templates/bundles/SyliusShopBundle/Common/Macro/table.html.twig b/templates/bundles/SyliusShopBundle/Common/Macro/table.html.twig new file mode 100644 index 0000000..88036dd --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Common/Macro/table.html.twig @@ -0,0 +1,47 @@ +{% macro headers(grid, definition, requestAttributes) %} + {% import '@SyliusShop/Common/Macro/sorting.html.twig' as sorting %} + + {% if definition.actionGroups.bulk is defined and definition.getEnabledActions('bulk')|length > 0 %} + + {% endif %} + + {% for field in definition.fields|sort_by('position') %} + {% if field.enabled %} + {% if field.isSortable %} + {{ sorting.tableHeader(grid, field, requestAttributes) }} + {% else %} + {{ field.label|trans }} + {% endif %} + {% endif %} + {% endfor %} + {% if definition.actionGroups.item is defined and definition.getEnabledActions('item')|length > 0 %} + {{ 'sylius.ui.actions'|trans }} + {% endif %} +{% endmacro %} + +{% macro row(grid, definition, row) %} + + {% if definition.actionGroups.bulk is defined and definition.getEnabledActions('bulk')|length > 0 %} + + {% endif %} + {% for field in definition.enabledFields|sort_by('position') %} + {{ sylius_grid_render_field(grid, field, row) }} + {% endfor %} + {% if definition.actionGroups.item is defined and definition.getEnabledActions('item')|length > 0 %} + +
    + {% for action in definition.getEnabledActions('item')|sort_by('position') %} + {{ sylius_grid_render_action(grid, action, row) }} + {% endfor %} +
    + {% if definition.actionGroups.subitem is defined and definition.getEnabledActions('subitem')|length > 0 %} +
    + {% for action in definition.getEnabledActions('subitem')|sort_by('position') %} + {{ sylius_grid_render_action(grid, action, row) }} + {% endfor %} +
    + {% endif %} + + {% endif %} + +{% endmacro %} diff --git a/templates/bundles/SyliusShopBundle/Common/Order/Label/PaymentState/orderPaymentState.html.twig b/templates/bundles/SyliusShopBundle/Common/Order/Label/PaymentState/orderPaymentState.html.twig new file mode 100644 index 0000000..1ee3de3 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Common/Order/Label/PaymentState/orderPaymentState.html.twig @@ -0,0 +1,17 @@ +{% set view_options = { + authorized: {icon: "fas fa-check", color: "primary"}, + awaiting_payment: {icon: "fas fa-clock", color: "secondary"}, + cancelled: {icon: "fas fa-ban", color: "danger"}, + paid: {icon: "fas fa-adjust", color: "success"}, + partially_authorized: {icon: "fas fa-ban", color: "warning"}, + partially_paid: {icon: "fas fa-clock", color: "info"}, + partially_refunded: {icon: "fas fa-check", color: "info"}, + refunded: {icon: "fas fa-reply-all", color: "light"}, +} %} + +{% set value = 'sylius.ui.' ~ state %} + + + + {{ 'sylius.ui.state'|trans }}: {{ value|trans }} + diff --git a/templates/bundles/SyliusShopBundle/Common/Order/Label/PaymentState/singlePaymentState.html.twig b/templates/bundles/SyliusShopBundle/Common/Order/Label/PaymentState/singlePaymentState.html.twig new file mode 100644 index 0000000..bec7a69 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Common/Order/Label/PaymentState/singlePaymentState.html.twig @@ -0,0 +1,16 @@ +{% set view_options = { + authorized: {icon: "fas fa-check", color: "primary"}, + cancelled: {icon: "fas fa-ban", color: "warning"}, + completed: {icon: "fas fa-adjust", color: "success"}, + failed: {icon: "fas fa-ban", color: "danger"}, + new: {icon: "fas fa-clock", color: "secondary"}, + processing: {icon: "fas fa-check", color: "info"}, + refunded: {icon: "fas fa-reply-all", color: "light"}, +} %} + +{% set value = 'sylius.ui.' ~ state %} + + + + {{ value|trans }} + diff --git a/templates/bundles/SyliusShopBundle/Common/Order/Label/ShipmentState/orderShipmentState.html.twig b/templates/bundles/SyliusShopBundle/Common/Order/Label/ShipmentState/orderShipmentState.html.twig new file mode 100644 index 0000000..261d8f5 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Common/Order/Label/ShipmentState/orderShipmentState.html.twig @@ -0,0 +1,14 @@ +{% set view_options = { + cart: {icon: "fas fa-adjust", color: "secondary"}, + cancelled: {icon: "fas fa-ban", color: "danger"}, + shipped: {icon: "fas fa-plane", color: "success"}, + partially_shipped: {icon: "fas fa-adjust", color: "warning"}, + partially_paid: {icon: "fas fa-clock", color: "primary"}, +} %} + +{% set value = 'sylius.ui.' ~ state %} + + + + {{ 'sylius.ui.state'|trans }}: {{ value|trans }} + diff --git a/templates/bundles/SyliusShopBundle/Common/Order/Label/ShipmentState/singleShipmentState.html.twig b/templates/bundles/SyliusShopBundle/Common/Order/Label/ShipmentState/singleShipmentState.html.twig new file mode 100644 index 0000000..e9806fb --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Common/Order/Label/ShipmentState/singleShipmentState.html.twig @@ -0,0 +1,13 @@ +{% set view_options = { + cart: {icon: "fas fa-adjust", color: "secondary"}, + cancelled: {icon: "fas fa-ban", color: "danger"}, + shipped: {icon: "fas fa-plane", color: "success"}, + ready: {icon: "fas fa-clock", color: "primary"}, +} %} + +{% set value = 'sylius.ui.' ~ state %} + + + + {{ value|trans }} + diff --git a/tests/Application/config/secrets/prod/.gitignore b/templates/bundles/SyliusShopBundle/Common/Order/Table/_headers.html.twig similarity index 100% rename from tests/Application/config/secrets/prod/.gitignore rename to templates/bundles/SyliusShopBundle/Common/Order/Table/_headers.html.twig diff --git a/templates/bundles/SyliusShopBundle/Common/Order/Table/_item.html.twig b/templates/bundles/SyliusShopBundle/Common/Order/Table/_item.html.twig new file mode 100644 index 0000000..ae12f98 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Common/Order/Table/_item.html.twig @@ -0,0 +1,40 @@ +{% import "@SyliusShop/Common/Macro/money.html.twig" as money %} + +{% set unit_promotion_adjustment = constant('Sylius\\Component\\Core\\Model\\AdjustmentInterface::ORDER_UNIT_PROMOTION_ADJUSTMENT') %} +{% set unit_promotions = item.units.first.adjustments(unit_promotion_adjustment) %} + +{% set variant = item.variant %} +{% set product = variant.product %} + +
  • +
    + {% include '@SyliusShop/Product/_mainImage.html.twig' with {product, 'filter': 'sylius_shop_product_tiny_thumbnail'} %} +
    + +
    + {% include '@SyliusShop/Product/_info.html.twig' with {variant} %} + + {{ item.quantity }} + x + {% if item.unitPrice != item.discountedUnitPrice %} + + {{ money.convertAndFormat(item.unitPrice) }} + + {% endif %} + + + {{ money.convertAndFormat(item.discountedUnitPrice) }} + {% if item.unitPrice != item.discountedUnitPrice %} + + + + {% endif %} + + +
    + +
    + {{ money.convertAndFormat(item.subtotal) }} +
    + +
  • diff --git a/templates/bundles/SyliusShopBundle/Common/Order/Table/_items.html.twig b/templates/bundles/SyliusShopBundle/Common/Order/Table/_items.html.twig new file mode 100644 index 0000000..81bd1ea --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Common/Order/Table/_items.html.twig @@ -0,0 +1,5 @@ +
      + {% for item in order.items %} + {% include '@SyliusShop/Common/Order/Table/_item.html.twig' %} + {% endfor %} +
    diff --git a/templates/bundles/SyliusShopBundle/Common/Order/Table/_promotion.html.twig b/templates/bundles/SyliusShopBundle/Common/Order/Table/_promotion.html.twig new file mode 100644 index 0000000..c8452d0 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Common/Order/Table/_promotion.html.twig @@ -0,0 +1,27 @@ +{% import "@SyliusShop/Common/Macro/money.html.twig" as money %} + +{% set order_promotion_adjustment = constant('Sylius\\Component\\Core\\Model\\AdjustmentInterface::ORDER_PROMOTION_ADJUSTMENT') %} +{% set order_promotions = sylius_aggregate_adjustments(order.getAdjustmentsRecursively(order_promotion_adjustment)) %} + +{% set class = class|default({ + row: 'd-flex justify-content-between align-items-center py-2 border-bottom', + highlight: 'fw-medium', +}) %} + +{% if not order_promotions is empty %} +
    + {% for label, amount in order_promotions %} + {% if not loop.first %}
    + {% endif %} + {{ label }}: + {{ money.convertAndFormat(amount) }} + {% endfor %} +
    +{% endif %} + +
    + {{ 'sylius.ui.promotion_total'|trans }}: + + {{ money.format(order.orderPromotionTotal, order.currencyCode) }} + +
    diff --git a/templates/bundles/SyliusShopBundle/Common/Order/Table/_shipping.html.twig b/templates/bundles/SyliusShopBundle/Common/Order/Table/_shipping.html.twig new file mode 100644 index 0000000..69ac734 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Common/Order/Table/_shipping.html.twig @@ -0,0 +1,29 @@ +{% import "@SyliusShop/Common/Macro/money.html.twig" as money %} + +{% set order_shipping_promotion_adjustment = constant('Sylius\\Component\\Core\\Model\\AdjustmentInterface::ORDER_SHIPPING_PROMOTION_ADJUSTMENT') %} +{% set shipping_adjustment = constant('Sylius\\Component\\Core\\Model\\AdjustmentInterface::SHIPPING_ADJUSTMENT') %} +{% set order_shipping_promotions = sylius_aggregate_adjustments(order.getAdjustmentsRecursively(order_shipping_promotion_adjustment)) %} + +{% if not order_shipping_promotions is empty %} +
    + {{ 'sylius.ui.shipping_total'|trans }}: + + + {{ money.convertAndFormat(order.getAdjustmentsTotal(shipping_adjustment)) }} + + + {{ money.convertAndFormat(order.getAdjustmentsTotal(shipping_adjustment) + order.getAdjustmentsTotal(order_shipping_promotion_adjustment)) }} + + + + + +
    +{% else %} +
    + {{ 'sylius.ui.shipping_total'|trans }}: + + {{ money.convertAndFormat(order.shippingTotal) }} + +
    +{% endif %} diff --git a/templates/bundles/SyliusShopBundle/Common/Order/Table/_totals.html.twig b/templates/bundles/SyliusShopBundle/Common/Order/Table/_totals.html.twig new file mode 100644 index 0000000..eda9ca9 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Common/Order/Table/_totals.html.twig @@ -0,0 +1,68 @@ +{% import "@SyliusShop/Common/Macro/money.html.twig" as money %} + +{% set items_subtotal = sylius_order_items_subtotal(order) %} +{% set tax_included = sylius_order_tax_included(order) %} +{% set tax_excluded = sylius_order_tax_excluded(order) %} + +{% set order_promotion_adjustment = constant('Sylius\\Component\\Core\\Model\\AdjustmentInterface::ORDER_PROMOTION_ADJUSTMENT') %} +{% set order_promotions = sylius_aggregate_adjustments(order.adjustmentsRecursively(order_promotion_adjustment)) %} +{% set class = class|default({ + row: 'd-flex justify-content-between align-items-center py-2 border-bottom', + total_row: 'd-flex justify-content-between align-items-center py-2 fs-5 fw-medium', + highlight: 'fw-medium', +}) %} + +
    + +
    + {{ 'sylius.ui.items_total'|trans }}: + {{ money.convertAndFormat(items_subtotal) }} +
    + +
    + {{ 'sylius.ui.taxes_total'|trans }}: +
    + {% if not tax_included and not tax_excluded %} +
    {{ money.convertAndFormat(0) }}
    + {% endif %} + + {% if tax_excluded %} +
    {{ money.convertAndFormat(tax_excluded) }}
    + {% endif %} + + {% if tax_included %} +
    + ({{ 'sylius.ui.included_in_price'|trans }}) + {{ money.convertAndFormat(tax_included) }} +
    + {% endif %} +
    +
    + +
    + {{ 'sylius.ui.discount'|trans }}: + + {{ money.convertAndFormat(order.orderPromotionTotal) }} + + {% if order.orderPromotionTotal != 0 %} + + + + {% endif %} + +
    + + {% include '@SyliusShop/Common/Order/Table/_shipping.html.twig' with {order, class} %} + +
    + {{ 'sylius.ui.total'|trans }}: + {{ money.convertAndFormat(order.total) }} +
    + + {% if order.currencyCode is not same as(sylius.currencyCode) %} +
    + {{ 'sylius.ui.total_in_base_currency'|trans }}: + {{ money.format(order.total, order.currencyCode) }} +
    + {% endif %} +
    diff --git a/templates/bundles/SyliusShopBundle/Common/Order/_addresses.html.twig b/templates/bundles/SyliusShopBundle/Common/Order/_addresses.html.twig new file mode 100644 index 0000000..0a191ee --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Common/Order/_addresses.html.twig @@ -0,0 +1,18 @@ +
    +
    +
    + {{ 'sylius.ui.shipping_address'|trans }} +
    +
    + {% include '@SyliusShop/Common/_address.html.twig' with {address: order.shippingAddress} %} +
    +
    +
    +
    + {{ 'sylius.ui.billing_address'|trans }} +
    +
    + {% include '@SyliusShop/Common/_address.html.twig' with {address: order.billingAddress} %} +
    +
    +
    diff --git a/SyliusShopBundle/views/Common/Order/_payments.html.twig b/templates/bundles/SyliusShopBundle/Common/Order/_payments.html.twig similarity index 61% rename from SyliusShopBundle/views/Common/Order/_payments.html.twig rename to templates/bundles/SyliusShopBundle/Common/Order/_payments.html.twig index d908abc..41badce 100644 --- a/SyliusShopBundle/views/Common/Order/_payments.html.twig +++ b/templates/bundles/SyliusShopBundle/Common/Order/_payments.html.twig @@ -1,26 +1,30 @@ {% import "@SyliusShop/Common/Macro/money.html.twig" as money %} {% import "@SyliusShop/Common/Macro/icons.html.twig" as icons %} -{% for payment in order.payments %} - {% set state = payment.state %} +
    +
    + {{ 'sylius.ui.payment'|trans }} +
    +
    + {% for payment in order.payments %} + {% set state = payment.state %} -
    -
    -
    -
    {{ icons.creditCard() }}
    +
    + {{ icons.creditCard('fs-2 text-gray-500') }}
    {{ payment.method }}
    {{ money.format(payment.amount, payment.currencyCode) }}
    + {% if state != 'cart' %}

    - {% include "@SyliusShop/Common/Order/Label/PaymentState/singlePaymentState.html.twig" with {'state': state} %} + {% include "@SyliusShop/Common/Order/Label/PaymentState/singlePaymentState.html.twig" with {state} %}

    {% endif %}
    -
    + {% endfor %}
    -{% endfor %} +
    diff --git a/templates/bundles/SyliusShopBundle/Common/Order/_shipments.html.twig b/templates/bundles/SyliusShopBundle/Common/Order/_shipments.html.twig new file mode 100644 index 0000000..07bed60 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Common/Order/_shipments.html.twig @@ -0,0 +1,27 @@ +{% import "@SyliusShop/Common/Macro/icons.html.twig" as icons %} + +
    +
    + {{ 'sylius.ui.shipment'|trans }} +
    +
    + {% for shipment in order.shipments %} + {% set state = shipment.state %} + +
    + {{ icons.transport('fs-2 text-gray-500') }} +
    +
    + {{ shipment.method }} +
    + + {% if state != 'cart' %} +

    + {% include "@SyliusShop/Common/Order/Label/ShipmentState/singleShipmentState.html.twig" with {state} %} +

    + {% endif %} +
    +
    + {% endfor %} +
    +
    diff --git a/templates/bundles/SyliusShopBundle/Common/Order/_summary.html.twig b/templates/bundles/SyliusShopBundle/Common/Order/_summary.html.twig new file mode 100644 index 0000000..dd93689 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Common/Order/_summary.html.twig @@ -0,0 +1,17 @@ +
    + {% include '@SyliusShop/Common/Order/_addresses.html.twig' %} +
    + +
    +
    + {% include '@SyliusShop/Common/Order/_table.html.twig' %} +
    +
    +
    + {% include '@SyliusShop/Common/Order/_payments.html.twig' %} +
    +
    + {% include '@SyliusShop/Common/Order/_shipments.html.twig' %} +
    +
    +
    diff --git a/templates/bundles/SyliusShopBundle/Common/Order/_table.html.twig b/templates/bundles/SyliusShopBundle/Common/Order/_table.html.twig new file mode 100644 index 0000000..c765671 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Common/Order/_table.html.twig @@ -0,0 +1,5 @@ +
    + {% include '@SyliusShop/Common/Order/Table/_headers.html.twig' %} + {% include '@SyliusShop/Common/Order/Table/_items.html.twig' %} + {% include '@SyliusShop/Common/Order/Table/_totals.html.twig' %} +
    diff --git a/SyliusShopBundle/views/Common/_address.html.twig b/templates/bundles/SyliusShopBundle/Common/_address.html.twig similarity index 84% rename from SyliusShopBundle/views/Common/_address.html.twig rename to templates/bundles/SyliusShopBundle/Common/_address.html.twig index d1bf40b..6f50118 100644 --- a/SyliusShopBundle/views/Common/_address.html.twig +++ b/templates/bundles/SyliusShopBundle/Common/_address.html.twig @@ -1,4 +1,4 @@ -
    +
    {% if address.company is not null %} {{ address.company }}
    {% endif %} diff --git a/templates/bundles/SyliusShopBundle/Common/_rating.html.twig b/templates/bundles/SyliusShopBundle/Common/_rating.html.twig new file mode 100644 index 0000000..0aa1274 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Common/_rating.html.twig @@ -0,0 +1,14 @@ +{% import "@SyliusShop/Common/Macro/icons.html.twig" as icons %} + +{% set additional_classes = ' cursor-pointer ' ~ class|default('') %} + +
    + +
    {{ icons.star("text-primary" ~ additional_classes) }}
    +
    {{ icons.star("text-gray-300" ~ additional_classes) }}
    +
    diff --git a/SyliusShopBundle/views/Contact/request.html.twig b/templates/bundles/SyliusShopBundle/Contact/request.html.twig similarity index 100% rename from SyliusShopBundle/views/Contact/request.html.twig rename to templates/bundles/SyliusShopBundle/Contact/request.html.twig diff --git a/SyliusShopBundle/views/Email/contactRequest.html.twig b/templates/bundles/SyliusShopBundle/Email/contactRequest.html.twig similarity index 100% rename from SyliusShopBundle/views/Email/contactRequest.html.twig rename to templates/bundles/SyliusShopBundle/Email/contactRequest.html.twig diff --git a/SyliusShopBundle/views/Email/orderConfirmation.html.twig b/templates/bundles/SyliusShopBundle/Email/orderConfirmation.html.twig similarity index 100% rename from SyliusShopBundle/views/Email/orderConfirmation.html.twig rename to templates/bundles/SyliusShopBundle/Email/orderConfirmation.html.twig diff --git a/SyliusShopBundle/views/Email/passwordReset.html.twig b/templates/bundles/SyliusShopBundle/Email/passwordReset.html.twig similarity index 93% rename from SyliusShopBundle/views/Email/passwordReset.html.twig rename to templates/bundles/SyliusShopBundle/Email/passwordReset.html.twig index 7cf797f..f41f15c 100644 --- a/SyliusShopBundle/views/Email/passwordReset.html.twig +++ b/templates/bundles/SyliusShopBundle/Email/passwordReset.html.twig @@ -9,7 +9,8 @@
    - {{ 'sylius.email.password_reset.hello'|trans({}, null, localeCode) }} {{ user.username }}
    + {{ 'sylius.email.password_reset.hello'|trans({}, null, localeCode) }} + {{ user.username }}
    {{ 'sylius.email.password_reset.to_reset_your_password'|trans({}, null, localeCode) }}:
    diff --git a/SyliusShopBundle/views/Email/userRegistration.html.twig b/templates/bundles/SyliusShopBundle/Email/userRegistration.html.twig similarity index 93% rename from SyliusShopBundle/views/Email/userRegistration.html.twig rename to templates/bundles/SyliusShopBundle/Email/userRegistration.html.twig index 53872bf..df909a2 100644 --- a/SyliusShopBundle/views/Email/userRegistration.html.twig +++ b/templates/bundles/SyliusShopBundle/Email/userRegistration.html.twig @@ -11,7 +11,8 @@
    {{ 'sylius.email.user_registration.welcome_to_our_store'|trans({}, null, localeCode) }}
    - {{ 'sylius.email.user_registration.you_have_just_been_registered'|trans({}, null, localeCode) }} {{ user.username }}. + {{ 'sylius.email.user_registration.you_have_just_been_registered'|trans({}, null, localeCode) }} {{ user.username }} + .
    diff --git a/SyliusShopBundle/views/Email/verification.html.twig b/templates/bundles/SyliusShopBundle/Email/verification.html.twig similarity index 93% rename from SyliusShopBundle/views/Email/verification.html.twig rename to templates/bundles/SyliusShopBundle/Email/verification.html.twig index 0fe1315..448f6b1 100644 --- a/SyliusShopBundle/views/Email/verification.html.twig +++ b/templates/bundles/SyliusShopBundle/Email/verification.html.twig @@ -9,7 +9,8 @@
    - {{ 'sylius.email.verification_token.hello'|trans({}, null, localeCode) }} {{ user.username }}
    + {{ 'sylius.email.verification_token.hello'|trans({}, null, localeCode) }} + {{ user.username }}
    {{ 'sylius.email.verification_token.to_verify_your_email_address'|trans({}, null, localeCode) }}:
    diff --git a/templates/bundles/SyliusShopBundle/Error/_layout.html.twig b/templates/bundles/SyliusShopBundle/Error/_layout.html.twig new file mode 100644 index 0000000..87072fb --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Error/_layout.html.twig @@ -0,0 +1,19 @@ +{% extends '@SyliusShop/layout.html.twig' %} + +{% block content %} +
    + +

    + {% block title '' %} +

    + + {% block details '' %} + + + +
    +{% endblock %} diff --git a/templates/bundles/SyliusShopBundle/Error/error.html.twig b/templates/bundles/SyliusShopBundle/Error/error.html.twig new file mode 100644 index 0000000..24776b5 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Error/error.html.twig @@ -0,0 +1,3 @@ +{% extends '@SyliusShop/Error/_layout.html.twig' %} + +{% block title 'sylius.ui.unexpected_error_occurred'|trans %} diff --git a/templates/bundles/SyliusShopBundle/Error/error403.html.twig b/templates/bundles/SyliusShopBundle/Error/error403.html.twig new file mode 100644 index 0000000..579277f --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Error/error403.html.twig @@ -0,0 +1,3 @@ +{% extends '@SyliusShop/Error/_layout.html.twig' %} + +{% block title 'sylius.ui.the_page_you_are_looking_for_is_forbidden'|trans %} diff --git a/templates/bundles/SyliusShopBundle/Error/error404.html.twig b/templates/bundles/SyliusShopBundle/Error/error404.html.twig new file mode 100644 index 0000000..dd8a207 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Error/error404.html.twig @@ -0,0 +1,4 @@ +{% extends '@SyliusShop/Error/_layout.html.twig' %} + +{% block title 'sylius.ui.the_page_you_are_looking_for_does_not_exist'|trans %} + diff --git a/templates/bundles/SyliusShopBundle/Error/error500.html.twig b/templates/bundles/SyliusShopBundle/Error/error500.html.twig new file mode 100644 index 0000000..b2b1533 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Error/error500.html.twig @@ -0,0 +1,3 @@ +{% extends '@SyliusShop/Error/_layout.html.twig' %} + +{% block title 'sylius.ui.server_has_encountered_some_errors'|trans %} diff --git a/templates/bundles/SyliusShopBundle/Form/theme.html.twig b/templates/bundles/SyliusShopBundle/Form/theme.html.twig new file mode 100644 index 0000000..3ccff5e --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Form/theme.html.twig @@ -0,0 +1 @@ +{% extends 'bootstrap_5_layout.html.twig' %} diff --git a/SyliusShopBundle/views/Grid/Action/show.html.twig b/templates/bundles/SyliusShopBundle/Grid/Action/show.html.twig similarity index 100% rename from SyliusShopBundle/views/Grid/Action/show.html.twig rename to templates/bundles/SyliusShopBundle/Grid/Action/show.html.twig diff --git a/SyliusShopBundle/views/Grid/Filter/boolean.html.twig b/templates/bundles/SyliusShopBundle/Grid/Filter/boolean.html.twig similarity index 100% rename from SyliusShopBundle/views/Grid/Filter/boolean.html.twig rename to templates/bundles/SyliusShopBundle/Grid/Filter/boolean.html.twig diff --git a/SyliusShopBundle/views/Grid/Filter/date.html.twig b/templates/bundles/SyliusShopBundle/Grid/Filter/date.html.twig similarity index 100% rename from SyliusShopBundle/views/Grid/Filter/date.html.twig rename to templates/bundles/SyliusShopBundle/Grid/Filter/date.html.twig diff --git a/SyliusShopBundle/views/Grid/Filter/entity.html.twig b/templates/bundles/SyliusShopBundle/Grid/Filter/entity.html.twig similarity index 100% rename from SyliusShopBundle/views/Grid/Filter/entity.html.twig rename to templates/bundles/SyliusShopBundle/Grid/Filter/entity.html.twig diff --git a/SyliusShopBundle/views/Grid/Filter/exists.html.twig b/templates/bundles/SyliusShopBundle/Grid/Filter/exists.html.twig similarity index 100% rename from SyliusShopBundle/views/Grid/Filter/exists.html.twig rename to templates/bundles/SyliusShopBundle/Grid/Filter/exists.html.twig diff --git a/SyliusShopBundle/views/Grid/Filter/money.html.twig b/templates/bundles/SyliusShopBundle/Grid/Filter/money.html.twig similarity index 100% rename from SyliusShopBundle/views/Grid/Filter/money.html.twig rename to templates/bundles/SyliusShopBundle/Grid/Filter/money.html.twig diff --git a/templates/bundles/SyliusShopBundle/Grid/Filter/string.html.twig b/templates/bundles/SyliusShopBundle/Grid/Filter/string.html.twig new file mode 100644 index 0000000..3c7efd9 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Grid/Filter/string.html.twig @@ -0,0 +1,13 @@ +{% form_theme form '@SyliusShop/Form/theme.html.twig' %} + +{% if form.type is defined %} + {{ form_row(form.type, {'label': filter.label}) }} +{% endif %} + +{% set label = form.type is defined ? form.value.vars.label : filter.label %} + +{% if label %} + {{ form_row(form.value, {label}) }} +{% else %} + {{ form_widget(form.value, {label, attr: {class: "bg-light border-light form-control-lg"}}) }} +{% endif %} diff --git a/SyliusShopBundle/views/Grid/_default.html.twig b/templates/bundles/SyliusShopBundle/Grid/_default.html.twig similarity index 77% rename from SyliusShopBundle/views/Grid/_default.html.twig rename to templates/bundles/SyliusShopBundle/Grid/_default.html.twig index f51393e..f5f1c18 100644 --- a/SyliusShopBundle/views/Grid/_default.html.twig +++ b/templates/bundles/SyliusShopBundle/Grid/_default.html.twig @@ -15,14 +15,14 @@
    - {% for filter in definition.enabledFilters|sort_by('position')|filter(filter.enabled) %} + {% for filter in definition.enabledFilters|sort_by('position')|filter(filter.enabled) %} {{ sylius_grid_render_filter(grid, filter) }} {% if loop.index0 % 2 %} -
    -
    +
    +
    {% endif %} - {% endfor %} + {% endfor %}
    + +
    diff --git a/SyliusShopBundle/views/Homepage/_latestProducts.html.twig b/templates/bundles/SyliusShopBundle/Homepage/_latestProducts.html.twig similarity index 62% rename from SyliusShopBundle/views/Homepage/_latestProducts.html.twig rename to templates/bundles/SyliusShopBundle/Homepage/_latestProducts.html.twig index 1b6d3df..5679fd4 100644 --- a/SyliusShopBundle/views/Homepage/_latestProducts.html.twig +++ b/templates/bundles/SyliusShopBundle/Homepage/_latestProducts.html.twig @@ -1,7 +1,6 @@ {% import '@SyliusShop/Common/Macro/sectionHeaders.html.twig' as headers %} -{{ headers.default('sylius.ui.latest_products'|trans) }} -
    - {{ render(url('sylius_shop_partial_product_index_latest', {'count': 3, 'template': '@SyliusShop/Homepage/_list.html.twig'})) }} + {{ headers.default('sylius.ui.latest_products'|trans) }} + {{ render(url('sylius_shop_partial_product_index_latest', {'count': 4, 'template': '@SyliusShop/Homepage/_list.html.twig'})) }}
    diff --git a/templates/bundles/SyliusShopBundle/Homepage/_latestProductsCarousel.html.twig b/templates/bundles/SyliusShopBundle/Homepage/_latestProductsCarousel.html.twig new file mode 100644 index 0000000..9d0ea7f --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Homepage/_latestProductsCarousel.html.twig @@ -0,0 +1,10 @@ +{% import '@SyliusShop/Common/Macro/sectionHeaders.html.twig' as headers %} + +
    + {{ headers.default('sylius.homepage.carousel_header'|trans) }} + + {{ render(url('sylius_shop_partial_product_index_latest', { + count: 6, + template: '@SyliusShop/Homepage/_carousel.html.twig' + })) }} +
    diff --git a/templates/bundles/SyliusShopBundle/Homepage/_list.html.twig b/templates/bundles/SyliusShopBundle/Homepage/_list.html.twig new file mode 100644 index 0000000..21670d9 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Homepage/_list.html.twig @@ -0,0 +1,10 @@ +{% set role = products|length == 5 ? 'grid-item' : '' %} + +
    + {% for product in products %} +
    + {% include '@SyliusShop/Product/_box.html.twig' with {role} %} +
    + {% endfor %} +
    + diff --git a/templates/bundles/SyliusShopBundle/Homepage/_newsletter.html.twig b/templates/bundles/SyliusShopBundle/Homepage/_newsletter.html.twig new file mode 100644 index 0000000..7bb8248 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Homepage/_newsletter.html.twig @@ -0,0 +1,19 @@ +{% import '@SyliusShop/Common/Macro/sectionHeaders.html.twig' as headers %} + + diff --git a/templates/bundles/SyliusShopBundle/Homepage/_productsGrid.html.twig b/templates/bundles/SyliusShopBundle/Homepage/_productsGrid.html.twig new file mode 100644 index 0000000..a80041e --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Homepage/_productsGrid.html.twig @@ -0,0 +1,5 @@ +{{ render(url('sylius_shop_partial_product_index_latest', { + count: 5, + role: 'grid-item', + template: '@SyliusShop/Homepage/_list.html.twig', +})) }} diff --git a/SyliusShopBundle/views/Homepage/index.html.twig b/templates/bundles/SyliusShopBundle/Homepage/index.html.twig similarity index 72% rename from SyliusShopBundle/views/Homepage/index.html.twig rename to templates/bundles/SyliusShopBundle/Homepage/index.html.twig index c601111..8d56a9e 100644 --- a/SyliusShopBundle/views/Homepage/index.html.twig +++ b/templates/bundles/SyliusShopBundle/Homepage/index.html.twig @@ -1,7 +1,7 @@ {% extends '@SyliusShop/layout.html.twig' %} {% block content %} -
    +
    {{ sylius_template_event('sylius.shop.homepage') }}
    {% endblock %} diff --git a/templates/bundles/SyliusShopBundle/Layout/Footer/Grid/_customer_care.html.twig b/templates/bundles/SyliusShopBundle/Layout/Footer/Grid/_customer_care.html.twig new file mode 100644 index 0000000..2996bb4 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Layout/Footer/Grid/_customer_care.html.twig @@ -0,0 +1,9 @@ + diff --git a/templates/bundles/SyliusShopBundle/Layout/Footer/Grid/_payment_methods.html.twig b/templates/bundles/SyliusShopBundle/Layout/Footer/Grid/_payment_methods.html.twig new file mode 100644 index 0000000..17a89af --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Layout/Footer/Grid/_payment_methods.html.twig @@ -0,0 +1,8 @@ +
    +

    {{ 'sylius.ui.payment_methods'|trans }}

    +
    + + + +
    +
    diff --git a/templates/bundles/SyliusShopBundle/Layout/Footer/Grid/_plus.html.twig b/templates/bundles/SyliusShopBundle/Layout/Footer/Grid/_plus.html.twig new file mode 100644 index 0000000..778da3f --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Layout/Footer/Grid/_plus.html.twig @@ -0,0 +1,9 @@ + diff --git a/templates/bundles/SyliusShopBundle/Layout/Footer/Grid/_pre_footer.html.twig b/templates/bundles/SyliusShopBundle/Layout/Footer/Grid/_pre_footer.html.twig new file mode 100755 index 0000000..e77ba5a --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Layout/Footer/Grid/_pre_footer.html.twig @@ -0,0 +1,25 @@ + diff --git a/templates/bundles/SyliusShopBundle/Layout/Footer/Grid/_your_store.html.twig b/templates/bundles/SyliusShopBundle/Layout/Footer/Grid/_your_store.html.twig new file mode 100644 index 0000000..2f5396b --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Layout/Footer/Grid/_your_store.html.twig @@ -0,0 +1,9 @@ + diff --git a/templates/bundles/SyliusShopBundle/Layout/Footer/_content.html.twig b/templates/bundles/SyliusShopBundle/Layout/Footer/_content.html.twig new file mode 100644 index 0000000..c1a1526 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Layout/Footer/_content.html.twig @@ -0,0 +1,20 @@ +
    +
    + © + {{ 'sylius.ui.your_store'|trans }}. + {{ 'sylius.ui.powered_by'|trans }} + Sylius. +
    + + +
    diff --git a/SyliusShopBundle/views/Layout/Footer/_grid.html.twig b/templates/bundles/SyliusShopBundle/Layout/Footer/_grid.html.twig similarity index 64% rename from SyliusShopBundle/views/Layout/Footer/_grid.html.twig rename to templates/bundles/SyliusShopBundle/Layout/Footer/_grid.html.twig index 1210c05..cd8320a 100644 --- a/SyliusShopBundle/views/Layout/Footer/_grid.html.twig +++ b/templates/bundles/SyliusShopBundle/Layout/Footer/_grid.html.twig @@ -1,3 +1,3 @@ -
    +
    {{ sylius_template_event('sylius.shop.layout.footer.grid') }} -
    +
    diff --git a/SyliusShopBundle/views/Layout/Header/_cart.html.twig b/templates/bundles/SyliusShopBundle/Layout/Header/_cart.html.twig similarity index 88% rename from SyliusShopBundle/views/Layout/Header/_cart.html.twig rename to templates/bundles/SyliusShopBundle/Layout/Header/_cart.html.twig index 9a53b08..fbb4d7a 100644 --- a/SyliusShopBundle/views/Layout/Header/_cart.html.twig +++ b/templates/bundles/SyliusShopBundle/Layout/Header/_cart.html.twig @@ -1,5 +1,5 @@
    -
    +
    {{ render(url('sylius_shop_partial_cart_summary', {'template': '@SyliusShop/Cart/_widget.html.twig'})) }}
    diff --git a/SyliusShopBundle/views/Layout/Header/_content.html.twig b/templates/bundles/SyliusShopBundle/Layout/Header/_content.html.twig similarity index 100% rename from SyliusShopBundle/views/Layout/Header/_content.html.twig rename to templates/bundles/SyliusShopBundle/Layout/Header/_content.html.twig diff --git a/templates/bundles/SyliusShopBundle/Layout/Header/_logo.html.twig b/templates/bundles/SyliusShopBundle/Layout/Header/_logo.html.twig new file mode 100644 index 0000000..425753b --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Layout/Header/_logo.html.twig @@ -0,0 +1,5 @@ + diff --git a/SyliusShopBundle/views/Layout/Header/_menu.html.twig b/templates/bundles/SyliusShopBundle/Layout/Header/_menu.html.twig similarity index 73% rename from SyliusShopBundle/views/Layout/Header/_menu.html.twig rename to templates/bundles/SyliusShopBundle/Layout/Header/_menu.html.twig index 141360c..6fdebc1 100644 --- a/SyliusShopBundle/views/Layout/Header/_menu.html.twig +++ b/templates/bundles/SyliusShopBundle/Layout/Header/_menu.html.twig @@ -1,4 +1,4 @@ -
    +
    {{ render(url('sylius_shop_partial_channel_menu_taxon_index', {'template': '@SyliusShop/Taxon/_horizontalMenu.html.twig'})) }}
    diff --git a/SyliusShopBundle/views/Layout/Topbar/_currencySwitcher.html.twig b/templates/bundles/SyliusShopBundle/Layout/Topbar/_currencySwitcher.html.twig similarity index 100% rename from SyliusShopBundle/views/Layout/Topbar/_currencySwitcher.html.twig rename to templates/bundles/SyliusShopBundle/Layout/Topbar/_currencySwitcher.html.twig diff --git a/SyliusShopBundle/views/Layout/Topbar/_localeSwitcher.html.twig b/templates/bundles/SyliusShopBundle/Layout/Topbar/_localeSwitcher.html.twig similarity index 100% rename from SyliusShopBundle/views/Layout/Topbar/_localeSwitcher.html.twig rename to templates/bundles/SyliusShopBundle/Layout/Topbar/_localeSwitcher.html.twig diff --git a/SyliusShopBundle/views/Layout/Topbar/_securityWidget.html.twig b/templates/bundles/SyliusShopBundle/Layout/Topbar/_securityWidget.html.twig similarity index 100% rename from SyliusShopBundle/views/Layout/Topbar/_securityWidget.html.twig rename to templates/bundles/SyliusShopBundle/Layout/Topbar/_securityWidget.html.twig diff --git a/SyliusShopBundle/views/Login/_form.html.twig b/templates/bundles/SyliusShopBundle/Login/_form.html.twig similarity index 100% rename from SyliusShopBundle/views/Login/_form.html.twig rename to templates/bundles/SyliusShopBundle/Login/_form.html.twig diff --git a/SyliusShopBundle/views/Login/_header.html.twig b/templates/bundles/SyliusShopBundle/Login/_header.html.twig similarity index 100% rename from SyliusShopBundle/views/Login/_header.html.twig rename to templates/bundles/SyliusShopBundle/Login/_header.html.twig diff --git a/templates/bundles/SyliusShopBundle/Login/_login.html.twig b/templates/bundles/SyliusShopBundle/Login/_login.html.twig new file mode 100644 index 0000000..94738b6 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Login/_login.html.twig @@ -0,0 +1,22 @@ +
    +

    {{ 'sylius.ui.registered_customers'|trans }}

    +

    {{ 'sylius.ui.if_you_have_an_account_sign_in_with_your_email_address'|trans }}.

    + + {{ form_start(form, {'action': path('sylius_shop_login_check'), 'attr': {'class': 'loadable', 'novalidate': 'novalidate'}}) }} + + {% include '@SyliusShop/Login/_form.html.twig' %} + + {{ sylius_template_event('sylius.shop.login.form', {'form': form}) }} + +
    + + + + {{ 'sylius.ui.forgot_password'|trans }} + + + + {{ form_end(form, {'render_rest': false}) }} +
    diff --git a/templates/bundles/SyliusShopBundle/Login/_register.html.twig b/templates/bundles/SyliusShopBundle/Login/_register.html.twig new file mode 100644 index 0000000..31c56ff --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Login/_register.html.twig @@ -0,0 +1,6 @@ +
    +

    {{ 'sylius.ui.new_customers'|trans }}

    + + {{ 'sylius.ui.create_an_account'|trans }} + +
    diff --git a/SyliusShopBundle/views/Menu/_currencySwitch.html.twig b/templates/bundles/SyliusShopBundle/Menu/_currencySwitch.html.twig similarity index 56% rename from SyliusShopBundle/views/Menu/_currencySwitch.html.twig rename to templates/bundles/SyliusShopBundle/Menu/_currencySwitch.html.twig index 8db1cd6..4c1dd6d 100644 --- a/SyliusShopBundle/views/Menu/_currencySwitch.html.twig +++ b/templates/bundles/SyliusShopBundle/Menu/_currencySwitch.html.twig @@ -1,10 +1,9 @@ -
    {% endif %} - diff --git a/SyliusShopBundle/views/Menu/_localeSwitch.html.twig b/templates/bundles/SyliusShopBundle/Menu/_localeSwitch.html.twig similarity index 61% rename from SyliusShopBundle/views/Menu/_localeSwitch.html.twig rename to templates/bundles/SyliusShopBundle/Menu/_localeSwitch.html.twig index 9ef43d4..c6b54b6 100644 --- a/SyliusShopBundle/views/Menu/_localeSwitch.html.twig +++ b/templates/bundles/SyliusShopBundle/Menu/_localeSwitch.html.twig @@ -1,10 +1,8 @@ -
    {% endif %} - diff --git a/templates/bundles/SyliusShopBundle/Menu/_security.html.twig b/templates/bundles/SyliusShopBundle/Menu/_security.html.twig new file mode 100644 index 0000000..7145c00 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Menu/_security.html.twig @@ -0,0 +1,62 @@ + diff --git a/templates/bundles/SyliusShopBundle/Menu/simple.html.twig b/templates/bundles/SyliusShopBundle/Menu/simple.html.twig new file mode 100644 index 0000000..d5ef044 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Menu/simple.html.twig @@ -0,0 +1,33 @@ +{% extends 'knp_menu.html.twig' %} + +{% block root %} + {{ item.label|trans }} + +{% endblock %} + +{% block list %} + {% for item in item.children %} + {{ block('item') }} + {% endfor %} +{% endblock %} + +{% block item %} + {% set is_active = item.uri in app.request.pathInfo %} + + +{% endblock %} + +{% block icon %} + {% set icon = item.labelAttribute('icon') %} + + {% if icon %} + + {% endif %} +{% endblock %} diff --git a/templates/bundles/SyliusShopBundle/Order/_summary.html.twig b/templates/bundles/SyliusShopBundle/Order/_summary.html.twig new file mode 100644 index 0000000..2223163 --- /dev/null +++ b/templates/bundles/SyliusShopBundle/Order/_summary.html.twig @@ -0,0 +1,17 @@ +{% import "@SyliusShop/Common/Macro/money.html.twig" as money %} +{% import '@SyliusShop/Common/Macro/headers.html.twig' as headers %} + +{{ headers.default('sylius.ui.summary_of_your_order'|trans ~ ' #' ~ order.number) }} + +
    +
    + {{ order.checkoutCompletedAt|date }} +
    +
    + {{ money.convertAndFormat(order.total) }} +
    +
    + {{ order.totalQuantity }} + {{ 'sylius.ui.items'|trans|lower }} +
    +
    diff --git a/SyliusShopBundle/views/Order/show.html.twig b/templates/bundles/SyliusShopBundle/Order/show.html.twig similarity index 94% rename from SyliusShopBundle/views/Order/show.html.twig rename to templates/bundles/SyliusShopBundle/Order/show.html.twig index fb9ecf8..7860f91 100644 --- a/SyliusShopBundle/views/Order/show.html.twig +++ b/templates/bundles/SyliusShopBundle/Order/show.html.twig @@ -10,7 +10,7 @@ {% if order.paymentState in ['awaiting_payment'] %} {{ form_start(form, {'action': path('sylius_shop_order_show', {'tokenValue': order.tokenValue}), 'attr': {'class': 'loadable', 'novalidate': 'novalidate'}}) }} - + {% include '@SyliusShop/Checkout/SelectPayment/_form.html.twig' %}