Luna 2.0.12, 2.1 Preview 5 and Typography are here

A new Luna, a new theme

We’re happy to announce the availability of Luna 2.0.12 and 2.1 Preview 5. 2.0.12 is a security release, but has a few other minor improvements too. In Preview 5, we continue to move forward with modernizing Luna. And this preview does that in some major ways. Not only are we introducing a fresh looking new default theme, we’re also working hard on modernizing the logic below. Preview 5 is a major update compared to the previous previews, so let’s get started!

Luna 2.1 Preview 5

Typography

First of all, meet our new default theme Typography! Typography, as the name implies, heavily leans on typography as its main design element. For the first time since 2015, we’re introducing a new default theme (and the fourth time since our first release with ModernBB 1.6 (from Air to Random to Fifteen to Typography).

Fifteen has served its purpose well and even got a major redesign in Preview 4 to support Bootstrap 4, but with Luna 2.1 we are deprecating it, as well as Sunrise. This means that both themes won’t be included in the next major version of Luna.

Note that this is still an early version of Typography and there are still plenty changes coming.

Fifteen & Sunrise

With the major redesign for Fifteen and Sunrise in Preview 4, we also spend some time on refining the updated themes with Preview 5. This includes some more design refinements to better match with the new Bootstrap 4 framework and updates to support the new theming APIs that are part of Preview 5.

Earlier we announced that Fifteen and Sunrise would ship with Preview 5 in an entirely broken state, this is no longer the case. Fifteen and Sunrise should work as expected (at least, for as far as it is to be expected in an alpha).

Developers: easier theming

Preview 5 introduces a bunch of new tools for theme developers. Most notable is the fact that Luna now provides themes with raw data rather than info put in HTML and CSS. This allows for better customization and less reliability on Bootstrap.

  • Pagination is now returned as an array of Page-objects instead of a variable with pre-written HTML and CSS with Bootstrap classes.
  • Notifications are now returned as an array of Notification-objects instead of a variable with pre-written HTML and CSS with Bootstrap classes.
  • The usermenu is no longer generated by Luna, themes now have to take care of it by themselves, complex URLs are now provided through the Menu object.
  • The menu is now passed to the theme as an object with an array of objects, the menu items can be acced by calling $menu->getItems(), which will return an array of items.
  • Anything that isn’t a Luna config item that is relevant to the footer can now be found in the $footer variable for the footer template. The $footer variable returns a Footer-object with relevant statistics about your board.

This is just a small revamp of the theming engine, and more is to come in Preview 6.

Theme settings

When changing the theme, there is a chance that your new theme has a different number of accent colors available. This is not a problem if there are more accent colors, but if there are less, it becomes an issue: your board’s default setting and your user’s custom setting may be set to use a higher accent color than the theme provides. Starting with Preview 5, Luna will now reset any setting that might violate the number of available accent colors for the new theme. Right now, Luna will reset this number to 1, in a future preview it will be possible for themes to set a default value.

Emoji

Todays preview also continues the emoji improvements. This time around, we’re updating our emoji support to use the more modern notations like “:smile:” as can be found on other platforms like GitHub. If your forum is running Luna 2.1 Preview 4 and earlier and upgrades to Preview 5 or later, your board will continue to support the old “:)” notation, etc. The new notation is the only notation for new installations, however.

Additionally, Preview 4 required emoji like “:p” to be declared as both “:p” and “:P” to work as expected, in Preview 5, emoji are case insensitive which means you can get away with a single declaration.

Censoring & emoji

Up until now, you had to change each censored word or emoji individually then do the next. With Preview 5 you can now update all lines at once and save them all together.

Profile & settings

Today’s new preview also includes a major rewrite of the profile section in the front-end. We’ve rewritten entire thing to use the User object, including all validations and storage functions. The Profile is only one of the first pages to start using a more OOP-minded structure and more is to come. This will also help in our move to PDO.

MySQL & PHP support

Luna 2.1 is dropping both the MySQL and MySQL InnoDB drivers. MySQL has been considered deprecated for a while now and PHP 7 removed it entirely. Given that MySQL Improved and MySQL Improved InnoDB should be available on any system, these old drivers have now been dropped.

Additionally, Luna 2.1 will require PHP 5.4 or higher, this is up from PHP 5.3 for Luna 2.0.

Other changes

  • A bunch of icons in the Backstage have been changed to better represent their page
  • Bootstrap has been updated to version 4.1.2
  • Font Awesome has been updated to version 5.1.1
  • A number of emoji have been remapped to better represent their meaning
  • Luna now correctly redirects you after setting a new theme
  • Proper HTTP errors during maintenance and errors
  • When updating, fields are now correctly dropped from the database
  • Cleans up a number of old PHP checks
  • Removes a number of checks and function fallbacks designed for PHP 5.3 and or lower
  • Fifteen’s “online users” list now works properly again

Known issues


  • Fifteen, Sunrise and Typography have a number of visual issues
  • Luna will reset the theme to Typography
  • First Run will be enabled for everyone who disabled it and disabled for everyone who enabled it

More to come

We still have plenty more changes to come in the new previews. Here is a short list:

  • Further revamp of the theming APIs
  • Allow themes to set a default accent color
  • Support for local videos in comments
  • More Typography improvements
  • Icon packs
  • (Investigate) moving to PDO
  • Font Awesome 5.2
  • Bootstrap 4.1.3

Luna 2.0.12

We’re also releasing Luna 2.0.12 today. This update contains a number of fixes and enhancements, including one security fix. We highly recommend you update to this version.

  • Introduces support for modern emoji shortcodes as found in Luna 2.1-alpha.5
  • Some emoji have been remapped to better match their textual counterpart
  • Proper HTTP errors during maintenance and errors
  • Luna no longer returns the password when a registration error occures
  • When updating, fields are now correctly dropped from the database

