2017 © Pedro Peláez
 

library warder

A use package for Windwalker.

image

lyrasoft/warder

A use package for Windwalker.

  • Friday, July 27, 2018
  • by asika32764
  • Repository
  • 2 Watchers
  • 1 Stars
  • 3,721 Installations
  • PHP
  • 1 Dependents
  • 0 Suggesters
  • 2 Forks
  • 22 Open issues
  • 41 Versions
  • 12 % Grown

The README.md

Windwalker Warder

Installation Via Composer

Add this to composer.json and run composer update., (*1)

``` json { "windwalker/warder": "1.*" }, (*2)


### Register Package Register warder to Windwalker, you can prepare an `admin` and `front` package to support backend and frontend. ``` php // src/Windwalker/Windwalker.php use Phoenix\PhoenixPackage; use Lyrasoft\Warder\WarderPackage; // ... public static function loadPackages() { return array( 'system' => new SystemPackage, 'phoenix' => new PhoenixPackage, // You must install phoenix first 'warder' => new WarderPackage, // Add warder package // Prepare an admin and frontend package 'admin' => AdminPackage, 'front' => FrontPackage ); } // ...

Migration

Run php bin/console migration migrate -p=warder --seed, (*3)

Or copy vendor/windwalker/warder/src/Migration and vendor/windwalker/warder/src/Seed files to, (*4)

resources/migration and resources/seed, (*5)

You can add your own columns to support more profiles., (*6)

Copy Config

Copy vendor/windwalker/warder/src/config.dist.yml to etc/package/warder.yml., (*7)

Or copy this config code:, (*8)

``` yaml user: login_name: username default_group: registered session_name: user, (*9)

table: users: users user_socials: user_socials groups: groups user_group_maps: user_group_maps actions: actions, (*10)

methods: warder: \Lyrasoft\Warder\Authentication\Method\WarderMethod # social: \Lyrasoft\Warder\Authentication\Method\SocialMethod, (*11)

frontend: package: front view: extends: _global.html redirect: login: home logout: login forget: login login: return_key: return language: prefix: warder., (*12)

admin: package: admin view: extends: _global.admin.admin redirect: login: home logout: login login: return_key: return language: prefix: warder., (*13)

class: handler: Lyrasoft\Warder\Handler\UserHandler data: Lyrasoft\Warder\Data\UserData, (*14)


If your package not named `admin` and `front`, set the package alias in this config. ### Register Routing Add Warder's routing config and namespace aliases to your package that your package can auto fetch Warder pages. ``` php // src/Front/FrontPackage.php use Lyrasoft\Warder\Helper\WarderHelper; // ... // ... public function loadRouting() { // ... $routes = array_merge($routes, WarderHelper::getFrontendRouting()); return $routes; }

Now go to /{front@routing}/login your will see a login page auto fetched., (*15)

p-2016-02-28-001, (*16)

You can do same thing to admin package, (*17)

