List of changes

<< Click to Display Table of Contents >>

Navigation:  General Information >

List of changes

List of changes of 18.0 version:

 

A completely new personal messaging system has been added to the site. The entire personal messaging system on the site has been completely rewritten. It is now not just about sending a single personal message and only being able to respond to a separate message with a full quote, but it is a full-fledged conversation where users see all messages in one combined thread, and the conversation takes place in a chat format. Upon receiving a message, users can repeatedly reply and send messages to each other within one topic. Users can leave the conversation at any time if they consider it finished or want to maintain order in their personal messages, but if another participant sends a new message in the same thread, the entire conversation will be automatically restored for the participant who left, and they can again see the entire conversation and understand its context. Additionally, users now have the ability to edit messages in the conversation if the other participant has not yet read it. Messages can also be deleted from the conversation if necessary. Messages can be quoted in full or partially, and much more.

Added support and use of artificial intelligence in creating and editing publications. Artificial intelligence will help you quickly create the necessary text or rewrite or change the writing style, or make translations and much more according to your wishes. The use of artificial intelligence based on the ChatGPT API is supported. In the settings, you can specify an entry point for communicating with ChatGPT, thereby allowing you to use not only OpenAI's direct ChatGPT but also any service that supports this API. In addition to this, you can flexibly configure in the settings how ChatGPT should be used, which language model to employ, which user groups are allowed to use artificial intelligence, the style of response, maximum limits, and restrictions on response length.

Added the ability to assign the same names to categories for URLs if they are in different parent categories. For example, you can create a category structure like "games/rpg/news/", "games/shooters/news/", and so on. Additionally, the algorithms for generating various links on the site involving categories have been optimized, significantly improving performance and reducing server resource consumption with a large number of categories.

In the DataLife Engine control panel, in the "Performance Analysis" section, the ability has been added to immediately disable a specific script feature to reduce load and increase performance. Now you don't need to go into the script settings and look for the relevant settings to disable a particular feature. You can disable it directly by clicking the corresponding button next to the desired setting. The disabling occurs instantly using AJAX technology.

For user output of publications using the tag {custom ….} support has been added for a new parameter unique="yes", which indicates that publications in this block should not be repeated if they have already been displayed on the site, i.e., unique publications should be displayed in this block. This will help avoid repetition of the same news in user output blocks if they fall under the same output criteria. For example, two tags {custom category="1" unique="yes" limit="1"} and {custom category="1" unique="yes" limit="1"} will display different publications, despite having the same parameters; the first tag will display the first news item from the category, and the second will display the second, skipping the first. Also, if a publication was displayed in the {content} block, it will not be displayed if this option is present in the tag {custom ….}.

More extensive support for various icons has been added for uploaded files in the download manager, making it easier to identify different documents, and file extension display has been added.

Added the ability to download files uploaded to publications directly in the download manager when adding and editing publications.

Support for OGG, FLAC, AAC formats has been added for uploading and playing music and music playlists using the DLE player.

For site access restrictions by country, support for IPv6 addresses has been added. Additionally, the database provider used to determine the visitor's country has been changed to use databases from IP2location, resulting in a much more accurate and extensive database.

A feature has been added to the script settings in the admin panel to enable the determination of a visitor's country based on data from the Cloudflare service, in case your site is connected and proxied through this service. In this instance, the server load is reduced, as DataLife Engine will not have to search for it in the local database on its own. If there is no data about the country, an automatic search will be carried out in the local database.

The script settings in the admin panel have been updated to allow or deny access to the site for bots if the site is restricted to certain countries, in case the bot is located in a restricted country. For example, if access to the site is restricted for certain countries, you can still allow search engines to index the site if they are located in the restricted country.

In the script settings in the admin panel, the ability to enable blocking circumvention using VPNs has been added for countries. If a user is located in a prohibited country and accesses the site, they will be blocked, and if they attempt to access the site again using a VPN from an allowed country, they will also be detected and blocked on the site.

For descriptions of settings allowing and denying access to the site by countries, the country in which the user is currently located has been added, as determined by DLE. This is so the site administrator can visually see that everything is working correctly, and their country is identified as needed, ensuring they do not accidentally block themselves.

When adding and editing publications in the control panel, the ability has been added in the "Access" tab to specify a list of countries where the display of this publication is allowed. Additionally, the ability to specify a list of prohibited countries for viewing the publication has been added. This way, you can easily configure in which countries the full news can be viewed, and in which it cannot.

For advertising materials added to the DataLife Engine control panel, a feature has been added to specify a list of countries where the display of these advertising banners and materials is allowed. Additionally, it is now possible to specify a list of countries where viewing is prohibited. This way, you can easily configure in which countries to display this code and in which not to. Thus, targeting the display by country.

Automatic saving of set parameters when uploading images and files to the server in the DataLife Engine download manager has been added. These parameters will be restored when the manager window is opened again. For example, if you chose not to apply watermarks, changed the size of the reduced copy, changed the storage, and for some reason left the page or navigated to another publication, all of this will be saved in the browser's local storage. When you reopen the download manager, all your set parameters will be restored, rather than set to default. This way, you don't need to set the parameters again each time.

The script settings in the control panel have been updated to allow specifying user groups, whose users will be displayed by default in the feedback form on the site if the email is not sent to a specific user. Previously, only users from the Administrators and Chief Editors groups were displayed there. Now you can assign your default user groups.

For RSS feed imports to the site, an option has been added to the stream settings to specify whether or not to include a link to the source from which the news was obtained. You can enable the addition of the source in the short or full description, or in both fields. Alternatively, you can disable the addition of the source when importing publications to the site.

The BBCODES and Floara editors were removed. These editors have become globally and morally obsolete, and their support was completely stopped a long time ago. No new features were added to them. Yes, we know that removing these editors is not the most popular measure, and users have asked us not to delete these editors. However, maintaining unsupported editors cannot continue indefinitely, as these editors significantly hindered the development of the script as a whole. The generation of different codes requires additional checks and text filtering, and the execution of a large amount of redundant code when processing publications. Therefore, a decision was made to completely abandon these editors, which significantly simplified the code and accelerated its processing when adding publications, as well as reduced the time spent on code testing. Additionally, it allowed us to focus efforts and resources on adding new features and capabilities. Now, a single TinyMCE editor is used for publications, and the processing of publications when they are added and edited has significantly accelerated, and server resource consumption has been reduced. For comments, there is also the option to completely disable the editor for sites that do not want any content formatting in comments and prefer only short, clean text.

When adding and editing publications in the admin panel and on the site, the visual editor was changed in such a way that by default it contains a single panel with the most frequently used buttons for content creation. If a full set of buttons is needed, the user can expand the panel while using the editor. Additionally, for each field, the selected collapsed or expanded state of the editor is automatically saved and will remain the same after reloading the page. This way, by default, the editor takes up less space, leaving more room for the editable content, and you can choose and save the editor's state for each field individually.

Changes have been made to the enabling and disabling mode of the adapted editor mode for mobile phones in comments on the site. It is no longer necessary to separately enable or disable it in the script settings in the control panel. Now it will automatically turn on when used by visitors on mobile devices.

For setting up the control panel design selection of DataLife Engine, the ability has been added to choose the editor's design. Each admin panel user can choose either the classic view of the editor or the lightweight version. The lightweight version offers a minimally cluttered editor interface, allowing the user to focus directly on the content they are writing. Moreover, the user can enable automatic editor height, which will automatically adjust to occupy as much screen space as the content within the field requires. Thus, small content will take up little space on the screen, while larger content allows for a larger editable area to be displayed.

Added support for a mobile-adapted editor when writing personal messages on the site.

Added support for dark themes for the editor when writing personal messages using AJAX on the site.

Improved text cleaning when inserting into the editor for removing "junk code" from the inserted text code.

In quick editing of publications, support has been added for pasting text from the browser's clipboard with HTML tags preserved.

When banning a user in the user management section in the admin panel, a log of the administrator's account who imposed the ban is added. This allows other administrators to immediately and easily see in the user management panel who exactly issued the block to the user. This speeds up the resolution of any contentious issues when there are a large number of moderators and administrators on the site.

For the template displaying information about an account or access being blocked (banned.tpl), support has been added for new tags: [banned-from] text [/banned-from] which display the text enclosed within them if the block was issued by a person, rather than automatically, for example, by country. Additionally, a new tag has been added: {banned-from} which displays the login of the administrator who issued the block to the user. This way, blocked users can immediately see who and why they were blocked on the site.

For the global template tag {catmenu …} designed for displaying a list of categories, support has been added for a new parameter idexclude="1,2,3-5" where you can specify the IDs of categories or a range of categories that should not be included in the category list, and all categories except the specified ones will be displayed.

Added the ability to restrict users in the user group settings regarding the number of negative ratings and dislikes they can give to news articles. You can specify the maximum number of negative ratings a user can give to news articles per day. For example, by setting it to two, a user will only be able to give two negative ratings within a day. The number of positive ratings is not limited. This way, you can protect the site from any negative visitor who massively gives negative ratings to everything.

Added the ability to restrict users in the user group settings regarding the number of negative ratings and dislikes they can give to comments. You can specify the maximum number of negative ratings a user can give to comments per day. For example, by setting it to two, a user will only be able to give two negative ratings to comments within a day. The number of positive ratings is not limited. This way, you can protect the site from any negative visitor who massively gives negative ratings to everything.

Added support for new tags [replycount] text [/replycount] in the comments template (commets.tpl) which display the enclosed text if the comment has replies from other users, and also added opposite tags [not-replycount] text [/not-replycount] which display the enclosed text if there are no replies to the comment. This way, you can create a more flexible design for information about comment replies.

Improved and optimized the display of the editor for publications on mobile devices in the DataLife Engine control panel.

Improved and optimized the display of the editor during quick editing of posts on the site. The editor now has a dynamic height depending on the amount of content in the fields. If there is only a little information written in the field, the editor will take up space proportional to the content. This facilitates editing information when there are many fields.

When displaying a user's group in comments on the site, if they have been banned, information is now shown indicating that the user is banned, similar to the display of their group in their profile.

When displaying information on the site about whether a user is online or not, a check is added to see if they have also been banned on the site previously. If they are banned, their status will always be offline, even if they attempt to log in successfully.

The preview of messages in bulk mailing in the control panel has been revised and improved. The design, fonts were improved, and full support for styling settings in the panel, which the user customizes personally, was added. Full support for the visual design of the control panel and for the message sending window was also added.

The ability to use double quotes for keywords that need to be found and replaced in the cross-link management section on the site has been added.

The ability to insert live broadcasts from the YouTube service on your site using [mediа=…..] tags has been added.

Comment flood protection has been moved from the script's general settings to user group settings. Thus, you can enable and disable this protection for each user group separately, as well as assign your own timeout for repeated comment addition to the site for each group.

The system for searching publications by search template during RSS import of publications in the DataLife Engine control panel has been significantly improved and optimized. Now you can specify any complex and multi-line code from the website page as the initial and final code, simply by copying it from the source site's code, without the need to use complex configurations with the {skip} tag.

Navigation output for publication and comment pages has been optimized and improved for mobile devices. When a visitor uses a smartphone to view the site, the number of page elements in the navigation is significantly reduced, allowing the navigation to easily fit within a single line without moving navigation links to other lines. This gives the page a more correct visual appearance, while maintaining full navigation convenience.

If access to the site has been denied, for example, if a user is banned, or restricted by country, the sending of correct HTTP 503 headers indicating that the page is temporarily unavailable has been added.

A check has been added for country-restricted access to the site for all AJAX actions performed on the site, not just for direct site views. This allows automatic bots from prohibited countries to be blocked if they have already been given the necessary parameters and tokens to perform some automatic actions.

A check for the plugin name being filled in when adding plugins in the admin panel has been added, before sending data to the server, to avoid errors about mandatory fields not being filled and to prevent data loss after submission.

Added correct support for embedding Twitter posts using [mediа=…] tags due to the service changing its domain to x.com

Added support for the new PHP 8.4.xx series

Improved and accelerated processing of large texts when adding and editing posts, as well as reduced memory usage in some cases.

Improved and optimized the algorithms for building category trees when adding posts in the control panel and on the website. This has allowed for a significant increase in page rendering speed in cases with a large number of categories.

Optimized and improved the processing of a number of template tags, which in some cases allows for faster rendering of templates and reduces memory usage.

Removed support for OpenSearch, due to the fact that the technology is outdated and no longer supported by current browsers.

Fixed an issue where it was possible to send an email message from the site through feedback to a user banned on the site.

Fixed an issue, where some AJAX functions on the site might not work if script settings disabled site authorization support, while the administrator remained logged into the DataLife Engine control panel.

Fixed an issue, where it was impossible to remove all categories from a publication when using mass actions in the control panel when selecting the action "Change categories" for selected publications.

Fixed an issue, where some template tags in comment output templates did not work correctly when AJAX navigation through comment pages was enabled.

 

List of changes of 17.3 version:

 

Added the ability to allow or restrict a user's access to the site based on their country of residence. To do so, we've added settings to the script settings in the control panel that allow you to specify a list of countries where site access is allowed. If the user is located in one of these countries, they  be able to access the site, but if not, they will be automatically blocked. Additionally, instead of specifying allowed countries, you can also create a list of prohibited countries. If a user is from one of these prohibwillited countries, their access will be restricted, but if they are not from any of these countries, access will still be allowed.If a user is restricted from accessing the site based on country, you can provide a separate reason for their restriction. This reason can be specified in the settings.

We have added the ability to specify a list of countries in the script settings for which authorization is allowed on the DataLife Engine control panel. Additionally, for convenience, users can specify a list of prohibited countries instead of allowed countries. If a user is located in one of theprohibited countries, all attempts to log into the control panel will be automatically blocked, preventing them from even trying to log in.

Added the ability to display certain content in templates based on which country the site visitor is located in.To do this, a new global tag has been added to the templates: {country} which outputs the ISO code of the country in which the site visitor is located, for example, outputs RU if the visitor is in Russia, or US if the visitor is in the USA. This tag is useful when you need to add a country-based prefix to a link, for example, display a visitor's flagon the site. New tags added [country=X] text [/country] which will display the text specified in them if the visitor is in the specified X countries, where X is a list of ISO country codes. Countries can be separated by commas. For example, tags [country=RU, BY, KZ] text [/country] the text will be displayed if the visitor is from Russia, Belarus or Kazakhstan. Opposite tags have also been added. [not-country=X] text [/not-country] which will display the text specified in them if the visitor is not in the specified X countries, where X is a list of ISO country codes.