Final remarks

As always, make sure you have a back-up before updating to Luna 2.1 Preview 5 or Luna 2.0.12. We test these versions but of course we can’t test for every single possible outcome.

Website updates

And yet again, we’ve made more adjustments to the documentation for Luna. You’ll find that we’ve begun expanding the “Extend Luna” section for both themes and translations. Many more minor changes have been made throughout the documentation and for Preview 6 we will further expand on theming, and we will begin expanding the Mainstage documentation as well as preparations for future versions of Luna.

Luna 2.0.11 is now available

A quick fix and a 2 week hiatus

Well then… Looks like I made a mistake with Luna 2.0.10 and 2.1 Preview 4.

Both releases are shipping with old translations. Luna 2.0.10 is using the 2.0.9-beta translation (so is 2.0.9) while 2.1 Preview 4 is using the translation of an early Preview 4 build.

This is why we’re releasing 2.0.11 today with a fix. 2.1 won’t be fixed until Preview 5. This mistake should not impact anyone using the English translation of Luna or who generates the translation files of any other language through scanning the software with Poedit.

This is only an issue for those who

  • Use the Dutch translation that is shipping with Luna
  • Use the empty English translation as a base for their own translations

If you are using Luna 2.1 Preview, we kinda expect you to be aware that this thing is buggy, so it isn’t that essential to fix to us.

A hiatus

While we are not even a month into the rebirth of Luna, it is already time for a break. Like back in the day, I’ll be gone for a couple of weeks to recharge. This year around, I’ll be gone from the 3rd of July until the 15th. Unlike other years, I’ll check back in with you guys in the night of the 9th to the 10th.

Luna 2.0.10 and 2.1 Preview 4 are here

The patch and the Bootstrap 4.1 update

We originally said that it wasn’t going to happen in Luna 2.x but here we are… Luna 2.1 Preview 4 replaces Bootstrap 3.3 with Bootstrap 4.1. We also have a couple of other changes to tell you about. We’re also releasing a minor update for Luna 2.0 today.

Bootstrap 4

Preview 4 is very much ment to focus on just Bootstrap 4. And if you think “isn’t that just replacing the Bootstrap 3 package with the Bootstrap 4 package?”, you’d be wrong. Bootstrap 4 has some major changes compared to Bootstrap 3 and thus what followed was days of work.

Because we didn’t just update Boostrap 3 to 4 and changed a number of classes. No. We redid the entire markup and (S)CSS of Luna. For the Backstage as well as Fifteen and Sunrise. Yes, the Backstage’s design and Fifteen and Sunrise are rewritten. Completely.

Now, what does that mean for you? First of all, you’ll notice a number of small and big visual differences in both designs. One of these is the adaptation of a larger default font (16px instead of 14px) and some of the light fonts turning bolder.

For the Backstage specifically, it means that the hamburger menu is now gone as the navigation now fits on all screen sizes. It also means that we have an updated “About” page (the website also got a new design there). We also fixed a whole bunch of UI inconsistencies.

Meanwhile, Fifteen got a redesign too (and as a result, so did Sunrise). Both themes now use Bootstrap 4.1 and while the goal was to keep them mostly the same as the Luna 2.0-versions of these themes, there are a number of key differences:

  • Like Backstage, the design is now wider
  • The Editor has an entirely different design
  • Fonts, especially normal text, is now larger

We are still working on the UI for Backstage, Fifteen and Sunrise, expect minor adjustments to come as part of Preview 5.

Font Awesome and Prism

Font Awesome 5.1 was released during Preview 4’s development, and thus we’ve updated our included version of Font Awesome to version 5.1 (up from 5.0.13). Additionally, if you set Luna to use CDNs to get Bootstrap and jQuery, for Font Awesome a CDN will now be used as well as long as the Font Awesome Pro setting isn’t enabled (but that will likely change in the future).

Prism.js is the package that stands in for the syntax highlighting in code and this update bumps its version to 15.0 (up from 14.0). We’ve also added support for JSON and TypeScript to the package, as well as support for extended PHP.

Fluorescent Blue

You’ll also notice that this preview drops the “Fallow Preview” branding and insteads is called “Fluorescent Blue Preview”. We made this change because we want Luna 2.2 and onwards to be smaller updates that don’t necessarily need their own letter (G and so on) and wanted 3.0 really to be called Glitter.

So why “Fluorecent”? Well, turns out you can put 4 different colors behind it and still end up with an “official” color: Blue, Orange, Pink and Yellow. So there are the names of the (maximum) 4 next updates of Luna. These will be minor releases while most focus will go to Glitter and I honestly don’t even want to promise that we will get to Pink, never mind Yellow. Orange will most likely happen, though.

