Following changes have been developed and added:
1. 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.
2. 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.
3. 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.
4. 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.
5. 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.
6.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.
7. 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.
8. 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.
9. 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.
10. 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.
11. 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.
12. 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.
13. 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.
14. 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.
15. 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.
16. 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).
17. 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.
18. 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.
19. Added the ability to insert fragments of source codes in the comments on the site when using a visual editor.
20. 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.
21. 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.
22. 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.
23. 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.
24. 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.
25. 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.
26. 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.
27. 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.
28. 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. Names of fields that field can accept:
name - User login. (text)
email - User's e-mail (text)
user_id - Unique User ID (number)
news_num - Number of user publications (number)
comm_num - Number of user comments (number)
user_group - User group (number)
lastdate - Date of the user's last visit (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, if an equal sign is used, the date is rounded to the minute)
reg_date - User registration date (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, if an equal sign is used, the date is rounded to the minute)
allow_mail - Has the user allowed to receive emails from the site (number 1 or 0)
info - User's information about himself (text)
signature - User signature (text)
fullname - Full user name (text)
land - User's place of residence (text)
foto - Link to the user's avatar (text)
pm_all - Number of personal messages of the user (number)
pm_unread - The number of unread personal messages of the user (number)
restricted - are there restrictions on the user (number 0 - there are no restrictions, 1 - a ban on adding publications 2 - a ban on adding comments 3 - a ban on publications and comments)
restricted_days - The number of days for which the restrictions is imposed (number)
restricted_date - The date before which the user is banned (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, if an equal sign is used, the date is rounded to the minute)
logged_ip - The IP with which the user visited the site (text)
timezone - User's time zone in time zone format, for example Europe/Moscow (text)
news_subscribe - Is the user subscribed to notifications about new publications (number 1 or 0)
comments_reply_subscribe - Is the user subscribed to notifications about responses to their comments (number 1 or 0)
twofactor_auth - Has the user enabled two-factor authorization (number 1 or 0)
cat_allow_addnews - Categories to which the user is allowed to add publications (array of category IDs)
cat_add - Categories that are trusted by the user when adding publications (array of category IDs)
xfield_x - The value of the user's additional field, where x is the name of the additional field. For example xfield_test is the value of the additional field test
29. 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.
30. 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.
31. 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.
32. 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.
33. 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..
34. 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.
35. 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.
36. 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.
37. 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.
38. 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.
39. 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.
40. 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.
41. 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.
42. 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.
43. 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.
44. 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.
45. 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.
46. 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.
47. 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.
48. 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.
49. 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.
50. Fixed an issue related to incorrect text validity when inserting video and audio content using a standard DLE player into the publication text.
51. Fixed an issue where some site functions might not work if different groups have different settings for using captcha Google Recaptcha v.3
52. 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.
53. Fixed an issue where the publicly available file option was displayed when uploading images to comments.
54. 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.
55. Fixed an issue where errors could occur when updating from very old versions of the DataLife Engine.
The following changes have been prepared and implemented:
1. Added the generation of a sitemap for the Google News service , this map is generated automatically when generating your sitemap in the appropriate section of the control panel.
2. Completely rethought the format of creating a Sitemap for Google and Yandex search engines. 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, and so on. At the same time, for search engines, you specify a link, as before, only one to your site, for example, http://yoursite.ru/sitemap.xml, and all created maps of your site will be automatically combined in it.
3. In the admin panel, in the site map management section, the ability to save the map settings for their further use has been added. For example, you can set the necessary priorities once and save them, and they will always be used, including when automatically creating a map through the server cron.
4. When generating a sitemap, the ability to add a parameter of the likely frequency of page changes has been added to it. You can set for pages with publications, categories or static pages not only the priority, but also how often such pages are expected to change, which allows you to more optimized approach to the search indexing of your site's pages.
5. When generating a site map, the ability to set the number of links to publications in one file has been added. You can assign the maximum number of links to be placed in one file, and if there are more links to the map, it will be split into more files. Reducing the number of links reduces the amount of memory required to create a sitemap. You can put no more than 40,000 links in one file so as not to exceed the limits already from the search engines.
6. When generating a sitemap, the date of the last update of the pages for news is now set in full format, when the last update took place, 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.
7. In the admin panel in the image management section, the use of pagination has been added when 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.
8. Added a search engine for plugins in the plugin management section of the control panel. You can quickly find the plugin you need by any key value. The search is conducted throughout the system of plug-ins and values. You can specify, for example, part of the name or description, or you can also specify the name or part of the name of the file being changed, 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 match the search query.
9. In the script settings in the admin panel, added the ability to set where to use the shared folder for images, if external storage is also used. You can set separately whether you want to use a shared folder from external storage or from local storage.
10. If a publication or a comment has a limit on the number of uploaded images, then when uploading images, a convenient display of information has been added for the user how many images he can upload in total, how many he has already uploaded for publication and what limit is still left. Thus, the user understands even before downloading how much he can still download for publication.
11. If a publication has a limit on the number of uploaded files , then when uploading, a convenient display of information has been added for the user how many files he can upload in total, how many he has already uploaded for publication and what limit is still left. Thus, the user understands even before downloading how much he can still download for publication.
12. For mass actions on publications , in the section for editing publications, the ability to assign additional new keywords for the tag cloud to existing ones has been added. Thus, you can choose to either completely massively reassign all the words, or simply add new additional ones to those already existing in publications.
13. In the admin panel in the section "Manage the tag cloud" added the ability to specify the sorting of output tags. You can sort the output either alphabetically by tag name or by number of posts. In this case, sorting can be specified both in descending and ascending order. Thus, you can quickly find the tags you need to edit or delete. For example, display the most unpopular tags first, or vice versa, frequently used ones, etc.
14. Added support for schema.org structured data for static pages on the site.
15. The ability to specify for each category, if necessary, what type of schema.org structured data to use when displaying publications from this category, has been added to the category settings in the admin panel . You can set both global settings and change them separately for the required categories. For example, some categories might be news, others might be software or books, and so on.
16. Added the ability to specify in the script settings whether or not to transliterate characters when generating URLs for publications, categories, and static pages. For example, when this option is enabled 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 look like: Best Website Builder Online | Yoursite /id-name-news.html, also by analogy when forming categories and static pages. This innovation will be especially useful for SEO optimization of sites in national languages other than English.
17. 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.
18. Added the ability to insert posts from Telegram channels into your publications on the site using the
Following changes have been developed and added:
1. Support of IndexNow protocol has been added. The protocol allows to immediately automatically notify search engines of any changes on the website, such as adding new pages, updating or deleting indexed pages. This data exchange can be enabled in the script settings. After enabling and setting it up, D ataLife Engine will automatically send URLs of the re-uploaded posts to search engines. When posts are edited, notification of modified content will also be sent to search engines.
2. An automatic structured data markup Schema.org has been added for posts on the website. You can select the type of your post and add various options for your website in the script settings on the admin panel, and after that DataLife Engine will automatically generate Schema.org microdata markup in the JSON-LD format for full post view pages. It improves your website's indexing and integration with other resources.
3. Schema.org microdata markup for BreadСrumb has been converted into the JSON-LD output format and has been united and integrated with another general type of microdata markup.
4. Schema.org microdata markup for BreadСrumb has also been improved and additional features have been added. Now it contains a full page tree, including the user's current page, for example, page navigation and a link to the full post page, etc.
5. Schema.org microdata markup for ranking of the value type has also been converted into the JSON-LD output format and now is posted with other structured data. Moreover, it will be applied not to all types of posts, but only to enabled types. This way search engines will not display notifications that it cannot be applied to the data structure for the post type.
6. For BreadСrumb navigation, when viewing posts by keywords, we have added links directly for the viewed keywords when the user goes to the next pages. This way the user can easily return to the viewed keyword by clicking the word in the navigation link.
7. Metatag autogeneration for website pages has been changed and improved. Auto-generation of the following tags has been added for better integration of the website with Twitter: Twitter:card, twitter:title, twitter:url, twitter:description. Now Open Graph and Twitter metatags can be displayed on all pages of the website, not only just on full posts.
8. A new feature has been added to the plugin system to enable and disable each specific action in the plugin. This way you can disable any specific action without disabling the plugin itself.
9. Now for every action in the plugin, you can specify in which DLE version the action can be performed. This way one plugin can be developed for several DLE versions at the same time, and for different DLE versions different actions will be performed.
10. To the plugin management system, we have added a highlighting system for every assigned action during plugin modification. If a block turns green, it indicates that its code is working correctly. The grey indicates that the block is disabled, the orange indicates that the block is for another script version. If the block turns red, it means an error has occurred, and error information will also be displayed. Thus, If a plugin includes a lot of different code, the new system allows to quickly find a certain block with errors.
11. For better user experience with the plugin system on the admin panel, we have added a new automatic system for minimising blocks in the file action management section. If the plugin contains modifications of multiple files, the list of the files will be minimized, while the block with an error will be automatically highlighted accordingly. This way you can quickly access the required block. When you go to the management block of a particular file, if there are errors in any action in this block, all successful actions will be hidden automatically, meanwhile the invalid block will be maximized and automatically highlighted in the appropriate colour, thus allowing you to quickly find the block with errors. This feature provides more intuitive and user-friendly management of large plugins. If a file management block contains no error, all blocks will be maximized and it will be easy to visually find the required code. All blocks, both for file management and for action management, can be minimized or maximized at any moment.
12. We have enabled to use any external storage compatible with S3 protocol as an external storage for uploaded images and files. For this, a new setting allowing to specify the entry point to the external storage has been added to the script settings. This way you can use various services, such as Digital Ocean and many others.
13. Publicly available files can now be uploaded via DataLife Engine to a server or an external storage. The difference between public and other files uploaded through DLE is that public files are uploaded to a special public_files folder and can be accessed and downloaded via direct link without using the [attachment=....] tag. The user can download public files directly from the server using just a browser without DLE or other scripts. The flexible user group settings allow to select users who are allowed to upload public files to the server, and users who are not allowed to do so. The user can also select from two upload options for a file: upload it as a public file or upload it as a common type file available only for DLE download.
14. For additional Image or Gallery fields, a new option Use Open Graph protocol for the image has been added. This way you can specify directly which field will be used to get the image link when generating metatags. If not specified, the image will be generated automatically based on all fields, as before. If multiple fields have this option enabled, the first filled field used in the post will be chosen.
15. For additional Uploaded File fields, a new feature has been added, allowing to define whether an uploaded file is public or not. For a public file, a direct download URL link will be used, the file will be uploaded to a folder. For a non-public file, as usual, the tag [attachment=...] will be used.
16. For the uploaded image shared folder, we have added the support of smaller and medium size image copies. To use this new feature, you can create subfolders thumbs and/or medium in the folder with the original image and put there resized images with the same file name.
17. For additional post fields we have added a new setting Allow adding the selected field tag to a post's text. If enabled, the field display tag can be used not only in templates, but also directly in posts written in the admin panel. This way you can add the field's content not only to a specific place in the template, but to anywhere in the post.
18. Support of AVIF image upload has been added. To use this format, PHP version 8.1 or later with a current version of GD2 library is required, or Imagick with AVIF files support.
19. HEIF image upload support has been added. To use this format, PHP version 8.1 or later with a current version of GD2 library is required, or Imagick with HEIF files support.
20. We have added the support of uploading and selecting BMP images for additional Image or Gallery fields. Such images now can also be added directly to the visual editor by dragging and dropping.
21. New feature for working with external storage has been added. The users can upload files to the storage all by themselves and select the files in the upload manager. Before users could select only files from local storage, now they can use external storage as well. This update is useful when working with large files and your PHP interpreter has server limitations.
22. A new feature for image and file upload manager has been added. Now it automatically displays full names of uploaded images and files when pointing the cursor over the file's name. For images, their full name without abbreviations will be displayed, as well as a prefix (if there is any), while files' IDs will also be displayed. The new feature allows quick identification of uploaded files if long or same file names are used.
23. A new feature for image and file upload manager has been added, allowing to not just paste, but to copy an image or file link to the browser clipboard. The update is useful when you need not to add a file to a post, but to just copy it for pasting into another field, for example, an additional field.
24. For post output templates (shortstory.tpl and fullstory.tpl) for additional Image fields, a new [xfvalue_image_description_X] tag has been introduced. This tag displays the description of an uploaded image, where “x” is the additional field's name. This way you can create a personal style of an uploaded image together with other tags.
25. For post output templates (shortstory.tpl and fullstory.tpl) for additional Gallery fields, the following new tags gave been introduced: [xfvalue_X image-url="Nr"] displays only URL of an image selected from the gallery, [xfvalue_X image-thumb-url="Nr"] displays only thumbnail URL of a selected image from the gallery, [xfvalue_X image-description="Nr"] displays only the description of a selected image from the gallery. Where "X" is the name of the additional field, and "Nr" is the number of the image in the gallery. For example, using a [xfvalue_test image-description="2"] will display the description of image No. 2 uploaded to the additional field named test. This way you can create a fully customized and personalized image gallery design for your website.
26. We have added the possibility for users to put audio files in comments. Go to the group settings to enable or disable such content, as well as to enable or disable embedding video files.
27. Support of new HTML tags in posts has been added: "svg", "path", "symbol", "use". Now you can add vector images to posts, for example, icons, etc.
28. For the website visitor complaint system, a text size limit of maximum 2000 symbols has been added. This limit has been added to avoid too much content on the website administrator's complaint viewing page. If a complaint text exceeds the limit, the user will get a notification to make the text shorter.
29. On the website admin panel, we have added protection systems to prevent the addition of the same posts several times. These protection systems activate only when a user either clicks twice on the post button in a browser (for example, when the Internet connection is slow) or when a user accidentally confirms the refreshing of a page after sending it in a browser. As a result, the same data are sent to the server more than once and posts may be duplicated.
30. We have added protection systems to prevent sending the same personal message several times on the website. These protection systems are activated either when a user clicks twice on the Send button (for example, when the Internet connection is slow) or when the user accidentally confirms the refreshing of a page after sending in a browser. As a result, the same data are sent to the server more than once and messages are duplicated.
31. We have changed and improved the display of selected content when users send syntax error complaints from the website. Now the content which is contained in the source code tags or which contains quotation marks or other HTML elements is correctly displayed when a website administrator reviews a complaint.
32. We have added auto-hiding of attached social network account links if the user has already attached this social network to his profile.
33. For user profile template (userinfo.tpl), we have added support of the following tags: [attached-vk] text [/attached-vk], [attached-odnoklassniki] text [/attached-odnoklassniki], [attached-facebook] text [/attached-facebook], [attached-google] text [/attached-google], [attached-mailru] text [/attached-mailru], [attached-yandex] text [/attached-yandex]. The text between the tags will be displayed if a user has previously attached these social networks to the account. These tags are useful for creating personal blocks in a template and for detaching social network accounts.
34. For user profile template (userinfo.tpl), we have added support of the following tags: [detach-vk] text [/detach-vk], [detach-odnoklassniki] text [/detach-odnoklassniki], [detach-facebook] text [/detach-facebook], [detach-google] text [/detach-google], [detach-mailru] text [/detach-mailru], [detach-yandex] text [/detach-yandex]. The text between the tags will be displayed as a link to detach the user's account from the selected social network if the user's account is attached to it. These tags are useful for creating personal links in a template and for detaching social network accounts.
35. We have added support of RSS post output based on the main feed of yoursite.com/rss.xml, in case the post output is not used for your website's main page, but a static page named main is selected in the script settings.
36. In TinyMCE editor, it is now possible to use the Caption title for images added to the post.
37. Now there is a limit for adding to bookmarks those posts that are still waiting for the moderator's approval.
38. We have added the auto HTML code validity check when adding video, audio and media content using BB tags, such as [vidеo=...], [аudio=...] and [mеdia=...]. If these tags are placed in "p" HTML tags, the tag will be automatically converted into a "div" tag, if content generated by BB tags also includes "div" tags. Since "div" block tags cannot be placed inside "p" tags, according to HTML standards. It allows a posted text to successfully pass validity checks, while the selected format will also be saved correctly.
39. The watermarking system has been improved for watermarks of the text type when using a GD2 library on older PHP versions. Memory consumption for using this type of watermarks has also been reduced.
40. We have improved algorithms of typographical processing of the text and fixed some related issues.
41. We have improved algorithms of adding uploaded images and files to post texts when using the BBCODES editor. If many files without any images are added at once, tags will be inserted into one line divided by spaces, and text-aligning tags will not be included.
42. The inner JS function ShowLoading that displays info on loading AJAX content has got full support and now can be used both with animated icons and with sending text messages. This update is useful mostly for plugin developers who want to add their content to this function. You can also place this pop-up window wherever you want. For this purpose, two additional parameters have been added: X-axis shift and Y-axis shift. X-axis shift values are "left", "right" and "center", Y-axis shift values are "top", "bottom", "center". For example, using a ShowLoading("Loading content", "right", 'top');function shows a notification on the top right. The new parameters are additional and optional, the notification is shown in the center by default.
43. We have terminated the support of BB tags for adding flash videos to posts' texts because this outdated technology is no longer supported by browsers.
44. Changes have been made to the minimum comment length control. If a text is less than the minimum comment length but the comment contains media content, such as video, audio or embedded content from other sources, and this type of content is allowed, such embedded content will also count. These allow users to insert videos to their comments without adding any additional text.
45. We have updated the TinyMCE visual editor to the current version.
46. The inbound text DLE (HTML Purifier) parser has been updated to the current version.
47. Support of PHP 8.1.x new series has been added.
48. We have fixed the issue where in some cases after adding or editing comments on the website, the video player could not be initialised automatically if the comment contained a video.
49. We have fixed the issue where mass actions with static pages result in returning to the news list instead of returning to the static page list.
50. We have fixed the issue of links to uploaded audio and video files not being inserted correctly when using external storages for files uploaded via DataLife Engine.
51. Fixed the language issue with selecting a template from the template editing section on the admin panel, where even after selecting another template, the language setting from the previous template was applied to another template.
52. We have fixed the issue with failed re-authorisation in the admin panel if an inactivity timeout was enabled in the admin panel and e-mail authorization was enabled instead of login authorization.
53. We have fixed the issue where an {%unsubscribe%} tag in e-mails from the website generated an invalid link to the user profile if CNC support was disabled.
54. We have fixed the issue of cashing not working properly on some servers when using PHP Memcache library.
55. We have fixed the issue of not being able to set pasting a medium size image copy as default in some cases when a smaller copy is missing.
56. We have fixed the issue with an invalid value of {category-url} template tag, when CNC is disabled in the script settings and the post has already been published in multiple categories.
57. Some minor script errors detected and reported earlier have been fixed.
The following changes were prepared and implemented:
1. Added a completely new control systemfiles and images uploaded to the server. As a result, support for external storages was added for images and files uploaded to the site. In the script settings in the admin panel, you can specify where the downloaded files will be saved. You can save files locally, within your server, or choose an external FTP or SFTP server. And also cloud services are available for selection, such as Amazon S3 and Yandex Cloud. The new system for storing and managing uploaded files is built on the unified file system Flysystem 2.0, thanks to which you can easily add support for your own external storage through the plug-in system, without having to edit many DataLife Engine files. By adding new adapters, DataLife Engine will be able to automatically use it everywhere for its work.
2. The manager for downloading images and files for publications has been completely redesigned. The new manager provides a more comfortable viewing of uploaded images, the preview sizes have been increased, and the selection of files for insertion is more comfortable. It has become much easier to delete the desired file or image. Reopening the manager is carried out instantly, because it is loaded onto the page once and saves its state, and all actions are performed using AJAX technology. The options you have selected for downloading images will persist as long as you work with the publication and will not be reset every time you open the image download manager.
3. For the image download manager added the ability to preview full images directly in the download manager.
4. The shared folder, which was used in the manager of uploading images for publications, has been moved to a separate " shared " folder located in / uploads / , thus shared images are now located in a separate folder. Also, in addition, in this shared folder, you can create your own subfolders of any nesting, and directly in the download manager, go to these folders and insert images into publications. Thus, you can conveniently create and arrange your library of shared images.
5. In the admin panel, in the uploaded images management section, added the ability to switch which storage you want to manage. You can upload images of your choice to both local and external storage.
6. In the admin panel, in the section for managing uploaded images, added the ability to create and delete folders and subfolders to them. Thus, you can organize the structure of your images directly in the DataLife Engine administration panel, without having to go to your file storage via FTP or other means.
7. In the script settings in the admin panel, added the ability to enable or disable the uploading of images for publications to external storage. Thus, you can distribute the download of images for this or that content to different storage locations. And not all save images for publications to external storage if it is enabled.
8. Added the ability to enable or disable the loading of images for comments to external storage in the script settings in the admin panel . Thus, you can enable uploading to external storage for images for news, and disable for images for comments. And not all save images for comments to external storage if it is enabled.
9. Added the ability to enable or disable loading images to static pages to external storage in the script settings in the admin panel . Thus, you can enable uploading to external storage for images for news, and disable for images for static pages. And not all save images for static pages to external storage if it is enabled.
10. Added the ability to enable or disable the upload of files to be downloaded to external storage in the script settings in the admin panel . Thus, you can enable uploading to external storage for images, and disable for other files. And not all save files for download to external storage if it is enabled.
11. Added the ability to enable or disable the loading of user avatars to external storage in the script settings in the admin panel . Thus, you can enable uploading to external storage for images, and disable user avatars, or vice versa.
12. When downloading files uploaded to the server through the DataLife Engine files, added automatic detection of MIME file types for all file types. This allows you to ensure correct downloading and opening of various files on different types of devices, and as a result, the correct response of devices to the file types it supports.
13. Added support for PHP Imagick library for processing uploaded images to the server. You can choose in the script settings in the admin panel that you want to use Imagick or GD2, or let DataLife Engine choose automatically. There are few differences between GD2 and Imagick, but Imagick allows you to perform some operations on images faster and create better reduced copies, and also consumes less memory when processing large images.
14. Added the ability to automatically transcode all images uploaded to the server into WebP format . This feature is enabled and disabled in the script settings in the admin panel. When this setting is enabled, all images uploaded to the server, regardless of their format and extension, will be automatically converted to WebP image format . This format is progressive and allows you to create higher quality images at a smaller size. However, displaying images in this format requires users to have a modern browser.
15. Added support for loading new "BMP" image format . At the same time, images in this format will be automatically converted to JPG format to reduce the file size and speed up loading of site pages.
16. When uploading images to the server, added automatic correction of the image extension if the extension of the uploaded file does not match its format. For example, if the picture is essentially a PNG image, and the file extension has the .jpg format, then the uploaded image will be automatically renamed to a file with the correct .png extension, and so on for all other formats.
17. When uploading images to the server and using the TinyPNG service to process images, the number of calls to the service and the use of its API has been significantly reduced. Thus, with a limited number of processed images, you can process more images on the service.
18. Added support for processing images in WebP format on the TinyPNG service . Thereby, the size of the image data can also be compressed to a minimum size without loss of quality.
19. When a user uploads avatars in their profile on the site , the correct handling of possible errors has been added, if the uploaded image contains an incorrect format or content. For example, if the content of the file is not an image, then the user will simply be shown a notification that the avatar contains an incorrect format, instead of a system error about an incorrect action, followed by an emergency stop of the site.
20. In the script settings in the admin panel, in the "Watermark overlay area" option , an additional new option has been added to specify the placement of a watermark in the center of the image.
21. Added the ability to specify in the script settings what will be used as a watermark. You can specify an image from the template, as it was before, or specify the use of your own text written in the script settings. In the same settings, you can specify the text itself, its size and color. In this case, your own text from the settings will be superimposed, without the need to create images with a watermark.
22. Added the ability to specify in the script settings the rotation angle for the watermark applied to the image. The rotation angle is applied to both the watermark image and the text if display is enabled.
23. Added the ability to specify in the script settings the degree of transparency for the watermark applied to the image. The degree of transparency is applied to both the watermark image and the text if it is displayed.
24. Consumption of the consumed RAM when processing images uploaded to the server has been significantly reduced .
25. Added support for deferred images located in hidden text spoilers in posts. Now, when you enable lazy loading of images, when you open the spoiler, the image data will also be displayed correctly.
26. Algorithms for uploading images to the server have been changed. Now, for all images uploaded to the server, a temporary UNIX prefix will no longer be added to the image name, and all names will be preserved in their original form, only the transliteration of the names will remain if they are written in Cyrillic. However, if an image with this name already exists on the server, then in order to avoid overwriting another image, a temporary prefix will be added to its name for the loaded one. Thus, DataLife Engine will preserve the original names of uploaded images as much as possible, and only if duplicate names appear, it will automatically add the necessary prefix.
27. Added automatic deletion of the old user avatar from the server if he changes the avatar, and the new one has a different image format. This saves space on the server.
28. Added the ability to display complete data from the user profile when viewing the search results for publications on the site. For output, the same template tags are used as for output of short and full publications.
29. Added the ability to display advertising materials assigned to be displayed between short news, when displaying search results for publications on the site.
30. For templates for displaying short and full news (shortstory.tpl and fullstory.tpl) added support for new tags: [has-category] text [/ has-category] which display the text enclosed in them, if the publication is in any categories. And also added support for back tags: [not-has-category] text [/ not-has-category] which display the text enclosed in them if the publication does not have any categories. Thus, you can flexibly customize the appearance of templates for publications that have categories, and for publications that do not have categories.
31. When deleting a publication from the site, as well as at the subsequent deletion of images uploaded to this publication, an automatic check is added whether the deleted image is used in the texts of other publications; if used, this image will not be deleted from the server.
32. The load on the server when viewing short publications on the site has been significantly reduced . Now, when viewing short publications, regardless of the section of the site, the total number of pages in the section is calculated only once, after which information about the number of pages in the section is cached, and when visiting other pages, or repeated visits, the information is taken from the cache, and not from the database data for each page as before. This significantly reduces the number of queries to the MySQL database.
33. The load on the server when viewing the latest comments on the site has been significantly reduced . Now the calculation of the total number of pages with comments is carried out only once, after which information about the number of pages in the section is cached, and when visiting other pages by navigation, or repeated visits to the same page, information is taken from the cache, and not from the database for each page as previously. This significantly reduces the number of queries to the MySQL database.
34. The load on the server has been redesigned and reduced if pages on the site are viewed that have no content when viewing short publications. In this case, some unnecessary queries to the MySQL server will not be executed.
35. For the visual editor TinyMCE added automatic creation of a reduced copy of the image, in case of transferring the image to the editor using the Drag & Drop method . In this case, an image and a code to enlarge the image will be inserted into the editor, if, according to the script settings, it is necessary to create reduced copies for such images.
36. In the admin panel, in the section for viewing and editing information about the user , added quick links to send a personal message to the user, as well as view all his publications and comments. Thus, when viewing the user card, you can quickly perform the above actions, without having to go to other sections of the site.
37. Changes have been made to the function "Share interesting materials" . Now, in order to specify the text from which block on the site users can share, you need to specify a class named "share-content" for this block , and if you need to exclude something inside this block, then use the "ignore-select" class... Thus, you can assign your own any block on the site where the content is located, with which users can share when selecting text. You can also assign multiple blocks where the content of the site is allowed to be shared. If you use this feature when viewing short publications, then for quality control of the displacement of publications as new ones are added, we recommend using a unique ID for blocks based on the news ID, for example, by adding id = "news- {news-id}" to the template ...
38. Removed the setting to enable and disable the function "Allow users to share interesting materials" from the script settings . Now this option is enabled and disabled automatically if the CSS class "share-content" is specified in the block template .
39. Changes have been made to the work of the main page on the siteif either a static page or a publication using the {custom ...} tag is assigned to display content on this page. Previously, the main page of the site for these settings was only a page in the browser URL which completely lacks any parameters. Now parameters that are not related to DLE will be ignored, and the assigned content will be displayed correctly, even if there are extraneous parameters in the URL. Thus, when you go to your site for various advertising companies, or with additional markers from advertising companies, the content of your site will be displayed correctly and 404 errors will not be generated. For example, when switching from Yandex Direct and other services. And in order to avoid the appearance of duplicate pages, the search engines use the system of canonical links in the code of the pages of your site.
40. The display of publications using the {content} tag , as well as the work of the script, has been redesigned in such a way that it no longer displays or uses the external content wrapper with the additional tag <div id = "dle-content"> ... </div> . This makes it easy to integrate templates with some HTML Frameworks. If you used the layout binding to this tag, then you need to make changes to the CSS layout of your template.
41. In the admin panel, in the section for editing templates , added highlighting of the edited template file in the list of files. This provides a more convenient perception of the edited file and navigation through the list of template files.
42. When saving the created plug-in to a computer , added the correct removal of special characters from the name of the plug-in, when creating the name of the downloaded file. This will produce a more accurate and high-quality transliteration of plugin names.
43. When mass assigning the current date for publications, in the publication editing section, an offset of the assigned date for each previous news is added by one second. This allows for correct indexing of the next and previous news, when displayed on the site.
44. Added a system of automatic protection against overwriting images uploaded to the server for publications in the image management section of the admin panel. If the image is already present on the server, the user will be prompted to do so and will be prompted to change the name for the uploaded image.
45. Changes have been made to the "Minimum image size for upload" setting . Now this setting applies only to images uploaded to publications on the site. And it does not apply to downloadable avatars on the site and to the image management module in the admin panel, as it was before.
46. Improved loading of JS scripts in the background in some scenarios of the site. Now, if these JS scripts were previously in the browser cache, then it will use the cached scripts, and not re-download from the server.
47. The visual editor TinyMCE was updated to the current version . New tools for working with tables have been improved and added, and a number of bugs in it have been fixed. Support for the browser context menu has been added.
48. The parser of incoming data HTML Purifier in DataLife Engine has been updated to the current version . Added support for some new HTML attributes for texts.
49. The PHPMailer library in the DataLife Engine for sending letters from the site has been updated to the current version .
50. The minimum PHP requirements have been raised to support all new features . PHP 7.2 or higher is required to work correctly.
51. Fixed a problem with incorrect rotation of advertising materials specified in the admin panel when viewing full news.
52. Fixed a problem where debug information was not displayed by the GzipOut function when using PHP 8.xx
53. Fixed a problem where in some cases a MySQL error could occur when executing tasks on the crown.
54. Minor errors in the script detected and announced earlier have been fixed.
1. Completely redesigned DataLife Engine installer. It is made simpler and more versatile. When installing, you can now independently choose in which language the installation will take place, as well as which language will be the main one for the site. Depending on the selected language, the corresponding templates will be installed in the selected language, as well as the corresponding entries in the database. The entire installation also takes place using AJAX technology in a fully automatic mode.
2. For language packs located in the / language / folder, added the ability to specify additional information about the language, which can later be used when displaying a list of languages. For example, the output of the name in the national language, for a more convenient perception of the desired language by a person. Not just the name of the folder where the language pack is located.
3. For templates located in the / templates / folder, added the ability to specify additional information about the template, which can later be used when displaying a list of templates. For example, displaying the name of the template, in the list of templates on the site, for a more convenient perception of the desired template name. Not just the name of the folder where the template is located.
4. Added Ukrainian localization of the Datalife Engine script. The Ukrainian language is now also included in the standard distribution kit, and will be supported in the future during the update.
5. Added the ability to change the language of the DataLife Engine control panel on the fly, from any page in the control panel, without the need to log out and re-enter the control panel. The admin panel user can choose any of the languages available in the system.
6. Added the ability to set the order of categories for publications , if the news is allowed to add a publication to several categories. The order of the categories will be set in the order in which the user selected them when adding or editing a publication, and not in the order in which they are sorted in the admin panel. For example, if the first category in the list is "World", and the second is "Sport", and the user first chose "Sport" and only then "World", then their sorting and display of the news will also be observed in this order.
7. Added the ability to view a thumbnail copy of an image inserted into a comment immediately after adding a comment, without having to reload the page. If a comment was added that contains a reduced copy of the original image, then viewing the enlarged copy will be available by clicking, immediately after the comment appears on the page.
8. Added the ability to view the original image from a reduced copy of images for comments, if the site has AJAX navigation or dynamic loading of comments enabled.
9. Added support for sending the Last-Modified HTTP header for all site pages displaying short publications, not just full news as before. In this case, the date of adding or editing is kept for all publications posted on the page, and the correct date of the last added or edited publication on the page is given.
10. For all pages of the site that display short publications , added support for sending the HTTP header "304 Not Modified", if a request is sent to the server from search engines. This takes into account the dates of adding or editing all publications published on the page, both using the {content} tag and {custom} tags. That will reduce the consumption of traffic on the server, and significantly speed up the indexing and re-indexing of the site by search engines.
11. Added support for displaying advertising materials that are set in the advertising management section of the admin panel for templates and publications that are displayed using custom output using the {custom ...} tag . Now you can use banner tags set in the admin panel in templates that you assign when displaying publications.
12. For custom display of publications using the {custom ...} tag , support for the new parameter banners = "yes" has been added , which enables or disables the display of advertising materials that are assigned to be displayed between publications. This parameter can have two values "yes" to enable output, and "no" to disable output. By default, if this parameter is absent in tags, the display of advertising materials between publications will be disabled.
13. The logic and principles of forming the description meta tag for the site pages displaying brief publications have been completely redesigned . Now the description specified in the script settings is used only for the main page of your site, and the description specified in the category parameters is only for the first page of the category, for all other pages, this meta tag is generated automatically, based on the content of the publications that are displayed on this page ... Thus, all pages have their own unique description meta tag, which will positively affect the SEO optimization of your site.
14 A new system for finding keys stored in the cache has been added for the Memcache caching system , which leads to more correct clearing of cache items and updating the content on the page. This is especially true for loaded projects.
15. Added the ability to select how the form of replies to comments should be displayed in the script settings , if support for tree-like comments is enabled. There are three options available for selecting "Under comment without editor", "Under comment with editor", "In pop-up window".
16. The module "Share interesting materials" has been fully integrated into the DataLife Engine language system and uses language script files to generate information. Thus, when using other languages, switching will be automatic and does not require editing files. Also, in this module, a check of checksums is added for changing the content, and if it changes, the text will not be highlighted if the checksum does not match, so that the wrong text with which the site visitor is shared is not selected.
17. The highlighting system of the source code published in the [cod] ... [/ cod] tags has been updated to the current version to the current version. In addition, it has been significantly redesigned for better and better automatic language recognition of the published code. And also support for a large number of languages and various configurations has been added. Now, high-quality highlighting is carried out not only for HTML or JS, but also for other languages and codes.
18. Reworked and improved the system of displaying the addition of publications to bookmarks and deleting them, as well as displaying information about whether the news is in the bookmarks or not. Now, regardless of whether caching is enabled or disabled on the site, a site visitor, when viewing short news, will always see relevant information, whether his publication is bookmarked or not, even if caching is enabled. In this case, the caching functions are not lost in any way and are used.
19. For typographic processing of text in editors, added the ability to exclude processing of published content in BB tags of the source code [cod] ... [/ cod] , as well as in the corresponding HTML tags that are used to publish the source code.
20. The visual editor TinyMCE has been updated to the current 5.7.x line , and it has also been significantly redesigned for more comfortable work. This editor was assigned by default when the DataLife Engine was installed on the server.
21. For the visual editor TinyMCE added the ability to upload images to the server by simply transferring image files using the "Drag and Drop" method to the editor, as well as uploading images to the server from the browser's clipboard.
22. For the visual editor TinyMCE added protection against possible accidental data loss when writing publications. For example, if, when writing a publication and not saving it, accidentally click on any link that leads to the user leaving the page, then he will be warned that the data may be lost and it will be necessary to additionally confirm the action. Also, if the browser freezes or the user still leaves the page, then in the editor he can restore the last content saved in the local storage. Autosave occurs every 20 seconds, and recovery data is stored for 10 minutes.
23. For the visual editor TinyMCE added the ability to edit uploaded or inserted images. Editing functions include features such as resizing, reorienting, mirroring, changing brightness and contrast, and more. The changed image in the editor will be automatically uploaded to the server.
24. For the visual editor TinyMCE added the ability to control through templates the visual design of the editor's content, when writing a publication or comments. To do this, at the root of your template, it is enough to place the editor.css file with the design styles you need. This innovation will be useful to ensure that the text that users write was as close as possible to the design of the content that is used in the template. Placement of this file in the template is optional, if it is absent, the standard content design will be used.
25. For the visual editors TinyMCE and Froala, used on the site for comments, the system of citing the text of comments of other users highlighted on the site has been redesigned and improved. Visual quotes are now used instead of BBCODES tags, and line breaks are added if present in the selected text.
26. Changes have been made to the system for uploading images to the server using the DataLife Engine. If the name does not contain a temporary download prefix, then it will be added to the name, and if the name already contains this prefix, then it will not be added additionally. Temporary prefixes are added to the name to avoid duplicate names of uploaded files to the server, and thereby protect other images previously uploaded to the server with the same name from being overwritten. This innovation will be useful in case of copying images from other sites to DLE or using a similar name marking system, as it avoids multiple duplication of the prefix in the image name when copying.
27. For static page output templates (static.tpl) added support for new tags: {full-link} which displays the URL for this static page, and {print-link} which displays the URL of the printable version for this page. These tags will be useful when you need your own design for links on the page, or their special output, for example, to display a QR code for mobile devices, etc.
28. The work of the crown on the site has been significantly improved. If you need to perform any heavy operations on the crown, for example, multiple deletion of a large number of users, and server resources do not allow you to complete everything at once, according to some of its limits, then the crown will be performed every two minutes until all the necessary actions will not be implemented.
29. The AJAX system for adding comments on the site has been redesigned and improved . If the combining of comments on the site is enabled in the script settings, and the user adds another comment in addition to his own, then the text of his previous comment will be updated and supplemented on the page. And if the unification is disabled, then its additional comments will be added sequentially one after another and all will be visible at once without reloading the page.
30. The AJAX system of replies to comments in case tree-like comments are enabled has been significantly redesigned and improved . The changes concerned improved positioning of the added responses, as well as the formation of the DOM structure of elements that no longer use intermediate layers and elements, which allows better adaptation to the layout of the template.
31. For micro-markup of the rating of publications, the use of a fractional value of the itemprop = "ratingValue" parameter has been added , now in this value, instead of an integer value, for example, 4, a more accurate value will be used, for example, 4.3. This will allow search engines to display a more accurate ranking scale in the search results when SERPs.
32. Changes have been made to the system for automatic deletion of users if they have not visited the site for the time specified in the settings. If automatic deletion of users is enabled in the site settings, then users will be deleted from all groups, except for the group of administrators. Previously, deletion was carried out only from the standard "Visitors" group, and other groups were not affected.
33. Improved system of data synchronization of the cache of the counter of views of publications with the data displayed on the site, preventing uncontrolled accumulation of data in the table on high-load and visited sites.
34. Improved the system of mass mailing of letters in the script control panel in the module "Mailing". The system for handling possible errors when sending letters has been redesigned. If your server did not respond correctly, or any errors or limitations occurred, then all server responses will be processed correctly. The administrator will receive a detailed response from the server, and will also be given the opportunity to continue sending messages without reloading the page. Possible freezes of sending without explaining the reasons for mass mailing of messages are excluded
35. The site search system has been redesigned and improved , if the search is carried out by keywords containing special characters. For example, quotes and other symbols. The search for these words is now more correct and relevant.
36. The display of some control panel elements on mobile devices has been optimized . The detected drawbacks of displaying some elements of the control panel pages have been fixed.
37. The DLE player has been updated to the current version , a number of optimizations and bug fixes have been carried out, and in the case of using adaptive bitrate videos on the site, the size of the player's download code has been significantly reduced, which speeds up the loading of the pages where this video is located.
38. The formation of the og: description meta tag of the Open Graph protocol has been improved when viewing full news. Now, when forming this tag, if there are text links in the text, without generating a code, then they are also deleted and not used. For example, if the link is https://site.ru in the text, then it is removed. This innovation makes it possible not to participate in the formation of the description of links, which are simply published in additional text and other fields. Which makes the description more correct and correct.
39. The system of sending E-Mail letters from the site has been improved , and a possible abnormal termination of sending letters has been prevented if the postal address of any recipient of the letter is incorrect.
40. Improved DataLife Engine automatic update system. If the automatic update fails due to an unexpected server error, the administrator will be shown full information about the error that the server returned, as well as the response that came from the server, and not just a notification that an error occurred. This information will help the site administrator to eliminate the cause of the problem.
41. Updated PHPMailer library for sending letters from the site to the current version.
42. Changes have been made to the system of displaying advertising materials assigned to be displayed "between short news". Now they will always be displayed exactly between the short news, regardless of the amount of news on the page, and will never be displayed before or after the news.
43. Changes have been made to the system of operation of the template tags [if ..] [/ if] , in case if the abbreviated output of any information is used, then the search by the specified parameters in these tags will still be performed by the full value. For example, when displaying abbreviated information on the site with the tag {short-story limit = "200"} , then when using [if short_story ~ "text"] ... [/ if] the search will be performed over the entire short description, and not only the first 200 characters.
44. Dropped support for PHP 5.xx line. PHP 5 development and support was discontinued by PHP developers several years ago. We have not made any irreversible or unsupported changes to the code that would not work on the PHP 5 line, however, this line is no longer supported. DLE testing is not performed on it. The minimum required PHP version is 7.0 or higher.
45. Dropped support for extended authorization method in the DataLife Engine control panel. This method was introduced in DLE version 5.3 and is inherently obsolete. In the current conditions and realities, he did not add any additional protection relative to the usual protection method implemented in the DLE of the current versions, and used the same main password for HTTP authorization. Users who still want to add additional protection to their admin panel can continue to use HTTP authorization, only for this they need to place their own .htpasswd file separately and register the path to it in the .htaccess. And thus make authorization independent of DLE and with your additional password.
46. Fixed a problem where the auto-suggestion system and autocomplete did not work for additional fields of the "cross-reference" type, for words that contain some special characters, for example, the ampersand "&" and a number of others.
47. An issue has been fixed where the auto-suggestion system and autocomplete for the tag cloud did not work, if words were used that contained some special characters, for example, the ampersand "&" and a number of others.
48. An issue has been fixed where some characters could be displayed incorrectly when quoting comments containing source code insertion tags using the BBCODES editor.
49. Fixed problem where the section "IP Utilities" in the admin panel did not work correctly when using PHP 8.xx line
50. Fixed a problem where the display of advertising materials with the "between publications" option did not work when using PHP 8.xx line
51. Fixed a problem where some tags worked incorrectly in the template for displaying comments (comments.tpl)
52. The problem is fixed, when the cache for RSS feeds from the site was not used and was not used.
53. Fixed problem where category selection did not work when using DLE API in third-party modules on MySQL 8.xx
54. Fixed a problem where there was a duplication of additional fields of the "cross-reference" type, during mass removal from moderation of publications that were no longer under moderation, but were previously published.
55. The problem is fixed, when the output of additional fields of publications did not work when simultaneously turning on 3 types of CNC and displaying full information from the user profile.
56. The problem has been fixed, when in the section for editing comments in the admin panel, the search keyword was reset when navigating through the pages.
57. Minor errors in the script detected and announced earlier have been fixed.
The following changes have been prepared and implemented:
1. Added a feature of displaying user profile data for post's author on the short and full post output templates (shortstory.tpl и fullstory.tpl). As the feature also requires an additional database query, it can be enabled or disabled on the script settings at the optimal performance section. Therefore the feature can be enabled if needed or disabled to improve the script performance and reduce the load on the server. To develop such a feature more than thirty new template tags were added, that contains user profile info, including additional fields data. Complete list of new tags for the templates:
Code:{profile-link} - Shows link to the post's author profile {foto} - Shows link to the post's author avatar {fullname} - Shows post's author full name [fullname] text [/fullname] - Shows text embedded into tags, if author's full name is specified on the profile [not-fullname] text [/not-fullname] - Shows text embedded into tags, if author's full name is not specified on the profile {land} - Shows author's country [land] text [/land] - Shows text embedded into tags, if country is specified on the author's profile [not-land] text [/not-land] - Shows text embedded into tags, if country is not specified on the author's profile {signature} - Shows author's signature [signature] text [/signature] - Shows text embedded into tags, if signature is specified on the author's profile [not-signature] text [/not-signature] - Shows text embedded into tags, if signature is not specified on the author's profile {user-info} - Shows post's author user info [user-info] text [/user-info] - Shows text embedded into tags, if user info is specified on the author's profile [not-user-info] text [/not-user-info] - Shows text embedded into tags, if user info is not specified on the author's profile [online] text [/online] - Shows text embedded into tags, if the post's author is online [offline] text [/offline] - Shows text embedded into tags, if the post's author is offline {mail} - Shows user E-mail [pm] Text [/pm] - Shows link with caption "Text" for sending a private message to the post's author {group} - Shows user group {registration} - Shows user registration date {lastdate} - Shows user last visit date {group-icon} - Shows user group icon {time_limit} - Shows group access expiring date for temporary groups [time_limit] text [/time_limit] - Shows text embedded into tags, if a user is a member of temporary group {comm-num} - Shows number of comments posted by user {comments-url} - Shows link to user's comments [comm-num] text [/comm-num] - Shows text embedded into tags, if a user posted comments on the site [not-comm-num] text [/not-comm-num] Shows text embedded into tags, if a user didn't post comments on the site {news} - Shows links to user's posts {rss} - Shows link to user's RSS feed {news-num} - Shows number of user's posts [news-num] text [/news-num] - Shows text embedded into tags, if a user published posts on the site [not-news-num] text [/not-news-num] - Shows text embedded into tags, if a user didn't publish posts on the site {all-pm} - Shows total number of user's private messages {favorite-count} - Shows total number of posts added to the bookmarks by user [profile_xfvalue_X] - Shows value of additional field "X" from the user profile [profile_xfgiven_X] text [/profile_xfgiven_X] - Shows text embedded into tags, if user profile has additional field "X" [profile_xfnotgiven_X] text [/profile_xfnotgiven_X] - Shows text embedded into tags, if user profile has no additional field "X" [author-group=X] text [/author-group] - Shows text embedded into tags, if post's author is a member of specified "X" user group. Group names can be separated with a comma, e.g. 1,2,3 [not-author-group=X] text [/not-author-group] - Shows text embedded into tags, if post's author is not member of specified "X" user group. Group names can be separated with a comma, e.g. 1,2,3
2. For comment output templates (comments.tpl) the support of new comparison tags was added. For example, [if field = "value"] text [/if] shows embedded text if field's value is equals to the specified value. Acceptable field names:
Code:id - Unique comment ID (numeral) post_id - Unique post ID (numeral) user_id - Unique commenter ID, if registered (numeral) date - Comment date (can be in "2020-09-01" or "10 September 2020" or "next Thursday" or "+1 day" or "next Thursday" or Unix format, if the equal sign is used then post date is rounded up to one minute) gast_name - Commenter's username (text) gast_email - Commenter's Е-mail (text) ip - Commenter's IP (text) is_register - Registered or not user (numeral 1 or 0) rating - Total comment rating (numeral) vote_num - Number of votes in comment's rating (numeral) name - Commenter's username, if registered (text) email - Commenter's E-mail, if registered (text) news_num - Number of commenter's posts, if registered (numeral) comm_num - Number of comments posted, if registered (numeral) user_group - Commenter's user group, if registered (numeral) lastdate - Commenter's last visit date (can be in "2020-09-01" or "10 September 2020" or "next Thursday" or "+1 day" or "next Thursday" or Unix format, if the equal sign is used then post date is rounded up to one minute), if registered reg_date - Commenter's registration date (can be in "2020-09-01" or "10 September 2020" or "next Thursday" or "+1 day" or "next Thursday" or Unix format, if the equal sign is used then post date is rounded up to one minute), if registered signature - Commenter's signature, if registered (text) foto - Link to commenter's avatar, if registered (text) fullname - Commenter's full name, if registered (text) land - Commenter's country, if registered (text) xfield_x - Additional field value of post where x is a name of additional field. For example, xfield_test is a value of additional field test
3. Added support of new caching via cache framework Redis. Type of cache framework (File cashing, Memcache или Redis) can be selected on the script settings. If your Redis server requires login and password to connect or password-protected, all necessary authorization data can be specified. To use this type of cache framework a Redis server and a plugin for PHP interpreter php-redis must be installed on the server.
4. Memcache cache was modified. These changes were made to prevent possible issues with auto cash-flush on the high-load projects, because in some cases info about cached keys may be deleted due to lack of cache memory to store it. As a result, caching of other data may take longer than usual.
5. For comparison tags [if field = "value"] text [/if] were added support of other template tags. For example, the following expression: [if autor = "{profile-login}"]Viewed by post's author[/if] shows the specified text, if the post is viewed by its author. This gives more options for template design.
6. To adding and editing static pages in the control panel a viewing feature was added, so a user can see the page right after it was added or modified.
7. To [mеdia=...] tag the support of more than 200 new services and sites was added. In fact, the support of all known sites and services using oEmbed to exchange data and add content to the posts was added.
8. To template main.tpl support of new tag {cloudstag} was added that shows keyword from the tag cloud, if a user is browsing site category with posts having a specific keyword from the tag cloud. The update may be useful for webmasters who want to display a selected keyword somewhere else, for example, using HTML tags h1 and etc.
9. To categories menu output template (categorymenu.tpl) a feature to show category description on the menu was added. For that purpose new post tags support was added: {description} - shows category description, [description] text [/description] - shows embedded text if description is specified, and reversed tags: [not-description] text [/not-description] - shows embedded text if description is not specified.
10. To categories menu output template (categorymenu.tpl) support of new tags were added: [not-parent] text [/not-parent] - shows embedded text if category is not a parent category and don't have any subcategories. In fact this tag is a reversed tag for [isparent] text [/isparent] tag.
11. To categories menu output template (categorymenu.tpl) added support of new tags: [is-children] text [/is-children] - shows embedded text if a category has a parent category, and support of reversed tags: [not-children] text [/not-children] - shows embedded text if a category has not parent category.
12. Additional field type "Switchbox 'Yes' or 'No'" filling on-site was modified: instead of select HTML tag used input (checkbox) tag. These ensures that a field filling on-site corresponds with field filling on the control panel.
13. To additional fields with "use as cross-link" active property the support of slash "/" symbol was added.
14. For customized comments output {customcomments ....} a new parameter newsid="1,3,5-15" was added to enter ID of posts to select comments from. The parameter can also include template tags from other templates, for example, if a full post contains {customcomments newsid="{news-id}" order="rating"} tag, it shows comments from specified post sorted by rating.
15. For customized comments output {customcomments ....} a new parameter newsidexclude="1,3,5-15" was added to enter ID of posts to exclude from comments display. For example, with tag {customcomments newsidexclude="3-10"} all comments, except from posts with ID 3-10, will be displayed.
16. For customized posts output tag {custom ....} a new parameter subcat="yes" was added. The parameter can be used with options category="list" or categoryexclude="list". The parameter indicates if posts from subcategories should also be included. The parameter can take one of the following values: subcat="yes" indicates that all posts from the category and its subcategories will be selected, subcat="only" indicates that only posts from subcategories will be selected and posts from the category won't. For example, site has only categories with ID 1, 2 and 3. 1 is a category, 2 and 3 are its subcategories. If {custom category="1" subcat="yes"} tag is used then all posts from categories 1, 2 and 3 will be selected. If tag {custom category="1" subcat="only"} is used then only posts from categories 2 and 3 will be selected. This makes the process of entering query parameters more flexible, without listing all categories in the tag. If new subcategories are added on the control panel, posts will be displayed automatically without any need to edit templates.
17. Keywords from the tag cloud now can contain a slash "/" symbol.
18. Due to Instagram being owned by Facebook, to embed their content on site one must have an application for data exchange registered on their services, so if you add content from Instagram with [mеdia=...] tag to the post, DLE will embed it using the application specified on the script settings for Facebook social network authorization. On application settings on Facebook, access to the content via oEmbed must be allowed. After that adding content from Instagram and Facebook using [mеdia=...] tag will be available. For more information about adding access rights on the Facebook application read documentation oEmbed-Endpunkt von Facebook
19. Added a feature to script settings that enable or disable NOREFERRER parameter for all external links in posts. If the setting is enabled, all external links in posts will be marked as NOREFERRER, which does not allow the browser to share with external sites the information of where the user came from.
20. Added a feature to script settings that enable or disable NOREFERRER parameter for all external links in comments. If the setting is enabled, all external links in comments are marked as NOREFERRER, which does not allow the browser to share with external sites the information of where the user came from.
21. After the load of .webm and .m3u8 files they will be auto-processed as video files and can be added to post and auto-played on site using a video player.
22. Added support of sending header "304 Not Modified" for posts, in case of getting the matching request from the search engines. If there were no changes in the post for a given period, DLE sents only short corresponding HTTP with code 304. This allows to reduce bandwidth consumption on the server and subsequently reduce the load on the server.
23. Added more detailed error information for private messages, when an error occurs. For example, if an unauthorized user goes to the private messages section, a notification will be shown, asking to sign in or register to continue. If a user follows a link from a new private message notification email and wants to read it, but is not signed in, the notification will ask to sign in to read the message.
24. Site rules now can be viewed right after being edited via control panel.
25. jQuery library was updated for the latest 3.5.x version, to use it enable jQuery 3 in script settings on the site control panel.
26. Added a feature for Froala visual editor that allows inserting various objects such as sheets, image and video lists.
27. Added Apple music widgets integration for playing music online using iframe tags. Also iframe HTML tags access rights now can be managed using allow attribute.
28. Added new symbols support to the word filter: single quotes (') and ampersand (&). Now you can enter, for example, Jeanne d'Arc or similar words.
29. Added the support of setting "Allow search engines index links posted in comments" for site WYSIWYG visual editors. Before the option was available only if BBCODES editor and BB tagged links were used in comments.
30. For plugins generated posts added the valid source code display, when [cоde] ... [/cоde] tags were used. The highlight of the source code and tags also was added to make the text easy to read.
31. Due to some changes in YouTube algorithms Oembed protocol started to generate code for small videos by default. [mеdia=...] tag logic was also changed, now if you add a YouTube video, DLE video settings will be applied and DLE video height will be calculated automatically. This ensures that video will have the right size comparing to other videos posted on site using DLE player.
32. Page meta-tags such as header, description, keywords and etc. may now contain square brackets and round brackets. Instead of being deleted symbols are converted to valid HTML code in order to be displayed correctly by the browser.
33. Changes had been made to the loaded images display logics for posts. Before the update, only images loaded to the server using the DLE script were displayed in the list and stored on the server. Now, if for some reason the image was completely deleted from the list without DLE script, it will be substituted with a placeholder informing that the image was deleted from the server. It may be useful for sites, where users can add a limited number of images per post, so if an image is missing it can be unlinked from the posts, and the limit for a maximum number of images can be preserved.
34. DLE video player was updated for the latest available version. Several issues with video player availability on various devices and browsers were fixed.
35. Posts inbound HTML code parser was updated for the latest available version. Added support of new HTML parameters attributes for HTML5 support.
36. Changes were made to comments quoting. If a user quotes comment with hidden text and has enough access rights to see hidden text, this hidden text will be included in his own comment with a quotation, including tags of the hidden text. If a user hasn't enough access rights to see hidden text, this hidden text will be excluded from his quote. Before hidden text was always excluded from quotes, even in cases when a user had enough access rights to see it.
37. Added additional check of possible mistakes committed by the site administrator on changing user groups access rights on the control panel. For example, before the administrator could accidentally grant access to all categories and restrict access to some categories at the same time. As a result, some DataLife Engine functions may not work correctly.
38. Added "$" characters support for MySQL server database usernames and passwords.
39. Added PHP 8.xx support
40. The algorithm of canonical link generation was modified for sites using both HTTP and HTTPS protocols. If a user accesses the site via HTTPS or "always use HTTPS" is specified in the settings, then a canonical link will also always be generated using HTTPS protocol, regardless of what preferred protocol was specified for the site in the script settings. Even if no preferences were specified.
41. Improved meta-tag og:description generation via Open Graph protocol for full post view. Now in cases when additional fields are involved, only text fields will be used for tag generation. It may be one text string or few text strings. All other field types such as images and files will be excluded from the tag generation.
42. Fixed an issue where post links on the control panel and site map were not working, if the post belonged to the category that was disabled on the categories settings.
43. Fixed an issue when on the navigation via control panel some active pages may not be highlighted correctly.
44. Fixed an issue with some private messages preview may not be displayed correctly on the script control panel.
45. Fixed an issue where in some cases after a static page was edited instead of the static pages list user was redirected to the list of posts.
46. Fixed an issue with user unmuting as well as linked social networks deletion for Firefox users.
47. Fixed an issue with processing categories icons output tags in the short and full post output templates, when other non-standard (shortstory.tpl и fullstory.tpl) file templates were used for category.
48. Fixed an issue with [if ..] ... [/if] tags not working correctly, if a field contains any upper-case characters.
49. Fixed an issue with tags [if ..] ... [/if] not working correctly, if a field contains multiple distinct values (e.g. posts with multiple categories), and the check was performed on the negative value with combined condition. For example, the condition [if category != "1" AND category != "2"] not 1 and not 2[/if] was not working correctly, if the post was published in more than one category.
50. Fixed an issue with tags [not-ios] ... [/not-ios] and [not-android] ... [/not-android] in cases when reversed tags were missing on the template.
51. Fixed an issue where categories were not saved correctly on posts import from RSS feeds to the site.
52. Fixed an issue with canonical link generation failure for post preview containing some additional fields, where CNC was enabled, but a user used a link with disabled CNC. It sometimes occurred, when site settings were modified and the site was indexed by search engines.
53. Previously found and reported script issues were fixed.
The following changes have been prepared and implemented:
1. We completely redesigned the uploaded image management module in the administration panel. Now you can navigate through all folders in this section, regardless of the nesting level. In addition to standard folders, you can open and manage images in self-created folders. We also added a preview of images – just click on them in full screen.
2. We added support of video with adaptive bit rate (HLS files of .m3u8 format) to the DataLife Engine video player.
3. We added support of new value comparison condition tags to templates for displaying short and full story (shortstory.tpl and fullstory.tpl). For example, the tag [if field = "value"] text [/if] will display the text enclosed in it if the field value is equal to the specified value. This tag can compare not only equality, but also make “more or less” comparisons, find entries. You can also combine different conditions in this tag, for example: [if field > "3" AND field2 < "5"] text [/if]. Full list of conditions and fields for comparison:
Code:[if field = "value"] text [/if] - shows the text if the field is equal to 'value’ parameter [if field != "value"]text[/if] - shows the text if the field is not equal to 'value’ parameter [if field > "1"] text [/if] - shows the text if the field is greater than 'value’ parameter [if field >= "2"] text [/if] - shows the text if the field is greater than or equal to 'value’ parameter [if field < "3"] text [/if] - shows the text if the field is less than 'value’ parameter [if field <= "4"] text [/if] - shows the text if the field is less than or equal to 'value’ parameter [if field ~ "value"] text [/if] - shows the text if there is word 'value’ in the field [if field !~ "value"] text [/if] - shows the text if the word 'value’ is NOT in the field
Combined use:
Code:[if field > "3" AND field2 < "5"] text [/if] shows the text if “field” field is greater than three, and field2 is less than 5 [if field > "3" OR field2 < "5"] text [/if] shows the text if “field” field is greater than three or field2 is less than 5, that is, if any of the conditions match
Nesting of tags into each other is also supported. Names for field:
Code:id - Unique ID number of the story (number) autor - Story author login (text) date - Story date (date in British format, for example, “2020-09-01” or “10 September 2020”, or “next Thursday”, or “+1 day”, or in unix format; if the equal sign is used then the story date is rounded to the minute) short_story - Short story text (text) full_story - In the short story template, this is the number of characters in the full description. The full story template contains the full text. title - Story title text (text) descr - Meta tag describing a story (text) keywords - “Keywords” meta tag (text) category - List of categories to which it belongs (array) alt_name - Title in Latin alphabet to form the page address when using the CNC. (text) comm_num - Number of comments (number) allow_comm - Comments allowed or not (number, 1 or 0) allow_main - Story posted on the main page or not (number, 1 or 0) approve - Story posted on the website or under moderation (number, 1 or 0) fixed - Story fixed or not (number, 1 or 0) symbol - Symbol code (text) tags - List of tags from the tag list for the tag cloud (array) news_read - Number of views (number) allow_rate - Story rating allowed or not (number, 1 or 0) rating - Story rating, total sum of all values (number) vote_num - Number of people who voted in the rating (number) votes - Voting allowed in a story (number, 1 or 0) view_edit - Display the reason for editing or not (number, 1 or 0) disable_index - Web indexing allowed or not (number, 1 or 0) editdate - Story edit date (date in British format, for example, “2020-09-01” or “10 September 2020”, or “next Thursday”, or “+1 day”, or in unix format; if the equal sign is used then the date is rounded to the minute) editor - Login of the last editor of the post (text) reason - Reason for editing a story (text) user_id - Post author ID (number) xfield_x - Value of the additional field in a post, where x is a name of the additional field. For example, xfield_test value of the additional “test” field
4. We added the option to temporarily automatically block an account in the website's administration panel when it is inactive. You can specify a time-out in minutes in the script settings, after which, if the user did not do anything in the browser in the administration panel, his/her session will be temporarily suspended until the password is entered. In this case, a user will see a notification and if he continues to do nothing, the session will be suspended. This innovation will be useful for providing additional security, if a user temporarily leaves his computer with an open administration panel tab. To resume the session, it is enough to enter a password without having to enter a login.
5. We added the option to link any available social network account to an account on the website. Website user can link one or several networks to his/her account, and use them in the future to log into his/her own account on the website. In order to link a social network to his/her account, the user must log in on the website, go to his/her profile and make the link there. In this case, you can use any and all accounts on a social network, there are no match requirements, for example, concerning e-mail addresses. To link social networks in the user profile template, the same tags as in the login.tpl template are used for logging in via social networks: {vk_url}, {odnoklassniki_url}, {facebook_url}, {google_url}, {mailru_url}, {yandex_url}
6. We added the option to unlink any of the social networks from the account on the website. Even if it was originally used for the initial login to the website and the first registration. To do this, we added support of the {social-list} tag to the user profile display template, which displays a list of linked social networks and links to disconnect them from this account.
7. In the category settings of the script administration panel, we added the option to assign each category its own rating type for posts. Now each category can have its own type of rating, and not just the common one for the entire website.
8. In the post editing section of the administration panel, we added the option to recount the number of comments for a post. You can recount comments not only for all posts, which is a very long and resource-intensive process, but also recount comments only for a specific post. This function will be useful if you work in the comment database bypassing the DLE, for example, import of information into the database, deleting or incorrect work of third-party plug-ins.
9. In the post edit section of the administration panel, we added the option to recount comments for mass actions for selected posts. Thus, you can recount all comments in one click, only for selected posts.
10. In the post edit section of the administration panel, we added the option to delete all for mass actions for selected posts. Thus, you can delete all comments for selected posts in one click.
11. If any additional field is mandatory, for adding or editing posts we added information display about which field is empty and must be filled in. Previously, a general error indicating an empty mandatory field was displayed, and users had to find which particular field is mandatory on their own.
12. We added the option to load icons for categories directly from the DataLife Engine administration panel. You can load icons in the category management section when adding or editing a category.
13. For the post display templates, as well as for the category menu display template, we added support of new tags: [category-icon] text [/category-icon] show text enclosed in them, if in the category settings an icon was set for the category where the post is located. We also added support of opposite tags: [not-category-icon] text [/not-category-icon] which show text, if no icon is set for the category where the post is located. Thus, you can create the design of your templates more flexibly, depending on whether the category has an icon or not.
14. For the category menu display template, we added a link to the default icon, if there is no link to the category icon for the selected category. Previously, an empty value was displayed as an icon display tag, if an icon was not set in the category settings.
15. We added the option to use the @ and ~ symbols in website search , which served as auxiliary symbols when used for full-text search on tables working with InnoDB.
16. We added support of the Brotli algorithm based data compression for JS, CSS and HTML generated by the DataLife Engine. This method is more efficient and faster than regular zip data compression. To use this compression algorithm, the server must have the appropriate server extensions for PHP. If DLE determines that your server supports this algorithm, it will be used automatically, and if not, then compression will be carried out with available means, for example, zip compression.
17. We added the option to upload and delete images for users who have the right to post stories only after moderation, and at the same time they are allowed to edit posts. For this purpose, changes were made to the image uploading procedure – if the user takes actions to upload or delete images or files, the story is automatically sent back to undergo moderation.
18. We added the option to specify the delimiter character for keywords assigned to the tag cloud in the script settings in the administration panel when they are displayed in posts on the website.
19. We added the option to use the HTML code for category display delimiters and for the breadcrumbs module when they are specified in the script settings. For instance, you can set “</span><span class=”test”>” to create a more flexible and diverse formatting for your template.
20. We added support of lazy loading for Youtube videos posted using the [media = ...] tag, as well as any other content posted using the HTML iframe tag. If you enable lazy loading of images in the script settings, this lazy loading will also be used for the above content. This will also further speed up the loading of your website pages, because the required content will be loaded into the browser only as the user scrolls the page.
21. We added support of lazy loading for images posted in the text of user comments. Previously, lazy loading of images was available only for stories.
22. We also added the account of restrictions in the file upload window appearing when displaying information about the restrictions on the size and volume of uploaded data set in the server settings. For example, if in the script settings for the user it is allowed to upload a file of 5 megabytes in size, and the server settings do not allow uploading more than 2 megabytes, then during upload it will also be indicated that the maximum size is 2 megabytes. This allows you to immediately avoid confusion if there is a discrepancy between the settings of the script and the server.
23. We also added display of the number of files that can be uploaded by the user to the image and files uploading module, if there is a limit on their number in the settings.
24. We added the option to search for posts not allowed for web indexing for advanced search of posts in the administration panel. Thus, you can quickly find posts where you need to change this option.
25. We added the option to search for posts not allowed for on-site search for advanced search of posts in the administration panel. Thus, you can quickly find posts where you need to change this option.
26. We made changes to the behaviour of counting the number of stories for the category menu. Previously, the counting was carried out on the basis of the global settings of whether or not to display stories belonging to subcategories. Now the count is carried out based on the settings assigned individually for each category.
27. We added support of viber://, tg://, skype://, market:// protocols fo links posted on the website. These protocols allow you to open website based links in applications installed on the phone, such as Viber, Telegram, Skype and Android Market.
28. We added compatibility of database transfer from a later version to an older version for the database backup module. For example, the website was originally created on MySQL 8.0 and is transferred to another server where MySQL 5.7 is installed. In this case, the database backup will be created in a format compatible with MySQL 5.7.
29. For instances when the page contains several players with video and audio, we added automatic stop for files played if the user plays video or audio from other players on this page.
30. We made changes to the category menu formation system. If viewing of any categories is not allowed in group settings, and viewing of short stories from these categories is also prohibited, these categories will also be automatically excluded from the display in the menu for this group of users.
31. We updated the DLE video player to the current version, and fixed a number of small bugs and improved video playback on mobile devices.
32. We also added search and replacement in story headlines to the “Search and Replace” module in the administration panel, if search by stories and headlines of static pages is set, as well as search and replacement on static pages.
33. We added automatic verification of logins by keywords specified in the “Word filter” module in the administration panel in the process of user registration on the website. If the filter matches, the user will be denied registration. This feature will be useful if you set a filter for obscene words, there is no need to additionally fill in the names prohibited for registration in the filters intended for registration.
34. We added automatic removal of value display tags of additional fields from the template, in case data for these additional fields are missing. For example, there is an additional “gallery” type field and you display its values not with a single display tag, but separately for each image using the tag [xfvalue_X image =“Nr”], and if any of the images was not uploaded, then its display tag will be automatically hidden. This innovation concerns not only the display of images, but in general the display of any additional fields and their values.
35. We added a ban on sending personal messages to users who are in a group for which the use of personal messages is not allowed. Earlier, messages could be sent, but users could read them only when this ban was lifted.
36. We added automatic saving of sorting of additional user profile fields in the administration panel. Saving is done automatically when the order is changed, you don’t need to press an additional button to save.
37. We added automatic hiding of a comment awaiting moderation in the comment managing section of the administration panel after editing and posting it on the website. Thus, the moderator can quickly move on to processing the next comment.
38. We added automatic recount of statistics in the control panel in case of editing comments awaiting moderation.
39. We made changes to the incoming data filtering system intended for on-site search, in connection with which the search for some keywords has improved.
40. We optimized sorting of additional fields for posts in the administration panel. This adds the option to perform multiple sorting or operations on fields without reloading the page in advance.
41. We improved the system for determining the used site protocol http or https preventing incorrect reading of server settings on certain configurations.
42. We improved the incorrect CNC links control system for some sections of the website and links.
43. We updated visual editors TinyMCE and Froala to the latest versions, and fixed a number of identified errors in these editors.
44. We made changes to the vote counting control system concerning post and comment rating that fixed the problem occurring when some users wanted to change their vote and could not do it.
45. We fixed the problem with generation of a link to the full story, if the category was disabled and it was the first category from the list of several categories.
46. We fixed the problem, which caused JS errors when enabling the use of native emoji and disabling the editor for comments.
47. We fixed the problem, which caused interruption of work of additional fields with the uploaded file type in case of rebuilding posts in the administration panel.
48. We fixed the problem, because of which the story options “Publish on homepage”, “Allow comments” and “Allow rating” were not removed automatically when adding or editing posts in the administration panel, if several categories simultaneously had a ban on using these options for the post.
49. We fixed the problem, which caused duplication of the List-Unsubscribe header when sending bulk emails from the website.
50. We fixed the problem, which in some cases caused posted comments to be deleted and incorrect counting of comments when working with comments awaiting moderation.
51. We fixed the problem, because of which the advanced search by comments did not work, if full-text search and comment moderation were enabled in script settings.
52. We fixed the problem, because of which the advanced search did not work, if a time period for comment search was specified.
53. We fixed the problem, because of which the description meta tag was formed incorrectly, if the story was not added or edited in the administration panel, and the content of the post was too small.
54. We also fixed minor errors in the script detected and reported earlier.
Making changes to the templates is carried out in order of priority from version to version, depending on the version with which you were updated. For example, if you were updating a DLE script from version 13.1 to version 14.0, then in this case you need to make changes one by one, first those that were between versions 13.1 and 13.2, then the changes that were between versions 13.2 and 13.3, then the changes between versions 13.3 and 14.0 etc.
The following changes have been prepared and implemented:
1. Notes have been added to the plugin system. You can add notes, reminders or instructions to each plugin in a relevant tab. You can also set whether you want to show these on the main page in the list of plugins or not. The notes themselves can either be in the HTML format or use BB tags.
2. It is now possible to set the sort order of plugins in the control panel. The sort order is done in a convenient way, by simply dragging the elements around on the Admin Panel page. The change in the sort order affects the plugin execution order, too.
3. In case of faults found in the plugin during its editing, a new tag page has been added to contain the list of such faults. This way you can easily see the faults and correct them while editing the plugin in question without leaving the page in the browser.
4. The “Headings, descriptions, meta tags” module has been expanded to offer a possibility to assign the robots meta tag to pages. Now, if needed, you can set separate indexing rules for each page or disable indexing.
5. It is now possible to change the script settings in the Admin Panel to set the minimum number of characters in a website search. Before the limit used to be fixed at 4 characters. Now administrators can set their own values making changes directly in the settings.
6. It is now possible to put in or take out each update in the RSS feed separately. To do so, when adding or editing the post in the Admin Panel, you pick a relevant option. Therefore you can be precise about which update you want to add to the RSS feed, and which not. This option is enabled for user groups that have a status which is no lower than that of the web editor-in-chief.
7. It is now possible to set it up for each publication separately whether it is permitted to use it in Yandex Turbo or not. To do so, a relevant option has been added to the Admin Panel so the choice can be made while adding or editing a publication. Also, to support the option, the rss.tpl template has got new default tags: {allow-turbo} shows “true” or “false” depending on whether the Turbo option is on or off, and [allow-turbo] text [/allow-turbo] that show the text inside if Yandex Turbo is on for the publication.
8. It is now possible to set it for each publication separately whether or not it should be used in Yandex Zen. You can control whether the option is on or off while adding or editing publications in the Admin Panel. To support the option, the rss.tpl template has got new default tags: [allow-dzen] text [/allow-dzen] that show the text in brackets if the Yandex Zen option is on for the publication.
9. As for images uploaded to go with publications, it is now possible to set a limit for the minimum size in the script settings. If an image is smaller than the pre-set minimum, it won’t be uploaded, and the user will be notified correspondingly. This way you can make sure that images added to publications comply with your requirements.
10. The additional fields of “Image” and “Image Gallery” type has got a new opportunity to specify the minimum sizes for uploaded images. If the size is smaller, images won’t be uploaded, and the user will be notified correspondingly. This way you can make sure that images added to publications comply with your requirements.
11. Images added to comments can now also be controlled in terms of their minimum size that is set in the user group settings. If the size is smaller, the image won’t be uploaded, and the user will be notified correspondingly.
12. The script settings in the Admin Panel have got a new possibility to choose which jQuery line shall be used on the website. You can either opt for line 2.xx or 3.xx. This way you can control whether you will be using the latest versions of libraries or libraries compatible with your JS plugins. If line jQuery 3.xx is used, it also goes with the latest version of the jQueryUI library.
13. The script settings in the Admin Panel have got a new possibility to set whether it is necessary to decline the dates of publications when they are posted via a user tag. If this option is on, and the publication date is introduced through the {date=date format} tag, the name of the month will be declined based on the data in the language files.
14. The breadcrumbs Microdata markup has been fully converted to the schema.org standard instead of data-vocabulary.org which is now outdated.
15. HTML support of the map and area tags has been added in text publications. These allow for the images markup by dividing them into sections with links.
16. For e-mails sent out via the Admin Panel in the Message List, the List-Unsubscribe control header has been added to make it easy and convenient for users to unsubscribe from postings directly via the mail service interface.
17. New global template tags have been added: {category-icon} displays the icon of the category viewed by the user, or news category if the full text is viewed; another added tag is {category-url} which displays the URL of the viewed category. Global template tags can be used in any template files, for example, in main.tpl. These template tags will be both useful for additional content formatting on the website pages and generating page Meta tags.
18. As for complaints reported by unregistered users, the reporting system on the website has acquired a possibility for doing so by asking them for their E-mail address so the web admin can follow up on to their complaints. Filling in E-mails is optional for visitors so the field may be left empty at their own discretion.
19. Clean URL name control has been added for publications in case the website uses type 3 clean URLs. If there has been a publication under the same URL name earlier this day, it is impossible to post another one using the same URL. The user will be offered to change the URL name for another one. This addresses the URL conflict for publications headed with the same name or URL made on the same day.
20. New global tags are supported: [ios] text [/ios] that display the text inside the tags if the user’s device operates on the iOS system by Apple; another support has been added for opposite tags: [not-ios] text [/not-ios] that display the text inside the tags if the website user’s device doesn’t operate on the iOS system. This sort of tag support doesn’t only make it possible to identify the user’s device type but also shows where it belongs by applying the relevant website formatting, for example, it can give a link to download a certain app from the Apple app store.
21. New global tags are supported: [android] text [/android] that display the text inside the tags if the user’s device operates on the Android system by Google; another support has been added for opposite tags: [not-android] text [/not-android] that display the text inside the tags if the website user’s device doesn’t operate on the Android system. This sort of tag support doesn’t only make it possible to identify the user’s device type but also shows where it belongs by applying the relevant website formatting, for example, it can give a link to download a certain app from the Google app store.
22. It is now possible to upload and edit images in the WEBP format for comments and pictures in user profiles, as well as in the image management section in the Admin Panel.
23. WEBP format is now supported for image display tags {image-x}. The same format is also supported for OpenGraph Meta tags in social networks.
24. Activities are now logged in the Admin Panel concerning activities regarding postings on the website in case the updates are published straightaway without authorization. Previously logs used to register added publications in the control panel only.
25. It is now possible to save publication parameters if it is edited by a user who is authorized to change only certain parameters. For example, excluding certain publications from a search or indexing can only be available for users that belong to groups that are no lower than editor-in-chief or admin, and if the post is edited by a journalist, those parameters are left as they were set by the website admin.
26. Lazy load of images is now supported for static pages of the website.
27. Publication headings are now displayed whenever links to the previous or next news pieces are shown. The display template has been extended to support the following tags: {prev-title} which displays the name of the previous item, and {next-title} which displays the name of the next item.
28. The < vidео > and < аudio > HTML tags have been provided with support of all HTML attributes in accordance with the HTML5 specs.
29. Quick editing of website publications has been optimized. It is now automatically set whether automatic soft wrap is required depending of the editor, and when visual editors are used, the “automatic soft wrap” option is no longer displayed or used.
30. The script Admin Panel on the main page now displays information about faults in the performance of installed plugins. It means you can quickly see that a given plugin has signaled to have faults, say, after the script has been updated to the latest version, without the need to visit the plugin control section. The main page can also be used to review the faults straightaway.
31. When queries are viewed on the website, the corresponding pop-up window has changed the display order of the queries. Now the most relevant queries come first.
32. In case publications are added to the website via a user link with references to the pre-set categories, after the publication is posted on the website and if the user wants to add another one, the “Add more” link will take them back to the publication uploading page with the same pre-set categories.
33. To enhance the custom display of publications {custom xfields="..." ...}, the handling search parameter regarding publications has been improved through additional fields xfields=”…”; this parameter can now use single inverted commas for data search, as well as a number of other symbols that were previously unavailable in the search.
34. Full support of the 7.3.x PHP line has been added.
35. Full support of the 8.0.17 MySQL has been added.
36. Changes have been made to the operation of the publication counter as per categories. When postings were previously counted, the only setting that was taken into consideration was whether or not “the news shall be displayed in subcategories”, now personal settings specified for each category in the category control section are considered as well.
37. Changes have been made to the operation of tag [xfvalue_thumb_url_X] for additional fields of the “Image” type. In case a given field hasn’t been attributed with a thumbnail, since the original image is initially smaller, this tag will display a link to the original image. It therefore eliminates cases when this tag on the publication display page displays nothing if there are no thumbnails.
38. We have improved the system to sort categories and additional fields in the Admin Panel. All changes in the sorting are automatically saved immediately after the order has been altered, so there’s no need to save the changes by pressing a separate button.
39. We have improved the formation of the og:description Meta tag of the OpenGraph protocol when the full text of the news is viewed. The tags are formed more correctly with automatic deletion of function tags, for example, tags of ad banners, etc.
40. We have improved and optimized the automatic formation of the Meta tag that describes the Description page. Some of the function tags are now filtered and double spaces have been eliminated as well.
41. We have enhanced the performance and reduced the load on the server when the page display requests are handled for categories that don’t exist on the website.
42. We have updated the TinyMCE and Floara visual editors to their latest versions without changes to the editor line. The editors no longer have previous minor bugs, but the line has remained intact with the usual functionality and interface.
43. We have fixed the issue when the images weren’t shown in the print preview if the image loading was set to be postponed in the script settings.
44. We have fixed the issue with the appearance of doubled pages, for the tag cloud and search by additional fields, when the search entry uses letters of different cases.
45. We have fixed the issue with the incorrect deletion of selected images of the news item, in case a few images were selected for deletion, PHP 7.x is now also used on the server.
46. We have fixed the issue with the occasional failures in the quick image loading in the Froala visual editor when the quick editing function was used on the website.
47. We have fixed the issue with the incorrect navigation page count in the tag cloud control section.
48. We have fixed the issue with the unavailability of inverted commas in descriptions of loaded images in case they were loaded in the visual editors immediately after their uploading to the server.
49. We have fixed the issue with the faulty operation of color schemes in the TinyMCE editor.
50. We have fixed the issue with the occasional display of news protected by passwords without any password request.
51. We have fixed the small bugs in the script found and reported earlier.