946 Commits

Author SHA1 Message Date
6631ba0641 update uikit to 3.23.10 2025-06-16 23:30:31 +02:00
98320fe174 update uikit to 3.23.6 2025-04-29 09:22:41 +02:00
b8105cf9cc update uikit to 3.23.2 2025-03-05 12:44:15 +01:00
d7a93916e3 update uikit to 3.22.0 2025-01-13 18:47:59 +01:00
cec9dfc0e1 update htmx to 2.0.4 2024-12-21 01:28:39 +01:00
893b3d9fff put a log about generated main content and frames 2024-12-03 10:57:41 +01:00
7de9d1a819 put a log when a request job was not found 2024-12-03 10:34:17 +01:00
8748a63532 update uikit to 3.21.16 2024-11-28 00:33:38 +01:00
5eed025419 add trigger_htmx_event(...) methods to FunctionBase 2024-11-08 13:35:54 +01:00
f2e416b0f8 update htmx to 2.0.3 2024-10-09 19:50:27 +02:00
1c7043fa3e update uikit to 3.21.13 2024-09-26 22:13:33 +02:00
2bd4c5b35e print qt environment ids only when .qtcreator directory was created 2024-09-25 09:50:37 +02:00
f4481a84f4 fix: set a correct global working dir when generating a .clangd file 2024-09-24 23:41:35 +02:00
4c740690e0 use a QTCreator environmentid and a profileid from a local installation
When creating QTCreator project files use local EnvironmentId
and default profile id. By default the environment id is stored
in ~/.config/QtProject/QtCreator.ini and the profile id in
~/.config/QtProject/qtcreator/profiles.xml.
2024-09-24 16:45:26 +02:00
128c79cdc4 sort a makedepend output
Makefile.dep is sorted now - it's better when making a diff to a previous version.
2024-09-22 15:26:35 +02:00
7082677b2f add a clangd/clangdall and qtcreator/qtcreatorall make targets
Add a clangd make target:
$ make clangd
This installs a .clangd file with configuration (includes/macros/compiler flags)
for the clandg language server.

Add a clangdall make target:
$ make clangdall
This installs a .clangd also in pikotools/ezc/morm and tito libraries.

Add a qtcreator make target:
$ make qtcreator
This installs a .qtcreator directory with QTCreator IDE project files.
In the QTCreator you can open a project by selecting the .qtcreator/winix.creator
file.

You can use 'make qtcreator' again to refresh .qtcreator/winix.files,
the rest of the project files will not be modified.

Add a qtcreatorall make target:
$ make qtcreatorall
This installs a .qtcreator directory also in pikotools/ezc/morm and tito libraries.
2024-09-22 11:43:26 +02:00
257d8bbade change a database type to character varying(320) for a user.email field 2024-09-08 02:29:19 +02:00
a6ca71b131 check a length when validating an email
An email address has two parts:
 - the local part (before the "@") = max 64 characters
 - the domain part (after the "@") = max 255 characters
So maximum length is 64 + @ + 255 = 320 characters

https://www.rfc-editor.org/rfc/rfc5321.html#section-4.5.3.1
2024-09-08 02:05:43 +02:00
8634716aa7 add FunctionBase::push_url_to(...) methods 2024-09-08 02:05:05 +02:00
8a12629740 update htmx to 2.0.2 2024-08-19 15:32:56 +02:00
b07f2f7a59 remove unnecessary [end] tag 2024-08-12 02:25:47 +02:00
da90ef8e40 update uikit to 3.21.7 2024-07-20 15:20:09 +02:00
197f684488 update htmx to 2.0.1 2024-07-20 15:15:03 +02:00
e63838faeb improve frontend of emacs, ckeditor, tinymce, nicedit, meta and env functions
Improves in emacs:
- use htmx to send content to the controller
- show txt and formatted_txt content in the second panel
- show two tabs if "tabs" winix parameter is used
- add an option to show either one or two panels
- correctly resize the editor window (F11) when two panels are shown

Improves in ckeditor:
- use htmx to send content to the controller
- do not check automatically for ckeditor update

Improves in tinymce/nicedit/meta/env:
- use htmx to send content to the controller

while here:
- change PascalCase to snake_case in meta/env controllers
- update CodeMirror editor to 5.65.16
- udpate Showdown (markdown to html converter) to 2.1.0
2024-07-20 15:13:27 +02:00
89b37db48e update uikit to 3.21.6 2024-07-11 22:10:44 +02:00
68e7f44a76 do not send content when there is a htmx redirect 2024-07-11 21:58:52 +02:00
2490e2cc68 (ezc): generate only requested frames 2024-07-07 22:10:29 +02:00
b2f4c065ea remove a code to finish job requests when winix exits
Actually there was a bug and the code was not correctly waiting for the job requests.
2024-07-02 17:30:35 +02:00
20b40597fd try harder to find the main template and a function's template
If there is no a template (main template and function template) for the current
language then try to find a template for a default language or for a first
available language.
2024-06-29 22:28:39 +02:00
7df78838aa add assign_methods(...) functionality to the FunctionBase
in make_*() methods you can assing your controller methods in such a way:
  assign_methods(this,
    by_param(L"paramoption",                     &MyController::MyMethod3),
    by_param(L"paramoption1", L"paramoption2",   &MyController::MyMethod2),
    by_param_post(L"paramoption", L"postoption", &MyController::MyMethod1)
  );
