Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - Arantor
6481
Features / Re: Template skeleton!
« on September 9th, 2011, 03:22 PM »
Quote
Hmm, didn't know that...
Well, I guess this is the kind of thing that would have to go, unless we implement it into the media area.
It's not well known unless you ever had a reason to dabble in the attachments code.

Doing it asynchronously one way or another would definitely remove the need for that code in its entirety (and would simplify WedgeDesk too)

I'd certainly prefer the UI aspect of asynch uploads (AJAX, Flash, whatever)
6482
Plugins / Re: Converting WedgeDesk
« on September 9th, 2011, 02:43 PM »
I already have a list of all the hooks currently in Wedge. They're consistent in as far as they have short, descriptive names.

Code: [Select]
<?php
function knownHooks()
{
return array(
'language' => array(
'lang_who',
),
'function' => array(
// Cornerstone items
'pre_load',
'determine_location',
'detect_browser',
'load_theme',
'menu_items',
'actions',
'behavior',
// Threads and posts display
'display_prepare_post',
'display_post_done',
'messageindex_buttons',
'display_buttons',
'mod_buttons',
// Admin
'admin_areas',
'admin_search',
'modify_modifications',
'core_features',
'addon_settings',
'output_error',
// User related
'login',
'validate_login',
'logout',
'change_member_data',
'verify_password',
'reset_pass',
'activate',
'delete_member',
'track_ip',
// User permissions
'load_permissions',
'illegal_perms',
'illegal_guest_perms',
// Content creation
'personal_message',
'create_post_before',
'create_post_after',
'modify_post_before',
'modify_post_after',
// Process flow and execution
'buffer',
'redirect',
'exit',
'dynamic_rewrite',
// Miscellaneous
'css_color',
'buddy',
'bbc_buttons',
'place_credit',
'media_areas',
'profile_areas',
'ssi',
'whos_online',
),
);
}
6483
Plugins / Re: Converting WedgeDesk
« on September 9th, 2011, 02:37 PM »
Language hooks are, they're all prefixed with lang_ for that reason after I inadvertently created it with the same name as the determining-actions hook later in Who's Online during testing.

The others, the namespacing only needs to go as far as broad area though I haven't even done that with what I've added - we could have profile_, admin_ and similar prefixes. The more we add, the more important it is that we have namespaces.

Any add-on that adds its own probably should get into the habit of namespacing its own anyway (as WedgeDesk does)
6484
Plugins / Re: Converting WedgeDesk
« on September 9th, 2011, 02:09 PM »
I've already added 3 hooks - one to load language files (and only language files) for Who's Online, one for extending IP tracking and one for extending SSI, though I think only the first one is likely to be used... Ultimately though I think pretty much every aspect of the system should have hooks, it just ends up being how the hooks need to work.

More will likely come as I figure out more places that hooks are actually needed, though I've removed several of WD's hook calls and replaced them with Wedge's.
6485
Off-topic / Re: Baidu bloody loves me.
« on September 9th, 2011, 02:07 PM »
That's the thing: it consumes 8-10x more bandwidth than any other search engine, and it's going to keep going.
6486
Features / Re: Template skeleton!
« on September 9th, 2011, 02:03 PM »
Quote
Oh, and I'm also not looking forward to dealing with the Attachment feature in post pages... I mean, I like the 'simplicity' of it, and I'd like to do something between our current popup and the current attachment solution for that.
Hmm, yes, that is an interesting point. The current solution is 'nice', it's straight forward, it's elegant, but it doesn't allow for adding more complex data to the attachment like the popup would.

What about perhaps enhancing that with an async solution, to have the file uploaded there and then, with the option to open the file in the media area for editing?

The stuff around attachments is pretty complex, but not for the obvious reason: it's not that it just uploads stuff and does error handling, but that it has a complicated habit of stashing stuff in session. Specifically that if you upload a file or two while posting but there's an error, the files are preserved in the temporary folder, with the details for them (for renaming/moving to the actual attachments folder) in session.

I spent a surprising amount of time figuring it out for SimpleDesk, because it is pretty complicated to get it right, but that might be a good place to start because it breaks the process down into stages unlike Post2.php which doesn't (and you can see the stuff that I had to write to bridge to SMF's own functions, which I think will help make the logic slightly easier to follow)

Though of course, if the file's sent asynchronously, that stops being a problem anyway.
6487
Plugins / Re: Converting WedgeDesk
« on September 9th, 2011, 11:10 AM »
I just discovered that WedgeDesk in its current form declares as many hooks as Wedge currently has. I'm not sure if that's a bad thing or a good thing, and I wasn't even that thorough in declaring hooks in WedgeDesk.
Posted: September 9th, 2011, 11:04 AM

