Extension talk:Todo Tasks

Sites using this extension?
Any to have a look at to see how this works when implemented? --Dr DBW 01:27, 11 September 2007 (UTC)
 * Unfortunately our company wiki is behind a wirewall and is not accessible from the outside world. Perhaps someone else can post a link to their website? --Gri6507 11:57, 11 September 2007 (UTC)
 * What about a screen shot at least? I'm curious how it works.
 * Sorry it took me so long. I have updated the main extension page with 3 sample images. --Gri6507 02:08, 6 November 2007 (UTC)

User error
Changing $wgEmergencyContact email in LocalSettings.php causes email ability of Todo to no longer work. Any suggestions?
 * As long as $wgEmergencyContact is a string representing a valid email address (i.e. ), then there should be nothing preventing the email functionality from working. Are you saying that with your changes to $wgEmergencyContact, the wiki still works, but the email feature of the extension does not? --Gri6507 11:57, 11 September 2007 (UTC)


 * Thanks for your reply - I figured out the issue. The extension works as designed, it was my spam filter on our mail server that was the problem.  It blocked the changed email address. Thanks again!MotherSuperior 16:41, 18 September 2007 (UTC)

Could it have i18n files
wiki/extension/todo/SpecialTaskList.php wiki/extension/todo/languages/todo_LanguageEn.php wiki/extension/todo/languages/todo_LanguageFr.php wiki/extension/todo/languages/todo_LanguageZh_tw.php wiki/extension/todo/languages/todo_Language........ And all you need todo is to write "todo_LanguageEn.php" ,the default language file, and make sure that a language file well be loaded based on which interface the user use.
 * Could Todo Tasks Extension has a file structure like followed:

Then everyone using a difference language would like to make a language file by editing "todo_LanguageEn.php" and post the file here.

