The Wedge features we couldn't sort into another category.

Features: Miscellaneous
 Contact lists

Posted by Nao, on October 19th, 2013, 01:20 PM   (3,984 views)

Feature: Contact lists
Developer: Nao
Target: users
Status: 80% (contact lists implemented, format is final; privacy implemented. need to remove buddy lists.)
Comment: this is a bit like the Facebook feature, but Noisen-style. Feel free to ask if you want more details.

10 replies
 Cool stats!

Posted by Nao, on November 26th, 2013, 07:21 PM   (4,455 views) « 1 2 3 »

Feature: Statistics charts
Developer: Nao
Target: everyone
Status: 90% (stats page believed complete; planning to implement on other stats, but not right now.)

Look at that... :)

Needs some work, most notably I'll implement some select boxes to automatically refresh data (or Ajaxively refresh it), so you can get a 'range' of your choice, and/or disable the entries that you're not interested in (new members, etc.)
But this is what I managed to cook up after a few hours of work, and I'm very happy with it. Great plugin, really! It only had a bug which prevented the tooltips from working, so I fixed that, and I may start contributing to the project, because I'm thinking of adding more details in tooltips, etc.

Feedback welcome, as always!

:edit: Read following posts to view progress on implementation, which is now 100% on the main stats page.
:edit: Moved the topic to public!

30 replies

Posted by Nao, on May 7th, 2011, 12:55 PM   (1,523 views)

Feature: Plugins
Developer: Arantor (main), Nao
Target: admins, modders
Status: 99% (a complete rewrite... Pretty much ready to go!)

SMF 'packages' and 'mods' are now called 'plugins'.
Our goal here is to completely phase out file edits in favor of the use of hooks, so that admins no longer have no deal with plugin incompatibilities and tedious forum updates. Of course, it's not going to be easy... Which is why, like its Hook counterpart, this is still largely a work in progress.

October 7 update: Arantor implemented the new plugin system, which is a much bigger rewrite than originally expected, and more powerful as well. We're sure modders and users will both love it!

2013 update: it seems to be complete at last ;)

1 reply
 Media area (Aeva Media integration)

Posted by Nao, on May 7th, 2011, 12:57 PM   (5,097 views) « 1 2 »

Feature: Media area
Developer: Nao
Target: everyone
Status: 80% (Aeva Media 2.10 implementation working 99%, work has yet to be done on further integrating AeMe into the Wedge internals, such as using it in place of the attachment system.)

I think what most people thought when they heard Arantor and Nao were teaming up on a SMF fork, was "Really? A SMF with Aeva Media and SimpleDesk installed by default? I'm in!". Well, it doesn't have SimpleDesk (yet!), but yes, it has Aeva Media. Officially it loses the 'Aeva' in favor of generic naming, but it's all in there.
The same features you loved before -- now at full speed in Wedge, including all of the features in Aeva Media 2.10, for free. Now if that isn't commitment! The only thing that actually disappears is Highslide -- because of the confusing license, I decided to rewrite it from a cleaner base that allows for use on commercial websites. So, instead of a 30kb gzipped Highslide, we now have a 800-byte gzipped Zoomedia that does the exact same stuff for pictures. Not kidding you. (Support for other media types is being worked on.)

:edit: Zoomedia is now 3 kilobytes after gzipping. Adds better animations, support for HTML divs, and finally works across all major browser versions (including IE6).

19 replies
 Gravatar support

Posted by Nao, on May 7th, 2011, 12:56 PM   (4,693 views) « 1 2 »

Feature: Gravatar support
Developer: Arantor
Target: users, admins
Status: 100% (believed to be complete.)

Users may now use their gravatar (if available), instead of a locally or remotely hosted avatar.
One of the finest points in Wedge is that they can specify a gravatar e-mail address that isn't their account's e-mail address. For instance if your e-mail address is and your gravatar address is, you just need to specify it in your profile area. Simple, yet epic.

17 replies
 Feed links

Posted by Nao, on May 6th, 2011, 07:33 PM   (3,078 views)

