]> Raphaƫl G. Git Repositories - packbundle/blobdiff - README.md
Remove constraints
[packbundle] / README.md
index b50ca2d9f696fd9f388502329bbbcc313277bd47..bd7ebc58b7fa2116cd7304559c4e4f6518c751d0 100644 (file)
--- a/README.md
+++ b/README.md
@@ -1,3 +1,15 @@
+Contribute
+==========
+
+You may buy me a Beer, a Tea or help with Server fees with a paypal donation to
+the address <paypal@rapsys.eu>.
+
+Don't forget to show your love for this project, feel free to report bugs to
+the author, issues which are security relevant should be disclosed privately
+first.
+
+Patches are welcomed and grant credit when requested.
+
 Installation
 ============
 
 Installation
 ============
 
@@ -8,35 +20,34 @@ Add bundle custom repository to your project's `composer.json` file:
 
 ```json
 {
 
 ```json
 {
-    ...,
-    "repositories": [
-           {
-                   "type": "package",
-                   "package": {
-                           "name": "rapsys/packbundle",
-                           "version": "dev-master",
-                           "source": {
-                                   "type": "git",
-                                   "url": "https://git.rapsys.eu/packbundle",
-                                   "reference": "master"
-                           },
-                           "autoload": {
-                                   "psr-4": {
-                                           "Rapsys\\PackBundle\\": ""
-                                   }
-                },
-                "require": {
-                    "symfony/asset": "^4.4",
-                    "symfony/flex": "^1.5",
-                    "symfony/framework-bundle": "^4.4",
-                    "symfony/process": "^4.4",
-                    "symfony/twig-bundle": "^4.4",
-                    "twig/extensions": "^1.5"
-                           }
-                   }
-           }
-    ],
-    ...
+       ...,
+       "repositories": [
+               {
+                       "type": "package",
+                       "package": {
+                               "name": "rapsys/packbundle",
+                               "version": "dev-master",
+                               "source": {
+                                       "type": "git",
+                                       "url": "https://git.rapsys.eu/packbundle",
+                                       "reference": "master"
+                               },
+                               "autoload": {
+                                       "psr-4": {
+                                               "Rapsys\\PackBundle\\": ""
+                                       }
+                               },
+                               "require": {
+                                       "symfony/asset": "^4.0|^5.0|^6.0|^7.0",
+                                       "symfony/flex": "^1.0|^2.0",
+                                       "symfony/framework-bundle": "^4.0|^5.0|^6.0|^7.0",
+                                       "symfony/process": "^4.0|^5.0|^6.0|^7.0",
+                                       "symfony/twig-bundle": "^4.0|^5.0|^6.0|^7.0"
+                               }
+                       }
+               }
+       ],
+       ...
 }
 ```
 
 }
 ```
 