Thank for your Great-extension.--Roc michael 01:09, 27 October 2007 (UTC)


 * This is an excellent suggestion. I made the extension capable of doing i18n things (see Extension:Todo Tasks. This was released under version 0.9.0. Please let me know how complete the i18n support is. Also, when you add translations for whatever language, please let me know so I could add them to the extension. Thanks! --Gri6507 01:48, 6 November 2007 (UTC)

i18n for Chinese
Hi Gri6507:

First, thanks for agreeing on my opinion. The followed code are the Chinese messages for the i18n file.
 * Thank you for the translations (I removed the code from here). I have added them to SVN. --Gri6507 02:00, 11 November 2007 (UTC)

I tried to add the code above into the i18n file download from here but the message don't work when the setting "$wgLanguageCode = "zh-tw"; is in the Localsetting.php.
 * As far as I know, what you did sounds correct. There is no reason why the extension would now not use your localization settings. Just to be certain, please make sure that you are running your wiki with the updated code. --Gri6507 02:00, 11 November 2007 (UTC)

This extension likely cannot work with NukeDPL Extension and DeleteOldRevisions Extension until I disable them.
 * I think I see the problem with the NukeDPL extension. I believe the issue is that the author(s) did not return true; at the end of function wfSetupNukeDPL. I am not sure what, if anything, is the problem with the DeleteOldRevisions extension. In any case, what I'd recommend is to reorder your LocalSettings.php to load the Todo Tasks extension before the others. This may solve your problem. --Gri6507 02:00, 11 November 2007 (UTC)

And after I save the page with the content like followed:
 * The user name "Michael" always disappear after I saved the page.

You could see the example here and some setting page links --Roc michael 16:52, 9 November 2007 (UTC)
 * Version
 * MediaWiki: 1.11.0
 * PHP: 5.1.2 (apache2handler)
 * MySQL: 5.0.18-log
 * This is a bit more curious. I went to your wiki website and saw that there actually is a user called Michael. So, assinging a task to Michael should have worked. Since I am not sure how else to help you on this one, I'd recommend the following. If you feel comfortable editing PHP code, take a look inSpecialTaskList_body.php inside the function getUserIDFromUserText. You can add some print statements in there to see why that function is failing. Maybe you'll be able to see the problem in which case I will gladly add your fix to SVN. If, on the other hand, you don't feel comfortable editing the code, please let me know via email and I will guide you through step by step. --Gri6507 02:00, 11 November 2007 (UTC)
 * Well... It's amazing! The extension cann't receive user names in English in my test page, but it can receive Chinese name. It's so strange. I still want to know the reason.--Roc michael 13:48, 15 November 2007 (UTC)
 * Hi Gri6507. I don't know why it would make good either in English or Chinese in some situations. The problem described above has disappeared. Thank for your helps. If I know the reason, I would tell you --Roc michael 02:29, 25 November 2007 (UTC)


 * Hi Gri6507 I think the problem on using English user names with this extension have solved with new version(0.95), but it still cannot show Chinese message though the i18n file has the Chinese translation. --Roc michael 12:11, 25 November 2007 (UTC)
 * Wow! It's my faults. the following code in the SpecialTaskList.i18n.php


 * should be changed into


 * and


 * should be changed into


 * I am sorry for the mistakes. --Roc michael 12:26, 25 November 2007 (UTC)
 * Glad to see that all of your problems are now resolved. I'll correct the i18n file in SVN with your changes (unless you have already done so). Also, the problem with the disappearing name was in fact fixed by me, although it was your testing that led me to the answer. The issue is that apparently when you created your account, you did not specify a full name for yourself. I changed the code to default to username in that case. Anyways, thanks for all of your help. P.S. Can you please update your translations with the additional message I recently added? --Gri6507 14:05, 25 November 2007 (UTC)

Some (fatal) issues
Looks like a promising extension but I had some problems. After install and applying the patches there was a fatal error: PHP Fatal error: require [function.require]: Failed opening required 'C:\\Program Files\\Apache Software Foundation\\Apache2.2\\htdocs\\wiki\\extensions\\SpecialTaskList/../includes/SpecialPage.php' (include_path='C:\\Program Files\\Apache Software Foundation\\Apache2.2\\htdocs\\wiki;C:\\Program Files\\Apache Software Foundation\\Apache2.2\\htdocs\\wiki/includes;C:\\Program Files\\Apache Software Foundation\\Apache2.2\\htdocs\\wiki/languages;.;C:\\php5\\pear') in C:\\Program Files\\Apache Software Foundation\\Apache2.2\\htdocs\\wiki\\extensions\\SpecialTaskList\\SpecialTaskList.php on line 293

I changed line 293 from SpecialTaskList.php to "require_once ("SpecialPage.php" );". I got no PHP experience but now I can add and see new tasks. On special page "Task list" the task list is OK but the progress not. In Progress List for Mark P. %DPL-1.5.0-WAARSCHUWING: Geen resultaten! (This means: warning, no results!) Just cloning the todo templates was not enough. You've also got to replace "Todo" with "InProgress" in the template text.

Project select on special page "Task list by project" gives no results. Display button gives the next URL:
 * http://localhost/wiki/index.php/Speciaal:TaskListByProject?project=Project1&search=
 * When i delete "&search=" the result is good. How to change this in the extension? The query looks quite complicated.
 * You have to make sure that SpecialTaskList.php has $wgUseProjects = true;. Is yours configured like so? Also, did you create the necessary MediaWiki:TodoTasksValidProjects page in your wiki? --Gri6507 14:11, 8 November 2007 (UTC)
 * Yes, it is configured like that. On the special page there is a list with all the allowed projects. When I select a project and click the display button it gives no results but jumps directly to the search page with the above URL. --Mark P. 21:08, 8 November 2007 (UTC)


 * I looked in the source of the "Special:TaskListByProject" page (see below) and I think I found the source of this error. Question is what is  doing here? My guess is that this is why the search page is displayed when it should not. No difference between Firefox and IE and I do not see it anywhere in your extension code. Is it the same on your site? --Mark P. 22:34, 13 November 2007 (UTC)

Ga naar: navigatie, zoeken

Project selecteren: Project1 Project2 Project3 Zandbak  Teruggeplaatst van "http://localhost/wiki/index.php/Speciaal:TaskListByProject</a>"
 * I don't think the problem is the href=#searchInput link. It looks like that content is from a navigation header on every wiki page. However, you did post something interesting. It looks like the HTML for the form element is never closed. Can you please try something. Edit the SpecialTaskList_body.php in function ValidProjectsForm and add </FORM> to the end of the string on the last line like so:


 * I think this may solve your problem. --Gri6507 01:59, 14 November 2007 (UTC)
 * Yes, that solved it. Thanks for all the quick answers. --Mark P. 21:32, 15 November 2007 (UTC)
 * This has been incorporated into v0.9.2 which is now available for download. --Gri6507 03:17, 16 November 2007 (UTC)

How do I change the status to done?
 * I should make new templates "done" just like the templates "In progress", of course.
 * You also need to create the accompanying DPL templates (i.e. done.dpl, In progress.dpl, etc) --Gri6507 14:11, 8 November 2007 (UTC)

Can you help me out? Thanks --Mark P. 22:24, 27 October 2007 (UTC)

When not logged in (or as administrator) clicking on "my tasks" shows all the tasks. Maybe it's better when you see nothing then.
 * I just released v0.9.3 which should prevent the appearance of the My Tasks link for non-logged in users. I believe this is the right behavior. Can you please try this out and post your results? --Gri6507 03:28, 16 November 2007 (UTC)
 * Is OK now, My tasks link is not shown when not logged in. --Mark P. 21:14, 24 November 2007 (UTC)

The templates themselves are shown as tasks when logged in as the user who first saved the templates. Unfortunate the new version did not solve my Task list by project problem. The internationalization is great! The only thing mising is translation for "In progress". --Mark P. 21:06, 7 November 2007 (UTC)


 * I will look into fixing the "not logged in" problem (I don't have a way to test it because my wiki requires logging in before anything can be done.
 * Maybe you can login as an admin, it's the same effect --Mark P. 21:08, 8 November 2007 (UTC)


 * As for the i18n missing translation for "In Progress", well, it's not really missing. The in progress part is an optional part that the user can add themselves and, when doing so, they must add the necessary i18n contents as well. I will clarify this point on the main page. Thanks. --Gri6507 14:11, 8 November 2007 (UTC)

Future request: in my company there are several people with exact the same real name so now they can see each other tasks. They have a different username, maybe you can do something with that in the query? --Mark P. 21:08, 8 November 2007 (UTC)
 * We actually have the same problem at our work. The only way to resolve this is to assign the task to the correct wiki username. For example, if you have to users whose names are Jon C. Doe and Jon B. Doe, they have to have unique usernames (i.e. JADoe and JBDoe). When assigning the tasks, you have to specify the correct username. I don't know of any other way around this issue. --Gri6507 02:12, 11 November 2007 (UTC)

There is just one thing missing in the installation description. Íf you want to see the tasks in progress in "Special:TaskListByProject" page you should add a few more lines in SpecialTaskList_body.php --Mark P. 21:32, 15 November 2007 (UTC)

More fatal issues
I'm getting this error when I visit Special:TaskListByProject or Template:Todo: Fatal error: Call to a member function getText on a non-object in /home/.../extensions/SpecialTaskList/SpecialTaskList_body.php on line 78

As a quick reference, the code around line 78: function getValidProjects { $ProjPageTitle = Title::newFromText ('TodoTasksValidProjects', NS_MEDIAWIKI) ; return Revision::newFromTitle($ProjPageTitle)->getText; } This extension seems neat. I look forward to using it. :) --Emufarmers 00:35, 18 November 2007 (UTC)


 * What version of MediaWiki are you using? Also, did you create the MediaWiki:TodoTasksValidProjects page? --Gri6507 13:39, 18 November 2007 (UTC)


 * I created MediaWiki:TodoTasksValidProjects, and that fixed the problem. The installation directions  is a bit ambiguous around $wgUseProjects (it says you can set it to true, but then it says it's set by default!), so that section may need some updating.  Also, shouldn't the system message be populated by default to prevent this error?  Beyond that, I look forward to playing around with this. :) --Emufarmers 18:31, 18 November 2007 (UTC)


 * I modified the instructions for project tracking. Hopefully this is a bit more clear. I also released the next version of the extension (in SVN now) that will report an error if the MediaWiki:TodoTasksValidProjects page is not found. For now, this has only been translated into English . Other contributors will have to pitch in to add the remaining languages. --Gri6507 18:51, 18 November 2007 (UTC)


 * Looks good. I've changed a few sections in the installation instructions that I found to be inconsistent or confusing. --Emufarmers 02:06, 19 November 2007 (UTC)

I get this same error upon installing, at the point where I try to create Template:ToDo -- it seems Step 8 of the installation process must be done before Step 6 & 7 in order to avoid the error, unless I missed something in the instructions? --Sethleben 13:30, 28 December 2007 (UTC)
 * I think this would only be an error if the extension is tested before the configuration of all steps is complete. However, I completely understand if users get a bit impatient and try the extension at every step of configuration :-). Since rearranging the order of configuration steps are you suggested does not hurt anything, I did so in the main page of the extension. Thanks! --Gri6507 14:00, 28 December 2007 (UTC)

