Revision history for Mojolicious application Slovo

2018.07.28
    -Features
        * Breadcrumb navigation up to the root page in the appbar.
        * Added new column 'aliases' to table 'domove'. It will be used to
          match a request to a specific domain from $c->req->headers->host.
    -Changes
        * Creating a page now redirects to the form for editing the newly
          created page.
        * Used some well known unicode symbols as icons.
        * Fixed bugs in side-drawer.
        * Upgraded to Mojo::SQLite 3.001 and Mojolicious 7.89.
        * Improved domove/_form.html.ep to use prefilled params.
        * Added missing license meta to Makefile.PL. Thanks, Mohammad S Anwar.

2018.07.20
    - Features
        * Sidebar shows a list of pages under the current page if the page is a
          folder.
        * Implemented 'select_box' in the new Slovo::Plugin::TagHelpers.
        * Using OpenAPI (fka Swagger) to retreive items in directory
          pages in the sidebar page menu.
    - Changes
        * Greatly improved code in _form.html.ep and other templates in the
          administration interface for 'celini' and 'stranici'.
        * Changed orthography for some celini semantic data_types:
          'въпросъ', 'ѿговоръ', 'белѣжка'.

2018.07.16
    - Changes
        * Fixed (also future potentially) failing tests caused by missing
          'use feature qw(lexical_subs unicode_strings);' on Perl 5.20-5.24.

2018.07.15
    - Features
        * (WIP) Using OpenAPI (fka Swagger) to retreive the sidebar page menu.
        * (WIP) added helper 'language' which will be later provided by
          Slovo::Plugin::L10N.
    - Changes
        * Improved/finished 'all_for_list' in Slovo::Model::Stranici. Added
          columns 'title' and 'is_dir' to the resultset.
        * Unified WHERE clause for executing/listing pages on the site by
          moving it to '_where_with_permissions' in Slovo::Model::Stranici.
        * Unified WHERE clause for executing/listing content in a page by
          moving it to where_with_permissions in Slovo::Model::Celini.
        * Improved 'login_ok' and added 'login' in Test::Mojo::Role::Slovo.

2018.07.10
    - Features
        * Link to /Ꙋправленѥ when user is signed in in the footer.
        * (WIP) Using OpenAPI (fka Swagger) to retreive the sidebar page menu.
    - Changes
        * Updated Mojolicious::Plugin::OpenAPI to 1.30 and enabled it.
        * removed api.json and added api-v1.0.json
        * Fixed failing tests on Perl 5.20.

2018.06.25
    - Features
        * Implemented a site layout, based on a MUI CSS example. We are getting
          closer to a MVP (Minimum Viable Product).
    - Changes
        * Avoided using varaiables and subroutine names written in azbouka due
          to a missing feature in PPI which causes Perl::Critic to falsely
          complain. See https://github.com/adamkennedy/PPI/issues/226

2018.06.22
    - Changes
        * User Guest is always loaded to have some default permissions for
          every not logged in user.
        * Replaced helper "is_user_authenticated" from
          Mojolicious::Plugin::Authentication. Now it checks if the current
          user is not Guest and returns true, false otherwise.
        * Now the user is really authenticated.
        * Removed unused methid "check" from Slovo::Controller::Auth.
        * Improved documentation.
    - Features
        * Better and working "Sign in" without transmitting plain text password.


2018.06.06
    - Changes
        * On failed login the guest user is loaded to have always a user.
        * We `use 5.020` in Slovo.pm to switch ON all Perl features available
          up to this version.
        * Loading of Model classes is postponed untill first use of the
          corresponding helper.
    -Features
        * Added attribute `domain` to Slovo::Controller.
        * Now UTF-8 characters are readable in dumped structures by $c->debug.
        * Added multidomain support. Many domains can be served by one Slovo
          applcation. Domains can be matched also by IPs from which they are
          served. For example 'http://127.0.0.1/alias.стр.html' finds the page
          'alias' in domain localhost.
        * When a page cannot be found a "Not Found" page is displayed.
        * When a page is displayed the `permissions` and `published` matter.
          Secondary groups of a user are supported. In preview mode
          (?прегледъ=1) published, hidden, deleted, start and stop are
          disregarded.

