Revision history for Mojolicious application Slovo
2018.08.08
-Features
* Implemented /<:страница>/<*цѣлина>.html - /page/article.html. This
allows pages to act as category pages for collections of articles for
example.
* Added partial templates for all data types from table celini and a
generic one for custom data types.
* Slovo::Plugin::DefaultHelpers – additional default helpers for Slovo.
* Implemented Slovo::Controller::Role::Stranica with wrapper around
execute() to share some common stash settings, preparations and
checks before the page is rendered and leave room for executing code
after the page is rendered.
-Changes
* Now the IDN is always shown decoded in the sidedrawer.
* Moved helpers 'language' and 'is_user_authenticated' from Slovo to
Slovo::Plugin::DefaultHelpers.
* DefaultHelpers and TagHelpers are loaded unconditionally after all
other mandatory for Slovo plugins.
* Improved action execute and its template in
Slovo::Contoller::Stranici. Added partial templates for almost all
celini data_types. Moved my $breadcrumb fom controler to
Slovo::Model::Stranici where it belongs.
2018.08.00
-Features
* Domains can have several aliases and pages can be found under
different aliases - Multidomain support.
* Made OpenAPI API specification allways available via helper
'openapi_spec'.
-Changes
* Changed CODENAME to U+2C0D GLAGOLITIC CAPITAL LETTER KAKO (Ⰽ).
* This is a magor release. We have a Minimal Viable Product.
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).