PDA

View Full Version : subfolders on dotproject


rkneal
16-01-06, 10:14 PM
in the files section, it would be nice to have subfolder to allow to better organize a project. We were using netoffice, and would like to switch to dotproject. We just paid for subfolders to be programmed within netoffice, and would like to put them into dotproject also.

Before doing so, is there any enhancements in the future that have already planned for this feature?

Thanks
Bob

srylul
18-01-06, 04:14 PM
I have started to look at this a time ago, but its on spare time...
My first plan was to integrate a php tree function. However, it would have been far from the function stucture implemented in dp. My simple solution is to use a part of the structure in Tasks and group files in subtasks.
No fancy, but its acceptable if the amount of files isnt to large.
dp-crew: any plans for extending the built-in function set? The treemenu function would be nice sometimes.

cyberhorse
18-01-06, 11:46 PM
plans - yes, scheduled in for a future release - not at this time.

rkneal
19-01-06, 03:10 PM
We implemented on netoffice and it works great. Can add subfolders, then go into them and add files to them.

If we move to dp, like plan to do, we will incorporate into dp. One thing would like to do though is instead of embedding the files, subfolders within netoffice, i'd like for it to just dynamically read the directory of the projectID and just populate the files section. This way, we can move anything we want around on the file system and it automatically is shown on the project. It's a lot easier to use Winscp, sftp or such to send files (multiple ones) to directories, move them around, than it ever will be to download a file at a time.

What would be even better is to be able to search the contents of each file (metadata).

Bob

jessiej
03-02-06, 12:06 AM
Allowing the user to group or sort the display by task would be a good compromise if subfolders is too difficult.

Also, being able to email a link to the document or file is important to me. You can do that now by sending the link (...fileviewer.php?file_id=6), but you get "fatal error" if the user is not logged in. It should give you a login box with a message that says "log in to view this file" error.

srylul
03-02-06, 04:15 AM
i'm working, but...
a snapshot of current status.
http://www.srylul.com/snapshots/dp_folders.jpg
it's functional with some bugs. one bug, or possible feature: if you select wrong company, the standard fileview shows up.
emailing the link with a message is a good idea. is it at checkin? to a dp user?
another candy: approval after checkin! any job done, someone?

Ferdinand
06-10-06, 08:48 PM
There are for this pieces of news? ;)
This feature ist very valuable for me.

c4361025
18-10-06, 04:43 PM
Hi, would it be possible to get this test version. I would like to try it - as I really would need it urgently to clean up the big mess in my file section. (****, ya that would be great)
thx xenon

rkneal
19-10-06, 02:09 PM
Sorry everyone, we scrapped both netoffice, and dot project and now use sharepoint. Just could not seem to get much support on the first two. If anyone interested, i can send the php code that we put in netoffice to do subfolders, works pretty decent, few bugs.

if you have windows 2003, WSS 3.0 comes intergrated into it at no cost. Only if go to sharepoint portal (now called MOSS 2007) will have to pay.

You just can't beat the folder/file/document management of sharepoint with dp or netoffice, sorry. netoffice served our needs for 3 years, but even though it was open source, sure spent a lot of time having to work around simple things :(

Bob

pedroa
19-10-06, 07:28 PM
What about this?

http://www.pedroa.com/folders.png

Pedro A.

glynnsmith
20-10-06, 03:19 AM
Pedro,

That would be very helpful for me. Have you committed it to CVS or can I get it via another method?

Thanks!
Glynn

pedroa
20-10-06, 06:46 PM
No, it is not on CVS.
TheIdeaMan had this old version for dP1 that I modified to dP2 and added a bunch of features to it like file duplication, bulk change project, bulk change folder, icons and actions...
It was done against stable_2, so I need admins authorization regarding adding this to CVS. Since we don't yet have a plan regarding what will go on the next stable release, keep your fingers crossed and hope for a positive answer.
If it is not accepted, then maybe I'll release it on dotmods.

Pedro A.

Karen
23-10-06, 09:35 AM
Pedro - whilst we normally don't even attempt to add new features to stable2 it looks like this has a bit of history behind it - if you think it's stable then go ahead.

Karen C

caseydk
23-10-06, 10:54 AM
Sharepoint is great if all your people use IE and MS Office exclusively. My biggest customer used it for a couple years but finally had to ditch it since although the CxO's were on Windows, the devs were on Linux and the designers were on OSX.

c4361025
30-10-06, 05:37 PM
Hi Pedro,

