Skip to content

4.4.0

Compare
Choose a tag to compare
@Schlaefer Schlaefer released this 26 Oct 12:45
· 733 commits to master since this release

What's new

  • + adds hooks for extending the core (see docs/dev-hooks.md)
  • ✓ quote symbol set in admin-settings is ignored
  • Δ refactors user-ranks
    • - removes user-ranks from core (still available as example plugin, see app/Plugins/Userranks)
  • Δ refactors flattr support
    • - removes flattr from core (still available as plugin, see app/Plugins/Flattr)
    • ✓ no flattr button on user-profile
  • Δ refactors "Not Safe For Work"-badge
    • - removes NSFW-badge from core (still available as plugin, see app/Plugins/NsfwBadge)
  • Δ refactors user-blocking
    • + automatically unblock blocked users after a specified time
    • + moderators and admins see blocking history in user-profile
    • + admins see global blocking history in admin-area
  • Δ refactors smiley handling
    • + introduces new HDPI-ready smiley icons in default theme
    • + allows localization of smiley-titles
    • Δ changes default smiley-set
    • Δ allows usage of pixel or font based smilies
  • Δ changes quote symbol for new installations from » to >

Full change-log

Migration Notes

DB Changes

Note: If you use a table prefix you have to prepend it to the table name.

CREATE TABLE `user_blocks` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `created` datetime DEFAULT NULL,
  `modified` datetime DEFAULT NULL,
  `user_id` int(11) unsigned NOT NULL,
  `reason` varchar(255) DEFAULT NULL,
  `by` int(11) unsigned DEFAULT NULL,
  `ends` datetime DEFAULT NULL,
  `ended` datetime DEFAULT NULL,
  `hash` char(32) DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `ends` (`ends`),
  KEY `user_id` (`user_id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;

Remove Userranks

If you don't activate Userranks again remove its the DB entries:

DELETE FROM `settings` WHERE `name` IN ('userranks_show');
DELETE FROM `settings` WHERE `name` IN ('userranks_ranks');

Remove Flattr

Remove the old flattr config, its now set in in the Flattr plugin config.php:

DELETE FROM `settings` WHERE `name` IN ('flattr_category','flattr_enabled','flattr_language');

If you don't activate Flattr again you should remove its existing DB entries:

ALTER TABLE `users` DROP `flattr_allow_posting`;
ALTER TABLE `users` DROP `flattr_allow_user`;
ALTER TABLE `users` DROP `flattr_uid`;

ALTER TABLE `entries` DROP `flattr`;

Remove "Not Safe For Work"-badge

If you don't activate the "Not Safe For Work"-badge again you should remove its existing DB entries:

ALTER TABLE `entries` DROP `nsfw`;

New Smiley-Set

The easiest way to get the new smiley set is to drop the existing smiley-configuration database tables and recreated them (empty the cache in the admin-area afterwards):

DROP TABLE IF EXISTS `smilies`;

CREATE TABLE `smilies` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `order` int(4) NOT NULL DEFAULT '0',
  `icon` varchar(100) CHARACTER SET utf8 DEFAULT NULL,
  `image` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,
  `title` varchar(255) CHARACTER SET utf8 DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

INSERT INTO `smilies` (`id`, `order`, `icon`, `image`, `title`)
VALUES
    (1, 1, 'happy', NULL, 'smilies.t.smile'),
    (2, 2, 'grin', '', 'smilies.t.grin'),
    (3, 3, 'wink', '', 'smilies.t.wink'),
    (4, 4, 'saint', '', 'smilies.t.saint'),
    (5, 5, 'squint', '', 'smilies.t.sleep'),
    (6, 6, 'sunglasses', '', 'smilies.t.cool'),
    (7, 7, 'heart-empty-1', '', 'smilies.t.kiss'),
    (8, 8, 'thumbsup', '', 'smilies.t.thumbsup'),
    (9, 9, 'coffee', NULL, 'smilies.t.coffee'),
    (10, 10, 'tongue', '', 'smilies.t.tongue'),
    (11, 11, 'devil', NULL, 'smilies.t.evil'),
    (12, 12, 'sleep', '', 'smilies.t.blush'),
    (13, 13, 'surprised', NULL, 'smilies.t.gasp'),
    (14, 14, 'displeased', '', 'smilies.t.embarrassed'),
    (15, 15, 'unhappy', '', 'smilies.t.unhappy'),
    (16, 16, 'cry', '', 'smilies.t.cry'),
    (17, 17, 'angry', '', 'smilies.t.angry');


DROP TABLE IF EXISTS `smiley_codes`;

CREATE TABLE `smiley_codes` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `smiley_id` int(11) NOT NULL DEFAULT '0',
  `code` varchar(32) CHARACTER SET utf8 DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

INSERT INTO `smiley_codes` (`id`, `smiley_id`, `code`)
VALUES
    (1, 1, ':-)'),
    (2, 1, ':)'),
    (3, 2, ':-D'),
    (4, 2, ':D'),
    (5, 3, ';-)'),
    (6, 3, ';)'),
    (7, 4, 'O:]'),
    (8, 5, '(-.-)zzZ'),
    (9, 6, 'B-)'),
    (10, 7, ':-*'),
    (11, 8, ':grinw:'),
    (12, 9, '[_]P'),
    (13, 9, ':coffee:'),
    (14, 10, ':P'),
    (15, 10, ':-P'),
    (16, 11, ':evil:'),
    (17, 12, ':blush:'),
    (18, 13, ':-O'),
    (19, 14, ':emba:'),
    (20, 14, ':oops:'),
    (21, 15, ':-('),
    (22, 15, ':('),
    (23, 16, ':cry:'),
    (24, 16, ':\'('),
    (25, 17, ':angry:'),
    (26, 17, ':shout:');

Otherwise you have to make the changes in the admin area.

If you want to stick with the old icons: don't change anything and copy over the smilies theme folder from the previous version.