NAME
    Ado::Plugin::Vest - Messaging services for an Ado system!

DESCRIPTION
    Ado::Plugin::Vest implements a (not too) naive messaging service for any
    web-application based on Ado. It can be used as a chat between two
    users, as commenting widget under articles, for showing system messages
    etc. Other uses are also possible. You can create your client (HTML5 or
    desktop) application and start making Ajax (or Websocket - TODO)
    requests. Currently a HTTP based chat application is being implemented
    as a proof of concept. Go to "http://yourdomain/vest" and try it.

    Combined with the OAuth2 authentication support in Ado this can be a
    good foundation for a community or intranet site. Any Google+ or
    Facebook user can authenticate and use it for instant messages.

    Note that this distribution is fairly experimental and the author gladly
    accepts proposals enlightenment and inspiration.

SYNOPSIS
    1. To enable this plugin after installation, add it to
    "etc/ado.$mode.conf".
          #"plugins" section *after* DSC plugin.
          plugins => [
            #...
            'vest',
            #...
         ],

    2. Restart Ado
    3. Login via Google+ or Facebook : http://yourdomain/authorise/$provider
    4. Go to http://yourdomain/vest and search for contacts by name. They
    should have been signed up already like you.
    5. Have some chat...

ATTRIBUTES
    Ado::Plugin::Vest inherits all atributes from Ado::Plugin.

METHODS
    Ado::Plugin::Vest implements the following methods.

  register
    Loads routes described in "etc/plugins/vest.conf". Makes the plugin
    configuration available at "$app->config('Ado::Plugin::Vest')". Creates
    the table "vest" if it does not exist yet. Returns $self.

HOOKS
    Ado::Plugin::Vest registers to only one hook.

  after_user_add
    Ado::Plugin::Vest registers to the hook "after_user_add" in
    Ado::Plugin::Auth. It adds the newly registered user to the group
    'vest', sends him a wellcome message and creates a group for user's
    contacts named "vest_contacts_$user->id". When the user adds someone as
    a contact he/she is added to this group.

SEE ALSO
    Ado::Control::Vest, Ado::Control, Mojolicious::Controller,
    Ado::Model::Vest, Ado::Model, "Model_View_Controller" in
    Mojolicious::Guides::Growing, "Controller_class" in
    Mojolicious::Guides::Growing

AUTHOR
    Красимир Беров (Krasimir Berov)

COPYRIGHT AND LICENSE
    Copyright 2014 Красимир Беров (Krasimir Berov).

    This program is free software, you can redistribute it and/or modify it
    under the terms of the GNU Lesser General Public License v3 (LGPL-3.0).
    You may copy, distribute and modify the software provided that
    modifications are open source. However, software that includes the
    license may release under a different license.

    See http://opensource.org/licenses/lgpl-3.0.html for more information.

