Personal plugin showcase (yes, I'm an attention grabbing git)

Arantor

  • As powerful as possible, as complex as necessary.
  • Posts: 14,278
When we unite against a common enemy that attacks our ethos, it nurtures group solidarity. Trolls are sensational, yes, but we keep everyone honest. | Game Memorial

live627

  • Should five per cent appear too small / Be thankful I don't take it all / 'Cause I'm the taxman, yeah I'm the taxman
  • Posts: 1,670
A confident man keeps quiet.whereas a frightened man keeps talking, hiding his fear.

Arantor

  • As powerful as possible, as complex as necessary.
  • Posts: 14,278
Re: Personal plugin showcase (yes, I'm an attention grabbing git)
« Reply #47, on October 21st, 2011, 01:22 AM »
True, they are, but I'm fairly sure I dealt with them.

Though, call_hook('actions') was silently broken for a while recently, until I noticed and fixed it by renaming it to avoid a collision in the plugin loader.

Nao

  • Dadman with a boy
  • Posts: 16,082

Arantor

  • As powerful as possible, as complex as necessary.
  • Posts: 14,278
Re: Personal plugin showcase (yes, I'm an attention grabbing git)
« Reply #50, on October 25th, 2011, 03:59 PM »
In other news, I've started work on a new plugin. Details will be shared when I have something to share but suffice to say it's a bigger plugin than any of those in this thread, it will probably end up being smaller than WedgeDesk in the end (with any luck) but it is also something I've long thought about doing and never done before.

What I will say at this juncture is that it is a ground-up rewrite of an older SMF mod, without using any of the original code, database tables or JavaScript, and that it will naturally come with the sorts of refinements that you should be used to by now from me :P This one isn't so much to prove the plugin system but that I need to take a mental break from all the plugin stuff itself because I'm fed up trying to solve the issues attached to things like FTP for the moment.

Also, slightly more controversially is that I've chosen a licence for it, and it's one that I suspect a number of people won't be too pleased with, because it's the CC Attribution No-Derivs licence. It means that it can be shared but not forked, mostly because I want to retain control of it, but of course if I end up getting fed up with it I'll relicence it appropriately at the time.

Nao

  • Dadman with a boy
  • Posts: 16,082

Arantor

  • As powerful as possible, as complex as necessary.
  • Posts: 14,278
Re: Personal plugin showcase (yes, I'm an attention grabbing git)
« Reply #52, on October 25th, 2011, 06:00 PM »
As compared to...?

From http://en.wikipedia.org/wiki/Mozilla_Public_License
Quote
The rights granted by the initial author include: 1. to use, reproduce, modify, display, perform, sublicense, and distribute the source, and modified version of the source. 2. patent rights to use and make available the original code 3. to distribute works which contain the code in combination with new code, and to license the new code in any way the distributor wishes
The rights granted by subsequent users include: 1. to use, reproduce, modify, display, perform, sublicense and distribute the source of their modifications 2. patent rights to use and make available both the modifications and the entire work 3. to distribute works which contain the code in combination with new code, and to license the new code in any way the distributor wishes
Quote
The way in which the Mozilla Public License is drafted basically requires subsequent users to license the original code under MPL and all additional code under any kind of license. Therefore, a company can create a proprietary product from code licensed under MPL by licensing the added components in a closed source manner. The stipulation that core files stay under the MPL provides incentive for developers to improve and develop aspects of the core functionality. The MPL is GPL-incompatible because the GPL module cannot be legally linked with an MPL module.
Long story short, if an MPL module were to be implemented in Wedge for any reason, that's fine. It's compliant with just about any licence out there, doesn't enforce wider licence changes (unlike GPL) but pretty much enforces that any MPL file *stays* MPL, because you can't have a file that's both MPL and proprietary.[1]

Essentially if we were to integrate something, the MPL file(s) and any changes we've made to make them work would remain MPL, irrespective of the rest of Wedge's licence, regardless of what licence that is.

In some ways it's better than BSD because it doesn't allow sub-licensing in the way BSD does, and it should be noted that if SMF were MPL licensed rather than BSD licensed, we'd have a much harder time justifying the current non BSD licence (and even harder trying to enforce that)

I don't really plan on using MPL for my plugins though, for the time being I'm much happier sticking a free to redistribute, but no derivative works licence on them.
 1. By which I mean any other licence, technically. Even GPL comes into that category.
Re: Personal plugin showcase (yes, I'm an attention grabbing git)
« Reply #53, on November 13th, 2011, 04:09 AM »
OK, had a bit of time this evening and while I worked on a few other things too, I primarily updated my Users Online Today plugin for Wedge.

It now has the ability to display users online not only 'today' (based on server time) but also online in the last 24 hours (from now) or last 7 days (from now), is allowed to be shown to 'anyone', 'anyone signed in', 'admins and global moderators' (based on moderate_forum or admin_forum permissions) or 'admins' (true admins), and lets you reorder by name or time, ascending or descending.

The only thing left to really do with it would be to display the 'last online' time as a hovertext to the links themselves, but other than that... I'm not really that fussed with it to be honest. It all works, it now even has its own admin area to play with, with all of its three options.[1]

That kicks at least three different SMF mods off the possible to-do list, too...
 1. Yes, I know I could use the equivalent of Modification Settings, but I far rather don't pollute things that aren't mine, so to speak, and it's not like it's actually that much work to integrate anyway.

Powerbob

  • Posts: 151

billy2

  • Trying to earn brownie points for a lads trip to the Red Sea. Minus 1 already - just for asking!!
  • Posts: 350
<br /><br />cough, cough.

Arantor

  • As powerful as possible, as complex as necessary.
  • Posts: 14,278

Nao

  • Dadman with a boy
  • Posts: 16,082

Arantor

  • As powerful as possible, as complex as necessary.
  • Posts: 14,278
Re: Personal plugin showcase (yes, I'm an attention grabbing git)
« Reply #58, on November 13th, 2011, 01:07 PM »
It isn't exactly the same as the picture any more; I changed it slightly because I discovered that if the number of visitors was rather high, it would potentially cause the header to wrap, so I made it fit closer to the normal online list.

The code's not the best in the world (it's in my plugins repo if you're interested) and I'm fairly sure it could probably be cached without too much effort, just that I didn't bother doing so at this time.
Re: Personal plugin showcase (yes, I'm an attention grabbing git)
« Reply #59, on November 13th, 2011, 02:06 PM »
In other news, my next little project is a port of my SimpleDesk shoutbox to Wedge (decoupling it from SimpleDesk in the process) and maybe adding some neat features in the process.

More details as and when I'm done with it :)