i18n for hebrew
is here http://www.cc.jct.ac.il/~yedidia/SpecialTaskList.i18n.php.txt
 * Many thanks! I uploaded the file to SVN. --Gri6507 17:12, 15 December 2007 (UTC)

Problem with task lists
Hi there! Thanks to all the work you've put into this extension -- it's very promising! However, it might be worth mentioning in the installation instructions that the listing of the tasks upon clicking "my tasks" can only be by users' Real name, and several problems occur if one or more users have not specified Real names (which, whilst not likely on a multi-user workplace wiki, is quite possible in other situations). Also, I seem to have a problem with the listing by project. When I go to the page Special:TaskListByProject, I see no tasks listed, but a scrolldown menu for the different projects. Upon selecting a project “X” and clicking "Display", I get redirected to my wiki's homepage, but with .../wiki/index.php?project=X in the URL bar. Any thoughts on what could be causing this problem? FYO, I have several projects defined in MediaWiki:TodoTasksValidProjects, and the creation of the ToDo items on other pages and assignment of these to various projects seems to work successfully. The tasks are also grouped correctly according to their page of origin when I click on "my tasks". Regards,--Sethleben 14:15, 28 December 2007 (UTC)


 * Thank you for your comments. What version of the extension are you using? If you are not sure, you can find out by going to the Special:Version page on your wiki. The reason I'm asking is because you seem to be reporting problems that I believe have already been addressed. --Gri6507 12:50, 14 January 2008 (UTC)