2024-06-29 17:23:03 +02:00
b3bd9c6cf0 update htmx to 2.0.0 2024-06-27 16:37:05 +02:00
dadff8329e update uikit to 3.21.5 2024-06-27 11:46:45 +02:00
c30b7db041 add closing dialogs, redirecting and removing content functionality to the winix framework
add such new methods to FunctionBase:
- bool can_push_url_to_browser_history();
- void add_standard_models();
- void close_modal_dialogs();

- void prepare_doc_url(const wchar_t * local_url, pt::WTextStream & url);
- void prepare_doc_url(const wchar_t * local_url, std::wstring & url);
- std::wstring prepare_doc_url(const wchar_t * local_url = nullptr);
- std::wstring prepare_doc_url(const std::wstring & local_url);

- void redirect_to(const wchar_t * url, bool append_domain = true);
- void redirect_to(const std::wstring & url, bool append_domain = true);
- void redirect_to(const pt::WTextStream & url, bool append_domain = true);

- void redirect_to(const wchar_t * url, const wchar_t * frame_url, const wchar_t * dom_target);
- void redirect_to(const std::wstring & url, const std::wstring & frame_url, const std::wstring & dom_target);
- void redirect_to(pt::WTextStream & url, pt::WTextStream & frame_url, pt::WTextStream & dom_target);
- void redirect_to(pt::WTextStream & url, pt::WTextStream & frame_url, const wchar_t * dom_target);
- void redirect_to(const wchar_t * url, const wchar_t * frame_url, pt::WTextStream & dom_target);

- void retarged(const wchar_t * frame, const wchar_t * dom_target, const wchar_t * push_url = nullptr, const wchar_t * swap_algorithm = nullptr);
- void retarged(const std::wstring & frame, const std::wstring & dom_target, const std::wstring & push_url, const wchar_t * swap_algorithm = nullptr);
- void retarged(const wchar_t * frame, pt::WTextStream & dom_target, const wchar_t * push_url = nullptr, const wchar_t * swap_algorithm = nullptr);

- void remove_content(pt::WTextStream & dom_target, bool close_dialogs = false);
- void remove_content(const wchar_t * dom_target, bool has_postfix, long dom_target_postfix, bool close_dialogs = false);
- void remove_content(const wchar_t * dom_target, long dom_target_postfix, bool close_dialogs = false);
- void remove_content(const wchar_t * dom_target, bool close_dialogs = false);

- void update_content(const wchar_t * frame, pt::WTextStream & dom_target, bool close_dialogs = false);
- void update_content(const wchar_t * frame, const wchar_t * dom_target, bool has_postfix, long dom_target_postfix, bool close_dialogs = false);
- void update_content(const wchar_t * frame, const wchar_t * dom_target, long dom_target_postfix, bool close_dialogs = false);
- void update_content(const wchar_t * frame, const wchar_t * dom_target, bool close_dialogs = false);

while here:
- refactor PascalCase to snake_case in FunctionBase
- add start_request() and finish_request() methods to FunctionBase
- add has_*_access() methods to FunctionBase
- fix: FunctionBase::clear() method was not called if a request was assigned to a job
- add a WinixEzcHelper model
- allow to serialize a header if the header value is neither a string nor an integer
- refactor PascalCase to snake_case in functions: Emacs, Mkdir, Upload
2024-06-27 10:57:08 +02:00
6aa100f12c WIP: remove the old database abstraction layer
remove such classes:
- DbBase
- DbConn
- DbTextStream
- Db

while here:
- remove: TextStream, SLog, TexTextStream
2024-06-22 18:03:54 +02:00
5d457f3d4b (update to the new pikotools api): use a char32_t character as a main character when converting strings
Use a char32_t instead of a wchar_t type. This is needed on systems
where sizeof(wchar_t) is equal to 2.

This affects classes based on the pt::Stream such as Log and HtmlTextStream.
2024-06-01 00:33:15 +02:00
af0d34beb9 make depend 2024-05-31 00:32:56 +02:00
d122917f83 fix: correctly activate a user account 2024-05-27 18:22:47 +02:00
612501217c update uikit to 3.20.9 2024-05-12 16:16:56 +02:00
d86ab8f9c0 update uikit to 3.20.8 2024-04-29 23:59:30 +02:00
5a33563722 update htmx to 1.9.12 2024-04-28 19:45:16 +02:00
1c850b12ec add a q_encode(...) method to misc 2024-04-28 16:14:57 +02:00
140b4495df update jquery-file-upload to 10.32.0 2024-04-15 08:20:02 +02:00
8b0b25ed0a fix: correctly flush logs when there was a db migration error 2024-04-15 06:38:23 +02:00
eacdcfb980 update htmx to 3.19.4 2024-04-11 05:52:09 +02:00
132e7aa937 update htmx to 1.9.11 2024-03-20 03:15:05 +01:00
d9f3b69dde update uikit to 3.19.2 2024-03-20 03:07:17 +01:00
de753070a8 do not overwrite WINIX_INSTALL_DIR if already set 2024-03-11 16:59:45 +01:00
c1c6e6a588 install winix.so to a lib subdirectory 2024-03-11 16:12:13 +01:00
291147503f update uikit to 3.19.1 2024-03-08 22:34:42 +01:00
dbf7dfab82 improve the startup help messages 2024-03-08 22:01:33 +01:00