Of course, that's not so true now. A lot of the hooks SD had were because SMF *didn't have them* when I implemented them, and because I didn't want to break my own compatibility (as I was using my own plugins) I simply got their hook to call my function and then my hook, but now I just reuse the master hook in Wedge and be done with it.
6488
Off-topic / Re: Baidu bloody loves me.
« on September 9th, 2011, 11:01 AM »
Because not everyone has control of iptables (though I think Nao has access to it here)

But you can definitely exclude them by examining the HTTP request.
6489
Features / Re: New revs - Public comments
« on September 9th, 2011, 10:57 AM »
Heh, yeah, I can see the logic. Just that people do ask quite a bit how to enable it because it is generally considered to be conducive to getting people to post.

And I'd never heard of Machinae Supremacy before...
6490
Features / Re: New revs - Public comments
« on September 9th, 2011, 10:18 AM »
I haven't touched your latest stuff yet, still on the add-on infrastructure trail.

However, there is one thing I noted about the change to quick reply... I think I'd rather make it shown by default, rather than bigger but still hidden by default. It's a surprisingly common question on SMF, not helped by the fact that the process of changing it is relatively illogical at present, but I'm inclined to think it should be shown, on by default.
6491
Features / Re: Template skeleton!
« on September 9th, 2011, 09:18 AM »
Quote
you describe something I don't want either
Ah, see, I was describing what I saw from what you were saying: a setup that is surely a path to hell and back. Joomla, WP, Drupal (to a lesser degree) all have these problems.
Quote
The theme would HAVE to give it back to make it work.
Then the theme doesn't have final control, does it? It has a reasonable contract to fulfill, which is the state of play that we were approaching anyway.
Quote
where some themes support 4 spots, others 25 lol.
That's the scenario I want to avoid and one that your suggestion didn't seem to exclude from happening, if anything it seemed to encourage it, since leaving it up to the theme means that themers are going to do bizarre things like disallow certain areas because their design doesn't support it.
Quote
Would mean "if a mod asks to add a subtemplate to the left, use this layer." like a shortcut!
I like that.
6492
Plugins / Re: Converting WedgeDesk
« on September 9th, 2011, 08:56 AM »
Quote
scrap the whole paradigm of "Status" being automatically set by the system
Yeah, that wasn't one of my better ideas.
Quote
Allow the status field to be user-editable, and to have other choices added to the pick list.
*nods* What I had in mind was a little more complex, but yeah.
Quote
I'm currently using a custom field for it, but of course I'd like to have that column available in the main grids and sortable
Yeah, that wouldn't be a problem.
Quote
Combine the Awaiting User Response and Awaiting Staff Response grids into one grid, and if desired, display who's turn it is to respond in a column.
Interesting, that wasn't one of the things I was going to change, personally, though I did have other ideas for how things would be arranged. More configurable was in order, certainly.
Quote
If you decide to keep them separate grids, at least put the assigned column in the Awaiting User Response grid.
There isn't really the room which is why it isn't there already, but more configurable should fix that.
Quote
Tie a column in the grid to the tally plugin.
You mean, put the results of the tally plugin into the grid? Eeek, could get expensive, but I already have an idea for fixing that...
6493
Off-topic / Re: Baidu bloody loves me.
« on September 9th, 2011, 08:52 AM »
Yeah, they don't really honour robots.txt.
6494
Off-topic / Re: Baidu bloody loves me.
« on September 9th, 2011, 03:19 AM »
Because Baidu's a shitty spider.
6495
Features / Re: Template skeleton!
« on September 9th, 2011, 01:48 AM »
Quote
I suspect you want mods to do all the work lol..but why? Let the admin+theme do all that.
Two words: WordPress Widgets. That is essentially how they work. And what a mind fuck that is. You end up with themes having to state what widgets they support and vice versa.

There has to be a middle ground, of reasonably rigid definition, that both sides can reasonably expect to be present. Turning it on one side so that one side has all the power, it hamstrings the potential of the other.

SMF put too much power in the modder's hands, what you're suggesting removes most of the power they would actually have. I want a middle ground where I can write code that I have a reasonable expectation of being supported the way I want it to be, not some vague notion of support.

Also, if anything, it's actually making life a lot harder for themers to do anything creative. Because I guarantee you that if themers are given totally free reign, people will have trouble using add-ons because they just won't work as expected. Take a look at WordPress sometime and how many people really do have trouble with Widgets - and how many themes actively state what they support for just that reason: because they give an awful lot of flexibility to the themer and little to the modder in any real sense.

Having some semblance of structure ensures that both sides have a reasonable expectation of things working.