PluginProbe ʕ •ᴥ•ʔ
VikAppointments Services Booking Calendar / 1.2.21
VikAppointments Services Booking Calendar v1.2.21
1.2.21 1.2.20 trunk 1.2.17 1.2.18 1.2.19
vikappointments / libraries / adapter / changelog.md
vikappointments / libraries / adapter Last commit date
acl 3 days ago application 3 days ago cipher 3 days ago component 3 days ago config 3 days ago dashboard 3 days ago database 3 days ago date 3 days ago editor 3 days ago event 3 days ago factory 3 days ago filesystem 3 days ago form 3 days ago html 3 days ago http 3 days ago input 3 days ago language 3 days ago layout 3 days ago loader 3 days ago mail 3 days ago menu 3 days ago module 3 days ago mvc 3 days ago output 3 days ago pagination 3 days ago pathway 3 days ago payment 3 days ago plugin 3 days ago router 3 days ago rss 3 days ago session 3 days ago sms 3 days ago toolbar 3 days ago uri 3 days ago user 3 days ago usergroups 3 days ago utilities 3 days ago changelog.md 3 days ago
changelog.md
1146 lines
1 # Framework Changelog
2
3 ### 10.1.73
4
5 *Release date - 9 June 2026*
6
7 ##### CHANGE
8
9 * The `JDatabaseDriver` instance now immediately flushes the results obtained with the last query to free disk space.
10
11 ---
12
13 ### 10.1.72
14
15 *Release date - 14 April 2026*
16
17 ##### ADD
18
19 * Implemented `JUri::setPath()` method.
20
21 ##### CHANGE
22
23 * `JApplication::getRouter()` method cannot be called statically any longer.
24
25 ---
26
27 ### 10.1.71
28
29 *Release date - 27 February 2026*
30
31 ##### ADD
32
33 * Added support to custom previews for certain blocks/widgets.
34
35 ##### CHANGE
36
37 * The text form fields now support the placeholder attribute.
38 * The textarea form fields now support translatable placeholders.
39
40 ---
41
42 ### 10.1.70
43
44 *Release date - 9 February 2026*
45
46 ##### CHANGE
47
48 * In case the session is not started at `init`, the framework will try to lazy load it when requested (only if possible).
49
50 ---
51
52 ### 10.1.69
53
54 *Release date - 3 February 2026*
55
56 ##### ADD
57
58 * Implemented `JSmsDriver::setOrder()` method to support runtime tags injection.
59
60 ---
61
62 ### 10.1.68
63
64 *Release date - 15 January 2026*
65
66 ##### CHANGE
67
68 * `JObject::getProperties()` is now able to exclude all the protected and private properties.
69
70 ---
71
72 ### 10.1.67
73
74 *Release date - 15 December 2025*
75
76 ##### BUG FIXES
77
78 * Fixed a warning thrown by SimplePie, used to download RSS feeds.
79
80 ---
81
82 ### 10.1.66
83
84 *Release date - 17 September 2025*
85
86 ##### CHANGE
87
88 * `JDocument::setMetaData()` is now able to set the "robots" meta data by using the `wp_robots` filter.
89
90 ---
91
92 ### 10.1.65
93
94 *Release date - 30 July 2025*
95
96 ##### BUG FIXES
97
98 * Prevented the headers sent warning triggered by wp-cron.
99
100 ---
101
102 ### 10.1.64
103
104 *Release date - 15 July 2025*
105
106 ##### BUG FIXES
107
108 * Prevented a fatal error that could occur with the initialization of the RSS feeds though simple pie add-on.
109
110 ---
111
112 ### 10.1.63
113
114 *Release date - 9 June 2025*
115
116 ##### ADD
117
118 * Added support for off session charge in payment framework.
119
120 ##### BUG FIXES
121
122 * Improved the chosen rendering for the system dropdowns.
123 * Compatibility improvements for PHP 8.4.
124
125 ---
126
127 ### 10.1.62
128
129 *Release date - 7 May 2025*
130
131 ##### BUG FIXES
132
133 * Fixed an issue that was no longer setting the SMTP properties of a PHPMailer object.
134
135 ---
136
137 ### 10.1.61
138
139 *Release date - 3 April 2025*
140
141 ##### BUG FIXES
142
143 * Fixed an issue that was no longer updating the properties of a PHPMailer object.
144
145 ---
146
147 ### 10.1.60
148
149 *Release date - 24 February 2025*
150
151 ##### BUG FIXES
152
153 * Prevented the fatal error thrown because of a WP error returned by WPML.
154
155 ---
156
157 ### 10.1.59
158
159 *Release date - 4 December 2024*
160
161 ##### BUG FIXES
162
163 * The site widgets now always use an incremental identifier, since WordPress is no longer able to provide a unique number when publishing them as Gutenberg blocks.
164
165 ---
166
167 ### 10.1.58
168
169 *Release date - 25 July 2024*
170
171 ##### ADD
172
173 * Implemented the `JDatabaseDriver::getLastError()` method to fetch the last error caught.
174 * The `JTable` instance is now able to propagate the error message faced during the database insert/update execution.
175
176 ---
177
178 ### 10.1.57
179
180 *Release date - 12 July 2024*
181
182 ##### ADD
183
184 * Implemented framework to support remote plugins installation.
185 * Implemented Sodium cipher adapter.
186
187 ---
188
189 ### 10.1.56
190
191 *Release date - 4 June 2024*
192
193 ##### BUG FIXES
194
195 * Fixed an issue with the usage of custom HTTP request methods, such as DELETE, PUT and TRACE.
196 * Fixed minor PHP warnings within the `JHttp` class methods.
197
198 ---
199
200 ### 10.1.55
201
202 *Release date - 7 May 2024*
203
204 ##### CHANGE
205
206 * The internal router is now fully compatible with WPML.
207 * The system now loads the jQuery UI Draggable add-on from the WP resources.
208
209 ##### BUG FIXES
210
211 * Fixed a PHP warning that could occur while directly instantiating a `JModel` child without the usage of the `getInstance()` method.
212 * Improved the `JLanguage::getKnownLanguages()` method to prevent errors with third party plugins.
213
214 ---
215
216 ### 10.1.54
217
218 *Release date - 15 April 2024*
219
220 ##### CHANGE
221
222 * The `languages.site` configuration setting now uses WPML as fallback to fetch the default language of the website.
223 * The `JModel::getInstance()` method now keeps iterating the registered paths until the matching class is found.
224
225 ---
226
227 ### 10.1.53
228
229 *Release date - 28 March 2024*
230
231 ##### CHANGE
232
233 * The `JDatabase::getTableColumns()` method does not escape the table name anymore to support SQLite too.
234
235 ##### BUG FIXES
236
237 * Fixed an issue with the Input array filter, which was casting NULL values into arrays.
238 * Fixed a fatal error when using `JLayoutBase::debug()` on PHP 8 or higher.
239 * Fixed a PHP warning with `JDatabase::getTableColumns()`.
240
241 ---
242
243 ### 10.1.52
244
245 *Release date - 30 January 2024*
246
247 ##### CHANGE
248
249 * The `JModuleHelper::getModule()` method is now able to extract the settings also from a Gutenberg block.
250
251 ---
252
253 ### 10.1.51
254
255 *Release date - 23 January 2024*
256
257 ##### ADD
258
259 * Implemented `JWidget::registerBlockType()` to convert a widget into a native Gutenberg block.
260 * Implemented `JFormFieldGroupedlist` class.
261 * Added support to `JDocument::attachToHeadCustomCallback` property to override the handler used to register the assets.
262 * The system is now able to autoload the native form fields.
263
264 ##### CHANGE
265
266 * The `JFormFieldMenuItem` form field now internally caches the shortcodes to prevent duplicate queries.
267 * The `JModel::getInstance()` method is now able to resolve conflicts among different files that share the same name.
268
269 ---
270
271 ### 10.1.50
272
273 *Release date - 21 December 2023*
274
275 ##### ADD
276
277 * Implemented `JUri::setScheme()` method.
278
279 ---
280
281 ### 10.1.49
282
283 *Release date - 3 November 2023*
284
285 ##### CHANGE
286
287 * Improved the routing system to always remove the **lang** attribute from the query string.
288
289 ---
290
291 ### 10.1.48
292
293 *Release date - 11 October 2023*
294
295 ##### ADD
296
297 * Implemented `JToolbarHelper::link()` method.
298 * Implemented `JPagination::getLimitBox()` method.
299 * Implemented `JDocument::addHeadLink()` method.
300
301 ##### CHANGE
302
303 * The `JPath::clean()` method now throws an `InvalidArgumentException` in case the provided path is invalid.
304 * The `JHtmlBehavior::component()` method now excludes the colorpicker from being removed.
305 * It is now possible to create overrides for WordPress-only views.
306
307 ##### BUG FIXES
308
309 * The `JEditor::display()` method is now compatible with the interface used on Joomla (asset and author arguments).
310 * The **CodeMirror** editor is now able to properly use the `javascript` syntax.
311
312 ---
313
314 ### 10.1.47
315
316 *Release date - 4 September 2023*
317
318 ##### CHANGE
319
320 * It is now possible to manipulate the `PHPMailer` properties through the setter magic method declared by `JMail`.
321
322 ---
323
324 ### 10.1.46
325
326 *Release date - 26 July 2023*
327
328 ##### ADD
329
330 * Added support for direct charge in payment framework.
331
332 ##### CHANGE
333
334 * `JLanguage::attachHandler()` now accepts either file paths and `JLanguageHandler` instances.
335
336 ---
337
338 ### 10.1.45
339
340 *Release date - 22 May 2023*
341
342 ##### BUG FIXES
343
344 * Fixed notices and warnings with PHP 8.2.
345
346 ---
347
348 ### 10.1.44
349
350 *Release date - 4 April 2023*
351
352 ##### CHANGE
353
354 * The `JPagination` class constructor now accepts a prefix to differentiate different navigations within the same page.
355
356 ---
357
358 ### 10.1.43
359
360 *Release date - 23 February 2023*
361
362 ##### CHANGE
363
364 * The URL doesn't contain the locale key anymore in case the matching shortcode has been assigned to the same language.
365 * The `JSessionHandler::isStarted()` method now checks whether the session status is currently active.
366
367 ---
368
369 ### 10.1.42
370
371 *Release date - 30 January 2023*
372
373 ##### BUG FIXES
374
375 * Fixed a few PHP warnings that could occur in PHP 8 or higher.
376
377 ---
378
379 ### 10.1.41
380
381 *Release date - 15 November 2022*
382
383 ##### ADD
384
385 * Implemented `JLoader::registerNamespace()` method to support PSR loading.
386 * Introduced a new auto-loader to support namespaces.
387
388 ##### CHANGE
389
390 * Moved framework auto-loader anonymous function into `JLoader::setup()` method.
391 * Enhanced table fields caching system.
392
393 ##### BUG FIXES
394
395 * `JController::display()` now configures the layout with the apposite setter instead of passing it to `JView::display()`.
396 * Fixed an issue in `JView::loadTemplate()` that was not able to properly load a sub-template belonging to a specific file.
397
398 ---
399
400 ### 10.1.40
401
402 *Release date - 11 July 2022*
403
404 ##### BUG FIXES
405
406 * The application header functions now properly treat the HTTP status code.
407 * The `JHtmlFormbehavior::chosen` method does not use select2 anymore.
408
409 ---
410
411 ### 10.1.39
412
413 *Release date - 26 May 2022*
414
415 ##### ADD
416
417 * Implemented `JApplication::setClient()` method.
418 * Implemented `JUser::getAuthorisedViewLevels()` method.
419 * Introduced HTTP lookback detection to auto-terminate the PHP session.
420
421 ---
422
423 ### 10.1.38
424
425 *Release date - 24 February 2022*
426
427 ##### CHANGE
428
429 * The **lang** attribute is always removed from the query string while routing a link.
430 * It is now possible to specify the dependencies while registering a new style/script.
431
432 ##### BUG FIXES
433
434 * Fixed comparison issue between the user locale and the language assigned to a shortcode.
435 * Removed string filter from `JUri::current()`, since WP might sanitize encoded characters.
436 * Fixed errors while editing existing widgets in WordPress 5.9 or higher.
437
438 ---
439
440 ### 10.1.37
441
442 *Release date - 10 December 2021*
443
444 ##### ADD
445
446 * Implemented `JDatabase::getPrefix()` method.
447 * Implemented `JDatabase::loadRow()` method.
448 * Implemented `JDatabase::getTableList()` method.
449 * Implemented `JDatabase::getTableCreate()` method.
450
451 ##### CHANGE
452
453 * Calling an undefined method of `JDatabase` now throws an exception.
454 * Editor improvements.
455
456 ---
457
458 ### 10.1.36
459
460 *Release date - 08 November 2021*
461
462 ##### ADD
463
464 * Added support for `getSelection` and `replaceSelection` callbacks to TinyMCE editor.
465 * Added support for `getSelection` and `replaceSelection` callbacks to CodeMirror editor.
466 * Added support for `getSelection` and `replaceSelection` callbacks to None editor.
467 * Implemented `JFormFieldList::getOptions()` method for a better inheritance.
468 * Implemented `JToolbar::removeButton()` method to detach any registered button at runtime.
469
470 ##### CHANGE
471
472 * Changed the arguments received by the constructor of `JController`.
473 * The toolbar buttons now include the selected type within the `class` attribute.
474
475 ---
476
477 ### 10.1.35
478
479 *Release date - 19 October 2021*
480
481 ##### ADD
482
483 * Implemented `JTable::load()` method.
484 * Implemented `JTable::getKeyName()` method.
485 * Implemented `JModel::addTablePath()` method.
486 * Implemented `JModel::getTable()` method.
487 * Implemented `JModel::getName()` method.
488 * Implemented `JDate::toISO8601()` method.
489 * Implemented `JUri::setHost()` method.
490 * Implemented `JRegistry::toArray()` method.
491 * The `JRegistry` class now implements the `ArrayAccess` interface.
492 * Implemented `JUser::getTimezone()` method.
493 * Implemented an autoloader to include resources at runtime.
494 * Added support for "log_path" and "tmp_path" settings in `JConfig`.
495
496 ##### CHANGE
497
498 * Improved the MVC pattern for a better reusability.
499 * The `JText::plural()` method now uses a plural definition only if exists.
500 * The `JEditor::display()` and `JEditor::render()` methods now accept an additional argument with custom parameters.
501 * The "None" editor now supports "readonly" and "disabled" parameters.
502 * The "CodeMirror" editor now supports "readonly" and "syntax" parameters.
503 * The `JHtml::calendar()` method now adjusts the times to the local offset when a `JDate` instance is given as value.
504 * The `JHtml::date()` method now auto-translates the supplied format in case it is equals to an existing key.
505 * The `JRegistry` class declaration has been moved into a separate file from `JObject`.
506 * Re-added support for scripts on WP 5.8 widgets block editor.
507 * Forces a string cast into `JDatabase::quote()`, because `esc_sql()` was not able to escape objects with `__toString()` magic method.
508 * Displayed backtrace when the controller catches an exception (only with WP_DEBUG on).
509 * `JPaymentDispatcher::getSupportedDrivers()` now returns a list of names in place of full paths.
510 * Removed `JModel::getTableName()` method.
511 * Removed `JModel::getPrimaryKey()` method.
512
513 ##### BUG FIXES
514
515 * Fixed return value of `JLanguage::hasKey()` method.
516 * The methods of `JFile` and `JFolder` now properly clean the paths.
517
518 ---
519
520 ### 10.1.34
521
522 *Release date - 21 July 2021*
523
524 ##### BUG FIXES
525
526 * Fixed an issue that was displaying an empty menu item select under the widgets management.
527
528 ---
529
530 ### 10.1.33
531
532 *Release date - 11 June 2021*
533
534 ##### ADD
535
536 * Added list limit fallback when used in the front-end.
537 * Implemented methods for headers handling.
538 * Implemented `JSession::getFormTokenAction()` method.
539 * Implemented `JComponentHelper::filterText()` method.
540
541 ##### CHANGE
542
543 * The methods used to escape string attributes now use the built-in esc_attr() WP function.
544 * `JInputFilter` is now able to sanitize the strings by stripping the unsafe HTML tag/attributes.
545 * Refactored CSRF-proof token handling methods.
546 * Removed `JSession::getToken()` method.
547 * `Joomla` JS object is now initialized within the system.js file.
548
549 ##### BUG FIXES
550
551 * Fixed application client detection on WP multi-site instances.
552 * Fixed session fatal error raised by `JHtmlForm::token()`.
553 * Fixed escaping issue in `JDocument::setMetaData()`.
554 * Fixed translation issues that could occur with Polylang.
555
556 ---
557
558 ### 10.1.32
559
560 *Release date - 27 January 2021*
561
562 ##### ADD
563
564 * Added support for payment refunds.
565 * Added support for `introtext` and `fulltext` on `JTableContent`.
566
567 ##### CHANGE
568
569 * Implemented direct hooks within `JPayment` class.
570 * Hooks triggered with the event dispatcher are now refactored for WP standards.
571 * Added fallback to default.php layout in case the selected override of a widget doesn't exist anymore.
572
573 ---
574
575 ### 10.1.31
576
577 *Release date - 02 December 2020*
578
579 ##### ADD
580
581 * Implemented `JForm::getFormControl()` and `JForm::setFormControl()` methods.
582 * Implemented `JFormField::setForm()` method.
583 * Implemented `JFormField::getName()` and `JFormField::getId()` methods.
584 * The `before_display` hook now passes the instance of the view (by reference).
585 * The `after_display` hook now passes the instance of the view as argument.
586 * Implemented `JApplication::setClient()` method.
587 * Load jQuery setting is no more visible on widgets configuration.
588 * Added support for RSS framework.
589 * Added support for dashboard widgets management.
590
591 ##### CHANGE
592
593 * It is now possible to use control groups to wrap the form inputs.
594 * The system is now able to use the user locale.
595
596 ##### FIX
597
598 * HTTP requests now properly take the specified timeout.
599 * Form fields are now able to use the given client while rendering the layout.
600 * Added support for multi-site networks.
601 * Fixed issue with `JHtml::loadFile()`, which might not load the correct path in case of conflicts.
602
603 ---
604
605 ### 10.1.30
606
607 *Release date - 03 November 2020*
608
609 ##### ADD
610
611 * Implemented `JPayment::getOrder()` and `JPayment::getParams()` methods.
612 * Implemented `JController` redirect methods.
613 * Implemented `JController::registerTask()` method.
614 * Implemented `JTable` management methods.
615 * `JTable` now extends `JObject` to support the errors management.
616 * Implemented `JDatabaseQuery::selectRowNumber()` method.
617 * Created `JHtmlContentLanguage` class.
618 * Implemented `JeventDispatcher::register()` method.
619 * Added `isset` magic method to `JUser` class.
620 * Implemented SMS framework.
621 * Created `JHelperUsergroups` class.
622 * Implemented `JModuleHelper::getModule()` method.
623 * Added support for `$module` object while displaying a widget.
624 * Implemented `VikRequest::setCookie()` method.
625
626 ##### CHANGE
627
628 * `JHtmlFormbehavior::chosen` do not use anymore select2 for dropdowns rendering.
629 * `JConfig` is now able to recover the list_limit also in case of AJAX requests.
630 * `JInputCookie::set()` now supports an array of options.
631 * `JDate` doesn't force the timezone anymore. [REVERTED]
632
633 ##### FIX
634
635 * `JHtml::script()` is now able to load different scripts with the same base name.
636 * `JHtml::stylesheet()` is now able to load different files with the same base name.
637 * Fixed wrong class on `JHtml::date()`.
638 * Fixed ID notation for toolbar buttons.
639 * Fixed `JHtmlFormBehavior::choosen()` script declaration in case of select with no options.
640 * `JHtmlBootstrap::tooltip()` now appends by default the tooltip at the end of the body.
641 * `JDate` now uses the correct localized names of months.
642 * The input now contains a clean task without the controller after the execution.
643 * Fixed JS plugins usage after saving a widget.
644
645 ---
646
647 ### 10.1.29
648
649 *Release date - 15 September 2020*
650
651 ##### ADD
652
653 * Implemented further request methods on `JHttp` class.
654 * Implemented `JHtml::addIncludePath()` method.
655 * Added support for `JEvent` abstract class.
656 * `JEventDispatcher::attach()` method is now able to register the methods of a class as hooks.
657
658 ##### FIX
659
660 * Form fieldsets do not report the title in case it shouldn't be displayed.
661 * Fixed missing default value when rendering a form.
662 * The system now automatically generates an ID in case `JFormField` doesn't specify it.
663 * Added support for text domains that might include hyphens.
664 * Fixed headers when sending an HTTP request through `JHttp`.
665 * Scripts declarations are now properly loaded on AJAX requests.
666 * Fixed URL encoding while creating the query string.
667
668 ---
669
670 ### 10.1.28
671
672 *Release date - 14 May 2020*
673
674 ##### ADD
675
676 * Implemented `JDate::monthToString()` method.
677 * Implemented `JLanguage::getFirstDay()` method.
678 * Implemented `JLanguage::isRtl()` method.
679 * Added support for `vik_widget_before_dispatch_site` action.
680 * Added support for `vik_widget_after_dispatch_site` action.
681 * Added support for `vik_plugin_load_language` filter.
682
683 ##### FIX
684
685 * TinyMCE editor is now able to set/get contents even if not active.
686 * Popovers always use "body" as container.
687 * Widgets overrides are now supported also for **Windows** platforms.
688 * `JDate::format()` is now able to translate days and months.
689
690 ---
691
692 ### 10.1.27
693
694 *Release date - 20 November 2019*
695
696 ##### ADD
697
698 * Implemented `JForm::bind()` method.
699 * Added support for options and attributes in `JHtml::stylesheet()`.
700
701 ##### FIX
702
703 * `JRoute` now supports also query string parameters of type `array`.
704 * Fixed an issue that prevented to display HTML tags within popovers.
705 * View overrides are now supported also for **Windows** platforms.
706 * `JObject::get()` now returns the default value also for NULL properties.
707 * `JInputFilter::clean()` now properly unslashes escaped values from arrays.
708
709 ---
710
711 ### 10.1.26
712
713 *Release date - 25 October 2019*
714
715 ##### CHANGE
716
717 * `JVersion::getShortVersion()` now tries to extract a short version from any nightlies
718 * Added support for **joomla.version** classmap within `jimport`
719
720 ---
721
722 ### 10.1.25
723
724 *Release date - 19 September 2019*
725
726 ##### ADD
727
728 * Added support for `vik_before_include_script` filter
729 * Added support for `vik_before_include_style` filter
730
731 ---
732
733 ### 10.1.24
734
735 *Release date - 11 July 2019*
736
737 ##### ADD
738
739 * Implemented `JInput::delete()` method
740 * Added support for `allowUserRegistration` users setting
741 * Created `JModelLegacy` alias
742 * Implemented `JModel::addIncludePath()` method to search models on several directories
743 * Added support for native `UsersModelRegistration` class/model
744 * Added support for `groups` property in `JUser` class
745
746 ##### CHANGE
747
748 * Changed the overrides path for the layout files of the plugins
749 * `JLanguage` is now able to auto-detect the standard languages folder
750 * All the superglobals are now passed by reference while instantiating `JInput`
751
752 ---
753
754 ### 10.1.23
755
756 *Release date - 21 June 2019*
757
758 ##### ADD
759
760 * Created `JFilterInput` alias
761 * Added support for internal list limit (screen options)
762 * Created `JHttp` class and response adapter
763 * Implemented `JFile::exists()` method
764
765 ##### FIX
766
767 * Fixed `JDatabaseQuery::clear()` method, which was emptying all in case of unsupported statements
768 * Fixed `JDocument::setTitle()` method to use the correct WP hook
769 * Fixed `JEventDispatcher` class to support return values and referenced arguments (apply_filters_ref_array)
770
771 ---
772
773 ### 10.1.22
774
775 *Release date - 10 June 2019*
776
777 ##### ADD
778
779 * Added support for jQuery in `<head>` every time a widget is instantiated
780
781 ##### CHANGE
782
783 * `JHtmlBehavior::component()` now excludes styles and links from being removed
784
785 ##### FIX
786
787 * Fixed the way the scripts are loaded after adding a new widget
788 * `JHtml::calendar()` is now able to fetch timestamps with `string` type
789
790 ---
791
792 ### 10.1.21
793
794 *Release date - 07 June 2019*
795
796 ##### ADD
797
798 * Added support for `vik_date_default_timezone` filter
799 * `JController` displays a minified error in case of AJAX requests (exceptions component handling)
800 * `JSession::start()` adds a filter to close the session every time wp_remote_post() is called (Site Health issue)
801 * Added support for **spacer** form field
802
803 ##### CHANGE
804
805 * `JPagination` is now able to use a default layout in case it was not forced
806 * `JHtml::script()` now supports jQuery UI Slider addon
807 * Menu Item field now recovers the shortcode prefix from `modowner` property
808 * Widget language handlers can be placed also within "languages" folder
809 * Widgets now support module class suffix parameter
810 * Widgets now support a default **title** field
811 * Widgets now support Joomla JS instance
812 * Widgets now strip HTML tags from the description
813 * The `JWidget::useScript()` method now loads select2 JS plugin
814
815 ##### FIX
816
817 * Fixed **languages** configuration settings, which were returning an empty string for default locale
818
819 ---
820
821 ### 10.1.20
822
823 *Release date - 29 May 2019*
824
825 ##### ADD
826
827 * Added `JCryptCipherCrypto` and `JCryptKey` classes
828 * Added some `JDocument` methods to access HTML properties (dir, charset and lang)
829 * Implemented `JView::escape()` method
830 * Editors now support a custom id
831
832 ##### CHANGE
833
834 * Completed `JPathwaySite` implementation
835 * Changed control "id" attribute into "idfield" (@see `JForm`)
836 * `JHtml::script()` is now able to include tooltip add-on
837
838 ##### FIX
839
840 * Fixed usage of layouts, which are now compatible with widgets
841 * Fixed `JForm` to start supporting custom options
842
843 ---
844
845 ### 10.1.19
846
847 *Release date - 27 May 2019*
848
849 ##### ADD
850
851 * Added `JHtmlDate` helper class for relative dates
852 * Implemented `JDate::__toString()` magic method
853 * Implemented `JText::plural()` method for string pluralizations
854 * Added support for behavior.modal helper
855 * Bootstrap modals can be closed using ESC button (only if specified)
856 * Implemented `JMenu` class and its child for site client
857 * Implemented `JApplication::getMenu()` method
858 * `JView` now owns the document property
859 * Added `JTable` class and default children classes
860 * Implemented `JDatabase::getTableColumns()` method
861 * Added `JPathway` class and its child for site client
862 * Implemented `JApplication::getPathway()` method
863 * Added `JRouter` class and some native classes
864 * Implemented `JApplication::getRouter()` method
865
866 ##### CHANGE
867
868 * `JHtml::script()` now includes dialog add-on when jQuery UI is called
869
870 ##### FIX
871
872 * Fixed the way `JHtml::script()` generates ID, if not provided
873 * Fixed `JRoute` to start supporting external routers
874 * Fixed `JHtmlBehavior::component()` method to exclude `script` tags
875
876 ---
877
878 ### 10.1.18
879
880 *Release date - 23 May 2019*
881
882 ##### ADD
883
884 * Implemented `JFormFieldMedia`
885 * Added `JRegistry` proxy
886 * Added `JPath::find()` method
887
888 ##### CHANGE
889
890 * Changed usage of layouts
891
892 ##### FIX
893
894 * Fixed default style generated by `JHtmlBehavior::renderModal()`
895 * Fixed `JView` to consider custom layouts properly
896
897 ---
898
899 ### 10.1.17
900
901 *Release date - 21 May 2019*
902
903 ##### ADD
904
905 * Implemented `JHtmlNumber` class
906 * Added `JLayoutFile::escape()` method
907 * System editors are now accessible via javascript
908
909 ##### CHANGE
910
911 * `JHtml::script()` now supports options and attributes
912 * `JDocument::addScriptDeclaration()` doesn't check anymore if the script has been already used
913
914 ##### FIX
915
916 * Fixed `JHtml::script()` dependencies detection
917 * Fixed TinyMCE bug while accessing it via AJAX more than once
918
919 ---
920
921 ### 10.1.16
922
923 *Release date - 16 May 2019*
924
925 ##### ADD
926
927 * Implemented `JVersion` class
928 * Implemented `JHtmlFormbehavior` class
929 * Implemented `JHtmlSelect` class
930 * Implemented `JHtmlBootstrap` class
931 * Implemented `JHtmlUser` class
932 * Implemented `JHtmlAccess` class
933 * Implemented `ArrayHelper` class
934 * Added `JComponentHelper::getComponent()` method
935 * Added `JDate::dayToString()` method
936 * Added support for 2 new events
937 * `JDatabase` now converts `#__users` columns to WordPress standards
938
939 ##### FIX
940
941 * Fixed `JAccess::checkGroup()` method that didn't adjust caps in case of no asset key
942 * Fixed `JHtml::calendar()` method to start supporting timestamp and `JDate` arguments
943 * Fixed `JForm::load()` method to support [addincludepath] attributes based on Joomla paths
944 * Fixed `JMail::addRecipient()` notice
945 * Fixed usage of `JInputFiles` and `VikRequest` classes
946
947 ---
948
949 ### 10.1.15
950
951 *Release date - 07 May 2019*
952
953 ##### ADD
954
955 * Added `JApplication::getUserState()` method
956 * Added `JApplication::setUserState()` method
957 * Added `JView::getName()` method
958
959 ##### FIX
960
961 * Fixed how `JDatabase` handles the query limits
962
963 ---
964
965 ### 10.1.14
966
967 *Release date - 30 April 2019*
968
969 * Added support for javascript `JText` class
970
971 ---
972
973 ### 10.1.13
974
975 *Release date - 18 April 2019*
976
977 * Added filters to show/hide/suppress database errors
978
979 ---
980
981 ### 10.1.12
982
983 *Release date - 08 March 2019*
984
985 * Fixed `JText::sprintf()` that was always considering strings for JS purposes
986
987 ---
988
989 ### 10.1.11
990
991 *Release date - 19 February 2019*
992
993 * Added support for `JEventDispatcher` class
994
995 ---
996
997 ### 10.1.10
998
999 *Release date - 14 February 2019*
1000
1001 * Fixed `JFactory::getMailer()` method
1002
1003 ---
1004
1005 ### 10.1.9
1006
1007 *Release date - 31 January 2019*
1008
1009 * Implemented language form field
1010
1011 ---
1012
1013 ### 10.1.8
1014
1015 *Release date - 28 January 2019*
1016
1017 ##### ADD
1018
1019 * Added support for empty Itemid
1020
1021 ##### FIX
1022
1023 * Fixed router in case of no shortcodes found
1024
1025 ---
1026
1027 ### 10.1.7
1028
1029 *Release date - 14 January 2019*
1030
1031 * Added getters to `JUri` class
1032
1033 ---
1034
1035 ### 10.1.6
1036
1037 *Release date - 29 November 2018*
1038
1039 ##### ADD
1040
1041 * Added `JMail::useSmtp()` method
1042 * Added setter magic method in `JMail` class
1043
1044 ---
1045
1046 ### 10.1.5
1047
1048 *Release date - 21 November 2018*
1049
1050 ##### ADD
1051
1052 * Added `JApplication::logout()` method
1053 * Added `JDatabase::getNullDate()` method
1054
1055 ---
1056
1057 ### 10.1.4
1058
1059 *Release date - 09 November 2018*
1060
1061 ##### ADD
1062
1063 * Created `JConfig` class, used to wrap the system configuration.
1064 * Implemented `JFactory::getConfig()` method to return a `JConfig` object.
1065 * Added support for sitename setting.
1066
1067 ---
1068
1069 ### 10.1.3
1070
1071 *Release date - 03 October 2018*
1072
1073 ##### ADD
1074
1075 * Implemented `JDate::getDefaultTimezone()` method to keep and get the framework's current timezone.
1076
1077 ---
1078
1079 ### 10.1.2
1080
1081 *Release date - 15 May 2018*
1082
1083 ##### ADD
1084
1085 * Implemented `JView::_getTemplateBasePath()` method to allow the customers
1086 to create their own view overrides to avoid let them being replaced
1087 by the Wordpress updates.
1088 The overrides must be built as `[WP_UPLOAD_DIR]/[PLUGIN_NAME]/[admin|site]/[VIEW_NAME]/[LAYOUT_FILE].php`
1089
1090 ##### CHANGE
1091
1092 * Changed `JFormFieldModuleLayout::getInput()` method to scan also the overrides directory.
1093 In this way, the users can select a specific override as layout of the widget.
1094 The overrides must be built as `[WP_UPLOAD_DIR]/[PLUGIN_NAME]/modules/[MODULE_NAME]/[LAYOUT_FILE].php`.
1095
1096 ---
1097
1098 ### 10.1.1
1099
1100 *Release date - 04 May 2018*
1101
1102 ##### ADD
1103
1104 * The method `JPayment::isCaller()` has been
1105 implemented to make sure the caller is the same.
1106 * Added a new filter to change the database prefix before it is used.
1107
1108 ##### CHANGE
1109
1110 * `do_action()` functions that required multiple arguments
1111 have been replaced with `do_action_ref_array()`.
1112
1113 ##### FIX
1114
1115 * Fixed `JUser::authorise()` method to extend the validation of the capabilities.
1116
1117 ---
1118
1119 ### 10.1.0
1120
1121 *Release date - 27 April 2018*
1122
1123 ##### ADD
1124
1125 * Extendable payment gateways framework.
1126 * A lot of hooks can be used to extend/enhance the payments.
1127
1128 ---
1129
1130 ### 10.0.1
1131
1132 *Release date - 20 April 2018*
1133
1134 ##### CHANGE
1135
1136 * It is no more needed to load the language file (.mo) of the widget
1137 as all the translations are contained within the main language file.
1138
1139 ---
1140
1141 ### 10.0.0
1142
1143 *Release date - 08 April 2018*
1144
1145 * Initial framework release
1146