{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":98465828,"defaultBranch":"master","name":"hipot.framework","ownerLogin":"hipot-studio","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2017-07-26T21:05:30.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/158217516?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1501103131.0","currentOid":""},"activityList":{"items":[{"before":"e593ccfb190d9d4b1f983635080fabb6e7bf7b8c","after":"655f89b9ace733f6596b8b4d203641e25c08923b","ref":"refs/heads/master","pushedAt":"2024-05-23T21:48:37.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hipot","name":"Valery Cheban","path":"/hipot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2675569?s=80&v=4"},"commit":{"message":"Update image handling and asset management logic\n\nChanges include:\n\n- Updated the `Img` class in version 5.0 to add additional methods, properties and to refactor existing methods for image transformation.\nnew usage:\n\t// in component template:\n\tuse Hipot\\Utils\\Img as hiImg;\n\t$imgResizer = hiImg::getInstance([\n\t\t'tag' => basename(__DIR__),\n\t\t'decodeToFormat' => 'webp',\n\t\t'saveAlpha' => false\n\t]);\n\t$arResult['SEO_IMAGE'] = $imgResizer->doResize($arResult['DETAIL_PICTURE'][\"ID\"], 1000, null, hiImg::M_PROPORTIONAL, true);\n\n\t$imgResizer->setJpgQuality(75);\n\t$arResult[\"PRELOAD_IMAGE\"] = $imgResizer->doResize($arResult['DETAIL_PICTURE'][\"ID\"], 345, null, hiImg::M_PROPORTIONAL, true);\n\n\t$imgResizer->setJpgQuality(0); // set default quality\n\t$imgResizer->setTagInternal( basename(__DIR__) );\n\t$imgResizer->setDecodeToFormat('webp');\n\t$arResult[\"DETAIL_PICTURE\"] = $imgResizer->doResize($arResult['DETAIL_PICTURE'][\"ID\"], 750, null, hiImg::M_PROPORTIONAL, true);\n\n\t// old deprecated way still works, per resize need one oneResizeParams-calls\n\thiImg::oneResizeParams([\n\t\t'tag' => basename(__DIR__) . '_icon_benefits',\n\t\t'decodeToFormat' => 'webp'\n\t]);\n\thiImg::setTag( basename(__DIR__) . '_icon_benefits' );\n\t$ico['PREVIEW_PICTURE_IMG'] = hiImg::resize($ico['PREVIEW_PICTURE'], 60, 60, Img::M_FULL_S, true, static function (hiImg $me) {\n\t\t$me->getProcessEngine()->sharpen(12);\n\t});\n\n- Added lib to serialization of Closure in PHP project.\n- Updated the AssetsContainer class to include the filename in the output CSS.\n\nThis commit enhances the existing image management functionality and makes it more flexible and powerful. It improves usability and sets a foundation for further improvements in the future.","shortMessageHtmlLink":"Update image handling and asset management logic"}},{"before":"fe91b60b4f436c0c5dd8a95522c3b9d3978628f2","after":"e593ccfb190d9d4b1f983635080fabb6e7bf7b8c","ref":"refs/heads/master","pushedAt":"2024-05-22T13:02:39.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hipot","name":"Valery Cheban","path":"/hipot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2675569?s=80&v=4"},"commit":{"message":"Added new methods to BitrixEngine class\n\n- Added `getCurrentUserD0` method to retrieve the current user from the global $USER variable\n- Added `getAppD0` method to retrieve the main application object from the global $APPLICATION variable","shortMessageHtmlLink":"Added new methods to BitrixEngine class"}},{"before":"87963bc6a8330a00f31028ec55a3cdea829117df","after":"fe91b60b4f436c0c5dd8a95522c3b9d3978628f2","ref":"refs/heads/master","pushedAt":"2024-05-15T23:52:44.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hipot","name":"Valery Cheban","path":"/hipot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2675569?s=80&v=4"},"commit":{"message":"Refactor and update JavaScript code in the app\n\n- Refactored and updated JavaScript code for jQuery.center.js, lib.js and main_checker_script.js\n- Updated the plugins' versioning.\n- Replaced deprecated functions with new ones.\n- Introduced improvements to avoid memory leaks.\n- Updated $(selector).bind() to $(selector).on() and $(selector).unbind() to $(selector).off(), as bind() and unbind() have been deprecated in the newer versions of jQuery.\n- Used let and const instead of var for variable declaration.\n- Improved code readability and performance.\n- Fixed some code typos and comments.\n- Simplified some conditional statements.\n- Corrected formatting and styling for consistency.","shortMessageHtmlLink":"Refactor and update JavaScript code in the app"}},{"before":"2575f95f119037083e2a871fb49fecc520cf8ecf","after":"87963bc6a8330a00f31028ec55a3cdea829117df","ref":"refs/heads/master","pushedAt":"2024-05-15T14:56:06.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hipot","name":"Valery Cheban","path":"/hipot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2675569?s=80&v=4"},"commit":{"message":"Refactor JavaScript function documentation and logic\n\n- Rewrite function descriptions, params, and returns to align with standard practices.\n- Add ajax support for file sending and error handling in `getResultFromUrl` function.\n- Use native string trimming method in `trim` function.\n- Refactor the `imgPreloader` function to use let instead of var for variable declaration.\n- Add `downloadFile` function for client-side file downloading.","shortMessageHtmlLink":"Refactor JavaScript function documentation and logic"}},{"before":"5e28e126c2625be260d9c32ea029c37f15f3427a","after":"2575f95f119037083e2a871fb49fecc520cf8ecf","ref":"refs/heads/master","pushedAt":"2024-05-14T21:03:36.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hipot","name":"Valery Cheban","path":"/hipot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2675569?s=80&v=4"},"commit":{"message":"Add function to get payment system service by order\n\nThe function 'getPaySystemServiceByOrder' has been added to the 'Sale' class. This function retrieves the payment system service for a given order, returning these as an array. The necessary exceptions for possible errors have been provided as well. Further error handling may be necessary depending on the context in which this function is used.","shortMessageHtmlLink":"Add function to get payment system service by order"}},{"before":"10bab5d49aef82747da4c7c17f8cb9300a4a0559","after":"5e28e126c2625be260d9c32ea029c37f15f3427a","ref":"refs/heads/master","pushedAt":"2024-05-13T19:24:54.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hipot","name":"Valery Cheban","path":"/hipot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2675569?s=80&v=4"},"commit":{"message":"Abstract Iblock Elements Layer has next update.\n\n- Now is may use only generator to see props and its codes. Use - copy only GenerateSxem-namespace and iblock_layer_model.php init-script\n- If no LINK_IBLOCK_ID in property set, use base iblock class - IblockElementItem","shortMessageHtmlLink":"Abstract Iblock Elements Layer has next update."}},{"before":"6e41949cf9b0cf5bb1cc11d72b17b04b941d424b","after":"10bab5d49aef82747da4c7c17f8cb9300a4a0559","ref":"refs/heads/master","pushedAt":"2024-05-11T16:27:31.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hipot","name":"Valery Cheban","path":"/hipot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2675569?s=80&v=4"},"commit":{"message":"Abstract Iblock Elements Layer has next update.\n\nNow autocomplete is more powerful.\n\n- Add config constants: ABSTRACT_LAYER_SELECT_CHAINS_DEPTH, ABSTRACT_LAYER_ANNOTATIONS_FILE\n- Update annotation generator - now it has iblock codes (ex. when code is \"ClothesOffers\" then helper is \\__IblockElementItem_BX_LAST_ClothesOffers_3)\n- Updated several classes in the library including Types\\ObjectArItem add Container\\Traversable to iterate properties (ex. foreach $ibItem->PROPERTIES)\n- Now 'PROPERTIES'-key is Container\n\nSmall example to use library:\n\n\td(\\CFile::FormatSize(memory_get_usage(true)));\n\n\t$resultChains = hiIblockElemLinkedChains::getList(\n\t\t['ID' => 'ASC'],\n\t\t['IBLOCK_ID' => 3, '>=ID' => 232],\n\t\tfalse, ['nTopCount' => 1],\n\t\t['ID', 'NAME', 'TIMESTAMP_X', 'ACTIVE', 'PROPERTY_CML2_LINK', 'PROPERTY_CML2_LINK.PROPERTY_NEWPRODUCT']\n\t);\n\n\t// see iblock 3 properties to use in getList:\n\tforeach ($resultChains as $ibItem) {\n\t\t/* @var $ibItem \\__IblockElementItem_BX_LAST_ClothesOffers_3 */\n\n\t\t// link element params\n\t\td($ibItem->PROPERTIES->CML2_LINK->CHAIN->PROPERTIES->MANUFACTURER->NAME);\n\t\t// link element params via getList\n\t\td($ibItem->PROPERTY_CML2_LINK_PROPERTY_NEWPRODUCT_ENUM_ID);\n\t\t// file params\n\t\t$f = $ibItem->PROPERTIES->MORE_PHOTO[0]->FILE_PARAMS->SRC;\n\t\t// has functional of Container\n\t\td($ibItem->PROPERTIES->count(), $ibItem->PROPERTIES->CML2_LINK->CHAIN->toArray());\n\n\t\t// standard element fields\n\t\td($ibItem->ID . '::' . $ibItem->NAME . '::');\n\n\t\t// iterator to main good props\n\t\tforeach ($ibItem->PROPERTIES->CML2_LINK->CHAIN->PROPERTIES as $propCode => $prop) {\n\n\t\t\t$getPropValue = static function ($prop) {\n\t\t\t\tif ($prop->isFile()) {\n\t\t\t\t\t/** @var IblockElementItemPropertyValueFile $prop */\n\t\t\t\t\t$value = $prop->FILE_PARAMS->SRC;\n\t\t\t\t} else if ($prop->isLinkElem()) {\n\t\t\t\t\t/** @var IblockElementItemPropertyValueLinkElem $prop */\n\t\t\t\t\t$value = $prop->CHAIN->NAME;\n\t\t\t\t} else {\n\t\t\t\t\t$value = $prop->VALUE;\n\t\t\t\t}\n\t\t\t\treturn $value;\n\t\t\t};\n\n\t\t\t/** @var IblockElementItemPropertyValue | IblockElementItemPropertyValue[] $prop */\n\n\t\t\t// multiple props - is array of objects\n\t\t\tif (is_array($prop)) {\n\t\t\t\t$values = [];\n\t\t\t\tforeach ($prop as $propValue) {\n\t\t\t\t\t/** @var IblockElementItemPropertyValue $propValue */\n\t\t\t\t\t$values[] = $getPropValue($propValue);\n\t\t\t\t}\n\t\t\t\t$value = implode(', ', $values);\n\t\t\t} else {\n\t\t\t\t$value = $getPropValue($prop);\n\t\t\t}\n\t\t\td($propCode . ' --> ' . $value);\n\t\t}\n\t}\n\tdd(\\CFile::FormatSize(memory_get_usage(true)));","shortMessageHtmlLink":"Abstract Iblock Elements Layer has next update."}},{"before":"f0a33b7622d92786b18f9a8953566360f41cf5b7","after":"6e41949cf9b0cf5bb1cc11d72b17b04b941d424b","ref":"refs/heads/master","pushedAt":"2024-05-09T19:39:19.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hipot","name":"Valery Cheban","path":"/hipot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2675569?s=80&v=4"},"commit":{"message":"Abstract Iblock Elements Layer still alive!\n\nRefactor and clean up Hipot library classes:\n\n- Updated several classes in the library including Types\\ObjectArItem, Container, and various IbAbstractLayer types.\n- Add new types Hipot\\Types\\Collection\n- Clarified documentation and removed unnecessary comments in base types of Abstract Iblock Elements Layer.\n- Improved handling of empty and ignored fields for value assignment (performance of Abstract Iblock Elements Layer).\n- Made minor changes to ensure consistent code format.","shortMessageHtmlLink":"Abstract Iblock Elements Layer still alive!"}},{"before":"01111d96acd6f24a6ef78503b1d2c1426cb9f188","after":"f0a33b7622d92786b18f9a8953566360f41cf5b7","ref":"refs/heads/master","pushedAt":"2024-05-09T08:49:30.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hipot","name":"Valery Cheban","path":"/hipot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2675569?s=80&v=4"},"commit":{"message":"Update ReCaptcha functionality and BitrixEngine structure\n\n- Adjusted protection score limit in reCAPTCHA from 0.5 to 0.6\n- Added separate array ONLY_CHECK_BAD_TRAFIC_COUNTRIES to handle countries with bad traffic\n- Optimized sendRequestToCaptchaServer and getCountryByIp functions for better handling of user IPs\n- Enhanced the structure of BitrixEngine class by adding Request type definition in constructor\n- Changed the interval of day check from 2 to 1 in reCAPTCHA\n- Several minor optimizations and improvements in code readability.","shortMessageHtmlLink":"Update ReCaptcha functionality and BitrixEngine structure"}},{"before":"a70731b2ca81db7e7e048a605a47f09db2b5854a","after":"01111d96acd6f24a6ef78503b1d2c1426cb9f188","ref":"refs/heads/master","pushedAt":"2024-04-27T13:28:43.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hipot","name":"Valery Cheban","path":"/hipot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2675569?s=80&v=4"},"commit":{"message":"Update event handling and enhance sitemap generation\n\n- Added condition in `handlers_add.php` to disable page process events if `DISABLE_PAGE_EVENTS` is defined as true.\n- Overhauled `sitemap.php` to improve performance and optimize the sitemap generation process. Optimizations include identifying session as virtual and read-only, removing unnecessary checks, and streamlining the `MakeCombineSiteMap` function.","shortMessageHtmlLink":"Update event handling and enhance sitemap generation"}},{"before":"a426cbd8ed2e8abd6c9dadbe307e598d666ed016","after":"a70731b2ca81db7e7e048a605a47f09db2b5854a","ref":"refs/heads/master","pushedAt":"2024-04-25T18:55:15.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hipot","name":"Valery Cheban","path":"/hipot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2675569?s=80&v=4"},"commit":{"message":"Update schema generation in the 'iblock_layer_model' and optimize query in Recaptcha3\n\n- Code refactor for the 'iblock_layer_model' files adjusting the directory and filenames for schema generation in two places\nmain is /local/php_interface/hipot_annotations.php\n- Schema generation method in IblockGenerateSxemManager has been renamed and updated for better clarity\n- Updated class imports in the 'IblockGenerateSxem' files.\n- Fixed an issue in the Recaptcha3 where the method getCountryByIp was not properly handling null IP values, which might have impacted the reliability of the IP checks. The return value of getCountryByIp is also cast to string now.\n- Optimized the database query in the Recaptcha3 module for better performance.\n- Updated documentation in PhpCacher.php\n- Git ignore file sequence has been adjusted while adding '_unsorted' to the ignore list.","shortMessageHtmlLink":"Update schema generation in the 'iblock_layer_model' and optimize que…"}},{"before":"97b57ba34380f47046a3fca56c2dd042ae6c0a3a","after":"a426cbd8ed2e8abd6c9dadbe307e598d666ed016","ref":"refs/heads/master","pushedAt":"2024-04-22T16:52:46.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hipot","name":"Valery Cheban","path":"/hipot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2675569?s=80&v=4"},"commit":{"message":"Refactor code for readability and efficiency\n\nAdjusted spacing in several lines for consistency and cleaner code. Simplified the 'isEmpty()' function to return a boolean directly. This makes the code more readable and slightly more efficient by removing unnecessary if and else condition. This refactoring change was propagated across multiple files.","shortMessageHtmlLink":"Refactor code for readability and efficiency"}},{"before":"01ce6b7027f72f5e4aca3df488f14d356b8dfe37","after":"97b57ba34380f47046a3fca56c2dd042ae6c0a3a","ref":"refs/heads/master","pushedAt":"2024-04-22T16:43:15.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hipot","name":"Valery Cheban","path":"/hipot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2675569?s=80&v=4"},"commit":{"message":"Add input value change trigger in lib.js\n\nAdded a new jQuery function 'triggerValueChange' in lib.js that triggers a change event when the value of an input field changes. This is specifically designed to track changes to hidden input fields.\n- This function will help in catching any changes made to input fields, even if they are hidden.\n- A use case for this include changes in session ID values, where tracking changes can provide useful insights and control over user sessions.","shortMessageHtmlLink":"Add input value change trigger in lib.js"}},{"before":"9b9ef15f40efca5adc7e979206662685758bfc0c","after":"01ce6b7027f72f5e4aca3df488f14d356b8dfe37","ref":"refs/heads/master","pushedAt":"2024-04-22T16:41:08.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hipot","name":"Valery Cheban","path":"/hipot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2675569?s=80&v=4"},"commit":{"message":"Add input value change trigger in lib.js\n\nAdded a new jQuery function 'triggerValueChange' in lib.js that triggers a change event when the value of an input field changes. This is specifically designed to track changes to hidden input fields.\n- This function will help in catching any changes made to input fields, even if they are hidden.\n- A use case for this include changes in session ID values, where tracking changes can provide useful insights and control over user sessions.","shortMessageHtmlLink":"Add input value change trigger in lib.js"}},{"before":"d0384d4e28addd8e336d760fa090411bcdd99483","after":"9b9ef15f40efca5adc7e979206662685758bfc0c","ref":"refs/heads/master","pushedAt":"2024-04-22T11:00:09.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hipot","name":"Valery Cheban","path":"/hipot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2675569?s=80&v=4"},"commit":{"message":"Improve SQL query and list fetching logic in EO_Utils.php\n\nAdjusted the SQL query syntax and order for clarity and consistency in EO_Utils.php. Tweaked the 'offset' parameter's calculation to correctly select current and previous list items. Consolidated the initializations of `$prev`, `$next`, and `$iter` variables into a single line for cleaner code.\n- The adjusted SQL query syntax and order will result in more efficient data retrieval.\n- The change in 'offset' calculation and precise initialization of variables will ensure the accurate and efficient manipulation of list elements.","shortMessageHtmlLink":"Improve SQL query and list fetching logic in EO_Utils.php"}},{"before":"89883beb8fefae1e559b5c05fd37831f1db7a637","after":"d0384d4e28addd8e336d760fa090411bcdd99483","ref":"refs/heads/master","pushedAt":"2024-04-19T14:53:12.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hipot","name":"Valery Cheban","path":"/hipot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2675569?s=80&v=4"},"commit":{"message":"Corrected count check for 'ORDER' and 'FILTER' arrays\n\nMade code safer by adding is_countable to the conditions checking for 'ORDER' and 'FILTER' arrays in the 'iblock.menu_ext/component.php' script:\n- This prevents a potential warning if either array is not set or is not an array.\n- It ensures array_merge won't fail, as this method requires at least one array as an argument.","shortMessageHtmlLink":"Corrected count check for 'ORDER' and 'FILTER' arrays"}},{"before":"b773b09e737b90d0fef1302c0e7c988a1c40b2c2","after":"89883beb8fefae1e559b5c05fd37831f1db7a637","ref":"refs/heads/master","pushedAt":"2024-04-17T12:50:37.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hipot","name":"Valery Cheban","path":"/hipot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2675569?s=80&v=4"},"commit":{"message":"Refactor & optimize Recaptcha3.php functionality\n\nThe Recaptcha3.php class has been reorganized and refactored focusing on improving its IP and GeoIP handling. Changes include:\n- Enhanced request validation, ignoring recognized or white-listed IPs.\n- Adjusted scoring behavior based on GeoIP location.\n- Introduced more in-depth and sequenced validation checks related to IP and country.\n- Extracted sections of the class into regions for better code organization and management.\n- Implemented some minor changes to caching in .settings_extra.php.","shortMessageHtmlLink":"Refactor & optimize Recaptcha3.php functionality"}},{"before":"01358ef82c5046e9d468e868d530cafdebfb6bcf","after":"b773b09e737b90d0fef1302c0e7c988a1c40b2c2","ref":"refs/heads/master","pushedAt":"2024-04-17T09:58:29.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hipot","name":"Valery Cheban","path":"/hipot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2675569?s=80&v=4"},"commit":{"message":"Update Recaptcha service with GeoIp and ignored IPs support\n\nThe Recaptcha3 service has been updated to include support for GeoIP locations and white-listed IP addresses. It also includes country-based bypass and path-specific blocking functionalities to enhance security. This update allows for more flexibility and control over the reCAPTCHA verification process.","shortMessageHtmlLink":"Update Recaptcha service with GeoIp and ignored IPs support"}},{"before":"9d58d2e45187c2472096ef298c16564c73e665fb","after":"01358ef82c5046e9d468e868d530cafdebfb6bcf","ref":"refs/heads/master","pushedAt":"2024-04-17T09:49:25.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hipot","name":"Valery Cheban","path":"/hipot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2675569?s=80&v=4"},"commit":{"message":"Update Recaptcha service with GeoIp and ignored IPs support\n\nThe Recaptcha3 service has been updated to include support for GeoIP locations and white-listed IP addresses. It also includes country-based bypass and path-specific blocking functionalities to enhance security. This update allows for more flexibility and control over the reCAPTCHA verification process.","shortMessageHtmlLink":"Update Recaptcha service with GeoIp and ignored IPs support"}},{"before":"5290ec4be7c5b40439594eafcbb6acca1dfe5a2a","after":"9d58d2e45187c2472096ef298c16564c73e665fb","ref":"refs/heads/master","pushedAt":"2024-04-17T09:44:09.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hipot","name":"Valery Cheban","path":"/hipot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2675569?s=80&v=4"},"commit":{"message":"Update Recaptcha service with GeoIp and ignored IPs support\n\nThe Recaptcha3 service has been updated to include support for GeoIP locations and white-listed IP addresses. It also includes country-based bypass and path-specific blocking functionalities to enhance security. This update allows for more flexibility and control over the reCAPTCHA verification process.","shortMessageHtmlLink":"Update Recaptcha service with GeoIp and ignored IPs support"}},{"before":"130ea2e697c9c9b010978882201a81cc33ad0709","after":"5290ec4be7c5b40439594eafcbb6acca1dfe5a2a","ref":"refs/heads/master","pushedAt":"2024-04-16T15:44:33.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hipot","name":"Valery Cheban","path":"/hipot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2675569?s=80&v=4"},"commit":{"message":"Update Recaptcha3 and AssetsContainer classes\n\nIn Recaptcha3, indentation of the line declaring the `UF_SCORE` field has been corrected to enhance readability. The AssetsContainer class has undergone substantial changes. These include:\n\n- Removal of 'final' designator, allowing the class to be extended to concrete site ex SiteName\\AssetsContainer extends AssetsContainer.\n- Implementation of a new method for adding JS configurations named `addJsConfig`.\n- Inclusion of a new private array, `$siteJsConfigs`, to keep track of site-specific JavaScript configurations.\n- Addition of `sendJsParamsAsset` method to instantiate and send JavaScript parameters. May change in SiteName\\AssetsContainer","shortMessageHtmlLink":"Update Recaptcha3 and AssetsContainer classes"}},{"before":"2c15aedc58519d626af434183d076b6b51ebb56f","after":"130ea2e697c9c9b010978882201a81cc33ad0709","ref":"refs/heads/master","pushedAt":"2024-04-16T15:22:41.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hipot","name":"Valery Cheban","path":"/hipot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2675569?s=80&v=4"},"commit":{"message":"Add Recaptcha3 class for recaptcha handling\n\nThis commit incorporates a new Recaptcha3 class used for handling Google Recaptcha v3. The class includes methods to generate HTML code for the recaptcha widget, send requests to the Google server for token verification, and log data. Also, it possesses the ability to check if an IP address is locked based on its score and recent activity. It is placed in the Hipot\\Services namespace.","shortMessageHtmlLink":"Add Recaptcha3 class for recaptcha handling"}},{"before":"d570efb505d52a7af4efa32b7612986d2b51594b","after":"2c15aedc58519d626af434183d076b6b51ebb56f","ref":"refs/heads/master","pushedAt":"2024-04-15T14:40:42.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hipot","name":"Valery Cheban","path":"/hipot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2675569?s=80&v=4"},"commit":{"message":"Refactor Iblock.php and add CLI check to handlers_add.php\n\n- Implemented type hinting and return types in Iblock.php for better code understanding and safety during runtime.\n- Used EO_Utils to get table fields instead of UUtils::getTableFieldsFromDB in the checkExistsByNameOrCode function.\n- In handlers_add.php, added a check if the current process is run from the command line (IS_CLI).\n- Limit disabling of page process events only to Ajax requests and command line processes.","shortMessageHtmlLink":"Refactor Iblock.php and add CLI check to handlers_add.php"}},{"before":"e8cb9624eb551979325686acc6a710c709a5e980","after":"d570efb505d52a7af4efa32b7612986d2b51594b","ref":"refs/heads/master","pushedAt":"2024-04-13T18:10:57.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hipot","name":"Valery Cheban","path":"/hipot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2675569?s=80&v=4"},"commit":{"message":"Add AJAX request detection and optimization\n\nUpdated the code to detect AJAX requests more accurately and implemented optimization for these requests by turning off all page-process-handlers. These changes aim to improve overall efficiency by reducing unnecessary event triggering for AJAX requests. Updated related constants and processes accordingly.","shortMessageHtmlLink":"Add AJAX request detection and optimization"}},{"before":"3417225bf91ce425cc5746f0784315eda5fdb50d","after":"e8cb9624eb551979325686acc6a710c709a5e980","ref":"refs/heads/master","pushedAt":"2024-04-12T13:24:59.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hipot","name":"Valery Cheban","path":"/hipot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2675569?s=80&v=4"},"commit":{"message":"Add EventManager to BitrixEngine class and disable events method\n\nThe commit introduces the EventManager into the BitrixEngine class and adjusts the instances in the BitrixEngine constructor. A new method in ContextUtils class 'disableAllPageProcessEvents' has been added which allows disabling specific page process events. This function aims to improve performance on ajax scripts by disabling unnecessary processes.\n\nAdditionally, a new favicon image was introduced to the project.","shortMessageHtmlLink":"Add EventManager to BitrixEngine class and disable events method"}},{"before":"5d6655fc5bd5c0b5edd1a0082e298dcee360224d","after":"3417225bf91ce425cc5746f0784315eda5fdb50d","ref":"refs/heads/master","pushedAt":"2024-04-11T18:22:09.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hipot","name":"Valery Cheban","path":"/hipot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2675569?s=80&v=4"},"commit":{"message":"Add method to check component existence in ComponentUtils\n\nA new static method named \"isComponentExists\" has been added to the \"ComponentUtils\" trait. This method checks if a particular component exists in Bitrix CMS, and if it does, it will return true, otherwise false. It uses the initComponent function of the CBitrixComponent class for this operation.","shortMessageHtmlLink":"Add method to check component existence in ComponentUtils"}},{"before":"7a8985a5c3920caf2bb8df344b114efded76b62e","after":"5d6655fc5bd5c0b5edd1a0082e298dcee360224d","ref":"refs/heads/master","pushedAt":"2024-03-27T23:02:21.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hipot","name":"Valery Cheban","path":"/hipot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2675569?s=80&v=4"},"commit":{"message":"Modify Cache instance creation in BitrixEngine\n\nThe Cache instance creation in BitrixEngine files in two different locations is updated. This now includes an 'actual_data' option set to false, effectively putting it into a \"locking mode\". The changes enhance the capability to manage cached data in the Bitrix Engine.","shortMessageHtmlLink":"Modify Cache instance creation in BitrixEngine"}},{"before":"8e572ef226ed3028bdd6035c09a50cd7c7b1f639","after":"7a8985a5c3920caf2bb8df344b114efded76b62e","ref":"refs/heads/master","pushedAt":"2024-03-21T00:08:22.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hipot","name":"Valery Cheban","path":"/hipot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2675569?s=80&v=4"},"commit":{"message":"Add support for additional menu links and update URI utilities\n\nAdded functionality to support additional URI paths for menu items in iblock menu component. Also, updated ContextUtils by adding new functions to set and retrieve properties for the current Bitrix Engine page's URI. These changes enhance the capability to manage URLs and improve menu item selection.","shortMessageHtmlLink":"Add support for additional menu links and update URI utilities"}},{"before":"60e57d9e004ec5f261205fa2afea4d3a65df5f21","after":"8e572ef226ed3028bdd6035c09a50cd7c7b1f639","ref":"refs/heads/master","pushedAt":"2024-03-15T14:31:53.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hipot","name":"Valery Cheban","path":"/hipot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2675569?s=80&v=4"},"commit":{"message":"Update 'confirmDelete' parameter to optional in ComponentUtils\n\nAdjusted the 'confirmDelete' parameter in the 'setElementEdit' and 'setSectionEdit' functions of the ComponentUtils class to be optional. This change increases the flexibility of these utility functions and allows them to handle more varied use-cases.","shortMessageHtmlLink":"Update 'confirmDelete' parameter to optional in ComponentUtils"}},{"before":"239d89bd5d7001b37c83b7b93af1f65b3d64af90","after":"60e57d9e004ec5f261205fa2afea4d3a65df5f21","ref":"refs/heads/master","pushedAt":"2024-03-14T12:20:58.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hipot","name":"Valery Cheban","path":"/hipot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2675569?s=80&v=4"},"commit":{"message":"Refactor error handling in error.php\n\nAdjusted the application of GlobalVariableUsageInspection and handled server details in PHP 'cli' mode more efficiently. The goal is to optimize the error handling process and enhance readability of the code in error.php file.","shortMessageHtmlLink":"Refactor error handling in error.php"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEUnmPawA","startCursor":null,"endCursor":null}},"title":"Activity · hipot-studio/hipot.framework"}