6.2.5 (2025-08-14)
Contributors
Bug fixes
- css: scroll issues with width calculation of likes colorbox popup 72d37f815
6.2.4 (2025-07-25)
Contributors
- Jeroen Dalsem (4)
- Jerôme Bakker (3)
Bug fixes
- forms:
- correctly validate url input in generic entity edit handler 5f5388696
- check for files existence before checking file size 84b7e6264
- show correct help text value for input/file e80e96d8b
- users: prevent duplicate key errors when saving user sessions ab424aea5
6.2.3 (2025-07-08)
Contributors
- Jeroen Dalsem (2)
- Jerôme Bakker (1)
Bug fixes
- email: css variables not working in mail templates 5d56ca3c6
- js: colorbox negative tabindex interfering with focustrap logic d7a39e0a5
6.2.2 (2025-06-11)
Contributors
Bug fixes
- db: use correct database connection fallback when using split DB 79bbe1a14 closes #14843
- users: correctly validate duplicate email address cd684853b closes #14842
- database: correctly store falsy boolean values aac8d3848
6.2.1 (2025-05-07)
Contributors
Bug fixes
- discussions: correctly edit a discussion 657a4fb62
- pages: show all children in the sidebar menu 9153e227c
- settings: use correct plugin name in user settings save action f4b84a304
6.2.0 (2025-04-14)
Contributors
- Jerôme Bakker (18)
- Jeroen Dalsem (16)
- callpri (1)
Features
- a11y:
- dropdown and toggle menus have the aria-expanded attribute 1765376e6
- added a skip to main content link for keyboard users 53c677b39
- js: added focus trap logic on popup and lightbox elements 1d0ac8841
- garbagecollector: added plugin setting to control optimize table 90abe17e6
- css: introduced css variables for all css crush theme variables 0619fa8a3
- views: added output views for plaintext and number fields 501dc5ec2
- actions: introduced a generic action class 0b2a89d12
- composer: updated react/promise to v3.2 to support PHP 8.4 8197ad5bb closes #14767
- core:
Bug fixes
- cache: allow SRI calculations to be saved in the CacheHandler ab1a9829f
- js:
- icon cropper correctly sets cropped area after tab switch db9f8690a
- reposition dropdown menus after toggle of submenus ac0320ae5
- a11y: improved input/tags usability for screenreaders c880f314d
6.1.5 (2025-03-20)
Contributors
- Jeroen Dalsem (4)
- Jerôme Bakker (4)
Bug fixes
- plugins: fetching settings from inactive plugins returns default 364f8b354
- output: no longer add wrong alt attribute on img tags 9de170f5f
- icons: icon is decorative if no custom icon bd0c6e444
- site_notifications: added missing aria-label on checkbox 873076a5b
- views: urls get aria-label filled with title if empty text dafd35e6d
- notifications: correctly show discussions mute notifications action 72b07aa8a
6.1.4 (2025-03-05)
Contributors
Bug fixes
- blog: preview button should only create entity once 3d5ccd320
- forms: make sure html validation message is visible for tags input dc81796e7
6.1.3 (2025-02-13)
Contributors
- Jerôme Bakker (3)
- Jeroen Dalsem (2)
Bug fixes
- webservices: prevent double encoding during API exceptions 3d6537b42
- admin: correctly styled user profile fields in admin popup adc67a272
- uservalidationbyemail: set text correctly on form button 8d1891a11 closes #14783
6.1.2 (2025-01-16)
Contributors
- Jerôme Bakker (5)
- Jeroen Dalsem (3)
Bug fixes
- output: improved handling of output/url 379c02196
- breadcrumb: improved detection for link to self breadcrumb a84b70afe
- views: use a more specific label for setting a user display name 1ce253927
- cron:
- the event param 'dt' can no longer be modified by callbacks 8432e77ef
- handle unexpected files in cron log folder c226b844a
- forms: if there is no input field do not output field elements 22c3d40bd
- search: prevent double encoded search query parameter 7ef21d3e4
6.1.1 (2024-12-05)
Contributors
- Jeroen Dalsem (4)
- Jerôme Bakker (2)
Bug fixes
- notifications: only get url if possible in default body aa9282122
- db: correctly invalidate caches when changing metadata f66815cc3
6.1.0 (2024-11-20)
Contributors
- Jeroen Dalsem (50)
- Jerôme Bakker (21)
- Nikolai Shcherbin (1)
Features
- notifications: notification handler sets language per recipient 9f6ac20ac
- likes: likes notification use event notification handler ee5fe8acc closes #14734
- forms:
- double submit prevention support multiple submit buttons 7d3b282b8
- added a helper input view for switch field types 12c4760e4
- cache: merge default redis options (#14720) 1a84edbed
- relationships: trigger :before and :after events for relations a85bae8a6 closes #14318
- admin: admin validation notification setting moved 0b6b3fd14
- user: improved user settings form 7ad954726
- file: form fields through the fields service 0d9f70e00
- discussions: form fields through the fields service b04f761d0
- bookmarks: form fields through the fields service 997bdfce1
- blog: form fields through the fields service 0d053f0df
- groups:
- allow user to revoke their group membership request 375b53e4f
- added notice to group profile if you have been invited b7353cb85 closes #14630
- popular groups listing is replaced with a sort menu option f3d6cae68
- added badges with counts to invitations filter menu 0dc3aa9c5
- you can now invite people without the need for the friends plugin 92b56944a
- db: added elgg_count_relationships helper function b08115702
- developers: added restore actions to the entity explorer menu cfcd8ceca closes #14632
Performance
- comments: river comments are no longer full views 7300cf9be
Bug fixes
- database: prevent unwanted duplicate metadata records 7e7c9b379 closes #14740
- plugins: elgg_get_plugin_setting returns default if plugin missing 20d305fc7
- groups: show direct join menu item if there is an invitation d5157dd8a
- core: prevent notices when passing non array to sort_by 684ce4508
Deprecations
- plugins: the function elgg_plugin_exists is now deprecated 3f0ab95ef
- cache: various cache related functions have been deprecated f8644a95e
- core: the use of non PSR loglevels has been deprecated f21b153ef closes #14606
Removed
- css: no longer have alternative elgg-form-alt styling e1b499af9
- forms: categories field support 50cd159c3
6.0.7 (2024-11-20)
Contributors
6.0.6 (2024-10-25)
Contributors
- Jerôme Bakker (2)
- Jeroen Dalsem (1)
Bug fixes
- db: correctly check for inverse relationship sorting 25a9cb140
6.0.5 (2024-10-09)
Contributors
6.0.4 (2024-09-06)
Contributors
- Jerôme Bakker (2)
- Jeroen Dalsem (1)
Bug fixes
- cache: catch exceptions when loading data from cache f242fce22
6.0.3 (2024-08-15)
Contributors
- Jerôme Bakker (8)
- Jeroen Dalsem (4)
Performance
- river: preload response owners e9a1ee9de
- likes: preload likes for river responses cae17e102
Bug fixes
- ckeditor:
- editor keeps focus if input already has the focus f2d14eb41 closes #14533
- ctrl-enter submitting from editor works again 28db80430
- js: elgg module should postpone loading if global elgg is missing 34d67caf1
- garbagecollector: correctly log optimize table results ff399c2f6
- cron: correct database query for removed entity handling 5fc811366
6.0.2 (2024-08-02)
Contributors
- Jeroen Dalsem (1)
- Jerôme Bakker (1)
- Nikolai Shcherbin (1)
Bug fixes
- rss: fatal error that occurred when enabling short_open_tag 5a9d8d43f
6.0.1 (2024-07-11)
Contributors
- Jeroen Dalsem (2)
- Jerôme Bakker (1)
Bug fixes
- ckeditor: editor field validation errors will show on form submit ffd55edbc closes #14360
6.0.0 (2024-06-27)
Contributors
Bug fixes
- core: use correct relationship to mark recursive trashed entities b8887bbd5
6.0.0-rc.1 (2024-06-14)
Contributors
- Jerôme Bakker (8)
- Jeroen Dalsem (7)
Features
- admin: total amount of online users added to the admin header menu 0b8f970b2
Bug fixes
- css: correctly align user and group profile fields and labels 4595b6e04 closes #14608
- users: prevent double notification on admin user validation 0ff70c0ea
- garbagecollector: use correct table to clean delayed email queue 01615ca51
- cron: use correct event trigger 921eedc09
- widgets: set correct widget URLs e5ceaf6f0 closes #14609
6.0.0-beta.1 (2024-04-18)
Contributors
- Jeroen Dalsem (63)
- Jerôme Bakker (28)
Features
- ckeditor: updated to ckeditor v41.3 c30beef28
- db: updated to doctrine/dbal v4 c3776a7a7
- core: added temporary bin ea8939719 closes #5172
- views:
- restructured various page elements and improved css c5c46637a
- improve various sidebar search forms 172ada402
- improved usage of headings in various parts of a page df7e1eaac closes #14435
- session: login event has been reintroduced for logging purposes 34819950d
- js: dropped RequireJS in favor of ECMAScript modules e2e998c2c
- icons: uniform storage of entity icon cropping coordinates cee682c2f
- php: require php intl module 5b5ddccb6 closes #13901
- tests: updated to PHPUnit 10.5 b01996b60
- responses: response forward urls are now secure by default afe18fb3b
Bug fixes
- core:
- correctly determine if plugins need reindexing 84e72f296
- correctly check for the need for a default order by 72d015033
- groups:
- only show group owner transfer if there are other members 3f8a4f1bf
- only show edit form sections if there is content 28673a1f7
- webservices:
- upgrades: show correct count in the admin upgrade listing adc8b9028 closes #14520
- database: allow both metadata and annotations 67962755c closes #14405
Removed
- filesystem: removed flysystem wrapper 537b90a1d
- db: the enabled column for annotations has been removed bdd17b413
- core: the \ElggEntity->getTags() function has been removed d3bbe25d0
- icons: icontime metadata is no longer available 7e139b935
5.1.12 (2024-11-20)
Contributors
5.1.11 (2024-10-25)
Contributors
Bug fixes
- comments: allow multiple replies on the same comment 0ff81db02 closes #14690
- i18n: use correct user language 565605e62
- file: use correct original file name in upgrade 73aaef51e
5.1.10 (2024-10-08)
Contributors
Bug fixes
- thewire: correctly handle string length for multi-byte characters 77baddcf3
- i18n: handle invalid locale date format 9a93d5bdc closes #14712
5.1.9 (2024-08-02)
Contributors
Bug fixes
- menus: no longer render empty menu sections 72882fc37
- rss: fatal error that occurred when enabling short_open_tag d0883e534
5.1.8 (2024-07-11)
Contributors
- Jeroen Dalsem (1)
- Jerôme Bakker (1)
Bug fixes
- forms: prevent type hint crash by casting vars 6286063c8
5.1.7 (2024-06-27)
Contributors
Bug fixes
- email: use recipient language for email footer link b5add14a0
5.1.6 (2024-06-14)
Contributors
Bug fixes
5.1.5 (2024-03-22)
Contributors
- Jerôme Bakker (7)
- Jeroen Dalsem (1)
Bug fixes
- core:
- improved friendly title for multibyte characters 6d80fa23f closes #14577
- no longer set dynamic property on exceptions 21b41a6a6
- ckeditor: do not limit html elements in ckeditor 01bacfc51
- plugins: improved handling of composer version constraints 8dd38c0b7 closes #14580
- pages: correctly disable parent page option 02a4f3bfa
5.1.4 (2024-01-12)
Contributors
- Jerôme Bakker (3)
- Jeroen Dalsem (2)
Bug fixes
- comments: only load comment form when needed 1eaa55b48
- session: allow samesite cookie configuration 1dcb96c26
- notifications: prevent unneeded content subscriptions 3ffedc0ad closes #14301
5.1.3 (2023-12-15)
Contributors
- Jeroen Dalsem (5)
- Jerôme Bakker (2)
Bug fixes
- cli: database seed command no longer queues notifications 7fb4139fe
- uservalidationbyemail: only allow confirm link for logged out users 89ba96f5d
- users: prevent ban/unban notifications for users during disable 623a2fe6a
5.1.2 (2023-11-30)
Contributors
- Jeroen Dalsem (4)
- Jerôme Bakker (4)
Bug fixes
- output: link must have discernible text 8ed45c12d
- web_services: only create new tokens on initial save a1904fc7c closes #14516
- developers: removed metadata enabled column in entity explorer 4256e4dd7
5.1.1 (2023-11-17)
Contributors
- Jerôme Bakker (9)
- Jeroen Dalsem (5)
Bug fixes
- webservices: no longer expose parts of the system during an error a0db26a40
- cli: provide readable feedback when using incorrect cron interval c658dd2b7
- pages: don't allow a page to be its own parent f029d1e69
- views: don't output a summary title if no display name 385475469
- css: improved elgg-level behaviour on limited viewports a1482000f
- routes: correctly deprecate the comment/edit route 04bed5687
5.1.0 (2023-10-24)
Contributors
- Jeroen Dalsem (37)
- Jerôme Bakker (36)
Features
- ckeditor:
- updated to v40.0.0 441c0f442
- ctrl+enter in the editor field will submit the form 5b0bd6a8d
- css: allow theme variables to be configured by the site admin 3eb7fe354
- cron: added custom cron logger class 6535d386b
- a11y:
- views: support a title on an imprint element 2ebfccb09
- breadcrumbs:
- improved usability of elgg_push_collection_breadcrumb 68c6d069e
- last item pointing to current page will be removed 95b305458
- added a home icon as a first item e78e7ee68
- blog: prevent double submit of the blog form 0a23cd09b
- cli:
- interactively set number of seeded items per seeder 337b1bd71
- added database seeders command 12baa7c68
- activate plugins CLI command supports plugin priority 160fcaf69
- installer now has the option to prevent plugin activation 1a20e79ef
- security: add support for security.txt 2709c2db4 closes #14315
- admin: reorganized admin and configure utilities menu items de1959ad5
- widgets: the widget edit form now shows in a lightbox 15e68df90
- input: the value output view for an userpicker can be set 585903bb9
- developers:
- the theme sandbox is now a separated plugin 22cd62e89
- added inspection page for the database CLI seeders e8255d3f6
- html: added a scroll to top button 58b1ae7d1
- js: client side validate max file size for file input 3b19a7071 closes #7059
Bug fixes
- css: fixed some margin issues on elgg-field form elements 1565a6d47 closes #14354
- a11y:
- topbar sub menu items are now keyboard accessible 6326c3902 closes #6759
- make sure widget edit/delete actions are keyboard accessible d7b61ed15 closes #14471
- tab to first item in opened dropdown menu 487d7370a
- edit comment form sets focus to comment textarea 477646730
- keep focus on toggled menu item a18ad0057
- cache: report HTTP 410 Gone on stale cache urls cfd488361 closes #14086
- views:
- breadcrumbs: no longer add a breadcrumb if link to self is false 7a44a533c
Deprecations
- views: resource and route for comment edit are not in use 84deb0e54
5.0.7 (2023-10-10)
Contributors
- Jeroen Dalsem (5)
- Jerôme Bakker (2)
Bug Fixes
- forms: prevent double submit on comment forms (1b057186)
- icons: retry icon resize after failure (e04e396b)
5.0.6 (2023-09-07)
Contributors
- Jerôme Bakker (2)
- Nikolai Shcherbin (1)
Bug Fixes
- ckeditor: early abort object mentions on closing bracket (b397601c)
- docs: document correct function (e9ba84a1)
5.0.5 (2023-08-16)
Contributors
- Jeroen Dalsem (1)
- Jerôme Bakker (1)
Bug Fixes
- rss: invalid atom link href in rss channel (0467cf87)
5.0.4 (2023-07-26)
Contributors
- Jerôme Bakker (9)
- Jeroen Dalsem (1)
Bug Fixes
- ckeditor: added all block level image alignments to toolbar (6fff9429)
- icons: prevent racing condition when saving cropping coordinates (b4993528)
- notifications: processing delayed emails could cause OOM issues (5e0fcab1)
- views:
- input/button and output/url must have discernible text (924b2cdc)
- make sure the icon cropper img has an alt text (0cc105c8)
- allow mobile devices to zoom (1cee1be1)
- correctly set iframe width for PHPInfo (e72f476e)
- only generate listing ID when using pagination (ffe94eab)
5.0.3 (2023-07-14)
Contributors
- Jerôme Bakker (7)
- Jeroen Dalsem (3)
Bug Fixes
- admin: admin layout now gets correct layout class (f0c348c0)
- composer: no longer try to symlink the mods on Windows (5319f0ea)
- database: execute delayed queries immediately during CLI (d2d23209)
- email: image styles will be converted to attributes if possible (f306388b)
- http: maintain set redirect code in response (c4ad5037)
- icons: make sure transparent images have a white background (25d039b2)
- settings: prevent setting changes from being added to the systemlog (708cb7ff)
- site_notifications: return correct actor (a2ee148f)
- user: prevent logging of changes to last_login and prev_last_login (ba28f760)
5.0.2 (2023-07-03)
Contributors
Performance
- site_notifications: simplify site_notification removal query (ad8bd918)
Bug Fixes
- thewire: improved hashtag matching (67277b2f)
- user: return correct type for getOwnerGuid (72856546)
- views: correctly handle errors in mention parsing (92dc5d6d)
5.0.1 (2023-06-19)
Contributors
- Jeroen Dalsem (6)
- Jerôme Bakker (4)
Bug Fixes
- cropper: only register tab change fixes when cropper is ready (33feb185)
- db:
- allow passing only relationship_ids to fetch relationships (ad06ace9)
- querying relationships with only relationship_guid now works (8bfe76e7)
- js: use native scrollIntoView to respect element scroll margin (9b1b1850)
- registration: send the new user notification to email (b845f475)
- river: always return a string for RiverItem->getView() function (10437cf5)
- seeder: validate commentable and likeable capability during seeding (fb151710)
5.0.0 (2023-06-01)
Contributors
- Jerôme Bakker (10)
- Jeroen Dalsem (4)
Features
- ckeditor: confirm page navigation on unsaved editor changes (789c27b0)
Bug Fixes
- ckeditor:
- use pixels instead of percentages when resizing images (4bd4e629)
- image upload progress and icon are beter visible (7c44af72)
- cropper: fixed issue when the cropper is on a hidden tab (7b7dcfae)
- plugins: correct layout when a plugin can't be (de)activated (35a36232)
- views: validate elgg_list_entities getter return type (b349f367)
Breaking Changes
- core: metadata value no longer magically turns into an array (b0f4695f)
5.0.0-rc.1 (2023-05-22)
Contributors
- Jerôme Bakker (11)
- Jeroen Dalsem (8)
Features
- ckeditor:
- strip empty paragraphs when outputting longtext fields (dfd24629)
- added the simpleButton plugin (9334b61e)
Bug Fixes
- icons: show cropper messages for header images (a09f7d36)
- output: correctly format 0 byte output (1a27a14c)
5.0.0-beta.1 (2023-04-05)
Contributors
- Jeroen Dalsem (108)
- Jerôme Bakker (62)
Features
- access_collection: trigger 'create', 'update' and 'delete' events (8a8e89a5)
- actions: action registration can support additional middleware (90c786e1)
- activity: commenting bumps related river activity last action (00868b68)
- admin:
- added a widget for admins with a feed with latest Elgg news (697481f1)
- moved page menu items to the topbar (535d0eb2)
- admin account menu is now more in line with front end (405b114e)
- moved plugin settings menu items to own section (6098f150)
- ckeditor: replaced ckeditor4 with ckeditor5 (52ea3488)
- core:
- added download response (12204ccd)
- upgrade batches now have access to upgrade entity (5cc3a108)
- event and hook deprecation now have a default message (992e7ef3)
- db: private settings are merged into metadata (cb9951a5)
- entities: create event has been split into before and after event (432b4dad)
- events: event sequences have a unique ID (0febd638)
- files:
- file plugin files are now stored with the entity (9df0cd0a)
- no longer show file type icons in regular listings (fe263adf)
- forms: automatically support sticky forms (320a8110)
- garbagecollector: cleanup orphaned data in the database (230a8ee9)
- gatekeepers:
- added PageOwner gatekeeper middleware (443c6f27)
- pageownercaneditgatekeeper now requires a pageowner (6553b9a2)
- http: added helper function to get a Http Guzzle Client (d2f60974)
- icons: icon cropping is now default enabled in entity/edit/icon (a845ce04)
- plugins: it is now allowed to set arrays as private settings (de415231)
- reportedcontent: added detail view for reports with comments (90fc1195)
- routes: added the ability to influence priority for similar routes (d257f024)
- tests: allow easier testing with multiple installations (ac3035e0)
- users: if configured a river activity is for a new user (d5a1d944)
- views: page header now has support for header image (84929789)
- web_services:
- API methods can be registered in the elgg-plugin.php (6357e73e)
- allow different callbacks depending on HTTP request (d67507e0)
- widgets:
- it is now possible to filter the widgets in the add panel (7d95d87c)
- target column and position can now be configured (97d657c4)
Documentation
- events: added some additional information about migrating hooks (6d607025)
Bug Fixes
- core: prevent issues with unsaved data and system log (4048eeec)
- filestore: improved removal of a directory (a6c09c81)
- forms: draw fieldset legend on correct location (c1a012ac)
- likes: use variable in translation string (d39e33da)
- search: use correct container type title (ba742d1f)
- views: output/url now returns nothing if there is no url (db8b6e06)
Breaking Changes
- hooks: hooks and events system has been merged (720a38a5)
- menus: elgg_register_title_button has its first argument removed (ddb25972)
Removed
- blogs:
- no longer show a delete button on blog edit form (8274c0e8)
- auto save draft functionality has been removed (bb71b807)
- core:
- InvalidParameterException as removed (aedb914c)
- the REFERER constant is removed in favor of REFERRER (a3137340)
- it's no longer possible to set site secret in elgg-config (80e91091)
- files: file plugin no longer uses custom file type icons (92c50dd1)
- plugins: the embed plugin has been removed (31a443c5)
- widgets: class function saveSettings has been removed (3c58daee)
4.3.10 (2023-11-17)
Contributors
Bug Fixes
- session: correctly invalidate session on privilege elevation (6357da49)
4.3.9 (2023-07-26)
Contributors
- Jerôme Bakker (2)
- Nikolai Shcherbin (1)
Bug Fixes
- admin: use correct params for memcache and redis server information (6ee26b94)
4.3.8 (2023-04-04)
Contributors
Bug Fixes
- core: prevent fatal exception when opening a file (07951e89)
4.3.7 (2023-02-10)
Contributors
Bug Fixes
- icons: improved handling of invalid cropping coordinates (db7cf911)
- upgrades: use correct function to report upgrade failure (a860911e)
4.3.6 (2023-01-20)
Contributors
Bug Fixes
- cache: correctly load simplecache from database (0f92673f)
- comments:
- no longer add duplicate html ID in threaded comments (242d9a5d)
- correctly remove threaded comments (65817a0e)
- discussions: correctly handle last comment (bfc1700c)
4.3.5 (2022-12-07)
Contributors
Bug Fixes
- account: improved valid username detection (0115b714)
- developers: correctly show metadata boolean values (189370c3)
- icon: improved handling of multiple icon uploads on the same page (d7da537a)
- register: set correct middleware on registration action (39648e30)
- webservices: pass authentication failure message to api result (5d852205)
4.3.4 (2022-10-27)
Contributors
- Jerôme Bakker (8)
- Jeroen Dalsem (2)
Bug Fixes
- groups: correctly detect default access based on input parameters (4a8a05c9)
- users: correctly redirect after user deletion (b5b35701)
4.3.3 (2022-10-07)
Contributors
Bug Fixes
- db: correctly handle sort_by clauses on more tables (1c7d6392)
- session: show correct login error message for unvalidated accounts (713fde5d)
4.3.2 (2022-09-23)
Contributors
Bug Fixes
- output: allow mailto and tel scheme if used directly via output/url (bad4de81)
4.3.1 (2022-08-26)
Contributors
Bug Fixes
- icons: correctly remove all icons (85f4ba0f)
- plugins: sanitize plugins path (66a066ab)
4.3.0 (2022-08-05)
Contributors
- Jeroen Dalsem (7)
- Jerôme Bakker (7)
- Nikolai Shcherbin (1)
Features
- relationships: added \ElggEntity->getRelationship() (31a03961)
Bug Fixes
- cache: separated cache namespaces should not interfere (0a2e40ca)
- developers: gear settings popup works again (8ba956dc)
- navigation: correctly merge multiple link classes for menu items (3f94a30b)
4.3.0-rc.1 (2022-07-21)
Contributors
- Jeroen Dalsem (50)
- Jerôme Bakker (31)
- Ally Petitt (1)
- Nikolai Shcherbin (1)
Features
- admin: open recent cron log in lightbox instead of in widget (db25a973)
- ckeditor: updated to ckeditor v4.19.0 (d0e47c05)
- core:
- add path sanitization function (c7abf151)
- implement generic namespace of exceptions (0fd13f0e)
- move the PAM handlers to a service (4cb55938)
- discussions: added group selection when starting a global topic (dfe38f67)
- forms: added class to fields that have been disabled (b95821f6)
- groups: moved group tool field into its own view (77ff14cc)
- html: added SRI validation to local scripts and stylesheets (516412e4)
- icons:
- added config flag to enabled/disable webp icons (c2a78165)
- added FontAwesome zip upload so admins can update icons (02a4030a)
- menus: added support for a custom tag name for section headers (a3c521c3)
- notifications:
- allow to provide a notification actor (a314571f)
- notification handlers can controll e-mail mute link (422019b9)
- added triggers to track en/dequeue events (9569225e)
- registration: allow to register with a valid invitation code (04127336)
- system_log:
- added event type to the event action logged (eb4273cf)
- improved logbrowser features (4a7b350c)
- user: added internal cache for profile data (7be4ca64)
- users:
- allow filtering of inactive users (6ca3d63a)
- added confirmation form when deleting a user (2234de28)
- views:
- added widget_more element to entity listings (6ca4c78a)
- added html5 video support to the file plugin (d713749e)
Performance
- core: added config flag to disable file exist check in classloader (234e9891)
Documentation
- release: update core release documentation (600b7517)
- support: added 4.3 to the support page (9216020e)
Bug Fixes
- annotations: save/update annotations return false on null values (4947ede8)
- core: generate correct URLs in special request cases (8f602520)
- notifications: handle exceptions during notification processing (d94cb193)
- user: only show language completeness on user settings for admins (65205220)
- users: briefdescription icon should be false by default (f40750cc)
Deprecations
- annotations: annotate event is deprecated (072ca669)
- config:
- changed the way config variables are protected (3a53a6cd)
- deprecated some more config variables (c8190587)
- do not use config->elgg_settings_file (14b8073c)
- core:
- renamed various user related lib functions (0f1d15fb)
- prefix relationship functions with elgg_ (4467cb8b)
- renamed various session related lib functions (82b6ffe4)
- prefix core functions with elgg_ (517e9d25)
- various lib functions and hooks deprecated (22fe011a)
- db:
- old style database configuration (5c5d2394)
- using order_by_[metadata|annotation] is deprecated (ae12730d)
- forms: clear a single sticky form value (d950a3d3)
- friends: Friends trait functions (1221d6ce)
- hooks: old or obsolete hooks have been deprecated (d46f320a)
- icons: replaced the 'classes', 'icon' hook (0acb87fc)
- js: toggle and popup now init with a class instead of rel (97ba1790)
- metadata: delete metadata by id (d7b3c1fb)
- views: (un)register external views (2aa22ba7)
4.2.3 (2022-07-04)
Contributors
- Jeroen Dalsem (2)
- Jerôme Bakker (2)
Bug Fixes
- blogs: preview opens in blank window to prevent history issues (39a99376)
- forms: datepicker should show correct prev/next characters (48bff527)
4.2.2 (2022-06-17)
Contributors
- Jeroen Dalsem (8)
- Jerôme Bakker (5)
Bug Fixes
- cache: make sure the CLI and webserver use the same cache path (fda6463e)
- db: support passing relationship guid when sorting by relationship (21b9f1e6)
- groups: groupprofile rss feed should show recent searchable content (54353859)
- icons: check filesize when checking if entity has icon (50989148)
- menus:
- allow detecting selected sorting parent from view var (822ac99c)
- sorting parent detection should respect menu item priority (19fbbcb7)
- search: improved search result presentation (8959c933)
4.2.1 (2022-05-31)
Contributors
- Jeroen Dalsem (17)
- Jerôme Bakker (4)
Documentation
- entities: added info about singular sort_by options (0340ecea)
Bug Fixes
- bookmarks: always detect document title for bookmarks link (6b8e7cb3)
- ckeditor: replaced deprecated get_current_language js function (036c532d)
- db: ignore unsupported sort_by property types instead of crashing (9eb1e3ba)
- forms: do not draw container_guid subtext if empty (127352ee)
- groups:
- enable cropper on group profile icon (a0a61cf8)
- replaced deprecated sort options in owner transfer (5b787372)
- icons: only generate webp urls if server supports it (fbf76c11)
- js: unable to check for logged in user in javascript (72d89a96)
- menus: make sure title-menu-toggle is always available (f81a21e6)
- navigation: user hover menu was missing the admin toggle (06433212)
- pages:
- allow saving with an empty description (3001a307)
- check field config for all required fields on save (7f72d186)
- search: allow passing sort_by through query params (4104a828)
- site_notifications: prevent possible deadloops with seeded entities (8ea5e3ce)
4.2.0 (2022-05-13)
Contributors
Performance
Bug Fixes
- composer: postinstall script correctly creates /mod folder (f2568298)
- likes: use correct values to check likeable capability (74b43e15)
- session: make sure to cache the logged in user in the entity cache (9145183a)
- stats: correctly show the number of unvalidated users (cae13aa1)
4.2.0-rc.1 (2022-04-22)
Contributors
- Jeroen Dalsem (62)
- Jerôme Bakker (27)
- Nikolai Shcherbin (1)
Features
- accounts: admins can set duplicate email addresses for other users (4e6f7803)
- actions: added logged_out access level to action registration (29679c37)
- activity: added link to activity widget title (54b2c580)
- admin:
- bookmarks: added link to bookmarks widget title (d5ab59a2)
- cache:
- added option to system cache to set TTL for an item (45e2f2c7)
- replaced stash with phpfastcache (6637015f)
- config: added a setting to control the system message delay (289fb2ba)
- db: metadata and annotation boolean values keep their type (c6775bd3)
- discussions:
- added a discussions widget for profile and dashboard (8d2ccea0)
- added a group setting to control topic notifications (72c2674c)
- entities: add generic sort options (2216bb01)
- friends: added link to friends_of widget (09ad7dae)
- groups: added imprint to indicate group owner/membership (b84f4535)
- icons: serve webp icons if accepted by the browser (b0188aba)
- js: updated jquery-ui to v1.13.1 (f1874a90)
- menu: ability to set the output view of a menu item (5a210df5)
- messageboard: added link to messageboard widget title (ffad7512)
- plugins: login as features are now part of core (55a0c0f9)
- reportedcontent:
- site admins get notification about new reports (0536f60e)
- separate active/archive listing (451fce64)
- tests: added testing and support for MariaDB (29b3ec2a)
- user: if unvalidated allow a user to update email address (aa43b04b)
- users: automatically remove unvalidated users (3eeed1f9)
- view: url input will auto prepend http protocol if missing (771a1847)
- views:
- added placeholder support for autocomplete fields (889882f2)
- added more features to the system messages (000b92ba)
- entity imprint now shows time updated if appropriate (049fb14c)
- login form title indicates forward from protected page (0946daf9)
Bug Fixes
- composer: updated imagine for PHP 8.1 compatibility (33d1c594)
- db: prevent entity subtype queries without a type provided (3f63e4f9)
- developers: do not disable display errors if enabled from htaccess (929806c9)
- entity: prevent deadloops during recursive entity delete (139998f5)
- forms: corectly ignore empty form body (4cdb56fa)
- groups: correctly report failure when inviting users (85814c0b)
- js: user picker should respect if default event is prevented (ce6dab00)
- plugins: don't show plugin (user)settings form if no content (bee2f1e2)
- views: limit long entity titles in url and page titles (02ed01c3)
Deprecations
- js:
- introduced elgg/i18n module for js translations (e5e67955)
- ElggUser and ElggEntity classes have been deprecated (bcd6a515)
- elgg.security related functions moved to AMD (c7c9a44b)
- elgg.system_message related functions moved to AMD (f0781727)
- unused and unwanted javascript lib functions (1982af30)
Removed
- js: no longer need the prototypes.js helper functions (09fca863)
- tests: TestSeeder class (e1ca7c84)
4.1.6 (2022-04-08)
Contributors
- Jeroen Dalsem (2)
- Jerôme Bakker (2)
Performance
- input: only filter input params once (66107ced)
Bug Fixes
- custom_index: added missing activity module content (ed4575bd)
- js: security tokens are refreshed automatically (26fc2206)
4.1.5 (2022-03-25)
Contributors
- Jerôme Bakker (3)
- Jeroen Dalsem (1)
Bug Fixes
- di: fetch timer from the correct DiContainer (abc25bd9)
- pages: prevent warning when trying to access guid on bool (8ff80f9e)
4.1.4 (2022-03-11)
Contributors
- Jeroen Dalsem (1)
- Jerôme Bakker (1)
4.1.3 (2022-02-25)
Contributors
- Jerôme Bakker (14)
- Jeroen Dalsem (1)
Performance
- site_notifications: cleanup speed-up on large databases (baf9f0b0)
Bug Fixes
- account: user settings form is no longer ajax based (22b41305)
- core: correctly suppress notices when asked (b5ef29c7)
- forms: styling of horizontal aligned fields not always correct (8ca0872f)
- i18n: double translation (36bbf27d)
- route: detect page owner with ignored access (d7f5d35b)
- session: correctly apply session garbage collection (d14350c8)
4.1.2 (2022-02-11)
Contributors
- Jerôme Bakker (8)
- Jeroen Dalsem (1)
Bug Fixes
- composer: install symfony/mime (bd2832c5)
- core: correctly compare urls with array query params (f94d3290)
- database: return documented return type (75d08731)
4.1.1 (2022-02-01)
Contributors
Bug Fixes
- cache: improved cache path parsing (fb18efb1)
4.1.0 (2022-01-14)
Contributors
- Jeroen Dalsem (7)
- Jerôme Bakker (5)
- Nikolai Shcherbin (1)
Features
- css: added helper class to wrap horizontal fieldset content (c0853ae7)
Bug Fixes
- groups: only select groups to check group invites (17bedb9b)
Removed
- tests: IntegratedUnitTestCase (65f007e6)
4.1.0-beta.1 (2021-12-24)
Contributors
- Jeroen Dalsem (93)
- Jerôme Bakker (36)
Features
- activity: index page will show registration form if possible (c5b84221)
- admin:
- server requirements warning for session garbage collection (460134fd)
- user validation by admin notify user about validation (ab5b3624)
- added link to add new user form on newest users listing (98d55ca7)
- admin control panel menu items always visible in title menu (204fd65d)
- blog: added logic to pass archive menu options to sidebar views (221172c7)
- cache: replaced mrclay/minify with matthiasmullie/minify (fd99fccc)
- capabilities: canComment now uses canWriteToContainer logic (f4c3890d)
- comments:
- added threaded comments capabilities (0875b898)
- commentable is now an entity capability (475cb0b6)
- added a site config to control comments on group content (bde859da)
- show a notice for logged out users to login to comment (60f79376)
- show that a comment was created by the content owner (32af360d)
- config: added site setting to control who can change language (164965b6)
- core:
- improved default index pages (f22c071a)
- replaced internal service provider with PHP-DI (8d997600)
- css:
- added helper class to stretch a field in a fieldset (be05225c)
- added helper class for horizontal labels in elgg-field (df095c13)
- added phone up media query css crush variable (18de6788)
- custom_index:
- added settings to control homepage modules (54bbf7c0)
- Front Page Demo plugin is now enabled on new sites (f95afdab)
- db: the required mysql version for new installations now is 5.7 (65c292e0)
- developers: control how elgg_echo strings are displayed (8eb2afb6)
- entities: added entity capabilities service (e93d1c5d)
- forms:
- install: admin notice for new installs now mention front page demo (a30ebdfa)
- javascript: sortable features now also work on touch devices (fe2421d5)
- likes: likable now is part of the entity capabilities systems (a149422d)
- menus: added flag to menu items to hide if it has no children (24b05c70)
- notifications:
- added option to disable subscription filtering (1e58e96e)
- control over detailed notification configuration (2ae90bf2)
- page_owner: page owner middleware forces page owner detection (829bce49)
- profile: user display name edit is now a separate view (4b485be8)
- routes:
- add function to get a route based on an url/path (17370a6a)
- add function to get current route name (7c2a2991)
- site: added the ability to upload a site icon (149f1258)
- site_notifications: allow to configure the cleanup interval (77642349)
- system_log: improved archived log cleanup (024c7aae)
- tests:
- static config test now check correct upgrades registration (5d146320)
- logged in user is now always logged out by base test class (c1a97363)
- entities created during tests are automatically removed (3ec2d614)
- upgrades: the finished upgrades list now has pagination (09a1ea54)
- views: added menu section in elgg_view_messages header output (d9023fcf)
Performance
- comments: added comments count preloader logic (2b6da920)
- site_notifications: cron cleanup uses direct database queries (36969685)
Documentation
- core: added a guide on how to use the entity capabilities service (b8f226ab)
Bug Fixes
- admin: server information now reports correct minimal php version (a2fb0a96)
- collection: correctly implement unset of collection item (3684df75)
- file: prevent path traversal in ElggFile (0a50b762)
- js: no longer close popups on scroll (9b4d2621)
- menus: removed link from topbar account menu item (e1104cf5)
- router: admin gatekeeper reports status code 403 instead of 401 (05340f54)
- tests: custom config values always persist over db values (49ef293b)
Deprecations
- core:
- ElggEntity->getAccessID() is deprecated (3a9a9e5b)
- elgg_get_version has been replaced by elgg_get_release (cc71881c)
- i18n: the public DI proxy for elgg()->echo is deprecated (2f65c1ab)
- page_owner: legacy page owner detection has been deprecated (6fec812f)
- views: elgg_does_viewtype_fallback has been deprecated (1e2a135a)
Removed
- admin: control panel widget has been removed (4e8d1cff)
4.0.6 (2021-12-23)
Contributors
4.0.5 (2021-12-03)
Contributors
Bug Fixes
- blog: show future access level for draft blogs (68d86899)
- install: correctly determine database installation completion (96a4a469)
- upgrade: correctly interpret database results before migration (b8dcc903)
4.0.4 (2021-11-19)
Contributors
4.0.3 (2021-11-05)
Contributors
- Jerôme Bakker (4)
- Jeroen Dalsem (2)
Bug Fixes
- core: access collection members should always be users (6de21dbe)
- discussion: comment actor on group discussion no longer notified (41ac24aa)
- views: correctly support passing tagify options to input/tags (7e121f96)
4.0.2 (2021-10-25)
Contributors
- Jerôme Bakker (21)
- Jeroen Dalsem (6)
Features
- site_notifications: notification byline shows container entity (9f43720d)
Bug Fixes
- blog: don't supply full $vars to the blog/save form (2e23f9dd)
- core: use route generation instead of fixed url (565ae3a7)
- i18n: catch too few arguments provided in elgg_echo() (28609f02)
- js: do not click on parent menu item of tabs with children (9b5d3073)
- messages: use list out of bounds helper (487c174a)
- notifications:
- continue when no object is found in html output (86eb13cd)
- set notification url for all ElggData objects (b2ebf498)
- settings show correct entity icons (27dfac30)
- routes: correctly detect page owner in certain routes (e003a4e9)
- site_notifications:
- only mark as read when the owner clicks url (16eb05e9)
- cleanup oldest notifications first (897cc5f5)
- use list out of bounds helper (b39c55bc)
- views:
4.0.1 (2021-10-08)
Contributors
- Jerôme Bakker (11)
- Jeroen Dalsem (7)
Bug Fixes
- blog: use route name as page title (ead3647b)
- comments: no longer disable save button after form submission (03651f26)
- core: do not respond with redirect on failure of ajax requests (4222ac92)
- notifications:
- mute page of a comment shows relevant entities (e297bda2)
- disable subscribe button if you can't subscribe (ea612bb4)
- (un)subscribe buttons only for logged in users (824291fb)
- site_notifications: prevent input limit reached in bulk actions (e83df87c)
- systemlog: only log before and after events if there are handlers (5fb8189a)
- thewire: output of the new wire notification in HTML e-mail (c161429b)
- views: correct default behaviour for showing entity menu on PHP 8 (8f9f3827)
4.0.0 (2021-09-24)
Contributors
- Jerôme Bakker (11)
- Jeroen Dalsem (4)
Bug Fixes
- cli: allow batch upgrades to run indefinitely (5b6b4419)
- i18n: allowed languages returns filtered language keys (ff574222)
- upgrade: content owner subscription is now an async upgrade (d8abe11c)
4.0.0-rc.1 (2021-09-10)
Contributors
- Jerôme Bakker (59)
- Jeroen Dalsem (3)
Features
- cli: upgrade command supports force option (8fb44c7f)
- delayed_email: add intro text to notification (c3750286)
- developers: added link to entity on the entity explorer page (cd1f3753)
- groups: groups edit form tabs navigation help (bd2f94d9)
- notifications: added option to exclude subscribers (e43ae547)
- system_log: allow elgg_call to disable system logging (7f85fd18)
Performance
- db: disable system_log during cleanup of entity properties (4576dff6)
Bug Fixes
- activity: don't show responses on index page when logged out (eaa5c28b)
- bookmarks:
- don't show filter menu when viewing a bookmark (1a5c9478)
- unable to save bookmark on PHP 8 (81392414)
- db: use QueryBuilder in query execution (2f2050cb)
- delayed_email: prevent empty notification (ee6bc376)
- developers: theme sandbox is now only available for admins (19bcb892)
- mail: correctly encode ( and ) in e-mail headers (0560c379)
- notifications:
- serialization exception during delayed enqueue (72b65143)
- use correct actor for admin notification (6b8d37a0)
- pagination:
- don't updated browser history on ajax appended lists (823283bd)
- allow control over base url during Ajax requests (edad75a7)
- use correct jquery selector during ajax replace (e750622b)
- river: show river responses again on all pages (9e90d95b)
- session: prevent PHP warning when regenerating session (dfe73773)
- site_notifications:
- limit cleanup to 30 minutes (7229e7e1)
- prevent deadloop when marking as read (c4467a2c)
- statistics: show readable entity type/subtype (99a68a47)
4.0.0-beta.3 (2021-08-06)
Contributors
- Jeroen Dalsem (20)
- Jerôme Bakker (17)
Features
- friends: added friends_of widget (05fea8a0)
- i18n: added a config flag to disable browser language detection (00b612dc)
- notifications:
- notification events are configurable (55c7c909)
- subscribers to owner will receive notifications (2b0f2bb2)
- setting to delay notification queue processing (7942f7e0)
- pagination: js loaded listdata triggers a change event (aa478518)
- views: allow custom title to be passed to output/friendlytime (4c88d2d3)
Bug Fixes
- admin: drag/drop plugin ordering has been fixed (7b5fe7df)
- email: added mute link to html email footer (85268538)
- groups: make sure retrieving group tool option always uses hook (1e9ae2b6)
- install:
- make sure user is logged in during installer (b6248ec7)
- allow some vendor files to be included (3f857850)
- likes: correctly toggle count badge (fa2be687)
- metadata: elgg_get_tags uses correct default for tag_names (4e8d5326)
- phinx: correctly check for indexes by name during upgrades (22ccaea9)
- plugins: position and required state of plugins are now asserted (948927a3)
- site_notifications: moved buttonbank to top of the list (c158e810)
- tags: always have tags css available (3f9b5a63)
- upgrades: improved completion reporting (863e2627)
- views: prevent incidental incorrect id generation (c2d77bd1)
- webservices: register correct PAM handlers for API authentication (51ebcabb)
- widgets: only update title on non empty href string (7b147a61)
4.0.0-beta.2 (2021-07-09)
Contributors
- Jeroen Dalsem (13)
- Jerôme Bakker (13)
Features
- discussions: added quick status toggle entity menu item (1b78dc00)
Bug Fixes
- activity:
- always show tabs on activity index page (3aa6605b)
- added missing breadcrumbs (db7e2ce3)
- cache: invalidate caches on plugin (de)activate (8bca339c)
- core:
- prevent exceptions on session save (90345bae)
- do not draw exception content if there already is output (91d4f03a)
- correctly handle exceptions in error log formatter (6d6328f1)
- icons: update site menu icons (7292b4c0)
- js: always process error messages in ajax calls (cf070072)
- navigation: prevent pluginsettings menu item name conflicts (cbe3ef6d)
- notifications:
- dont pass recipient user to default message body (91d45a26)
- show correct notification labels (9a285350)
- search: do not show social and entity menu in search results (33413407)
- settings: english and site language not correctly disabled (76a099e3)
- views: number formatter not always returning expected results (f5d25392)
4.0.0-beta.1 (2021-06-11)
Contributors
- Jeroen Dalsem (193)
- Jerôme Bakker (144)
- RiverVanRain (1)
- dnovikov (1)
Features
- actions: added generic actions for (un)subscribe and (un)mute (2f7e1702)
- comments: added ability to configure number of comments per page (100e6881)
- config:
- added configuration option for sendmail in settings.php (91f476ba)
- added proxy settings to the settings.php (37c1966d)
- core:
- added first login event for when user logs in the first time (19a2d384)
- users are automaticly subscribed to content they comment on (a5373f14)
- added PHP 8 support (11e42800)
- ElggBatch supports reporting failures (ba601973)
- database: add generic registration function for seeders (a11047b3)
- db: updated to doctrine/dbal 3.1 (32152f3f)
- discussions: the site menu item is now always present (2d19025a)
- email:
- from address will show original sender name (6fa8fcf0)
- added html formatted mail template (76b21538)
- added config setting to limit subject length (4e82113f)
- Elgg\Mail now supports multiple to, cc and bcc recipients (0f24a524)
- forms: entity field config can be requested from a service (c6b1771a)
- git: extra allowed types for commit messages (c9f1757c)
- groups:
- allow group specific plugin settings (28f7e6e6)
- group edit form now uses tabs for different sections (a9103dee)
- js:
- updated to jQuery 3.5.1 (b9f8a8c5)
- jquery ui updated to v1.12.1 and can now supports AMD (4914dc8f)
- allow lightbox to load JS dependencies (fa00e132)
- menu: the title menu will be expanded with the entity menu (a91a7cc7)
- menus: more granular register and prepare hooks (bc6a5e2f)
- messages: allow users to send messages friends only (94208336)
- navigation: more control over the pagination rendering (a9b0680c)
- notifications:
- plugins can control notification with eventhandler (87ebad4e)
- added mute notification page (2d724e6e)
- temporarily disable notifications (2770d4d9)
- added delayed email to bundle notifications (d522a53e)
- split salutation and sign-off from message body (5741a414)
- more detailed notification subscriptions (b018d1a8)
- page_owner: add page owner detection to route definition (f52e4227)
- pagination:
- added 'infinite lists' pagination options (d8aa00ff)
- listings are now updated without page reloads (1f3322c2)
- plugins:
- added ability to configure notification events in config (e3e77234)
- added ability to register view options in elgg-plugin.php (522feeb6)
- added ability to register group tools in elgg-plugin.php (9acc7d88)
- reportedcontent: added menu item to report entities (13f07c58)
- router: public API to get the route of the current request (8e3736e8)
- search: moved result formatting logic into views (fe63196f)
- seeder:
- add option to spread creation time of seeded entities (30385b79)
- force create new entities during seeding (a21eccf8)
- limit (un)seeding to a given content type (0485722a)
- site_notifications:
- site notifications are enabled for new users (51238b15)
- configure cleanup of site notifications (55ce9da4)
- split read/unread notifications (9df9bc19)
- remove notification when content is removed (792705a8)
- subscriptions: added muting possibility to entity subscriptions (6ad73185)
- tags: tags input is now assisted by tagify (bc9d2566)
- thewire:
- added getParent function to ElggWire entity class (46f406aa)
- allow database seeding (70a29ddc)
- users:
- newly created users always have a validation status (04cc3395)
- uniform storage of notification settings (6fcccafe)
- views:
- added helpers functions for outputting urls (a23a3ff1)
- added 'show_owner_block' variable to prevent owner_block output (29cc3323)
- webservices: option to enable / disable API keys (4c5b33cb)
- widgets: dashboard widgets created on first login (9bf117d9)
Performance
- db:
- add index to annotations table (7c728671)
- add index to annotations table (af34641a)
Bug Fixes
- collections: corrected implementation of SeekableIterator (a7e70382)
- core: remove_entity_relationships triggers delete event (73626bee)
- css: wide select inputs do not run out of screen (6af60e27)
- db:
- check for entity existence during metadata creation (0a07fe8d)
- check for entity existence during relationship creation (d23e7351)
- groups: use guid instead of container_guid in add:group:group route (57146fbe)
- invite_friends: friendship delayed until invited friend validated (2c212dd1)
- js: userpicker stores match_on information in data attribute (1b30d349)
- relationship: saving unchanged relationships won't trigger events (549ee02c)
- river: show less duplicate comments (d172ce94)
- site_notifications: save more notification data (2603e4cd)
- tests: testAccessCaching now makes more sense (466ce221)
Deprecations
- core:
- drop support for handler in elgg_register_title_button (0529986f)
- forward() has been deprecated (9497be28)
- database: use QueryBuilder instead of raw sql queries (8aa74ef9)
Breaking Changes
- This update is a major update of the jQuery library. Update your code if needed. (b9f8a8c5)
- If you need jquery ui related functionality like sortables, make sure to add the correct dependencies to your own javascript (4914dc8f)
- You now can only use the elgg/Ajax async module.
fixes #13175 (5bca9af9)
- when validating the container write permissions the type and subtype of the content need to be provided.
fixes #12684 (13070985)
- composer: replace deprecated Zend\Mail with Laminas\Mail (bef90a8c)
- core:
- i18n: removed some hardly used i18n lib functions (5e768e41)
- icons: old icon names are no longer supported / converted (a00b2599)
- menu: menu vars are required for preparing vertical and dropdown (10125160)
- menus: removed elgg_get_filter_tabs() (37340f99)
- notifications: moved notifications plugin to core (0f141b73)
- web_services: rewrite of the web services plugin (fceb9130)
- widgets: change default widgets event registration (2340f47b)
Removed
- core:
- support for the composer project as a 'plugin' (f52f167c)
- the Friendable interface has been replaced by a trait (7f5ea445)
- legacy plugin hook / event callback parameters (ab19e9e9)
- some hardly used functions have been removed/replaced (b37e34c0)
- developers: webservices inspection (588534c0)
- diagnostics: the plugin has been removed (4050e21a)
- discussions: no longer add an item to the groups filter menu (c9d36b82)
- navigation: helper view for menu item deps has been removed (a2ed60fa)
- notifications:
- pre Elgg 1.9 notification support is dropped (949825a9)
- NotifcationService::getMethodsAsDeprecatedGlobal (835a7218)
- plugins:
- plugins no longer work with manifest files (a17c8cec)
- various plugins no longer listen to ECML hooks (d5d922c5)
- system_log: various lib functions have been removed (12108c9d, closes #13089)
- tags: functions related to metadata tag names have been removed (4ca58372)
- upgrades: removed obsolete upgrades (1f0c968c)
- users: replaced validation methods with service functions (821ccd95)
- views: removed elgg_prepend_css_urls is no longer available (53cb8819)
3.3.25 (2022-10-07)
Contributors
3.3.24 (2021-12-23)
Contributors
Bug Fixes
- reported_content: sanitize report URLs (c30b17bf)
3.3.23 (2021-12-03)
Contributors
Bug Fixes
- ajax: forms in the admin namespace are protected (572d210e)
3.3.22 (2021-11-19)
Contributors
Bug Fixes
- groups: prevent misuse of group membership actions (d9fcad76)
3.3.21 (2021-08-03)
Contributors
Bug Fixes
- http: always disable cache if cookie is being set (30c17f06)
3.3.20 (2021-07-09)
Contributors
Bug Fixes
- admin: allow admins to be added from the admin listing page (8d94877f)
- database: use correct port number in Phinx migrations (0ee77635)
3.3.19 (2021-06-10)
Contributors
Bug Fixes
- output: use correct number seperators (536e2b26)
3.3.18 (2021-05-18)
Contributors
- Jerôme Bakker (3)
- Robert Cochran (1)
Documentation
- install: mention necessary SELinux changes (912ca440)
Bug Fixes
- account: use consistent user throughout the account settings (9e59117f)
- search: make sure entity_subtype is a string during search options (94f110c6)
- webservices: correctly evaluate truthy values (86459670)
3.3.17 (2021-04-16)
Contributors
- Jeroen Dalsem (2)
- Jerôme Bakker (2)
- Nikolai Shcherbin (1)
Bug Fixes
- groups: don't show 'Invite friends' menu item on the group's members page when 'Friends' plugin is deactivated (5d2f8a32)
- river: river options annotation_ids now work as expected (e1d61594)
- thewire: do not put unlimited description in notification summary (657be642)
3.3.16 (2021-02-12)
Contributors
- Jerôme Bakker (4)
- Jeroen Dalsem (1)
- Nikolai Shcherbin (1)
Bug Fixes
- cache: disable filecache if path isn't writeable (dc807d44)
- likes: don't provide likes data in non default type ajax requests (07d63d43)
- menu: don't show 'invite friends' menu item on the group profile when 'Friends' plugin is deactivated (2783492a)
3.3.15 (2021-01-15)
Contributors
Bug Fixes
- db: pass previous database exception (20e07d23)
- icon: use different icon size to check in icon remove (8c42bf4f)
- icons: prevent auto generation of icons during entity updates (918a1193)
3.3.14 (2020-12-18)
Contributors
- Jeroen Dalsem (8)
- Jerôme Bakker (3)
Bug Fixes
- cache: keep server cache in a local file storage (0569862d)
- database: correctly order metadata (32fe6955)
- http: allow access to client IP behind proxy server (159e70ee)
- search: prevent duplicate extras matches in search results (1211ae4d)
- widgets: correctly update widget title after widget update (95535d24)
3.3.13 (2020-11-20)
Contributors
- Jeroen Dalsem (3)
- Jerôme Bakker (2)
Performance
- users: entities metadata preloader logic now works for users (74bfd360)
Bug Fixes
- tests:
- compare objects that are both serialized and deserialized (1af78826)
- entity preloader is clean before tests (35a96147)
3.3.12 (2020-10-30)
Contributors
- Jeroen Dalsem (4)
- Jerôme Bakker (1)
- Nikolai Shcherbin (1)
- RiverVanRain (1)
Bug Fixes
- admin: invalid admin section should report 404 not found (bd4eb40f)
- developers: do not log to screen in cli (b1a06491)
- github: make sure we use composer v1 during codecoverage tests (25022dfd)
- river: "created", "river" event trigger regression (718d79c8)
- widgets: content widget shows correct owner content (c3c663d3)
3.3.11 (2020-10-02)
Contributors
- Jeroen Dalsem (3)
- Jerôme Bakker (1)
Bug Fixes
- core: do not save session for serve-file and CLI requests (cf8ee303)
- database: use compatible DBAL version (c5ca05f1)
- likes: comment listings are now correctly preloaded with likes info (f348802a)
- session: correctly set httponly flag for remember_me cookie (91034947)
3.3.10 (2020-09-04)
Contributors
- Jerôme Bakker (12)
- Team Webgalli (1)
Features
- htaccess: added hardening rules to prevent file access (08ea7f7a)
Bug Fixes
- comments: validate canComment in comments save action (883be474)
- composer: define correct autoload namespace (6f874ae2)
- developers: inspect annotations menu no longer crashes (096118a7)
- uservalidationbyemail: show correct login error message (db3cddd6)
3.3.9 (2020-08-17)
Contributors
- Jerôme Bakker (14)
- Jeroen Dalsem (1)
Bug Fixes
- db: handle empty dbprefix in join normalization (fe3d1684)
- search: allow only unique field names to be searched (4e540518)
- tests:
- set config value in correct location (05c0ff6e)
- improved access array testing in walled garden mode (c58a1543)
- validate correct widget id for active plugin (7ddc7743)
- get correct plugin for deactivation testing (f058db5d)
- use language keys to validate (e16b0166)
3.3.8 (2020-07-10)
Contributors
- Jerôme Bakker (4)
- iionly (1)
Bug Fixes
- cache: support javascript source map files (5ec82f20)
- uservalidationbyemail: corrected error in EN language file (5e5adca4)
- webservices: implement missing cache functions (deba4203)
3.3.7 (2020-06-30)
Contributors
- Jeroen Dalsem (2)
- Jerôme Bakker (2)
- RiverVanRain (1)
- Team Webgalli (1)
Documentation
- webservices: how to generate HMAC headers for authentication (1a74457f)
Bug Fixes
- comments:
- allow group owners to edit comments in their group (835478f8)
- use correct logic to apply default comments list length (c556969e)
- css: admin menu header (01e72dd1)
- navigation: allow configuration of max display items site menu (cbede32e)
3.3.6 (2020-05-29)
Contributors
- Jerôme Bakker (5)
- Jeroen Dalsem (3)
Performance
- likes: bulk delete likes annotations on entity delete (0b1d536c)
Bug Fixes
- db: default case_sensitive not applied for single pair in root (1ecd214c)
- notifications: only register group menu item if member of group (a3a707ef)
- redis: admin information page now works if authorized (7db8bbd8)
3.3.5 (2020-05-15)
Contributors
- Jerôme Bakker (6)
- RiverVanRain (2)
- Dennis Ploeger (1)
- Jeroen Dalsem (1)
Features
- cli: Adds a –refresh option to the list command (#13201) (eed99bfa)
Bug Fixes
- file:
- validate uploaded file for new files (a3f4ed52)
- correctly remove icons when updating a file (d215defa)
- friends_collection: display menu items correctly in full view (b170b1f4)
- input: no longer use double submit prevention on widget edit forms (ced827d5)
- mail: improved handling of email recipients name formatting (ff8a425a)
- plugins: disabled plugins should not get a priority (b856c449)
- views: prevent PHP notice during registering views (6b1bf6e4)
3.3.4 (2020-04-24)
Contributors
- Jerôme Bakker (4)
- Jeroen Dalsem (1)
Bug Fixes
- core:
- use correct input for password reset (5ceaed52)
- log exceptions by default (3d085449)
- developers: remove entity button in explorer now works (fed4809a)
- logger: correctly support legacy value 'OFF' (df80433c)
3.3.3 (2020-03-27)
Contributors
- Jerôme Bakker (4)
- Jeroen Dalsem (2)
Bug Fixes
- livesearch: use correct relationship options to find groups (dc82fd9e)
- mail: additional library for SMTP e-mail support (d69b90df)
3.3.2 (2020-03-13)
Contributors
- Jeroen Dalsem (6)
- Jerôme Bakker (4)
Bug Fixes
- notifications: listing of settings now contain a link to the item (4a2ae1de)
- webservices: use correct query string for hmac authorisation (1dc4cae9)
3.3.1 (2020-02-14)
Contributors
- Jeroen Dalsem (6)
- Jerôme Bakker (5)
Bug Fixes
- blog: double submit protection prevented correct saving (2460d178)
- file: correctly set forward url (10f48139)
- likes: likes popup will show recent likes first (9b0bf45d)
- plugins:
- reindex plugins if there is a gap in the priority (ce2d4bfb)
- default all plugins are listed (5888aa89)
- correctly flush caches after plugin (de)activation (7a6465b5)
- route: correctly handle route generation for unicode usernames (58766e37)
- views: input/autocomplete correctly passes match_target (1fe233d2)
3.3.0 (2020-01-23)
Contributors
- Jeroen Dalsem (58)
- Jerôme Bakker (34)
- Josh Santos (1)
Features
- access: added generic container logic check for group tool option (eb129203)
- admin:
- plugin list is default filtered by active state (e3adc687)
- added site setting to control allowed languages (663fb447)
- annotations: added generic annotation delete action (1ebeafb4)
- cache: added more cache interactions (8dbc51ce)
- cli:
- added upgrade:list command to list all upgrades in the system (364d0016)
- added command to execute a single upgrade (ed14adf0)
- added option to set language for cli command (d11d0581)
- all core cli commands use translation keys (5355f270)
- question defaults are automatically added to question (b2cdf54a)
- core:
- you can now configure the default sort order of comments (573d416d)
- added mimetype detection service (54e2574b)
- container last_action is updated when entities are created (9f0a706b)
- css: walledgarden background image can be set as a css variable (939bf26e)
- developers: added entity explorer link to every entity (0c580432)
- discussions:
- add page to view discussions in my groups (81c1cab0)
- added setting to allow site wide discussions (5f4dc826)
- github: added codeclimate coverage action (e695efe5)
- i18n: added user agent language detection (e5778f5d)
- input:
- forms now have the ability to prevent double submit (f4e21fd2)
- added confirm option to input/submit (60a67b55)
- list: we provide a way back if you reach a page without content (b3ee54c5)
- mail: add smtp support (ada8bb7d, closes #12938)
- notifications: unregister specific notification action (19f3571b)
- plugins:
- you can change/add theme variables in elgg-plugin.php (f698d00a)
- added the ability to (un)extend views in elgg-plugin.php (d16fb845)
- add ability to remove all plugin settings (28cb247d)
- cli commands can now be registered in elgg-plugin.php (d0858cc8)
- tests: added MySQL 8 test job (63235d90)
- views:
- added site setting to control if comment box collapses (043d6789)
- info type added to elgg_view_message (006151fa)
- seperate annotation view into subparts (b080fd25)
- input/button now supports icon_alt (18425695)
- added ability to elgg_view_page to pass layout vars (002ba980)
Performance
- js: refresh_token now uses a partial boot of the engine (23846134)
Documentation
- views: rewrite of the page structure guide (a5272a66)
Bug Fixes
- blog: no longer validate container permissions on existing blogs (e3b1c6c6)
- cli: improved error handling during command execution (c548e95b)
- core: no longer default to client file mime type (73f44c03)
- http: prevent content type sniffing by browsers (62743b8f)
- js: prevent clicks until related js is loaded (9e638c9e)
- views: moved user element to correct subviews (2a96a19a)
Deprecations
- core:
- function generate_action_token is deprecated (11020308)
- functions to get ordered event/hook handlers (3a47f381)
- various functions have been deprecated (0f47534e)
- plugins:
- using a start.php in you plugin is deprecated (b744960f)
- function elgg_unset_all_plugin_settings() (36aa2e41)
- views:
- the function elgg_view_entity_annotations (5f2b1bf3)
- deprecated the usage of some old layout names (79a373dd)
3.2.4 (2020-01-23)
Contributors
- Jeroen Dalsem (5)
- Jerôme Bakker (2)
Bug Fixes
- cron: allow configuration for custom cron intervals (8e969a67)
- developers: set correct default value for menu hooks (d3bc28d6)
- installer: escape some special chars in db password (9923e173)
- search: do not try a search with invalid query (28cd2ead)
- user: user hover menu uses local data array of request params (6a0f28f2)
3.2.3 (2019-12-20)
Contributors
- Jerôme Bakker (7)
- Jeroen Dalsem (3)
Features
- groups: add limited group creation middleware (9ea474e1)
Documentation
- actions: updated action documentation (3e90769f)
Bug Fixes
- icons: always use default viewtype when using fallback icons (b2c666b7)
- search: search result extras are formatted correctly (3fd1355d)
- views: use correct summary classes in relationship elements (30ef1c87)
3.2.2 (2019-12-06)
Contributors
- Jeroen Dalsem (8)
- Jerôme Bakker (1)
Documentation
- database: document the need and usage of manual Phinx migrations (3d8d5ac4)
Bug Fixes
- core: plugin reports version of elgg_release (f86e898a)
- css: vertical align horizontal aligned fields in fieldset (78bb72f3)
- groups: added missing gatekeepers to content pages (ecb9fb8f)
- input: htmlawed will no longer check for duplicate ids (cbad1c25)
- tests: moved integration test to correct suite (8b4e0d40)
- theme_sandbox: changed aside modules to info modules (ba6bccf4)
3.2.1 (2019-11-25)
Contributors
- Jerôme Bakker (13)
- Jeroen Dalsem (6)
- Dennis Ploeger (1)
Features
- tests: allow testing of tool protected group pages (5b465453)
Documentation
Bug Fixes
- admin: use correct function for unvalidated users notifications (bbce4ca0)
- file:
- use correct submit label on upload/update of file (07ef13d1)
- use correct view in old group module (56a46f94)
- added group tool gatekeeper to owner resource (4667d9fe)
- friends: supply correct link for friend request notification (21e231a0)
- groups:
- set menu item classes the correct way (dc161621)
- show a no result text on the group membership request page (db601b71)
- input: select now supports passing int values to options_values (4563eed4)
- installer: allow empty database table prefix during installation (622b47c0)
- seeder: use available users during seeding (716e02fb)
- system_log: check archive engine availability before changing (99e3c928)
3.2.0 (2019-10-24)
Contributors
- Jerôme Bakker (40)
- Jeroen Dalsem (18)
Features
- admin: added a site setting to require admin approval of accounts (2882da61)
- core:
- added elgg_list_relationships (9b54398c)
- added elgg_get_relationships function (21d3c697)
- database: clauses support invokable classes (75653f24)
- files: download urls can be configured to not expire (f61c5578)
- friends: add plugin setting to enable the need for friend approval (25b87858)
- groups:
- added option to hide group owner tranfer (4a072e88)
- allow groups to set default content access (9f701b77)
- membership requests and invitations use relationship views (afff8d9f)
- add invited users page for group owners (82310d78)
- added membership requests tab to group members listing (019745f0)
- add invite button on group members page (9e164221)
- show user already a member/invited for the group (57d38cca)
- member listing now uses elgg_list_relationship (783f22a6)
- install: allow user to change language during installation (5f23eff1)
- livesearch: added ability to set custom item_view (8c1df6e8)
- middleware: added page owner can edit middleware (b81fc729)
- redis: added the ability to set redis database and password (e0c9d953)
- request: allow access to the http request (7e86f576)
- security: allow password requirement to be configured (ccca6897)
- system_log: allow logbrowser to filter on object id (de0e6171)
- upgrades: track upgrade start time (f37d03bc)
- webservices:
Documentation
- routing: added some extra middleware documentation (b1c123ca)
Bug Fixes
- access: allow plugin to register write access array subtypes (6db1d505)
- ckeditor: do no convert html entities in the editor (e977bf99)
- core:
- css: buttons in some menus keep correct styling (3eb49098)
- embed: no longer require a plugin with file_uploading provided (3925c647)
- js: deep merge the elgg.data (197bfb49)
Deprecations
- river: no longer use the enabled property of river items (59ebfb3d)
3.1.6 (2019-10-23)
Contributors
- Jeroen Dalsem (5)
- Jerôme Bakker (1)
Documentation
- database: document innodb recommended settings (7cfaf39a)
Bug Fixes
- access: do not add default access level if missing in input/access (58efbbc1)
- js:
- only trigger open event when new content is loaded (83f67a81)
- if no tabs are selected click the first tab (66c9e9ba)
- views: only add a link in summary title if entity can provide one (b9b70f7a)
3.1.5 (2019-10-11)
Contributors
- Jeroen Dalsem (7)
- Jerôme Bakker (2)
Documentation
- plugins: added some info about class structures in plugins (03536970)
- webservices: document the result structure of webservice calls (9a6221a7)
Bug Fixes
- core: allow passing only name or value into name/value pairs (e2e26677)
- js: stop refreshing tokens if session changed (bb4a7894)
- pages: correctly validate write permissions (a3fbc109)
3.1.4 (2019-09-27)
Contributors
- Jerôme Bakker (5)
- Jeroen Dalsem (2)
Bug Fixes
- messageboard: use the correct annotation_name for listings (95429878)
- tests: correctly validate response headers (2ccd1833)
3.1.3 (2019-09-13)
Contributors
- Jeroen Dalsem (4)
- Jerôme Bakker (4)
Features
- ajax: added option to suppress messages from ajax calls (2b728fe5)
Bug Fixes
- admin: do not show ajax success message when removing admin notice (75bf8cbd)
- database: updated Phinx to prevent Symfony conflicts (58d778a6)
- uservalidationbyemail: correct forwarding during email confirmation (e3ccb067)
3.1.2 (2019-08-28)
Contributors
- Jerôme Bakker (7)
- Esha Upadhyay (1)
Bug Fixes
- admin: prevent fatal error on non Apache servers (3da30342)
- cache: invalidating simplecache could break symlinked cache (c8a41062)
- comments: block comments on group content for non members (6482879a)
- developers: link to site settings section (330676bb)
- discussions: no more filter menu on discussion detail page (e8d60f6c)
- installer: link to site settings section (f0e3dbe5)
3.1.1 (2019-08-02)
Contributors
3.1.0 (2019-07-25)
Contributors
- Jeroen Dalsem (81)
- Jerôme Bakker (23)
- Rohit Gupta (9)
- Ismayil Khayredinov (1)
- Joe Bordes (1)
Features
- admin:
- added requirements information about database server (d9c92dab)
- add email change option to unvalidated users (f09ba7ee)
- add server requirements page (4e5cd057)
- moved Elgg release to page header (f55d0f1d)
- add security recommendations page (e129b307)
- add performance overview page (f1321a2f)
- admin user lists now have the ability to search by email (c34789f4)
- add admins directly from the administrators page (78027dda)
- basic and advanced settings are merged into one form (aedaa0e1)
- ckeditor:
- updated to ckeditor v4.12.x (33b44604)
- updated ckeditor version to 4.11.x (d6061b3f)
- core:
- error resources now have access to the exception (fac3141e)
- added function to convert large numbers into short form (de9d2ef8)
- admin notices now have their own class (a627d4ef)
- manifest.json is now a cacheable simplecache resource (ef98f420)
- db: allow configuration of the database port number (058db755)
- developers:
- wrap input and output views (cafdb455)
- display view location in view wrapping (e6ba1ecf)
- added acl information to entity explorer (9c465a1a)
- entities: added helper function elgg_count_entities (7e00cbc7)
- gatekeeper: flag to validate user edit access (8becf0ea)
- groups: support content based on type/subtype in tool module (fa897bcb)
- icons: add icon cropper (deb5d212)
- input: add support for more input types (048704e2)
- menus: added menu param to set a selected menu item (74d50561)
- notifications: Elgg\Email knows about sender and recipient (539437b0)
- page_owner: moved page owner logic to a service (bc35cf5a)
- pages:
- page navigation now uses default page menu behaviour (89976121)
- replaced treeview js and css with default menu behaviour (18be2699)
- phinx: updated phinx version to 0.10.x (52ebe588)
- plugins: hooks and events can be declared in elgg-plugin.php (c1cc12c4)
- profile: new input types for custom profile fields (59c1a4ba)
- router: add SignedRequestGatekeeper middleware (54e050a3)
- routes:
- added required plugins param to route config (8f4c1957)
- added route config to mark route as deprecated (53d8f433)
- security:
- request confirmation on email change (53017104)
- notify the user about a password change (8692ac32)
- site_notifications: topbar menu item now has a unread count badge (a1d1fddc)
- upgrades: completed upgrades are sorted by completion time (beebaecd)
- users:
- unify set/get/delete profile data functions (906c25b7)
- added a site setting to allow users to change the username (3e2a476e)
- views:
- add additional page menu and owner block controls (5cf80c8c)
- password inputs now set correct autocomplete behaviour (929f7bc5)
- show_add_form view var is now supported in responses (7bd0f0da)
Performance
- db: added some extra indexes to the entities table (0395d99b)
Documentation
- core:
- added a spam guide (2ac20105)
- added documentation about the usage of elgg_call (8beef28f)
- added upgrade notices page for 3.0 to 3.x (456e4fba)
Bug Fixes
- admin: different user counters in admin stats (73c86726)
- core:
- updated PHP version checks to check correct version (dbb02710)
- elgg_call will now also restore when an error is thrown (54964f59)
- css:
- spacing between profile-field and widgets (a281ac45)
- prevent jquery-ui bug related to sortables (fa840b53)
- discussions: no longer call unavailable sidebar views (afe83c96)
- forms: added missing entity info in widget access input (8f1770d1)
- pages:
- no longer register page_nav menu if there is just one item (a7f7359d)
- removed the pages navigation sidebar from some resources (08f3df26)
- no longer show history sidebar on revision page (3c91022d)
- system_log: correctly fetch non default object classes (3f0a10d4)
Deprecations
- access:
- elgg_set_ignore_access is deprecated (6d0d99ec)
- access_show_hidden_entities is deprecated (33b3e5ac)
- actions: replaced several delete actions with entity/delete (192d01ac)
- core:
- legacy hook/event callback arguments are deprecated (563f4492)
- various unused lib functions have been deprecated (792bd362)
- elgg_instanceof is now deprecated (2602c801)
- replaced delete_directory with elgg_delete_directory (f61471dc)
- css: use elgg_require_css instead of elgg_register_css (b0c014f3)
- js: use elgg_require_js instead of elgg_register_js (e3d4a13c)
- page_owner: don't set page_owner via elgg_get_page_owner_guid (b1089824)
- plugins:
- tests: the simpletest cli command is deprecated (f17a8cd9)
- thewire: the route previous:object:thewire is now deprecated (677d9129)
3.0.7 (2019-08-02)
Contributors
- Jerôme Bakker (2)
- Jeroen Dalsem (1)
Bug Fixes
- js: improved elgg.normalize_url to handle more site cases (57af9e2b)
- routes: use absolute url as base for route url generation (244854af)
3.0.6 (2019-07-24)
Contributors
- Jeroen Dalsem (11)
- Jerôme Bakker (9)
- Ismayil Khayredinov (1)
Documentation
- code: added note about low-level functions that should throw (03417897)
- composer: document composer autoloader optimization (fee62f05)
- css: added some best practices about css files and classnaming (daa55646)
Bug Fixes
- cache:
- improved handling of values (db7c8864)
- prevent timeout during cache flush (ab8c759b)
- ckeditor: no need to remove plugins as they are not loaded (55b95e7a)
- comments: popup menu will close itself when inline editing comments (9a7ecc73)
- core:
- literal order by clauses are no longer deprecated (e77e4898)
- unset on ElggData will always use magic setter (a0b442ad)
- always show success message when upgrade has finished (0afb29d8)
- http: request validation now correctly reads payload (c5e18f45)
- js: validate arguments in elgg.get_simplecache_url (91f7c143)
- pages: correctly check who can edit (write) access (a87ec78f)
- routes: route url generation will always return a normalized url (d0b2503a)
3.0.5 (2019-07-08)
Contributors
- Jerôme Bakker (8)
- Jeroen Dalsem (2)
- Ismayil Khayredinov (1)
Documentation
Bug Fixes
- core: correctly remove annotations on non saved entities (20af166e)
- http: non-multipart requests should not fail validation (c59ae7aa, closes #12654)
- notifications: correctly sort the notifiable users (583fb67f)
- search: highlighter no longer messes up output when searching ints (e3499498)
- thewire: full view uses correct entity layout (64143d58)
Deprecations
- groups: group_acl metadata has been deprecated (380cfa24)
3.0.4 (2019-06-12)
Contributors
- Jerôme Bakker (6)
- Jeroen Dalsem (2)
Bug Fixes
- blog: save draft in correct container (b32c6139)
- email: set default email attachment id (ae8fc0a4)
- install: minification is enabled for fresh installations (ae869441)
- livesearch: by default no longer include banned users (c059ff11)
- response: only set error content if provided (518231ab)
- system_log: prevent fatal exception when constructing objects (5105ca6f)
3.0.3 (2019-05-21)
Contributors
- Jerôme Bakker (55)
- Jeroen Dalsem (21)
- Rohit Gupta (1)
- therecluse26 (1)
Performance
- db: improved preloader queries for performance (6ec44b7a)
- entity: only update private settings if value changes (ee955db4)
Bug Fixes
- ajax: reponseFactory prepares reponse (ff965eab)
- cache:
- let cache (un)serialize contents (#12615) (29eeabc5)
- updated Stash version to 0.15.* (3aa057a8)
- improved error handling in Stash (79107e3f)
- core:
- use correct typehint namespace (aaeacf36)
- remove unused action hook listener in BootService (01ff862c)
- report correct duration for non sequential timers (1831589f)
- db: make sure all queries are tracked and logged (8e6da0c6)
- email: don't set duplicate content-type header (#12625) (5625412c)
- gatekeeper: allow access to content of banned users (c7c36082)
- messages: added missing translation string (5c612c1a)
- metadata:
- removed usage of canEditMetadata is MetadataTable::delete (35c39119)
- removed usage of canEditMetadata (42495a6b)
- notifications: prevent php warning when no collections selected (6efd8f7b)
- output: always return string in formatter (b92a6dbd)
- pages: don't show access fields if no edit rights (33eff4b2)
- plugins:
- only reindex plugin priorities with new disabled plugins (9652c77e)
- plugin details tabs work again (f3c9bb3f)
- request: upload post max size is now correct validated (#12610) (5b118806)
- river: restored ignoring access when bulk deleting river items (761dc191)
- search: no longer set deprecated search_type tags on tag links (#12611) (a639fbba)
- session:
- cookie configuration not read from settings file (d43d282c)
- session close moved to the latest possible moment (16c06fc2)
- system_log:
- filtering in logbrowser could result in no results (bdf6ec54)
- system_log_get_log accepts single array argument (#12607) (9641b008)
- web_services: fetch correct api user (f857b1ef)
- widgets: return all widgets in case of duplicate order (e2899cb4)
3.0.2 (2019-04-17)
Contributors
- Jeroen Dalsem (9)
- Jerôme Bakker (6)
Performance
- upgrades: improved speed of friends acl async upgrade (004dcdd4)
Bug Fixes
- core:
- prevent namespace conflict (526ecf72)
- use webserver timezone for date (f0f16685)
- css:
- user hover card is now single column layout (fcff8f90)
- prevent quick wrapping of title menu items (d0c07dc6)
- forms: added missing entity info in widget access input (1f92b130)
- i18n: make sure system translations are loaded before adding custom (48ce7e0c)
- icons:
- do not remove uploaded file when saving as icon (e669071c)
- only fix image orientation when handling icons (4e690386)
- upgrades: friends acl upgrade will now update all entities (68f12d13)
3.0.1 (2019-04-05)
Contributors
Bug Fixes
3.0.0 (2019-04-05)
Contributors
- Jerôme Bakker (60)
- Jeroen Dalsem (54)
- Rohit Gupta (3)
- iionly (1)
Features
- cache: reset opcache when flushing the system cache (b3c84901)
- core: added server statistics about OPcache (f48d7b1a)
- gatekeeper:
- improved gatekeeper exceptions (d8765071)
- added a logged out gatekeeper middleware (b9264a93)
- i18n: output date in locale string (c2ca5da2)
- livesearch: allow to filter out banned users (c3d631a3)
- security: added admin setting to set if icons are session bound (07f070de)
- upgrades: added an information page about the phinx db upgrades (5ce9bced)
Performance
- db: added combined index on entities type/subtype (33b8463c)
- i18n:
- improved logic of loading translations (d615165b)
- cache translations in systemcache only when loaded (ea22727f)
- plugins:
- preload private settings when fetching plugins from db (daaab2a2)
- always set boot plugins (a70787c8)
- only reset plugin priority if dirty (2d5d8571)
- upgrades:
Documentation
- icons: document recommended additional options for entity icons (a39bb1c7)
Bug Fixes
- account: don't allow , and : in username (7049923e)
- ajax: on error response clear system messages (e3ca2b10)
- blog:
- use correct route after deleting a blog (6481b93f)
- excerpt no longer limited during save (f2f1eb7c)
- ordering of archive menu items not consistent (3ff75438)
- cache: clear running autoloadermap when flushing the caches (2ea53a3b)
- comments: show read more in activity for long comments (5cca32bf)
- core:
- fallback to generic error code in ErrorResponse (9c81a8bb)
- make sure constants are available during db migrations (d5c8ff47)
- directory permissions more usable (5fdf3a86)
- try to forward to entity collection after deletion (df08d138)
- css:
- keep tabs together on smaller screens (ef0b42f7)
- entity navigation not always correctly aligned in all browsers (64c6a0c0)
- popped out dropdown always showing (9597d6c4)
- allow wrapping of elgg-menu-hz menu items if there is no room (2e4292ca)
- wordbreaking is now allowed everywhere (994663fd)
- database: support closure group_by clauses (7da86a40)
- email: set content encoding on magic email attachments (b0ef558a)
- embed: tabs now working correctly (8a4b80e5)
- gatekeeper: return http 401 status code when not authorized (4bb770d7)
- groups: add menu item in correct menu section (436c93a6)
- icons: increased the default resolution of master icon to 10240px (e39e5d29)
- input: do not autocomplete input date fields (d55cf07b)
- invitefriends: route path conflict with friends plugin (9c645ed0)
- js:
- clear system messages when submitting ajax submitted form (dbc6a913)
- check if trigger is set before validation if part of comments (9fdd66d7)
- provide user feedback when opening user hover menu (bb280605)
- close popups on window scroll (6fbaf8d4)
- menus:
- menu items will recursively sort its children (e979cd69)
- prevent section output if no items (f7868abb)
- you can now have a link with toggleable features combined (097b01f7)
- navigation:
- always append admin toggle menu item (41021eda)
- do not require logged in user for filter tab all (570d7721)
- correctly remove selected state if link item not a tab (8cd7209a)
- improved breadcrumbs for site containers (578a25c5)
- entity nav fixed for entities with same time created (4d66fcc1)
- add default user_hover section items to actions section (387d618b)
- notifications: validate the notification event (b8e34723)
- plugins:
- generateEntities correctly rediscovers disabled plugins (b62238dd)
- rely on magic translations for widgets (988ec419)
- request:
- return expected return type (af805ca1)
- set_input values override request values (ba1e977d)
- use same order as in getParam() (9ac24c7a)
- rss:
- listings have rss content (07e6338c)
- register rss link in a more logical way and provide control (9e785825)
- prevent RSS output if disabled (cf6af267)
- scripts: transifex script adjustments (0633121c)
- search:
- namespace profile fields (3fc2afcb)
- improved search fields normalization (ec58c6f1)
- split search field registrations (cae5e906)
- session: close session early when redirecting repsonses (4149f8d3)
- site_notifications: site notification link js handling works again (2a62cd6e)
- system_log: use correct plugin setting for cron jobs (f6c5d109)
- tags: support documented elgg_get_metadata features (4460f948)
- tests: pass test independed of loglevel settings (2e22b1df)
- upgrades:
- drop site_guid as primary and unique key explicitely before removing site_guid column (ff6f2069)
- validate database setting before changing (89989f56)
- don't report Batch errors for completed upgrades (b8e1af6e)
- don't offer delete link for ElggUpgrades (5b9d1b08)
- users: set default values (7757fcd5)
- widgets: check page owner canEdit in can_edit_widget_layout (e40ffbcc)
3.0.0-rc.2 (2018-12-21)
Contributors
- Jerôme Bakker (90)
- Jeroen Dalsem (43)
- Ismayil Khayredinov (4)
- iionly (2)
Features
- cli: seeder can use local image directory (d9be6784)
- core: added helper function to find empty values (c0eea6e3)
- icons: automaticly detect cropping coordinates during icon upload (ddcf18e1)
- river: add extra class to river items based on object and action (1941ad2d)
- upgrades:
- views:
- implemented helper view to handle entity icon upload (f13192a9)
- control the list item view for lists (a39892bd)
Performance
- activity: improved performance of group river filter (dbfdbd6a)
- composer: plugin autoloaders are registered after core autoloaders (925c5830)
- plugins: store path in local class variable (5614d315)
- upgrades: no longer check filesystem for need to run upgrade (94248fbc)
- views: elgg_list_entities will default preload owner and container (6c84c8b7)
Documentation
- upgrade: simplify the upgrade docs (7d86f85c)
Bug Fixes
- activity:
- correctly select group activity (13ac5617)
- group activity uses QueryBuilder instead of sql (6f7cbb56)
- admin: allow removal of hidden users by admins (4630e3a7)
- annotations: no longer update entity last_action on annotate (a85293eb)
- blog: group archive using correct options (2cd9766c)
- blogs: only generate archive menu for supported pages (3f9b07ea)
- bookmarks: restored the footer menu item to bookmark a page (e1214612)
- ckeditor: require correct build of ckeditor (59eb753a)
- comments: ajax loaded comments list updates correctly (b57f26d2)
- core:
- serve file with spaces no longer fail with HMAC mismatch (39c3b97a)
- entity delete will correctly delete owner/container entities (62ab9800)
- discussions:
- river items get correctly updated to comments view (9697d74e)
- do not show entity navigation on full view (f17d1fed)
- docs: display all code examples with syntax highlighting (30db1053)
- file: don't use legacy group module extension (129a5b02)
- groups:
- allow group icons to be removed (2b990059)
- group members page not sorting by name (baa9f684)
- provide correct subtype to title menu button (54583645)
- icons:
- correctly report icon delete result (75fe08e0)
- cropping logic is now controlled by config settings (78a1b5de)
- correctly set max-width and max-height on avatar icons (a88c2394)
- easier targeting of different styles of fontawesome icons (febc999f)
- js:
- trigger a custom event for FormData preparation (d2200de5)
- no longer rotate content on ajax reload (3e1c2911)
- page/components/tabs JS supports all links (4d2ee70c)
- likes: correctly replace menu item content (603d8f05)
- menus: sort site menu by menu item text (2776ea0e)
- messages: no longer strip HTML from notification (cbb9ec62)
- navigation:
- breadcrumbs set correct value for empty links (cbafe2c1)
- make navigations/tabs view support BC tab params (20bee03e)
- incorrect detection of selected menu items (4b8e1a79)
- decouple tabs.js from html position (bf263b7a)
- use ElggMenuItem rendering for tabs (88bc8f4c)
- added helper class for parents of selected menu items (3b45c0e0)
- output: no longer output empty classes with elgg_format_element (a4353e95)
- plugins: reduce callstack and optimized cached for boot plugins (241a74df)
- rss: correctly check if rss is disabled in config (cd58cc72)
- schema: restored lost subtype index on entities table (07cd4557)
- search:
- allow passing of variables to search result view (d80684c1)
- improved normalization (#12210) (9ffefc36)
- pagination no longer rebuilds search params (461c07f6)
- allow custom sorting (05093512)
- use correct params for search_type menu items (59e36ad5)
- prevent duplicate subtype registration (abbfae14)
- allow entity views to use default search entity view (cca3b8a9)
- correctly set subtitle in default search entity view (99a8fb79)
- determine search entity view based on entity viewed (702a3a89)
- tests: correctly test Ajax.objectify (68ff2bf8)
- thewire: load correct wire posts for thread (3d03ac5e)
- views:
- set no results in vars when no_results is true (ca48d675)
- improved allowed output values in a module (709e2e72)
- correctly handle non-default list type in entity listing (6923ebbb)
Deprecations
3.0.0-rc.1 (2018-07-24)
Contributors
- Ismayil Khayredinov (102)
- Jeroen Dalsem (84)
- Jerôme Bakker (74)
- Hao.Chen (1)
- Ismayil Khayredinov (1)
Features
- accounts: adds new account registration service (022e26fa)
- actions:
- controllers/middleware can now share parameter validation state (deb8e3e6)
- adds API to easily ajaxify form submission (8ca2698c)
- register, user hook now includes all request data (f0161ae4)
- deprecate action hook in favor of action:validate hook (428d6669)
- ajax: adds elgg/Ajax#forward method (7fd6e577)
- app: consistent handling of requests and responses (af785ffc)
- assets: composer asset plugin no longer required (884379e3)
- blog: added archive sidebar to friends listing (866e5ab4)
- caches: add Redis statistics to the admin UI (3e6f804a)
- cli:
- comments: the comments form is collapsed if there are comments (c168a45d)
- core:
- added a private settings preloader (eefdcd0d)
- persistent login table records get removed after expiration (9d13932e)
- added easy way to add default notfound text to listings (64aabbb8)
- cron: log cron output to file (114890f1)
- css:
- centralized z-index css rules (6575fd2b)
- set body background color via CSS variables (6f4823f5)
- data: normalize data exports and serialization (4e70b843, closes #8708)
- db: query builder now supports EXISTS comparison clause (eebaaeb2)
- developers:
- screen logging is now written to file (12644880, closes #10787)
- add Services inspector (f2544321)
- allow extending theme sandbox form preview (b3fd5bc1)
- entities: get_entity_dates support all ege options (57ab421b)
- forms:
- option to not show 'Only friends' in userpicker (e06372ea)
- default all POST forms to multipart/form-data encoding (6f95cc1d)
- friends: added add/remove friend action to title menu (b0069a6f)
- groups:
- edit/delete links now show in group entity menu (f860a2a5)
- improve usability of group tools (aa3f36f7)
- replaced group owner transfer with userpicker (e8814f89)
- hooks: added elgg_trigger_deprecated_plugin_hook (8ee35234)
- icons:
- allow use_cookie param to be passed through getIconURL (abc2f342)
- upgrade FontAwesome library to 5.x series (d679f4ea)
- replace ajax gif loader with css animations (c3d12615)
- imprint: allow passing additional imprint elements to summary view (6d8906ad)
- input: added input/objectpicker and input/grouppicker (3f32c53b)
- logger:
- menus: wrap menu items as collections (5e96d864)
- messages: add helper functions to get sender/recipient (14fe0bdc)
- navbar: properly handle second and third level child menus (4a7d2088)
- navigation:
- entity_navigation menu items now are aware of entity (b609be0f)
- added icons to site menu items (1ddb25f5)
- output: adds HTML formatting service (5d1d94a4)
- plugins: plugins can now define a bootstrap class (20180468)
- request: add public API to retrieve all request parameters (6494dd92)
- router: allow HttpException to have context (3aeecd08)
- seeder: seeders can now use progress bar helper (3845cd55)
- session: delay session boot until all plugins are loaded (dd81b847)
- simplecache: allow specifying custom simplecache path (f0c47749)
- upgrade: upgrade service now uses promises (aa85cf99, closes #11888, #11825)
- user: remove persistent cookie data when removing user (be055496)
- util: adds API for managing collections of items (efbdf71b)
- views:
- simplefied redering object summary in full view (6d15b06a)
- added ability to control layout attributes via view vars (54278764)
- widgets: control widget availability by setting a required plugin (3335b30b)
Performance
- core: load plugin data cache before requesting plugin data (03383bca)
- entities: entity preloader now correctly fetches entities (c379dcd1)
- metadata: also store entities without metadata in metadata cache (b291c149)
- migrations: improved performance of migrations (4f00e31e)
- privatesettings: getting a single settings uses cached data (21be3e89)
Documentation
- composer: document Elgg installation using composer (62c7cdf6)
- core: updated function docs to mention metadata casts bool (437a152b)
- i18n: added instruction for translating special docs syntax (2e544f60)
- plugins: explain Composer support for plugin development (bfc1d64d)
Bug Fixes
- actions:
- registration failure no longer leaves behind partial users (2548a709)
- invokable classes can now be used as action controllers (4d586960)
- ajax: correctly report HTTP errors (b0f48470, closes #11911)
- blog: auto save draft refactored to use Ajax API (00ab2a3f)
- bootdata: correctly order plugins when loaded from bootcache (e59c80f6)
- cache:
- do not mutate config on temporary system/simple cache disable (fd6edf1f, closes #11954)
- refuse to cache unsaved entities (742e28fd)
- caches:
- ckeditor: site background should not affect the editor (7902eb99)
- core: delay setting last action for users (a6ebfe03)
- css:
- don't let elgg-badge influence text alignment (b22cfc8c)
- added margin to elgg-menu-hz items (6c7689c1)
- lightbox loader now matches ajax loader (0f155247)
- reset fieldset min-width (62b13352)
- apply hover-card menu section styling consistently (f32cf115)
- added bottom margin to fieldsets with a legend (a69a35c8)
- db:
- default ordering of entities relies less on internals of MySQL (16682c2c)
- query counter also counts QueryBuilder queries (054b4af8)
- developers:
- prevent missing language key notice recursion (a46ddce0)
- prevent 'view not found' deadloops (7846efac)
- register custom logger only in default viewtype (a79f8dbe)
- leave system logging intact (5ea40d7a)
- forms: improve appearance of file input with value (7ff6f165)
- group_tools: getting all tools is also passed through hook (080a8ed8)
- groups:
- correctly resolve tools when populating form vars (1b7a755e, closes #12049)
- respect subtype specific permissions in group modules (3bd90073)
- don't allow content access outside of group scope (435d237c)
- entity gatekeeper should respect entity access (94402127)
- correctly register site menu item route (77062a27)
- remove excessive info from group listing imprint (a7d6f17c)
- i18n: correctly load plugin translations when caches are off (4a561903, closes #11916)
- icons:
- also check default view if subtype icon is not present (e7f36c54, closes #11908)
- align use of hyperlinks in nentity icon views (d3a2b548)
- installer:
- js:
- userpicker now works in lightboxes (797d69fb)
- prevent event bubbling up when requiring confirmation (c6fa5de2)
- layouts: filter part of the layout can be disabled (a4840f6c)
- longtext: do not render empty tag if there is not output (d58e0cdc)
- members: correctly add menu items to filter tabs (83789995)
- menu: correctly auto-detect selected menu items (7a02a600)
- menus:
- remove extraneous margin from site menu (ad1e17af)
- consistent handling of child menus across navigation system (1793f51b)
- output: only escape values that are strings (11d3e207)
- perm: allow ownership if editing is allowed (c5bfb6de, closes #11213)
- plugins:
- fetch priority directly from private settings (67bc0ca5)
- dependency notice was missing some text (df21f777)
- avoid multiple executions of runtime logic in plugin files (7a54ef6d, closes #11946)
- profile: set page_owner_guid if no username is set (30365150)
- qb:
- search_name_value_pairs now work as expected (a490255b, closes #12068)
- correctly normalize private settings prefix (7c12b629, closes #11739)
- use correct aliases in query predicates (d6c3a5bf)
- set table alias when querying entities table (fe8ccc62)
- preserve 0 guid when normalizing query options (85d8023a, closes #11992)
- router: correctly detect if request body has been truncated (6bde4f9e)
- routes: defer route and action registration until plugins are loaded (2a2c1e46)
- search: consistent behaviour for search (57f67578)
- tests: corrected return value in getAllForEntity mock (e26c5b71)
- theme_sandbox: make sure dummy users have usernames (95052728)
- thewire: corrected delete actions (7a5991d0)
- upgrades:
- users:
- correctly register user as searchable (1f582ed6)
- avatar menu js is no longer blocking link only avatar icons (a2ef492a)
- get user by username or email is case-insensitive (00747e8c)
- views:
- boot core views before plugins are loaded (5bd26442)
- allow scalar values in output/text (13d7656e, closes #12081)
- correctly handle text input for output/url (af8a2736)
- online users now show no results text if noone online (2c472596)
- make sure the AMD ViewFilter is always applied (1d7905cc)
- do not render empty listing navigation (3365d51d)
- do not render image block if object summary is empty (0ccfb8bd)
- widgets: show a no results text if there are no banned users (5c503eca)
Deprecations
- core:
- get_entity_dates replaced by elgg_get_entity_dates (2e8b0530)
- elgg_list_registered_entities is deprecated (86c13cef)
3.0.0-beta.3 (2018-03-08)
Contributors
- Jeroen Dalsem (38)
- Ismayil Khayredinov (29)
- Jerôme Bakker (14)
Features
- actions:
- it is possible to return a response in the action hook (562eb031)
- individual actions are now routes, support controllers (32a07bc0)
- ajax: add support for FormData and multipart form data requests (46590359)
- cache: added api to remove single item from systemcache (7da2f561)
- di:
- add config to public services (6d1bd17b)
- add system messages to public services (65b8140f)
- add hooks and events to public services (a9fbebca)
- add translator to public services (b46e11f1)
- make gatekeeper a public service (8d19fc42)
- make session a public service (5ca2ff8b)
- forms: added not-allowed cursor to disable input elements (cc09c77d)
- input: longtext editor opts now store required status (fae01474)
- plugins: added a settings field that triggers cache flush (d18c0310)
- profile: the user profile page now uses a regular title menu (57efaa5f)
- route: add support for handling routes using files (c4fafb3b)
- router: add support for controllers (11f84355)
- routes:
- elgg_generate_url returns false for unknown routes (6421c422)
- add support for route middleware (0f199324)
- system_log: refactor system log API into a service (c5846aa8)
- widgets: ElggWidget now has getDisplayName instead of getTitle (12455356)
Bug Fixes
- actions:
- fixes error message on missing action file (554c2e2e)
- defining controller in static config works again (2622fd1e)
- admin: correctly set action path for settings forms (5a021d7d)
- core:
- canComment now returns false for ElggSite entities (6f2a2edb)
- directly call EventsService in shutdown function (48d74a65)
- make sure minusername and passwordlength are always in config (ec3b4e94)
- css:
- make sure jquery positioning has correct information (290aeee3)
- correct behaviour of elgg-level in all browsers (258e9d36)
- walled garden background correctly positioned in IE (a527ebdd)
- set correct margin on admin content layout (5accfeaf)
- only apply module header font color to first level elements (c180b203)
- correct alignment of pageheader and module header elements (5fe78207)
- email:
- add sender to Zend mail message envelope (58c1fdea)
- always default to site email (23ffef3d)
- embed: make embed route pattern greedy (4346ea9b)
- forms:
- switched styled checkbox without label now is clickable (2d2c79c5)
- select alues are now correctly selected with array elements (d2dcb978)
- userpicker works again when friends constraint is set (a4d80c58, closes #11697)
- groups:
- show group dropdown at correct position (a781f1dc)
- only show toggle indicator if there is a submenu (6aa05764)
- js:
- ajaxed login form now correctly returns to REFERER (605089af)
- close system messages when opening a lightbox (67ed9a1e)
- navigation: metadata and river menu sections are positioned inline (30b90d00)
- notifications: set correct subtype for user notifications (6e30ceac)
- profile: custom profile fields can be saved again (2d773027)
- river: core should register the river/delete action (0a4956a4)
- system_log: correctly extend login_history view to settings (1543c201)
- views: numentities statistics view correctly gets user entity (3de7dca2)
3.0.0-beta.2 (2018-01-31)
Contributors
- Jerôme Bakker (5)
- Ismayil Khayredinov (2)
Features
- db: use public service container for database operations (4015b8ce)
- di: plugins now have access to DI container (8cdff630)
Documentation
- release: updated release docs (d035c9d6)
Bug Fixes
- activity: use correct route name for owner_block menu item (989eb5b2)
- cli: correcly load Elgg in cli (aecd6df7)
- views: correctly register core views (82423b30)
3.0.0-beta.1 (2018-01-29)
Contributors
- Jeroen Dalsem (268)
- Ismayil Khayredinov (180)
- Jerôme Bakker (133)
- Steve Clay (123)
- jdalsem (56)
- Juho Jaakkola (7)
- Ismayil Khayredinov (3)
- iionly (2)
- Juho Jaakkola (1)
- Phanoix (1)
- Wouter van Os (1)
- Yaco (1)
- piet0024 (1)
- raghukul01 (1)
- sebz (1)
Features
- access:
- account: allow admins to change usernames of users (2bcecfd0)
- acl: added subtype to access collections (450aaa4c)
- actions:
- added $CONFIG->action_time_limit to set a custom execution timeout for all actions #7204 (3682a3c6)
- user login action now is ajaxed (82d40345)
- added the ability to configure actions in elgg-plugin.php (299df3cd)
- activity:
- moved group related pages into the activity plugin (f8f2ebd3)
- options for river filter can now be provided as view_var (04888ae4, closes #9918)
- admin:
- blog:
- use best practices in rendering resources (55f8d95b)
- archive sidebar is now using a menu to show archive links (06e7c499)
- bookmarks: update bookmarks plugin to comply with best practices (49e4c7ff)
- cache:
- ckeditor:
- updated to full ckeditor v4.7.3 using composer (dbedc19b)
- changed style of editor to be more minimalistic (5c19b59e)
- cli:
- allow to set dbhost with CLI installer (b452f750)
- adds elgg-cli seed and unseed commands (ded471f1)
- adds elgg-cli command line tool (65007269, closes #6612)
- collections: rewrite friends collections, friendspicker (ec40d1a5, closes #9092, #9026)
- comments:
- comments are configurable per entity (c407af05)
- submitting comments is now ajaxed (c875b2ce)
- offloaded comment creation notification (78a60a62)
- components: a menu can now be added to module header (cd7ea08a)
- core:
- only show language selection if more than 1 option (4eb7ab36)
- elgg_get_config supports a default value if config not set (6693b8ad)
- added config to disable RSS feeds and Elgg branding (e6ae6056)
- normalized system messages using elgg_view_message (1c64d898)
- added API for temporary ElggFile (89071ffe)
- orientation of uploaded images will be fixed if possible (a80306f4)
- added the ability to use Imagick as the image processor (a6629ec3)
- add phpinfo page (e8e45afa)
- autoregister simplecache views for elgg_load_js/css (57c29b6e)
- reworked the walledgarden layout (d73e59fa)
- cron: adds cron service (8941965d)
- css:
- switch to using variables in css files (d189a199)
- CSS is pre-processed by css-crush, all /cache output is filterable (e5ac8842, closes #10625)
- dashboard: only show blurb if there are no widgets (8a45cee7)
- database: plugins can now register their own database seeds (e167092d, closes #11129)
- db:
- rewrite metadata and annotation getters with QueryBuilder (74174e7f)
- rewrite elgg_get_entities* using QueryBuilder (1b80a963, closes #5071, #6798)
- database migrations are now managed by phinx (55236d98, closes #7947, #5442)
- new installations use utf8mb4 and longtext columns (5e75e7cf, closes #10863)
- developers:
- add route inspector (38372e26)
- theme sandbox now users core layout elements (b2af689a)
- added settings to block or forward email notifications (#11265) (5063d9db)
- discussion: replies have been moved to comments (9549d7e8)
- discussions: update reply form to latest forms API (98a6aaec)
- email:
- email address helper class for formatting (972a8906)
- support e-mail attachments (f6f9a025)
- more granular API for handling system emails (43709e79)
- adds a plugin hook to alter the contents of an email (c5642515)
- recipient and sender email address formatted (9c48ccc0)
- entities: denormalize entity subtypes (ed318565)
- events: Adds new handler API available for events and hooks (5f334783)
- file:
- remove elgg:file library (c54b88a6)
- default icon sizes are now available for new image thumbs (cb19affe)
- files:
- add download permission checks (fb8c3e04)
- update file plugin to new file serving API (1e736aeb)
- forms:
- fields can now render custom html (171e1b32, closes #10090)
- allow specifying a custom view for fields (ecfe4ac7)
- pass all vars prefixed with # to field view (99bb2d07)
- add time input, support DateTime values (25ddb36c, closes #11227, #7476, #4506)
- form_vars and body_vars are now available in the footer (b823e609)
- input/radio and input/checkboxes support options_values (908972c0, closes #6043, #3483)
- forms without a body will no longer output a form element (d29ce0b3, closes #8459)
- input/select now support optgroups (10bb273a)
- input/checkbox view support 'switch' styling (9be6f53f)
- input/longtext now support editor variations (5f3d6b05)
- buttons are now rendered with a <button> tag (fc680658)
- gatekeeper: implement stricter banned user checks (d0deb646)
- groups:
- improved group title menu and reorganized group stats (d611eeb5)
- clearer join/owner status and less prominent leave button (41fb03ea, closes #8872)
- added topbar menu item for pending invitations (82c60c99)
- added generic ElggGroup functions for tool availability (246db29f)
- consolidate API for joining groups (8d57dfd3, closes #10659)
- allow group invitations to be resend (7206894b)
- validate container permissions when creating a new group (8a3a8787)
- group metadata ownership in now in sync with group ownership (62a14f27)
- group ACL name is now always in sync with the group name (e758ef62)
- transfer icon files to a new location (adbc5198, closes #4683)
- update group listings to new layout API (22658ee5)
- htmlawed:
- now using htmlawed v1.2 with html5 support (43cf04cd)
- Expose plugin hook for spec parameter (9aebac50)
- i18n:
- added a function to retrieve available languages (8f9c1092)
- core triggers an event after translations are reloaded (56812eff, closes #8119)
- icons:
- large icons are now default upscaled and square (86c3a8ee)
- lazy generate entity icons on demand (29e92b67)
- make it easier to replace default entity icons (b1efd68f)
- input:
- show default help text about upload limit on input/file (a15a7ecf)
- Adds function to get HTML-escaped input (f1819935)
- install: installation changes (57ac75ec, closes #5871)
- js:
- added ability to register toggleable menu items server side (e974f3a7)
- all core js is now part of the views system (761a4bf5)
- lightbox href calls now uses elgg/Ajax (888969b7)
- labels: adopt entity and collection labelling convention (da1c1054)
- layout:
- alt sidebar width is now fluid (47a5e79a)
- alt sidebar no longer depends on sidebar (d20f2d9a)
- layouts: decompose and centralize layout views (2e52ed91)
- lib:
- lightbox: add responsive imageless lightbox theme (02b4a142)
- likes:
- like annotation access is no longer linked to entity access (ab7336b2)
- show likes in river for logged out users (10ef9b53, closes #10897)
- updates are page-wide and can come from any ajax response (96207369, closes #9698)
- listing: move access info from menu to byline (9f31969b)
- lists: list component view now handles all data types (7b7d3349)
- members:
- added admin link to create new user on members listing (1e6b6a68)
- added members tabs to member search page (27274acd)
- use filter menu and resource views for the pages (f4b780ab)
- menus:
- set default menu order to priority (8b355878)
- standardized usage of entity menu and added a social menu (f7e881db)
- added icons to user hover menu items (ffa267d0)
- consolidate child menu behavior and UI (24218e39)
- anchors now support icons and badges (0af43627)
- messages: message presentation uses standard summary/full views (87a8e834)
- messaging: improves admin notices and system messages (28d297f1, closes #10917)
- navigation:
- added view vars to toggle entity/social menu (07b87da0)
- added icon to generic add title menu item (239f65ee)
- breadcrumbs is now a menu (b6ba0435)
- notifications:
- target URLs for notifications are now set explicitly (1b73ed89)
- rewrite notification settings interface (22afc923)
- output:
- passing href false sets href to javascript:void(0) (951d5239)
- inline rendering of tags (12af7270)
- pages:
- use best practices in pages plugin (3040b569)
- migrate page_top subtype into pag (e88b5707)
- replaces inline js with an AMD module (362855d6)
- some improvements to resource and form views (cb4f2733)
- Combine search results output of top pages and subpages (109923ef)
- permissions: permissions for admin users or with ignored access are now universal (d5c9fdf7, closes #7999)
- php: require PHP 7.0 (7aa2b370)
- plugins:
- use elgg-plugin for entity class and search registration (4e088246)
- widgets can be added using elgg-plugin.php (a26c5d5a, closes #10348)
- set default (user)plugin settings in elgg-plugin.php (a8779635)
- autoload plugin composer autoloader (ff63f9b8)
- plugins no longer require a start file (8a8a0283)
- moves UI of friends and activity to plugins (1a923804)
- profile:
- river:
- remove type/subtype and access columns from river table (861c20d3, closes #11346)
- creating a river item defaults subject_guid to current user (6426cdd0)
- elgg_view_river_item has a fallback logic for view (1c91f716)
- elgg_delete_river checks permissions and fires events (892cbee3)
- router: adds routing based on URL templates (9fbd4a84, closes #4820)
- routes:
- adds gatekeeper service (dbff5bc8)
- use named routes in web_services (f7a27b62)
- use named routes in embed (bf333ee6)
- use named routes in uservalidationbyemail (065e80fc)
- use named routes in thewire (cd1cb11f)
- use named routes in tagcload (10d6d5a4)
- use named routes in site_notifications (b69e5cbe)
- use named routes in search (6f085cd8)
- use named routes in pages (3abd9cd2)
- use named routes for notifications (60daa1d4)
- use named routes for messages (6073279d)
- use named routes in messageboard (11ee1ed6)
- use named routes in members (e7d970a9)
- use named routes in invitefriends (c07ddf27)
- use named routes in groups (adc4d1ab)
- use named routes in friends_collections (ba3880ea)
- use named routes in friends (821b4a29)
- use named routes in expages (63c5d7a8)
- use named routes in developers (486f0906)
- use named routes in dashboard (effdd372)
- use named routes in bookmarks (64075726)
- add utilities for setting breadcrumbs (18e9aecc, closes #10818)
- use named routes in core (f04c3925, closes #9126)
- search:
- security: add security settings page (a7ab8ecb)
- site: added class function to get site email address (fe005ba5)
- standards:
- system_log: move system log to its own plugin (39401bee)
- tests:
- travis now also test on PHP 7.2 (5089dcb7)
- migrate simpletest suite to phpunit integration tests (0c2c756f)
- adds integration and plugin testing bootstrap (471de772)
- adds elgg-cli simpletest command (7b2d459b)
- theme:
- ui: new layout of user hover menu contents (6fe6b2ad)
- upgrades: Introduces a new upgrading feature (6e221f0e)
- users:
- added generic unvalidated users page/actions (faa8fe1c)
- added a default page handler for viewing users (962b3a4a)
- trigger events for user (in)validation (3b4fcbb2, closes #10576)
- vendor: jquery-treeview is now bundled in core (a3cf8272)
- views:
- output/date & output/time are now wrapped in a time element (3d348429, closes #11576)
- friendly time switches to date format after a few days (85abca36, closes #9897)
- object/elements/imprint/time now support a href on the time (7db48117)
- added a default hook callback to prevent view output (3ede3073)
- view extensions are handled as normal views (f35b6118)
- added a generic entity navigation view for full views (ccb9a74f)
- added option to hide the owner_block menu (bb7b31c6)
- a more flexible extendable html page shell (550aeb89)
- make layout header responsive (f3109ec4)
- add attachments and responses to full object listing (7808db76)
- input/password only populates value if explicitely set (cde67a2c)
- walledgarden: router now respects walled garden policies (e71784d2, closes #7235, #9881)
- widgets:
- using input/number to select number of displayed items in widget edit views (a60da40a)
- widget titles are linkable (8a850486)
- adding widgets now opens in a lightbox with more info (dc1e84fe)
Performance
- config: removes config "siteemail" value (05184ae2, closes #9096)
- entities: no count query if no pagination in elgg_list_entities (dae5566a, closes #9403)
- metadata: memcache most metadata (01074610)
Documentation
- i18n:
- Adds instructions for setting up Transifex for new major Elgg version (803bd5ad)
- Adds instructions for pulling translations from Transifex (a18f24a8)
- plugins: describe the steps to move a plugin to own repo (9b3a8ee7)
Bug Fixes
- cache: remove trailing slashes in cache symlink paths (1e05f24e)
- ckeditor: fixes basepath issues on some systems (a5097efc, closes #10724)
- core:
- get_registered_entity_types now returns empty array for type (cc14cb0e)
- clear entity temp_metadata before setting a new value (8bd1b296)
- unsetting metadata from unsaved entity now works (67203cc1)
- elgg_http_add_url_query_elements keeps '//' protocol intact (c53d5c6d, closes #9874)
- error pages respect walled garden pageshell (0312852a)
- favicon.ico page handler now serves an icon (d8ce2235)
- gatekeepers now forward with a 403 reason (94ca91f2)
- cron:
- cron/run endpoint calls intervals reliably (9c37d927)
- log correct completed time in cron monitor (e4a66193)
- css: elgg-body elements no longer clip form and positioned elements (afb99a20, closes #5197)
- db: add missing subtype index to river table (61747836, closes #10896)
- developers: exclude view wrapping for results from the cachehandler (d8ff5c39)
- discussions: fix comments URL fragment (c2a781f2)
- embed: correct replace icon size with a non thumbnail size (f0616d8e)
- entities: memcache no longer returns disabled entities (78d20ac2, closes #10970)
- expages: don't log notice if pages aren't created (cdc28968)
- file: display owner icon in file summary of the full listing (42898271)
- forms: input/checkbox now applies disabled to hidden default value (d3ea2025)
- groups: ensure that user has sufficient permissions to update group_acl (49fed9b6)
- http: Use Symfony to parse PATH_INFO (822696b9, closes #10608)
- i18n:
- fallback to site language before English (e9f5d9d3)
- set language via GET var works for client-side translation (ee023ef1)
- input: better handling of invalid UTF-8 characters (2283a289, closes #5790)
- install: don't block install if can't make internal requests (591c2806)
- installer:
- sanitize dataroot before writing to settings file (0eeb141d)
- fix installer and add tests (baa7040d, closes #11433)
- js:
- popup showing in wrong location in Opera (164ae44c, closes #6452)
- hook trigger calls handlers in expected priority order (1b0cc64d)
- menu: load AMD dependencies for the user_hover menu on load (39d2ef20)
- menus:
- allow rendering entity menu without a dropdown (ff791563)
- menu items will always output an anchor (cba37560)
- provide admin link in case JS fails (948e3bd6)
- metadata: warn devs when saving data longer than column holds (eef89d26, closes #10861)
- navigation:
- assume default filter if filter value is set without id (38df55f0)
- correct container set on title menu button (77c8f001)
- notifications:
- pass correct params to Email class (a5ef05ad)
- fixes banned user notification language/name (065b8496)
- no notifications about private content (075d2615)
- plugins:
- load elgg-plugin.php after classes and translations (0397c91b)
- start.php is now only required once, other plugin files included as requested (875ff66c)
- unfreeze plugin list after (de)activate no plugins (939adff4)
- river: populate type and subtype of the river object (101d0b74)
- search:
- validate comment ownership in format hook (b39bbc2c)
- search fields are now reset for typeless search (4f305de0, closes #11483)
- upload: only prepare files if uploaded (3c6c8f76)
- uservalidationbyemail: email sent page respects walledgarden shell (b972b0d2)
- views:
- clean up of class attribute usage (6b3edaf2, closes #11468)
- do not wrap tabs in a heading (fb80a68a, closes #10764)
- output/tag shows text if there is no href present (e7dfa2a0)
- owner links in by line now always point to user (2a70902b)
Deprecations
- breadcrumbs: breadcrumbs now use href instead of link (6e7235a2, closes #10345)
- core:
- the use of the function create_metadata is deprecated (a60ed182)
- the use of the update_metadata function is deprecated (fb97d13a)
- removed the site_guid entity attribute from datamodel (45b2dcc4)
- metadata: removed independent metadata functions (#11086) (d82b9e1d, closes #11075)
- plugins: no longer use getFriendlyName in ElggPlugin (69976069)
Breaking Changes
- The legacy_urls plugin is no comes bundled with Elgg, if you need it load it as a composer dependency.
fixes #11097 (a3cf1141)
- The pagehandler for reportedcontent has been removed in favour of using an Ajax form view. This can cause problems when loading JS is slow. (8edbceb1)
- dropped the expages page handler (63c5d7a8)
- If you extended the usersettings form by extending the view 'forms/account/save' you should update to extend 'forms/usersettings/save' (5c0b8e5e)
- The unvalidated users page and some actions have been moved to core and are no longer present in the uservalidationbyemail plugin.
fixes #4561 (faa8fe1c)
- The
elgg:bookmarks
PHP library and bookmarklet GIF were removed. (5d4d66f4)
reverse_order_by
in $options is ignored. (f1555502)
- HTML of system messages have been changed so they are reusable as inline message boxes. (1c64d898)
- The groups specific function 'groups_get_group_tool_options' has been replaced with the generic 'elgg_get_group_tool_options' function. (246db29f)
- The view
object/widget/edit/num_display
now uses an input/number
field instead of an input/select
field to set the number of displayed items. Widget edit views might need to be updated if a custom max number (higher than default_limit or 20) is used or if a custom stepsize of selectable item numbers is wanted. (a60da40a)
- The subtype 'page_top' has been removed from the pages plugin. All top pages are migrated to the subtype 'page'. Related views and helper functions have been dropped.
fixes: #11329 (e88b5707)
- The group metadata has been removed in favor of a access collection subtype. (450aaa4c)
- use the
upgrade
, system
event instead
ref: #3655 (eeb21271)
- The create_metadata_from_array function is no longer available. Use your own foreach loop to create multiple metadata fields. (caf22201)
- The users_entity table no longer exists. Update your queries if needed. (3d5901a4)
- The elgg_get_entities_from_attributes function is no longer usable to get entities based on attributes. (2483b670)
- The objects_entity table no longer exists. Update your queries if needed. (19926b38)
- The groups_entity table no longer exists. Update your queries if needed. (67eaae29)
- icons are no longer generated buring upload, but on demand. On demand generated icons are based on master not on an original file. (29e92b67)
- The sites_entity table no longer exists. Update your queries if needed. (74663893)
- The file_delete function is no longer available. Take a look at ElggFile->deleteIcon for an alternative. (55352578)
- Switch to PSR-0 registration of classes or use composer autoload to register classes.
Fixes #9753 (5b8beafa)
- The
groups:my_status
menu is no longer available. Register your menu items somewhere else. (68e4eec7)
- The twitter_api plugin has been moved to a separate repository which can be found at https://github.com/Elgg/twitter_api The plugin will no longer be actively maintained by the Elgg core team.
fixes: #5927 (a1c5a1bf)
- Admin menu items and some admin menu item views are no longer present or have been moved to other locations. Update usage accordingly. (0809709c)
- The extras menu is no longer used. Register your menu items to other menus.
Fixes #7729 Fixes #8718 (b62d6247)
- The profile/status view is no longer called. You can extend/prepend the profile/fields view if you need a similar feature. Thewire is no longer adding the last wirepost to the profile. A wire widget could offer similar features. (47741728)
- As widget edit forms could not be on the current page it is a bad practice to rely on widget config values to be always available. This PR corrects this behaviour. If you override core widget content views you may need to update these views.
Fixes #10244 (98c96b60)
- Instead of a span with class elgg-non-link now a regular anchor will be outputted with the class elgg-non-link (cba37560)
$CONFIG->input
is no longer set or read. Use set_input
/get_input
. (1e7192b8)
elgg_get_admin_notices()
accepts only an array. (28d297f1)
- Plugins can no longer rely on Elgg to "hide" metadata in queries. All metadata is assumed to be public. Plugins that read user profile fields in metadata will see all fields every time, and plugins that write user profile fields in metadata will have no effect. These plugins should instead access fields via annotations; see the profile edit actions and forms for reference. (2567640d)
- View
river/item
is removed. Use elgg_view_river_item()
. (313585a0)
.elgg-body
elements by default no longer stretch to fill available space in a block context. They still clear floats and allow breaking words to wrap text.
Elements matching .elgg-module
, .elgg-head
, and .elgg-menu-hover
no longer hide overflowing content. and those matching .elgg-image
, #profile-owner-block
, and elgg-sidebar
(inside layouts) no longer float, but are now positioned with flexbox. (afb99a20)
- Entities no longer have an
isFullyLoaded()
method. (231be2aa)
- User icons no longer include a
hover-menu
icon that's displayed on mouseover. The click event is bound to the surrounding anchor. (7601f863)
elgg_format_url()
has been removed. Use elgg_format_element()
or the "output/text" view for HTML escaping. (db746843)
- The view invitefriends/form no longer exists (d322bbb6)
- Metadata and annotations name and values are no longer normalized. Metastrings related functions have been removed. (53fec72e)
- The datalists table functionality has been merged into the config table. Related datalist functions have been replace by their config equals. (adcc4974)
- Because of the removal of the multisite concept in entities, this relationship makes no sense.
Fixes #10473 (41ffbd9f)
- To be able to still provide support for MySQL 5.5 combined with InnoDB the FULLTEXT indices have been dropped. This effects how search works internally. (44d987a5)
- This breaks a lot of site_guid related features, like all the elgg_get_entities functions. Entities will no longer have a site_guid attribute.
See http://learn.elgg.org/upgrading#Elgg3.0 for more details on all the deprecated features regarding this change (45b2dcc4)
- If you were relying on group entities attribute 'username' you need to update your code, as this attribute will no longer be magically returned as 'group:<group_guid>'. (d562efbf)
- If you rely on a class check for your content, please use the PHP instanceof type operator (ca56d46d)
- This function can no longer be used. Use Elgg\Upgrade\Batch interface instead. (39455bd9)
- Stock Elgg does not need these files. If you need them, you have to adapt the config accordingly. (1f65142e)
- The event
login, user
is removed. (461e5e76)
- You can no longer use the
system, pagesetup
event (353d522a)
- This change applies the best practice to not populate password fields. If you really need to set the value of a password field, you need to set $vars['always_empty'] to false. (cde67a2c)
htmlawed
is no longer a plugin. See docs/guides/upgrading.rst
. (da14997a)
messageboard.js
and elgg.messageboard
are removed. The elgg/messageboard
module is no longer inlined on every page. (4c8c7b68)
likes.js
and elgg.ui.likesPopupHandler
are removed. The elgg/likes
module is no longer inlined on every page, but is required by its menu items. (0121cee7)
- The
password
and hash
columns are emptied in the users_entity
table and no longer used. The attributes are removed from ElggUser
. The function generate_new_password
is also removed. (200cf6e7)
- In
elgg()->getDb()
(the public DB API), method getTablePrefix()
is no longer available. Read the prefix
property instead. (a69ecc03)
- Elgg no longer serves views via the endpoints
js/
and css/
. Use elgg_get_simplecache_url()
to generate static view URLs. (6b0a4b89)
- ‘elgg_get_config('siteemail’)` no longer returns the site email address. (05184ae2)
$CONFIG
is no longer available as a local variable inside plugin start.php
files. (c2cd81d9)
$SESSION
is removed. Use the API given by elgg_get_session()
(99048a39)
- If you registered a hook on the forward you need to update your code if you checked for the 'admin' and/or 'login' reason (94ca91f2)
- To ensure your handler is called last, you must give it the highest priority of all matching handlers. To ensure your handler is called first, you must give it the lowest priority of all matching handlers. Registering with the keyword
all
no longer has any effect on calling order. (1b0cc64d)
- The pages plugin no longer renders the
input/write_access
view. (8075fdea)
- Removes
ElggFile::setFilestore
, ElggFile::size
, get_default_filestore
, set_default_filestore
, ElggDiskFilestore::makeFileMatrix
, and the global var $DEFAULT_FILE_STORE
. (618c79d3)
- The
resources/file/download
view is no longer used. (1e736aeb)
2.3.17 (2021-04-16)
Contributors
2.3.16 (2020-12-18)
Contributors
Bug Fixes
- ci:
- move PHPUnit tests from Travis to GitHub actions (55d6d893)
- move documentation test build to GitHub action (25f3f8a6)
- move coding style and composer checks to GitHub actions (5b8956dc)
- move lint checks to GitHub actions (eba126ec)
2.3.15 (2020-06-25)
Contributors
2.3.14 (2019-07-24)
Contributors
- Jerôme Bakker (3)
- Jeroen Dalsem (1)
Bug Fixes
- groups: no error on notification failure during membership request (2bd72ffc)
- http: check object for toString function (1cd0809e)
- installer: detect more https scenarios (05648781)
2.3.13 (2019-06-12)
Contributors
Bug Fixes
- blog: show correct last saved date (b888e7e1)
2.3.12 (2019-04-16)
Contributors
Bug Fixes
- widgets: improved stability of widget title (904eefc1)
2.3.11 (2019-04-04)
Contributors
- Jerôme Bakker (4)
- Ismayil Khayredinov (1)
Bug Fixes
- gatekeeper: more consistency in resource gatekeepers (60a045a3)
- livesearch: prevent PHP warning in switch statement (44e671d0)
- notifications: fix faulty subscription list mutations (0edb38d1)
- walled_garden: allow access to webapp manifest.json (73c36a13)
2.3.10 (2018-12-21)
Contributors
Bug Fixes
- js: input datepicker can be cleared using delete or backspace (54b76928)
2.3.9 (2018-11-14)
Contributors
- Jerôme Bakker (6)
- Ismayil Khayredinov (1)
- Jeroen Dalsem (1)
Performance
- entities: limit entity preloading by max entity cache size (7619c1f7)
Bug Fixes
- db: improved handling of duplicate relationship creation (418e6a81)
- developers: correctly register ajax view (c188342d)
- files: only try to generate thumbs for image uploads (36de95f3)
- output: correctly output non string tags (a2722ff2)
- security: tokenize outgoing no-reply email address (bed58cd7)
2.3.8 (2018-07-20)
Contributors
Documentation
- install: updated installation requirements (48de11e1)
- web_services: removed outdated webservices documentation (6372fa8b)
Bug Fixes
- core: revert original libxml_use_internal_errors value after use (#12008) (69c422c9)
2.3.7 (2018-05-24)
Contributors
- Jerôme Bakker (6)
- Ismayil Khayredinov (1)
Bug Fixes
- developers: set correct link to simpletest suite (b2b9c0b4)
- friends: check friendship relationship before change (ccd6fbbb)
- pages: order of parent page selector reflects tree (1e22a581)
- views: prevent unwanted information on user listing elements (2c74c2ac)
2.3.6 (2018-03-27)
Contributors
- Jerôme Bakker (5)
- Jeroen Dalsem (1)
Bug Fixes
- config: control bootdata plugin cache (60b15b76)
- db: correctly default subtypes to prevent PHP warning (c10a6a4f)
- memcache: use correct Memcache class (8b073aad)
- rss: correctly list comments (892672cf)
- views: listing of entities and river no longer count if not needed (ee6a043e)
- walled_garden: register plugin hook during init (f9880cbf)
2.3.5 (2017-12-06)
Contributors
Bug Fixes
- tests:
- correct validation of action path (232a87b8)
- correct registration of view path (950da0dc)
- incorrect filename for test registration (9af357be)
- moved incorrect registered test to correct location (ba7c894d)
2.3.4 (2017-09-21)
Contributors
- Jerôme Bakker (17)
- Ismayil Khayredinov (5)
- Steve Clay (2)
- jdalsem (2)
Documentation
- composer: explain how dependencies are managed in Elgg (f6b30d45)
- icon: use correct functions for saving entity icon (2e1b6a47)
- install: bootstrapping Elgg in Laravel Homestead (84399394)
Bug Fixes
- composer: no longer use deprecated class (d5e8acbf)
- core: correctly manipulate ini setting to return readable bytes (bc61a3b9)
- developers: incorrect header title link in theme sandbox (583badbe)
- email: improved formatting of email headers (cc590e6a)
- entities: batch count now works when $options already count set to false (62ecabed, closes #10992)
- groups:
- group delete button no longer misaligned (4bdf92d9)
- check for existence of custom icon before generating url (e6270945)
- plugins:
- only include plugin files once (49d4ce50)
- issue error about saving array values at correct location (ef753ebf)
- profile: now able to remove the first custom profile field (3d7258ec)
- river: comments no longer show full text in river (e0669219)
- simplecache: expires and symlinking cache works on nginx (fe220126, closes #9054)
2.3.3 (2017-05-16)
Contributors
- Steve Clay (9)
- Jerôme Bakker (4)
- iionly (2)
Documentation
- ajax: normalize code whitespace (e8437621)
Bug Fixes
- db: warn devs about sanitizing array values (0e7347b8, closes #10921)
- discussions: ajax reply form is again a textarea (cb77158b, closes #10936)
- forms: no label but normal text styling for checkboxes and radio input field options text (9fdaefeb)
- groups: group activity widget can be added as default dashboard widget again without error (1f468ac9)
- installer: now sees settings file in old location (be80d39e, closes #10942)
- js: set correct options for each individual lightbox (a82eab75)
- menus:
- log error if factory missing 'name' or 'text' (23f68fe2)
- fixes combineMenus() in menu service (b0708798)
- routing: no longer forwards to ajax/file service URLs after login (af6e2a68, closes #10695)
2.3.2 (2017-03-16)
Contributors
- Steve Clay (5)
- Ismayil Khayredinov (1)
- Jerôme Bakker (1)
- Matt Beckett (1)
Performance
- db: improved performance of disable/delete of an entity (5adf2ecf)
Documentation
Bug Fixes
- install: explicitly allow .well-known in rewrite rules (bb35cb9c)
- js: make sure elgg.forward() always reloads the page (c42b9c9c)
- output: elgg_normalize_url() again handles multibyte chars and spaces (62bf31c0, closes #10771)
- twitter_api: do not feed remote URLs to icon resize API (bad30edc)
Deprecations
- logging: removes warnings about metadata/annotation value casting (97b2b51f, closes #10749)
2.3.1 (2017-02-14)
Contributors
- Steve Clay (8)
- Jerôme Bakker (5)
- Jeroen Dalsem (2)
- Ismayil Khayredinov (1)
- Yanwei Jiang (1)
- iionly (1)
Bug Fixes
- access: use ignore access only when querying the database (fb57c02c)
- admin: prevents simultaneous plugin (de)activation/reordering (907c9b67, closes #10706)
- ajax: elgg/Ajax now uses spinner if 2nd fetch occurs in done handler (afef3c4e)
- comments: use elgg/Ajax to load inline comment form (17d93a5b)
- discussions: river entries are once again visible to logged out users (65e6664d)
- embed: Inserting medium thumbnail size again instead of small on embedding images (aea45030)
- html: elgg_normalize_url() handles tel: links (48a51709, closes #10689)
- icons:
- detect image format for resizing (dd9af8a9)
- set correct filename for temp resizing file (aeed7060)
- menus: return to default of sorting menus by text (9636790f, closes #10737)
- security: random byte generation improved on some systems (03285ba7, closes #10750)
- uservalidationbyemail: unset emailsent after showing it once (4e16cc9b)
- views:
2.3.0 (2016-12-27)
Contributors
- Ismayil Khayredinov (4)
- Steve Clay (3)
- Jerôme Bakker (2)
- iionly (2)
Documentation
- core: Improve docs about creation of cache symlink (f984a051)
Bug Fixes
- ajax: elgg/Ajax view() and form() set $vars as expected (abf8a9ce, closes #10667)
- core: Check existence of cache symlink without usage of readlink() (3e4dc6a1)
- entities: entity is now loaded from cache during save operations (009f74da, closes #10612)
- files: mitigate issues with special chars in file names (4a7b74ea)
- forms: fieldset with a legend no longer overrides the class (726cca18)
- http: elgg/Ajax error responses with 200 status use Ajax wrapper (1cae50cf)
- notifications: incorrect use statement no longer throws (2a6d782b)
- web_services: handle string params with proper escaping (702ce46c)
2.3.0 (2016-12-27)
Contributors
- Ismayil Khayredinov (4)
- Steve Clay (3)
- Jerôme Bakker (2)
- iionly (2)
Documentation
- core: Improve docs about creation of cache symlink (f984a051)
Bug Fixes
- ajax: elgg/Ajax view() and form() set $vars as expected (abf8a9ce, closes #10667)
- core: Check existence of cache symlink without usage of readlink() (3e4dc6a1)
- entities: entity is now loaded from cache during save operations (009f74da, closes #10612)
- files: mitigate issues with special chars in file names (4a7b74ea)
- forms: fieldset with a legend no longer overrides the class (726cca18)
- http: elgg/Ajax error responses with 200 status use Ajax wrapper (1cae50cf)
- notifications: incorrect use statement no longer throws (2a6d782b)
- web_services: handle string params with proper escaping (702ce46c)
2.3.0 (2016-11-09)
Contributors
- Ismayil Khayredinov (74)
- Steve Clay (34)
- Jeroen Dalsem (18)
- jdalsem (8)
- iionly (6)
- Jerôme Bakker (3)
- Ismayil Khayredinov (2)
- Brett Profitt (1)
- Matt Beckett (1)
- Pete L (1)
- V. Lehkonen (1)
Features
- account: login history is added to account statistics page (3e30ab26)
- admin:
- add memcache stats to server info page (6b19ced0)
- move plugin toggle buttons to title menu (5d75f6db)
- single plugin toggles done via Ajax (c46ccb80)
- makes it easier to navigate plugin dependencies (4caf7769)
- api: allow convenience methods to return ElggBatch as a result (5618d3c5, closes #6676)
- ckeditor: better control over ckeditor initialization and behavior (57ededb0, closes #9391)
- comments: entities can now inherit canComment permissions (b1614671)
- components: add inline tabs component with ajax support (4de1cd28)
- composer: brings back composer.lock (0b07d9a8, closes #9430)
- core: Use input/number input view for default_limit input field in basic settings form (3c6bce2d)
- css:
- input/button with disabled state is now styled as disabled (3aec56a6)
- elgg-state-disabled class now is applied to all buttons (bb70a507)
- developers:
- explorer entity information in developer tools (251f4067)
- add object full listing to theme sandbox (85b67b90)
- add object summary listing view to theme sandbox (878dbc8e)
- add custom attributes to image block sandbox view (92d86a67)
- entities: container logic is now checked before permissions (c87dc7d1, closes #9695)
- events: added elgg_clear_event_handlers function (110497b7)
- export: now triggers a generic to:object hook for annotation and metadata (5adc6771)
- files: adds new API for handling file uploads (09499677, closes #7778, #9876, #9934)
- forms:
- replaces elgg_view_input, adds support for fieldsets (100bd412)
- update login form to use new forms API (ef69171c)
- update registration form to use new forms API (5eb8ce25)
- adds input/number view for numeric values input fields (b7960635)
- makes form views extendable by deferring footer rendering (bbb392e0)
- groups: break down groups/all page in smaller views (c6de14c2)
- http:
- no longer sends HTTP headers to CLI requests (d95a5101)
- now triggers before and after events for HTTP responses (42839af3)
- adds API for handling HTTP responses (bfc860c8)
- adds a service for signing and validating URLs (15071018, closes #9884)
- images: adds a new image manipulation service (9dcd7fb2)
- js: add support for inline popup modules (e467a755)
- lists: list item views are now aware of their position in the list (9dab204b)
- menus:
- notifications:
- refactor notification system for improved usability (11dd562c)
- make it easier to alter core instant notifications (094d63b2)
- passwords: strengthen change password link with a HMAC signature (6ad8ff94)
- php: Require PHP 5.6+ (e35f3ed0)
- plugins: adds static config file for plugins (8bf14546, closes #5947)
- profile: profile fields can contain more than 250 characters (2b6a7497)
- river: Adds hook-based permissions for river item delete action (364d7e94, closes #8936)
- tests: make it easier to bootstrap PHPUnit (c3ea0173)
- users: unifies login and registration URL generation (9e499f6a, closes #9896)
- uservalidationbyemail: validation URLs are now signed with a HMAC key (111f72d8)
- view: function to get the extensions for a view (a0f39b3e, closes #9921)
- views:
- added elgg_parse_emails to output/longtext (c1a600ca, closes #7052)
- more flexible output/longtext view (6229f811)
- lists can be rendered as tables (d941fa83, closes #7684, #9629)
- adds function for extracting $vars['class'] more cleanly (b0dab038)
- object summary listing now accepts an icon (09649f57)
- image block wrapper attributes can now be passed with $vars (8f6a5753)
- improves usability of object listing views (8ae5b1da)
- walledgarden: convert walled garden JS to AMD (890b4a77)
- widgets: added a generic view for selecting 'number to display' (b845343f)
Performance
- db: no longer queries DB when entity access is predictable (5c93f07d)
Documentation
Bug Fixes
- cli: Application::run() returns a value for PHP CLI server to serve static files (a4fa2749)
- comments: comment redirector URL no longer contain double fragments (37f578e4)
- discussions: reply form is now only rendered when container permissions are satisfied (6ac48700)
- entities: classnames for entity subtypes can be up to 255 chars (45d7abbd, closes #6802)
- icons: cropping mode is now determined by actual cropping coords (5e4742e8)
- output: switch to Misd\Linkify library for parsing urls in text (e2baa855)
- pages: do not show duplicate title on full view of a page (a049586a)
Deprecations
- events: deprecates the
pagesetup, system
event (cf77fc07)
- metadata: metadata access control is deprecated (a9523d97)
2.2.4 (2017-01-27)
Contributors
- Steve Clay (2)
- Ismayil Khayredinov (1)
- iionly (1)
Bug Fixes
- ajax: elgg/Ajax view() and form() set $vars as expected (abf8a9ce, closes #10667)
- core: Check existence of cache symlink without usage of readlink() (3e4dc6a1)
- files: mitigate issues with special chars in file names (4a7b74ea)
- web_services: handle string params with proper escaping (702ce46c)
2.2.3 (2016-11-08)
Contributors
- Jerôme Bakker (5)
- Steve Clay (4)
- Ismayil Khayredinov (1)
- Jeroen Dalsem (1)
- jdalsem (1)
Bug Fixes
- blog: correctly check if owner is a group in owner_block menu (7f253c58)
- cache: ElggFileCache now handles arbitrary cache keys (e60b8368)
- ckeditor: ensure basepath is set before CKeditor is loaded (d60389d2, closes #10304)
- composer: composer post-update script no longer crashes (be4235a0)
- groups: multiple membership requests don't trigger messages (287e6448)
- js: bind to correct element for inline comment edit (e15cba9d)
- likes:
- notification subject too long (fc5667dc)
- check for a valid entity in menu setup (9ae99e84)
- profile: allow admin menu items to be toggled (ba20ce42)
- reportedcontent: show spinner during ajax delete/archive (5de1c90a)
2.2.2 (2016-10-02)
Contributors
- Jerôme Bakker (4)
- Ismayil Khayredinov (2)
- Juho Jaakkola (2)
- Steve Clay (2)
- Jeroen Dalsem (1)
- iionly (1)
Documentation
- events: prefered use of the shutdown event vs shutdown function (c62b307d)
- install: warn composer users they have to "install" twice (7c8fd239)
Bug Fixes
- css: apply hidden class to menu items (5281199b)
- i18n: validate the translation key (76d7ac69)
- mysql: adds MySQL 5.7 compatibility (3198d84a, closes #8121)
- views: no results listing output should show if empty item views (a3d4f8c8)
2.2.1 (2016-09-21)
Contributors
- Steve Clay (16)
- iionly (5)
- Ismayil Khayredinov (2)
- Wouter van Os (1)
Documentation
- license: clarifies dual licensing in LICENSE.txt (1db4994f)
- support: updates support policy and tentative release schedule (71aab2c6)
Bug Fixes
- access: updates no longer mistakenly blocked in some scenarios (01f4f1df)
- boot:
- boot cache now respects system cache setting (f90b1eb1)
- make sure boot cache updated when subtype data changes (c80f6e64)
- core: boot no longer throws DB exception in some edge cases (c7c44763, closes #10119)
- discussions: removes site "Discussions" menu item added in 2.2.0 (34678299, closes #9731)
- js:
- output deprecation messages to admins in browser console only (a8052f9c)
- popup no longer reopens after a second click on the trigger (6dc8012b, closes #10063)
- likes: don't emit notice if a listing's ‘$vars['list_class’]` isn't set (f2882158)
- members: Don't rely on newest members tab set as default tab in pagehandler for members page (a78aa354)
- pages: operations keep track of more than 10 child pages (bc5f414b)
- plugins: Make activate/deactivate all plugins to work also on Firefox (915865b9)
- reportedcontent: Reported Content admin widget works again (739259fc, closes #10151)
- river: ensure unique comment form id (80e508ae)
- ui: hover menus no longer open outside viewport (edd3740a, closes #10214)
- views:
- input/select view can select options more reliably (af103c7e, closes #10154)
- some functions that use views fallback to default viewtype (5a58317e, closes #10114)
- web_services: create_api_user() and create_user_token() work again (1ee8fe96)
2.2.0 (2016-08-05)
Contributors
- Juho Jaakkola (3)
- Steve Clay (3)
- jdalsem (2)
Features
- iconservice: it is possible to save unaltered version of an image (7157a33f, closes #9970)
Bug Fixes
- js:
- add missing elgg/lightbox#resize method (4f6a0174)
- correctly report success in admin profile field reorder action (b63396a7)
2.2.0-rc.1 (2016-06-16)
Contributors
- Ismayil Khayredinov (43)
- Steve Clay (37)
- Jeroen Dalsem (22)
- jdalsem (6)
- Wouter van Os (2)
- Brett Profitt (1)
- Jerôme Bakker (1)
- V. Lehkonen (1)
- lehkonev (1)
Features
- ajax:
- better elgg/Ajax handling of form data and URLs (8795b9f4, closes #9534, #9564)
- Ajax service now loads required AMD modules (292dc391)
- avatar: user avatars are now served by serve-file handler (a55d746a)
- cache:
- allow admin to attempt an automatic symlink to cache (b06a1cb3, closes #8639, #8638)
- allows specifying cache directory in settings.php (4b2ed514)
- ckeditor:
- improved elgg/ckeditor AMD module (a0ff70ec)
- added editor autogrow plugin (771abac8)
- allowed resizing of editor window (f43a6565)
- core:
- added a CONFIG flag to control auto-disabling plugins (17363a50)
- added a new function to check if system_cache is enabled (f3bbff32)
- cron: improved cron logging (5305b60d, closes #9474)
- db:
- access sql parts are named in the clauses array (50ffcf24)
- allows using parameterized queries in core DB functions (a9e51682)
- developers: add view_vars hook to views inspector (41e9e1ef)
- discussions:
- added a site menu item for discussion/all (79809b78)
- allow plugins to use custom discussion reply object class (ac55f8f4)
- embed:
- entities: adds user capabilities service (81f05058)
- file:
- files: update file plugin to new file serving API (a9d409ee)
- filestore:
- bootstrap default filestore early in the boot sequence (c85fa0ee, closes #9873)
- adds API to reliably set file modification time (476b6d29)
- forms:
- Add new user now has an option to autogenerate the password (ee4758d3)
- input/checkbox is now usable with elgg_view_input() (82bbf49b, closes #9808)
- gatekeeper: entity gatekeeper result can now be filtered (75af2fd5)
- groups:
- group icons are now handled by the new icon service (e809f5fd)
- introduced a hook to influence group tool options (b6617e5e)
- allow the group river to be filtered by content type (0d8f9364)
- group avatars now use serve-file handler (ac57e990)
- html:
- allows cleaner elgg_format_element usage (425f57d7, closes #9766)
- moves favicon registration to a hook (a4a35362)
- http: allow use of X-Sendfile/X-Accel web server feature (a88db207, closes #4898)
- icons:
- udpate file plugin to use new icon service (2c9f5c0a)
- user avatars are now handled by the icon service (36c8b465)
- adds a service for handling entity icons (72b8a2c7)
- js:
- Adds hooks to pass site and page-level data client-side (cec6b42b, closes #8997)
- elgg/Ajax users get more access to underlying resources (39a3fbce, closes #9767)
- elgg/spinner now supports optional text to be displayed (da5c5b06)
- adds elgg/lightbox AMD module, loaded on all pages (9135ad26, closes #7895, #8309, #6991)
- user hover menu now uses elgg/popup module (d0dffca6)
- adds elgg/popup AMD module (fd75da60)
- requiresConfirmation now returns false if not confirmed (cac5c0fd)
- menus:
- reportedcontent: only load javascript when needed (29c39cd7)
- river: convert river JS to AMD modules (790a1a00)
- thewire: allow multiple add forms to exist on the same page (9f72e287)
- ui: Allows modifying system messages/errors (eee183c5)
- views:
- view_vars handlers can preset view output (68fde7b6)
- elgg_get_excerpt output now comes from a view (4d6ec3f2)
- allows changing relative URLs in CSS files (70d3aab7)
- allow multiple paths in views.php files (7672d754)
- web_services: allows API function to be given an associative array (cd80863a, closes #9411)
- widgets:
- widget types can now be extended with a hook (3c76194c)
- widget title and description can be autodetected (3c61e2f0)
- added a helper class and factory for defining widgets (bc56fafd)
- widget layout owner can now be set explicitly (b3bd2a84, closes #7023)
- added isset on \ElggWidget objects to check settings (7b095208)
- added unset on \ElggWidget objects to remove settings (f99e4f5d)
Performance
- db: improved session write db query for InnoDB (3b55226d)
- reportedcontent: only load JS if menu item is rendered (ececa98d)
Documentation
- core: fixes docs for ElggFilestore::seek return value (fe310c31)
- faqs: fixed typo in IDE section (a1ed1305)
- tutorials: updated Hello world (dc5a4ade, closes #9875)
- widgets: updated the widget registration documentation (3410e1ec)
Bug Fixes
- avatars: avatars are no longer served with public URLs in a walled garden mode (4c8a7ced)
- core:
- file: ElggFile::delete() now removes target files if filename is a symlink (facc13fe)
- files: use actual file modification time as an etag value (17c5dcaf)
- js: ui bindings now wait for system init event to fire (5794e027)
- mime: fall back to detection based on extension for octet-stream (0b1f4539)
- reportedcontent: forward to address if not submitted in lightbox (ee63b1d8)
- views: elgg_view_form now accepts class to be an array in form_vars (4133b516)
Deprecations
- db: deprecates many methods on the
Application::getDb
object (2ba9a876)
- entities:
- adds entityCache service and deprecates old global (9fa45b62)
- deprecate can_write_to_container (ee473b37)
- file: new file service deprecates file download and thumbnail handlers (90925fab)
- groups:
- groups/js view deprecated by groups/navigation AMD module (975014bb)
- new file service deprecated avatar/view resource (5c535271)
- new file service deprecated groupicon page handler (0721023b)
2.1.3 (2016-08-05)
Contributors
- Ismayil Khayredinov (2)
- Steve Clay (1)
Bug Fixes
- output: attribute formatter now skips arrays with non-scalar values (fbe1cd34, closes #10010)
- views: issue unique IDs in elgg_view_input() (f20f0603, closes #9955)
2.1.2 (2016-06-13)
Contributors
- Steve Clay (5)
- Ismayil Khayredinov (4)
- Brett Profitt (1)
- Jerôme Bakker (1)
- iionly (1)
Documentation
- ajax: fixes constructor usage of elgg/Ajax (07c7ce49, closes #9533)
Bug Fixes
- core:
- errors: nested forward 404 calls are less likely to abruptly fail (068711fa, closes #9476)
- files: file service now sends 304 and 403 headers more reliably (c9af1790, closes #9571)
- js: deprecate elgg.ui.widgets more reliably (c25c5211, closes #9523)
- logger: logger no longer pollutes serve-file response (8209a38b, closes #9657)
- profile: able to store more information in tag fields (0467e3ff)
- reportedcontent:
- report form opens in lightbox (6db794ac)
- clicking on reported content links again opens lightbox (55fa9d5c)
- site: allow access to serve-file handler in walled garden mode (1a8d33a1)
2.1.1 (2016-03-20)
Contributors
- Steve Clay (4)
- Jeroen Dalsem (2)
- iionly (1)
Documentation
- contributing: clarifies release periods and branches for PRs (b82d1592)
- groups: removed discussion reference in groups manifest (249334ef)
- release: improves docs for release process (96681b5b)
- views: added page/components/list docs to elgg_view_entity_list (76fea973)
Bug Fixes
- core: do not implode already imploded categories array in plugin object details view (666333cf)
- installer: no longer redirects in loop during installation (78d31799, closes #9486)
2.1.0 (2016-03-13)
Contributors
- Steve Clay (40)
- Ismayil Khayredinov (25)
- Juho Jaakkola (10)
- Jeroen Dalsem (2)
- Hereward Mills (1)
- Wade Benson (1)
- Wouter van Os (1)
Features
- actions: adds a generic delete action (4c35fe26)
- ajax:
- improves the elgg/Ajax API and adds docs (4211155e, closes #9404)
- Adds a new elgg/Ajax AMD module with unified API (2a132ae8, closes #8323)
- cron: allows for a more systematic way of calling cron using one url (3c947fc1)
- discussions: makes "last reply" text into a link (9c1d543a)
- engine:
- use elgg_log prior to error_log in custom error handler (6b483b08)
- also log to php error_log when log is shown on screen (9f630e58)
- entities: give access to original values of modified attributes (56ddabbc, closes #9187)
- files: adds a service for serving files from filestore (1d6b23c7)
- forms:
- moves datepicker init to AMD and improves dev usability (15c2686b)
- elgg_view_input() can now be used to render hidden inputs (8d996cd1)
- allow custom required indicators for field labels (f29fbb6f)
- adds elgg_view_input() to the views api (70b35bd7, closes #6356)
- groups: profile buttons can now be filtered with a hook (52e82943)
- js:
- elgg.ui.toggle now triggers jQuery event (941b49ad)
- adds plugin boot modules and modules based on system events (924355a7, closes #7131, #7926)
- Allow canceling a previous elgg_require_js() call (375be5ff, closes #9074)
- menus: delete menu item now checks if delete action exists (84cbb151)
- metastrings: add function to get map of strings to metastring IDs (8d28a8dd)
- notifications: it's now easier to alter translations for notifications (4677d482)
- profiler: allow capture/display of crude profiling data (6ce01fad, closes #9293)
- routing: allow more reliable URL path rewriting (853fc0ef, closes #9388)
- rss: adds functions for adding/removing the RSS link (ae765e19)
- search: search hooks now preserve custom joins and wheres (65041619)
- views: add attributes to input select options (63b04d6a)
Performance
- boot: we order plugins in PHP because MySQL order by CAST is slow (c4b10c1c, closes #8183)
- files: ElggFile no longer queries metadata for filestore data (d9243002, closes #9138)
- http: serve-file URLs can respond without booting core (4f587df0)
Documentation
- js: modernizes the JS docs to emphasize AMD usage (d66cae64)
Bug Fixes
- actions: referrer path is now parsed correctly (6b1bfe26)
- ajax: iframe-based submissions can again be recognized as XHR requests (c25962a0, closes #8735)
- files: files with custom filestore can now be served via file service (1a2b0ca7)
- forms:
- remove extra spacing between longtext field label and menu (23edb5ad)
- elgg_view_input() now passes input type to the field view (63013725)
- i18n: admin-created accounts now get site language instead of admin's language (561bad37, closes #9454)
- js:
- don't show ajax error message when aborting request (5aea301f, closes #9372)
- client-side hooks can now handle periods in hook names (9f70099f, closes #9160)
- menus: delete menu item is only registered if canDelete is fullfilled (e13ba511)
- permissions: All permissions functions handle user fetches consistently (b875fd33, closes #8941, #8038, #8945)
- river: opening comment form auto-focuses input (5b68badc)
- search:
- search hooks no longer reset subtypes (5d6987ce)
- hooks no longer reset order_by clauses (b15b9e94)
Deprecations
- assets: Deprecates URLs like /js/ and /css/ in favor of simplecache (91daac90)
- config: deprecates config value "siteemail" (cdd4bb5f)
- entity: removes the tables_split and tables_loaded properties (4d469183)
- filestore: deprecates giving files custom filestores (0050b1db, closes #9352)
2.0.4 (2016-06-13)
Contributors
- Jeroen Dalsem (13)
- Ismayil Khayredinov (4)
- Steve Clay (2)
- iionly (2)
- jdalsem (1)
Bug Fixes
- ckeditor: do not draw a menu item if id is missing (edf382b0)
- core:
- prevent undefined variable notices advanced caching form (f3459110)
- view inspector now can use simplecache views again (6c39e573)
- prevent inspector producing notices inspecting webservices (3862ffcd)
- menu inspector provides id in longtext menu (61c0a549)
- css: correctly positioned the user hover menu icon (e5566c1a)
- developers:
- replaced get_language with get_current_language (b6bcc579)
- restores missing event/hook handlers in inspector (70ca4264, closes #9527)
- discussion: correctly check permissions before showing reply form (8e64d44d)
- embed: do not draw a menu item if id is missing (69ca6b51)
- i18n: prevent php notices about language translations missing (1f9916e7)
- js: replace deprecated jquery .attr usage with .prop (a95ecc6c)
- members: search page now has pagination (d42611c2)
- notifications:
- use the correct way to check if checkbox is checked (4c7b8b65)
- users are again unsubscribed when friendship and membership are deleted (8990ab53)
- pages: use elgg_extract to prevent php notice fetching parent_name (c8710c9b)
- views: passing 'default' to input/checkboxes now works (efa6395f)
2.0.3 (2016-03-06)
Contributors
- Ismayil Khayredinov (3)
- Steve Clay (3)
- Juho Jaakkola (1)
- Niraj Kaushal (1)
Bug Fixes
- comments: unifies behavior after adding new comment/discussion reply (8ff2b295, closes #8130)
- discussions: put new discussion page behind gatekeeper (a583f65b, closes #9383)
- events: the pagesetup event timing is more like 1.x (38b12288)
- groups:
- clarify notification status strings (20059a89)
- page owner is now correctly resolved prior to pagesetup (9a8ba277)
- web_services: web services again can output xml/php (9bf27a4b, closes #8053)
2.0.2 (2016-02-03)
Contributors
- Steve Clay (10)
- Juho Jaakkola (3)
- Ismayil Khayredinov (2)
- Wouter van Os (1)
Documentation
- events: Clarify scope of HooksRegistrationService::hasHandler (498abdde, closes #9325)
- js: warn devs that that elgg_define_js() configuration is cached (a078c030, closes #9302)
- notifications: Updated subject variable to body (0cde3006)
- routing: clarify use of default_page_owner_handler in core (5d647d18)
Bug Fixes
- installer:
- don't fatal trying to rewrite the .htaccess file (5e74932b, closes #9334)
- detect PDO MySQL extension instead of ext/mysql (98c8e418, closes #9313)
- installer no longer fails on PHP 7 (4d796279, closes #9314)
- javascript: replaces calls to obsolete $.die() method with $.off() (82a08f56, closes #9309)
- menus: menu item labels now match page titles in tool settings (bc8f8dd3)
- notifications: set page context before pagesetup is fired (d4c86cde)
- profile: don't show removed description field (9846c4a4, closes #8984)
- views:
- resources/error view now renders sanely within /admin (c0b1a703, closes #9327)
- don't pass null to array arguments (for PHP 7) (e0d5433f, closes #9318)
- locations specified in /engine/views.php are modifiable (3cc5b5b3, closes #9308)
2.0.1 (2016-01-03)
Contributors
- Matt Beckett (4)
- Juho Jaakkola (3)
- Ismayil Khayredinov (2)
- Juho Jaakkola (2)
- Steve Clay (1)
Bug Fixes
- admin: Allow plugins to extend js/admin but deprecate it (a5c2abdf, closes #9238)
- collections: only register collections menu items when logged in (1b88d43a, closes #9249)
- comments: validate array structure before calling elgg_extract() (1078b65d)
- entities: fix php notice when editing metadata while not-logged-in (64bb369f, closes #9256)
- groups: link to membership requests page is visible again (8e3bb84a)
- install: Set default timezone on installation (7d5a2b05, closes #8845)
- js: prevent multiple togglable menu item bindings (e7f33013, closes #9151)
- notifications:
- default settings now get enabled also for new friends (e84fc160)
- notifications about new friends work again (a23683ee)
- relationships: prevent sql exception on duplicate relationships race condition (9e469da9, closes #9179)
- simplecache: removes warning about using mkdir() when cache directory exists (3bae0bf5, closes #9219)
2.0.0 (2015-12-14)
Contributors
- Steve Clay (3)
- Juho Jaakkola (3)
Documentation
- notifications: documents workflow of the asynchronous notification system (209b6a51, closes #7496)
Bug Fixes
- a11y: aalborg mobile site menu uses the Font Awesome fa-bars icon (a6a512e3, closes #9110)
Deprecations
- file: Deprecates accessing filestore metadata (363b461d)
Breaking Changes
- In aalborg_theme, the view
page/elements/navbar
now uses an icon for the mobile menu selector (formerly an image). The bars.png
image and supporting CSS for the 1.12 rendering has been removed.
Fixes #9110 (a6a512e3)
2.0.0-rc.2 (2015-11-29)
Contributors
- Steve Clay (10)
- Ismayil Khayredinov (4)
- Juho Jaakkola (4)
Performance
- river: no longer needlessly render river responses (97df230f, closes #9046)
Bug Fixes
- files: make sure method is callable on a concrete object instance (740d3108, closes #9010)
- i18n: avoids using mbstring.internal_encoding in PHP >= 5.6 (c0ff79de, closes #9031)
- likes: count is updated after liking/unliking (dae30cb7, closes #9100)
- memcache: don't store a copy of $CONFIG in file objects (beb90891, closes #9081)
- pages: removes deprecated notices regarding input/write_access (fdcab74b, closes #8327)
- river: floated river selector no longer breaks layout (2745c914, closes #9091)
Breaking Changes
- The report content icon is now a FontAwesome icon, however the GIF used in 1.x is still available. (96d258fa)
- Plugins that override the
input/autocomplete
view will need to include the source URL in the data-source
attribute of the input element, require the new elgg/autocomplete
AMD module, and call its init
method. The 1.x javascript library elgg.autocomplete
is no longer used. (2a0cf9a5)
2.0.0-rc.1 (2015-11-07)
Contributors
- Steve Clay (12)
- iionly (3)
Bug Fixes
- http: allows sending gzipped JavaScript on nginx < 1.5.4 (4c4b8ab7)
- likes: likes preloader and entity menus now consider likability (de81d7da, closes #9065)
- views: input/userpicker API more BC with 1.8 plugins (0651a5fd, closes #6079)
Breaking Changes
- To allow for usage of the z-index property for elements in the content area without the More menu dropdown being displayed behind these elements the z-index value in the elgg-menu site class has been increased to 50 (34af1d71)
2.0.0-beta.3 (2015-10-04)
Contributors
- Steve Clay (6)
- Juho Jaakkola (2)
- iionly (1)
Features
Bug Fixes
- bookmarks: bookmark pin copies title into form (50881370, closes #8995)
- file: thumbnails are visible again (7f46db8e)
- site_notifications: no ajax error without reason on auto-deletion of site notifications (7aa55a81)
2.0.0-beta.2 (2015-09-21)
Contributors
- Steve Clay (7)
- Juho Jaakkola (2)
- iionly (2)
- Matt Beckett (1)
Documentation
- upgrading: Warn site owners about MultiViews and /settings URLs (0ada89d6, closes #8806)
Breaking Changes
- Relationship deletions only fire the "delete", "relationship" event. (9c148994)
2.0.0-beta.1 (2015-09-06)
Contributors
- Juho Jaakkola (4)
- Juho Jaakkola (3)
2.0.0-alpha.3 (2015-08-23)
Contributors
- Evan Winslow (6)
- Jeroen Dalsem (3)
- Juho Jaakkola (3)
- Steve Clay (3)
- Jerôme Bakker (1)
- Juho Jaakkola (1)
- Matt Beckett (1)
Features
- developers: Always show human-readable translations (43c19644, closes #8834)
- i18n: abbreviations for months and weekdays (889617ed)
- views:
- added html5 audio support to the file plugin (e5a32390)
- Allow sites to specify views.php at root (625c1ddd)
Performance
- nginx: Turn on gzip by default (49f776d3)
Bug Fixes
- cli: Rewrite
::installDir()
to Directory\Local::root()
in CLI server (1e1f446b)
- discussions: Body of discussion notification mail is not empty anymore (23ab3e51)
- entities: Entity creation no longer needlessly checks owner container (5adf98fd, closes #4231)
- icons: sizes of Font awesome icons are now more consistent with old icons (11386003, closes #8733, #8861)
Breaking Changes
- If a plugin has removed or replaced messages_notifier to hide/alter the inbox icon, the plugin must instead do the same for the topbar menu handler (messages_register_topbar).
Fixes #8862 (67cff474)
- When creating within a group, ElggEntity::create used to always separately check if the current user can use the owner's account as a container. This made sure that one group member could not post to the group using another member as owner. This separate check led to confusion, as handlers of the container_permissions_check hook were told that the owner was to be the container, when it was actually the group.
Here we bypass the separate owner container check if the desired owner_guid is the logged in user GUID. This eliminates the check under all normal circumstances but leaves it in place in case a poorly coded plugin allows the impersonation described above.
This also denies creation if the owner/container GUIDs are set but can't be loaded. Before, create() would simply bypass the permissions check if it couldn't load the owner/container.
Fixes #4231 (5adf98fd)
- We've removed the "categories" plugin from core.
You may access it at https://github.com/Elgg/categories
Fixes #7584 (ba0c12f2)
2.0.0-alpha.2 (2015-08-05)
Contributors
- Steve Clay (14)
- Evan Winslow (13)
- Jeroen Dalsem (4)
- Ismayil Khayredinov (3)
- iionly (1)
Features
- core: Makes several commonly-used functions public (4b58e4f5, closes #7838)
- groups: group owner transfer lists users alphabetically (a8bc79c2)
- hooks: Adds indication in container permissions hook of checking owner (298b5231, closes #8774)
- web_services: filter method output with a plugin hook (5ff308c5)
Documentation
- releases: Clarify BC policy for major releases (a636bf86, closes #7080)
- web_services: document ws hooks (5430e032)
Bug Fixes
- composer: Symlink plugins from root mod dir (436fb4a2)
- nginx: Update rewrite rules for 2.0 (aa082a5c, closes #8750)
- profile: Support composer for icondirect requests (7610552b)
- upgrade: Point UpgradeService to correct upgrades dir (b3a31868)
- web_services: do not leak internal function names via system.api.list method (9415c413, closes #8574)
Deprecations
- discussion: Deprecates the elgg:discussion library (bf741815, closes #8760)
2.0.0-alpha.1 (2015-07-07)
Contributors
- Steve Clay (64)
- Evan Winslow (55)
- Jeroen Dalsem (28)
- Jerôme Bakker (14)
- Juho Jaakkola (4)
- Ismayil Khayredinov (2)
- Paweł Sroka (2)
- Juho Jaakkola (1)
- Juho Jaakkola (1)
Features
- application:
- assets:
- comments: Comment/reply timestamps are now permalinks (4596e00b, closes #8407)
- composer: Fully support installing Elgg as a composer dependency (fceafea6, closes #8431)
- discussions: discussions feature has been moved to its own plugin (a4e484e6)
- groups:
- adds alphabetical sorting to all groups page (ba82c682)
- sidebar members show recently joined members (fcf6e19a)
- group members page can be sorted on newest members (2eb5e5ea)
- Only submitted group profile fields are updated (c3d11285)
- hooks: a new function to clear all callbacks for a given hook (bd511763)
- icons: use FontAwesome icons (ea7b17d5)
- javascript: admin panel javascript is now loaded asynchronously (7141da5f)
- js: Adds temporary require() shim for deferring inline scripts (65fddb00)
- likes: Entities are no longer likable by default (cb6ebcc9, closes #5996)
- members: add alphabetical member listing (0ad75efe)
- memcache: support Memcache namespace prefix (8baae3f3)
- messages: recipient selection by userpicker (932e974c)
- php: Require PHP 5.5+ (52da9d98)
- plugins:
- profile: only submitted profile fields are updated (fd7b8e0a)
- routing:
- Removes /export and all secondary front controllers (ab3c879f, closes #8425, #5017)
- Render blog pages with views (9f1d9316)
- Render email validation page with view (b1060e52)
- Render twitter_api interstitial with view (a06a7e27)
- Render thewire pages with views (e126b2f6)
- Render tagcloud page with view (ad0d4cc0)
- Render site notifications page with view (5e3cb646)
- Render search page with view (aff84bc7)
- Render reportedcontent pages with views (315ce166)
- Render profile pages with views (125844aa)
- Render pages pages with views (ec060fb6)
- Render notification pages with views (dcfb1761)
- Render messages pages with views (91b52801)
- Render messageboard pages with views (c77d4e03)
- Render members pages with views (75c3fcda)
- Render groups pages with views (89651a3a)
- Render discussion pages with views (7dc40a16)
- Render file pages with views (217e4222)
- Render theme_sandbox shell with view (42013a5d)
- Render dashboard page with view (f8530d13)
- Render categories page with view (1ae65c53)
- Render bookmarks pages with views (6c63b0df)
- Move all core pages to resource views (2761e874)
- Use the views system to render the index page (f1b75bbe)
- views:
- added a generic by_line page element for content objects (1a5bcb64)
- comments form value is now html5 required (ba9f4301)
- login and register form now have html5 required fields (f8c505ca)
- Allow mapping views dirs via views.php files (9ba31f20, closes #8546, #8550)
- Nearly all plugin static resources are in views (b8a8864c)
- Allow specifying exact view paths via views.php (f3881cf4, closes #6844, #8515, #8527)
Performance
- engine:
- Viewtype is auto-detected only once (541a5cd1, closes #8438)
- Reduce method calls when fetching from service provider (5561fec9)
- js: Remove jquery-migrate and upgrade jquery to ^2.1.4 (8f58da98)
- scripts: Load all scripts in foot regardless of registered location (c91f1f3e, closes #2718)
- simplecache:
- Faster serving in case symlink not used (85c2e888)
- Allow 304 responses even with simplecache off (14bd68fb)
- views:
- only draw menus when they are used (b9f85e4c)
- Allow serving assets directly from filesystem (c4c5734d, closes #8381)
Documentation
- head: Remove out-of-date JS docs (23c3d036)
- icons: Add docs for Font Awesome changes in #8578 (eb9bcde3, closes #8625)
- routing: Update custom_index to demonstrate latest best practices (0142a5f0)
- upgrade: Clean up docs around PDO upgrade (fdfa4d7f)
- upgrading: documents comments hook return values (b9d975f0)
Bug Fixes
- actions: Misspelled action levels no longer treated as logged_in. (d936549a, closes #8337)
- admin: admin.js no longer fails on the plugin text file page (a4e2ce00)
- breadcrumbs: hide the last breadcrumb if it’s not a link (a1bec58f, closes #6419)
- comments: allow comments hook to return empty strings (37321a14)
- database: Uncallable callback arguments now throw exceptions (1e65aa10, closes #6937)
- events: All hook/event handlers are now weighted properly (3e6a2898, closes #1378)
- https: Drop login-over-https (c0e81a40, closes #5729)
- output: fewer view $vars will be output by accident (4560d389, closes #8218)
- river: Improves alignment of filter select and nests inside label (4f903c1e)
- site_notifications: correctly position site_notifications menu (22d14acb)
- ui: Eliminates FOUC in Firefox (8244ae61, closes #8328)
- views: do not drop elgg-button-submit class when using input/submit (1e8e3e6f)
- zaudio:
- AudioPlayer now works via AMD module in IE9 (4b0768b8)
- Convert zaudio JS to AMD modules (674899e0, closes #8283)
Breaking Changes
- To allow likes on your content you must permit the annotation to be created. Likes provides a new hook “likes:is_likable” to allow easily registering entities by type:subtype.
Fixes #5996 (cb6ebcc9)
- The plugins blog, bookmarks and file have been changed to have their content listing for "Mine" and "Friends" list content where they are the owner of. Previously it only listed content created in their container. This resulted in group content not showing in 'my' content listings.
Fixes #4878 (20e606b7)
- The functions blog_get_page_content_read and blog_get_page_content_friends are no longer available. (a437f952)
- The file mod/aalborg_theme/graphics/avatar_menu_arrows.png has been removed.
Fixes #8629 (ee7f14ed)
Fixes #8438 (541a5cd1)
- The forms/admin/plugin/change_state view is no longer available (796cafe7)
- Only profile fields that are passed to the profile/edit action via $_REQUEST will be updated. Omitted fields will not be cleared as it was before this change.
fixes #8582 (fd7b8e0a)
- Fields not submitted to the groups/edit action will no longer be acted upon. Previously they would be set to empty or default values. (c3d11285)
- dropped library elgg.markdown
The Markdown library is available as a composer package, this requires less maintenance by Elgg developers.
fixes #8597 (df68d986)
- The action widgets/upgrade is no longer available (c3273d1d)
- The deprecated functions $user->getSites(), $user->addToSite(), $user->removeFromSite(), $user->listFriends() and $user->listGroups() are removed. (3bde1718)
- This class is no longer used in Elgg. If you still need this, you need to provide your own version of this class. (4819c565)
- The deprecated function parameter support for $object->getSites() and $object->addToSite() are removed. Update to the parameter usage as defined in the ElggEntity functions. (5d02672b)
- If you use a reference to the physical Elgg sprites please update your plugin to use the FontAwesome icons.
Replace the Elgg sprites icons by FontAwesome icons, this allowes for more icons and easier styling of the icons
fixes #7239 (ea7b17d5)
- The plugin views are redesigned to display in a lightbox. This completely removes the views forms/admin/plugins/filter and forms/admin/plugins/sort. (bde2c394)
- Discussion feature has been pulled from the groups plugin into its own independent plugin.
The following views are not available anymore:
- object/groupforumtopic
- river/object/groupforumtopic/create
Also the [object, groupforumtopic] subtype has been replaced with the [object, discussion] subtype.
Nothing changes from the group owners' point of view. The discussions feature is still available as a group tool and all old discussions are intact.
Fixes: #5994 (a4e484e6)
If you'd prefer to just add it back, you can use this code in your plugin's init:
elgg_load_js('jquery-migrate');
elgg_get_simplecache_url(string $view)
Get the URL for the cached view.
Also, define a jquery-migrate.js
view containing the contents of the script. (8f58da98)
- Great care has been taken to make this change as backwards-compatible as possible, so you should not need to update any view references right away. However, you are certainly encouraged to move your JS and CSS views to their new, canonical locations.
Certain uses of the view,$view_name
and view_vars,$view_name
hooks will not work. See the docs on "View aliases" for more info.
Refs #8381 Fixes #8382 (881e2128)
- The following views, functions and methods have been removed completely.
Removed views:
- canvas/layouts/*
- categories
- categories/view
- embed/addcontentjs
- groups/left_column
- groups/right_column
- invitefriends/formitems
- notifications/subscriptions/groupsform
Removed functions:
- count_unread_messages()
- delete_entities()
- delete_object_entity()
- delete_user_entity()
- elgg_validate_action_url()
- extend_view()
- get_entities()
- get_entities_from_access_id()
- get_entities_from_access_collection()
- get_entities_from_annotations()
- get_entities_from_metadata()
- get_entities_from_metadata_multi()
- get_entities_from_relationship()
- get_filetype_cloud
- get_library_files()
- get_views()
- is_ip_in_array()
- list_entities()
- list_entities_from_annotations()
- list_group_search()
- list_registered_entities()
- list_user_search()
- menu_item()
- make_register_object()
- search_for_group()
- search_for_object()
- search_for_site()
- search_for_user()
- search_list_objects_by_name()
- search_list_groups_by_name()
- search_list_users_by_name()
- test_ip()
Removed methods:
- ElggCache::set_variable()
- ElggCache::get_variable()
- ElggData::initialise_attributes()
- ElggData::getObjectOwnerGUID()
- ElggDiskFilestore::make_directory_root()
- ElggDiskFilestore::make_file_matrix()
- ElggDiskFilestore::user_file_matrix()
- ElggDiskFilestore::mb_str_split()
- ElggEntity::clearMetadata()
- ElggEntity::clearRelationships()
- ElggEntity::clearAnnotations()
- ElggEntity::getOwner()
- ElggEntity::setContainer()
- ElggEntity::getContainer()
- ElggEntity::getIcon()
- ElggEntity::setIcon()
- ElggExtender::getOwner()
- ElggFileCache::create_file()
- ElggSite::getCollections()
- ElggUser::getCollections()
- ElggUser::getOwner()
Also the following arguments have been dropped:
Several internal data structures are no longer stored within the plugin- accessible config space; the removed keys are listed in docs/guides/upgrading.rst. The long-deprecated remove_blacklist() function has also been removed. (2247ed80)
- Relationship additions only fire the “create”, “relationship” event. (3517bd0f)
- Elgg no longer allows customizing the views template handler. We don't think this ever really worked in the first place, so probably no one was using it, but since it's conceivable someone could be, we're leaving this warning.
Fixes #8440 (8ae86f16)
- If your theme or plugin was overriding or extending the 'css' view, you should override/extend the 'css/elgg' view instead. (51441706)
- The view js/admin and the namespace elgg.admin are not available anymore. (7141da5f)
- To ensure your handler is called last, you must give it the highest priority of all matching handlers. To ensure your handler is called first, you must give it the lowest priority of all matching handlers. Registering with the keyword “all” no longer has any effect on calling order. (3e6a2898)
- Several views that were deprecated in the 1.x series are being removed in 2.x. This helps us keep the codebase clean and our maintenance burden lower. (805ecb1d)
- This removes several views related to IE. If you need support for browsers not listed in our browser support policy, we encourage you to to do so with feature detection and polyfills rather than conditional comments and user-agent sniffing. (7fe9329e)
- If you use the class FilePluginFile in your plugin, replace this usage with ElggFile (for construction). Load files objects with get_entity().
Fixes #7763 (6be0f97c)
- Any code that relies of mysql_* functions (expecting an implicit connection) will fail. Also any handler functions passed to the execute_delayed_read/write_query() function will now receive a Doctrine\DBAL\Driver\Statement instead of an ext/mysql resource. (96453494)
- We are switching to
Zend\Mail
for sending emails in Elgg 2.0. It's likely that there are some edge cases that the library handles differently than Elgg 1.x used to. Take care to test your email notifications carefully when upgrading to 2.0.
Fixes #5918 (e9de196d)
Fixes #5729 (c0e81a40)
- If you use any inline scripts that depend on scripts in head, you'll need to change them to external AMD modules and load them with
elgg_require_js
.
Fixes #2718 (c91f1f3e)
1.12.18 (2019-04-03)
Contributors
- Jyoti Raval (1)
- Wouter van Os (1)
Bug Fixes
- core: revert original libxml_use_internal_errors value after use (bc30e941)
1.12.17 (2017-09-21)
Contributors
- Jerôme Bakker (3)
- Brett Profitt (1)
- Steve Clay (1)
Bug Fixes
- likes: listing limit no longer breaks likes counts (abbe2715, closes #11160)
1.12.16 (2017-05-10)
Contributors
- Steve Clay (3)
- iionly (2)
- Jerôme Bakker (1)
Documentation
- admin: start upgrade by logging in/clearing caches (cf78468a, closes #10898)
Bug Fixes
- groups: remove membership request when user is already member (4f158e1d)
- htaccess: removing of obsolete entry in htaccess.dist incompatible with Apache 2.4 (f2e8efab)
- search:
- no longer fatals if comment container hidden (16a753a9, closes #10902)
- allows get_sql, access hook to be used correctly (98835bc4, closes #10884)
1.12.15 (2017-01-25)
Contributors
- Johnny Mast (1)
- jdalsem (1)
Bug Fixes
- views: corrected syntax error in input/date (a7277f30)
1.12.14 (2016-11-08)
Contributors
1.12.13 (2016-10-02)
Contributors
- Jerôme Bakker (3)
- Steve Clay (2)
- Sébastien Lemay (1)
Bug Fixes
- core: page owner entity only returns users/groups user can see (0d333100)
- docs: Fixed link to 'our supporters page' (fe144644)
- notifications: only prefetch subscribers for ElggEntities (65be05c5)
- profile: use correct default access for profile fields (63a01b6f)
1.12.12 (2016-08-05)
Contributors
- Steve Clay (11)
- Ismayil Khayredinov (2)
Bug Fixes
- blog: pass entity to the object/elements/full (134c5b83)
- groups: unfeaturing a group no longer leaves useless metadata (2f3cf28a)
- logging: make clearer exception numbers are timestamps (9c70596e, closes #9924)
- plugins: now checks plugin instances before parsing priorities (26d21f88)
1.12.11 (2016-06-13)
Contributors
- Ismayil Khayredinov (2)
- Steve Clay (2)
- Matt Beckett (1)
- ura soul (1)
Bug Fixes
- river: custom joins can now reference default joined tables. (a6590a9a, closes #8580)
- ui: improves usability of anchors within system messages (30e3ad6c)
- walled_garden: favicon.ico page handler is now treated as public (53f11c43)
1.12.10 (2016-05-29)
Contributors
- Steve Clay (13)
- Jeroen Dalsem (6)
- Ismayil Khayredinov (4)
- Jerôme Bakker (1)
- bruno-infotrad (1)
- iionly (1)
- jdalsem (1)
Documentation
- cron: added an example how to register a cron hook handler (4b54a099)
- i18n:
- clarifies limitations of elgg.echo (83b2c106)
- recommends an English translation for all new language keys (facc222b, closes #9375)
Bug Fixes
- annotations: fixes time-based annotations searches (6d5e1b78, closes #9785)
- autoload: fixes bugs in class map saving (18ea55fa)
- comments: email subject hook now validates array structure (5df7f40b, closes #9772)
- core: remove duplicate tags upon input (096cf4b8)
- css: only apply vertical padding on ajax loader of user hover menu (d9c8326e)
- file:
- forms:
- empty plugin settings forms no longer wrapped in a form tag (5f7dbcd0, closes #9704)
- empty form body no longer wrapped in a form tag (dc68d04e)
- html: autop no longer ltrims next to a leading inline element (6785ee88, closes #9790)
- http: all unhanded exceptions send 500 status code (2f45c2ca, closes #9758)
- js:
- elgg.echo recognizes empty translation strings (does not return key) (1d32b2c2)
- action token refresh now correctly replaces tokens in urls (7b4e0db2)
- do not trigger generic ajax error message for token refresh (e052481f)
- prevent generic ajax error when user aborts the ajax call (1b5a765f)
- notifications: smtp thread headers only set if still possible (f3bb4ac4)
- site: adds robots.txt to public pages (824197b1)
- users: mitigate race conditions when deleting/disabling users (da45affe)
- views:
- no breadcrumbs in error layout (b25324a3)
- do not output empty string titles in page/elements/title (41eecbe3)
1.12.9 (2016-03-06)
Contributors
- Steve Clay (7)
- Ismayil Khayredinov (2)
- Jerôme Bakker (1)
- Juho Jaakkola (1)
Bug Fixes
- cache: internal Stash pool wrapper works again (ddc254e4, closes #9374)
- css: buttons no longer get cropped in admin context (298ae0a8)
- groups: correctly format the remove user from group menu item (8fdf21f5)
- http:
- cache handler sends 304 responses more reliably (873be892, closes #9427)
- more resources sent with explicit UTF-8 charset (036a82bd, closes #9345)
- make sure all pages/JS/CSS sent with explicit UTF-8 charset (3dab7d10, closes #9345)
- js: AMD view filter handles short view names without
/
(c9ca8329)
- search: eliminate 6 notices in search_users_hook (87b7011b)
- settings: do not emit errors if form fields are not present (9f5111c9)
- web_services: reject requests for unavailable formats (04aeaf7d, closes #9410)
1.12.8 (2016-01-31)
Contributors
- Ismayil Khayredinov (1)
- Juho Jaakkola (1)
- Steve Clay (1)
Bug Fixes
- access: fixes guid column name in metadata queries (b3427ccc)
1.12.7 (2016-01-03)
Contributors
- Steve Clay (4)
- Ismayil Khayredinov (1)
- Juho Jaakkola (1)
Bug Fixes
- logging: Log messages no longer discarded (5020c525, closes #9244)
- menus: stricter type validation in menu item registration functions (c5554a75)
- php: Suppress mysql_connect() deprecation warnings for core (40fe0a8f, closes #9245)
- session: Session is again available in the shutdown event (2409d346, closes #9243)
1.12.6 (2015-12-14)
Contributors
- Ismayil Khayredinov (4)
- Juho Jaakkola (1)
- Steve Clay (1)
Bug Fixes
- a11y: display aalborg mobile site menu toggle in more browsers (e96f0798, closes #9110)
- actions: send error HTTP header from action forward hook (d3344de7, closes #9027)
- entities: update attribute when assuming container_guid value (a21dd95e, closes #8981)
- menus: make sure entity passed to user hover menu hook is a user (f5bbcc65)
- output: fixes handling of untrusted URLs in output/url (217e4df6, closes #9146)
Breaking changes
- Plugins that customized
.elgg-button-nav
(or the spans inside) will need to be altered. The .elgg-icon
CSS is left in place but will be removed in Elgg 2.0. (e96f0798)
1.12.5 (2015-11-29)
Contributors
- Steve Clay (5)
- Juho Jaakkola (4)
- Ismayil Khayredinov (3)
Performance
- river: no longer needlessly render river responses (97df230f, closes #9046)
Bug Fixes
- files: make sure method is callable on a concrete object instance (740d3108, closes #9010)
- i18n: avoids using mbstring.internal_encoding in PHP >= 5.6 (c0ff79de, closes #9031)
- memcache: don't store a copy of $CONFIG in file objects (beb90891, closes #9081)
- pages: removes deprecated notices regarding input/write_access (fdcab74b, closes #8327)
1.12.4 (2015-09-20)
Contributors
- Steve Clay (3)
- Juho Jaakkola (2)
- Matt Beckett (2)
Documentation
- entities: Docs for type/subtype and associated ege() options (eb0e53fc)
- releases: Manually check lang files for PHP errors before release (040079b7, closes #8924)
Bug Fixes
- pages: Prevent public "Missing access level" in write access field (4174b774, closes #8905)
- relationships: can now prevent relationships using event handler (9a275d9c, closes #8927)
1.12.3 (2015-09-06)
Contributors
- Ismayil Khayredinov (3)
- Juho Jaakkola (1)
Bug Fixes
- files:
- $file is not always an object with originalfilename property (cf0929c2)
- now uses filename on filestore to detect mime (ab8086a6, closes #8846)
1.12.2 (2015-08-23)
Contributors
- Jerôme Bakker (4)
- Evan Winslow (1)
- Juho Jaakkola (1)
- Steve Clay (1)
Documentation
- entities: Better docs for fetching relationships (e0d8f793)
Bug Fixes
- friends: site_notifications have a clickable link to the new friend (55a0f9b0)
- groups:
- membership request accepted has link in site_notifications (6e0d6f4a)
- group invite has link in site_notifications (61a8484d)
- membership request has a link in site_notifications (ba53c509)
1.12.1 (2015-08-05)
Contributors
1.12.0 (2015-07-07)
Contributors
- Steve Clay (23)
- Evan Winslow (11)
- Ismayil Khayredinov (9)
- Miloš (4)
- Jeroen Dalsem (3)
- Jerôme Bakker (2)
- Jon Maul (1)
- Juho Jaakkola (1)
Features
- ajax:
- annotations: Adds a more granular permission hook for canAnnotate (83da5f18)
- cache: introducing a generic function to reset all caches (f526c479)
- comments: Paging through comments/discussion replies jumps to content (b75fd8f8)
- developers:
- Devs can show loaded AMD modules in console (221bdf6a)
- Adds a quick access icon for some admin settings (f22567b6)
- events:
- Adds static methods for returning common values (f080fed1)
- allows dynamic method callbacks to be unregistered (08c773ba, closes #7750)
- lightbox: More sensible handling of href options (765fcd05)
- views: Users can jump directly to content via prev/next links (f90466c8)
Performance
- developers: reduces boot queries when the developers mod is enabled (03aa096e)
- engine: only update attributes/metadata if value is changed (8295e70a)
Documentation
- ajax: Correct typo in code example (d55e4a3a)
- code: Clarify interface naming convention (de03d372, closes #8293)
- misc: Miscellaneous docs fixes (06e3557c)
- permissions: Fix $params key name for permissions_check:annotate (1af6e3a2)
- views: Better document outgoing elgg_get_view_location() (0a9059d6)
- web_security: adds security warnings (d47fc5ed)
- web_services: document the use of parameters in method declarations (750e31b9)
Bug Fixes
- embed: embed link no longer leaves the page before events are set up (f50e9aa3, closes #8284)
- http: More appropriate exception responses (e28f37e6, closes #6228, #8360)
- legacy_urls:
- adds missing forwarder for groups/forum/$guid (2b555f88, closes #8493)
- unset __elgg_uri to prevent infinite loops (0c7687ac, closes #8494)
- profile: Avatar cropper again can be moved immediately after uploading image (d8cf51b7, closes #8449)
- relationships: Invalid relationship names throw properly (ac976e23)
- search: Search treats "0" as a valid query (af58fa5d)
- ui: prevent button jumping on widget add panel toggle (088de48d)
- web_services: no longer uses deprecated export global (3a818d2b)
Deprecations
- views:
- elgg_get_view_location is going away in 2.0 (b4347fb4)
- Support for custom template handlers will end soon (0dc67698)
1.11.6 (2016-06-12)
Contributors
Breaking Changes
- The JS function
elgg.security.setToken
is now formally marked private and its parameters are not backwards compatible. (9d8ddecb)
1.11.5 (2015-12-13)
Contributors
- Steve Clay (1)
- Juho Jaakkola (1)
Bug Fixes
- views: Sticky values now get passed into views extending register/extend (Fixes #8873)
- memcache: don't store a copy of $CONFIG in file objects (Fixes #9081)
1.11.4 (2015-07-07)
Contributors
- Ismayil Khayredinov (7)
- Evan Winslow (5)
- Miloš (4)
- Steve Clay (4)
- Jeroen Dalsem (1)
Documentation
- misc: Miscellaneous docs fixes (06e3557c)
- permissions: Fix $params key name for permissions_check:annotate (1af6e3a2)
- web_security: adds security warnings (d47fc5ed)
- web_services: document the use of parameters in method declarations (750e31b9)
Bug Fixes
- legacy_urls:
- adds missing forwarder for groups/forum/$guid (2b555f88, closes #8493)
- unset __elgg_uri to prevent infinite loops (0c7687ac, closes #8494)
- profile: Avatar cropper again can be moved immediately after uploading image (d8cf51b7, closes #8449)
- relationships: Invalid relationship names throw properly (ac976e23)
- ui: prevent button jumping on widget add panel toggle (088de48d)
- web_services: no longer uses deprecated export global (3a818d2b)
1.11.3 (2015-06-14)
Contributors
- Steve Clay (6)
- Evan Winslow (4)
- Juho Jaakkola (1)
- Julien Boulen (1)
- Marcus Povey (1)
- Matt Beckett (1)
Documentation
- code: Permit use of
<?=
PHP shortcut since we're on 5.4+ (453d8dcb)
- hooks: Clarifies docs for the register, user hook (b877f61d, closes #8377)
- install: Update cloud9 install instructions (616f2156, closes #8240)
Bug Fixes
- IDE: Public APIs no longer marked with
1.11.2 (2015-05-25)
Contributors
- Steve Clay (12)
- Ismayil Khayredinov (5)
- Evan Winslow (2)
- Jeroen Dalsem (2)
- Juho Jaakkola (2)
- Ariel Abrams-Kudan (1)
- Jerôme Bakker (1)
- Juho Jaakkola (1)
Performance
- views: No longer regenerates the $vars[‘user’] wrapper for each view (3c40971a)
Documentation
- ajax: Adds more complete Ajax docs (bfbf0ff2, closes #8277)
- amd: Overhauls the AMD docs with a lot more detailed instructions (e01996ab)
- auth: Add basic APIs to the authentication docs (83d5f214)
- guides: Alpha-sort the developer guides to make them more scannable (88a9d130)
Bug Fixes
- ckeditor: also remove liststyle as a default loaded plugin (eb8235cb, closes #8195)
- comments: Ajax-saved comments show proper server formatting (6f0f74cb, closes #8294)
- file: Default file type icons again available in the theme sandbox (6892979f)
- filestore: Fixed a crash when forms had a file input but no file was provided (2ada5d5a)
- groups:
- do not reassign container on ownership transfer if old container is not an old owner (57cf337a)
- terminate edit action early if group can not be saved (3fe10452)
- do not attempt to populate groups_entity table if base entity fails to save (f2cbb237)
- menus: only display location menu item if value is string (e3a39167)
- mysql: Use explicit ext/mysql resource in initial query/escaping (b7abe8eb, closes #8208)
- notifications: fixed deprecation notice elgg-require-confirmation (79bf7d42)
- river: Activity page for specific user shows that user’s owner block (5ecfe41d, closes #8257)
- session: Remember me no longer results in occasional fatal errors (b91620c1, closes #8104)
- ui: Checkboxes and labels are again separated by a space (1b62dd20, closes #8199)
- widgets: validate get_list,default_widgets hook output (b1c16311)
1.11.1 (2015-04-27)
Contributors
- Steve Clay (4)
- Brett Profitt (2)
- Ismayil Khayredinov (2)
- Juho Jaakkola (2)
- Jeroen Dalsem (1)
- Per Jensen (1)
Documentation
- support: Added 1.11's dates of support. (4bd3144d)
Bug Fixes
- aalborg_theme: removes unwanted margin from elgg-list-river items (c43371b5, closes #8124)
- access: do not use default access if access options are passed to the input view (36a4d209, closes #8219)
- core: check for correct minimal php version in installer (fcff9e5e, closes #8196)
- deprecation: visible deprecation errors aren't displayed to admin anymore (2311d666)
- navigation: Links to “Comments” again link directly to the comments section (caea1ab2, closes #8227)
- plugins:
- Unloadable owner doesn’t WSOD displaying groupforumtopic (8a082a3c)
- Fixes HTML toggle for CKEditor (a45c4ca4, closes #8193)
- session: Properly assigns PHP session settings from configuration (d1ec08f3, closes #8223)
- tags: Corrected cases of tags having leading or trailing spaces. (67addf48, closes #8123)
1.11.0 (2015-04-13)
Contributors
- Jeroen Dalsem (50)
- Steve Clay (37)
- Ismayil Khayredinov (15)
- Jerôme Bakker (11)
- Juho Jaakkola (6)
- Evan Winslow (3)
- Brett Profitt (2)
- Matt Beckett (2)
- Paweł Sroka (2)
- Mariano Aguero (1)
- Per Jensen (1)
- ray peaslee (1)
Features
- access: notify users when access change will affect comments (09691cb1, closes #8086)
- admin: add a warning when a physical robots.txt is present (90ec514e)
- comments:
- link in email notification now takes directly to the correct page (914b492d)
- allows setting comments per page via hook (879a3ef3)
- river comments/discussion replies go to right page (364894e2, closes #7936)
- context: adds API to get/set the entire context stack (d7ff355b)
- core:
- adds handling of 400 and 403 error codes (243ca408)
- added a new admin widget to monitor cron jobs (aeb26236)
- db: remove access collection (membership) when an entity is removed (f67d04fd)
- developers:
- added userpicker with limit 1 to theme sandbox (6d3ad5cf)
- show total DB queries in the developer screen log (defbe1cc)
- the inspector pages show a lot more info (a4384438, closes #4540)
- improved readability of inspect pages (a3e7f09d, closes #6484)
- discussions: link in email notification now takes directly to the correct page (4565cc86)
- engine:
- added a canDelete function to the entity class (6b12e45d)
- added a trigger to elgg_view_menu to adjust menu vars (34ad5bee)
- externalpages:
- replaced tabs with menu on expages edit form (d4d03d0a)
- added a link on the edit form to view page on site (1a6d8d79)
- added an edit button to the view of an external page (cd1c58b8)
- file:
- Add upload button to sidebar search pages (290c498d, closes #8110)
- show image thumbnail in a lightbox in full view (001e27eb)
- groups: group tool options are now checkboxes (25532a91)
- i18n:
- added function to check if a language key exists (9684b37c)
- allow option to force language with an url parameter (afd9ad34)
- icons: allow ElggEntity::getIconURL to accept an array (7281ea01)
- js:
- added a hook to the AMD config to control the configuration (697bb841)
- datepicker will now show month and year selector (1945c8ba)
- adds a fixed Ajax spinner module (dd1b5bc2)
- login_as: Added login_as plugin as bundled with the core. (7ca66011, closes #7958)
- navigation: add hook to filter breadcrumbs (f7cb4878, closes #6419)
- plugins: adds several reported content features (347683c1, closes #5379, #6082, #5380)
- security:
- Adds component to create and validate HMAC tokens (4c1b0740, closes #7824)
- adds events around site secret regeneration (25f177a3, closes #6252)
- ui: allows highlighting an element whose id is found from the URL (f7dd696a)
- views:
- added lazy loading of user hover menu (a0267469)
- add first and last page number to pagination (4c9c1209)
- added the ability to translation the usersettings title (00e9efce)
- allow providing alternative views for list items (85c22f35)
- support for extra variables in elgg_view_icon function (67006312)
- move logged in check to topbar view (08ae23f6, closes #6582)
- plugin hooks can modify view $vars (d493bf93, closes #7736)
- added support for other entity types to tagcloud block (db0d9b04)
- added container guid support to sidebar comments block (e70f2c98)
- add container guid support to tagcloud block (de92b4ec)
- passes more context info to input/access and access hooks (437f9649, closes #4695)
Performance
- entities:
- groups: makes group invitations scalable (6088b1a7)
- i18n: only check for admin once during getInstalledTranslations (38dae267)
- languages: improved js caching of languages by using simplecache (ab17ee54)
- likes: ajax load liking users and show in lightbox (7a371477)
- plugins: removes DB query to determine if a plugin is active (0ed117d3, closes #7661)
- search: only query DB for fulltext min and max word length once (5f6e1176, closes #6707)
Documentation
- rst: documents new list item view parameter (a4f51701)
- upgrading: instructs how to enable comment highlighting in custom themes (60eebdc2)
- views: improves docs for views (365f9058)
Bug Fixes
- access: show all readable custom access collection names to admins (fd1637f5)
- actions: action scripts can return falsey values without causing errors (35382fce, closes #7209)
- annotations: simplifies ege* for annotation calculations (b123f06d, closes #7398, #4393)
- ckeditor: updated to full ckeditor package version 4.4.7 (ada19c9d)
- comments: keep comment access_id in sync with container (066102ab, closes #7807, #NaN)
- css: Fix size of button elements in /admin (6cb602c5)
- developers: append the developers log as late as possible (5b0d4c65)
- engine:
- eliminated potential deadloops in MenuBuilder::setupTrees (3e5cf89a)
- return original val if not a string for string_to_tag_array (1ef2b9e3)
- file: always download as attachment when using file download action (278fe010)
- filestore: fixes file uploading broken by the transition to Symfony HttpFoundation (d315aaaa)
- i18n:
- ckeditor now uses user's own language instead of the site language (aa63a911)
- do not let empty translation arrays disable plugins (10ba5d89)
- make sure that all potential languages are loadable with js (cfa860e6)
- js:
- only show editor toggle link if editor is initialized (d18f95cc)
- increased AMD config waitSeconds to prevent timeout issues (0bd6aef6)
- correctly define amd dependencies for input/userpicker (48f5c00a)
- messageboard:
- provide correct link to users messageboard (04b86f56)
- correctly register deletePost on ajax created posts (a50dbe3e)
- navigation: strip tags before comparing menu item text (c021e6a9)
- notifications: correctly use elgg_log instead of error_log (43661c90)
- profile:
- moved topbar profile menu registration to profile plugin (2100c494)
- adds the prepare hook for the profile page’s owner menu (1d39ff8d, closes #6085)
- security: Eliminates auto-casting within HMAC token building (2be74f05)
- tests: fix failing SystemMessagesServiceTest (d52515ba)
- views:
- show spinner when ajax loading walled garden forms (1e503da4)
- prevent direct calls to an ajax view (3b5993bb)
- changed text of the # more comments text in the river (f2f3c1dd)
- view can only exist if it is string (4452b614)
- check item instance before rendering it (f927f462)
- always show all system messages (success and error) (01156baa)
- added avatar classnames to menu item for consistency (d803c1aa)
- sidebar comments block data should be consistent with page (f9e6efb2)
- switch tagcloud blocks to list tags based on container_guid (7915a668)
1.10.6 (2015-12-13)
Contributors
- Jerôme Bakker (5)
- Juho Jaakkola (2)
- Evan Winslow (2)
- Mariano Aguero (1)
- akudan (1)
- Steve Clay (1)
- Jeroen Dalsem (1)
Bug Fixes
- views: Sticky values now get passed into views extending register/extend (e241e82e, closes #8873)
- memcache: don't store a copy of $CONFIG in file objects (beb90891), closes #9081)
- messageboard: provide correct link to users messageboard (Fixes #8170)
- notifications: correctly use elgg_log instead of error_log (Fixes #8039)
- i18n:
- ckeditor now uses user's own language instead of the site language
- do not let empty translation arrays disable plugins (Fixes #8116)
Chores
- notification: no more typehint errors when sending a notificationas an ElggGroup (Fixes #7949)
- thewire: improved error handling when removing a wire post (Fixes #7003)
- core: catch login exceptions during password change (Fixes #7948)
1.10.5 (2015-04-05)
Contributors
- Per Jensen (1)
- Steve Clay (1)
Bug Fixes
- aalborg_theme: moves unextend/extend view into init (3c5fb39b, closes #8105)
1.10.4 (2015-03-22)
Contributors
- Evan Winslow (3)
- Jerôme Bakker (2)
- Juho Jaakkola (2)
- Matt Beckett (1)
- Paweł Sroka (1)
Bug Fixes
- core: don't trigger delete event when you can't edit the entity (83c69c09)
- groups:
- respect previous modifications to the write access in group context (11b55041)
- Hides group profile fields that don't have a value (2bb13db8)
1.10.3 (2015-03-08)
Contributors
- Juho Jaakkola (5)
- Jeroen Dalsem (4)
- Ismayil Khayredinov (1)
- Jerôme Bakker (1)
- Matt Beckett (1)
- Cim (1)
- Rodrigo (1)
- Evan Winslow (1)
Documentation
- helpers: Adds missing underscores to elgg_get_loggedin_user_* functions (02ef5d7b)
- views: documented the difference between page/elements/foot and footer (001be7e4)
Bug Fixes
- upgrade: reset system cache before upgrade (468d1c40, closes #6249)
- uservalidationbyemail: only forward to emailsent page if email sent (7d8cd3b8)
- views:
- always add the user guid param to the usersettings/save form (9e1661d4)
- always submit element when there are no userpicker values (61e295c9)
1.10.2 (2015-02-21)
Contributors
- Jeroen Dalsem (16)
- Steve Clay (6)
- Evan Winslow (2)
- Jerôme Bakker (2)
- Ismayil Khayredinov (1)
- Juho Jaakkola (1)
Performance
- stats: more efficient get_entity_statistics() (f5ac3602)
Documentation
- install: Move environment-specific instructions to their own pages (1b750298, closes #7834)
Bug Fixes
- datepicker: Prevents month navigation links from overlapping with other elements (fb1596da, closes #7542)
- groups: also delete original icon when deleting group (b8d1612e)
- js:
- correctly init datepicker when ajax loaded (aecc0047)
- fixes aalborg site menu by restoring 1.9 toggle behavior (8ece7dd8, closes #7790)
- catch global ajax errors and report to the user (dd52baeb)
- likes:
- only allow likes to be deleted by owner (b47f0166)
- correctly register like button for ajax action (d56b239d)
- messages: forward to inbox after deleting a message (015baf62)
- metadata: metadata values returned in more reliable order (36517715, closes #5603)
- plugins: pages with no annotation no longer cause fatal errors (ffdb908d, closes #7793)
- profile: consider potential split db in profile icondirect (bd8f3aed)
- search:
- prevent search form submit if empty query (becd5ba2)
- correctly split search words on multiple spaces (2bde4af1)
- only query user metadata if there are profile fields (6cdafa10)
- ui: using site menu too early no longer results in 404 page (b11acee5, closes #7861)
- views:
- use named keys when registering meta tags and links in head (2cbaa770)
- improved check on non existing array keys (bfc65a68)
- adds excerpt to comments and discussions in activity context (4e09115a)
- deprecated notice no longer shows up in the wrong version (3fcbee3f)
- use correct page offset for divisors that have a modulo (cdc85dca)
1.10.1 (2015-01-26)
Contributors
- Steve Clay (10)
- Jerôme Bakker (2)
- Ismayil Khayredinov (1)
- Juho Jaakkola (1)
Documentation
Bug Fixes
- blog: correctly handle the archive listing if there is no archive (71fbf79f)
- css: add missing selector prefix (af3f003d)
- http: don’t allow plugins to bypass a forward() call (ac2d9f1e, closes #7637)
- notifications:
- email replies again have “Re:” in subjects (632c57d3)
- correctly unregister the default notifications save function (f2adb5e2)
- plugins:
- discussion replies no longer missing/reversed order on river (78af4b69, closes #7801, #7668)
- re-hides the likes button for groups (f57d6ef8, closes #7724)
- eliminates notices for missing GET keys in profile icon (98fb967d)
- Eliminates deprecation notice on file plugin objects (a0240add, closes #7761)
- travis: eliminates composer install failures (f96ea171)
1.10.0 (2015-01-11)
Contributors
- Paweł Sroka (12)
- Per Jensen (3)
- Steve Clay (3)
- Evan Winslow (2)
- Arsalan Shah (1)
- Juho Jaakkola (1)
Features
- security: No longer ship with vendors that have security advisories (b193ebcf, closes #7738)
- test: Added rewrite rules for builtin PHP cli server execution (a0ff98e2)
Documentation
- nginx: Added sample nginx configuration and moved sample configs to install/config/ (dbcd7548)
- requirements: Updated PHP version used in docs as requirement to 5.4 (5f4f8eea)
Bug Fixes
- CSS: adds margin between a file's text and image (261e92b4, closes #7712)
- amd: Added coverage tests and fixed minor bugs. (6250fd76)
- blog: adds missing class to preview button (be3b559b, closes #7706)
- http: Send a minimal 404 header for /favicon.ico requests (b8c8a280, closes #7261)
- settings: It's again possible to set user specific setting for a plugin (80e0c904)
1.10.0-rc.1 (2014-12-15)
Contributors
- Evan Winslow (64)
- Steve Clay (30)
- Jeroen Dalsem (24)
- Per Jensen (10)
- Jerôme Bakker (9)
- Paweł Sroka (7)
- Ismayil Khayredinov (5)
- Matt Beckett (3)
- Juho Jaakkola (1)
- Jeff Tilson (1)
- Bruno (1)
- Satheesh PM (1)
- Sem (1)
Features
- aalborg_theme:
- adds support for alert messages (2e410f71)
- adds visual difference between submit and action buttons (691470e6, closes #6929)
- comments use triangle indicator instead of text label (b2d55926)
- adds support for .elgg-button-special and button sizes (2ca0dedd, closes #2954)
- admin: Use elgg_view_menu to generate admin header (411a9f39)
- cache: allows using ints as keys in Cache\Pool (c36ec89d)
- core:
- support for querying based on relationship create time (db27abbd)
- adds edit avatar to admin section of user hover menu (a003d840)
- developers: inspect menu item now has children for faster access (314616d1)
- discussion: Added some extension points at discussion sidebars. These changes allow 3rd party plugins to extend discussion sidebar, and add there features like a subscribe (db46100a)
- file: display file upload limit on file upload form (09001b9d)
- filestore:
- add elgg_get_file_simple_type() to core api (69e54e4c)
- add a hook to fix detected mimetype (4ddc7843)
- groups: Added featured groups as a tab along with groups, popular, discussions (f77356e3)
- js: extended the usability of rel="toggle" (1d89418e)
- messages: improved UI for messages listing (46821a62)
- php: Require PHP 5.4+ (42b76d37, closes #7090)
- plugins: added default param to elgg_get_plugin_user_setting (13000c98)
- requirements: PHP 5.3.3+ is now required (3a555512, closes #6165)
- router: add original params to route hook (1b1026c3)
- settings: adds setting for default number of items per page (d1d0a4e1, closes #2650)
- site_notifications: option to mass delete site notifications … (c28eaac7)
- users: Username character blacklist can now be altered via plugin hook (7dc63eb2, closes #6189)
- usersettings: every user setting has its own menu item (6c1631d1)
- views:
- output/tag supports all output/url options (d0c9c855)
- allows rendering empty results using an anonymous function (a8f15ffa)
- output readable access level for any access_id (c9c2e12c, closes #7133)
- webapp: Add support for a basic WebApp Manifest file (27c9ef4a, closes #7493)
Performance
- annotations: increased performance of egef_annotations (96e6bd37, closes #6638)
- db: Disabled SQL DISTINCT in more cases. (98a99c83)
- entities: preloads owners when drawing lists of entities/likes (82088d5e, closes #5949)
- likes: reduces number of queries when showing likes in lists (90991256, closes #6941)
- session: speed up elgg_is_admin_user() (aed21337)
- sql: allows removing DISTINCT from some MySQL queries (293317f2, closes #4594)
- views: remove unneeded view calls in river/elements/body view (4ef23b61)
Documentation
- requirements: Document new rolling support policy for browsers (9ce72099, closes #5932)
Bug Fixes
- ckeditor: ckeditor now prevents image drag/drop/paste in editor (47fecbea)
- config: path is derived from PHP, not database (b756cbb4)
- css:
- strings together elgg-button and button sizes (3cbe5877)
- removes link color from "comments" header in river, default theme (f140ffb9, closes #7137)
- removes padding and margin from elgg-menu-entity items (e732645b)
- db: elgg_get_metastring_id should always create an id (423f1f6d)
- deprecation: deprecation warnings for 1.10 now work as expected (3d8ada59)
- discussion: also search in discussion replies when searching discussion topics (604697f3)
- entities: system files removed for all entities on delete (800d1f36, closes #7130)
- forms: Login and account forms widened and centered by default (5fc81511, closes #6456)
- groups:
- replaced deprecated entity loading with new method (a8f73627)
- adds wrapper to the message, This discussion is closed (a336db85)
- pages: add canEdit to page deletion permission check (454deb63)
- river:
- allow everyone to look at everyones activity page (f15e7ff8)
- rss layout supports mulitple installations in the same host (2e7262b4)
- search: respect entity type/subtype instead of params type/subtype (758263a3)
- session: correctly sets cookie params for sessions (565dd08c)
- upgrade: no longer try to process upgrade files from before installation version (15c6f109)
- views:
- allows passing base_url through gallery view (fb32d683, closes #7669)
- show different text on widgetpanel toggle button when opened (b4e63b45)
- elgg_view_menu_item shows no link for items with null href (a64432cf)
- move function and menu items out of file typecloud view (e28bcd9e)
- makes admin panel mobile friendly (a8d9eeca, closes #6742)
Deprecations
- access: deprecates elgg_get_access_object() and refactors access lib (d19cf2bf)
- filestore: deprecate file_get_simple_type() and file_get_general_file_type() (c6042cbe)
- plugins: formally deprecates use of $CONFIG in start.php (ee8f2edc)
- view: deprecate output/confirmlink for consolidated output/url with 'confirm' option (6e5e3910, closes #5810)
- views: deprecates use of the core/settings/tools view (239b730f)
Breaking Changes
- The CSSMin class included via minify was renamed to CSSmin. If you were referring to it with capital M, you'll have to change that to lower-case m.
However, note that Elgg's dependencies are not considered public API, so this notice is only a courtesy. Please explicitly declare your dependencies on third party vendors, even ones that you know Elgg already includes. We may remove or update them at any time. (c3b0d8bc)
- If you are checking out Elgg directly from GitHub, you will need to run
composer install
after git checkout
to get your installation to a working state. (2e60327f)
1.9.8 (2015-01-11)
Contributors
- Juho Jaakkola (1)
- Matt Beckett (1)
- Steve Clay (1)
- iionly (1)
Bug Fixes
- css: Correct z-index for autocomplete form field when opened in lightbox (e993141f)
- notifications: subject of comment notification email always starts with "Re: " (b5175b56, closes #7743)
- profile: admin defined profile fields are once again back-compatible (8e577be4, closes #7634)
1.9.7 (2014-12-14)
Contributors
- Jerôme Bakker (5)
- iionly (3)
- Jeroen Dalsem (2)
- Juho Jaakkola (2)
- Matt Beckett (1)
Documentation
- design: added the data model image from docs (680c3cf8)
- general: moved pronuncation file from docs (3718dac7)
- support: added documentation about the support policies of Elgg (bdd7855c)
Bug Fixes
- core: deprecation notices thrown at login/logout even if there's no valid reason (d22a6406)
- likes: Uses getDisplayName() instead of assuming the object has value in title property (7ece624f)
- notifications: Verifies that a notification method is registered before using it (4eddf313, closes #7647)
- pageowner: allow unsetting of page owner guid (a57e1fbe)
- uservalidationbyemail: usage of deprecated ['login', 'user'] event (23939b80)
- views: correctly close the comment form contents (0420bd00)
1.9.6 (2014-12-01)
Contributors
- Jerôme Bakker (74)
- Paweł Sroka (7)
- Jeroen Dalsem (2)
- Brett Profitt (1)
- Juho Jaakkola (1)
- iionly (1)
Documentation
- admin:
- moved the finding plugins page from docs (d054a5fd)
- moved the plugin order page from docs (dfb68cb0)
- moved the getting help page from docs (2546fc9f)
- moved duplicate installation from docs (53dfaca8)
- moved backup and restore page from docs (e66a2432)
- design: moved the Loggable page from docs (02f68068)
- faq:
- moved the Javascript not working page from docs (94a00252)
- moved the Deprecation warnings page from docs (66374e0f)
- moved the No images page from docs (2b261c8f)
- moved the File is missing an owner page from docs (46f71887)
- moved the Copy a plugin page from docs (a0b4b27a)
- moved the session length page from docs (c337b834)
- moved Emails don't support non-Latin characters from docs (c6001fba)
- moved the What variables are reserved by Elgg page from docs (2d5a2a16)
- moved the IE login problem page from docs (7445c19c)
- moved the page not found page from docs (d0435c55)
- move the Should I edit the database manually page from docs (d04a1383)
- moved the css is missing page from docs (5b54b38c)
- moved the filtering page from docs (68baa0e6)
- moved the When I upload a photo or change my profile picture I get a white screen page from docs (ffbdd0d2)
- moved the security faq from docs (627ff4f5)
- moved the 500 - Internal Server Error page from docs (68a8ce19)
- moved the What events are triggered on every page load page from docs (be493213)
- moved the Using a test site page from docs (dc2fe2a7)
- moved the Https login turned on accidently page (aeb32f65)
- moved the debug mode page from docs (6b2d18e3)
- split the faq page into different files for readability (bb1de6a6)
- moved Manually add user from docs (0fa6c070)
- moved How do I change PHP settings using .htaccess from docs (0defcaaa)
- moved how does registration work page from docs (13ac44d3)
- moved How do I find the code that does x from docs (ef30d048)
- move the I don't like the wording of something in Elgg page from docs (9c13832b)
- moved the Changing registration page from docs (6d7e4f48)
- moved the changing profile fields page from docs (151d25a0)
- moved What should I use to edit php code from docs (375869d1)
- features: added a link to the Elgg showcas page (334d2010)
- general: adds contents indexes to long pages (ebf316c9)
- guides:
- moved Walled Garden page from docs (4100ccef)
- moved the Accessibility Guidelines from docs (5b687a42)
- moved the systemlog page from docs (de73bb22)
- moved the How to restrict where widgets can be used from docs (17ec2d35)
- moved the javascript hooks page from docs (71551797)
- moved the PluginDependencies from docs (e37d79a2)
- moved hmac authentication page from docs (7b37f083)
- moved don't modify core page from docs (c99e0008)
- moved the ajax page from docs (b758c731)
- moved Engine/Controllers/BestPractices from docs (26f77b0d)
- move plugin coding guidelines from docs (9c4ee9f9)
- moved the gatekeeper page from docs (686fb7b2)
- moved simplecache from docs (a2d9b474)
- moved the authentication page from docs (0e928075)
- moved the permissions check documentation from docs (d9a6a88a)
- moved the plugin (user)settings documentation from docs (bf2d984d)
- moved the context documentation from docs (87bd91f9)
- moved the helper functions page from docs (96d7d374)
- moved the page handler documentation from docs (e327d354)
- guids: moved page ownership from docs (223d668a)
- pdf: Added LaTeX build testing to Travis (021a95c5)
- plugins:
- moved the System diagnostics page from docs (df2062a7)
- moved the diagnostics page from docs (b69c978c)
- completed the list of bundled plugins (2a886a84)
- moved the thewire plugin description from docs (5443e715)
- moved the blog plugin description from docs (722d1202)
- moved the messages plugin description from docs (450c00b5)
- moved the messageboard plugin description from docs (5d06e409)
- moved the pages plugin description from docs (47f9d2c8)
- moved the profile plugin description from docs (3fd4168c)
- moved the groups plugin description from docs (0e1a6bdb)
- moved the file plugin description from docs (140fb7ba)
- moved the dashboard plugin description from docs (2b17c2ce)
- moved the plugin skeleton documentation (d8ae89c7)
- travis: Added validation of translated docs sources for es language to Travis (40d284e1)
- views: moved the page structure best practices page from docs (c441a3f1)
Bug Fixes
- core: getFilenameOnFilestore() returns empty string if an ElggFile object has no filename set (a03591e7)
- docs:
- Fixed docs elements not allowing LaTeX builds to succeed. (659d5796)
- Fixed docs syntax for the PDF builds. (e3683683)
- forms: Removes icon and title links from autocomplete results (aff7e69e, closes #5583)
- livesearch: removed custom queries with ege* functions (d3656fa2)
- plugins: trigger plugin hooks when saving plugin settings (19c31361, closes #6820, #7502)
- session: Explicitly closing the session in the shutdown hook to work around APC session problems. (7dbe7c6d, closes #7186)
- views: allow numeric 0 values to show on user and group profile (edee47e5)
1.9.5 (2014-11-17)
Contributors
- Jeroen Dalsem (18)
- Brett Profitt (7)
- Steve Clay (7)
- Evan Winslow (3)
- Ismayil Khayredinov (3)
- Juho Jaakkola (3)
- Per Jensen (3)
- Jerôme Bakker (2)
- Paweł Sroka (2)
- Stian Liknes (2)
- Diego Andrés Ramírez Aragón (1)
- Matt Beckett (1)
- iionly (1)
Performance
- db: correctly re-enable query cache after ElggBatch run (a8c3fbd9)
- river: only fetch comments if comment_count > 0 (db64e16d)
Documentation
- actions: Migrated actions section from old Getting Started docs and cleaned up related sections. (d47a980f)
- admin: Migrated Getting Started guide from wiki. (11e589f6)
- all:
- coding: improves docs for commits/amending/standards (e8166d78)
- database: updated and expanded information on entity icons (7bb60185)
- events: Updated event list and cleaned up existing event docs. (433ed90c)
- faqs: Started migrating some FAQs. (cd3afdcc)
- hook: Updated hooks docs. (327ecb48)
- menus: improve docs for menu item factory (61751db6)
- notifications: documentation for the notifications system (ac12ac99, closes #7308)
- style: documents trailing whitespace policy and script (798810c7)
Bug Fixes
- aalborg: More robust grid reflows for smaller screens (8d8155e7, closes #7393)
- access: always display readable access level for ACCESS_* constants (a74421f9, closes #6801)
- core:
- renaming to _elgg_namespace_plugin_private_setting forgotten in unsetAllSettings (782b75f2)
- prevent sql exception when metastring is interpreted as very large number in egef_metadata (bab43d60, closes #7009)
- css: markdown code blocks should not should nested borders (8c736c2f)
- friends: show friends collections menu item in friend context (5073deeb)
- i18n:
- Commit docs/*.mo files on release so docs can be translated (8ca2b6b6, closes #7034)
- improved removing profile field delete failure notice (a6f561e2)
- grammar fix in upgrade warning (f5d4d35f)
- login: also allow login by email in maintenance mode (4258bc3d)
- menu: only show access entity menu item if logged in (714b0834)
- menus: allow max depth of 20 to prevent losing menu items (d3e33db3)
- pagination: removes hard-coded arrows from php file (eb136ef1, closes #5298)
- plugins: trigger plugin hooks when saving plugin settings (5afadfc8, closes #6820)
- relationships: distinct ege* results when relationship_guid is not set (4d87b950, closes #5775)
- release: Corrected release script Windows system compatibility. (00012389)
- upgrade:
- Rechecks that all annotation comments have been migrated to entities (7d81094c, closes #7486)
- Ensure that
$CONFIG
is always available to upgrade scripts (c102a713, closes #7457)
- uservalidationbyemail: makes emailsent page public (70bbdd65, closes #7334)
- views:
- Revert erroneous changes made to input/userpicker (e4008c65)
- input/userpicker can now remove all users on edit (4cf113ab, closes #6982)
- comma separating links to text files in plugin list (4e9b8ad1, closes #7420)
- usersettings form now has correct userguid set (2c204200)
- use elgg-button-action class on all cancel buttons (857df27a)
- prevent output of empty heading when there is no page title (c3f7f225)
- add apple-touch-icon (3e4d2164, closes #6176)
- widgets: determine default values for num display in content view (bd20730d)
1.9.4 (2014-10-20)
Contributors
- Juho Jaakkola (6)
- Jeroen Dalsem (4)
- Steve Clay (4)
- Per Jensen (3)
- Stian Liknes (3)
- Jerôme Bakker (1)
Documentation
- plugins: Information on activation/deactivation (4e58ad4d)
- web_services: Documentation for Elgg 1.9 (7cf0f8fd)
Bug Fixes
- aalborg_theme: display search when logged out (31d3d190)
- bookmarks: fixes more link in group bookmarks widget (adb46369, closes #6583)
- css:
- stop CSS from overwriting the width and height added in CKEditor (428234c0, closes #7269)
- removed datepicker fixed width causing visual bug (803e05f5)
- prevent select box from overflowing its container (3b7e94d5, closes #7290)
- database: More robust sql script execution. (0c5ed4f2)
- db: query cache properly handles more callable types (b8e58304)
- discussion: discussion replies respect previous subscribers (d699fe63)
- i18n:
- improved change password email subject and body text (ade6d1c1)
- translate notification messages to the recipient's language (071b2989, closes #7241, #NaN)
- allow core to load translations for a specific language on-demand (6417d213)
- install: prevent WSOD caused by site default language not being defined early enough (3b9dc902)
- search: keep container param intact when navigating search results (3dd87ec1)
1.9.3 (2014-10-06)
Contributors
- Juho Jaakkola (3)
- Jeroen Dalsem (1)
- Steve Clay (1)
Documentation
- js: Adds docs for more JS functions, improves docs for elgg.echo (fa0d0fa8)
- menus: document how to use menus (18ac4008)
Bug Fixes
- icons: some elgg icons were not using internal view (493e5c9f)
1.9.2 (2014-09-21)
Contributors
- Juho Jaakkola (8)
- Steve Clay (2)
Documentation
- manifest: document how to use manifest.xml (f4fa7487)
- river: adds documentation on how to use the river (d8be198c)
- upgrade: clarifies upgrade instructions about updating Elgg codebase (6a8fec02, closes #7225)
- views: adds documentation for the views system (ff6cf55b)
Bug Fixes
- install: confirm that settings.php exists and is readable before including it (aaa828ed)
- style: ordered list markers now always visible (ecccafc3, closes #7206)
- upgrades: now stores ElggUpgrade by paths instead of full URLs (39cf72f0, closes #6838)
1.9.1 (2014-09-12)
Contributors
Bug Fixes
- upgrade: fixes erroneous values in the list of processed upgrades (c6ebbdb2, closes #7198)
1.9.0 (2014-09-07)
Contributors
- Juho Jaakkola (3)
- Ismayil Khayredinov (1)
- Matt Beckett (1)
Bug Fixes
- embed: embed jquery target is now searched for instead of assuming last class (cfe605d4)
- i18n: system cache now supports regional designators in language codes (735ceb4e, closes #7187)
- messages: use recipient's language in the notification (ee88054f, closes #6902)
1.9.0-rc.7 (2014-08-25)
Contributors
- Steve Clay (5)
- Juho Jaakkola (3)
- Paweł Sroka (2)
- Per Jensen (2)
- Brett Profitt (1)
Bug Fixes
- aalborg_theme: broken layout on small screens (a2e88157, closes #7175)
- access:
- has_access_to_entity() now respects ACLs also when set to be ignored (bac9a80a, closes #7159)
- get_access_array() works correctly when logged out (7fb67a29)
- css: removes padding and margin from elgg-menu-entity items (04c5e61f)
- discussion: Fixes inline edit of replies temporarily changing applied styles to the text (fa8572cb, closes #6879)
- notification: avoids fatal error if notification event lacks object (5dfa343d, closes #7157)
- output: elgg_normalize_url no longer mistakes querystrings for domains (505d249b)
- profile: Making banned users more obvious when using custom profile fields. (c8c7098a)
1.9.0-rc.6 (2014-08-11)
Contributors
- Juho Jaakkola (6)
- Evan Winslow (5)
- Ismayil Khayredinov (5)
- Brett Profitt (2)
- Jerôme Bakker (2)
- Per Jensen (1)
Features
- ckeditor: add "clear formatting" button (0f5525df, closes #7105)
- likes: improves compatibility with notification plugins (ccfb65c3)
- notifications: site_notification about an annotation can now have an URL (124190eb, closes #7055)
Documentation
- all:
- improves formatting and comprehensibility of docs (de3837be)
- fixes typos and improves readability (a7ac76ce)
- contribute: Updated recommendations on which branch to submit against (b84269ce, closes #6964)
- cron: adds RST documentation about cron jobs (65b10fd8)
- js: corrects function name to shim AMD modules (091c8b2e, closes #7072)
- notifications: Adds docs for 'object', 'action' and 'summary' params used by notify_user() (ad00612f)
Bug Fixes
- embed:
- Checking for lightbox and embed before loading JS libs when requested through AJAX. (e8c1b4fd)
- Manually load CSS/JS libs for embed when editing comments on the activity page. (6cc585c6, closes #6422)
- groups: removes ACCESS_PUBLIC from visibility options if walled garden is enabled (70c911ee)
- js: elgg.normalize_url no longer modifies urls that begin with a recognized scheme (b6dc613e, closes #6000)
- notification: extract notification summary from $params (c966fcae, closes #6885)
- pages: Stop registering undefined upgrade event callback (53eba1e0, closes #6780)
- views: respect icon_sizes config values when rendering icons (54858e97)
- walled_garden: ACCESS_PUBLIC no longer available in group context (7c4ec694)
1.9.0-rc.5 (2014-07-10)
Contributors
- Matt Beckett (3)
- Jerôme Bakker (1)
Bug Fixes
- core: output/iframe made to the w3c standard (cb25d684)
- river: add enabled col to river table, update on enable/disable of referenced entities (eb041ebd, closes #6022)
- upgrade: use correct table prefixes on river upgrade script (1c5c2b63, closes #7033)
1.9.0-rc.4 (2014-07-10)
Contributors
- Evan Winslow (9)
- Paweł Sroka (6)
- Matt Beckett (3)
- Jeroen Dalsem (2)
- Paul Shepel (2)
- Steve Clay (2)
- Adrián Chaves Fernández (Gallaecio) (1)
- JoseLGM (1)
- Per Jensen (1)
Features
- discussions: Added email SMTP headers for better thread grouping. (91755a86, closes #6894)
Documentation
- i18n: internationalized the documentation (ff5fd9be, closes #5899)
- upgrading: Added upgrade instructions for 1.8 to 1.9 (001e3ffa, closes #5900)
Bug Fixes
- aalborg_theme: selected page menu does not collapse sub menu (53f696ce, closes #6979)
- collections: make urls work regardless of username (76827f22, closes #6059)
- core: Added missing options array support for ElggUser methods (30d98c67, closes #6994)
- deprecation: the deprecation wrapper correctly handles array access (264fc5f2, closes #7017, #6917)
- discussion: no longer show entity menu items on non-discussions (d3c7c953, closes #6508)
- file:
- destroy output buffer before sending file (007021ff)
- download adds header Content-Length (8375eb09)
- groups: give feedback if a user cannot be added to a group (07cddc61, closes #6081)
- install: Make installer usable on smartphones (b528d988)
- members: prevent members search with empty query (12f7b88f)
- notifications: Corrected html entities handling for email subject and body (4bfb849e, closes #6905)
- release: Corrected release script Windows system compatibility (18f78403)
- router: Can return 'handler' param in ‘'route’, $identifier` hook again (6e09758f, closes #6696)
- rss: River entries include their full correct summaries again (96679d8b, closes #6901)
- thewire: More effective textarea change detection (e07f6975)
- ui: Corrected bad stretching of non-square, large avatars. Now upscaling by width. (71ea155b, closes #5602)
- upgrade: test for ability to connect to localhost if rewrite test fails (7c49e4ce, closes #6888)
1.9.0-rc.3 (2014-06-23)
Contributors
- Evan Winslow (4)
- Paweł Sroka (1)
- Per Jensen (1)
- RiverVanRain (1)
Bug Fixes
- a11y:
- Add semantic structure to installer page layout (f446e6f1)
- Use HTML5 form features on install forms (434efa22)
- Label form fields in installer correctly (dff254a9)
- aalborg_theme: removes unwanted margins (b972402d)
- replies: Show reply's link on river (5fc031a5)
1.9.0-rc.2 (2014-06-09)
Contributors
- Evan Winslow (11)
- Per Jensen (4)
- Paweł Sroka (2)
- Jeroen Dalsem (1)
- John Supplee (1)
Bug Fixes
- UserPicker: no messages in userpicker due to lack of i18n (7d7a7d5e)
- aalborg_theme:
- emphasizes sidebar navigation (6ae2148c, closes #6874)
- Support fullscreen mode if user adds app to homescreen (2a193078, closes #6896)
- show dashboard menu item only when logged in (c3e0fcb8)
- inconsistency between owner-block and page menu (f54048a5)
- only pass body_attrs if they are set (6ab77862)
- deprecated: Corrected invalid deprecation notice and added more details to few others (5d78e2b1, closes #6869)
- docs: Inline refs use of (50b0e39e)
1.9.0-rc.1 (2014-05-19)
Contributors
- Cash Costello (689)
- Steve Clay (226)
- Evan Winslow (150)
- Paweł Sroka (136)
- Sem (91)
- Brett Profitt (68)
- Jeroen Dalsem (59)
- Juho Jaakkola (54)
- Per Jensen (23)
- Ismayil Khayredinov (23)
- RiverVanRain (16)
- Matt Beckett (12)
- hellekin (12)
- Jerôme Bakker (8)
- Aday Talavera (7)
- Jeff Tilson (7)
- Marcus Povey (5)
- Rasmus Lerdorf (5)
- Brad Smith (5)
- Hayden Shaw (3)
- Ben Werdmuller (3)
- András Szepesházi (2)
- slyhne (2)
- Facyla (2)
- ManUtopiK (1)
- Emmanuel (1)
- Centillien (1)
- twentyfiveautumn (1)
- Janek Lasocki-Biczysko (1)
- Ash Ward (1)
- Arsalan Shah (1)
- Angel Gabriel Vargas Beltran (1)
- Tantek Çelik (1)
- Team Webgalli (1)
- bwoodnz (1)
- Danny Navarro (1)
- EC2 Default User (1)
- Kody Peterson (1)
- Liang Lee (1)
Features
- admin: Admin notices are removed when the actions requested actions has been taken. (e6a46a84, closes #6453)
- amd: added some utils to Elgg_Amd_Config class (c45d4d18)
- comments: Added separate edit page for generic comments (a5c73b6e, closes #6666)
- core:
- better registration of usersettings handlers (6469d55d)
- allow custom local scripts to trigger on uncaught exceptions #6586 (7e0794ca)
- Allowing upgrade.php to forward to custom URLs. (e5c11d8c, closes #6442)
- externalpages: page layout changed to one_column (909536f9)
- graphics: make logos transparent (2fc838c0)
- lightbox: added binding for elgg-lightbox-photo CSS class (6eb22a2d)
- output: Added second parameter to elgg_strip_tags. (39f8d80c)
- search: Allows filtering/reordering types returned in search (5eebf1e6, closes #6118)
- ui:
- upgrade: Added ElggUpgrade object. (3aae56b4)
- users: making nicer lost password process (d7c6f850, closes #5886)
- uservalidationbyemail: forwarding to an info page after registration (6fbb8c93, closes #6247)
- ux: Failed file uploads give better error messages. (8eb652c2, closes #6593)
- views: bypasses minification for views like -min/.min (0462bdff, closes #6260)
Performance
- groups: remove redundant filter of user-owner group acls (a65df346, closes #6434)
- upgrade:
Documentation
- aalborg_theme: document change of content order (0ed207d9, closes #5787)
- about: Add contributing, history, releases, and values docs (1b67f575)
- admin: Created new admin section for admin-specific docs (abc55ef1)
- all: Cut fluff (bae2d199)
- amd: Separated design and guides for AMD docs. (d0ebcb7a)
- appendix: move about => appendix; add contribute guide (118bfa16)
- autoloader: more accurate docs for autoloader (5fdbc181)
- changelog:
- code:
- fix whitespace warnings (110a6844)
- add docs on testing and cleanup (d9f2cdca)
- merge coding_standards into contribute/code.rst (b752e6dd)
- config: document custom exception handling (7dde7bf4)
- contribute:
- add instructions for translators (feb16f6a)
- add instructions for rewriting commit messages (4e5d6e3c)
- clean up PR instructions (16308a46)
- expanded contributors section (b969080c)
- events: Reword docs for hooks (3cb690fe)
- fix: Fixing MD links for new docs. (04c399f3)
- guides: add web services dev guide (400a2453)
- hooks: Corrects docs syntax error (69ae152d)
- i18n: Add minimal i18n documentation ported from wiki (6b0e58df)
- js: use proper title markup (77146f46)
- moved: use :orphan: instead of lying toctree (6544176d)
- outline: make titles consistent with each other (d554e9b0)
- performance: add suggestions for performance and scalability (76e3ecd1)
- plugins: added instructions on upgrading plugins for Elgg 1.9 (b1c501c4)
- release: add release process workflow (5df29847)
- releases: add commit access as requirement (9821089c)
- rewrite: Finish migration from what we had in GDocs (ce8c40b3)
- security: Add security rst docs (fc52baf3)
- themes: converts theming docs to rst (fddd7686)
- tutorials: Add blog, indexpage, widget, and wysiwyg (faafc2e2)
- updates: Updating contributing docs to point to feedback and planning group and to mentio (c10f09f8)
- views: Updated docs for elgg_extend_view() to address uniqueness of extended views. (06c95e4b, closes #6661)
Bug Fixes
- a11y: keep focus outlines by default (56add7a6, closes #6319)
- aalborg_theme: standardize padding on input and a buttons (dbc510d7)
- admin:
- show plugin settings menu on markdown page (19e3e8d3)
- fixed javascript error on toggle simple cache checkbox (0533f2a3, closes #6529)
- amd: removed elgg_require_js for backwards compatibility (76584089, closes #6496)
- autocomplete: use group summary instead of profile view (82c6871c)
- ckeditor:
- create a new input element was re-enabling other input fields (04ab5b65)
- makes sure basepath is set early enough (9b84b0c2)
- comments:
- core:
- css:
- selected page menu does not collapse sub menu (f9af6a66)
- add hover classes to hover icons (fb2e9a36, closes #6737)
- reposition powered by elgg (9b3d43fc)
- prevent stretching images in IE8 (61ac1874)
- Added CSS for elgg-state-selected menu items in theme sandbox. (e5741ce5)
- developer_tools: Added all of the defined icons to the theme preview. (d0ccfc1b)
- docs:
- Fixed links in mediawiki format instead of reST. Removed reference to Transifex (b5c9f419)
- fix a couple of typos (e34f57d7)
- embed:
- show error when when uploading too large file in embed form (a661c65c, closes #4591)
- file embedding wasn't working for textareas (4f1ffdec, closes #6160)
- Allows embedding files from the containing group (d5aea243)
- make pagination in embed colorbox usable (4aeafa70)
- make tabs in colorbox popup usable (16ca1fd1)
- entities: reverts to 1.8 behavior of ElggEntity->subtype reads (2fa7c6ce, closes #5920)
- events: makes the plugin_id parameter reliable for plugin events (8b62fb8e)
- gatekeeper: stop treating being logged out as an error state (03df35cd)
- git: Igorning revert commits in Travis and in commit-message git hook. (36acbbf0)
- groups:
- Run discussion reply migration regardless if groups plugin is enabled. (02023f45, closes #6729)
- check if handler is set in params before calling it (9e2bcb6d)
- forces content accessibility to members_only for invisible groups (47a8c7ab)
- fix the group acl id in write access array (de2b6a68)
- displays correct group content access options for each content access mode (b99f475a)
- hooks:
- handlers returning null/undefined don't change returnvalue in javascript (b1af0b6d, closes #6531)
- return values defaults to null in javascript (ff095943, closes #6499)
- remove event handler registration (dbcf8b48, closes #6410)
- htmlawed: Setting the params argument to a defaut of null in htmlawed_filter_tags(). (d337ceee, closes #6614)
- http: makes HTTP request/parameter bag PHP 5.2 compatible (21719be9)
- install:
- assume port 443 means HTTPS is in use (df76005c, closes #6190)
- Put all themes at bottom of plugins list during installation. (ec5458d1, closes #6530)
- fatal exception during installation (7993273d)
- invitefriends:
- make invite form sticky (74b1556c)
- check if registration is allowed before display menu item and pages (c83630ce, closes #6400)
- js: Separated elgg_load_js() and elgg_define_js(). (a73838d9)
- lightbox:
- setting fancybox's z-index for colorbox (51231f46)
- make lightbox scrollbar look better (aeaafa6d)
- CKEditor was weird in lightbox (0e4e3dd1)
- Correctly applies color box options on each element (b2950027, closes #6107)
- lightbox wasn't shown when generated from ajax view. (937c8d1e, closes #6304)
- memcache: Better logging of save/hits/misses (6448bb95, closes #6243)
- pages: memory leaks in large page trees (ab6ef0df, closes #6477)
- plugins: Stops junk log entries created on plugins page (f76312fd, closes #6066)
- rewrite_tester: more reliably sniffs active rewrite rules (3090bf08, closes #6656)
- routing:
- session:
- session unavailable in shutdown functions (3d6c33e4)
- fixes remember me functionality broken in 1.8.19 merge (659ea108)
- site_notifications: added correct key for menu item (186e7174)
- tests: Corrected the way the commit message tests are run. (9e0183f4, closes #6507)
- thewire:
- Restores functionality of JS max length limit parametrization (66e478f5, closes #6646)
- Fix word count JS events tapping (d3e3a30b)
- ui:
- mispositioned editor when editing a comment that contains a floated image (5f52eb75, closes #6576)
- use correct logo in favicon (1c98fdac, closes #6446)
- Added CSS to make the site menu show up correctly in theme sandbox. (e7ac3aeb)
- upgrade:
- Corrects query to clear admin remember me cookies (7ee022b6)
- Adds an admin notice when a new ElggUpgrade object is created (84959e75)
- Corrected the way ignore access and show hidden entities is applied (ccec25ac)
- Added upgrade to deactivate TinyMCE and activate CKEditor. (b6970f1c, closes #6653)
- Fixed a typo in the comments upgrade that broke the ajax upgrade. (fa0340ad)
- Only running comment migration timestamp fix if comments exist. (5901995d, closes #6621)
- Correctly settings container guids' last_action times during comment migration. (9df2367c, closes #6528)
- Setting time_updated and last_action for migrated comment and discussion entitie (ed7cf3bc, closes #6395)
- uservalidationbyemail: do not show email sent page to logged in users. (5534a576, closes #6649)
- ux: Server-side validation for email fields in profile edit action. (7d70c6df)
- vendors: corrected version for requirejs (22cf6d64, closes #6735)
- views:
- removes notices from views used in theme sandbox (9141ecd1)
- fix typo in $attrs var name (224a7729)
- only pass body_attrs if they are set (3749dda1)
- check if body_attrs are set before attempting to format them (baf2df93, closes #6298)
- Using sitedescription in meta description tag. (66f06919)
- Correct default title for confirmlink (dd1e83c3, closes #6375)
Performance
- Using dataroot and simplecache_enabled if set in settings.php
- Changes simplecache caching so that it is performed on demand
- Adds support for simplecache minification of CSS and JavaScript
- Adds ability to enable the query cache after being disabled
- Don't call getter after a previous count call returned 0 items
- Make sure Apache2 is configured so .ico can be cached
- Adds deflate Apache filter to SVG images
- Log display no longer emit deprecation warnings and uses fewer queries
- speeds up user location upgrade
- Progress toward HHVM compatibility
UI changes
- Lots of spit and polish
- New responsive theme - aalborg_theme
- Drops support for IE6
- Replaces fancybox lightbox with colorbox
- Replaces Tinymce editor with CKEditor
- Liking and friending use ajax
- Removes topbar Elgg logo and made "powered by" themable
- Allows keeping group content limited to the group
- Site notifications moved into separate plugin from messages
- Shows owner block when viewing own content
- Focus styles for accessible keyboard navigation
- Improved theme sandbox
- Session expired message
- Ajaxified the discussion reply edit form.
- Alphabetize friends/friends-of, group notifications, group owned/member lists
- Added support for greying out the label of disabled input
- Added more microformats to the profile page
- Automatically configure autocorrect and autocapitalize for input views
- Using unified language strings for several plugins
- Adds focus outlines to all focusable elements
Admin changes
- Adds new notification system
- Makes the wire message length configurable
- Changes user directories use GUIDs rather than join date
- Adds banned user widget
- Adds legacy_url plugin for supporting legacy URLs
- Adds robots.txt configuration
- Adds maintenance mode
- Added automatic configuration of RewriteBase during fresh install.
New developer features
- HTML5
- New mysql-based async queue
- AMD modules using require.js
- New notification system
- New class loader that is PSR-0 compliant
- Improves control over cookies
- Adds plugin manifest fields (id, php_version, contributors)
- Static files recognized as views
- Adds support for multi-select
- JSON rendered through views system rather than using global
- Links in login box use menu system
- Upgrades jQuery and includes the jquery migrate plugin
- Widgets can set their titles
- New JavaScript unit test library
- Front page and actions go through page handling system
- Group edit form easier to extend
- More specific list item classes
- Page layouts more standardized with same elements
- Allows customizing colorbox instances
- Views system recognizes static files as views in addition to PHP files
- Adds ability to turn off query cache
- Can change time_created if set explicitly
- Allows update event to alter attributes and checks canEdit() on DB copy
- add more specific list item classes
- moved elgg_view_icon html to own view for more flexibility
- Allow body attributes
- Eases extending the input/view view
- Split group edit form into seperate parts
- Moved group_activity widget from dashboard to groups plugin
- Adds warnings for uncallable handlers in hooks/events.
- Members list pages (tabs/content/titles) can now be extended via plugins
- Adds configuration support for remember me cookie
API changes
- Comments and discussion replies are entities
- New notification system
- Changes elgg_register_widget_type() to expect contexts to be an array
- New session API accessible via elgg_get_session()
- Moves many functions into methods on ElggEntity and related classes
- Adds support for returning translations as arrays from language files
- Adds ElggEntity::getDisplayName()
- Adds ElggEntity::toObject()
- Adds target_guid to the river
- Adds elgg_get_entities_from_attributes()
- Adds ElggMenuItem::addItemClass()
- Adds elgg_get_menu_item()
- Adds elgg_format_element() for creating HTML elements
- ElggFile::getSize() replaces ElggFile::size()
- Defaults to full_view = false in elgg_list_entities* functions
- Allows views to be accessed via URL and cacheable
- Columns added to entity query functions are available in returned entities
- Separates some events into :before/:after
- Adds elgg_entity_gatekeeper()
- get_online_users() and find_active_users() now use $options arrays
- Adds default option to elgg_get_plugin_setting
- namespaced the gatekeeper functions (but made it optional)
- Added URL fragment (#anchors) support to elgg_http_build_url
- made elgg_unregister_menu_item() more useful
New hooks/events
- plugin hook: simple_type, file
- plugin hook: default, access
- plugin hook: login:forward, user
- plugin hook: layout, page
- plugin hook: shell, page
- plugin hook: head, page
- plugin hook: get_sql, access
- plugin hook: maintenance:allow, url
- notifications plugin hooks
- event: init:cookie, name
Deprecated functionality
- calendar library (was not maintained)
- web services library (now plugin distributed with Elgg)
- export, import, and opendd libraries (see ElggEntity:toObject())
- location library
- xml library
- Split logout event to before/after events
- Split login event to before/after events
- Added a deprecate notice to the elgg_view_icon use of a boolean
- Deprecated get_annotation_url() in favor of ElggAnnotation::getURL()
- Deprecated full_url() in favor of current_page_url()
- Deprecated "class" in ElggMenuItem::factory in favor of "link_class"
- Deprecated passing null to ElggRelationship constructor
- Deprecated .elgg-autofocus in favor of HTML5 autofocus
- Deprecated ElggUser::countObjects (part of Friendable interface)
- Deprecated favicon view in favor of head, page plugin hook
- Deprecated analytics view in favor of page/elements/foot
- Deprecated availability of $vars keys (url, config) and $CONFIG
- Deprecated ElggEntity::get()/set() in favor of property access
- Deprecated cron, reboot event
- Deprecated add_to_river() in favor of elgg_create_river_item()
- Renames many functions to begin with "elgg_" (with deprecated versions)
Removed functionality
Documentation
Security Enhancements
- Using SSL for setting password when https login enabled
- Make several views files non-executable
Bugfixes
- HTMLawed Strips html comments and CDATA from input
- Hundreds of miscellaneous fixes
- users can edit metadata that they created by default
- removes special check to allow access override
- if no container, default to false for writing to container
- fixes default user access
- returning false to create events forces delete regardless of access
- Fix json and xml views broken by wrap view of developer tools
- Do not use link with file icon when using full_view.
- made page shells consistent for $vars parameters
- show owner block also if looking at owned pages
- Pagination uses HTTP referrer as default base_url for Ajax requests
- Added several missing translation strings
- standardizes layouts so that they all have title buttons and the same basic sections
- entity list limit respects passed limits and just provides defaults
- fixes setting page owner due to routing change
- Fixed batch install usage of createHtaccess
- fixed typo that prevented context for front page from being set
- Make sure empty string return is interpreted as "handling" the list hook
- replaced double search box with a single box and a single searchhook
- Login, user event code can use elgg_get_logged_in_user_*()
- Make sure user has access to both river object and target
- Uses correct default value for find_active_users 'seconds' parameter
- Added jquery map file and unminified version to make Chrome dev tools happy and not throw 404 error
- Corrects container write permissions bug
- Sends correct Content-Length with profile icon
- Getting correct client IP behind proxy.
- Fixed old function name for batch metastring operations
- allow full access to the metadata API through setMetadata() rather than requiring use of create_metadata()
- catching when the base entity is not created due to permissions override
- message if no results found
- all link should reset entity type/subtype
- forces lastcache to be an int
- Many more miscellaneous improvements...
v1.8.19 (March 12, 2014)
Contributing Developers
- Brett Profitt
- Centillien
- Evan Winslow
- Ismayil Khayredinov
- Jerome Bakker
- Juho Jaakkola
- Matt Beckett
- RiverVanRain
- Sem
- Steve Clay
- pattyland
Security enhancements
- Implements stronger remember me cookie strategy to prevent brute force attacks.
Bugfixes
- Fixed numerous PHP warnings.
- Groups: Corrected breadcrumb for group discussion pages.
- Fixed RSS validation for the River RSS feed.
Improvements
- Moved Site Secret update to configure -> advanced.
- Added more comprehensive tests for HTMLAwed.
Documentation
- Added better deprecation warnings for use of certain attributes in views.
v1.8.18 (January 11, 2014)
Contributing Developers
Bugfixes
v1.8.17 (January 1, 2014)
Contributing Developers
- Brett Profitt
- Cash Costello
- Ed Lyons
- Evan Winslow
- Jeroen Dalsem
- Jerome Bakker
- Juho Jaakkola
- Matt Beckett
- Paweł Sroka
- Sem
- Steve Clay
Security Fixes
- Specially-crafted request could return the contents of sensitive files.
- Reflected XSS attack was possible against 1.8 systems.
- The cryptographic key used for various purposes may have been generated with weak entropy, particularly on Windows.
Bugfixes
- URLs with non-ASCII usernames again work
- Floated images are now properly cleared in content areas
- The activity page title now matches the document title
- Search again supports multiple comments on the same entity
- Blog archive sidebar now reverse chronological
- URLs with matching parens can now be auto-linked
- Log browser links for users now work
- Disabling over 50 objects should no longer result in an infinite loop
- Radio/checkbox inputs no longer have border radius (for IE10)
- User picker: the Only Friends checkbox again works
- Group bookmarklet no longer shown to non-members
- Widget reordering fixed when moving across columns
- Refuse to deactivate plugins needed as dependencies
Enhancements
- Group member listings are ordered by name
- The system_log table can now store IPv6 addresses
- Web services auth_gettoken() now accepts email address
- List functions: no need to specify pagination for unlimited queries
- Htmlawed was upgraded to 1.1.16
v1.8.16 (June 25, 2013)
Contributing Developers
- Brett Profitt
- Cash Costello
- Jeff Tilson
- Jerome Bakker
- Paweł Sroka
- Steve Clay
Security Fixes
- Fixed avatar removal bug (thanks to Jerome Bakker for the first report of this)
Bugfixes
- Fixed infinite loop when deleting/disabling an entity with > 50 annotations
- Fixed deleting log tables in log rotate plugin
- Added full text index for groups if missing
- Added workaround for IE8 and jumping user avatar
- Fixed pagination for members pages
- Fixed several internal cache issues
- Plus many more bug fixes
v1.8.15 (April 23, 2013)
Contributing Developers
- Cash Costello
- Ismayil Khayredinov
- Jeff Tilson
- Juho Jaakkola
- Matt Beckett
- Paweł Sroka
- Sem
- Steve Clay
- Tom Voorneveld
Bugfixes
- Not displaying http:// on profiles when website isn't set
- Fixed pagination display issue for small screens
- Not hiding subpages of top level pages that have been deleted
- Stop corrupting JavaScript views with elgg deprecation messages
- Fixed out of memory error due to query cache
- Fixed bug preventing users authorizing Twitter account access
- Fixed friends access level for editing pages
- Fixed uploading files within the embed dialog
Enhancements
- Added browser caching of language JS files
- Adding nofollow on user posted URLs for spam deterrence (thanks to Hellekin)
- Auto-registering views for simplecache when their URL is requested
- Display helpful message for those who have site URL configuration issues
- Can revert to a previous revision with pages plugin
- Site owners can turn off posting wire messages to Twitter
- Search results are sorted by relevance
Removed Functionality
- Twitter widget due to changes in Twitter API and terms of service
- OAuth API plugin due to conflicts with the Twitter API plugin
v1.8.14 (March 12, 2013)
Contributing Developers
- Aday Talavera
- Brett Profitt
- Cash Costello
- Ed Lyons
- German Bortoli
- Hellekin Wolf
- iionly
- Jerome Bakker
- Luciano Lima
- Matt Beckett
- Paweł Sroka
- Sem
- Steve Clay
Security Fixes
- Fixed a XSS vulnerability when accepting URLs on user profiles
- Fixed bug that exposed subject lines of messages in inbox
- Added requirement for CSRF token for login
Bugfixes
- Strip html tags from tag input
- Fixed several display issues for IE7
- Fixed several issues with blog drafts
- Fixed repeated token timeout errors
- Fixed JavaScript localization for non-English languages
Enhancements
- Web services fall back to json if the viewtype is invalid
v1.8.13 (January 29, 2013)
Contributing Developers
- Cash Costello
- Juho Jaakkola
- Kevin Jardine
- Krzysztof Różalski
- Steve Clay
Security Fixes
- Added validation of Twitter usernames in Twitter widget
Bugfixes
- CLI usages with walled garden fixed
- Upgrading from < 1.8 to 1.8 fixed
- Default widgets fixed
- Quotes in object titles no longer result in "qout" in URLs
- List of my groups is ordered now
- Language string river:comment:object:default is defined now
- Added language string for comments: generic_comment:on
Enhancements
- Added confirm dialog for resetting profile fields (adds language string profile:resetdefault:confirm)
v1.8.12 (January 4th, 2013)
Contributing Developers
- Brett Profitt
- Cash Costello
- Jerome Bakker
- Matt Beckett
- Paweł Sroka
- Sem
- Steve Clay
Bugfixes
- Added an AJAX workaround for the rewrite test.
- Code cleanup to prevent some notices and warnings.
- Removed "original_order" in menu item anchor tags.
- Site menu's selected item correctly persists through content pages.
- Static caches rewritten and improved to prevent stale data being returned.
- Installation: Invalid characters in admin username are handled correctly.
- Messages: Fixed inbox link in email notifications.
- The Wire: Fixed objects not displaying correctly when upgrading from 1.7.
Enhancements
- Performance improvements and improved caching in entity loading.
- Added upgrade locking to prevent concurrent upgrade attempts.
- Replaced xml_to_object() and autop() with GPL / MIT-compatible code.
- Error messages (register_error()) only fade after being clicked.
- Groups: Added a sidebar entry to display membership status and a link to group notification settings.
- Groups: Added pending membership and invitation requests to the sidebar.
- Groups: Better redirection for invisible and closed groups.
- Search: User profile fields are searched.
- Pages: Subpages can be reassigned to new parent pages.
- Twitter: Login with twitter supports persistent login and correctly forwards after login.
v1.8.11 (December 5th, 2012)
Bugfixes
- Fixed fatal error in group creation form
v1.8.10 (December 4th, 2012)
Contributing Developers
- Krzysztof Różalski
- Lars Hærvig
- Paweł Sroka
- RiverVanRain
- Sem
- Steve Clay
Security Enhancements
- Cached metadata respects access restrictions to fix problems with profile field display.
- Group RSS feeds are restricted to valid entities
Enhancements
- UX: Added a list of Administrators in the admin area
- UX: Limiting message board activity stream entries to excerpts
- Performance: Prefetching river entries
- Performance: Plugin entities are cached
Bugfixes
- Removed superfluous commas in JS files to fix IE compatibility.
- API: Fixed Twitter API.
- Performance: Outputting valid ETags and expires headers.
v1.8.9 (November 11, 2012)
Contributing Developers
- Brett Profitt
- Cash Costello
- Evan Winslow
- Jeroen Dalsem
- Jerome Bakker
- Matt Beckett
- Paweł Sroka
- Sem
- Steve Clay
Security Enhancements
- Sample CLI installer cannot break site
- Removed XSS vulnerabilities in titles and user profiles
Enhancements
- UX: A group's owner can transfer ownership to another member
- UX: Search queries persist in the search box
- Several (X)HTML validation improvements
- Improved performance via more aggressive entity and metadata caching
- BC: 1.7 group profile URLs forward correctly
Bugfixes
- UX: Titles containing HTML tokens are never mangled
- UX: Empty user profile values saved properly
- UX: Blog creator always mentioned in activity stream (not user who published it)
- UI: Fixed ordering of registered menu items in some cases
- UI: Embed dialog does not break file inputs
- UI: Datepicker now respects language
- UI: More reliable display of access input in widgets
- UI: Group edit form is sticky
- UI: Site categories are sticky in forms
- API: Language fallback works in Javascript
- API: Fallback to default viewtype if invalid one given
- API: Notices reported for missing language keys
- Memcache now safe to use; never bypasses access control
- BC: upgrade shows comments consistently in activity stream
v1.8.8 (July 11, 2012)
Contributing Developers
- Cash Costello
- Miguel Rodriguez
- Sem
Enhancements
- Added a delete button on river items for admins
Bugfixes
- Fixed the significant bug with htmlawed plugin that caused duplicate tags
v1.8.7 (July 10, 2012)
Contributing Developers
- Cash Costello
- Evan Winslow
- Ismayil Khayredinov
- Jeroen Dalsem
- Jerome Bakker
- Matt Beckett
- Miguel Rodriguez
- Paweł Sroka
- Sem
- Steve Clay
Enhancements
- Better support for search engine friendly URLs
- Upgraded htmlawed (XSS filtering)
- Internationalization support for TinyMCE
- Public access not available for walled gardens
- Better forwarding and messages when they cannot view content because logged out
Bugfixes
- Fatal errors due to type hints downgraded to warnings
- Group discussion reply notifications work again
- Sending user to inbox when deleting a message
- Fixed location profile information when it is an array
- Over 30 other bug fixes.
v1.8.6 (June 18, 2012)
Contributing Developers
- Cash Costello
- Evan Winslow
- Ismayil Khayredinov
- Jeff Tilson
- Jerome Bakker
- Paweł Sroka
- Sem
- Steve Clay
Enhancements
- New ajax spinner
- Detecting docx, xlsx, and pptx files in file plugin
- Showing ajax spinner when uploading file with embed plugin
Bugfixes
- Fixed some language caching issues.
- Users can add sub-pages to another user's page in a group.
- Over 30 other bug fixes.
v1.8.5 (May 17, 2012)
Contributing Developers
- Brett Profitt
- Evan Winslow
- Sem
- Steve Clay
- Jeroen Dalsem
- Jerome Bakker
Security Enhancements
- Fixed possible XSS vulnerability if using a crafted URL.
- Fixed exploit to bypass new user validation if using a crafted form.
- Fixed incorrect caching of access lists that could allow plugins to show private entities to non-admin and non-owning users. (Non-exploitable)
Bugfixes
- Twitter API: New users are forwarded to the correct page after creating an account with Twitter.
- Files: PDF files are downloaded as "inline" to display in the browser.
- Fixed possible duplication errors when writing metadata with multiple values.
- Fixed possible upgrade issue if using a plugin uses the system_log hooks.
- Fixed problems when enabling more than 50 metadata or annotations.
API
v1.8.4 (April 24, 2012)
Contributing Developers
- Adayth Talavera
- Brett Profitt
- Cash Costello
- Evan Winslow
- Ismayil Khayredinov
- Janek Lasocki-Biczysko
- Jerome Baker
- Sem
- Steve Clay
- Webgalli
Security Enhancements
- Fixed an issue in the web services auth.get_token endpoint that would give valid auth tokens to invalid credentials. Thanks to Christian for reporting this!
- Fixed an that could show which plugins are loaded on a site.
Enhancements
- UI: All bundled plugins' list pages display a no content message if there is nothing to list.
- UI: Site default access is limited to core access levels.
- UI: Showing a system message to the admin if plugins are disabled with the "disabled" magic file.
- UI: Added transparent backgrounds for files and pages icons.
- External (Site) Pages: If in Wall Garden mode, Site Pages use the Walled Garden theme when logged out.
- UI: Database errors only show the query to admin users.
- UI: Cannot set the data path to a relative path in installation or site settings.
- UI: Cleaned up notifications for bundled plugins.
- UI: Hiding crop button if no avatar is uploaded.
- UI: Bundled plugins are displayed with a gold border in the plugin admin area.
- UI: Can see all the categories a plugin belongs to.
- Web Services: Multiple tokens allowed for users.
- API: More efficient entity loading.
- API: Added IP address to system log.
- API: Languages are cached.
- API: ElggBatch supports disabling offsets for callbacks that delete entities.
- API: Cleaned up the boot process.
- API: Fixed situation in which the cache isn't properly cleared if a file can't be unlinked.
Bugfixes
- UI: Tags display in the case they were saved.
- UI: Friendly titles keep -s.
- UI: Removed pagination in friends widget.
- UI: Profile settings actions correctly displays error messages as errors.
- UI: Tag search works for tags with spaces.
- UI: Fixed river display for friending that happens during registration.
- Groups: Link for managing join requests is restored in the sidebar.
- Walled Garden: Cron and web services endpoints are exposed as public sites.
- The Wire: UTF usernames are correctly linked with @ syntax.
- The Wire: No longer selecting the "Mine" tab for users who aren't you.
- Blogs: Notifications restored.
- Message Board: Fixed delete.
- Groups: Forwarding to correct page if trying to access closed group.
- API: entities loaded via elgg_get_entities_from_relationship() have the correct time_created.
- API: Deleting entities recursively works when code is logged out.
- API: Fixed multiple uses of deprecated functions.
v1.8.3 (January 12, 2012)
Enhancements
- Adds a white list for ajax views
- Improved navigation tab options
- Added group specific search
- Added button for reverting avatar
- Improved documentation for core class attributes
- Adds a server info page under administer -> statistics
- Improving caching of icons and js/css
- Deprecation notices not displayed to non-admin users
Bugfixes
- Fixed upgrade scripts for blog posts and groups forum posts
- Can now delete invitations to invisible groups
- Fixed several widget bugs
- Fixed access level on add to group river item
- Fixed recursive entity enabling
- Fixed limit on pages in sidebar navigation
- Fixed deletion of large numbers of annotations
v1.8.2 (December 21, 2011)
Enhancements
- Added a 404 page
- Widgets controls now using the menu system
- Admins can edit users' account information
- Embed uploader supports uploading into groups
- Add a control panel widget for easy access to cache flushing and upgrading
- Comments now have a unqiue URL with fragment identifier
- JavaScript language files are cacheable
- jQuery form script only loaded when required
Bugfixes
- Fixed default widgets
- Fixed activity filtering
- Embedding an image now inserts a medium sized image
- Search plugin only uses mbstring extension if enabled
- Site pages links returned to footer
- Fixed URL creation for users with non-ASCII characters in username
- The wire username parsing supports periods in usernames
- Returned the posting area to the main wire page
- Fixed layout issue on pages with a fragment identifier in URL
- Added support for call elgg_load_js() in header and footer
- Fixed user picker
- Fixed uservalidationbyemail plugin ignoring the actions of other plugins
- Fixed bug preventing the creation of admin users
- Fixed deleting a widget with JavaScript disabled
- Fixed many bugs in the unit/integration tests
v1.8.1 (November 16, 2011)
Enhancements
- Completed styling of user validation admin page
- Adding rel=nofollow for non-trusted links
- Added direct icon loading for profile avatars in profile plugin
- Improved the structure of content views to make styling easier
- Updated version of jQuery to 1.6.4
- Added basic support for icon size customization
- Added a toggle for gallery/list view in file plugin
- Added support for passing CSS classes to icon views
- Added support for non http URLs to Elgg's normalize functions
- Added better support for the 404 forward if a page handler does handle a request
Bugfixes
- Fixed autocomplete and userpicker
- Fixed RSS and web service-related view types
- Fixed walled garden display issues
- Added work around for IE/TinyMCE/embed insert problem
- Implemented ElggUser.isAdmin() JavaScript method
- Fixed the date views and JavaScript datepicker
- Fixed horizontal radio buttons styling
- Modules only display header if there is content for it
v1.8.1b (October 11, 2011)
Enhancements
- New group activity widget for user dashboard.
- Added more sprites.
- version.php information cached instead of loaded 100s of times.
- Added class elgg-autofocus to add focus on inputs when the page loads.
- Admins can edit user avatars again.
- Added a filter for non-bundled plugins in plugin admin.
- Improvements to admin area theme.
Bugfixes
- Fixed site dropdown menu for IE.
- ElggEntity->deleteMetadata() no longer deletes all metadata ever if called on an unsaved entity.
- Fixed Embed plugin.
- Fixed activate and deactivate all plugins.
- Fixed URL for group membership request in notification email.
- Fixed log browser plugin's admin area display.
- Fixed RSS icon not showing up on some pages.
- Fixed river entries for forum posts that were lost if upgrading from 1.7.
- Better displaying of errors when activating, deactivating, or reordering plugins.
- Fixed Developer Plugin's inspection tool.
- Fixed avatar cropping on IE 7.
- Bookmarks plugin accepts URLs with dashes.
- "More" menu item on site menu hidden if items are manually specified.
- Fixed hover menu floating if unrestrained.
- JS init, system fired when DOM and languages are read.
- Fixed the date picker input view.
- Fixed stack overflow when calling elgg_view() from a pagesetup event.
- Menu links no longer have empty titles and confirm attributes.
- Fixed crash when attempting to change password to an invalid value.
- Fixed "More groups" link for groups widget.
- Fixed output/confirmlink to use a default question if not specified.
- Added missing language strings. Also added "new", "add", and "create".
- Registered security token refresh page as external to avoid token refresh problems on Walled Garden sites.
- Displaying more accurate message if uploading an avatar fails.
- "Leave group" button doesn't display for group owners.
- Request group membership button displays only when logged in.
- Fixed the number of displayed items for Bookmarks widget.
- Fixed fallback to deprecated views for widgets.
API Changes
- Menus names must be unique to the entire menu, not just section.
- Input views that encode text use the option 'encode_text'.
- Added ElggPlugin->getFriendlyName().
- elgg_view_icon() accepts a class.
- Added hook output:before, page.
- Added hook output:before, layout.
- elgg_get_entities() and related functions return false if passed valid options with invalid values.
- Can disable the user hover menu by passing hover => false to elgg_view_icon(). Previously it was override => true.
- Embed plugin uses menu system. See readme for embed plugin.
- Manifest attributes are no longer translated via elgg_echo().
- Fixed livesearch ajax endpoint.
- Fixed site unit test.
- Unit tests tidy up after themselves better.
- forward() throws an exception if headers are already sent.
- Better errors if adding a user through admin area fails.
- Localized profile fields.
- Added 'is_trusted' parameter output/url to avoid escaping and filtering. Defaults to false.
- Added elgg_unregister_action()
- Fixed ElggPriorityList::rewind().
- Fixed forwarding after login for login-protected pages.
- get_site_by_url() respects class inheritance for subclassing ElggSite.
Internal changes
- Updated deprecated uses of internalname/id.
- Using wwwroot instead of www_root because of inconsistencies.
v1.8.0 (Jackie) (September 5th, 2011)
Notes
Elgg 1.8 contains the most changes in Elgg since the transition from Elgg 0.9 to Elgg 1.0. The core team tried to make the transition as smooth as possible, but in the interest of following standards and simplifying the development process for core and third party developers, we have made changes that will require updating plugins. We believe these changes will help Elgg development be easier for everyone.
It is unreasonable and unhelpful to list the full details of all changes in this file. Instead, we will list the high level, overarching changes to systems. If you are interested in the specifics, Elgg 1.8's source code is highly documented and serves as a good guide and the git commit log can provide excruciating details of what has changed between 1.7 and 1.8.
Please post your feedback, questions, and comments to the community site at http://community.elgg.org. As always, thank you for using Elgg!
–The Elgg Core Development Team
A tip about updating plugins:
It's not difficult to update 1.7 plugins for 1.8. There is a detailed document outlining this process on the wiki: http://learn.elgg.org/en/stable/guides/upgrading.html#from-1-7-to-1-8
The basic process is:
- Clean up the plugin to make sure it conforms to coding standards, official structure, and best practices.
- Update any uses of deprecated functions. Functions deprecated in 1.7 will produce visible notices in 1.8!
- Use the new manifest format.
- Use the new menu functions.
- Use the new JS features.
- Update the views to use core CSS helper functions and classes instead of writing your own.
The documentation directory and the wiki has more information.
User-visible changes
- New default theme.
- New installation.
- Separate and updated admin interface.
- Updated plugin themes.
Generic API changes
- Improved the markup and CSS.
- Restructured and simplified the views layouts.
- Added a new menu system.
- Added new CSS and JS file registration functions.
- Added a JS engine.
- Added a breadcrumb system.
- Added a sticky forms system.
New plugins
- Dashboard - The activity stream is now the default index page. A 1.7-style dashboard is provided through the dashboard plugin.
- Developers Plugins - Developer tools.
- Likes - Allows users to "like" other users' content.
- oAuth API - A generic, reusable oAuth library.
- Tag Cloud - A widget-based tag cloud generator.
- Twitter API - A generic Twitter library that allows signin with Twitter and pushing content to tweets. Replaces twitter_service.
Deprecated plugins
- captcha - Captchas have long since stopped being useful as a deterrent against spam.
- crontrigger - Real cron should be used.
- default_widgets - This functionality is now part of core.
- friends - This functionality is now part of core.
- riverdashboard - Displaying the river (activity stream) is default in core. The original dashboard can be restored by the new Dashboard plugin.
- twitter_service - Replaced by Twitter API.
Elgg 1.8.0.1 was released immediately after 1.8.0 to correct a problem in installation.