this looks like the solution to all my problems. I've got massiv usability issues with my collagues because of the not included tree structure in the file module.
When do you plan to release that hyperfantastic module to the public? Where can i download it?
thx
harald:-D

pedroa
30-10-06, 09:15 PM
Guess what... I just read Karens message 2 days ago, I am amazed how it pass my radar :)
And am thrilled I got auth to go ahead.
Expect it to be up in the next couple of weeks, I got other stuff to do ATM and so I just can't get to it right away.

Thanks Karen.

Pedro A.

mathieuahaweb
21-11-06, 02:00 AM
I'm really looking forward to use this... any updates? :)

pedroa
24-11-06, 03:39 AM
Now it looks like...

http://www.pedroa.com/folders2.png

It is under final testing before commiting to CVS... it is pending some positive feedback.

Pedro A.

oniTony
24-11-06, 04:20 AM
well you know my opinion on the Vista Inspirate icon set, but it looks good otherwise :)

pedroa
24-11-06, 05:25 AM
In fact I used a mix of iconsets but primarly nuoveXT, and I am not storing the icon on any field.
I used this code instead:

function getIcon($file_type) {
global $dPconfig;
$result = '';
$mime = str_replace('/','-',$file_type);
$icon = 'gnome-mime-'.$mime;
if (is_file($dPconfig['root_dir'].'/modules/files/images/icons/'.$icon.'.png')) {
$result = "icons/$icon.png";
} else {
$mime = split("/", $file_type);
switch($mime[0]){
case "audio" :
$result = "icons/wav.png";
break;
case "image" :
$result = "icons/image.png";
break;
case "text" :
$result = "icons/text.png";
break;
case "video" :
$result = "icons/video.png";
break;
}
if ($mime[0] == "application"){
switch($mime[1]){
case "vnd.ms-excel" :
$result = "icons/spreadsheet.png";
break;
case "vnd.ms-powerpoint" :
$result = "icons/quicktime.png";
break;
case "octet-stream" :
$result = "icons/source_c.png";
break;
default :
$result = "icons/documents.png";
}
}
}

if ($result == ''){
switch($obj->$file_category){
default : // no idea what's going on
$result = "icons/unknown.png";
}
}
return $result;
}


So if you like tango you just need to adapt your code to it.

Pedro A.

Javelar
28-11-06, 03:06 AM
My contribution to your new (great looking) module:
-I really would like to see a Document number field apart from the Description field. It is very useful and common;
-I suggest you can hide many of the file's details under a collapsable panel, in the way of the revision panel (DHTML?);
-Please remember bulk downloads, too;
-And I don't find that Document Type field useful to the end users, too;
-Custom fields in Files Module would allow great freedom to Ad-ons. Documents are a BIG part of a project (If I'm allowed platitudes...) and deserve better care in dp;

Congratulations for your work!

Braza
07-12-06, 04:26 AM
Hi everybody,

I think this sub folders feature is a must!

Hey Pedroa...

What about adding a "synchronize with local folder" feature?... Is it a hard mission? It would be very helpful with team work CAD applications...

Great job man!

Cheers,

Braza

pedroa
27-01-07, 05:52 AM
Let me tell you all a secret...
Folder support is already on stable_2, so stay tuned on the next release.

About "synchronizing" that would be a bit hard, but at least bulk uploading wouldn't unless we are talking monster sizes here (but that would be more of a server issue rather than a programming issue).

Anyway got more important things to do and no time to do it and no one sponsoring it.... conclusion: it is hard :)
So.... here is what you get with what you gave (or someone else really)....

Pedro A.

caseydk
28-01-07, 03:40 AM
What about adding a "synchronize with local folder" feature?... Is it a hard mission? It would be very helpful with team work CAD applications...

For "synchronization", please do it the smart and easy way and get yourself a version control system. CVS and Subversion (SVN) are both freely available and *built* for stuff like this... and SVN is the better of the two.

Yes, merging/diffing binary files can be anything from difficult to worthless but it will allow you to sync quickly and easily. More than anything, in most environments, icon overlays are attached to the files to show which you have changed.

jordis
29-01-07, 03:16 AM
Folder support is already on stable_2, so stay tuned on the next release.
I updated to the new stable_2 tarball and I realised support for folders was added, so I decided to check it out...

As specified in /db/dotproject.db, a new table has to be created:
# 20070126
#
# Table structure for table `file_folders`
#

