v6.2.8
[6.2.8] - 2024-09-26
🥳 🎉
Important
Last version compatible with v5 ontology. Next version will remove official support for tld: muvaet
, divalcdi
, herrimemoria
, mocuenca
, aup
, bene
, valleoxos
, cedis
and mupreva
. They should be maintained by his own institutions.
Last version with layout design support of v5 ontology properties. Next version will include only the v6 model.
This version introduce a new import media options to upload bulk modified images into the same section than previous original uploads.
This version improve the export data and compatibility with Excel and introduce ODS format.
Now, the delete buttons of sections, portals and thesaurus can delete his own publication data.
Added new feature for the relations in inspector, now is possible open all related records of a section.
Added drag and drop between portals as v5 did.
Bug Fixes
- [breaking] Fix
get_value_with_fallback_from_dato_full
bug where always return DEDALO_DATA_LANG instead the passed lang in some context like diffusion (e.g.component_select
case) - Fix CSS issue where
component_text_area
vertical-align of images are displayed incorrectly - Fix class
search_related
issue where limit 0 was not interpreted correctly - Fix relation list issue where the calculated values were not being cleared from the cache between section instances
- Fix syntax error in
ts_object::get_ar_elements
generating wrong type comparing result (double children icon in thesaurus) - Fix time machine notes issues where new record is created every time that user opens the note and do not fill the content (blank value). Fix service_time_machine not refresh issues too
- Fix empty value in
section->update_modified_section_data
logged_user_id on Quit. It is necessary the session value of user_id before. - Fix
ui.load_item_with_spinner
error where DocumentFragment nodes are not accepted. Now, HTMLElement and DocumentFragment are accepted as valid DOM nodes - Fix error where
dd_grid_cell_object.resolve_value
fails when get fallback_value if is not an array as expected - Fix error where widget
media_icons
try to save component value (av duration) in tm mode - Fix issue where non defined 'from_component_tipo' causes an error on
section->get_tm_subdatum
- Fix
backup::export_structure
response message missing 'dedalo_str_tables_data' message - Fix wrong include file path from
str_manager/index.php
file (manages the Ontology files request in master) - Fix Ontology
open_docu
window issues where code is not compatible with v6 - Fix invalid var
DEDALO_CORE_URL
in Ontology context - Fix relation_list deep diffusion resolution issues in v6 (see
mdcat4338
properties case) - Error to move component to the last position of the active elements list in tool_export.
- Add missing component_date
render_input_element_time_range
function in search view - Add service_time_machine wrapper_component events deactivation by CSS to prevent user interactions
- Add double quotes to the image file path. The images could have spaces and is necessary enclose the path with double quotes.
Features
- Add auto-update inspector component data view. Now, on components data change, the inspector data will be updated via event manager subscription
- Add relation list option (in Inspector) to allow open the selected section related records in a new window
- Add
sheetjs
library to manage export grid as XSLX and other formats - Add the ability to drag and drop between different components. Now the property
draggable_to
allows to move a locator from a component to other in the same section. - Improves workflow with modals, adding re-selection of the previously selected component
- Add
component_text_area
save command on user pressNumpadEnter
(enter key from numeric keyboard) for convenience - Add
get_dato_parsed()
method tocompoment_info
. Now the widgets can parse his own data to conform more computable data for export it. - Add
get_grid_value()
forcomponent_info
. Now the component_info can export the widget data using theoutput
definition of the IPO. - Add
get_grid_flat_value()
method to component_info. Now the component can export widget data. widget will export his data in breakdown formatstandard
andbreakdown
will export asbreakdown
. - Add
get_dato_parsed()
method forsum_dates
ofmdcat812
. Now the widget export coherent and computable data. - Add
match
mode into tool_import_files to match the filename with the previous uploaded filename. Used by add modified quality to previous uploaded images matching the name into image section. - Add matching image names without id, free name, to set the quality modified of previous uploaded images.
- Add
get_date_time_original()
method toffmpeg
. get the date fromffprobe
standard format. - Add to create a thumbnail image of the uploaded video file. Now the
tool_import_files
can render the image to show it previously to process it.
Miscellaneous Tasks
- [breaking] Remove output
2>&1
inexec::request_cli
. Prevents duplicity (errors are already sent to CLI process file). - [breaking] Force disabled temporally the filter_locators calculation (beta) !
- Add test_unit methods
test_get_identifier
,test_set_dato_resolved
tocomponent_common_Test
class - Add
common.get_section_elements_context
auto createself.components_list
control - Add version to tool CSS load file to force refresh cache on new version
- Normalize
tool_update_cache
CSS colors - Remove disabled temporally the filter_locators calculation (beta) !
- Change header_count position issue and normalize relation list CSS colors
- Add
lang::resolve_multiple
method to manage multiple langs simultaneously - Add spinner to section load relation list
- Delete unused method
dd_ts_api::delete
- Add
block_label
style to layout dd-modal CSS - Add
component_common_Test
test:test_get_grid_flat_value
,test_empty_data
- Unify
dd_api
JSON exit (usingexit( 0 )
insteaddie()
) - Unify
ts_object
delete button label fromdelete
todelete_resource_and_links
(same as portals) - Add list modal editor to
component_json
in list view - Improve str manager errors managing (used to manage Ontology updates from master server)
- Add new hierarchy
category
to be used as typology->category. Used into numismatic typenumisdata3
. - Add
component_json
to components life cycle test skip_models fro test '.content_data' in list mode - Add
get_dato
to widget_common. - Add
get_dato_parsed
to widget common. Now the widget could parse his data to conform a export data more consistent, used by component_info to create the grid_value. - Add
component_json->regenerate_component()
method to fix some non JSON values (like old user activity datadd1521
) - Add
session_data
as table to skip indb_data_check::check_sequences
- Add inspector paginator
section_id
info for easy navigation - Change the error situation for ImageMagick. Now the error take account if the word
Error
is in the sentence. - Return null when is not present any stream in the uploaded video file.
- Add label of the component that open the
tool_import_files
. - Change the text to use the caller component when the
tool_import_files()
is open by component instead a section - Added to get the creation date of uploaded PDF with
pdfinfo
. - Added to get the creation time of uploaded av file.
- Add style to match label of
tool_import_files
- Change the name of the match methods to be used by any other media than image. Now the match could be used by other media as audiovisual or pdf
- Change core functions
get_backtrace_sequence
name - Add
pre_built_search
to section.build - Add CSS padding-right: 1.33rem to search preset labels for easy read
- Add
backtrace_sequence
to debug log ofget_referenced_locators
for easy detect calls - Add core function
get_bactrace_sequence
for convenience
Performance
- Improve
search->generate_children_recursive_search
filter. Change from OR sentence to IN to filter an array of section_id - Defer log activity (
register_shutdown_function
) to improve API response
Refactor
- Change
component_common->get_identifier
code to improve clarity - Rewrite
component_radio_button.get_content_value
functions for easy read - Wrap diffusion class include into try catch to prevent crashes when a file is not available (Socrata case for example)
- Change
tool_update_cache
to make it easier to locate elements (preserve section groups and layout order) - Change
ts_object->get_child_data
count_data_group_by code (indexations) for clarity. Moved to new functionget_count_data_group_by
- Change
event_manager.publish
code for clarity - Change
utils.object_to_url_vars
code for better readability - Unify the output of the widget get_archive_states of
dmm1076
to define a export computable way. Now the output define every data asid
. - Improve
json_decode
error detection incomponent:json::set_dato
- Refactor
collect_all_str_files
code to make it clearer and more reusable - Atomized
set_components_data()
method to be used in other import ways. Now, is possible to set thecomponent_options
added by users intool_import_files
in different import mode. - Change the match option into the
tool_import_files
. Now the button deactivate all other file options. - Change the
set_media_file()
method to be used by any uploaded media file. Now the process is unified and is possible to use by image, PDF, video files. - Improve after-upload file management for components in tool_upload (added
upload_handler
callback call) - Improve component_portal
change_order_modal
handler to auto focus and select the input value to change element order
Change
- [breaking] Change
dd_core_api::delete
permissions calculation fromcommon
tosection
(allow section permissions exceptions like time machine notes) - [breaking] Add
section->get_section_permissions
andcomponent->get_component_permissions
exception for matrix notes - [breaking] Unify section delete flow. Sections, portals and thesaurus. Add children check,
remove_parent_references
and delete diffusion records checkbox fordd_core_api::delete
- [breaking] Update install database (contains matrix_time_machine column
bulk_process_id
) - Change area maintenance widget
update_data_version
process update rate from 1000 to 500 to increase data flow (issues with some proxies) - Remove unnecessary JSON ending of filter locator
- Change area maintenance widget
update_data_version
process update rate from 500 to 41 ms - Remove
ISAD
term from the update 6.2.7 thesaurus_clean - Added exception to get notes without permissions. Now users with 0 access to the
matrix_notes
can get 1 to be able to read the notes content. - Add event_manager load to page
index.js
to improve event_manager early availability on page load - Export way to create the XLSX with the
sheetjs
library. Now the XSLX, ODS and HTML format use the export lib. - Set more relaxed ts objects check to prevent errors in commented properties like '{"DES_type": "icon"}'
- Remove
worker_data.js
from excluding in service worker. It's not necessary to exclude it from cache - Set default array when is not defined in
delete_locator
method() - Change old stringified q values from
area_thesaurus::get_active_and_visible_hierarchy_sections
- The
ESC
page event no longer deactivates the component if the modal is open - Add
DEDALO_TIME_MACHINE_NOTES_SECTION_TIPO
(rsc832) to dd_tipos - Change section
get_dato
validation. Add string cast to strpos checks to avoid issues in null values. - Add
created_by_userID
to item data in component_text_area. Useful for time machine notes - Add
created_by_userID
to item data in section. - Add user_id to section data in tm mode
- Add access for super admins to the section list of Time Machine notes
- Change component_text_area matrix note label
no_access
bynot_allow_to_create_note
for clarity - Set section_record view_text to display separators without padding. Used by bibliography to show the name of the authors separator with comma.
- Hide buttons when user is not the owner of time machine note
- Change the modal size from small to default
- Rename function has_children_of_type
- Rename test unit function
test_has_children_of_type
- Change
update_user_activity_stats
q value from string to object - Change
diffusion_section_stats::update_user_activity_stats
call from login to register_shutdown_function to optimize logout - Add
user_id
argument to activity->log_message method to allow preserve the user id even in log out scenarios - Restore
diffusion_section_stats::update_user_activity_stats
call from login to register_shutdown_function to optimize logout - Change widget user activity display value for all users (now, the raw JSON data is displayed)
- Change default CURL return transfer value from 1 to true (boolean) for coherence
- Prevent writing activity in search mode (
dd_core_api
::log_activity) - Add tool_common caller label (used for head title disambiguation)
- Add fallback to the columns name in export tool. Now if the column doesn't has a label will use the column_tipo.
- Add caller label to
ui.tool.build_wrapper_edit
(modal header label) - Add loading class to view_default_edit_security_access on click button save
- Add missing section id column when permissions are < 2
- Add backtrace sequence to
dump
function - Add backtrace sequence to
debug_log
function (WARNING, ERROR and CRITICAL levels only) - Change
||
operator by more accurate??
in section init assignations (add_show, buttons) - Get the fallback value when the dd_grid value is an object but his value is empty, in this case check the fallback and get it because it could not be resolved in the recursion, it's the final chain.
- Remove lib that is no longer used
background-color-theif
. - Clean up dropzone unused version (v7)
- Clean up pdfjs lib files
- Add match free option to tool import files. First version not operative!
- Add caller label in object to be showed into the head of tools. Now the caller label could be showed to identify how open the tool.
- Hide the match options when the
tool_import_files()
is opened by a component - Add
component_3d
upload handler (fired by tool_upload) - Add error handler to posterframe image in component_3d
- Add own
delete_thumb
method for component_av to allow delete posterframe when thumbnail is deleted - Add cache to search
get_editing_preset_json_filter
- Add auto-activate input name on user opens a search preset
- Re-organized area_maintenance widgets order for convenience
- Change search children option CSS to optimize space
- Unify RQO source config value from
autocomplete
toread_only
to improve permissions calculation on service autocomplete and search presets - Change default service_time_machine order for time machine list of sections (by section_id ASC )
- Change
diffusion::get_diffusion_map()
error level when no MySQL connection is available (ERROR > WARNING) - Add main
.htaccess
re-direct old v5 paths to the new ones (useful to deploy new master.dedalo.dev server using v6) - Add
page_globals.dedalo_entity
to menu styles (allow custom color like 'master' in green) - Add new definitions to
stub.php
file - Change page background color from pure white to 98%
- Add class name to core_functions
get_backtrace_sequence
for easy debug
Security
- Fix possible injection vector in Ontology common.js where regex for URL parameters do not make a global replacement
- Fix possible injection vector in worker_security_access (Unsafe dynamic method access)