Feature: Feed links
Developer: Arantor & Nao
Target: users
Status: 90% (some links don't work. Needs further investigation.)

Inspired by the Noisen implementation of blogs, we added these feed links in the sidebar (as well as support for topic subscription.)
You'll always see at least two links for the entire site: latest posts, and latest topics. Then, if you're inside a board, you'll get additional links for latest posts & latest topics in that board. Visit a topic page and you'll get another additional link for latest posts in that topic.

:edit: Wedge now links to Atom feeds by default. They're as widely supported as RSS 1 nowadays, and are generally better in every respect. Support for Webslices and smf custom feeds has been removed, due to lack of interest from both users and developers.

12 replies
 Improvements to Hooks

Posted by Nao, on May 7th, 2011, 12:55 PM   (8,204 views) « 1 2 3 »

Feature: Improvements to Hooks
Developer: Nao (main), Arantor
Target: modders, admins
Status: 60% (source hooks completed; template hooks in progress; considering whether to add file param; once everything's done, need to look through the code and add hooks where useful.)

It took SMF a long time to add "real" support for hooks -- a way to allow plug-ins to safely add code to the main codebase without actually editing the original files. Still, it's far from being a usable standard.

We simplified the calls to begin with. "add_hook('hook_point', 'my_function', 'my_source_file')" will execute 'function' once Wedge reaches the specified hook point (you may specify a source file to load before calling it.)

We provided context data to a few more hooks, and deleted a few useless hooks and outdated mechanisms (such as pre_include, catch_settings or the SMF_INTEGRATION_SETTINGS array).

Mostly, though, we added hooks to various places that SMF doesn't handle, like auto-suggest, behavior check, friend additions, post creation/modification (before and after), browser detection, query string analysis, dynamic rewrite (pre-pretty URL output buffer time), admin settings, credits...

The code internals are also better laid out. Hooks are unregistered if they're no longer available (e.g. uninstalled add-on.) Everything is put into a $modSettings['hooks'] array, instead of scattered through multiple annoying $modSettings['integrate_*'] variables.
We also try and make sure existing hooks can actually do something instead of just stare at the sky. They can now for instance intercept and modify outstanding personal messages, new topics and error messages.

This feature is under development and hasn't yet a state where it can be considered to be feature-frozen. The goal is to enable modders to add their code anywhere, without having to use SMF's code edit hacks... Thus making it possible to upgrade Wedge versions without uninstalling and reinstalling plugins in the process.

31 replies
 Minor features

Posted by Nao, on May 11th, 2011, 03:53 PM   (4,321 views) « 1 2 »

Here's a tentative list of all minor feature additions/changes that I didn't deem worthy of their own section, but could still be mentioned here... (Complainers should go through the commit log themselves. Beware though, it took me a week to do that. Don't try this at home. Or at least try and help organize this list and point out what features you feel should be expanded upon in a post of their own.)

I've sorted them by author, because that's how I went through the commit log originally -- starting with Pete's additions, and then mine. I'm not in the mood for spending more time on sorting the list by type. I'm sure no one will read it entirely anyway! :P

Additions by Arantor:

- BBC tags are now defined in the database, making it easier for mods to add their own tags. (No file edits!)
- Database-controlled topic ordering in message index.
- Modders can now register custom {variables} to queries the same way {db_query} is done, with a function call. No code modification needed.
- Cache optimization on news items.
- Unread posts area now always shows the entire list of unread posts -- this should encourage the use of the Mark All Read button in the process, which in turn helps database performance.
- Users can now move topics only into boards they could actually create topics in.
- Imperative scheduled tasks (they're given a specific execution date in the future), and source file setting for scheduled tasks (i.e. you can specify a file to load before executing a given scheduled function.)
- Added group requirements to paid subscriptions. You may now offer a specific subscription to a given group, e.g. current subscribers could get a renewal offer at a reduced price.
- The language on PayPal pages will now match the user's language choice on Wedge.
- Added proper member recount in the maintenance area.
- New permissions: View IP (own / all), Edit Website, Edit Signature. (You can now easily prevent newbie groups from adding spam in their website & sig.)
- Debug info (database and stuff) can now be shown to different user groups, can be set in the admin area.
- At install time, the first topic is now posted from the admin -- no more 'Simple Machines' guest, meaning you can actually choose to edit the post and keep it.
- Added loadSource('File') function to load 'Sources/File.php' efficiently. Also saves you the need to add $sourcedir to the list of global variables...
- All actions are now each in their very own file.
- Actions can avoid being logged in the who's online list by defining a variable at the beginning of the file.
- blankGif() outputs a blank image directly, instead of redirecting to a gif file.
- Added ability to hide all banned users' avatars.
- Allow redirect boards to be opened in a new window (or not.)
- Most of the important Source files are now properly documented in the PHPDoc format. (And the both of us are trying to document our new functions as thoroughly as possible.)
- Removed all of the code pertaining to topic participation icons. Seriously, who even noticed these icons at all? If you want to know if a topic is popular, you just look at the number of replies/views in it...
- Removed help area. (Shortly after that, SMF did the same to their help system. They're now using a Wiki. We don't know if we'll do the same though.)
- Changed 'star' denomination to 'rank' in user group ranks.
- Dropdown selector for viewing mode in PM area. (I'm sure this will help many actually notice there are other modes available.)
- Removed easter eggs. Some were funny, but they were old (and could even slow down the forum.)
- Quick Reply area now allows you to immediately show the full editor icons in a single click.
- At registration time, some default user settings were switched, for logical reasons. Also, the time offset is detected by Wedge.
- Replaced musician and actor avatar packs with xkcd avatar pack. Which is wayyyy cooler...
- Moderators checking out the who's online area will now see the error message whenever a user action results in an error.

Additions by Nao:

- Chosen auto-suggest entries are shown above the auto-suggest input, rather than below. It makes more sense.
- parse_bbc_inline() is an alias function that parses messages for inline tags only, i.e. tags that do not result in an oversized object. It's best used in areas where text parsing could end up breaking the page layout.
- Added $browser global (an alias to $context['browser']). In addition, the browser array adds 'agent' (current browser's name), and 'version' (current version number).
- New menu system. Looks great, plays great, uses CSS3 but works in IE6, uses JavaScript but works when JS is disabled. Supports separators. Icons based on the Diagona set.
- An ": edit :" smiley. It's an easy addition, but priceless when you're modifying a post and you want to draw attention on the edited part.
- Made some permission names clearer.
- Removed so many useless things from SMF that I wouldn't know where to start... Wait. Don't even get me started, actually.
- All confirm() and similar JS calls using $txt are now protected with JavaScriptEscape(), fixing an annoying SMF bug where language files could unknowingly break features.
- Modified links inside posts to show an underline. It may seem like a detail, but I've often seen people spam by hiding links into their posts. They should be more visible.
- Removed stylesheet parameter from loadTemplate. Use add_css_file('mycss', true) instead.
- The 'php' bbcode is now looking more like a 'code' bbcode with syntax coloring enabled automatically.
- Quick edit icons now show during page loading, rather than after all JS is executed. Eliminates that awkward layout change effect in SMF.
- If an image (gif/png/jpg) is requested and not found, Wedge will log the error, instead of Apache. Should make it easier to spot these errors. (This was revision 404 in the SVN server. I have a weird sense of humor.)
- The auto-suggest control should now work flawlessly in IE and Opera. I believe the SMF team gave up on fixing these glitches long ago. Actually...
- ...Wedge supports all modern, current browsers. SMF dropped official support for Opera because they couldn't/wouldn't fix related SMF bugs. Way to go.
- Set $context['bottom_linktree'] to true to automatically duplicate the linktree at the bottom of the page.
- Buttons now all sport a contextual icon where useful, such as "OK", "Cancel", "New", "Delete", "Spellcheck" or "Save".
- Three stylings so far: Wine (default), Wuthering (Curve-like) and Warm (minimal look.)
- Removed all of the JavaScript eval/string function calls, and many of the PHP ones as well. Good riddance.
- SMF enjoys deleting your work when you quick edit a message and then click the quick edit icon again by mistake. We don't.
- If you're viewing your outbox and at least one of the recipients replied to a message, Wedge will tell you how many.
- Use hideChrome() function to hide the header, footer, sidebar and top templates automatically.
- Check $context['is_ajax'] to determine whether a page is being called through Ajax -- enabling you to send different content. Chrome is automatically hidden.
- $(object).dragslide() applies a drag'n'slide effect to any DOM object. Use 'nodrag' classes inside the object to mark non-draggable areas.
- I was in charge of the French version for SMF for a long time, so obviously it's even better in Wedge, and always up to date. Go go rude people!
- Most of the icons in the default theme (including language-specific icons) are now CSS-driven, so they're easier to style.
- Wireless template gets shortened tags and class names. When it comes to some data plans, a byte saved is a buck saved.
- Made profile links not clickable if user hasn't got permission to view profiles.
- $start_time global is now a valid value in seconds. Use microtime(true), guys!
- 'Child boards' are now 'sub-boards', as often requested in the SMF community.
- Optimized UTF8-aware string functions. Just wanted to say.
- If Today/Yesterday date transformations are enabled, check for the year and remove it if it's the current one.

Additions by both:

- {query_list_board} is like {query_see_board}, but only gives users the ability to view hidden boards in board lists, but not browse them. (Okay, maybe this one should be in a feature of its own...) :P
- Android, iPhone and iPad (tablet) posting icons. Now you can actually let these silly devices add typos for you. It's not your fault anymore.
- Restructured several important templates into series of sub-templates, for easier integration.

...And these are all the things we thought might be of interest. Internally, there are hundreds more changes to the code base, all of which are documented in the SVN changelog, which we might release in the future. If anyone's interested in reading it.

16 replies