diff --git a/fastfony/identity-bundle/1.0/config/packages/fastfony_identity.yaml b/fastfony/identity-bundle/1.0/config/packages/fastfony_identity.yaml
new file mode 100644
index 00000000..14d4fa1b
--- /dev/null
+++ b/fastfony/identity-bundle/1.0/config/packages/fastfony_identity.yaml
@@ -0,0 +1,28 @@
+fastfony_identity:
+ user:
+ # Your custom User entity class extends Fastfony\IdentityBundle\Entity\Identity\User (optional)
+ #class: 'App\Entity\User'
+ #require_email_verification: true # Require email verification for new users (default: false)
+ role:
+ # Your custom Role entity class extends Fastfony\IdentityBundle\Entity\Identity\Role (optional)
+ #class: 'App\Entity\Role'
+ # Default role assigned to new users (if you want to assign one different from ROLE_USER)
+ #default_role: 'ROLE_ADMIN'
+ group:
+ # Your custom Group entity class extends Fastfony\IdentityBundle\Entity\Identity\Group (optional)
+ #class: 'App\Entity\Group'
+ login:
+ #default_method: 'login_link' # Default login method: 'form_login' or 'login_link' (default: 'form_login')
+ registration:
+ #enabled: true # Enable or disable user registration (default: false)
+ login_link:
+ #enabled: false # Enable or disable login via email link (default: true)
+ #email_subject: 'Your login link' # Subject of the email sent with the login link (text or translation key)
+ #limit_max_ask_by_minute: 3 # Maximum number of login link requests in one minute
+ request_password:
+ #email_subject: 'Reset your password' # Subject of the email sent with the password reset link (text or translation key)
+ #email_content: 'Click on the button below to reset your password.' # Content of the email sent with the password reset link (text or translation key)
+ #email_action_text: 'Reset my password' # Text of the action button in the email sent with the password reset link (text or translation key)
+ #lifetime: 900 # Lifetime of the password reset token in seconds (default: 900 seconds = 15 minutes)
+ #redirect_route: 'app_homepage' # Route to redirect to after a successful password reset
+
diff --git a/fastfony/identity-bundle/1.0/config/packages/mailer.yaml.dist b/fastfony/identity-bundle/1.0/config/packages/mailer.yaml.dist
new file mode 100644
index 00000000..02a2555c
--- /dev/null
+++ b/fastfony/identity-bundle/1.0/config/packages/mailer.yaml.dist
@@ -0,0 +1,4 @@
+framework:
+ mailer:
+ envelope:
+ sender: 'noreply@your-website.com'
diff --git a/fastfony/identity-bundle/1.0/config/routes/fastfony_identity.yaml b/fastfony/identity-bundle/1.0/config/routes/fastfony_identity.yaml
new file mode 100644
index 00000000..30b72a95
--- /dev/null
+++ b/fastfony/identity-bundle/1.0/config/routes/fastfony_identity.yaml
@@ -0,0 +1,2 @@
+fastfony_identity:
+ resource: "@FastfonyIdentityBundle/config/routes/all.yaml"
diff --git a/fastfony/identity-bundle/1.0/manifest.json b/fastfony/identity-bundle/1.0/manifest.json
new file mode 100644
index 00000000..0527316e
--- /dev/null
+++ b/fastfony/identity-bundle/1.0/manifest.json
@@ -0,0 +1,38 @@
+{
+ "bundles": {
+ "Fastfony\\IdentityBundle\\FastfonyIdentityBundle": ["all"]
+ },
+ "copy-from-recipe": {
+ "config/": "%CONFIG_DIR%/"
+ },
+ "add-lines": [
+ {
+ "file": "config/packages/stof_doctrine_extensions.yaml",
+ "content": " orm:\n default:\n timestampable: true\n",
+ "position": "after_target",
+ "target": "stof_doctrine_extensions:",
+ "warn_if_missing": true
+ },
+ {
+ "file": "config/packages/security.yaml",
+ "content": " fastfony_identity_user_provider:\n entity:\n class: Fastfony\\IdentityBundle\\Entity\\Identity\\User # if you extend the User class, change this to your class\n property: email\n\n",
+ "position": "after_target",
+ "target": " providers:",
+ "warn_if_missing": true
+ },
+ {
+ "file": "config/packages/security.yaml",
+ "content": "\n fastfony_identity:\n lazy: true\n provider: fastfony_identity_user_provider\n user_checker: Fastfony\\IdentityBundle\\Security\\UserChecker\n form_login:\n login_path: form_login\n check_path: form_login\n enable_csrf: true\n csrf_token_id: login\n form_only: true\n login_link:\n check_route: login_check\n signature_properties: [ id, email ]\n max_uses: 3\n entry_point: Fastfony\\IdentityBundle\\Security\\CustomEntryPoint\n remember_me:\n always_remember_me: true\n signature_properties: [ 'id', 'email', 'password' ]\n switch_user: true\n login_throttling:\n max_attempts: 3\n logout:\n path: /logout\n clear_site_data:\n - cookies\n - storage\n\n",
+ "position": "after_target",
+ "target": " security: false",
+ "warn_if_missing": true
+ },
+ {
+ "file": "config/packages/security.yaml",
+ "content": " - { path: ^/secure-area/, roles: ROLE_USER } # Adjust as needed\n",
+ "position": "after_target",
+ "target": " access_control:",
+ "warn_if_missing": true
+ }
+ ]
+}
diff --git a/fastfony/identity-bundle/1.0/post-install.txt b/fastfony/identity-bundle/1.0/post-install.txt
new file mode 100644
index 00000000..e005b2e9
--- /dev/null
+++ b/fastfony/identity-bundle/1.0/post-install.txt
@@ -0,0 +1,20 @@
+Fastfony/IdentityBundle is almost ready:
+
+1. A config/packages/fastfony_identity.yaml> and a config/routes/fastfony_identity.yaml> file has been created for you.
+
+2. The config/packages/security.yaml> and config/packages/stof_doctrine_extensions.yaml> files have been updated where the expected configuration lines were found; please verify these changes.
+
+3. Merge the content of config/packages/mailer.yaml.dist> into your config/packages/mailer.yaml> file and set your MAILER_DSN> environment variable if it is not already done.
+
+4. Create the database schema:
+
+ Option 1 - Generate and run migrations to create the database tables:
+
+ php bin/console doctrine:migrations:diff
+ php bin/console doctrine:migrations:migrate>
+
+ Option 2 - Or without migrations, you can create the schema directly:
+
+ php bin/console doctrine:schema:update --force>
+
+Enjoy!