Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Profile Bundle Laravel Package

avanzu/profile-bundle

View on GitHub
Deep Wiki
Context7

Avanzu Profile Bundle

Create User Entity

use Doctrine\ORM\Mapping as ORM;
use Avanzu\ProfileBundle\Entity\User as BaseUser;

/**
 * @ORM\Entity()
 */
class User extends BaseUser {}

Create User Type

use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolverInterface;

class UserType extends AbstractType
{
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder
            ->add('username')
            ->add('email')
            ->add('plainPassword', 'repeated',
                  array(
                'first_name'  => 'password',
                'second_name' => 'confirm',
                'type'        => 'password',
            ));
        ;
    }

    public function setDefaultOptions(OptionsResolverInterface $resolver)
    {
        $resolver->setDefaults(array(
            'data_class' => 'Pma\CommonBundle\Entity\User'
        ));
    }

    public function getName()
    {
        return 'avanzu_profile_user';
    }
}

Configuration:


#config.yml
avanzu_profile: 
    user_class: Pma\CommonBundle\Entity\User
    form:
      class:
        user: Pma\CommonBundle\Form\Type\UserType

# routing.yml 
avanzu_profile_profile: 
    resource: "@AvanzuProfileBundle/Controller/ProfileController.php"
    type: annotation
    prefix: /profile

avanzu_profile_security: 
  resource: "@AvanzuProfileBundle/Controller/SecurityController.php"
  type: annotation
  prefix: /

avanzu_profile_registration: 
  resource: "@AvanzuProfileBundle/Controller/RegistrationController.php"
  type: annotation
  prefix: /

avanzu_profile_resetting: 
  resource: "@AvanzuProfileBundle/Controller/ResettingController.php"
  type: annotation
  prefix: /

# security.yml

security:
    encoders:
        Avanzu\ProfileBundle\Entity\User: sha512

providers:
    avanzu_profile_bundle:
        entity: { class: __your bundle and userclass__, property: username }

firewalls:
    main:
        pattern: ^/
        provider: avanzu_profile_bundle
        form_login: 
          login_path: /login
          check_path: /login-check
        anonymous: ~
        logout: ~


access_control:
    - { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY}
    - { path: ^/profile, roles: ROLE_USER }
    - { path: ^/, roles: IS_AUTHENTICATED_ANONYMOUSLY }        

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
yandex/translate-api
voku/simple_html_dom
league/flysystem-vfs
bkwld/upchuck
filament/spatie-laravel-tags-plugin
capell-app/block-library
axium/identity
cetria/laravel-dummy-models
cetria/reflection-helper
agropredict/sso-auth-bundle
evolvestudio/spam-protection
datacore/hub-sdk
develia/commons
cuci/prototurk-sdk
cuci/prototurk-sdk-symfony
develia/geo-bundle
dreamzy/livewire-charts
touchestate-sdk/php-sdk
22h/doctrine-garbage-collection-bundle
agtp/agtp-php