set via db options "db_convert_type" as array with "on", "json", "numeric",
"bytea"
"on" only converts know good types: "bool", "int"
"json" will convert json/jsonb to array
"bytea" will decode escaped bytea to string (note: this might change to resource)
"numeric" will convert to float.
NOTE: if a numeric number is too large a covnersion might drop data.
Use with care.
Convert flags can be chagned with dbSetConvertFlag and dbUnsetConvertFlag
All convert flags are in "DB\Options\Convert" as enum.
- do not sync .user.ini file in sync template
- add PHP 8.2 for test target phpunit
- cel/phfo builder update to not close br or img tags (besides input)
- psalm settings update
- add doctype to all base templates
create_mo:
set auto base folder bases on current location so we do not need do
adjust paths in script
phpstan fixes:
edit_base.php
CoreLibs/Basci.php
CoreLibs/DB/SQL/PgSQL.php
Update documentation in method headers
CoreLibs/Combined/DateTime.php
Will check if there is a read_env_file.php and then run it to load .env
file in /configs folder
This file can hold secrets that are not to be checked into git
Updated edit.js file to be eslint compatible
Add a new format bytes with using bytes for lowest tear instead of 0.n
kb
Add a new reverse function to convert from human readable bytes to byte
number
Big fix with IMG_PNG constant use. Switched to IMAGETYPE_*
Some code cleanup in config files (array, DEFINE->define, etc)
Code cleanup in DB:IO class, especially for consistent returning
array/single data blocks
Some javascript core lib update
When logged in, the last loggedin time is stored in the edit_user table,
additional to the normal logging.
More array() to [] conversion in config files, etc
Javascript: add math.round
Basic Class: Fix key length array mapping to more efficiont loop run
DB/IO: some name fixes in get key function description/comments
SmartyExtended: add CORE CSS/JS file include if exists. Follows after
MAIN and BEFORE page and special
Basic: remove all error handling override for any class vars to avoid
exploiting private/public/protected settings
Basic: Add MIME lookup table with array. So you can return a File name
description (human understandable) to a mime handler.
See mimeInitApps for basic list
IO: Bug fix for counting prepared statment place holders. If there are
$1, $1, $2 then those are TWO and not THREE
IO: various wrappers for returning PK, Extended return set, Number for
rows
Those will be extended to all variables
DB IO return functions for inserted primary key and extended RETURNING
data
Add dev set for html options grouping addition for nested arrays/object
lists
Fix edit tables edit access uid declaration
Add password reset time/uid for a password reset flow
Add password valid regex check constants in master config
Add deep copy javascript object instead of direct copy to truly create
new element for attaching in the cel flow
Add attach array of cel elements intead of object with cel sub block
This is jquery only update
Add new overlay and action indicator for auto any overlay boxes.
Stack with GS_OB_S and min zIndex layer 10 and raise +1 for each new
show overlay call and lower for each hide call
aelxar is like aelx but it uses an array and does not use objects
directly
fixed various possible empty array access issues in various core lib &
edit base files
- captial DEFINE is now lower case
- indicator is visible check in javascript for showing indicator
- remove not needed overlay box 100% css, this is set in the stylesheet
anway
- Fix array pad missing in date compare functions in Basic class
Remove .htaccess file with php variable settings as this will not work
on FPM calls.
Various minor fixes in core libs
Basic lib debug output check is now a sub class so we can use this
everywhere without writing the whole if statement again
Basic lib has a dummy uniq id method added. Not yet finished
Move all smarty and path settings into the Smarty Extended class
the include files <admin|frontend>_set_paths.php and <admin|frontend>_smarty.php
are deprecated.
For special frontend smarty (which will be not used in future anyway) a
dedicated sub class to Smarty Extended with its own methods should be
created
- use config.other.php to include other none core settings
- fix tab intends for not used defines
- remove old ACL defines that are not needed
- move BASE_NAME out to new area
TODO: think about removing G_TITLE
TODO: think about BASE_NAME external setting
- ALL classes are E_NOTICE safe as far as possible.
There might be some minor things left over which will be cleaned up in
further testing
- Added declare(strict_types=1); on all pages for trying to make all
calls strict
- Added page_content sub content to edit_page, with this some inner page
content with ACL can be set, eg for use with Ajax/JS calls with backend.
Also alias can be set so the control ajax pages can back reference to
the master page content setting. Currently only one back reference is
allowed
- Note that the PAGES array has no numeric indexes, but uses the cuid as
index
* ACR list has new list at level 10 for listing but not reading/opening
* JS update for the html options create
if select multi allow selected as array for highlight
* Basic Class
- array merge recursive implementation
proper implementation that proper merges nested arrays. With key is
always string override
- array flat per key
For multi arrays flatten down a key -> value entry to set the value to
the level up in the leaf
eg:
foo -> bar -> KEY: value
and you go by KEY as search it will change to
foo -> bar: value
in admin set paths, only call smarty sets if smarty object is initalized
Add better JS html options creation with multi block allow. Old call is
still there as wrapper to new call html_options_block
missing variable init in Class Basic
- Bug in date/time check in Basic class. Time check was invalid
- Add calcDaysInterval to get days between two dates plus weeki days
and weekend days
- Add flatpickr to replace datepickr and move datepickr init function
into separate file (from edit.*.js)
the JS dom rel function returns the full element.
The database import script has now test and step by step with retry
import functionality
various comment typo fixe
the old "www/layout/<admin/frontend>/<template name>/..." layout is
deprecated.
new layout:
www/layout/<admin|frontend>/<cache/css/images/javascript>/
The layout/<admin/frontend> is symlinked to www/<admin|frontend>/layout
templates and lang are moved to includes
www/includes/template/<admin/frontend>
www/includes/lang/<admin/frontend>
and no longer symlinked to any public facing folders
The language po files have already been moved to
4dev/lang/<admin|frontend>/