Could some strings be included into i18n file
Hi Paul.

The message in the line 178~180 of SpecialTaskList_body.php should be included into the i18n file. $body = ",\n\nSomeone has assigned a new Task for you on ". $parser->getTitle->getFullURL. ".\n\nTo see your complete Task List go to ". $tasklist->getFullURL. ".\n\n\tYour friendly ${wgSitename} notification system\n"; --Roc michael 15:53, 28 December 2007 (UTC)


 * Thank you for the suggestion. This has been included in the latest SVN version. I did not rev the overall version of the extension though. --Gri6507 12:45, 14 January 2008 (UTC)

Odd Listing
I've installed this extension and it seems to work so far. However, the listings don't seem to work correctly.

For example, I have a page "Page 1" with several tasks and I have a "Page 2" with several tasks. I can't figure out what's wrong. Could you please help me?

Thanks a lot!


 * I assume that by "Listing" you mean clicking on the My Tasks link or going to the Special:TaskList page. In that case, it sounds like the contents of your Template:Todo.dpl is not correct. You have to make sure that you copy it exactly (including white spaces). Let me know if that doesn't fix your problem. --Gri6507 12:36, 14 January 2008 (UTC)

--84.145.71.243 15:39, 13 January 2008 (UTC)


 * Well, sorry!!! But I was just too blind.
 * I had my outside the noinclude-tag in Template:Todo.dpl
 * Silly, but now it looks just fine!
 * Thanks for the hint!
 * --84.145.115.158 19:42, 16 January 2008 (UTC)
 * Thanks for the hint!
 * --84.145.115.158 19:42, 16 January 2008 (UTC)
 * --84.145.115.158 19:42, 16 January 2008 (UTC)

