Reordering the task lists and the projects

Let's add a way to reorder the actual Task LISTS, not just the individual tasks underneath each list.

To do this, we should add "order" variables in the database for the lists and the projects. Right now we have ordering variables only for the tasks. The IDs of the lists and the projects are hardcoded across several different tables, and this makes it nervewracking to go in and start changing things directly in MySQL.

This functionality would make ProjectPier more in line with other PM apps. If we really wanted to get fancy, we could also add reordering to the Projects that appear on the Dashboard.

I agree..

There are a lot of problems in core architecture of PP.

Pier needs a little developer help, but each of the developers make a living doing something else and so graciously donate time to this project. I'm very pleased with what they implemented. Let me give you some examples:

- About 2 years ago when I looked at this project, it wasn't even worth my time. Now it's relatively bug-free and can work.

- One of its biggest problems was that the themes were lousy. But that's changed and, as well, I'm about to contribute a new theme that is very Basecamp-ish that should make a lot of people's days once I figure out the right way to get it accepted by the community and implemented.

- Have you looked under the hood at the code? It uses an extremely well-designed, custom MVC framework and I was surprised to see that. Most F/OSS projects still don't do that unfortunately and you end up with spaghetti code where PHP is mixed with XHTML is mixed with SQL statements. Thank you, Pier developers!

- Last night I ran a few security tests because Pier will be up on one of my critical servers and I don't need hackers. I tried to see if I could do remote execution of code with the tool. I tried everything in the book and the thing was impenetrable. Many F/OSS projects this young don't have that kind of security control, so I was surprised and pleased to see this. Thank you, Pier developers!

- People should leave their requests here for features, or offer to say they've got code that can do that already and share, not use this forum group as an area to knock the framework because it's unproductive. Not giving credit to the hard work of these developers only discourages them, not encourages them. There's no problem I think for non-developers to come here and ask for a feature, but to knock the dev team and say "problems with core architecture" is a bit dramatic, especially if you were to get under the hood and appreciate the code.

I just wanted to comment and say that I would very much like to see this feature added.

I'd like to add to that original comment. I'd like to see:

Implement jQuery UI Sortables, along with jQuery AJAX, and tie this to a column in the database that lets people sort projects, task lists, and tasks through drag and drop.

For me, the biggest thing to start with would be the ability to use jQuery UI Sortables for just the tasks inside a given task list. If we can do that, then it's only a short stretch to move to the task lists as well as the projects.

Here's my attempt at it.

http://www.projectpier.org/node/1788

BTW, I based it on volomike's "How To Add Text Area Resizer" post here - http://www.projectpier.org/node/1700.

I think that being able to reorder Tasks, Task Lists and Projects via drag and drop (using jqueryui) would be fantastic. Has there been any further work on this? I'm considering having a crack at this myself, but would rather not duplicate work that has been done by others (but not yet published here in the forum).

[Edit:] Actually, having slept on it, I think I would leave Projects as they are (ie, not add reordering/reprioritizing via drag/drop to Projects); I've realized I'm not sure it is all that necessary, and it introduces several dilemmas because not everyone will have access to the same set of projects. Reordering Tasks and Tasks Lists should be fine though because I believe (correct me if I'm wrong) that if a user has access to a Task or Task List that means they have access to that Project, and thus any sorting will be pretty straight forward (ie, there's no possibility of some users having access to some Task Lists in a Project, but not other Task Lists). I still would love to hear if anyone else has any current code (ie, for 0.8.6) for all this, beyond what is here: http://www.projectpier.org/node/1788 :-)

Thanks,
Sean