nitra/e-commerce-site-storetiresbundle

This package is abandoned and no longer maintained. No replacement package was suggested.

Store Tires Bundle

Installs: 157

Dependents: 0

Suggesters: 0

Security: 0

Type:symfony-bundle

dev-master 2015-11-10 09:19 UTC

This package is auto-updated.

Last update: 2018-04-08 15:38:25 UTC


README

Описание

Основной бандл интернет магазина. Запись данных по магазину в кеш, оформление заказов, основные шаблоны.

Подключение

Для подключения данного модуля в проект необходимо:

  • composer.json:
{
    ...   
    "require": {
        ...
        "nitra/e-commerce-site-storebundle": "dev-master",
        ...
    }
    ...
}
  • app/AppKernel.php:
<?php

    //...
use Symfony\Component\HttpKernel\Kernel;
use Symfony\Component\Config\Loader\LoaderInterface;

class AppKernel extends Kernel
{
    //...
    public function registerBundles()
    {
        //...
        $bundles = array(
            //...
            new Nitra\StoreBundle\NitraStoreBundle(),
            //...
        );
        //...
        return $bundles;
    }
    //...
}

Настройки

parameters.yml

  • E-mail оповещение при оформлении заказа
    • менеджеру - send_email_order_manager: true|false
    • клиенту - send_email_order_buyer: true|false

config.yml

    #.....
    nitra_store:
        cart_products_group:
            fields: []
        anti_bot:
            enabled: true
            field_name: __antibot__
    #.....
  • cart_products_group - настройки группировки товаров в корзине. Для корректной работы поля, по которым идет группировка, должны быть обязательными.
    • fields - поля по которым группировать, по умолчанию - без группировки, указывать в виде fields: [ getModel, getColor ]
  • anti_bot - Настройки защиты от ботов
    • enabled - включена ли защита
    • field_name - имя скрытого поля

Как отключить защиту от ботов для конкретного action-а в контроллере

Это реализуется добавлением аннотации `@AntiBot(check=false)`

Пример:

<?php

namespace Nitra\YourBundle\Controller;

use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Method;
use Nitra\StoreBundle\Annotations\AntiBot;

class DefaultController extends Controller
{
    //...

    /**
     * @Route("/", name="index")
     * @Template()
     * @AntiBot(check=false)
     */
    public function indexAction()
    {
        //...
        return array();
    }

    //...
}