PostgreSQL
I'm using PostgreSQL 8.2.6 with MediaWiki 1.12alpha. I converted your SQL statement to be compatible with PSQL as follows: CREATE TABLE todo (                         id   SERIAL NOT NULL PRIMARY KEY,                          hash BYTEA ); ... and ran it - it seemed to have worked. However, I am getting an error from Special:TaskList as follows: The DPL extension (version 1.6.5) produced a SQL statement which lead to a Database error. The reason may be an internal error of DPL or an error which you made, especially when using DPL options like titleregexp. Query text is: SELECT DISTINCT page.page_namespace as page_namespace,page.page_title as page_title, REPLACE(REPLACE(CONCAT( IF(page.page_namespace=0,, CONCAT(CASE page.page_namespace WHEN 1 THEN 'Talk' WHEN 2 THEN 'User' WHEN 3 THEN 'User_talk' WHEN 4 THEN 'DDOwiki' WHEN 5 THEN 'DDOwiki_talk' WHEN 6 THEN 'Image' WHEN 7 THEN 'Image_talk' WHEN 8 THEN 'MediaWiki' WHEN 9 THEN 'MediaWiki_talk' WHEN 10 THEN 'Template' WHEN 11 THEN 'Template_talk' WHEN 12 THEN 'Help' WHEN 13 THEN 'Help_talk' WHEN 14 THEN 'Category' WHEN 15 THEN 'Category_talk' WHEN 100 THEN 'Character' WHEN 101 THEN 'Character_talk' WHEN 102 THEN 'Guild' WHEN 103 THEN 'Guild_talk' END, ':')), page.page_title), '_', ' '),'♣','⣣') as sortkey FROM templatelinks as tl, page WHERE 1=1 AND page.page_is_redirect=0 AND page.page_id=tl.tl_from AND ((tl.tl_namespace=10 AND tl.tl_title='Todo')) AND page.page_id not in (select templatelinks.tl_from from templatelinks where ((templatelinks.tl_namespace=10 AND templatelinks.tl_title='Status_Legend')) ) ORDER BY sortkey ASC LIMIT 0, 500 Error message is: ERROR: LIMIT #,# syntax is not supported HINT: Use separate LIMIT and OFFSET clauses.

I'd be glad to help you make your extension PSQL compatible if you need a Guinea pig to test on, please leave a note on my talk page. Thanks! Elliottcable 06:52, 31 January 2008 (UTC)


 * How can I say now to an offer like this :-). Please be my guest! However, if I had to guess, I'd say that the problem is going to be with the DPL extension and not this extension. Please keep me posted of your progress. --Gri6507 12:27, 31 January 2008 (UTC)

Using Todo inside a template
Hi, First of all, congrats for the tool.

I'd like to use the todo template inside a template.

For example :

Template:test

It works well for displaying when I use for exemple

But in the SpecialPage:Tasklist, I've just Template:Todo.dpl.default instead of the name & task.

Does anyone managed to overcome this problem ?


 * I assume that using the standard Todo template works? I think the real issue is going to be with the DPL extension. unfortunately, I'm not too well versed in that one to know what the issue is. However, I have a question as to why you are trying to do this. Why not simply make Templte:Test whose contents are

<font style="BACKGROUND-COLOR: yellow">TODO: This template is intended to be used as a todo for an administrator