``` php // src/Admin/AdminPackage.php, (*18)

// ..., (*19)

public function loadRouting()
{
    // ...

    $routes = array_merge($routes, WarderHelper::getAdminRouting());

    return $routes;
}

// ..., (*20)


Then you can see User admin at `/{admin@routing}/users`: ![p-2016-02-28-002](https://cloud.githubusercontent.com/assets/1639206/13378429/81d2ab26-de41-11e5-8721-2406162bb230.jpg) ![p-2016-02-28-003](https://cloud.githubusercontent.com/assets/1639206/13378428/81ce25f6-de41-11e5-9e8b-79cde415f061.jpg) ## Override Objects and Templates You can override warder's objects in your package. For example, create `Front/Controller/User/LoginGetController.php` will load priority than `Windwalker/Warder/Controller/User/LoginGetController.php`. You can override something in this class. ``` php <?php namespace Front\Controller\User; class LoginGetController extends \Lyrasoft\Warder\Controller\User\LoginGetController { protected function prepareModelState(Model $repository) { // Do something parent::prepareModelState($repository); } }

These files can be override:, (*21)

Front:, (*22)

# Controller
src/Controller/User/AuthController.php
src/Controller/User/Forget/CompleteGetController.php
src/Controller/User/Forget/ConfirmGetController.php
src/Controller/User/Forget/ConfirmSaveController.php
src/Controller/User/Forget/RequestGetController.php
src/Controller/User/Forget/RequestSaveController.php
src/Controller/User/Forget/ResetGetController.php
src/Controller/User/Forget/ResetSaveController.php
src/Controller/User/LoginGetController.php
src/Controller/User/LoginSaveController.php
src/Controller/User/LogoutSaveController.php
src/Controller/User/Profile/GetController.php
src/Controller/User/Profile/SaveController.php
src/Controller/User/Registration/ActivateSaveController.php
src/Controller/User/Registration/RegistrationGetController.php
src/Controller/User/Registration/RegistrationSaveController.php 
src/Controller/User/SocialLoginController.php

# Form
src/Form/Profile/EditDefinition.php
src/Form/User/ForgetConfirmDefinition.php
src/Form/User/ForgetRequestDefinition.php
src/Form/User/LoginDefinition.php
src/Form/User/RegistrationDefinition.php
src/Form/User/ResetDefinition.php

# Model
src/Model/ProfileModel.php
src/Model/UserModel.php

# Template
src/Templates/profile/profile.blade.php
src/Templates/user/forget/complete.blade.php
src/Templates/user/forget/confirm.blade.php
src/Templates/user/forget/request.blade.php
src/Templates/user/forget/reset.blade.php
src/Templates/user/login.blade.php
src/Templates/user/mail/forget.blade.php
src/Templates/user/mail/registration.blade.php
src/Templates/user/registration.blade.php

# View
src/View/Profile/ProfileHtmlView.php
src/View/User/UserHtmlView.php

Admin:, (*23)

# Controller
src/Admin/Controller/User/GetController.php
src/Admin/Controller/User/LoginGetController.php
src/Admin/Controller/User/LoginSaveController.php
src/Admin/Controller/User/LogoutSaveController.php
src/Admin/Controller/User/SaveController.php
src/Admin/Controller/Users/Batch/ActivateController.php
src/Admin/Controller/Users/Batch/BlockController.php
src/Admin/Controller/Users/Batch/UnblockController.php
src/Admin/Controller/Users/Batch/UpdateController.php
src/Admin/Controller/Users/BatchController.php
src/Admin/Controller/Users/CopyController.php
src/Admin/Controller/Users/DeleteController.php
src/Admin/Controller/Users/FilterController.php
src/Admin/Controller/Users/GetController.php

# Form
src/Admin/Form/User/EditDefinition.php
src/Admin/Form/User/LoginDefinition.php
src/Admin/Form/Users/BatchDefinition.php
src/Admin/Form/Users/FilterDefinition.php

# Model
src/Admin/Model/UserModel.php

# Templates
src/Admin/Templates/user/login.blade.php
src/Admin/Templates/user/toolbar.blade.php
src/Admin/Templates/user/user.blade.php
src/Admin/Templates/users/batch.blade.php
src/Admin/Templates/users/modal.blade.php
src/Admin/Templates/users/toolbar.blade.php
src/Admin/Templates/users/users.blade.php

# View
src/Admin/View/User/UserHtmlView.php
src/Admin/View/Users/UsersHtmlView.php

Override UserHandler and UserData

Change class.data in config file that you can add some new methods:, (*24)

``` yaml, (*25)

etc/package/warder.yml

...

class: handler: Lyrasoft\Warder\Handler\UserHandler data: MyUserData, (*26)


``` php class MyUserData extends \Lyrasoft\Warder\Data\UserData { const CUSTOMER = 0; const FREELANCER = 1; public function isFreelancer() { return (bool) $this->freelancer == static::FREELANCER; } }

``` php $user = User::get($id);, (*27)

$user->isFreelancer();, (*28)


## Social Login Warder use [Hybrid Auth](http://hybridauth.sourceforge.net/) to support multiple OAuth social login. Please install `"hybridauth/hybridauth": "^2.6"` first. After composer updated, copy `vendor/wainwaler/warder/src/secret.dist.yml` to `etc/secret.yml` ``` yaml #Social Login social_login: facebook: enabled: false id: secret: scope: email twitter: enabled: false key: secret: scope: google: enabled: false id: secret: scope: 'https://www.googleapis.com/auth/userinfo.profile https://www.googleapis.com/auth/userinfo.email' yahoo: enabled: false key: secret: scope: github: enabled: false id: secret: scope:

Currently Warder only support facebook, twitter, google, yahoo and github., (*29)

Go to Documentation to see how to register apps and get API key and secret code., (*30)

When a social provider set to enabled, the button will auto appear to login page:, (*31)

p-2016-02-28-004, (*32)

If you use Additional Providers like GitHub, you must copy provider class file from vendor/hybridauth/hybridauth/additional-providers to vendor/hybridauth/hybridauth/hybridauth/Hybrid/Providers, (*33)

The Versions

27/07 2018

dev-master

9999999-dev https://github.com/lyrasoft/warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0+ LGPL-2.0-or-later

The Requires

 

17/07 2018

1.4.5

1.4.5.0 https://github.com/lyrasoft/warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0-or-later

The Requires

 

09/07 2018

1.4.4

1.4.4.0 https://github.com/lyrasoft/warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0-or-later

The Requires

 

09/07 2018

1.4.3

1.4.3.0 https://github.com/lyrasoft/warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0-or-later

The Requires

 

08/07 2018

1.4.2

1.4.2.0 https://github.com/lyrasoft/warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0-or-later

The Requires

 

25/06 2018

1.4.1

1.4.1.0 https://github.com/lyrasoft/warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0-or-later

The Requires

 

11/06 2018

1.4

1.4.0.0 https://github.com/lyrasoft/warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0-or-later

The Requires

 

25/02 2018

1.3.6

1.3.6.0 https://github.com/lyrasoft/warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0-or-later

The Requires

 

19/02 2018

1.3.5

1.3.5.0 https://github.com/lyrasoft/warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0-or-later

The Requires

 

29/11 2017

1.3.4

1.3.4.0 https://github.com/lyrasoft/warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0+

The Requires

 

24/11 2017

1.3.3

1.3.3.0 https://github.com/lyrasoft/warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0+

The Requires

 

04/11 2017

1.3.2

1.3.2.0 https://github.com/lyrasoft/warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0+

The Requires

 

11/10 2017

1.3.1

1.3.1.0 https://github.com/lyrasoft/warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0+

The Requires

 

04/10 2017

1.3

1.3.0.0 https://github.com/lyrasoft/warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0+

The Requires

 

18/07 2017

1.2.3

1.2.3.0 https://github.com/lyrasoft/warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0+

The Requires

 

18/07 2017

dev-kiyayeh-patch-1

dev-kiyayeh-patch-1 https://github.com/lyrasoft/warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0+

The Requires

 

13/07 2017

1.2.2

1.2.2.0 https://github.com/lyrasoft/warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0+

The Requires

 

23/06 2017

1.2.1

1.2.1.0 https://github.com/lyrasoft/warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0+

The Requires

 

18/06 2017

1.2

1.2.0.0 https://github.com/lyrasoft/warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0+

The Requires

 

08/06 2017

1.1.6

1.1.6.0 https://github.com/lyrasoft/warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0+

The Requires

 

04/11 2016

1.1.5

1.1.5.0 https://github.com/lyrasoft/warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0+

The Requires

 

10/10 2016

1.1.4

1.1.4.0 https://github.com/lyrasoft/warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0+

The Requires

 

21/09 2016

1.1.3

1.1.3.0 https://github.com/lyrasoft/warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0+

The Requires

 

15/08 2016

1.1.2

1.1.2.0 https://github.com/lyrasoft/warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0+

The Requires

 

19/07 2016

1.1.1

1.1.1.0 https://github.com/lyrasoft/warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0+

The Requires

 

18/07 2016

1.1

1.1.0.0 https://github.com/lyrasoft/warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0+

The Requires

 

27/06 2016

1.1-alpha

1.1.0.0-alpha https://github.com/lyrasoft/warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0+

The Requires

 

18/05 2016

1.0.12

1.0.12.0 https://github.com/ventoviro/windwlaker-warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0+

The Requires

 

05/04 2016

1.0.11

1.0.11.0 https://github.com/ventoviro/windwlaker-warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0+

The Requires

 

02/04 2016

1.0.10

1.0.10.0 https://github.com/ventoviro/windwlaker-warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0+

The Requires

 

24/03 2016

1.0.9

1.0.9.0 https://github.com/ventoviro/windwlaker-warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0+

The Requires

 

23/03 2016

1.0.8

1.0.8.0 https://github.com/ventoviro/windwlaker-warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0+

The Requires

 

18/03 2016

1.0.7

1.0.7.0 https://github.com/ventoviro/windwlaker-warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0+

The Requires

 

16/03 2016

1.0.6

1.0.6.0 https://github.com/ventoviro/windwlaker-warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0+

The Requires

 

14/03 2016

1.0.5

1.0.5.0 https://github.com/ventoviro/windwlaker-warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0+

The Requires

 

13/03 2016

1.0.4

1.0.4.0 https://github.com/ventoviro/windwlaker-warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0+

The Requires

 

04/03 2016

1.0.3

1.0.3.0 https://github.com/ventoviro/windwlaker-warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0+

The Requires

 

02/03 2016

1.0.2

1.0.2.0 https://github.com/ventoviro/windwlaker-warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0+

The Requires

 

01/03 2016

1.0.1

1.0.1.0 https://github.com/ventoviro/windwlaker-warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0+

The Requires

 

28/02 2016

1.0.0

1.0.0.0 https://github.com/ventoviro/windwlaker-warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0+

The Requires

 

12/02 2016

1.0.0-beta

1.0.0.0-beta https://github.com/ventoviro/windwlaker-warder

A use package for Windwalker.

  Sources   Download

LGPL-2.0+

The Requires