@@ -74,24 +85,24 @@ in the `app/AppKernel.php` file of your project:
 // ...
 class AppKernel extends Kernel
 {
 // ...
 class AppKernel extends Kernel
 {
-    public function registerBundles()
-    {
-        $bundles = array(
-            // ...
-            new Rapsys\PackBundle\RapsysPackBundle(),
-        );
+       public function registerBundles()
+       {
+               $bundles = array(
+                       // ...
+                       new Rapsys\PackBundle\RapsysPackBundle(),
+               );
 
 
-        // ...
-    }
+               // ...
+       }
 
 
-    // ...
+       // ...
 }
 ```
 
 ### Step 3: Configure the Bundle
 
 }
 ```
 
 ### Step 3: Configure the Bundle
 
-Setup configuration file `config/packages/rapsys_pack.yaml` with the following
-content available in `Resources/config/packages/rapsys_pack.yaml`:
+Setup configuration file `config/packages/rapsyspack.yaml` with the following
+content available in `vendor/rapsys/packbundle/config/packages/rapsyspack.yaml`:
 
 ```yaml
 #Services configuration
 
 ```yaml
 #Services configuration
@@ -99,25 +110,91 @@ services:
     #Replace assets.packages definition
     assets.packages:
         class: 'Symfony\Component\Asset\Packages'
     #Replace assets.packages definition
     assets.packages:
         class: 'Symfony\Component\Asset\Packages'
-        arguments: [ '@rapsys_pack.path_package' ]
+        arguments: [ '@rapsyspack.path_package' ]
     #Replace assets.context definition
     assets.context:
         class: 'Rapsys\PackBundle\Context\RequestStackContext'
         arguments: [ '@request_stack', '%asset.request_context.base_path%', '%asset.request_context.secure%' ]
     #Register assets pack package
     #Replace assets.context definition
     assets.context:
         class: 'Rapsys\PackBundle\Context\RequestStackContext'
         arguments: [ '@request_stack', '%asset.request_context.base_path%', '%asset.request_context.secure%' ]
     #Register assets pack package
-    rapsys_pack.path_package:
+    rapsyspack.path_package:
         class: 'Rapsys\PackBundle\Package\PathPackage'
         arguments: [ '/', '@assets.empty_version_strategy', '@assets.context' ]
         public: true
     #Register twig pack extension
         class: 'Rapsys\PackBundle\Package\PathPackage'
         arguments: [ '/', '@assets.empty_version_strategy', '@assets.context' ]
         public: true
     #Register twig pack extension
-    rapsys_pack.pack_extension:
+    rapsyspack.pack_extension:
         class: 'Rapsys\PackBundle\Extension\PackExtension'
         class: 'Rapsys\PackBundle\Extension\PackExtension'
-        arguments: [ '@file_locator', '@service_container', '@rapsys_pack.path_package', '@rapsys_pack.slugger_util' ]
+        arguments: [ '@service_container', '@rapsyspack.intl_util', '@file_locator', '@rapsyspack.path_package', '@rapsyspack.slugger_util' ]
         tags: [ 'twig.extension' ]
         tags: [ 'twig.extension' ]
-    #Register slugger utils service
-    rapsys_pack.slugger_util:
+    #Register intl util service
+    rapsyspack.intl_util:
+        class: 'Rapsys\PackBundle\Util\IntlUtil'
+        public: true
+    #Register facebook event subscriber
+    Rapsys\PackBundle\Subscriber\FacebookSubscriber:
+        arguments: [ '@router', [] ]
+        tags: [ 'kernel.event_subscriber' ]
+    #Register intl util class alias
+    Rapsys\PackBundle\Util\IntlUtil:
+        alias: 'rapsyspack.intl_util'
+    #Register facebook util service
+    rapsyspack.facebook_util:
+        class: 'Rapsys\PackBundle\Util\FacebookUtil'
+        arguments: [ '@router', '%kernel.project_dir%/var/cache', '%rapsyspack.path%' ]
+        public: true
+    #Register facebook util class alias
+    Rapsys\PackBundle\Util\FacebookUtil:
+        alias: 'rapsyspack.facebook_util'
+    #Register image util service
+    rapsyspack.image_util:
+        class: 'Rapsys\PackBundle\Util\ImageUtil'
+        arguments: [ '@router', '@rapsyspack.slugger_util', '%kernel.project_dir%/var/cache', '%rapsyspack.path%' ]
+        public: true
+    #Register image util class alias
+    Rapsys\PackBundle\Util\ImageUtil:
+        alias: 'rapsyspack.image_util'
+    #Register map util service
+    rapsyspack.map_util:
+        class: 'Rapsys\PackBundle\Util\MapUtil'
+        arguments: [ '@router', '@rapsyspack.slugger_util' ]
+        public: true
+    #Register map util class alias
+    Rapsys\PackBundle\Util\MapUtil:
+        alias: 'rapsyspack.map_util'
+    #Register slugger util service
+    rapsyspack.slugger_util:
         class: 'Rapsys\PackBundle\Util\SluggerUtil'
         class: 'Rapsys\PackBundle\Util\SluggerUtil'
-        arguments: [ '%env(APP_SECRET)%' ]
+        arguments: [ '%kernel.secret%' ]
+        public: true
+    #Register slugger util class alias
+    Rapsys\PackBundle\Util\SluggerUtil:
+        alias: 'rapsyspack.slugger_util'
+    #Register image controller
+    Rapsys\PackBundle\Controller\ImageController:
+        arguments: [ '@service_container', '@rapsyspack.image_util', '@rapsyspack.slugger_util', '%kernel.project_dir%/var/cache', '%rapsyspack.path%' ]
+        tags: [ 'controller.service_arguments' ]
+    #Register map controller
+    Rapsys\PackBundle\Controller\MapController:
+        arguments: [ '@service_container', '@rapsyspack.map_util', '@rapsyspack.slugger_util', '%kernel.project_dir%/var/cache', '%rapsyspack.path%' ]
+        tags: [ 'controller.service_arguments' ]
+    Rapsys\PackBundle\Form\CaptchaType:
+        arguments: [ '@rapsyspack.image_util', '@rapsyspack.slugger_util', '@translator' ]
+        tags: [ 'form.type' ]
+```
+
+Setup configuration file `config/packages/myproject.yaml` with the following
+content available in `vendor/rapsys/packbundle/config/packages/rapsyspack.yaml`:
+
+```yaml
+#Services configuration
+services:
+    #Register facebook event subscriber
+    Rapsys\PackBundle\Subscriber\FacebookSubscriber:
+        arguments: [ '@router', [ 'en', 'en_gb', 'en_us', 'fr', 'fr_fr' ] ]
+        tags: [ 'kernel.event_subscriber' ]
+    #Register facebook util service
+    myproject.facebook_util:
+        class: 'Rapsys\PackBundle\Util\FacebookUtil'
+        arguments: [ '@router',  '%kernel.project_dir%/var/cache', '%rapsyspack.path%', 'facebook', '%kernel.project_dir%/public/png/facebook.png' ]
         public: true
 ```
 
         public: true
 ```
 
@@ -125,19 +202,19 @@ Open a command console, enter your project directory and execute the following
 command to see default bundle configuration:
 
 ```console
 command to see default bundle configuration:
 
 ```console
-$ php bin/console config:dump-reference RapsysPackBundle
+$ bin/console config:dump-reference RapsysPackBundle
 ```
 
 Open a command console, enter your project directory and execute the following
 command to see current bundle configuration:
 
 ```console
 ```
 
 Open a command console, enter your project directory and execute the following
 command to see current bundle configuration:
 
 ```console
-$ php bin/console debug:config RapsysPackBundle
+$ bin/console debug:config RapsysPackBundle
 ```
 
 ### Step 4: Use the twig extension in your Template
 
 ```
 
 ### Step 4: Use the twig extension in your Template
 
-You can use a template like this to generate your first `rapsys_pack` enabled
+You can use a template like this to generate your first `rapsyspack` enabled
 template:
 
 ```twig
 template:
 
 ```twig
@@ -146,7 +223,7 @@ template:
        <head>
                <meta charset="UTF-8" />
                <title>{% block title %}Welcome!{% endblock %}</title>
        <head>
                <meta charset="UTF-8" />
                <title>{% block title %}Welcome!{% endblock %}</title>
-               {% stylesheet '//fonts.googleapis.com/css?family=Irish+Grover|La+Belle+Aurore' '@NamedBundle/Resources/public/css/{reset,screen}.css' '@Short/css/example.css' %}
+               {% stylesheet '//fonts.googleapis.com/css?family=Irish+Grover|La+Belle+Aurore' '@NamedBundle/public/css/{reset,screen}.css' '@Short/css/example.css' %}
                        <link rel="stylesheet" type="text/css" href="{{ asset_url }}" />
                {% endstylesheet %}
        </head>
                        <link rel="stylesheet" type="text/css" href="{{ asset_url }}" />
                {% endstylesheet %}
        </head>
@@ -196,9 +273,9 @@ namespace Rapsys\PackBundle\Filter;
 
 use Twig\Error\Error;
 
 
 use Twig\Error\Error;
 
-//This class will be defined in the parameter rapsys_pack.filters.(css|img|js).[x].class string
+//This class will be defined in the parameter rapsyspack.filters.(css|img|js).[x].class string
 class MyPackFilter implements FilterInterface {
 class MyPackFilter implements FilterInterface {
-       //The constructor arguments ... will be replaced defined in the parameter rapsys_pack.filters.(css|img|js).[x].args array
+       //The constructor arguments ... will be replaced with values defined in the parameter rapsyspack.filters.(css|img|js).[x].args array
        public function __construct(string $fileName, int $line, string $bin = 'mypack', ...) {
                //Set fileName
                $this->fileName = $fileName;
        public function __construct(string $fileName, int $line, string $bin = 'mypack', ...) {
                //Set fileName
                $this->fileName = $fileName;