DROP TABLE IF EXISTS `file_folders`;
CREATE TABLE `file_folders` (
`file_folder_id` int(11) NOT NULL auto_increment,
`file_folder_parent` int(11) NOT NULL default '0',
`file_folder_name` varchar(255) NOT NULL default '',
`file_folder_description` text,
PRIMARY KEY (`file_folder_id`)
) TYPE=MyISAM;
I ran this query and it created the appropriate table successfully.

However, I'm getting this error whenever I go to the "Files" tab for a project:
ERROR: H:\xampp-mysql4\htdocs\dotproject\includes\db_adodb.php(61) : Error executing:

SELECT count(files.file_id) FROM ( `files` ) LEFT JOIN `projects` AS p ON p.project_id = file_project LEFT JOIN `users` AS u ON u.user_id = file_owner LEFT JOIN `tasks` AS t ON t.task_id = file_task LEFT JOIN `file_folders` AS ff ON ff.file_folder_id = file_folder WHERE file_folder = 0 AND file_project = 29


Backtrace:
0 H:\xampp-mysql4\htdocs\dotproject\includes\db_adodb.php:61 dprint('H:\\xampp-mysql4\\htdocs\\dotproject\\includes\\db_adodb.php ',61,0,'Error executing:

SELECT count(files.file_id) FROM ( `files` ) LEFT JOIN `projects` AS p ON p.project_id = file_project LEFT JOIN `users` AS u ON u.user_id = file_owner LEFT JOIN `tasks` AS t ON t.task_id = file_task LEFT JOIN `file_folders` AS ff ON ff.file_folder_id = file_folder WHERE file_folder = 0 AND file_project = 29

')
1 H:\xampp-mysql4\htdocs\dotproject\includes\db_connect.php:4 6 db_exec('SELECT count(files.file_id) FROM ( `files` ) LEFT JOIN `projects` AS p ON p.project_id = file_project LEFT JOIN `users` AS u ON u.user_id = file_owner LEFT JOIN `tasks` AS t ON t.task_id = file_task LEFT JOIN `file_folders` AS ff ON ff.file_folder_id = file_folder WHERE file_folder = 0 AND file_project = 29')
2 H:\xampp-mysql4\htdocs\dotproject\modules\files\folders_tab le.php:398 db_loadresult('SELECT count(files.file_id) FROM ( `files` ) LEFT JOIN `projects` AS p ON p.project_id = file_project LEFT JOIN `users` AS u ON u.user_id = file_owner LEFT JOIN `tasks` AS t ON t.task_id = file_task LEFT JOIN `file_folders` AS ff ON ff.file_folder_id = file_folder WHERE file_folder = 0 AND file_project = 29')
3 H:\xampp-mysql4\htdocs\dotproject\modules\files\folders_tab le.php:766 countfiles(0)
4 H:\xampp-mysql4\htdocs\dotproject\modules\files\projects_ta b.files.php:22 require('H:\\xampp-mysql4\\htdocs\\dotproject\\modules\\files\\folder s_table.php')
5 H:\xampp-mysql4\htdocs\dotproject\style\default\overrides.p hp:83 require('H:\\xampp-mysql4\\htdocs\\dotproject\\modules\\files\\projec ts_tab.files.php')
6 H:\xampp-mysql4\htdocs\dotproject\modules\projects\view.php :433 show()
7 H:\xampp-mysql4\htdocs\dotproject\index.php:311 require('H:\\xampp-mysql4\\htdocs\\dotproject\\modules\\projects\\vie w.php')
Unknown column 'file_folder' in 'where clause'

I'm not using the files functionality at the moment, but I just wanted to let you know about this...

pedroa
29-01-07, 11:19 AM
You forgot the db/upgrade_latest.sql:

# 20070126
ALTER TABLE `files` ADD `file_folder` INT(11) DEFAULT '0' NOT NULL;


Cheers,

Pedro A.

jordis
29-01-07, 12:49 PM
Thanks! that resolved the error that appeared the Files tab of a project.
However, when I click the "Files" link in dP navigation menu, I get the following:
ERROR: H:\xampp-mysql4\htdocs\dotproject\classes\query.class.php(6 50): query failed(SELECT file_id, file_version, file_version_id, file_project, file_name, file_task, task_name, file_description, file_checkout, file_co_reason, u.user_username as file_owner, file_size, file_category, file_type, file_date, cu.user_username as co_user, project_name, project_color_identifier, project_active, project_owner, contact_first_name, contact_last_name,ff.* FROM ( `files` ) LEFT JOIN `users` AS cu ON cu.user_id = file_checkout LEFT JOIN `users` AS u ON u.user_id = file_owner LEFT JOIN `contacts` AS con ON con.contact_id = u.user_contact LEFT JOIN `file_folders` AS ff ON ff.file_folder_id = file_folder LEFT JOIN `projects` AS pr ON pr.project_id = file_project LEFT JOIN `companies` AS co ON co.company_id = project_company LEFT JOIN `tasks` AS ta ON ta.task_id = file_task) - error was: Unknown column 'project_active' in 'field list'
Backtrace:
0 H:\xampp-mysql4\htdocs\dotproject\classes\query.class.php:6 50 dprint('H:\\xampp-mysql4\\htdocs\\dotproject\\classes\\query.class.p hp',650,0,'query failed(SELECT file_id, file_version, file_version_id, file_project, file_name, file_task, task_name, file_description, file_checkout, file_co_reason, u.user_username as file_owner, file_size, file_category, file_type, file_date, cu.user_username as co_user, project_name, project_color_identifier, project_active, project_owner, contact_first_name, contact_last_name,ff.* FROM ( `files` ) LEFT JOIN `users` AS cu ON cu.user_id = file_checkout LEFT JOIN `users` AS u ON u.user_id = file_owner LEFT JOIN `contacts` AS con ON con.contact_id = u.user_contact LEFT JOIN `file_folders` AS ff ON ff.file_folder_id = file_folder LEFT JOIN `projects` AS pr ON pr.project_id = file_project LEFT JOIN `companies` AS co ON co.company_id = project_company LEFT JOIN `tasks` AS ta ON ta.task_id = file_task) - error was: Unknown column \'project_active\' in \'field list\'')
1 H:\xampp-mysql4\htdocs\dotproject\classes\query.class.php:6 95 exec(2)
2 H:\xampp-mysql4\htdocs\dotproject\modules\files\index_table .php:135 loadhashlist('file_id')
3 H:\xampp-mysql4\htdocs\dotproject\style\dp-grey-theme\overrides.php:83 require('H:\\xampp-mysql4\\htdocs\\dotproject\\modules\\files\\index_ table.php')
4 H:\xampp-mysql4\htdocs\dotproject\modules\files\index.php:1 00 show()
5 H:\xampp-mysql4\htdocs\dotproject\index.php:311 require('H:\\xampp-mysql4\\htdocs\\dotproject\\modules\\files\\index. php')
Unknown column 'project_active' in 'field list'
Wasn't project_active column deprecated?
Should it be changed to project_status or completely left out?

pedroa
29-01-07, 12:54 PM
Yeah it was, but dunno if it is going to come back in.... decisions... decisions...

In the meantime this one is resolved on cvs, file is modules/files/index_table.php

Thanks for reporting,

Pedro A.

jordis
30-01-07, 11:10 PM
In the meantime this one is resolved on cvs, file is modules/files/index_table.php
Fix confirmed in latest stable_2! Thanks!

ejrr
06-02-07, 10:55 PM
Hi, where can i download this magnific module?

Thanks

mathieuahaweb
07-02-07, 06:42 PM
Hi, where can i download this magnific module?


From the stable_2 branch of the CVS, see the DotProjectWiki (http://docs.dotproject.net/index.php/DotProject_CVS)

ejrr
09-02-07, 03:12 AM
From the stable_2 branch of the CVS, see the DotProjectWiki (http://docs.dotproject.net/index.php/DotProject_CVS)


CVS and me is like a cat and a dog ...
i'm sorry, i didnīt know how cvs works ....

can you download module files for me and put here as zip file?

Many thanks in advance ...

ejrr

Karen
09-02-07, 09:13 AM
Please don't anybody incorporate a zip file here - we're already chewing up disk space on this site.

CVS snapshot locations are listed on:

http://docs.dotproject.net/index.php/Download

ejrr
09-02-07, 09:38 AM
Karen ...

million tks ....

Is working now .....

:)

Pou3T
14-11-08, 03:38 AM
Hello,

This is my first message.
I'm trying to create subfolders on dotproject, but i don't understand how. I don't know nothing about CSV. Can someone help-me.

Thank you very much.

Pou3T

Karen
14-11-08, 08:39 AM
When you post a message here it will help you get an answer if you tell us what version of dotProject you are using (at the very least).

Pou3T
14-11-08, 05:12 PM
Hi,

I'm currently using dotProject 2.1.2.

Thk u