2018.05.24
    - Changes
        * Честитъ праздникъ на бꙋквите – Ден на Българската Писменостъ.
        * Many changes in progress towards displaying pages in the site.
    - Features
        * Implemented template and layout for rendering a regular page.
        * Using MUICSS for default styles.

2018.05.19
    - Changes
        * Shared methods "all", "find", "save", "remove", "add" in Slovo::Model.
        * Improved some templates and the index page.
        * Improved pages(stranici) validation.
    - Features
        * New content (celini) can be added.
        * Content (celini) can be edited and deleted.

2018.05.03
    - Changes
        * Improved the page form.
        * Removed custom config method from Slovo::Controller.
        * "page_type" can be (regular=>'обичайна',root=>'коренъ').
        * From the next version upgrading from an older version (like this)
        * will be possible.
    - Features
        * Pages with initial content can be edited
        * Pages can be "removed" (deleted=1).
        * Added initial set of pages with initial content in language
        * bg-bg(Слово=>Home page,Писания=>Blog,Вести=>News,Относно=>About).
2018.04.30
    - Changes
        * Improved startup.
        * Added some tests for creating and updating a user.
    - Features
        * Added Slovo::Validator with new filter - xml_escape.
        * Creation of new page with initial content.

2018.04.15
    Unstable: WIP!
    - Changes
        * Improved documentation.
        * Switched $CODENAME to U+2C0C GLAGOLITIC CAPITAL LETTER DJERVI (Ⰼ)
    - Features
        * Implemented Slovo::Plugin::MojoDBx. Not using sqlite.conf
        anymore. This plugin can be moved to Mojolicious namespace.
        There is nothing specific to Slovo in it.
        * WIP - Added tables 'domove', 'stranici' and 'celini'. Beginning
        of a site.
        * Generated MVC and OpenAPI from the tables using
        Mojolicious::Command::generate::resources.
    - Bugs

2018.04.09
    - Христос воскресе
    - Switched $CODENAME to U+2C0B GLAGOLITIC CAPITAL LETTER I (Ⰻ)
    - Improved documentation.
    - Added first migration file. Table definitions and initial data are taken
      from Ado.
    - Used Mojolicious::Command::generate::resources to generate code for
      groups and users resources like this:
      $ generate resources -D dbx -t "groups,users" -T \
      lib/Slovo/resources/templates --api_dir lib/Slovo/resources
    - Added sqlite.conf which can be switched with pg.conf or mysql.conf.
      This way the database can be easily switched by adding specific
      adapter configuration files.
    - Added helper 'dbx' which will be instance of Mojo::SQLite, Mojo::Pg or
      Mojo::mysql instead of corresponding 'sqlite', 'pg', or 'mysql'.
    - Added Slovo::Cotroller.
    - Improved a bit the generated code for models. Added parent class
      Slovo::Model.
    - Added dependency Mojolicious::Plugin::Authentication and implemented
      Slovo::Controller::Auth.
    - Added TODO section to the Slovo POD.
    - Added Test::Mojo::Role::Slovo.
    - Added tests for sign_in.
    - Added tests for creating a users.

2018.03.25
    - Improved documentation.
    - Implemented loading of plugins specified in slovo.conf.
    - Added dependency Mojolicious::Plugin::RoutesConfig.

2018.03.24
    - Made the application installable as any perl module.
        * added EXE_FILES to the installation
        * Fixed unwanted installation of README.pod
        * Added new target "readme" for "make" which is also part of the
        "dist" target.
        * Added new target perltidy which is also part of the "test" target.
    - Made the application installable as a perl application.

2018.03.23
    - Original version; created by ExtUtils::ModuleMaker 0.56
    - Generated application using `mojo generate app Slovo`
    - Modified Makefile.PL and whatever needed so most basic tests pass.
    - Used $CODENAME from Ado to indicate that this project is continuation of
      Ado (in a way).