Added the ability to allow or prohibit search engine indexing for categories of publications. In the category settings of the control panel, users can choose to allow or disable indexing for a specific category. If indexing is disabled for a category, that category and its publications will be excluded from the sitemap when it is generated and updated.Additionally, a 'robots meta tag' with the content 'noindex, nofollow' will be added to category pages and any publications with in that category, preventing search engines from indexing those pages.

For additional fields with the "Uploaded image" and "Image Gallery" types, the ability has been added to specify which side to apply restrictions to the original image and the smaller copy, if restrictions are set in the field settings. You can choose between "By the largest side", "By width", or "By height". Previously, the default script settings for these parameters were used. Now, you can set your own custom values for each field.

We have added the ability to display advertising banners and other materials between comments. In the advertising materials management section of the control panel, users can now enable the display of a banner between comments and choose its position. Similar to the output of short news articles, users can choose to display the banner at the top, bottom ,or middle of the page, or combine these options.

Added support for the module of advertising materials and banner tags in comment templates when using AJAX navigation of comments and when dynamically automatically loading the comment feed using AJAX.

We have added automatic generation of the "keywords" meta tags when displaying short news, based on the content of each page.If a special value has not been set for a page in the control panel, the keywords will be generated automatically. If there are multiple pages for a specific section, the keywords set in the admin panel will only be used for the first page, while the meta tag for subsequent pages will be generated based on the content of that particular page. This ensuresthat the meta tag is not duplicated on different pages, improving the overall SEO of your website. The"description" meta tag will continue to be generated automatically as before.

The user search system in the user management section has been redesigned and improved. Instead of having multiple search fields, we now have a single search field that allows users to search by a variety of criteria. This includes the ability to search for users based on their login and email, as well as 5 additional fields that can be used for searching. These additional fields include full name, additional user information, place of residence, signature, and other relevant information about the user. This new system allows for more flexible searching, enabling users to find the exact users they are looking for based on various criteria.

The visual design of dialog boxes that prompt users to confirm irreversible actions on our site and in the control panel has been redesigned. The confirmation buttons now have a distinct and prominent color, which helps reduce the chance of users performing an automatic action and, as a result, reduces the likely hood of making an erroneous decision without the ability to cancel it.

We have added the ability to immediately close a survey when adding a new publication in the control panel. This means that you can create a publication with a closed survey without the need to edit it.

We have added the ability to set an expiration date for surveys in the control panel, so that they automatically close when they are published or edited. To do this, simply select the "Advanced" tab of a publication and choose"Closing the poll for voting" as the action when the specified date has arrived.This will automatically close the survey and only allow viewing of the results.

In the script settings of the control panel, we have added the ability to enable a redirect from a domain with a WWW prefix to a domain without the WWW prefix. When this setting is activated, if a user visits the websitewww.example.com,they will be automatically redirected to the domain example.com. Redirects will also occur for search engines, which will improve the indexing and ranking of the website.We recommend that you always have WWW support for your domain as an alias on your server, as users may accidentally enter the URL with the WWW prefix in their browser address bar.However, weal so recommend including a redirect to the non-WWW version of your website to improve indexing and provide a shorter and more familiar URL for users.

The script now allows users to customize the number of personal messages displayed on each page. Previously, the default value was 20,butnowusers can set their own preferred number in the settings.

For the user output tag of publications {custom …} added the ability to use the new parameter name="X", in which you can assign a name to a block, and later use this name to display or hide another design in the template if there is content in this block or it is missing. For example, writing {custom name="block1" category="6"} it will show publications from the category ID6, and the block itself will be named “block1”. New global tags have been added to operate with this name: [custom=X] Text [/custom] where X is the name of the block, which outputs the text enclosed in them if the block with the given name contains information. And also the opposite tags have been added [not-custom=X] Text [/not-custom] which display the text enclosed in them if the block with the given name does not contain any information and there are no publications.Thus, you can make additional external design of the blocks or, conversely, hide it, depending on whether there are publications in the block or not. For example, [custom=block1] Header {custom name="block1" category="6"} [/custom]. At the same time, the block may be placed anywhere on the page, not necessarily within these tags. Therefore, you can adjust and change other elements in the template based on these tags.

Added hiding of publications when viewing a short description, if the publication is in a category that is prohibited for viewing. For example, if a publication is in the categories "News", "Sports", and "Football", but the "Football" category is prohibited, then when viewing the "News" and "Sports" categories, that publication will be hidden.

We have added automatic filling of the "Name" and "Email" fields when responding to comments from unregistered users. This is only if they have already written a comment and provided their name and email address on the site beforehand.

We have added translation of system messages in case of errors when working with the mail server into different languages based on the installed language files. Now, if there are any errors when sending emails, users will receive messages in their preferred language according to their language package, and not just in English as previously. In total, we have added support for more than 40 different languages.

When you add a category to the control panel, additional protection is provided against accidental window closure when you click outside the window with the mouse or press the ESC key on the keyboard. This helps prevent unintentional window closure. You can still close the window by using the appropriate icons or buttons provided on the window for this purpose.

When adding categories, a list of categories automatically appears immediately after adding, eliminating the need for the administrator to press any unnecessary buttons in the control panel.This simplifies the process of adding large numbers of categories.

In the category management section, we have removed intermediate informational messages about successful category deletion and added an automatic transition to the category list page after deletion. This makes the category management process faster and eliminates the need for users to manually navigate through buttons.

When editing comments in the control panel, an additional identifier is added to indicate that the comment was submitted by an unregistered user. Additionally, their email address is displayed if they submitted the comment when publishing it. This allows users to easily identify who has written a particular comment.

Added automatic saving of information in the database when you press Enter when adding or editing a publication in the admin panel.If the cursor is in any field that contains a single line, the information will be saved. Previously, pressing Enter would either search for similar news or fill in a meta description, depending on the DLE version.

Added caching for custom output blocks of publications, even if they do not contain any publications for output. This helps save some server resources incase there is no content matching the specified parameters for some reason.

For user profile output templates (userinfo.tpl and profile_popup.tpl) added support a new tag {user-id} which outputs the user ID. This tag can be used in a number of cases when designing a template, as well as, for example, to form user links, such as links to the user's recent comments, etc.

When displaying category names in the RSS feed, they are separated by a comma character, which is the default setting. However, you can also use a different separator by specifying it in the script settings. This allows you to use more complex HTML code to display a list of categories on your site, with out affecting the RSS feed.

Changes have been made to how advertising materials are displayed in the admin panel in the advertising management section. When viewing short news, the "Category" setting for a banner takes into account the category of the article that the user is reading. When viewing full news, it considers the category to which the publication belongs. This allows you to set restrictions on displaying banners in full news based on publication categories. Additionally, if necessary, you can also set the rotation of banners with the same name.

When viewing full news articles and displaying banners, we have added verification of all categories that the publication belongs to, not just the main category.

The content downloaded using AJAX requests has been adapted to download data from the domain where the site is currently running, and not the one specified in the script settings. This innovation allows you to speed up the download if site mirrors are used.And the data remains available if the main domain is unavailable to the browser for some reason.

Added the use of HTTP header with code 301 for links that are published using secure link tags [leech=....] in publications and comments.

Support for new value comparison condition tags has been added for the user profile popup card output template (profile_popup.tpl). For example, the tag [if field="value"] text [/if] will output the text enclosed in them if the value of the field is equal to the specified value.

The animation system on the website has been redesigned and improved based on user feedback. The animations are now faster and more responsive, and the position of elements has been optimized to ensure a better user experience after performing certain actions.

We have added an automatic calculation of the size of dialog boxes displayed on the DataLife site, taking into account the base font size of the page. This means that if a user increases the font size in their browser, the window will also enlarge,making it easier for users with limited vision to navigate the site.

Added protection against accidental deletion of empty user groups. If a user group does not have any users, it will now require the administrator to confirm their intention before it can be deleted. This is to prevent accidental clicks on the delete button in the user group management section.

Added protection against accidental deletion of the RSS feed in the RSS news import section of the DataLife Engine control panel. The user will now need to confirm their intention to delete before proceeding, eliminating the risk of accidental clicks on the delete button in the menu.

The information that the publication has been updated using the [updated]....[/updated] tags during the time specified in the script settings is displayed only if the “Display information that the publication has been updated" checkbox has been selected. If it is not marked, then the update bar does not appear. Previously, it appeared during any editing of the publication. Thus, you can display this information not during any editing, but only when necessary.

Added control of banned IPs and users for all AJAX actions on the site. If the IP address is blacklisted in the "Filter by IP, Login, or E-mail"section of the control panel, it will be blocked not only from viewing the site but also from performing AJAX actions. This includes blocking IP bots and their subnets that attempt to manipulate ratings, views, and other metrics.

When updating the script to newer versions, automatic inclusion of error output from PHP has been added in case of errors occurring, regardless of whether they are enabled or disabled in the script settings in the administration panel. This allows site administrators to see what errors occurred during the update while performing the update. This is useful, for example, if the server software does not meet minimum requirements or if necessary PHP interpreter libraries are missing. Error output is only enabled for the update process; for everything else, settings set in script settings apply.

The system for identifying the devices used by users to access the site has been upgraded and improved. We have expanded the database of devices to include smartphones and tablets, and we have also optimized the overall performance of the system.

The load on the server is reduced when viewing pop-up user cards in some cases.

The formation of meta tags of site pages has been optimized, and possible duplication of content has been removed in some cases.

There have been several optimizations and improvements to the user interface in the DataLife Engine control panel. Outdated notifications in the DLEAlert pop-up window have been replaced with notifications using the DLEPush push notification format.These notifications are now closed automatically.

The control of the server's software compliance with the minimum required specifications has been improved. If the PHP version installed on the server is below the minimum requirement, DLE will no longer display "unintelligible" PHP errors and crashes. Functions that are not compatible with the current PHP version will be automatically disabled, and an informative message will be displayed to the administrator regarding the need to upgrade the PHP version.

All HTML elements with the 'checkbox' and 'radio' types for various forms that the DataLife Engine generates to output on the site have been brought into a single, common output standard. This has made it possible to easily customize them using a CSS template of your choice.

For template tags {image-X} intended for displaying image URLs, as well as for meta tags meta property "og:image”, support for svg extensions for images inserted into the publication has been added.

Added forced clearing and zeroing of fields containing only the value'<p><br></p>'to an empty value. This innovation is useful if you use the Flora visual editor on the website and in the control panel, in which all empty fields contain this default value, even if you do not write anything in the editor.Thus, there will be no unnecessary code in the fields if nothing was written in them in this editor.

Added support for the Rutube service for inserting videos using the [media=...] tag in connection with the addition of support for the oEmbed data exchange protocol by the service.

The TinyMCE visual editor has been updated to the current version.

The entire DataLife Engine code has been rewritten to remove the $config['charset'] setting. For a long time, DLE only supported the UTF-8 encoding, so this setting had no meaning and could not be changed through the DLE control panel.All DLE code previously used this setting, but in the new version it is no longer used. It is still used in some places to update from older versions of DLE, but this will no longer be necessary. The DLE functions that used this parameter have also retained it for compatibility with older third-party modules. However, it is recommended to update these modules if they use DLE functions with this parameter, as it will no longer make sense to transfer these parameters.

Fixed an issue where the tags [image-x] text [/image-x] tags did not work if the {image-x} tag was not used in the template together with them when viewing full news and when displaying news using custom output {custom....}

Fixed an issue where an empty sitemap could be created for static pages if there are static pages, but there are no pages that need to be placed in the map. For example, publishing to the map is prohibited for all pages, or indexing is prohibited, or they are password-protected.

Fixed an issue where a disabled site broadcast an RSS feed for turbo pages with an error.

Fixed an issue where the plugin name was displayed incorrectly if errors occurred in it, in the error display section if the plugin name contained tags[lang=x]...[/lang]

Fixed an issue where {custom...} tags could not be used in the attachment.tpl template

Fixed an issue where, in some cases, in correct processing of inserting code examples in publications could occur.

Fixed an issue where in some cases the extension of files uploaded to the server could not be saved when using very long filenames.

Fixed an issue where the function to disable video preloading did not workin the media player settings.

Fixed an issue where the option to commit a publication did not work when adding a publication from the site.

 

List of changes of 17.2 version:

 

A new push notification system has been implemented for site visitors who are automatically transferred between groups. For example, whentheir period of membership in a group expires, or when they reach a certain ranking, etc. In case of an automatic transfer of a user to another group, they will receive a push notification on their site informing them that they have been moved to a new group, along with the reason for thetransfer. This ensures that site visitors are always aware of any changesto their membership status.

Added the ability to mark newly published content. To do so, we haveadded an option to the script settings in the administrator panel to specify the duration for which a newly published piece of content shouldbe considered as new. After that, in the output templates for short and long news stories (shortstory.tpl and fullstory.tpl), we can use the [new] text [/new] tags to display the text enclosed within them if the content is considered new. We can also use the [not-new] text [/not-new] tags to show the text enclosed within them after more than the specified timeperiod has elapsed since publication, which is set in hours in the settings. Thus, we can mark publications in the templates using any of these tags to indicate whether a piece of content is new or not.

Added the ability to mark published articles as updated. To do so, we have added the ability to specify the amount of time that should be counted as an update in the script settings of the admin panel. After that, in the output templates for short and full articles (shortstory.tpl and fullstory.tpl), we can use the [updated] text [/updated] text tags to indicate whether an article has been updated or not. These tags willdisplay the enclosed text if the article has been marked as updated, orthe text enclosed in the [not-updated] text [/not-updated] tag if more than the specified timehas passed since its last edit. The time is specified in hours in the settings,so you can mark articles in the templates with a clear indication ofwhether they are updated or not.

The ability to set the maximum number of complaints that a user can submit from the site has been added to the settings in the DataLife Engine administrator panel. Previously, the number was limited to three for spelling errors. Now, you can set this number and it will apply to all types of complaints, including publications, comments, and spelling mistakes.

The ability to allow or restrict this group from submitting complaints about posts from the site has been added to the user group settings. This means that you can prevent certain groups from submitting complaints about posts in order to prevent abuse.

