goalio / GoalioForgotPassword

A Zend Framework 2 (ZF2) Module offering forgot password via e-mail functionality to ZfcUser
BSD 3-Clause "New" or "Revised" License
42 stars 49 forks source link

GoalioForgotPassword

Version 1.0.0 Created by the goalio UG (haftungsbeschränkt)

Introduction

A Zend Framework 2 (ZF2) Module offering forgot password via e-mail functionality to ZfcUser

Information

I developed this module to use in our goalio application. There are currently no tests and support can be a little slow because we are a small company with only two developers. I appreciate any feedback, pull requests are even better.

Requirements

Features / Goals

Installation

Main Setup

With composer

  1. Add this project and the requirements in your composer.json:

    "require": {
        "goalio/goalio-forgotpassword": "1.*"
    }
  2. Now tell composer to download GoalioForgotPassword by running the command:

    $ php composer.phar update

Post installation

  1. Enabling it in your application.config.phpfile.

    <?php
    return array(
        'modules' => array(
            // ...
            'ZfcBase',
            'ZfcUser',
            'GoalioMailService',
            'GoalioForgotPassword'
        ),
        // ...
    );
  2. Then Import the SQL schema located in ./vendor/goalio/goalio-forgotpassword/data/schema.sql.

  3. Make sure that the MailService is configured correctly.

Post-Install: Zend\Db

  1. If you do not already have a valid Zend\Db\Adapter\Adapter in your service manager configuration, put the following in ./config/autoload/database.local.php:

    <?php
    
    $dbParams = array(
        'database'  => 'changeme',
        'username'  => 'changeme',
        'password'  => 'changeme',
        'hostname'  => 'changeme',
    );
    
    return array(
        'service_manager' => array(
            'factories' => array(
                'Zend\Db\Adapter\Adapter' => function ($sm) use ($dbParams) {
                    return new Zend\Db\Adapter\Adapter(array(
                        'driver'    => 'pdo',
                        'dsn'       => 'mysql:dbname='.$dbParams['database'].';host='.$dbParams['hostname'],
                        'database'  => $dbParams['database'],
                        'username'  => $dbParams['username'],
                        'password'  => $dbParams['password'],
                        'hostname'  => $dbParams['hostname'],
                    ));
                },
            ),
        ),
    );

Post-Install: Doctrine2 ORM

There is an additional module for Doctrine integration GoalioForgotPasswordORM

Usage

Navigate to http://yourproject/user and you should land on a login page.

Options

The ForgotPassword module has some options to allow you to quickly customize the basic functionality. After installing, copy ./vendor/goalio/goalio-forgotpassword/config/goalioforgotpassword.global.php.dist to ./config/autoload/goalioforgotpassword.global.php and change the values as desired.

The following options are available:

Acknowledgements

Daniel Strøm (https://github.com/Danielss89) for most of the basic work in the cookie adapter etc.