-Terence
I LOVE this idea!! Especially since I am usually one of those people who are waiting and praying for someone to help! I will look to see if there are any posts I can answer as well!!
Great idea again!
Couldn't do the selection entirely by SQL, but it's pretty close. It grabs the 5 oldest discussions ordering by number of replies from the course and then drops off any which have more than 0 replies programmatically.
Does this go on my job application?

Props to glyphdoctor for her idea as well.
Open 'block/unhelpedmoodlers/block_unhelpedmoodlers.php' and change the number in both instances of "
LIMIT 5
" (it's in there twice, pretty close together). The surround text looks a bit like:WHERE d.course = $course
ORDER BY replies ASC, d.timemodified ASC
LIMIT 5");So for example, changing this to:
WHERE d.course = $course
ORDER BY replies ASC, d.timemodified ASC
LIMIT 10");Would show 10 discussions.
Good luck!
How about a block that shows a random selection of unanswered posts each time?
The new version should be a straight-swap for the other version - the only changed file is '
blocks/unhelpedmoodlers/block_unhelpedmoodlers.php
'. Changing the number of discussions displayed is identical to last time, too.As a side note: I must say that, being my first time delving into the Moodle, the code has a wonderful simplicity to it that makes it very easy to modify, and yet still remains very powerful. I think (for kicks) I'm going to make a mod I thought of when I first tried editing a page in Moodle: AJAX editing.
AJAX [Asynchronous Javascript And Xml] editing would basically turn the click-refresh page-click-refresh page-click-refresh page situation for block editing now into a drag-and-drop affair with no reloads. Adding items would also be a lot simpler. I'll look into it.
New version! This one does as you asked. It has three categories (random, oldest, current user) and allows specifying which, and how many of each, you want shown. It also has a little image next to each post, and I've made the posts one-liners (image, clickable subject and date).
Just edit these settings in the top of '
blocks/unhelpedmoodlers/block_unhelpedmoodlers.php
' to configure it:// EDIT HEREor leave it how it is!
// The number of posts of each section to display
var $limit = array(
2, // Random Unanswered Posts
2, // Oldest Unanswered Posts
2 // Your Unanswered Posts
);
// Change the following to false to disable the section marked
var $enabled = array(
true, // Random Unanswered Posts
true, // Oldest Unanswered Posts
true // Your Unanswered Posts
);
// Whether to show an image next to each entry
var $show_image = true;
// STOP EDITING
I know the styling isn't strictly conformative, but if that's a problem feel free to change it. There so many layers to Moodle I havn't got the hang of tracking down stylesheets definitly. Looks pretty nifty, though.
If you're editing the code, beware: I had to do some tricky stuff with the SQL. It's not for the faint-of-heart. (reminds me of one time I did this amazing programmatically-built query...)
If you downloaded this before this message appeared, please redownload. There was a typo.
In any case, I really think the concept of this block is really innovative. Most forums on the Web order threads by recent activity, and many tag "hot" topics in some manner. This encourages people to delve into the hidden topics rather than beat a dead horse with the "hot" topics...
It is also showing a post from a "hidden" forum (my news forum, which I only use for email announcements), but I'm not sure if that is because I am the teacher.
Also, it needs to be tested to make sure it doesn't include posts from forums that don't allow replies at all.
I just tried deploying it in another course, and got this message before the block was displayed and it only showed my posts (including one from a forum that doesn't allow replies, but again perhaps because I am the teacher).
Warning: Invalid argument supplied for foreach() in /home/pizzap22/public_html/blocks/unhelpedmoodlers/block_unhelpedmoodlers.php on line 88
Warning: Invalid argument supplied for foreach() in /home/pizzap22/public_html/blocks/unhelpedmoodlers/block_unhelpedmoodlers.php on line 88
Warning: end(): Passed variable is not an array or object in /home/pizzap22/public_html/blocks/unhelpedmoodlers/block_unhelpedmoodlers.php on line 98
Warning: end(): Passed variable is not an array or object in /home/pizzap22/public_html/blocks/unhelpedmoodlers/block_unhelpedmoodlers.php on line 98
Warning: Invalid argument supplied for foreach() in /home/pizzap22/public_html/blocks/unhelpedmoodlers/block_unhelpedmoodlers.php on line 151
Warning: Invalid argument supplied for foreach() in /home/pizzap22/public_html/blocks/unhelpedmoodlers/block_unhelpedmoodlers.php on line 151

Actually, here's a whole new package. I've updated it so you can exclude specified fora (you'll need to have the ids; instructuions inside).
Be back to you in a sec!
It was showing answered posts because I was telling it to ignore the current user's posts (rather than discussions) so if it was you who answered it, it still looked "unanswered". I apologise.
I realised the main problem was my expectations of "get_records_sql()" - the array items' keys are the ID numbers of the discussions, not the record numbers.
OK, so here's the fix. I've done pretty extensive testing, but it'll need to go on a full board to see if it works. Let me know how it goes.
(options are all the same as before)
Two things now that I think should be done: the first is to come up with a better name at the top of the block than Unhelped Moodlers so it is applicable to all sites. I'm trying to think of a catch-all phrase. Something like: "Can you help me?" or "Have You Seen These Posts?" or "Answers Needed." I know I would probably vary it on my own site on a course to course basis, but it seems a good catchall phrase as standard would be good. The block itself should probably also get a different, more general name. The second thing you could do is to make a separate page for configuration (preferably for each deployment of the block, rather than sitewide), so that the actual files don't have to be edited.
I do have a concern about the category of my unanswered posts. I'm not so sure that having that category is such a good idea from a psychological standpoint. It makes it too easy for students to feel ignored if they see lots of posts from themselves not answered.
Dutifully renamed "Unanswered Discussions" this block lets you display forum discussions which have not been replied to.
Features:
- It has three categories: Random Unanswered Posts, Oldest Unanswered Posts, and Your Unanswered Posts.
- Each category can be independantly turned on and off, and can also have the number of items displayed changed. [default all displaying 2 items each]
- Block instances are editable.
- Exclusion of specific fora (ie a News forum) are selectable in each block's instance editor.
Is there specific place I should post this?
I'm trying it now on this course, and we can put it in CVS shortly.
A couple niggly things that still need fixing are:
- use CSS like the other blocks (no tags like <small> or <center>)
- source code has tabs
I've fixed those little things, and tried to fix the CSS. I hope it is within guidelines. I'm gradually learning my way around Moodle.
What's the thinking on how we as helpful contributors deal with this information. Do we just reply to everything or assume if it's older than 6 months then the issue was resolved / reposted and therefore we ignore it?
Of course, the oldest unanswered discussions are from the news forum where we can't actually reply to clear them. Perhaps exclude the news forum?
Darren
And I was thinking about that too - how does one mark a discussion as not needing a reply? Especially when one doesn't have the rights to reply to it. Initially I just disregarded this thinking that a simple reply (in context) would fix it, however now I'm not so sure.
There's probably no real easy way of "fixing" this without hacking some of the forum code to add a "closed" property to discussions, or the like.
Either that, or I could add another property that puts a date limit on the discussions... like "No posts older than 1 Year" sort of thing.
Thoughts?
Another issue I've noticed is that if you choose to not use the icons with the list of unanswered posts, they kind of get squished together. You might want to add something to the CSS to put some space between them.
...Or looking at the aim of the functionality:
- identify all the forums
- make volunteers moderator of one/more forums
- let the tool help them to find orphan questions for this set of forums?
Just downloaded and installed this. Worked perfect the first time ! Great block !
Small things : Even if the check from 'show bullet' is removed, the bullet still shows. Also, the space between the forum name and posts makes the block too big...could it be removed ? I've just set it up so that only 5 oldest discussion show up - What if i DONT want 'oldest unswered discussion' - the heading - to show up ?
For first time installers, here's a summary :
1. You can straight away install this, at least in 1.5.2, like a normal block installation.
2. Once installed, just add the block the course you want it to show in. When editing is turned on, you can goto the configuration of the block and set your preference of which forum to exclude and what posts to show.
It's a wonderful block, hope its already part of new releases.
Thinking as "Student" in your http://moodle.org/mod/ "course" it would be great to increase the "My Unanswered dicussions" to 5 or 10 (if it doesnt supposes a great load for the server)
New blocks should always be posted in the forum for blocks also ! Am doing that for this one here..
http://moodle.org/mod/forum/discuss.php?d=34014#157966
Thanks ! Great Work !
It'd be cool to incorporate this initiative in our www.helpusgettobett.com plan whereby we will answer queries at our Bett Show stand - and if you can prove you have asked an unanswered query in a forum in the month preceeding, we will give you a small reward if you come to claim it.

Why don't we do so every day rather than once a month?

http://moodle.org/mod/forum/discuss.php?d=25840
It seemed strange at the time to receive a reply like that in a forum headed "Fun stuff and off-topic discussions that may have nothing to do with Moodle."

I always thought a cool idea in forums would be to have an area dedicated to 'problem solved', that would be the first place to check for answers prior to posting a question or cry for help and have it based on defined areas of moddle. Even having it set up so that users can check out the most recent cries for help and perhaps offer some assistance would be nice too.
Forums shouldn't be only about content and zillions of posts, if a problem has been given a soultion then that post should be deleted from the board to save space. If there were a disignated area for solutions would save us alot of time.
I believe it to be a time-waster to look up an item and have to sift through 1000's of posts to find an answer. Many of the problems are often repeated by different people. Even more the reason to have a solution found area.
I like the way Moodle forums are set up to be specific for a particular area of moodle that is good for searching on a specific item like blocks, modules, etc
Not sure if its even possible to have a solution board due to each person's problem being unique but are they really so unique ?
I also think a request should not be considered the same as a cry for help, it may be a good idea to have a separate areas for requests, hacks, modifications, etc. Then the area for problem solving could be more focused
I think if anyone could support such a unique solution set up it would be Moodle
Hey, i know its alot to ask, think of BK "have it your way" (all the time)
Some of these unanswered posts are very old, eh.
So I have a question and a suggestion
Question - what is moodle.org policy on answering ancient un answered questions? Should they be answered for completeness, so that people searching the forums will not come to dead ends?
Suggestion - instead of random and oldest unanswered posts it might make sense to have random and newest unanswered posts, because old unanswered posts are not terribly relevant.
Tim
Brilliant idea especially since I fall in the category of people who for some reason don't elicit a response from people.... am I alone here? I wonder what the percentage of posts go unanswered....it would seem quite a few. BUT I have no room to talk...its all about contributing...and I haven't been as good as I could be...so new years resolution for moodle...read the posts and help where I can
"The giving hand is always full"
Very true. There is a small core of people who regularly help and help a lot, but it's nothing like it was just a year ago.
Steve
I follow moodle already a long time (being user 3923
I see most questions are asked by people new to me, while the answers are mostly given by a small group of other people - mostly a small group enthousiasts. That is not a good evolution: everyone should try to answer a question if possible
The nature of the questions is imho also changed: a few years ago most questions where about small technical issues and question rising due to lack of documentation. Now most of these technical problems are solved and the documentation is getting better every day. Also the forums contain a lot of answers.
The questions the users ask now are more user or site specific, being a lot more difficult to answer or sometimes even to understand the question. That also explains why questions are not answered.
Now Moodle is considered a grown up CMS and no longer a PHD-project, there goes a lot of developing time to security, usability, multi-language support, compatibility, browsersupport, customisation possibilities, promotion, etc. This takes a lot of developers time, taking them away from the forums. A lot of developers also have a daytime job
So, the point of this message for the regular users of moodle.org is: try to answer questions yourself, even if you only know a part of the answer. Others will be inspired by you and help answering the question as a whole. In the unlikely case you say something foolish, there will be someone to correct you (I hope
Koen that is a very important and pertinent post I think. And perhaps this illustrates why a group of UK teachers, myself incldued, felt the SPECIFICITY of some people's questions made the creation of a specific 5-18 (or whatever) age range Forum had its uses.
Furthermore, at the Bett Show Moodle stand we are going to actively encourage each and every person who comes to the stand, to register at Moodle.org - a case of striking whilst the iron is hot.
I would therefore hope that doing so will add more 'novices' to the melting pot and create more people with burning questions prior to their taking up Moodle as a VLE.
I have been encouraged (and the www.helpusgettobett.com campaign is a perfect example of this) and struck by the cameraderie and benevolence shown by felloow Moodlers in the time that I have been a 'user'. That's why I helped set up the helpusgettobett campaign.
It's one thing when someone is developing a new module to expect the original developer to deal with the problems that arise when they have time, but once a module becomes standard in Moodle there needs to be someone who will respond to critical bugs quickly. New features are great, but if during the addition of the new features critical bugs are introduced in previously working standard modules, that is a real problem. Standard modules should include standard and quick bug fixing or else they can become unusable. I would hope with Martin's hiring people to work on Moodle on a regular basis this will happen.
I too like Koen have been a user for a long time (my ID is 3230) and have noticed with the explosion of moodle use, so too have come the increased forum messages.
I find myself "deleting" more messages than I read, not out of maliciousness, but out of available time.
I have made, and am making, a conscious effort to offer some suggestions to those in need (even if I am NOT an expert), as I feel it is important to give back to this wonderful community... not to mention many of the questions are from new users that just might not know how to do something that we "old birds" do.
Might I suggest that each moodle member finds some way to contribute, even if it isn't a large contribution. For example: I am not a programmer (wish I were) but I have created some training materials and tutorials that I share with this community along with answering the odd message.
I know that I cannot contribute or troubleshoot a new block, but at least I try in other ways.
Respectfully,
Jeff