The ability to allow or deny this group from submitting complaints about comments on the website has been added to the user settings. Therefore, you can prevent certain groups from submitting complaints in order to prevent abuse.

The ability to allow or disallow this group from submitting complaints about spelling errors on the website has been added to the user groupsettings. Therefore, you can choose to block certain groups from submitting these complaints in order to prevent abuse.

Added the ability to close polls that are used in news articles. This means that you can close a survey for publication, keeping it on the website. Closed polls will still be displayed on the page, but users will not be able to take part in them anymore, only seeing the results. This feature is useful if a survey has become irrelevant over time, but you don't want to delete it and want to keep the results available on the site. You can alwaysreopen a closed poll if needed.

For poll output templates in publications (poll.tpl), support has been added for new tags [closed] text [/closed] that output the text enclosed in them if the poll was closed for voting, as well as reverse tags [not-closed] text [/not-closed] that output the text enclosed in them if the survey is open for voting by site visitors.

For poll output templates in publications, support has been added for a new {close-date} tag that outputs the closing date of a poll, if it has been closed.

For additional fields of the "One line" and "Several lines" types, the ability has been added to set the minimum number of characters required if the field is filled. This can also be set to have no restrictions.

For additional fields with the "One line" and "Several lines" types, the ability has been added to specify, in the field settings, the maximum number of characters that must be entered if this field is completed. This option can also be left unrestricted.

We have added support for downloading  files from the server or external storage through DLE in multiple streams and added support for resuming downloads in case of network interruptions or other download failures. This new feature will be particularly useful when downloading large files over a slow internet connection.

To facilitate quick editing of content on the site, we have added the ability to change a publication's category when editing it.

For the plugin management system, we have added the ability to insert action blocks between existing actions in the control panel. To do so, each block now has a button to add a new action that will be insertedimmediately after the selected block. This allows you to edit an existing plugin and add additional blocks directly to the desired location.

For the plugin system, the ability to use the tags [lang=X] Text [/lang] in the plugin name, description of the plugin, and notes for the plugin has been added. Which output text depending on the language that the user uses in the admin panel. Where X is the ISO language code from the language pack. This way you can display the title and notes in different languages. For example, the tag [lang=ru]Russian Russian text[/lang] will display this text if the user uses Russian, and the tag [lang=en] English Text [/lang] if the user uses English.

