netOffice is a free web based project-management environment written in php/mySQL. netOffice allows managing and sharing information about teams, projects, tasks, deadlines and much more. It's intuitive interface makes it a fast and optimal solution for medium size companies.
Note Fred: testé avec succès, comprend notamment un agenda, un gantt etc. http://sourceforge.net/projects/netoffice/; je l'utilise depuis plusieurs années et il m'est indispensable
Avantages: léger et simple, on peut si on est bidouiller facilement le modifier pour ses besoins
Le projet a migré, voir http://netofficedwins.sourceforge.net/ ou qpdm
netoffice-2.6.0b2.tar.bz2 Platform-Independent 858.6 KiB Sat Jun 11 2005 10:54
pour sauvegarder incrémentalement votre base netoffice et ses documents sur un serveur distant
chmod 666 includes/settings.php chmod 777 -R files chmod 777 -R logos_clients
radeff@radeff:~/netoffice$ more readmeRadeff.txt Modifications amenées à netoffice fradeff@akademia.ch
new files readmeRadeff.txt ./reports/hoursToday.php
répertoire /backups /pmdoc
script backups.sh
modified files themes/deepblue/header.php
projet d'intégration avec le mail lu par php / imap (intranet) (espace protégé)
todo système d'archivage netoffice vider les tasks finies datant de plus de N jours; supprimer les fichiers idem
les fichiers de plus de 10 jours et de moins de 20
find files/ -mtime +10 -a -mtime -20 -ls
Manque un plan… une fois qu'on a l'id pour un task, on peut retouver celui-ci dans différentes tables:
SELECT * FROM `pm_projects` WHERE `status` = 1 AND ( TO_DAYS( NOW( ) ) - TO_DAYS( modified ) >=40)
SELECT * FROM `pm_tasks` WHERE `status` = 1 AND ( TO_DAYS( NOW( ) ) - TO_DAYS( modified ) >=100)
pour l'archivage, deux approches:
- backup incrémental de toute la base et nettoyage (le plus simple)
- copie de la base sur une autre base d'archive, déplacement des items
status:
1 Complet 2 Non commencé 3 Ouvert 4 Suspendu
CREATE TABLE IF NOT EXISTS `pm_projects` ( `id` mediumint(8) unsigned NOT NULL auto_increment, `organization` mediumint(8) unsigned NOT NULL default '0', `owner` mediumint(8) unsigned NOT NULL default '0', `priority` mediumint(8) unsigned NOT NULL default '0', `status` mediumint(8) unsigned NOT NULL default '0', `name` varchar(155) default NULL, `description` text, `url_dev` varchar(255) default NULL, `url_prod` varchar(255) default NULL, `created` varchar(16) default NULL, `modified` varchar(16) default NULL, `published` char(1) NOT NULL default '', `upload_max` varchar(155) default NULL, `phase_set` mediumint(8) unsigned NOT NULL default '0', `type` char(1) NOT NULL default '0', PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=51 ;
status
1 Complet 2 Non commencé 3 Ouvert 4 Suspendu
CREATE TABLE IF NOT EXISTS `pm_tasks` ( `id` mediumint(8) unsigned NOT NULL auto_increment, `project` mediumint(8) unsigned NOT NULL default '0', `priority` mediumint(8) unsigned NOT NULL default '0', `status` mediumint(8) unsigned NOT NULL default '0', `owner` mediumint(8) unsigned NOT NULL default '0', `assigned_to` mediumint(8) unsigned NOT NULL default '0', `name` varchar(155) default NULL, `description` text, `start_date` varchar(10) default NULL, `due_date` varchar(10) default NULL, `estimated_time` varchar(10) default NULL, `actual_time` varchar(10) default NULL, `comments` text, `completion` mediumint(8) unsigned NOT NULL default '0', `created` varchar(16) default NULL, `modified` varchar(16) default NULL, `assigned` varchar(16) default NULL, `published` char(1) NOT NULL default '', `parent_phase` int(10) unsigned NOT NULL default '0', `complete_date` varchar(10) default NULL, `service` mediumint(8) unsigned NOT NULL default '0', `milestone` char(1) NOT NULL default '', PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=749 ;
CREATE TABLE IF NOT EXISTS `pm_tasks_time` ( `id` mediumint(8) unsigned NOT NULL auto_increment, `project` mediumint(8) unsigned NOT NULL default '0', `task` mediumint(8) unsigned NOT NULL default '0', `owner` mediumint(8) unsigned NOT NULL default '0', `date` varchar(16) default NULL, `hours` float(10,2) NOT NULL default '0.00', `comments` text, `created` varchar(16) default NULL, `modified` varchar(16) default NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1679 ;
CREATE TABLE IF NOT EXISTS `pm_assignments` ( `id` mediumint(8) unsigned NOT NULL auto_increment, `task` mediumint(8) unsigned NOT NULL default '0', `owner` mediumint(8) unsigned NOT NULL default '0', `assigned_to` mediumint(8) unsigned NOT NULL default '0', `comments` text, `assigned` varchar(16) default NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=761 ;
CREATE TABLE IF NOT EXISTS `pm_updates` ( `id` mediumint(8) unsigned NOT NULL auto_increment, `type` char(1) NOT NULL default '', `item` mediumint(8) unsigned NOT NULL default '0', `member` mediumint(8) unsigned NOT NULL default '0', `comments` text, `created` varchar(16) default NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1249 ;
CREATE TABLE IF NOT EXISTS `pm_files` ( `id` mediumint(8) unsigned NOT NULL auto_increment, `owner` mediumint(8) unsigned NOT NULL default '0', `project` mediumint(8) unsigned NOT NULL default '0', `task` mediumint(8) unsigned NOT NULL default '0', `name` varchar(255) default NULL, `date` varchar(16) default NULL, `size` varchar(155) default NULL, `extension` varchar(155) default NULL, `comments` varchar(255) default NULL, `comments_approval` varchar(255) default NULL, `approver` mediumint(8) unsigned NOT NULL default '0', `date_approval` varchar(16) default NULL, `upload` varchar(16) default NULL, `published` char(1) NOT NULL default '', `status` mediumint(8) unsigned NOT NULL default '0', `vc_status` varchar(255) NOT NULL default '0', `vc_version` varchar(255) NOT NULL default '0.0', `vc_parent` int(10) unsigned NOT NULL default '0', `phase` mediumint(8) unsigned NOT NULL default '0', PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=327 ;