Other changes

  • The default user group can now be changed again
  • Pruning threads will no longer prune pinned threads by default
  • Some emoji have been updated to better represent their text counterpart (including ūüôā and :(, among others) – this will also come to Luna 2.0.11
  • When updating, Luna will now update the cookie bar url if it still uses the old default value
  • Enabling debug mode now works correctly for PostgreSQL
  • Updating to Luna 2.0 no longer causes ‘o_custom_css’ to start with “NULL” as value
  • Fixes a spacing issue with Inbox’s paper plane icons
  • Resolves a PHP error due to receivers in Inbox not being countable
  • Fixes a number of markup violations

Luna 2.0.10

Luna 2.0.10 introduces a number of fixes, these are the same bugfixes that are in Luna 2.1 Preview 4 that are not specific to Fluorescent Blue. Thus, here is what’s changing:

  • When updating, Luna will now update the cookie bar url if it still uses the old default value
  • The default user group can now be changed again
  • Enabling debug mode now works correctly for PostgreSQL
  • Updating to Luna 2.0 no longer causes ‘o_custom_css’ to start with “NULL” as value
  • Fixes a spacing issue with Inbox’s paper plane icons
  • Resolves a PHP error due to receivers in Inbox not being countable
  • Fixes an issue with Inbox’s paper plane icons

As always, make sure to make a back-up before upgrading!

More website and documentation updates

And to close it off, we paid some attention to the website. Today’s update includes our brand new “Release notes” page. This was one of the pages that still used the design from the old website, now we updated it and each release has gotten its own page as well (we also updated the sidemenu to make more clear that these are subpages).

And of course, we also updated our documentation yet again. Our focus was basically spread everywhere.

Luna 2.0.9 and 2.1 Preview 2

Also… documentation announcement

I know that it hasn’t even been a week, but we’re happy to say that the next update to Luna, version 2.0.9, is now available to download! And to make sure that people the 2.1 Preview are not missing out on all the fixes and enhancements we’re releasing 2.1 Preview 2 as well with the same fixes as 2.0.9 and a number of other improvements.

Luna 2.0.9

Luna 2.0.9 is just a minor update with a bunch of bugfixes and other minor improvements. Here’s what to look out for:

  • More improvements for PHP 7.2 support
  • A number of fixes for localization
  • Site descriptions can now be 300 characters (up from 255)
  • Improved error for invalid search queries
  • Fixes the in 2.0.8 introduced bug where a space was missing between a name and “wrote” in a quoted comment
  • Updates references to GetLuna.org to match our updated website (see below)
  • Updates the “Check for updates” feature
  • A set of bug fixes

Since Luna 2.0.8 we use the by Git (and GitHub) generated zip-files as downloads from our website. However, we didn’t think this one through since Git also includes a number of irrelevant files (like .gitignore) that should not be part of production versions. Today’s update rectifies that and Git will now leave such files out of the download.

Another GitHub-related change is the inclusion of a number of files in our repository for issue templates, pull request templates, etc. But also the GPL v2 license. Except of the license, non of these files actually make a difference to the package you download, but it does make reporting issues and requesting features easier on GitHub.

For more details I would like to refer to the release notes.

Luna 2.1 Preview 2

Luna 2.1 Preview 2 contains the same set of fixes and improvements as Luna 2.0.9, but of course it also bring a number of other features and enhancements to the table. The most notable changes since Preview 1 are:

  • Forum icons can now be set to be either Solid, Regular or Brand icons from Font Awesome Free, if you enabled Font Awesome Pro, you can also choose the Light icons
  • Improved night mode with better contrast and a darker design for the mainstage
  • Fifteen and Sunrise have been rewritten in SCSS and the CSS file included in the download is now compressed resulting in smaller stylesheets and thus faster loading times, this also makes these themes easier to maintain
  • Fifteen has an updated sidebar design in threads to take less vertical space on small devices
  • Spoilers now use the Bootstrap collapse plugin instead of a custom implementation
  • General enhancements to the Backstage design update, including the start of using bolder fonts
  • Fixes an issue in Preview 1 where the Backstage accent color selector in profile was broken
  • Fixes a number of icons that didn’t exist in Font Awesome 5
  • Branding update, because Luna’s logo got a little bit bolder
  • MySQL 5.5 is now the minimum required version if you are using a MySQL database
  • We updated the Backstage logo to use our new, bolder typeface
  • Like with Luna 2.0.9, irrelevant files are now excluded from the generated download, for Luna 2.1 this includes the LESS and SCSS files used to generate the CSS for the Backstage and Mainstage

For Luna 2.1 Preview 2 I would also like to redirect you to the release notes for more information. We still have some more things to come for Luna 2.1. This includes, but is not limited to:

  • User avatar as profile menu icon (instead of the generic user-icon)
  • Font Awesome Pro system icon set selection
  • Converting the Backstage stylesheets from LESS to SCSS
  • Typography
  • Backstage night mode improvements
  • A big update to our documentation (see below)

As always it is recommended to update, but make a backup!

Website and documentation updates

Now, there is one more thing I’d like to talk about. And that is the documentation. Our documentation has always lagged behind, in true FluxBB-fashion. However, I’m making moves now to change that. And step one was dropping the whole HTML-mess that was the documentation and rewrite it in Markdown. “Rewrite” as in “I changed all html-tags to Markdown”, not “The whole thing has new content”. The documentation is available on GitHub for everyone to collaborate on!

Additionally, the website got updated to dynamically show the sidebar menu and the page content depending on what page you visit. As a result, the documentation can fully be managed from the GitHub repository’s content. This should make maintaining the documentation a lot easier for 2 reasons: Markdown is much better fit for writing documents than HTML and much less prone to markup errors, and updating the documentation no longer requires directly messing with the sites code.

Everyone is free to help out with the documentation now. If you want, of course. And “helping out” doesn’t mean you have to write it, if you see an error or would like to see some documentation about something in Luna, you can also create a new ticket on GitHub.

Before Luna 2.1 goes out the door, I really want to spend some serious time on the documentation and start maintaining it properly from there on out. This has lacked for years, and it is really time to change that.

And to close it all of: we made a number of improvements to our website’s design, mainly for small screens. We also fixed the broken download buttons for the Luna 1.0 preview releases.

Don’t you forget about us

Luna 2.0.8 and 2.1 Preview 1 are here!

It has been silent around Luna’s development for a long time. A way too long time. I’m sorry that I’ve let this slip as much as I have. However, for those wondering when, if ever, I would return to developing Luna, here is the answer.

Development of Luna restarts todayÔĽŅ

Yes. Today.

And that starts today with a new website (with working download buttons!) and with the release of Luna 2.0.8 and 2.1 Preview 1. Version 2.0.8 is a maintenance update and mainly focusses on improving support for PHP 7.2 and updating vendor packages. Prism (the syntax highlighter) has been updated to version 14 (up from 11) and Font Awesome has been updated to version 4.7 (up from 4.6.3). It also has a small set of bugfixes.

I was not sure how to proceed beyond 2.0, though. Although the obvious answer would be: “from where you left off”, I’m not sure if that’s the right thing to do. While I had a lot of fun building ModernBB 2.x and 3.x and Luna 1.x and 2.0, I feel like it has diverged from what it should have been and the codebase has suffered from that.

So here is the plan for Fallow:

Most of the changes we’ve made so far to Luna 2.1 have been reversed. Instead, we’re working on an update mostly targetted at getting Luna up-to-date from the past 2 years of lack of development. This means we’re mainly focused on the following:

  • The Backstage will have an updated design for its navigation.
  • Improved navigation for small screens in both the Mainstage and Backstage.
  • Font Awesome Free 5.0, with support to replace it with Font Awesome Pro 5.0 if you have a license.
  • Support to use vendor packages from CDN rather than loading them from the site.
  • General Quality of Code improvements.
  • General bugfixes.

I don’t want Luna 2.1 to be too much of a change, which is why Bootstrap 4 isn’t coming to Luna 2.x. Nontheless, an update is finally coming. I hope to release it somewhere in July. Also, when Luna 2.1 launches, support for Luna 2.0 will stop entirely.

And as mentioned earlier, Luna 2.1 Preview 1 is also available starting today. When you update, look out for the following changes:

  • Reverts all changes made in Luna 2.1 before we restarted development
  • Support for getting Bootstrap and jQuery from a CDN
  • Revamped Backstage design (not finished yet)
  • Font Awesome Free 5.0.13 replaces version 4.7.0, this might break some of your forum icons, so check them (also not finished yet)
  • Support for Font Awesome Pro
  • A lot of coding convention updates
  • Native font stack for both Fifteen, Sunrise and Backstage
  • Improved mobile navigation and tables
  • Removes support for smilies, emojis are now the only option
  • Removes support for switching update rings
  • jQuery 3.3.1 (up from 2.2.4)

For all the other changes that will be coming in later previews and eventually in Luna 2.1, please check out the ship list over at GitHub.

From Luna 2.1 on, I’m planning to do some incremental stuff. Of course we will update Luna with more recent versions off the vendor packages that are included with it as well as updating the CDNs that will get introduced in 2.1, but no big changes will be added to Luna 2 from there on out.

So what about Luna 3? Well… I honestly feel like Luna has drifted to far from its original vision and with Luna 3 I’m planning to restore that. Don’t expect much new in Luna 3, it will mainly be an overhaul of the current features, as well as dropping some of them. So here’s what you should expect from Luna 3:

  • Serious updates to the codebase. Seriously.
  • Bootstrap 4.x as front-end framework, which will include a redesign of Luna to give it a modern look and feel.
  • Notifications, Inbox, and a number of other features will be dropped.
  • A bunch of small features, nothing to fancy.

Luna 3 is supposed to become a big change. But it won’t be a big change from a functionality-perspective. Nontheless, I’m looking forward to starting development of this version. In the past year that I’ve been inactive with developing Luna, I’ve learned a lot, and I honestly hope that Luna will now benefit from all of that.

Hello everyone.

I’M BACK.

Luna 2.0 “Emerald” Now Available

It has been a while since our last stable release (January 1st, version 1.3.1), but today we’re proud to announce the availability of Luna¬†2.0 “Emerald”. Today’s update is not only a massive feature update, it is also an important patch as it fixes a number of bugs in Luna 1.3. This is basically also a 1.3.2 that we never released.

Hold your horses; Luna 2.0?!
Notable might be that this is Luna 2.0. “Is that huge project of yours already done?” you might ask. The answer to that is: nope, it’s not. The reason this is suddenly Luna 2.0 is because we follow Semantic Versioning and that system doesn’t allow us to use version 1.4 with the changes that are in this update like we planned to do at first.

The project I’ve been working on for a long time now will continue to go on, but it will get released as Luna 3 instead of Luna 2. However, to keep confusion out of the equation, I’ll refer to future updates solely by their name and no longer by their version as that is much less likely to change.

Luna¬†2.0 is an update that you don’t want to miss. Not only does it come with “some” visual improvements to both Fifteen, Sunrise and the Backstage, but it also comes with its fair share of new features, bug fixes, security improvements, general code improvements and so¬†much more. Certainly worth it.

Fifteen 2.0 and Sunrise 3.0
Last year, with the Denim-update, we included a redesigned Sunrise theme. This time around, we felt it was time to give Fifteen its first substantial update since the Aero-update. Our goal was to make the theme more consistent, better for desktop, but also better for mobile, more accessible, easier on the eyes, simpler and look much more polished. And I think we did a great job.

home

The inspiration for Fifteen 2.0 comes from the Airalin theme I’m currently designing for Luna Glitter. Although this is a prototype of that theme, it looks – if I may say so myself¬†– stunning. Even if you disagree, you must admit that it looks much better than some of the default themes other forum software come with.

sidebar

One of the much requested features we got was to give forums more of a visual identity in the sidebar: show us the color! So we did. The forum’s color is now indicated with a colored stripe on the left hand side.

thread

Another much requested feature was to show some more information about people on the thread view: mainly the comment count and title where missed by many. So both of these are back now too. We also made avatars slightly bigger.

profile

Another major change we made was to the profile. Profile, Inbox, Notifications and Settings got a major redesign to all fit together much better. Especially the Settings-page doesn’t feel disjointed anymore. The profile’s personal details now also have a better look and draw more attention.

At Sunrises side of the fence, major thing have changed. Sunrise is once again no longer a stand-alone theme. Instead, it is a child-theme based on Fifteen like it used to be before the Denim-update. The result is that most of its design is now aligned with that of Fifteen. With the obvious exceptions.

sunrise

As always was the plan with Sunrise, it is forums that have the main spot, not threads. The redesigned index shows you a nice looking overview of all forums, and in the sidebar you can find the most recent activity feed like it used to be since Denim.

Night mode, revamped
We’ve also decided to take a second look at the night mode. Night mode is a system we introduced back in the day with the Bittersweet Shimmer-update and allowed users to automatically (or forced) switch to a dark UI for during the night. We’ve redesigned the Night mode theme for both Fifteen, Sunrise and the Backstage to provide more contrast and a cleaner and more unified look.

nightmode

Make it yours
With Luna 2.0, we wanted to provide a more customizable experience. And that’s exactly what we did, with¬†5 new features. First off, you can now add your customized CSS to themes that support it (and obviously, Sunrise and Fifteen do support it). This will allow you to make minor changes to your theme without the need to edit the themes directly and thus make upgrading harder, or making a child theme which is quiet complex for just 1 (or more) (minor) change(s).

Secondly, because we’re well aware that branding is probably important to you, you can now choose to replace the default placeholder avatar with your own. Third, both Fifteen and Sunrise (as well as the Backstage) support a new feature we call “Header image”, you can now upload an image that is to be used as the background for the header. The result is some beautiful design. Fourth, Luna now comes with a default favicon that you can also replace right from the Backstage. And finally, we’ve added 3 new accent colors for you to choose from: Dark Red, Pink and Beige.

Notification improvements
Further, we’re dropping the capability of marking notifications as read or removing them straight from the fly-out. Instead, when you click on a notification, you’re now not just directed to the notification’s link, but the notification is automatically marked as read. In the notification page on your profile, you can now also mark individual notifications as read or remove the individually.¬†You’ll notice that when you’ve got unread notifications, the notification center icon will fade in and out to draw your attention.

Further, we’ve added a couple of events for when Luna will give you a new notification. First of all, when a new report is filed by an user, every moderator and administrator will now get notified of this through the Notification Center, regardless of the chosen report method. Secondly, you’ll also receive a notification when there is a new thread in a forum you’re subscribed to.

Password security
Ever since ModernBB 1.6, we’ve been using SHA-1 encryption – without salt – to store passwords in the database. Not anymore. We’ve decided to kick out this weak encryption in favor of its much stronger brother SHA-512. Not only that, but we now also use salt. Accounts need to be migrated to this; this happens when the user logs in for the first time after the Emerald-update has been applied. Note that you’re users won’t be able to change their password until they start a new session since the upgrade.

Inbox replies
Another much requested feature was the capability to respond to Inbox messages just like you can respond to threads: right from the message view. And this is now possible as you’ll see that a new Editor field has been added to the bottom of the threads. Talking about the Editor…

Editor improvements
We’ve also taken a look at our editor. The editor has come a long way and the Emerald update is mainly a matter of how we handle its interface on mobile devices. Instead of just dropping buttons, we now hide buttons under a new ellipses menu, making the editor in general more user friendly. You’ll also see the editor pop up in Inbox threads, as we now support quick comments in there too!

editor

Going multilingual: Dutch and more translation improvements
The Emerald-update is the first Luna release that comes with 2 languages. In addition to English, we now officially support Dutch too and thus a Dutch language package is included in the core. Note that this doesn’t mean that we will be providing support in Dutch on our official forums, that is still English-only.

Besides that, we’ve also taken a look at the number of strings that need to be translated and kicked some that where not useful out. Strings that where to similar have also been merged. The final result is much less work for translators to translate Luna! And finally, it is now possible to translate the “About” page.

Right to Left
We’ve talked about it in the past, but this time around it is finally here. Luna now support Right to Left languages like Persian fully (that doesn’t mean we’ve got Persian included in the core).

rtl

Revamped Backstage
We’ve decided to port the new structure for the Backstage from Fallow to Emerald. The result is a more logically structured Backstage. One of the many improvements can be summed up in a simple example: all BBCode settings are now located under “BBCode”. It’s the first time since ModernBB 2 that we’ve reworked the structure of the Backstage as much as we did, and I’m going to be honest: it was long overdue, so here you go.

Additionally, we’ve cleaned up the Backstage interface a¬†lot too. First of all we dropped the title of every page to make more space for the actual settings. Second, the interface now has a more refreshing UI. Third, the night mode got completely revamped to be more accessible. Fourth, the Backstage now has a footer. Fifth, the Index has been revamped to be more useful. Sixth (we keep going!), the user search and ban search forms are now fully responsive and finally we cleaned up much of the Backstage logic.

Board management
The “Board”-page has received a major revamp of itself. We’ve merged the forum and category positioning settings so that you can now update the whole structure of your board all at once. Not only that, but we’ve also added name, icon and color settings to this interface for you to edit all at once as well. We’ve also addressed the issues with sub forums. In the management interface, sub forums can no longer appear in another category as their parent and sub forums will always be shown below their parent. Further more, to make sub forums more obvious, they now have a small margin on the right.

board

Reports and comments
Another page that got a massive update is the Reports-page. This is mainly a visual overhaul, although it comes with its own fair share of improvements. First of all, when a comment is reported, it’s content is now also shown in the report. Second, we provide direct links to¬†delete and edit a comment right from the report UI.

Another new management feature we’ve added is “Admin note” for comments, this allows you to add a note that is visible to anyone reading the comment to, for example, warn for a certain praktisch in that comment. For example, if someone shares¬†a link to illegal or shocking content you can edit the comment to remove it and put in a warning that you don’t accept the content from the comment as a reminder to everyone.

Other changes

  • Revamped search results to give you more info and context about the result.
  • Advanced search has a cleaner UI in Fifteen.
  • Emoji’s are now enabled by default.
  • The emoji set has been updated.
  • SQLite 3 support has been improved and we’ve taken away the “Experimental” label from the adapter.
  • Support for PHP 5.2 and lower has been gone for long, but now we’ve also dropped the code that made it possible in the first place.
  • You can no longer manage your database from Luna’s Backstage.
  • You can no longer add new users through the Backstage.
  • Notifications can now take more than 1 line in the fly-out.
  • We’ve done some cleanups in the database.
  • Themes can no longer include their own options (because the lack of use of it) and no longer need to include a logo and screenshot.
  • Also, themes now have a new folder structure.
  • Enabling debug mode now also whos the query table in the Backstage.
  • Fixed a couple of bugs.
  • And a whole lot of other things!

How to upgrade
As usually, we strongly recommend you to create a back-up of your board’s database and files. We test Lune extensively but some issues that could do harm to your database can always go unnoticed.

As an additional note, due to the nature of Luna 2.0 (with many files being move around) we strongly recommend you to remove all folders and files that are part of the Luna core except for the avatar directory and its contents and your config.php file (and your database-file if you are using SQLite). Obviously, you do this AFTER you have backed-up and before you upgrade your board. After the files are removed, you just put the Luna 2.0 files in your root and visit your board to trigger the upgrade.

What follows
Now that Emerald has become the Luna 2.0 update, the question might rise: “Is there going to be a Luna 2.1?”. The answer is yes. I don’t want to waste a major version number to just one feature release. Luna 2.1 is now the Fallow-update. We’ll also start development of what we’re currently calling the Glitter-update, which will be a major revision of the forum software.

Luna 2.0 beta 1 now available

After kicking off a series of 7 alpha releases, we’re now ready to show you guys the first beta of Luna 2.0. Despite not being the big update we announced originally as Luna 2.0 (which is now moved to what will probably become Luna 3.0), this update comes with a ton of new features and enhancements.

However, unlike previous releases, I’m not going to list every single update since Preview 7 or Luna 1.3 for that matter. Instead, I would like to direct you guys to the Luna Preview page and scroll down to get an overview of what’s new in this upgrade for Luna.

As always, be aware that you’re dealing with pre-release software. Despite this being a beta, it can still contain critical bugs. We would like for you guys to test out this new release, for translators, now would probably be the time you start preparing for Luna 2.0. As we’re now in beta stage, we’ll only fix bugs and improve accessibility so usually, no updated language strings will get included. Or at least not more than a few.

Round-up #18 – Backstage 6: managing categories and forums

When building forum software, one of the most important pages in an admin panel – or Backstage in our case¬†– is the page that actually contains the settings to manage the forums and categories you make available to your users. Today’s Backstage doesn’t do a really good job at that, so with the next major revamp coming up as part of Luna 2.0, I would like to take a look with you guys to how the new management page will work.

luna13

Above, you see a screenshot of how the state is today. The above screenshot comes from our official board. And while it is in theory fine to work with, there are in fact more than just one usability issue.

First off: you can’t edit categories and forums at once. If you would change the position of your forums and the position and name of your categories and hit either “Save” in “Edit forums” or “Edit categories”, only the changes in the panel you would click “Save” on would be saved. And that’s bad.

Secondly, and this is more important to touch-enabled devices, the “Edit” and “Remove” buttons are next to each other, without any space in between. While hitting the “Remove” button will trigger a confirmation, this is once again bad design.

Then there is the inconsistency of what you can edit in the overview: why can you only change the position of the forums within their own categories, yet you can change the name and position of categories? Why can’t you change the name of a forum too? Why can’t you change even more than that?

Another issue we’ve heard complains about is that child forums aren’t indicated at all. In fact, in Luna 1.3 it is possible to assign a parent to a forum and put that same child into another category and this overview would actually display it as such. Finally, the current design isn’t responsive either, which brings problems on small screens.

And all of that is actually kinda bad news. So we set out to do better with Luna 2.0 and the result was us redesigning the whole thing. The result is this:

luna20

And above you can see the result (as it stands now). First things first, these category titels “General” and “Browsers” are editable. They are text fields designed to not look like text fields. Below these category titles, you see an actual text field with numbers in. These are the position fields. As you can see, individual forums have them too. These fields will be present in the first couple of Previews of Luna 2.0 but we hope to kick them out of the software before the final release gets out, replacing it with a drag and drop system.

Anyway, to the forum settings, as you can see, the forums are now listed as colored bars (these colors are the colors you assign to them) and we’ve included their icons in the names if set. The edit button now appears in the bar too. If you want to edit just basic settings, you can click on the titles of the boards and their card will open, showing you settings for the name, position, icon and color. You’ll also see an option to remove a board and one that shows the forum is enabled. That later one is a new settings that allows you to temporary hide forums without the need of changing all permissions. You will be able to change it in Preview 1, but it won’t do anything just yet (because we’ll wait with that until the Mainstage gets its revamp).

As you can see, the “Bootstrap” and “Font Awesome” forums aren’t aligned to the left as all the others. This is because they are children of “Announcements”. There is now a visual hint! Additionally, even if you would put these forums before “Announcements” or in another category, they will still appear under “Announcements”.

And finally, you can now save both category and forum settings at once. It sounds like a small changes, but it is big and a serious leap ahead in managing your board. It’s all these enhancements that make Luna 2.0 already a better place to be. Menu management has actually a similar interface (only there aren’t categories and sub forums, of course).

We’re really looking forward to ship the first version of Luna 2.0 somewhere later this winter. We don’t have an ETA at this point, but the progress is promising and it would be awesome if we could get out our first preview somewhere in February. Stay tuned for more details and more looks into the next version of Luna!

Once upon a time, there was a Backstage

With Luna 2.0 Preview 1 coming along nicely, I found it kinda fitting to go over the history of the Backstage. We’ve done this before, prior to the launch of ModernBB 3.3, but this time around, there is so much more to say about the Backstage. So let’s take a look at how we got from¬†Dashboard 1.6 in ModernBB 1.6 to Backstage 6.0 “Astrid” in Luna 2.0.

Dashboard 1.6/1.7

adminpanel1.6

Framework: None / Icon set: None / Awesomeness: 11%

As ModernBB 1.x was more of a maintenance release to continue where FluxBB failed, the Dashboard that could be found in these early ModernBB versions wasn’t anything different from FluxBB. What you see above is an interface that isn’t responsive and not optimized for management at all. It’s actually quiet boring. Moving on…

Dashboard 2.0

dashboard2.0

Framework: Bootstrap 2.3.2 / Icon set: None / Awesomeness: 24%

Similar to Luna 2.0, the first beta of ModernBB 2.0 focused on revamping the Dashboard – and only the Dashboard. This is where the basic structure that is still in use today, is introduced. Not only that, but for the first time in ModernBB’s history (which includes PunBB’s and FluxBB’s) a framework is introduced. In this case, it was Bootstrap 2.3.2. It’s the first time it appears, and also the last. But I’m gonna be honest with myself, the UI was a mess. Let me illustrate:

dashboard2.0bis

That’s the Settings-page. The very same page we’re now getting very positive feedback on. Let me be clear: this version… not that positive. And I can only say that I agree. Somehow, I found it a good look back in the day, now I don’t.

Backstage 2.1

dashboard2.0bis2

Framework: Bootstrap 2.3.2 / Icon set: None / Awesomeness: 27%

In beta 2 of ModernBB 2.0, not that much changed about the design, however, a notable change in functionality was that the index now included features instead of just a list of things you could do. And another obvious change was the introduction of the word “Backstage”.

Backstage 3.0

backstage3.0

Framework: Bootstrap 3.0.0 / Icon set: None / Awesomeness: 43%

Then ModernBB 2.0 beta 3 happened. Not only did this release revamp the front-end completely – something that’s totally besides the point for this blog post – but it also revamped the Backstage. Big time. We kicked Bootstrap 2 out, and included Bootstrap 3 instead. Thank god, you might say, because for the first time, the Backstage was finally taking shape.

Beyond a visual refresh – as you can see below – not that much changed to the Backstage in ModernBB 2.0’s releases after beta 3. It didn’t change a thing in ModernBB 2.1 either. The only notable difference was that Bootstrap got updated to version 3.0.2, and even that isn’t that notable at all.

backstage3.0bis

Backstage 3.1

backstage3.1

Framework: Bootstrap 3.0.3 / Icon set: None / Awesomeness: 51%

Little note: so far, non of the versions of Backstage where actually responsive. Backstage 3.1 did bring a responsive design. A poor implementation, but one nonetheless. This puts ModernBB in history as one of the first forum software to have a fully responsive design, thanks to Bootstrap. Version 3.1 also introduced the now much used panel-button (as can be seen in the “New reports” panel). For some reason, we also made the design wider. I don’t know why, but we did.

Backstage 4.0

backstage4.0

Framework: Bootstrap 3.1.1 / Icon set: Glyphicons / Awesomeness: 59%

ModernBB 3.0 introduced a less colorfull design (though it did introduce the idea of accents). It is however notable for Рwhat I believe to be Рthe first good implementation of Bootstrap in ModernBB. The result was a properly functioning responsive design and a much cleaner interface overall. Through later versions would still improve on that, it was a major improvement. Also, we started using icons in the Backstage in version 4.0 too. ModernBB 3.1 and 3.2 also used Backstage 4.0 with some minor adjustments.

Backstage 4.1

backstage4.1

Framework: Bootstrap 3.1.1 / Icon set: Glyphicons / Awesomeness: 49%

And this is the point where we got into a personality crisis. Backstage was redesigned with a more colorful interface once more. And a bright on. A little to bright (but the worst has yet to come). This version of Backstage did introduce the accent system we use today (that is, setting the accent). ModernBB 3.4.3 would upgrade Bootstrap to version 3.2.0, but did not bring any other visual changes. It was a release I am particulary proud of, the Backstage design? Not so much.

Backstage 4.2

backstage4.2

Framework: Bootstrap 3.2.0 / Icon set: Glyphicons / Awesomeness: 56%

As if Backstage 4.1 wasn’t bright enough, version 4.2 made the navbar white. White! It did make the design look more professional and all, but it certainly was a downgrade for people working often in dark spaces with not enough light.

Backstage 4.3

backstage4.3

Framework: Bootstrap 3.3.1 / Icon set: Glyphicons / Awesomeness: 64%

The good news is that that light design didn’t last that long. ModernBB 3.6 started to introduce design aspects that could be found in the Luna Preview 0 builds from that time. This time, the Backstage did gain a functional update: touch-friendly dropdowns for tablet users. Backstage 4.3 is basically the last iteration of the Backstage 2-based series. ModernBB 3.7 used the exact same code for it’s Backstage and after that, it was Luna all the way. But ModernBB had one last update…

Backstage 4.9

backstage4.9

Framework: Bootstrap 3.3.5 / Icon set: Font Awesome 4.4 / Awesomeness: 83%

ModernBB 4 brought Backstage 4.9 along. This version of the Backstage was a back-port of the Backstage that could be found in Luna 1.1. It brought Font Awesome as the icon set to ModernBB and was the final ModernBB release.

Backstage 5.0

backstage5.0

Framework: TrentUI 1.0 / Icon set: Font Awesome 4.2 / Awesomeness: 71%

So, now we go backwards. Backstage 5.0 is older then version 4.3 and 4.9. This is the first itteration of Backstage since version 4.2. It introduced a brand new design and 2 noticable framework changes: Bootstrap was set aside for TrentUI (a Bootstrap fork) and Font Awesome took over the Glyphicons usage. Perhaps more important: this update changed the menu and required less navigation within the hamburger menu on small screens. Later revisions did put Bootstrap 3.3.0 back in place.

Backstage 5.1

backstage5.1

Framework: Bootstrap 3.3.1 / Icon set: Font Awesome 4.2 / Awesomeness: 82%

Luna 1.0 Preview 1 brough along a familiar design if you’re used to todays versions of Luna. The interface was made darker and flatter.

Backstage 5.2

backstage5.2

Framework: Bootstrap 3.3.1 / Icon set: Font Awesome 4.2 / Awesomeness: 84%

Luna 1.0 Preview 2 made panel headings more distict and stand out and brought minor visual changes. It was basically the last major itteration of the Backstage for the Luna 1.0-branch. 1.0.7 brought the “brand”-update, which included our lighter blue brand color, the one still in use today.

Backstage 5.3

backstage5.3

Framework: Bootstrap 3.3.5 / Icon set: Font Awesome 4.3 / Awesomeness: 87%

Which brings us to todays Backstage. While both Bootstrap and Font Awesome have been updated since the original Backstage 5.3 release (as part of Luna 1.1), the design has remained the same and no big changes where applied. It’s our best Backstage yet that’s publicly available. But we have one version that’s even better: Backstage 6 “Astrid” right now in development.

Lessons learned

After a little less then 3 year of iteration changes and 2 major revamps (Backstage 2 and 5), you might think that we’ve learned our lessons on how to make a great administration interface. And yes, we did. And all of that is going to come together in the 6th version of the Backstage, and the third major revamp (though, since it is a rebuild from scratch, you might say it’s the first major revamp). It’s going to be gorgeous. We’ll have a blog post up about Luna 2.0 Preview 1 early next year, so stay tuned!

Luna 1.3 nearing beta

For the past couple of weeks, I’ve been working on both Luna 1.3 and 2.0. While more attention has gone to the 2.0 update, there is also work being done for the 1.3 update. So now that this update is nearing the beta stage, I think it’s a nice idea to talk a little bit about what’s in it. So, first the stuff that is already in:

Themes and Backstage design
Luna 1.3 will be a rather minor update on the surface. The obvious things first: we will bring along a major revamp for the Sunrise 2.0 theme, making it look more like the classic Random themes from ModernBB. Another major Рalso theme related change Рis the Fifteen 1.3 update. The theme will now show categories and filter options in the sidebar on the index. Further, we made serious improvements to the mobile interface of the theme. Idem dito for the Backstage.

Features
We’re introducing the “important” label. It’s a lot like the “pinned”-label, but it simply doesn’t stay put on the top of the forum list. Talking about labels, we’ve also changed the “new”-label to match all the others.

System changes
We’ve done some major work on timezones. First of all, we’ve included a serious amount of new timezones that where missing prior to the 1.3-update. Secondly, we’re now also taking care of Daylight Saving Time ourselves, instead of the user needing to change it manually in the profile and admins in the Backstage. Further, this update includes a couple of minor developer changes.

Preparing for Luna 2.0
However, the biggest change in the codebase is probably the major renaming work that has been done to the database. We changed a couple of things to match our terminology – much – better and that includes the database update. This is done to make sure that we can keep Luna 2.0 as clean as possible. We’ve also included some brand new coding conventions for our CSS files.

However, the changes won’t stay limited to just those. Here are the features we’ve yet to include but are planned to land in the coming days:

BBCode enhancements
Luna 1.3 will include 2 new tags for BBCode: center and size. However, because we’re well aware that if you give users freedom, they will abuse it, the size-tag will be disabled by default. Additionally, we’re also planning to update the video-tag to use Bootstraps responsive video embed class instead of our own fixed widths. These 2 options will disappear from settings in that update.

High-DPI support
Luna is a rather High-DPI-compatible platform as we don’t use much that isn’t scalable. However, the things that can’t scale, are horrible. The default avatar, test image and emoticon set will receive an upgrade to work better with High-DPI screens. Additionally, I would like to recommend you to use emoji’s instead of emoticons. As of Luna 2.0, emoji’s will be enabled by default once more (after we decided to disable it by default during Luna 1.0s test phase due to complains about Chrome not using emoji’s, but honestly, I don’t care much anymore and I’m getting sick about Chromes weird behavior; so that’s that)…

So these are 2 of the major additional changes that are coming. We’re planning some other minor changes beyond these. In case you didn’t notice, Luna 1.3 is more of a minor refresh that focusses more on details than that it is a major update 1.1 and 1.2. Most of my focus for major features has now shifted to 2.0; and I think that – if you guys see the result of that – you’ll be very happy that I did.