Added support for a new global template tag: [active-plugins=X] Text [/active-plugins] which outputs the text enclosed in it if the specified plugin is enabled and used on the site. Where X is the plugin ID or its name. For example, you can specify [active-plugins=1] Text [/activrameters in the tag separated by commas, for example, [active-plugins=1,2,5] Text [/active-plugins].

Added support for a new global template tag: [not-active-plugins=X] Text [/not-active-plugins] which outputs the text enclosed in it if the specified plugin is disabled and not used on the site. Where X is the plugin ID or its name. For example, you can specify [not-active-plugins=1] Text [/not-active-plugins] or [not-active-plugins=My plugin] Text [/not-active-plugins], and if the plugin with ID 1 or with the name “My plugin” is disabled in the system and is not used, then the text specified in the tag will be output. You can also list several parameters in the tag separated by commas, for example, [not-active-plugins=1,2,5] Text [/not-active-plugins].

For custom output of publications using the {custom ....} tag, the ability to use the new favorites="yes" parameter has been added, which will display publications that are in the visitor's bookmarks. For example, the {custom favorites="yes" order="id_as_list”} tag will display publications from the user's bookmarks in the sort order in which they were bookmarked.

The system for setting permissions or prohibitions on comments in category settings for specific categories of the website has been completely redesigned. Previously, when you banned comments in the category settings, this ban only applied to newly added posts in thatcategory, and the ban was specified directly in the post itself. In order for the changes to take effect on older posts, it was necessary to save the post again. Now, the permission or ban for comments in the category applies immediately to all posts in the category, and the ban is not written directly into the post itself. Therefore, you can enable or disable the permission for comments in a category, and this action takes effect immediately on posts in that category.

We have added a system of automatic prompts for filling in the author field when adding or editing publications in the DataLife Control Panel. Now, if the author needs to be changed, a list of existing users in the database will be displayed when typing in the field. This will speed up the editing process and minimize possible errors when entering a user's name.

A new setting has been added to the script settings in the control panel that allows you to specify how many comments should be displayed on the recent comments page. This means that you can now independently control the number of comments displayed when viewing comments ona specific publication and when viewing all latest comments on the website.

When a user clicks on the link in an email notification about a new comment on a publication, they are automatically taken to the relevantcomment on the page, without having to search for it. This ensures thatthe user sees the added comment immediately.

For additional fields with the "List" type, the ability to use commas in the list values has been added. Previously, this symbol was used for system purposes in this type of field.

For short and full news output templates, support has been added for new tags: [ifxfset fields="X"] text [/ifxfset] that output the text enclosed in them if a field named X has been specified and filled in for the news. At the same time, you can list several field names separated by commas. For example [ifxfset fields="test1,test2"]both fields named test1 and test2 are filled [/ifxfset] will output text if both fields were filled in the news. And also added tags [ifxfnotset fields="X"] text [/ifxfnotset] that output the text enclosed in them if the field named X was not specified and filled in for the news. However, you can also list several field names separated by commas. For example [ifxfnotset fields="test1,test2"] both fields named test1 and test2 were not filled [/ifxfnotset] will output text if both fields were not filled in the news. The main difference from the existing tags [xfgiven_x] and [xfnotgiven_x] is that you can list several fields at the same time and the fullness of all listed fields is checked at the same time, as well as the fullness of fields without values is checked, for example, if the field is set to “0” or the value “no”, this is also a filled field in publications. If you need to check the value yourself, then use the tags [if field = "value"] text [/if] as before.

Support for new tags has been added for user profile output templates (userinfo.tpl and profile_popup.tpl): [own-profile] Text [/own-profile] that display the text enclosed in them, if the user is viewing his own profile on the site, as well as tags [not-own-profile] text [/not-own-profile] that display the text enclosed in them, if the user is viewing someone else's profile on the website.

For the category menu output template (categorymenu.tpl), the template tags [category-icon] text [/category-icon] and [not-category-icon] text [/not-category-icon] were replaced with the tags [cat-icon] text [/cat-icon] and [not-cat-icon] text [/not-cat-icon] respectively. This is due to the fact that these tags had the same name as the global tags for all templates linked to publications, which led to their incorrect operation when viewing sections and publications.

Added support for the "Automatic conversion of links to clickable" setting for all editors, including visual editors. This setting is now applied regardless of the editor used, as well as for additional fields with the "Multiple lines" type, regardless of the editor. Additionally, the setting is also applied to comments. If the user is allowed to publish links and publishes a link in text in a non-clickable form, it will be automatically converted to a clickable link.

Added gallery mode to the enlarged image view in the DataLife Engine'scontrol panel, in the section for managing uploaded images.

Added the ability to save and display the user's username in the comment template, in case an unregistered user leaves a comment. To do this, the addcomments.tpl template adds support for a new {guest-name} tag, which outputs the login of an unregistered user that he entered during the previous comment addition. Thus, an unregistered user will not need to enter his username every time he adds a comment on the site.

Added the ability to save and display the user's E-Mail address in the comment template, in case an unregistered user leaves a comment. To do this, the addcomments.tpl template adds support for a new {guest-mail} tag, which outputs the E-Mail of an unregistered user that he entered during the previous comment addition. Thus, an unregistered user will not need to enter his email address every time he adds a comment on the site.

Added the ability to use different editors simultaneously within the same page. For example, you can use the Floara editor for quick editing of publications, and use the adapted editor for mobile TinyMCE for comments.

We have added a check for the required additional fields when editing publications on the website.

When adding comments on the site, we have made changes to notifications in case a comment needs to be reviewed. Previously, the notification message had an "Error" visual type, which could mislead users and cause them to send comments repeatedly. Now, the notification occurs as a mild warning that the comment has been submitted, but is awaiting review.

The system for deleting user comments from the site has been updated. Previously, there were cases where comments that were replies to a deleted comment would remain in the database, leading to unnecessary and unused data in the system.

The TinyMCE visual editor has been switched to using the latest 7.xx

In case of a site shutdown, as specified in the script settings, it is recommended to send correct HTTP headers, such as 503, to indicate that the page is temporarily unavailable. This will prevent pages with information about the site being disabled from being indexed by search engines if they visit the site during the time of the shutdown.

In the event of a MySQL server outage, we have added additional HTTP headers to the response, including a 503 status code, to indicate that the page is temporarily unavailable. This helps prevent pages with site errorsfrom being indexed by search engines if they are visited during the outage.

Changes have been made to notify visitors if they are not allowed to leave comments on the website. If commenting is prohibited for theirspecific group, but other groups can leave comments, a message will bedisplayed indicating that commenting is not available for their group. If commenting is disabled for all users, regardless of their group, the message will not be displayed specifically for that group. This way, userswill not be misled into believing that commenting is only disabled forthem and not for others.

We have fixed an issue where backup files were not being deleted when automatically creating backups using Crown, if the limit on the number of stored backup files was exceeded.

Security fixes when working with the database management section of the DataLife Engine Control Panel.

We have fixed an issue where the transition to comments would not work when viewing the latest news if User Friendly URL  support was disabled in the script settings.

We have fixed an issue where, in some cases, the intended page with a comment may be incorrectly selected when clicking on a link to view recent comments if pre-moderation is enabled for comments before they are published.

We have fixed an issue where if a user was assigned to a group that was deleted, they would be transferred to a non-existing group if the group promotion was set in the group settings. Now, if there is no such group, the user will remain in their current group and won't be moved anywhere else.

We have fixed an issue that could cause an error when adding or editing RSS feed sources in the DataLife Engine's control panel.

We have fixed an issue that could cause an error in the category management section of the control panel in certain cases.

We have fixed an issue where the "Hide only the full news from inaccessible sections" setting for user groups did not work correctlywhen using the {custom ...} user output tag.

We have fixed an issue where the {news-id} global tag was incorrectly processed when viewing a non-existing publication.

We have fixed an issue with the title of a publication being incorrectly displayed when a user adds a comment using the {news-title} tag. This issue was caused by a problem with the custom comments feature.

We have fixed an issue with the incorrect definition of the publication date in some cases, where it was being displayed as "yesterday and today".

We have fixed an issue that could cause incorrect file counting whensending feedback in some cases.

 

List of changes of 17.1

 

For additional fields with a list type, we have added the ability to select multiple values from the list. You can configure in the settings for this additional field whether it is possible to select more than one value at a time, or only one value from the list can be selected. You can also specify how to display the values of this field on your site, for example,by using a specific separator. Additionally, you can determine whetherthis field is required or can be left blank.

We have added the ability to include links to images uploaded to our publications in the sitemap. This option can be enabled or disabled directly when creating a map in the admin panel. When this option is enabled, all images that have been uploaded for publication will also be included in the map, according to the guidelines of the Google search engine https://developers.google.com/search/docs/crawling-indexing/sitemaps/image-sitemaps?hl=ru. If this option is disabled, the map will be created without any links to images. However, including images in a map can increase the time it takes to create the map and require additional database queries.Therefore, it is up to you to decide whether or not to enable this feature. At the same time, including images on a map can significantly improve the indexing of your images on your website.

A new system has been implemented to notify users about successful completion or errors on the site. Previously, users had to manually close a pop-up window with information about the site's actions. The new system sends push notifications in the corner of a user's browser,automatically closing after a certain period of time, without any further action from the user. Developers of templates, modules, and plugins can now also use the built-in functionality to trigger these notifications. The success notification is triggered by the function DLEPush.info (message, title), The push notification is triggered by a function DLEPush.warning (message, title), the notification of an error is sent by the function DLEPush.error (message, title). Different types of notifications have unique designs.

In the DataLife Engine's control panel, there is now an option to forcethe addition of a unique prefix to all uploaded images, in the image management section. When this feature is enabled, the prefix will be automatically added to the image's name. This will help users who often change their image upload to avoid browser cache and ensurethat they see the latest version of the image on their site. If this optionis disabled, then the original image name is saved, and only if a file with that name already exists on the server will a unique prefix be applied. The prefix is no longer directly linked to the time of download, as it wasin previous versions, and is now unique and randomly generated.

Added the ability to sort external storages according to the specifiedorder. To do so, simply move the desired store to the desired positionand set the sorting order in the control panel under the Storage Management section. This way, you can ensure that the most frequently-used stores are displayed first, if necessary.

Added the ability to customize the settings for quick edit mode inpublications on the website. Now, you can choose whether you want to edit only fields that were previously filled out, or display all the fields for editing, including those that weren't filled in earlier. When you select the "edit only filled fields" mode, quick editing will still display only the previously-filled fields when adding new fields. However, if you choose the "all fields" mode, then you can edit not only a short description butalso a full description and any additional fields for your publications,regardless of whether they're empty or not and whether they were previously filled in.

Added full saving of the file name uploaded to the server using the DataLife Engine and intended for download. When uploading a file to the server, its name will be saved as it was originally, and accordingly, when downloading it, it will be saved to a computer with the same name. For example, if Cyrillic characters were used in the name (my файл.txt ), then they will also remain when downloading without transliteration: my файл.txt The same applies to other languages.

For the plugin system, the DataLife Engine control panel has added the ability to perform all necessary actions with a plugin directly when editing it. For example, on the plugin editing page, users can check for updates, update, download, or delete a plugin without leaving the page.Previously, users could only edit a plugin on the dedicated edit pages. As a result, a total of five new options have been added to the plugin management interface.

For the plugin system in the DataLife Engine control panel, we have added a link to edit a plugin to the plugin options menu. This allows you to open the editing window for a plugin in a new browser tab, which is helpful when editing multiple plugins at the same time in the control panel.

Added the ability to change the name of the comment author, when editing comments on the website and in the administration panel, if the comment was left by a non-registered user. Now, if a user has written invalid text in the "name" field, an administrator can edit it without having to delete the comment on the website itself.

Added automatic dynamic modification of tag content [add-favorites] text [/add-favorites] и [del-favorites] text [/del-favorites] when adding or deleting a publication from bookmarks on the website,it doesn't matter where these tags are located in the template or what their content is. The content will automatically be updated when an AJAX action is performed, without having to reload the page. The user will also automatically see that the publication has been added to or removed from the bookmarks.

When displaying the "Complain" button in the comments section of the site, we have added a check to ensure that the user is the author of the comment and, if they are, then the "Complain" button for that comment is not shown, as users cannot complain about their own comments.

Added support for a new global tag {lang text="LANG_PARAMETER"}, which is designed to output information from the website.tpl language file, which is currently in use, where LANG_PARAMETER is the value of the parameter to be output. For example, the tag {lang text="attach_images"} will display the inscription “Attach images” from the language pack. This tag will be useful when developing additional modules and plugins, when you can place additional language data directly into the language pack and automatically output the phrases you need when the user changes the language on the site, displaying the values in the template as a tag, rather than directly writing the phrase.

For short and full news output templates (shortstory.tpl and fullstory.tpl) added support for a new tag {edit-date=формат даты} which displays the date when the publication was edited in the format specified in the tag. Thus, you can set your own format for the editing date, or output not only the entire date, but also its individual parts. The date format is set according to the format used in PHP. For example, the tag {edit-date=d} displays the day of the month, and the tag {edit-date=F} displays the name of the month, and the tag {edit-date=d-m-Y H:i} displays the full date and time.

For the user's pop-up card output template (profile_popup.tpl) added support for a new tag {usertitle}. This feature allows you to display the user's name and username in a specific location within your website's template. Previously, their login information was only displayed in the header of a card, but now it can be displayed in any other location you choose.

For additional fields with the “Date and Time” type, support for a new tag has been added [xfvalue_X format="Format"], where X is the name of the additional field, and “Format” this is the output format of the date and time specified in the field. Thus, in different places of the template, you can output this additional field in different date and time formats, and not only in the format specified for the default field in the field settings. For example, the tag [xfvalue_test format="j F Y H:i"] displays the date and time specified in the field in time format j F Y H:i.

For user profile output templates (userinfo.tpl and profile_popup.tpl) added support for new template tags: [banned] text [/banned] they display the text enclosed in them if the user is currently banned from the site, [not-banned] text [not-banned] they display the text enclosed in them if the user is not banned from the site, {ban-description} displays the reason why the user is banned, {ban-date} displays the date before which the user was banned from the site. Thus, with the help of new tags, users can display information to other site visitors when they visit a user's profile. This information will include details about why the user was banned, and what the reason for theban was.

We've added the ability to specify which provider will be used for search engine notifications in the script settings of the admin panel using the IndexNow protocol. The choice of provider doesn't affect which search engines will be notified. They automatically synchronize the data. However, the choice does affect which provider responds faster and is closest to your site based on location. Therefore, everyone can select the optimal provider for their website.

The script settings have added the ability to use a specially adapted mobile device editor when writing comments on the website. When this option is selected, a lightweight editor with a minimum number of buttons will be displayed. This editor doesn't overload the mobile screen with information and also simplifies the process of uploading and managing images.

Added automatic support for all time zones supported by the server.You can set the default time zone for the site or the user can choose it in their profile. If time zones are updated on the server, the DataLife Engine will automatically use the latest versions. Therefore, more than 300 new time zones have been added for users to choose from, and they will automatically update if new ones are added. For the ease of selecting a time zone, we have added a time zone search when selecting.

We have added a search system for script settings in the admin panel. This will allow you to find the desired setting much more quickly by simply starting to type its name. Additionally, for your convenience, the text of the relevant setting will be highlighted for visual display.

An editor with source code highlighting has been added to the Email message template management section. The visual component of thesection has also been improved, making it easier to edit templates for emails.

Added automatic rebuilding of the tag cloud when rebuilding publications in the admin panel. This feature will be useful in cases where, during manual independent work with the database, relationships between tables are incorrectly updated. For example, if publications are added bypassing the DLE

We have added an automatic redirection feature that redirects users to the home page immediately after they register on the site. This helps reduce the number of clicks that users need to make on the site during registration and reduces the number of steps they need to take to navigate around the site.

Added support for IPv6 addresses in the "List of IP addresses for which authorization is allowed in the script administration panel" section ofthe administration panel. Therefore, if the website administrator has an IPv6 address, instead of a non-IPv4 address, they can restrict access to only the IPv6 addresses they need in order to gain access to the website.

Improved the visual appearance of selected categories when adding and editing publications in the control panel.

For the TinyMCE editor, we have added the ability to specify image sizes directly while editing the properties of an image.

Changes have been made to how the user tagging button is operated by a spammer. As a result, this button no longer appears in the comments of users who belong to a protected user group.

When selecting external storage during file upload and if allowed, it is shown in a similar manner to the external storage management section.

The system for determining the color of the watermark on images has been improved. The DataLife Engine now determines the color areas better and better on which the watermark should be applied, which allows for a more accurate determination of which watermark (light or dark) needs to be used in a particular case.

We have improved the system to pre-check the email address when a user registers on our site or changes their address in their profile.

When editing the values of additional user fields in the control panel, the rights of the user being edited are added, and not the ones of the editor. For example, if a user is forbidden from adding links in additional fields, then this prohibition will be applied and saved when the user is edited by an administrator.

Added the ability to use HTML code in additional fields of user profiles, even if safe mode is disabled for these fields. Previously, BB tags were the only option available.

Added the ability to use additional fields of the "Date and Time" type in the full publication view. Previously, these fields were not available inthe full output, as per the field settings.

Added automatic cache reset for the admin panel's custom styles file,located in the templates folder, when clearing the cache from the admin panel.

For tags [ifxfvalue ….] … [/ifxfvalue], to check the values of additional fields, we have added a check on the list of values if the "Use as cross-reference" option is enabled for the additional field. For example, if a field contains several values, the check will be performed for each value separately, not for the entire field. A similar validation mechanism has been added for tags [if ….] … [/if] дfor these types of additional fields.

Added support for PHP version 8.3.x

The TinyMCE visual editor has been updated to the latest version. Its rendering speed has been significantly improved.

When using the TinyMCE editor, if an image is uploaded not through the file manager but through the "Insert Image" window in the editor, then saving the written description for the image will also save any reduced copies that were created at the same time.

Due to the fact that search engines no longer support advanced notifications from websites about changes to their site map sitemap.xml https://developers.google.com/search/blog/2023/06/sitemaps-lastmod-ping, This notification feature has also been removed from DataLife Engine. Now, everything happens automatically on behalf of the search engines. You just need to add your address to the search engine's webmaster panel, and the search engines will automatically check and re-index your site.

Improved the system for displaying uploaded images and files in the file upload window. To make it more convenient, the file prefix is hidden from the names of the uploaded files. This makes it easier to orientate yourself in the folder. Also, in some cases, the prefix is more accuratelydefined in the name, thus avoiding accidental deletion of part of the name.

Fixed an issue where it was impossible to add replies to comments with anti-spam enabled reCAPTCHA v3.

Fixed an issue where some additional fields could take incorrect values when rebuilding publications in the control panel.

Fixed an issue where comment templates were incorrectly processed in some cases when a comment was submitted by an unregistered user.

Fixed an issue where the list of external repositories did not load when uploading images if several different sites were combined into a single user base.

Fixed an issue where the cache was incorrectly cleared when approving a comment that was under moderation.

Fixed an issue with a user named "noname" who was unable to rate posts and comments.

Fixed an issue where, when rebuilding the publications in the admin panel, publications that were not published on the site are included in the search index of publications based on additional fields.

Fixed an issue with the user not being able to select some time zones in their profile.

Fixed an issue where the publication dates "Yesterday" and "Today"could be incorrectly displayed, if there was a change in day relative to server time, according to the time zone chosen by the user in their profile on the website.

Fixed an issue where when viewing full news, the direct transition to the desired comment in the comment block displayed by the {customcomments .....} tag, if present on the page, might not work.

Fixed an issue where the cache for full news pages wasn't cleared when editing a publication in the admin panel if the third type of SEO links was enabled in the script settings.

 

List of changes of 17.0 version:

 

Added the ability for site users to delete their own account on the site, if they so wish. This permission is enabled in the settings of user groups. And it can be selected from several options. You can allow users to make a completely independent decision to delete an account, or you can only allow sending a request to the site administration to delete an account, or even prohibit self-deletion. The admin group is always protected from self-deletion for security purposes against account theft. An administrator can only be removed by another administrator. If the user is allowed to delete himself, then he can delete his account and all his data from the site in his profile by confirming this decision with an additional input of his account password. If sending a request to the administration is enabled, then the user management section for site administrators will show a list of users who have requested the deletion of data and account from the site, and the administrator will need to decide whether to delete this account or reject this request. After the account is deleted by the administrator, the user will receive a corresponding notification that his deletion request has been completed.

For the user profile output template (userinfo.tpl), support for new tags has been added: [delete] Text [/delete] that display the text enclosed in them as a link to delete the user's own profile on the site, if he is allowed to do so by the settings of user groups.

Added a new “Storage” section in the DataLife Engine control panel. In this section, you can add various external storage systems to which files will be uploaded using the DataLife Engine in the future. Thus, the site can use not one specific external storage for files, but different ones. Moreover, different storages can be used for different needs. In this section, you can add repositories, disable them, assign any storage, default storage, etc.

In the script settings in the admin panel, the ability to specify which repositories to upload certain files has been added. You can set up different repositories for images for posts, comments, static pages, user avatars, etc. For all cases, you can set either the default repository or any other repository created in the storage management section.

The ability to allow or prohibit users to select storage immediately before uploading files and images has been added to the user group settings. If this feature is allowed to the user, that he will be able to choose before uploading files to which storage they need to be placed. Thus, different files can optionally be placed in different repositories. And if this is prohibited, then the download will be according to all default settings.

For additional fields with the types “Uploaded image”, “Uploaded image Gallery”, “Uploaded audio playlist”, “Uploaded video playlist”, and “Uploaded file”, the ability to specify in the settings of these fields to which storage files need to be uploaded has been added. Thus, you can upload different additional fields to different repositories, which are specified in the storage management section.

For additional fields of user profiles, the possibility of assigning the “safe field mode” option has been added, with this type of field, the possibility of using BB tags or HTML tags is completely disabled. And also these fields can be safely used when displaying them in the HTML attributes of template tags.

When displaying a list of recent comments on the site, an automatic transition to the selected comment has been added when clicking on the headline of the news to which it refers. At the same time, the page on which he is located is automatically searched, if, for example, a comment is on the second page of the news, then the user will automatically get to the second page, and the browser will automatically scroll to this comment. Thus, the user will see it immediately visually. In order to add automatic search when generating custom links in the template, you need to add the attribute to the links: onclick="findCommentsPage(this, '{id}', '{news-id}'); return false;"

Added automatic marking of avatars uploaded by the user with a unique value of the avatar file name. Thus, each time a user uploads an avatar for his account, his name will automatically change, and the new avatar will be visible immediately after downloading, without using the cache from the browser. Thus, it is no longer necessary to clear the browser cache when the user changes the avatar on the site.

Added the ability to quickly attach images to comments, while quickly editing comments on the site. If the template for adding a comment uses tags to display a quick upload form and attach images to the comment, then when editing, a quick upload image form will also be automatically added to the comment.

Added the ability to quickly attach images to comments when responding to comments. If the template for adding a comment uses tags to display a quick upload form and attach images to the comment, then when responding to comments, a quick upload image form will also be automatically added to the comment. Thus, the possibilities when adding a new comment and when adding a response to a comment will be identical.

For custom output of publications using the {custom ...} tag, the possibility of custom assignment of the period for which the block should be cached in the cache parameter has been added. You can specify the period in minutes, hours, or days. Values with the suffixes “m”, “h” and “d” are used to specify the caching time. For example, if you specify {custom cache="30m"....}, the block will be forcibly cached for 30 minutes if you specify {custom cache="2h"....}, then the block will be cached for 2 hours, if you specify {custom cache="1d" ....} then the block will be cached for one day. If you simply specify {custom cache="yes"....}, then as before, automatic cache control will be enabled and it will be updated as the information is updated. Specifying the time of forced caching will save server resources if the block does not need to be updated immediately, for example, when adding new publications or comments.

For custom output of comments using the {custom comments ...} tag, the possibility of custom specifying the period for which the block should be cached in the cache parameter has been added. You can specify the period in minutes, hours, or days. Values with the suffixes “m”, “h” and “d” are used to specify the caching time. For example, if you specify {customcomments cache="30m"....}, the comment block will be forcibly cached for 30 minutes if you specify {customcomments cache="2h" ....}, then the block with comments will be cached for 2 hours, if you specify {customcomments cache="1d" ....} then the block with comments will be cached for one day. If you simply specify {customcomments cache="yes"....}, then as before, automatic cache control will be enabled and it will be updated as the information is updated. Specifying the time of forced caching will save server resources if the block does not need to be updated immediately if the information on the site changes.

For the DataLife Engine control panel, full support for languages using the right-to-left text writing method has been added. To do this, the “direction” directive has been added to the language packs, which specifies the type of writing text for this language ‘ltr’ or ‘rtl’. At the same time, if the right-to-left writing type is used, then DataLife Engine will connect a specially prepared and adapted CSS file with control panel styles for the control panel, which will correctly mirror the entire control panel. Thus, users can use the panel design necessary for this language.

For WYSIWYG visual editors, support for languages using right-to-left text writing has been added. To do this, the value of the “direction” directive is also used, which is set in language packs when creating a translation into the desired language. By specifying the right-to-left spelling of “rtl” in the directive, editors will automatically use this text writing mode.

For all the usual text fields that DataLife Engine generates in the control panel and on the site, automatic support for languages using right-to-left spelling has been added. Switching occurs automatically as soon as the user starts writing text in this language. Thus, the integration and creation of websites in these languages has been improved and facilitated.

In the user group management section, the ability to enable or disable permission to use the “Headers, descriptions, meta tags” module has been added. Thus, you can allow other user groups to use this section, and not only for administrator groups.

In the user group management section, the ability to enable or disable permission to use the “Cross-references” module has been added. Thus, you can allow other user groups to use this section, and not only for administrator groups.

In the user group management section, the ability to enable or disable permission to use the Redirects module has been added. Thus, you can allow other user groups to use this section, and not only for administrator groups.

For the Redirects module in the control panel, the ability to disable or enable redirects has been added. Thus, if necessary, you can temporarily disable or enable the redirect you need without having to delete and re-add them.

For the “Cross-references” module in the control panel, the ability to disable or enable keywords has been added, thus, if necessary, you can temporarily disable or enable the replacement of the words you need without having to delete and re-add them.

For the module “Headers, descriptions, meta tags” in the control panel, the ability to disable or enable the specified rules has been added. Thus, if necessary, you can temporarily disable or enable the specified rules for these pages without having to delete and re-add them.

In the admin panel in the publication editing section, a visual display of the number of publications found has been added when using advanced search by various parameters.

In the script settings, the ability to specify how many found publications to show in the results of a quick search on the site has been added. Previously, only five found results were always displayed, now you can specify your desired value in the settings.

Changes have been made to the logic of the quick search. Now the search results, if they do not enter the window in height, do not directly block the search field itself.

For the total rating of the user's publications, the use of a new {ratingscore} tag has been added in the output templates of the user profile and the user's quick card (userinfo.tpl and profile_popup.tpl). This tag displays the number of the average rating of all the user's publications, from one to five, while maintaining a fractional value. For example, depending on the rating, it can be 1.6 or 4.2, etc. This tag allows you to set, for example, your own design of rating stars with partial filling, and not just 2 or 4 filled stars.

For the total rating of user comments, the use of a new {commentsratingscore} tag has been added in the output templates of the user profile and the user's quick card (userinfo.tpl and profile_popup.tpl). This tag displays the number of the average rating of all user comments, from one to five, while maintaining a fractional value. For example, depending on the rating, it can be 1.6 or 4.2, etc. This tag allows you to set, for example, your own design of rating stars with partial filling, and not just 2 or 4 filled stars.

Changes have been made to the operation of the [active] ... [/active] tag for the category menu template. Now this tag displays the text enclosed in them for the parent categories, if the category that the site visitor entered is a nested subcategory of these parent categories. Previously, this tag outputs text only for one category, directly in the one in which the visitor was. Thus, you can highlight, among other things, the active parent categories.

Added a correct system for calculating the hash of uploaded files directly by content, in case they are uploaded to external storage.

Added support for calculating the digital control signature of files uploaded to external storage, if the file arrives at external storage, bypassing the server where DataLife Engine is installed, for example, if the file is downloaded from an external site by URL, and not from a computer.

Changes have been made to the logic of the site search. Now data is transmitted to the server using GET requests, not POST. Thus, site visitors, when navigating through the search results pages, will be able to use the “Back” button in the browser, as well as overload the page without warnings from the browser.

For the TinyMCE visual editor, the ability has been added when writing comments to insert images from the clipboard and by transferring images to the editor and automatically upload them to the server, if a simplified form of uploading comments is enabled and used for uploading comments. That is, you can use both a simplified form and insert it into the editor text, or automatically upload it to the text field in the editor itself.

For the TinyMCE visual editor, the ability to insert drop-down lists (Accordion) has been added, as well as the ability to manage them. These lists are inserted using HTML5 tags “details” and “summary".

When viewing uploaded files online on the site, the ability to view files has been added, and when the file download blocking setting is enabled when accessing from other sites. Previously, viewing became unavailable because access to viewing sites occurred from external Google and Microsoft services.

Improved the system of uploading files to the server from external sites. Added the ability to upload files if the URL contains not simple direct links to the file, but using various parameters in the links.

Improved selection of parent categories when creating and editing categories. If there are a large number of categories, they can be found using a quick search through the list of categories.

The system of logging out and logging out of the user on the site has been improved. If the user leaves the site, then a complete cleaning of all data from the browser is performed, including those that were installed by third-party plugins and scripts on the site.

Changes have been made to the logic of processing tags [if field = "value"] text [/if], now they are executed before the connection and processing of tags {custom ....} and {include file=”....”}. Thus, you can use these tags inside these structures without creating an excessive load on the server and executing them only if the conditions of the structure in which they are located are met.

After uploading video or audio files to the server, the link to insert the player is now selected by default when selecting the insert. Thus, inserting media files is faster when writing publications.

Updated instructions for creating an application on the Google service for using authorization on the site using Google accounts.

The system of searching for similar news when editing publications in the control panel has been redesigned. Now the system of this search takes into account which search mode is enabled in the script settings: “Simple” or “Full-text".

The speed of the search for similar news in the publication editing section has been increased when using the full-text search mode on large databases with a large amount of content.

The work with the cache in the control panel has been optimized, which in some cases allows you to clear the cache of some data more rarely when performing a number of actions. This reduces the load on the server and increases the performance of the site.

Improved the performance of the site, in case of execution of any automatic programs on the crown. The cache is now cleared more accurately and only if necessary if any data in the database has been changed. This reduces the load on the server.

Improved the system for generating a control signature required to perform various actions for users who are not authorized on the site. This signature no longer depends on the IP of the users, thereby they will not be denied to perform an action on the site if the IP address has unexpectedly changed between the actions.

The TinyMCE visual editor has been updated to the current version. Various minor errors in the editor's work have been fixed.

Fixed an issue where the {THEME} tag was incorrectly processed when using it in the template for displaying the results of a quick site search.

Fixed an issue where information about the tag cloud and cross-references was not updated if the publication was automatically removed from the site by the crown, if the deadline for its publication on the site expired.

Fixed an issue where in some cases the name of the button for uploading video files for additional fields with the type “Downloadable video playlist” could be displayed incorrectly.

Fixed an issue with incorrect display of the section for editing additional fields of publications and users in the DataLife Engine control panel.

Fixed an issue where nested comments were displayed one level less than specified in the setting: “Maximum nesting level of comments" in the script control panel.

Fixed an issue where when disabling comments on the site, the user sorting of publications by views on the site stopped working correctly.

 

List of changes of 16.0 version:

 

Added support for two-factor authorization using one-time passwords from the Google Authenticator application or any other applications that support one-time OTP passwords. The user can choose in his profile which two-factor authorization he wants to use. He can choose to use applications, or a one-time password will be sent by E-Mail. Any applications that support OTP verification can be used for use, including the built-in tools of smartphone operating systems, not just Google Authenticator.

Added support for a new type of captcha on the Cloudflare Turnstile Sites website. This type of captcha provides the highest quality protection against spam bots, and also works as comfortably as possible for site visitors who do not need to make a choice of annoying pictures or writing text. Everything is as simple as possible, automatically and quickly.

Added the ability to limit the number of downloads for files uploaded to the site. To do this, in the settings of user groups, you can specify for this group how many files per day they are allowed to download. At the same time, downloads of unique files are recorded, and not just download attempts. For example, you have allowed downloading five files a day, a visitor has downloaded five files, and he will be prohibited from downloading any other files after that, but if some file was corrupted or accidentally deleted during downloading, then these files that he has already downloaded, he can also download again without problems. If you do not want to set a download limit, then this restriction can also be disabled.

Added a new type of additional fields for publications: “Video playlist". In this field, you can quickly upload video files that will be displayed on the site as a ready-made video player with a list of downloaded files to play them. Thus, you can quickly and conveniently organize the publication of videos on your website. In the properties of the field, you can set the maximum number of uploaded files, as well as the maximum file size allowed for uploading.

Added a new type of additional fields for publications: “Audio playlist". In this field, you can quickly upload audio files that will be displayed on the site as a ready-made audio player with a list of downloaded files to play them. Thus, you can quickly and conveniently organize the publication of audio files on your website. In the properties of the field, you can set the maximum number of uploaded files, as well as the maximum file size allowed for uploading.

Support for full-text search has been added to the quick search system on the site. Now a quick search on the site, depending on what is enabled in the settings, will also use either full-text or simple search. Thus, the results of a quick search will not differ from the results from the full search section on the site, if the full-text search mode on the site was enabled.

For a quick search on the site, support for the template system has been added. Now a new fastsearchresult.tpl template file is used to output search results, in which you can use all tags without exception that the short news output template supports. Thus, you can output additional fields and design the results the way you want without any restrictions.

When editing comments on the site, if the uploaded images are displayed using the {images} tag in the comments, a list of uploaded images is added to quickly remove images from the edited comment.

Added output of uploaded images for comments in the admin panel in the comments editing section. Thus, you can immediately see the images if a separate output tag is used for them in the template and they are not in the comment text. And you can also quickly delete uploaded images in one click, if necessary.

The ability to specify the properties of RSS feeds that are used on the site has been added to the script settings. These properties are used to determine which tags are allowed in the stream, their standards, and so on. You can specify properties for all three streams used on the site. These properties are necessary for various services that use these streams in their work, thus, if some service has changed the requirements for RSS feeds, you can independently specify the necessary parameters in the settings without having to wait for DataLife Engine updates or edit the script files yourself. You can also use streams in general for some other proprietary services, and set the necessary parameters yourself.

The ability to hide the short description field when adding and editing publications has been added to the script settings in the admin panel. You can disable this field if you do not use it when writing publications, so that it does not interfere with you. This innovation will be useful for those who use, for example, only additional fields with their own properties.

The ability to hide the full description field when adding and editing publications has been added to the script settings in the admin panel. You can disable this field if you do not use it when writing publications, so that it does not interfere with you. This innovation will be useful for those who use, for example, only additional fields with their own properties.

Support for new tags has been added for the news addition template (addnews.tpl): [allow-shortstory] text [/allow-shortstory] which output the text enclosed in them if the support for the short description field is enabled in the script settings, and hide the text if this field is disabled. Tags have also been added: [allow-fullstory] text [/allow-fullstory] which output the text enclosed in them if the full description field is enabled in the script settings, and hide the text if this field is disabled.

Added the ability to sort publications by the date of their editing. The sorting order can be performed in the script settings in the control panel, on the site by the user himself if allowed, as well as in the settings of each category separately.

Added the ability to save database backups to external storage. To do this, you can enable the “Save backups to external storage” setting in the script settings. When this option is enabled, the backup will be automatically transferred to external storage.

Added the ability to automatically convert uploaded images to one selected format in the format script settings. Instead of setting up automatic conversion of uploaded images to WebP format, you can choose one of four formats: PNG, JPG, WEBP, AVIF. Or you can disable automatic conversion to another format altogether and the image will remain in the format it was originally in.

Added the ability to use not only jаvascript tools for deferred image loading, but also native browser support. Now in the script settings you can choose the type of deferred download: Disabled, enabled using jаvascript, and enabled using native browser support. Native browser support works more accurately and faster, does not require loading additional scripts to the page, but it is supported only by modern browsers. Not all visitors to your site may have such browsers. If the user uses the old browser, he will see the image in any case, but the delayed download will not work for him.

For image output tags and embedded frames (img and iframe), the ability to add an attribute has been added loading="lazy" when adding publications. To add native deferred loading of images and frames by browsers that support this attribute.

Added support for new global tags: [category-description] text [/category-description], which output the text enclosed in them if the category being viewed has a given category description. And also added tag support: [not-category-description] text [/not-category-description], which output the text enclosed in them if the category has no description. These tags will be useful when designing various template blocks for cases when a description is set, and for cases when there is no description.

For users who are in the “Editors-in-Chief” group, the ability to change the author of publications has been added. Previously, only site administrators had such an opportunity.

For the plugin system, the ability has been added to specify several plugins that are required to be present in the system for the plugin to be installed to work. To assign multiple plugins, their names are separated by commas. Previously, it was possible to specify only one mandatory plugin.

Added automatic switching to a dark theme in the DataLife Engine control panel (if automatic night mode is enabled) depending on the installed operating system theme. Now switching will be not only by time, but also if the theme of the operating system has been switched to dark, then switching will also be performed in the control panel.

Added support for a new tag for the RSS output template {full-story limit="X"} which outputs the text of the full news without HTML formatting, while the publication text itself is reduced to the specified X number of characters.

When using comparison using tags [if field = "value"] text [/if] for additional fields with the type “date” and “date and time”, automatic verification has been added as date values. When comparing, you can use the date in English format, for example, "2020-09-01" or "10 September 2020" or "next Thursday" or "+1 day" or "next Thursday" or in unix format, and also use not only the equal sign, but also check whether the date is greater or less than the specified value. Previously, this type of fields was compared simply as a text value.

Improved comparison system using tags [if field = "value"] text [/if] when using the values of additional fields in comparison. Additional conversion of previously escaped characters into regular characters is performed, which simplifies comparison.

Simplified system of extended registration on the site, the visitor will need fewer steps during registration when passing the extended registration on the site.

For templates for displaying short and full news, as well as for the main page template (shortstory.tpl, fullstory.tpl, main.tpl) added support for new tags: [xfvalue_X video="Nr"] which outputs the videos uploaded for an additional field with the type "Video playlist" with the selected number separately. Where "X" is the name of the additional field, and "Nr" is the number of the video from the playlist, [xfvalue_X video-url="Nr"] which outputs uploaded URLs for an additional field with the "Video playlist" type, individually. Where "X" is the name of the additional field, and "Nr" is the number of the video from the playlist, [xfvalue_X video-description="Nr"] which outputs the video descriptions uploaded for an additional field with the "Video playlist" type, separately. Where "X" is the name of the additional field, and "Nr" is the number of the video from the playlist. [xfgiven_X video="Nr"] text [/xfgiven_X video="Nr"] which output the text enclosed in them if the video with the specified number is present and uploaded in an additional field, where X is the name of the additional field, and Nr is the number of the video, [xfnotgiven_X video="Nr"] text [/xfnotgiven_X video="Nr"] which output the text enclosed in them if the video with the specified number is not in the additional field, where X is the name of the additional field, and NR is the number of the video. All these tags will be useful when using your own third-party video players to organize video viewing on your site.

For templates for displaying short and full news, as well as for the main page template (shortstory.tpl, fullstory.tpl, main.tpl) dded support for new tags: [xfvalue_X audio="Nr"] which outputs the videos uploaded separately for an additional field with the "Audio Playlist" type. Where "X" is the name of the additional field, and "Nr" is the number of the audio file from the playlist, [xfvalue_X audio-url="Nr"] which outputs uploaded URLs for an additional field with the "Audio Playlist" type, individually. Where "X" is the name of the additional field, and "Nr" is the number of the audio file from the playlist, [xfvalue_X audio-description="Nr"] which outputs the descriptions of the audio file uploaded for an additional field with the "Audio Playlist" type, separately. Where "X" is the name of the additional field, and "Nr" is the number of the audio file from the playlist. [xfgiven_X audio="Nr"] text [/xfgiven_X audio="Nr"] which output the text enclosed in them if the audio with the specified number is present and loaded in an additional field, where X is the name of the additional field, and Nr is the number of the audio file, [xfnotgiven_X audio="Nr"] text [/xfnotgiven_X audio="Nr"] which output the text enclosed in them if the audio with the specified number is missing in the additional field, where X is the name of the additional field, and Nr is the number of the audio file. All these tags will be useful when using your own third-party audio players to organize audio on your site.

The formation of the meta tag of the title of the page when displaying the main page has been changed if the use of the static main page as the main page is set. Now only the main header specified in the script settings in the control panel is used in the header.

The system of quick editing of comments on the website and in the control panel has been improved. In case of any error, an error message will be displayed to the user in a pop-up window, while the possibility of making further changes to the comment will remain to eliminate the errors that have occurred.

Improved support for additional fields having the “One line" type with the safe mode option. For these fields, the ability to use URLs as content has been added, and they can be used to insert links in publications.

Changes have been made to prevent the occurrence of links to publications whose length exceeds the total URL length limit of 255 characters set by the standards.

The system for displaying reduced copies of images has been updated. The appearance has become even more modern, smoother animation has been added, more zoom levels.

Added the use of more cryptographically secure algorithms in various random value generators used by various user identification functions.

For the TinyMCE visual editor, the ability to set the text size quickly and conveniently in any values, and not just from a list of predefined sizes, has been added.

For the Froala visual editor, the ability to use any font icons in texts has been added, not just FontAwesome old versions.

Significantly accelerated the work of DLE and reduced the load on the server when generating RSS feeds for Turbo pages and Yandex Zen.

Added the ability to assign new keywords to the tag cloud in mass actions on publications, to use special characters in these tags, such as quotation marks and a number of others that are supported by the tag cloud.

For the [mediа=...] tag, the ability to insert short videos (shorts), as well as playlists from the Youtube service, has been added. Previously, it was possible to insert only regular videos.

The system of automatic transliteration of links for SEO URLs has been improved, so that when forming links, the remnants of HTML entities do not fall into these links.

When writing additional fields in a publication with the “Cross-references” option, if the tag was written using a different letter case, then when displaying this field in bread crumbs and meta tags of the title, a word with the same letter case as it was written in the publication will be used, and not in small letters as it was previously. At the same time, the URL remains unchanged as before.

When writing words for a tag cloud in a publication, if the tag was written using a different letter case, then when displaying this tag in bread crumbs and title meta tags, a word with the same letter case as it was written in the publication will be used, and not in small letters as it was before. At the same time, the URL remains unchanged as before.

The minimum requirement for DLE is the presence of PHP 8.0 and higher on the server. Previously, the minimum version of PHP was 7.4. In addition, the recommended requirements for the PHP version were lowered, now it is also enough to have the PHP 8.0.x line, not 8.1.x, for all DLE functions to work

The TinyMCE visual editor has been updated to the current line.

Fixed an issue where comments were combined into a single line when using the BBCODES editor for comments.

Fixed an issue where extra lines appeared when massively combining comments on the site, in the case of using visual editors for comments.

Fixed an issue where when changing the search bar in the search, there was no return to the first page of the search if the user is not on the first page and uses only the keyboard.

Fixed an issue where the {related-ids} tag in the full news template worked incorrectly when the publication was first shown on the site.

Fixed an issue where checking some fields in the [if field = "value"] text [/if] tag did not work when connecting custom output of publications using the {custom ...} tag

Fixed an issue where it was impossible to add new keywords to the tag cloud in some cases when performing mass actions on news.

Fixed an issue where some buttons in the BBCODE editor might not be pressed in some cases when quickly editing publications on the site.

Fixed a problem in which a non-valid layout was formed in the case of using a tree layout of comments, if the nesting limit of comments was reached.

Fixed an issue where the image upload button for additional fields with the “Image Gallery” type could not be unlocked when transferring an image from one gallery to another.

List of changes of 15.3 version:

 

Added automatic support for uploading HiDPI (Retina) images and screenshots for publications and static pages on the site. In the image upload manager, before uploading an image, you can specify that the image is an image with a high pixel density, for example, this is a screenshot taken on a HiDPI (Retina) screen, and DataLife Engine will automatically create two copies of the image when loading, one for normal screens, the second for high-density screens, and when viewing the site by a visitor, in the case of if he has a high-density screen, he will see a high-density pixel image, and if a normal screen, then a normal image. The same thing happens for smaller copies of images. Thus, you can automatically publish high-quality high-definition screenshots on your website. As an example of implementation, you can view the images published in this news. The insertion of high-definition images is supported only when using visual editors when writing a publication.

The display of thumbnails copies of images with an increase to the original size has been completely redesigned and transferred to the use of modern JS libraries. The image gallery display has also been redesigned. Now you can easily change the visual appearance with the help of your templates, all elements of the gallery are adapted using vector graphics, and the display of images has become comfortable on any devices, including mobile devices with gesture support for comfortable viewing of enlarged images.

Database queries have been redesigned when displaying short news on the site. These queries were optimized when working with large databases containing a large number of publications. When navigating through the pages of short news, sampling from the database is now much faster, and consumes significantly less server resources.

The RSS feed generation system of your site has been redesigned. Due to the fact that Yandex and DZen have separated, it is now impossible to form content in a single stream. Therefore, DataLife Engine now broadcasts three different streams simultaneously for different services. At the address http://yoursite/rss.xml RSS is broadcast in a common format for various systems and services and fully complies with RSS 2.0 standards. At http://yoursite/rssturbo.xml RSS feed of publications for Yandex Turbo is broadcast, and at http://yoursite/rssdzen.xml RSS feed of Zen publications is being broadcast. Now the threads are completely independent and do not intersect with each other and work separately. The same applies to the separation for the categories of the site and user publications. You can see in detail all the addresses for RSS feeds in the documentation for the script. Also, in this regard, the template format for RSS feeds has been changed. New tags [rss] ... [/rss] are used for the standard RSS block, [turbo]... [/turbo] tags are used for the turbo news block, the [dzen] ... [/dzen] tags are used for the zen news block. After the update, you need to bring your RSS template in line with the new mode of operation. As an example, you can take the standard template templates/rss.tpl from the distribution archive.

Added support for WebDAV external storage for uploading and storing images and files. The type of this storage is selected in the script settings in the control panel. The parameters for connecting and using this storage are also set there.

Added the ability to fully edit publications on the site for users who are allowed to edit publications, but access to the DataLife Engine administrative control panel is prohibited. Previously, only quick editing was available to them, but now they can fully edit news with all fields, including blank additional fields. To do this, the module for adding publications on the site is used, the user will edit the news on the add page, while the filled fields will already be filled in, and he can make only the necessary edits or supplement the fields not previously specified in the publication.

The ability to set a list of domain names for which the insertion of iframe tags is allowed has been added to the script settings. Thus, you can independently specify a list of secure domains from which you insert content for your publications. You can also completely disable the permission to insert iframe tags in publications on your site.

In the script settings in the control panel, the ability to enable and disable the output of PHP errors has been added, if they occur in the code. It is recommended to enable this option for the duration of technical work, for example, before updating the script or before installing plugins, so that in case of errors, you can see them visually. This setting allows you not to change the server settings to enable this feature, and not to view the server error logs to see the problem.

Added a system for automatically resetting the cache of static JS and CSS files for browsers for all site visitors. When you click the "Clear Cache" function in the DataLife Engine control panel, a special unique cache ID will be reset, which is used by the script when connecting static CSS and JS files. If you connect styles and scripts in the template using the {include tag...} then the browser cache will be reset for them as well. Thus, when making, for example, changes to template styles, you can reset the cache, make sure that all visitors to your site, without exception, immediately see the updated information and layout, without waiting for the cache in their browsers to become outdated.

A new global tag {cache-id} has been added for all templates, which outputs the current current cache ID, which you can use in templates when connecting your static files, bypassing such internal DLE functions as {include file=....}, and their browser cache will be automatically reset when the site administrator clicks on the button "Clear cache" in the control panel. For example, you can use the <link href="{THEME}/font/style.min.css?v={cache-id}" rel="stylesheet" type="text/css"> construct to a static style file.

The exterior design of the TinyMCE visual editor has been redesigned. The display of the menu has been removed, all its functions are displayed immediately in the form of buttons, so that there is a more convenient visual access to the functions of the editor, without the need to search for them in various menus.

For the TinyMCE visual editor, the ability to quickly design blocks with preset styles has been added. You can, for example, make the design of an information or warning block in one click, set the boundaries of the block, etc. Which makes the design of publications easier and faster.

For the TinyMCE visual editor, the ability to select preset classes for images when inserting and editing them has been added, which you can arrange in your template at your discretion. Thus, you can quickly put the design you need to the images immediately in one click.

When writing comments and personal messages on the site using the TinyMCE visual editor, the ability to quickly insert a user's login with a link to his profile has been added. It is enough to type the @ symbol and then start typing the user's login, DataLife Engine will automatically search the user database and offer options for automatic insertion. The inserted content after publication is automatically converted into a link to the user's card, when you click on it, you can see information about the user, write him a message and visit his profile.

The online document viewing service on the site has been replaced by a service from Microsoft, instead of the one previously used by Google. This ensures more complete compatibility when viewing, and support for additional new formats available for online viewing has also been added. Full list of supported formats: "doc", "docx", "docm", "dotm", "dotx", "xlsx", "xlsb", "xls", "xlsm", "pptx", "ppsx", "ppt", "pps", "pptm", "potm", "ppam", "potx", "ppsm", "odt", "odx"

Added the use of full-fledged editors for the RSS News Import module. Depending on which editor was enabled for publications in the control panel, it will be automatically connected and used when editing a short publication and when receiving a full publication.

When importing publications in the control panel from various RSS sources, automatic conversion of links to images has been added if they specify a path without a domain. For example, if there is a link on the source site "/image/file.jpg ", then it will be automatically converted to a link including the source domain "https://domain.com/image/file.jpg ", thus the images will be displayed correctly in publications.

Added automatic pre-filtering of incorrect HTML code when receiving full news in the module for importing publications from various RSS sources. After receiving the content according to the HTML template that you set for the RSS source, it will be pre-filtered for unsupported or unclosed tags, will be completely filtered and only then displayed in the editor for further editing.

For template parameter files (info.json), which is located in the templates folder, the ability has been added to specify which type the template belongs to, light or dark. To do this, use the parameter "type": "light" to indicate that the template is light and "type": "dark" to indicate that the template is dark. When you enable that the template is dark, all visual editors will automatically switch to the dark color mode and will have the corresponding dark design, without having to make edits to the template styles manually.

For full news output templates (fullstory.tpl), the use of a new {related-ids} tag has been added, which outputs a list of similar publication IDs for this news. This tag is useful when used together with the {custom ...} tag, for example, the {custom id="{related-ids}"} tag will display all similar news for this publication with support for all possible template tags, unlike the basic {related-news} tag, in which the supported tags are significantly limited in order to ensure greater performance. Thus, you get more opportunities to design publications on the site.

For the personal message output template (pm.tpl), support for a new tag has been added: {login}, which outputs the login of the author of the personal message, without any additional design.

For the personal message output template (pm.tpl), support for a new tag has been added: {date=date format}, which outputs the date in the format specified in the tag. Thus, you can output not only the whole date, but also its individual parts. The date format is set according to the format adopted in PHP. For example, the tag {date=d} will display the day of the month of the news or comment publication, and the tag {date=F} will display the name of the month, and the tag {date=d-m-Y H:i} will display the full date and time.

For user profile output templates, comments, personal messages (comments.tpl, pm.tpl, userinfo.tpl, profile_popup.tpl), support for a new tag has been added: {lastdate=date format}, which outputs the user's last visit to the site in the format specified in the tag. Thus, you can output not only the whole date, but also its individual parts, or use your own date format, rather than the default one. The date format is set according to the format adopted in PHP. For example, the tag {lastdate=d} will output the day of the month, and the tag {lastdate=F} will output the name of the month, and the tag {lastdate=d-m-Y H:i} will output the full date and time.

For user profile output templates, comments, personal messages (comments.tpl, pm.tpl, userinfo.tpl, profile_popup.tpl), support for a new tag has been added: {registration=date format} which outputs the date of user registration in the format specified in the tag. Thus, you can output not only the whole date, but also its individual parts, or use your own date format, rather than the default one. The date format is set according to the format adopted in PHP. For example, the tag {registration=d} will output the day of the month, and the tag {registration=F} will output the name of the month, and the tag {registration=d-m-Y H:i} will output the full date and time.

Automatic tag usage has been added for meta tags of your site pages <link rel="preconnect" href="http://yourwebsite.com/" fetchpriority="high">, which allows you to leave the browser connection open, and not open it again when accessing other pages of your site. This allows you to slightly improve and speed up the responsiveness of your site, especially on slow Internet connections.

In the script settings, in the file upload settings section, the ability to set which access rights will be set to files when they are written to the server has been added. There are two modes available for selection: "Public" and "Private". When using private mode, full access rights will be set only for the owner of the file on whose behalf the files are uploaded to the server. When using public mode, full rights will be set for all server users. By default, public mode is used, but for some external servers that use the S3 protocol, it is necessary to enable private mode. For example, the Cloudflare S3 service. This provides more extensive support for various cloud services for data storage.

The ability to set the size of packages when uploading large files to the server has been added to the script settings. When uploading large files, these files are split into separate packages so as not to exceed the limits set on the server. You can specify the size of the data packet that will be sent to the server at a time, it is specified in megabytes. The fewer packets are sent, the faster the upload to the server will take place. And you can set your own packet sizes, depending on the specific settings of your server limits.

Added automatic filtering of adding files to the queue when uploading them for publications. If there is a limit on the number of uploaded images or other files for publication, the user will not be able to add more files to the queue than he is allowed to. Moreover, filtering for images and other files occurs independently of each other, and each limit is taken into account separately. Thus, the user not only clearly sees that he has already exhausted the limit and cannot add more, but also unnecessary data and files are not sent to the server, thereby saving server resources.

When uploading images to comments on the site, an automatic restriction on queuing files has also been added, if a maximum limit is set on the number of images that can be uploaded for comments.

Added automatic removal of the tag cloud map from the site map, if tag cloud support is disabled in the script settings, or if there are no keywords for the tag cloud.

Added automatic removal of the static page map from the site map, if there are no static pages on the site.

Added automatic removal of the category map from the site map, if there are no categories on the site.

For comments and personal messages, the output of the date of the comment or personal message has been changed when using the {date} tag. When displaying the date, a more extended accounting of how much time has ago since the message, if minutes have, it will indicate how many minutes have ago, if hours, how many hours have ago, if less than a week has, the day of the week and time will be indicated, etc. Thus, it will always be clearly visible how old this comment is.

For template tags {registration} and {lastdate} that display the registration date and the date of the user's last visit, the output of this date has been changed throughout the site where they are used. When displaying the date, a more advanced accounting of how much time has passed since this date has been introduced. If minutes have passed, it will indicate how many minutes have passed, if hours, then how many hours have passed, if less than a week has passed, then the day of the week and time will be indicated. Thus, it will always be clearly visible, for example, the last activity of the user on the site. For example, I was on the site 20 minutes ago, or yesterday at 12:20, etc.d.

When quoting comments on the site, automatic addition of the date of the quoted message when it was left has been added. At the same time, if a little time has ago, then for ease of reading, it is indicated how much time has ago since the message. For example, 10 minutes ago. Also, as this time passes, this information is automatically updated on the site.

In the settings of the Datalife Engine control panel, the ability to set the scaling of the control panel has been added. All panel elements are scaled proportionally, which will allow some users to work more conveniently with the control panel.

In the settings of the Datalife Engine control panel, the ability to enable additional font smoothing has been added, which allows you to see more comfortable text on some monitors.

All rules are in files.htaccess for managing the Apache server has been rewritten in such a way as to simultaneously support all Apache lines, both the 2.2.x and 2.4.x lines, even if some modules are disabled.

Added support for DataLife Engine JS scripts on some types of browsers embedded in TVs.

Added support for uploading images and files for additional fields of publications using the "Drag & Drop" method. To start downloading files, it is enough to move the file with the mouse from the computer to the area where the download button of this field is located.

The rating for publications on the site was switched to using data-xx attributes instead of using id attributes in HTML. Thus, you can use the rating output in several places at the same time in one publication, for example, at the bottom and at the top of the publication, for more convenient rating on the site. The automatic update will also happen in several places at the same time where it was installed.

The rating for comments on the site has been switched to using data-xx attributes instead of using id attributes in HTML. Thus, you can use the rating output in several places at the same time in one comment, for example, at the bottom and at the top of the comment, for more convenient rating. The automatic update will also happen in several places at the same time where it was installed.

By persistent numerous requests, the automatic transfer to a new line has been removed after inserting the user's nickname in the comment field, in cases of responses to comments with tree comments disabled. And when using visual editors, a quick insertion of a link to the user's card will be used.

When switching themes and operating modes of the control panel, automatic rebuilding and updating of the TinyMCE visual editor has been added to the panel settings window without the need to reload the page. For example, when switching to a dark theme, the editor will also automatically update completely and switch to using a dark theme without overloading the page.

The navigation system in the RSS import management module of publications in the DataLife Engine control panel has been improved.

Improved the visual design of the Froala and TinyMCE editors when using a dark theme in the DataLife Engine control panel

Added a new additional color scheme for the DataLife Engine control panel. It is aimed at a warmer display of the panel, while a more contrasting perception of the content. We hope that users will like the new additional scheme. This scheme is optional, and is enabled in the panel settings, all previously existing schemes are also preserved.

Updated internal third-party libraries, as well as jQuery and the TinyMCE visual editor to the latest versions.

Added the ability to upload images in AVIF format to the server if the GD2 library is used on the server. This feature is used only if PHP 8.1 and higher is installed on the server, and there is also support for decoding image data from the server.

Added support for PHP 8.2.xx

Fixed an issue where checking for some fields in the short news output template for the tag [if field = "value"] text [/if] from those described in the template documentation did not work.

Fixed a problem where uploaded images to comments that the news has could not be deleted if the news itself was deleted from the site.

Fixed problems with possible incorrect operation of inserting emoticons in the TinyMCE editor when using the site on two different http and https protocols at the same time.

Fixed an issue where caching of comments output using the {custom comments ....} tag did not work

Fixed an issue where the TinyMCE visual editor was displayed incorrectly when editing comments on the site when using a dark theme in the DataLife Engine admin panel.

Fixed an issue where there were problems when using uploading images and files in Yandex browser.

Minor issues in the script that were detected and stated earlier have been fixed.

 

List of changes of 15.2 version:

 

Added an automatic notification when going to edit a publication that the publication is already being edited, if it is currently being edited by another user. This feature is enabled in the script settings in the control panel. This innovation will be especially useful if there are a large number of editors and moderators on the site, so that they can see that another person is already engaged in this publication.

Added the ability to simplify, quickly and conveniently upload images to comments. Now you can simply place comments in the template (addcomments.tpl) the {image-upload} tag, which will display a special field where the user can drag and drop images to upload, or select them from the computer. At the same time, the user will not need to download anything separately, everything will be downloaded automatically as soon as the user clicks the add comment button. At the same time, having placed the files, if desired, he can remove them even before sending a comment, or change their sorting order. If a quick download tag is placed in the template, the normal file upload button will automatically turn off in the editor, and it will not be displayed. And if the tag is not placed, then loading and inserting images will be as before. You can display all uploaded images in comments in the comments output template in any place convenient for you with specially provided tags.

For the comments output template (comments.tpl), support for new tags has been added: [images] text [/images] that show the text enclosed in them, if images were uploaded to the comment, as well as the {images} tag that will output all images uploaded for the comment as an image gallery. This image gallery can enlarge the reduced copies by clicking and flip through the images among themselves.

The settings for the permission to insert images into the comment text and the permission to upload images to comments have become completely independent. Now you can prohibit inserting images into the comment text, but at the same time allow uploading images to comments and displaying uploaded images in strictly designated places in the comment output template using the {images} tag.

When adding files and images to the server, the ability to preview the files added for uploading has been added in the upload module. After adding files, the download will not start automatically immediately, and the user can view the files that he added, if erroneous files are added, he can delete them from the download queue. Also added a choice for the user how to display a list of files, he can view them as a list or as icons. The user's choice is automatically remembered for subsequent downloads.

Added the ability to sort the order of priority of uploading images and files to the server, directly before uploading, after selecting files, the user can change the order by simply transferring files from the list to the desired order.

Added the ability to rename the names of uploaded files, for this, after adding files and starting upload, just double-click on the file name and edit the name by specifying a new one.

Added the ability to upload files to the server of any size, regardless of the settings and limitations of the server software. Often, the server has small limits on the maximum size of the file transferred to the server, and to download large files, it is necessary to increase the server limits, which is not always possible, and also requires more memory consumption. Now DataLife Engine automatically splits the transferred file into parts and sends the file in parts until it is fully loaded, and already combines it into a single file on the server. Thus, you can upload files to the server regardless of the hosting limits, and only the restrictions set in the DataLife Engine settings apply, for example, you can upload files weighing several gigabytes with hosting limits of only 2 megabytes for downloading files by setting such permission only in the DataLife Engine settings.

Changes have been made to the loader of images and files, in case any error occurs during loading. Now the error notification will not be automatically removed from the screen, and the user can remove it by clicking on the corresponding button on the notification. Thus, the user will have enough time to read the error.

When selecting files on the computer that the user will upload for publications to the server, file filtering has been added by file extensions that are allowed to upload to the site, and only those files whose extensions are allowed will be available for selection. Thus, the user can immediately select only what is allowed, and prohibited files will not be available for selection. This will allow the user to immediately avoid errors that the file is incorrect and not allowed to download.

For extra fields of publications with the type: "Text", "Image" and "Image Gallery", support for a new option has been added: "Use lazy load for image". Thus, you can configure separately for each field whether or not to use deferred loading for this content, and turn it on for some fields and turn it off for others.

In the settings of user groups, the ability to transfer a user to another group when a certain rating of comments is set has been added.

For the module "Filter by: IP, Login or E-Mail" in the DataLife Engine admin panel, a search system has been added, which allows you to quickly find the desired banned account. Also, the search is conducted for the reason of the ban, thereby you can also quickly sort the banned users.

For the module "Filter by: IP, Login or E-Mail" in the DataLife Engine admin panel added a split into several pages in case there is a large number of addresses. Thus, navigation and management of blocked users becomes easier with a large number of them.

The TinyMCE visual editor has been switched to using the current 6.xx and updated to the current version. The new line works faster and more reliably with modern browsers, using their internal APIs and functions for parsing content.

When using the TinyMCE on the site as the main one for publications, the ability to automatically create a table of contents of the publication with links to the titles when writing a publication has been added. Automatic content is arranged based on the presence of headings in the text (H2 - H6 tags).

Added automatic browser cache reset for the TinyMCE editor in case of updating the DataLife Engine to a new version. Thus, the browser will always automatically download up-to-date copies of the editor's JS files, and users will not have to update the browser cache themselves when updating the site to newer versions of the DataLife Engine.

The design of the TinyMCE editor on the website has been finalized and improved, and closer integration has also been made with the change of the design themes of the admin panel with the editor.

Added the ability to insert fragments of source codes in the comments on the site when using a visual editor.

Redesigned the style of displaying and managing uploaded images in additional fields in the admin panel and on the site. Now their display corresponds to what is used in the file loader.

Added support for nested include of template files using the {include file="...."} with full retention of tag support in pluggable nested templates. Previously, only a single attachment was supported, after which tag support was automatically disabled to avoid nested endless looping. For example, previously you could connect the template {include file="header.tpl"} in main.tpl by use tags from the main.tpl template, but you could not connect another one from the header.tpl template, for example, menu.tpl with use tags from main.tpl. Now it's possible. You can connect header in main.tpl.tpl from header.tpl will connect menu.tpl, and from menu.tpl connect category.tpl, etc. and the functionality of the template tags of the parent template will be preserved everywhere. In order to avoid layout errors and endless looping, the maximum nesting level is limited to 200 sub-templates, which is enough for templates of any complexity.

For the template system, the ability to connect CSS and JS files using the {include file=...} tag has been added. At the same time, files connected in this way will be connected in the corresponding sections, where other service JS and CSS files of the Datalife Engine are, regardless of the location of the {include ...} tag in the template. Also, if CSS and JS compression is enabled in the script settings, these files will also be merged and compressed automatically along with other files. An example of using this tag in a template: {include file="{THEME}/css/styles.css"} will indicate that you need to connect this file to the main block with CSS files. You can also connect external files that are located on other sites and domains in this way

Added new global tags for templates: [script] code [/script] in which you can place use executable jаvascript code. In this case, the data code will be placed directly in the executable block of other DataLife Engine JS codes, it will be launched immediately after loading other JS scripts that are used when included. Thus, you can organize all the JS codes in the template, standardize their execution order, and avoid any conflicts in the future.

 Support for new tags has been added for the full news template (fullstory.tpl): [allow-comments-subscribe] text [/allow-comments-subscribe], which show the text enclosed in them, if the user is allowed to subscribe to comments. Thus, you can make a link to subscribe to comments in the block you need and hide it if the subscription is prohibited.

For the comment adding template (addcomments.tpl) added support new tags: [allow-comments-subscribe] text [/allow-comments-subscribe], which show the text enclosed in them, if the user is allowed to subscribe to comments. Thus, you can make a link to subscribe to comments in the block you need and hide it if the subscription is prohibited.

For the comment adding template (addcomments.tpl) added support new tags  {comments-subscribe} which outputs a checkbox for subscribing to comments in the form of adding a comment. Now this checkbox will not be forcibly displayed together with the editor, but you can place it in the template in the block you need and in the visual design you need.

For templates for displaying the full news and adding a comment (fullstory.tpl and addcomments.tpl) added support for new tags [comments-unsubscribe] text [/comments-unsubscribe] which show the text enclosed in them as a link to unsubscribe from comments to this publication. Thus, users can unsubscribe from only one specific news on the site, previously they had to unsubscribe from all publications.

For user profile templates (userinfo.tpl) added support new tags for comparing values. For example, the tag [if field = "value"] text [/if] outputs the text enclosed in them if the field values are equal to the specified value.

For the "Redirects" module, support for redirecting to external sites has been added. Previously, the redirect was carried out only once for the user, then it was blocked. Now, when visiting a link on your site, from which there is a redirect to an external site, such a transition will always be carried out, regardless of how many times the visitor visits this link.

In the script settings in the admin panel, the ability to set permission or prohibition to change the sorting order of categories assigned for publication has been added. If this setting is enabled, the categories will be in the order in which they were selected by the user when adding the news (the first selected category will be the first, the second the second, etc.), and if the settings are disabled, the categories will be sorted in the order in which they are sorted in the category management section, regardless of how they are adds the author when adding a publication.

Added the ability to use the output tags of additional fields of publications [xfvalue_X] as parameters for the user output tag of publications {custom ...}, if it is used in a common template main.tpl. For example, you can use such constructions as {custom tags="[xfvalue_test]" template="test"} to display publications by a specific tag specified in the additional news field.

Added the ability to add a user to the ignored list directly when viewing his profile on the site. To do this, for the user profile view template (userinfo.tpl) added tag support: [ignore] text [/ignore] which show the text enclosed in them as a link to add the user to the ignored list.

For the user card output template (profile_popup.tpl) added support for new tags [ignore] text [/ignore] which show the text enclosed in them as a link to add the user to the ignored list..

Expanded the ability to ignore users on the site. Namely, a ban on sending e-mail messages from the user has been added if the recipient has it in the ignored list. Thus, if one user has added another to the ignored ones, then he will not receive not only personal letters, but also e-mail through feedback on the site.

The system of counting publication views has been redesigned and improved. Now the views of the publication are counted only from real visitors using the browser to view the publication. Any robots scanning pages, bots, parsers, etc. will not be taken into account. Thus, the counter of views of publications will become more logical and objective.

In the script settings, has been added to specify after which period of time the user is on the page read the full news, it is necessary to count the page view. If the user has been on the page for less than the specified amount of time, the viewing from him will not be counted. Thus, you can ignore visitors who are on the page clearly less than necessary to read your publications.

Changes have been made to the operation of the "Trusted Categories" setting in the group settings, for users who are allowed to edit any news. Now, if a list of trusted categories is set, the user will not be able to edit the publication data of other users at all, even if they are being moderated and not published. Thus, you can create your own moderators directly for certain sections of the site, and they will not have access to other categories of the site.

Added a display of the number of publications for a category in the category management section in the control panel, if counting the number of publications for categories was enabled in the script settings.

Added preventive measures to protect against accidental deletion of personal messages when performing mass actions on personal messages. Now, if deleting messages is selected, then this action will need to be confirmed.

New methods have been added to optimize the calculation of the number of publications in categories, if previously such calculations were already performed by other DLE functions, as a result of which, in some cases, the number of requests in the database is reduced and the load on the server is reduced.

Added the use of script settings: "Set the NOREFERRER parameter for external links" for publications and comments also on links that are published using the link encryption tag [lееch=...] ... [/lееch]. Previously, referral transfer was always blocked for such links, now depending on the script settings in the admin panel.

For publications that are divided into several pages, added correct formation of meta tags for social networks that maintain these pages. Now each page will lead exactly to the page that it corresponds to. For example, if the user shares the second page, then the link will lead to the second page and not to the start page of the publication.

For publications that are divided into several pages, added correct formation of links for micro markup Schema.org . Now each page will also lead to exactly the page that it corresponds to.

The formation of description meta tags and keywords has been redesigned, for publications that are divided into several pages. Now the description that was set in the admin panel when adding the news will be used only for the first start page, and for subsequent pages, these meta tags will be generated based on the content of these pages. Thus, the meta tags of different pages will not be duplicated, which has a positive effect on the overall SEO of your site.

Changes have been made to the system of notifying users by e-mail about new comments on the site, if they have subscribed to receive such notifications. Now, if tree comments are used on the site, and this is a response to any comment, then only the author of the comment that was answered will receive a notification (if he is subscribed to such notifications), while other users subscribed to this news will not receive it for comments, but will receive notifications only if it is a new comment that is not a response to another previously added comment. Thus, sending notifications will be more logical, users will not receive notifications when commenting on discussions in which they do not participate.

Changes have been made to internal links to various sections located inside the main index file of the Sitemap. Links are now formed in such a way that maps are always hierarchically higher than internal links on the pages of your site. Which theoretically has a more positive effect on the SEO of the site. This is an internal optimization, no action is needed to change any links to maps in search engines.

The system of highlighting the published source code on the site has been redesigned and improved. The definition of languages is now more correct, and eliminates errors in the definition with the code type already selected. The source code highlighting library has also been updated to the current version.

The use of control panel fonts has been redesigned and improved, thereby improving the readability of text when using various devices. The use of the control panel using smartphones has also been improved and optimized. Font sizes in the control panel have been converted to relative scalable values, and are now tied to the operating system and browser settings. Thus, if you have increased the size of the base font in the browser settings, it will automatically work in the control panel on your site, which is convenient for users with disabilities.

Due to the need to support new functions and features, as well as optimize the script on the server for higher performance, the PHP 7.xx line has been declared obsolete and it is recommended to update the server software to version 8.1 and higher.

Fixed an issue related to incorrect text validity when inserting video and audio content using a standard DLE player into the publication text.

Fixed an issue where some site functions might not work if different groups have different settings for using captcha Google Recaptcha v.3

Fixed an issue where when loading an icon for a category, directly when creating a category, the icon was loaded to an external server if it was connected for other functions.

Fixed an issue where the publicly available file option was displayed when uploading images to comments.

Fixed an issue where information about uploaded images in the shared image and file loader could not be updated if the image was loaded during direct transfer to the TinyMCE editor.

Fixed an issue where errors could occur when updating from very old versions of the DataLife Engine.

 

List of changes of 15.1 version:

 

Added the formation of a site map designed for the Google News service, this map is formed automatically when forming a map of your site in the corresponding section of the control panel.

 The format of creating a Sitemap for Google and Yandex search engines has been completely rethought. Now a separate file with a map will be created for different sections of the site, which in turn will be combined into a single index file. For example, a map of static pages will be in one separate file, links to categories in another, etc. At the same time, for search engines, you specify a link, as before, only one to your site, for example, http://вашсайт.ru/sitemap.xml and it will automatically combine all the created maps of your site.

 In the admin panel, in the site map management section, the ability to save the installed map settings for further use has been added. For example, you can set up the necessary priorities once and save them, and they will always be used, including when automatically creating a map through the server's crown.

When forming the site map, the possibility of adding a parameter of the probable frequency of page changes to it has been added. You can set not only the priority for pages with publications, categories or static pages, but also how often such pages are expected to change, which allows a more optimized approach to the search indexing of your site's pages.

When forming the site map, the ability to set the number of links to publications in one file has been added. You can assign how many links you need to put in one file as much as possible, and if there are more links to the map, it will be divided into more files. Reducing the number of links reduces the memory consumption for creating a site map. You can put no more than 40,000 links in one file, so as not to exceed the limits already on the part of search engines.

When forming the site map, the date of the last update of the news pages is now set in full format, when the last update was, including also the time and time zone, and not just the day of the last update. Which also has a positive effect on the search indexing of the site and faster updates by search engines.

In the admin panel in the image management section, the use of paginated navigation has been added if there are a large number of images in the folder. This significantly speeds up the loading of the image management page and improves image management capabilities.

Added a search engine for plugins in the plugin management section in the control panel. You can quickly find the plugin you need by any key value. At the same time, the search is conducted throughout the plugin system and values. For example, you can specify part of the name or description, or you can also specify the name or part of the name of the file being modified or part of the code in the file, the search will be carried out everywhere and you will be shown a list of plugins that fall under the search query.

In the script settings in the admin panel, the ability has been added to set where to use a shared folder for images, if external storage is also used. You can specify separately whether to use a shared folder from an external storage or from a local one.

If there is a limit on the number of uploaded images for a publication or comment, then when uploading images, a convenient output of information is added for the user how many images in total he can upload, how many he has already uploaded for publication and what limit is still left. Thus, the user understands even before uploading how much he can still upload for publication.

If a limit on the number of uploaded files is set for publication, then when downloading, a convenient output of information is added for the user how many files in total he can download, how many have already uploaded for publication and what limit is still left. Thus, the user understands even before uploading how much he can still upload for publication.

For mass actions on publications, in the publication editing section, the ability to assign additional new keywords for the tag cloud to existing ones has been added. Thus, you can choose either to completely massively reassign all the words, or simply add new additional ones to the existing publications.

In the admin panel in the "Tag Cloud Management" section, the ability to specify the sorting of output tags has been added. You can sort the output both by tag name in alphabetical order and by the number of publications. At the same time, sorting can be specified both in descending and ascending order. This way you can quickly find the necessary tags to edit or delete. For example, display the most unpopular tags first, or vice versa, frequently used, etc.

Added support for structured data schema.org for static pages on the site.

In the category settings in the admin panel, the ability has been added to specify for each category, if necessary, which type of structured data schema.org use it when displaying publications from this category. You can set both global settings and change them separately for the desired categories. For example, in some categories there may be news, in others software or books, etc.

Added the ability to specify in the script settings whether or not to transliterate characters when generating the URLs of publications, categories, and static pages. For example, if you enable this option in the script settings, when generating the publication URL, it will look like: http://yoursite.com/id-imja-novosti.html , and when disabled, it will have the form: http://yoursite.com/id-имя-новости .html, also by analogy and when forming categories and static pages. This innovation will be especially useful for SEO optimization of sites in national languages other than English.

For the IndexNow protocol, which is used to automatically notify search engines, support for notifications when adding and editing static pages on the site has been added.

Added the ability to insert posts from Telegram channels into your publications on the site using the tag [mediа=....]. In this tag, just a copied link from the browser is indicated, and then all the necessary code will be generated automatically by DataLife Engine. For example, to insert a post, you can use: [mediа=https://t.me/vamtlgrm/185]

Added support for the HCaptcha service (hcaptcha.com ) to check whether the visitor is a bot or not. This service is enabled in the script settings in the admin panel, as well as Recaptcha and acts on all sections where verification is enabled and required.

Added support for a new global tag {page-count} that displays the number of the page the user is on. This tag is global, and can be used in any tpl template files. This tag will be especially useful in using various advertising, for example from Yandex, where you can specify additional parameters for the page number where the site visitor is located, for a more correct advertising display on the site.

Added support for lazy loading of images when displaying the content of publications from additional fields directly in the main template main.tpl

Added the formation of links from the tag cloud when forming the sitemap. In addition to links to categories, publications and static pages, links to all words existing in the tag cloud will now also be added to the sitemap.

Added support for notification of changes in the site map for the Yandex search engine.

Changes have been made to search engine notifications about updating the site map. Links to search engine notifications have been updated to current ones.

Added the ability to use the symbol: "|" when writing descriptions to images in additional fields of publications. Previously, this symbol was a reserved service symbol and could not be used in the description of images.

The display of publications on the tag cloud has become completely case-insensitive, for example, the search for "News" and "News" will be the same regardless of the case in the URL. At the same time, in order to avoid duplicates in search engines, DataLife Engine generates links using only lowercase letters, and when using a different register, the control of incorrect NC will produce 301 redirects to the correct single address.

The display of publications when using additional fields with the "cross-references" type has also become completely case-insensitive, for example, the search for "News" and "News" will be the same regardless of the case in the URL. At the same time, in order to avoid duplicates in search engines, DataLife Engine generates links using only lowercase letters, and when using a different register, the control of incorrect NC will produce 301 redirects to the correct single address.

For short and full news output templates (shortstory.tpl and fullstory.tpl), has been added new tags for displaying data from additional fields with the image gallery type: [xfgiven_X image="NR"] text [/xfgiven_X image="NR"], where X is the name of the additional field, and NR is the number of images that display the text enclosed in them if an image with the specified number is present and loaded in an additional field. And also added support for opposite tags: [xfnotgiven_X image="NR"] Text [/xfnotgiven_X image="NR"], which output the text enclosed in them if the image with the specified number is missing in the additional field. Thus, you can very flexibly organize the format and design of uploaded galleries for publications.

In the script settings in the admin panel, the ability to specify the Score value when using reCAPTCHA v3 has been added. This value is used to check the probability with which the user can be a robot when using the reCAPTCHA v.3. This field can take a value from 0 to 1, where, for example, 0.1 means that it is most likely a robot, and 0.9 is most likely a person. Since the degree of probability may vary on different sites, you can assign a probability based on Recaptcha statistics directly for your site. Recommended default value: 0.5.

Redesigned and improved verification using Recaptcha v.3 whether a visitor is a bot or not. The number of false locks has been reduced, especially if a person writes a text for a long time or fills out forms for a long time.

The system of protection against resending data when adding a publication to the site has been redesigned and improved. Protection triggers were eliminated when opening a large number of tabs, even in an interval of less than a second, and protection triggers were also eliminated in case of problems with PHP sessions, for example, if they expired if the user writes a publication in the browser for a long enough time.

For static pages, the limit on the template file name that can be assigned for use by this page has been significantly increased. This innovation is especially useful if subfolders are used in the template structure, and now the name of the assigned template will not be truncated.

When uploading a new plugin to the site in the script admin panel, if there is no information in the plugin file about which of the sections should be enabled or disabled (for example, old plugins created on old versions of the script), then these sections will be enabled by default. Previously, when adding such plugins to the site, all actions were disabled by default.

In the script settings in the admin panel, a setting has been added to specify the parameters by which the original image should be cropped, if its maximum dimensions are set, and only the value of one side is specified. You can choose "By the largest side", "By width" and "By height".

For the module for managing comments awaiting moderation, support for splitting into several pages has been added, if there are a large number of comments. This simplifies the loading of the list of comments and their moderation with a large number of comments on moderation.

For the IndexNow protocol, which is used to automatically notify search engines of new publications, the use of a single notification point has been added, which in turn will notify all other search engines connected to this protocol. Using a single point allows you to reduce the time for notification of all systems, and as a result, faster news saving.

For the IndexNow protocol, in case of any error when notifying search engines, instead of an error code, a text transcript of this error is immediately displayed, which allows you to immediately determine the cause of the problem, instead of having to read the documentation of search engines, for what this error code means.

When forming a file for RSS export, the correct removal of unsupported content has been added, in cases where it is necessary. For example, descriptions of images used in <figcaption> when exporting to Yandex News.

Внесены изменения в работу функции включения и отключения комментариев для каждой публикации в отдельности. В случае если отключаются комментарии для публикации, но при этом у данной публикации уже есть добавленные комментарии, то уже существующие комментарии будут продолжать отображаться на сайте (ранее они выключались и не отображались), но при этом будет запрещено добавление новых комментариев, а также ответы на существующие комментарии.

Changes have been made to the automatic notification of search engines about the appearance of new content, for more correct recognition of script users' errors, and their automatic correction, which could allow writing domain names of their sites in the script settings in violation of the requirements of URL standards, for example, using different letter case, which in turn led to the fact that search engines the systems did not accept the sites.

The behavior of dynamic loading of comments when displaying the full news as comments are viewed has been redesigned, if the order of sorting comments is selected in descending order (i.e. if new comments are shown first). Previously, comments were loaded incorrectly, only when scrolling up to the beginning of comments. Now they load correctly when scrolling down the page.

The Jquery UI library has been updated to the current version, when used on the Jquery 3.xx website. A number of errors in the operation of this library have been fixed.

Updated typographic text processing. A number of errors have been fixed and the placement of quotation marks for text has been improved.

The graphics driver for image processing has been updated to the current version, which has improved support for PHP 8.1 and higher.

The TinyMCE visual editor has been updated to the current version.

The DLE video player has been updated to the current version

Fixed an issue where when selecting any S3 compatible storage, the settings were not displayed: "Path to files on an external server" and "HTTP address for external storage".

Fixed an issue where in some cases incorrect processing of the contents of the [mediа=...] tag could occur.

Fixed an issue where when adding the first bookmark on the site, the profile displayed that two publications had already been added to bookmarks.

Fixed an issue where inserting data from some services using the [mediа=...] tag might not work.

Fixed an issue where OpenGraph meta tags for static pages were duplicated.

Fixed an issue where when using the TinyMCE editor, additional <p></p> tags were inserted at the end of the content if, when editing the source code, the cursor was placed at the very end of the text.