Of course, you'd also have to create a Template:Test.dpl similar to Extension:Todo_Tasks. --Gri6507 18:27, 22 February 2008 (UTC)
 * Hi, I want to assign tasks to usergroups... is it possible to do this, or do i have to create a template like obove for the people in my groups? --212.184.19.70 08:42, 6 March 2008 (UTC)
 * Ok i tried to understand the code for the todo but no success...
 * Then i tried to create a template like the one above. i get my new template (Todotest, Todotest.dpl) displayed on my pages, but i have no entry in my personal tasklist. can anyone tell me if my code is right?
 * Template:Todo
 * <font style="BACKGROUND-COLOR: yellow">TODO:
 * Template:Todotest.dpl
 * * Prename Name -
 * The code i add to assign a new task to user "Prename Name" is
 * --212.184.19.70 09:17, 6 March 2008 (UTC)


 * I wonder if you have a typo above - did you call it Template:Todo or Template:Todotest? The main template and the DPL template have to have the same name (except of course, the extension on the DPL template). Also, how are you calling your template? --Gri6507 00:37, 7 March 2008 (UTC)
 * my fault it is both Todotest --212.184.19.70 06:32, 7 March 2008 (UTC)
 * i checked the php files for this extension and found a line with magic words... i changed them from "todo" to "todotest". all i got was an error when i reloaded the page...do i have to change more than these words? --212.184.19.70 07:05, 10 March 2008 (UTC)

How to adapt templates for InProgress
Hi, I'm not managing to get the InProgress list working. Especially, I'm not sure, what has to be adapted in InProgress and InProgress.dpl files. Could you please show a full example.

Thanks, Achim

Problem with DPL2 and todo
Hi there, i found a bug(?!)... when a logged in user is inactive for some minutes and then clicks on the tasklist in the top right corner there are some php errors displayed... Notice: Undefined property: Inputbox::$namespace in /opt/lampp/htdocs/helpdesk/extensions/inputbox/inputbox.php on line 177 Notice: Undefined property: Inputbox::$namespace in /opt/lampp/htdocs/helpdesk/extensions/inputbox/inputbox.php on line 177 Notice: Undefined property: Inputbox::$namespace in /opt/lampp/htdocs/helpdesk/extensions/inputbox/inputbox.php on line 178 Notice: Undefined index: class in /opt/lampp/htdocs/helpdesk/extensions/WikiCategoryTagCloud.php on line 57 Notice: Undefined index: linkstyle in /opt/lampp/htdocs/helpdesk/extensions/WikiCategoryTagCloud.php on line 59 Notice: Undefined index: linkclass in /opt/lampp/htdocs/helpdesk/extensions/WikiCategoryTagCloud.php on line 60 this only happens if you are inactive for some minutes... normally the other extensions work properly so there is no reason for this error. i found people having trouble with dpl2 and rss features... ben --212.184.19.70 10:11, 10 March 2008 (UTC)

Displaying WIki Names instead of Full Names?
Almost all references to users in MediaWiki goes by their wikiname and not their full name. It makes it confusing when seeing their full names show up in the task list. Could there be an option for which name to display? What purpose does the Full Name in mediawiki serve anyways?

also, If there is no task, the task list shows: %DPL-1.6.8-WARNING: No results! which is no fun, since I have not only added the InProgress, but also made a Done category, so I'm seeing lots of %DPL-1.6.8-WARNING: No results!

How to mark a task as done
Seems to be a stupid question but i can't figure out how...


 * There are several ways to do this. The simplest of course, is to simply delete the TODO once is it complete. Another way is to create another template called Template:Done and, when a TODO is complete, the user can simply replace the template name from Todo to Done. You can be as creative as you want with this. For example, if you structure the Template:Done to use the TodoTasks extension, then you could even make it so that an email is sent out when a task is completed. The possibilities are only limited by your imagination :-) --Gri6507 14:01, 4 May 2008 (UTC)