Copyright P. Simon Tuffs, 2004. All
Rights Reserved.
CDD Version 0.1.0, PHP Version 5.2.6
CDD: How Well Are You Talking To Your Customers?
by P. Simon Tuffs, Software Architect and Consultant (www.simontuffs.com).
2005-02-02: the recent cosmetic "fread" problems with the CDD project were caused by the upgrade to
PHP at the sourceforge.net site. Thanks to those who pointed them out.
Introduction
As an open-source developer one of the frustrations I face is connecting with my customers.
Thousands of people may download the code, but I only hear from them when there is a problem.
There are two ways that I want to interact with my users:
Let them know when there are new releases
Let them tell me what they want from the software
How hard could this be? Well, as I discovered, there isn't much in the way of simple infrastructure
to automate these seemingly obvious goals. You can get complex and use Bugzilla or one of the
other bug-tracking tools, but what if you want a system that doesn't need a relational database,
and is simple to install and administrate?
So I decided to build one, and CDD (Customer Driven Development) is the result. CDD lets your customers
tell you what's important to them, and lets you tell your customers when its done. Thats it! If you need more,
other CRM tools (such as Bugzilla) are your next step.
Time for a Bootstrap!
Warning: Notice to the administrator of 'cdd.sourceforge.net': Using Simple Encryption, you should enable openssl in your PHP environment
to gain best levels of security for your data.
Error(2048): 'Non-static method Factories::Encryption() should not be called statically' at Encryption() (/home/groups/c/cd/cdd/htdocs/cdd-config.php:33) at include_once() (/home/groups/c/cd/cdd/htdocs/index.php:51) Error(2048): 'Non-static method FlatFileDatabase::Root() should not be called statically' at Root() (/home/groups/c/cd/cdd/htdocs/cdd-config.php:34) at include_once() (/home/groups/c/cd/cdd/htdocs/index.php:51) Error(2048): 'Non-static method Factories::Database() should not be called statically, assuming $this from incompatible context' at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::_STRING() should not be called statically, assuming $this from incompatible context' at createip() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:31) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::TSTRING() should not be called statically, assuming $this from incompatible context' at _STRING() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:43) at createip() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:31) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::_INT() should not be called statically, assuming $this from incompatible context' at createip() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:31) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::TINT() should not be called statically, assuming $this from incompatible context' at _INT() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:44) at createip() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:31) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2): 'fopen(/tmp/persistent/cdd/db//ip.met) [function.fopen]: failed to open stream: No such file or directory' at fopen() (/home/groups/c/cd/cdd/htdocs/php/code/ffdb/ffdb.php.inc:415) at create() (/home/groups/c/cd/cdd/htdocs/php/code/ffdb/ffdb-database.php.inc:75) at create() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:46) at createip() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:31) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(256): 'Cannot create meta file: /tmp/persistent/cdd/db//ip.met' at user_error() (/home/groups/c/cd/cdd/htdocs/php/code/ffdb/ffdb.php.inc:418) at create() (/home/groups/c/cd/cdd/htdocs/php/code/ffdb/ffdb-database.php.inc:75) at create() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:46) at createip() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:31) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Factories::Encryption() should not be called statically, assuming $this from incompatible context' at Emails() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:33) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Factories::Encryption() should not be called statically, assuming $this from incompatible context' at Emails() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:33) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Factories::Database() should not be called statically, assuming $this from incompatible context' at Emails() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:33) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::_STRING() should not be called statically, assuming $this from incompatible context' at Emails() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:33) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::TSTRING() should not be called statically, assuming $this from incompatible context' at _STRING() (/home/groups/c/cd/cdd/htdocs/php/code/dao/emails.php.inc:36) at Emails() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:33) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::_BOOL() should not be called statically, assuming $this from incompatible context' at Emails() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:33) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::TBOOL() should not be called statically, assuming $this from incompatible context' at _BOOL() (/home/groups/c/cd/cdd/htdocs/php/code/dao/emails.php.inc:37) at Emails() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:33) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::_STRING() should not be called statically, assuming $this from incompatible context' at Emails() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:33) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::TSTRING() should not be called statically, assuming $this from incompatible context' at _STRING() (/home/groups/c/cd/cdd/htdocs/php/code/dao/emails.php.inc:38) at Emails() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:33) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::_INT() should not be called statically, assuming $this from incompatible context' at Emails() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:33) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::TINT() should not be called statically, assuming $this from incompatible context' at _INT() (/home/groups/c/cd/cdd/htdocs/php/code/dao/emails.php.inc:39) at Emails() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:33) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::_INT() should not be called statically, assuming $this from incompatible context' at Emails() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:33) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::TINT() should not be called statically, assuming $this from incompatible context' at _INT() (/home/groups/c/cd/cdd/htdocs/php/code/dao/emails.php.inc:40) at Emails() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:33) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::_BOOL() should not be called statically, assuming $this from incompatible context' at Emails() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:33) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::TBOOL() should not be called statically, assuming $this from incompatible context' at _BOOL() (/home/groups/c/cd/cdd/htdocs/php/code/dao/emails.php.inc:41) at Emails() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:33) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2): 'fopen(/tmp/persistent/cdd/db//emails.met) [function.fopen]: failed to open stream: No such file or directory' at fopen() (/home/groups/c/cd/cdd/htdocs/php/code/ffdb/ffdb.php.inc:415) at create() (/home/groups/c/cd/cdd/htdocs/php/code/ffdb/ffdb-database.php.inc:75) at create() (/home/groups/c/cd/cdd/htdocs/php/code/dao/emails.php.inc:43) at Emails() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:33) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(256): 'Cannot create meta file: /tmp/persistent/cdd/db//emails.met' at user_error() (/home/groups/c/cd/cdd/htdocs/php/code/ffdb/ffdb.php.inc:418) at create() (/home/groups/c/cd/cdd/htdocs/php/code/ffdb/ffdb-database.php.inc:75) at create() (/home/groups/c/cd/cdd/htdocs/php/code/dao/emails.php.inc:43) at Emails() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:33) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Factories::Database() should not be called statically, assuming $this from incompatible context' at Features() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:34) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::_AUTOINC() should not be called statically, assuming $this from incompatible context' at Features() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:34) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::TAUTOINC() should not be called statically, assuming $this from incompatible context' at _AUTOINC() (/home/groups/c/cd/cdd/htdocs/php/code/dao/features.php.inc:18) at Features() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:34) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::_INT() should not be called statically, assuming $this from incompatible context' at Features() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:34) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::TINT() should not be called statically, assuming $this from incompatible context' at _INT() (/home/groups/c/cd/cdd/htdocs/php/code/dao/features.php.inc:19) at Features() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:34) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::_STRING() should not be called statically, assuming $this from incompatible context' at Features() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:34) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::TSTRING() should not be called statically, assuming $this from incompatible context' at _STRING() (/home/groups/c/cd/cdd/htdocs/php/code/dao/features.php.inc:20) at Features() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:34) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::_STRING() should not be called statically, assuming $this from incompatible context' at Features() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:34) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::TSTRING() should not be called statically, assuming $this from incompatible context' at _STRING() (/home/groups/c/cd/cdd/htdocs/php/code/dao/features.php.inc:21) at Features() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:34) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::_INT() should not be called statically, assuming $this from incompatible context' at Features() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:34) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::TINT() should not be called statically, assuming $this from incompatible context' at _INT() (/home/groups/c/cd/cdd/htdocs/php/code/dao/features.php.inc:22) at Features() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:34) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::_STRING() should not be called statically, assuming $this from incompatible context' at Features() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:34) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::TSTRING() should not be called statically, assuming $this from incompatible context' at _STRING() (/home/groups/c/cd/cdd/htdocs/php/code/dao/features.php.inc:23) at Features() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:34) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2): 'fopen(/tmp/persistent/cdd/db//features.met) [function.fopen]: failed to open stream: No such file or directory' at fopen() (/home/groups/c/cd/cdd/htdocs/php/code/ffdb/ffdb.php.inc:415) at create() (/home/groups/c/cd/cdd/htdocs/php/code/ffdb/ffdb-database.php.inc:75) at create() (/home/groups/c/cd/cdd/htdocs/php/code/dao/features.php.inc:25) at Features() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:34) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(256): 'Cannot create meta file: /tmp/persistent/cdd/db//features.met' at user_error() (/home/groups/c/cd/cdd/htdocs/php/code/ffdb/ffdb.php.inc:418) at create() (/home/groups/c/cd/cdd/htdocs/php/code/ffdb/ffdb-database.php.inc:75) at create() (/home/groups/c/cd/cdd/htdocs/php/code/dao/features.php.inc:25) at Features() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:34) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Factories::Database() should not be called statically, assuming $this from incompatible context' at PendingVotes() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:35) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::_STRING() should not be called statically, assuming $this from incompatible context' at PendingVotes() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:35) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::TSTRING() should not be called statically, assuming $this from incompatible context' at _STRING() (/home/groups/c/cd/cdd/htdocs/php/code/dao/pending-votes.php.inc:19) at PendingVotes() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:35) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::_ARRAY() should not be called statically, assuming $this from incompatible context' at PendingVotes() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:35) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::TARRAY() should not be called statically, assuming $this from incompatible context' at _ARRAY() (/home/groups/c/cd/cdd/htdocs/php/code/dao/pending-votes.php.inc:20) at PendingVotes() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:35) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::_INT() should not be called statically, assuming $this from incompatible context' at PendingVotes() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:35) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::TINT() should not be called statically, assuming $this from incompatible context' at _INT() (/home/groups/c/cd/cdd/htdocs/php/code/dao/pending-votes.php.inc:21) at PendingVotes() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:35) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2): 'fopen(/tmp/persistent/cdd/db//pending-votes.met) [function.fopen]: failed to open stream: No such file or directory' at fopen() (/home/groups/c/cd/cdd/htdocs/php/code/ffdb/ffdb.php.inc:415) at create() (/home/groups/c/cd/cdd/htdocs/php/code/ffdb/ffdb-database.php.inc:75) at create() (/home/groups/c/cd/cdd/htdocs/php/code/dao/pending-votes.php.inc:23) at PendingVotes() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:35) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(256): 'Cannot create meta file: /tmp/persistent/cdd/db//pending-votes.met' at user_error() (/home/groups/c/cd/cdd/htdocs/php/code/ffdb/ffdb.php.inc:418) at create() (/home/groups/c/cd/cdd/htdocs/php/code/ffdb/ffdb-database.php.inc:75) at create() (/home/groups/c/cd/cdd/htdocs/php/code/dao/pending-votes.php.inc:23) at PendingVotes() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:35) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Factories::Encryption() should not be called statically, assuming $this from incompatible context' at Emails() (/home/groups/c/cd/cdd/htdocs/php/code/mail-manager.php.inc:14) at MailManager() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:36) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Factories::Encryption() should not be called statically, assuming $this from incompatible context' at Emails() (/home/groups/c/cd/cdd/htdocs/php/code/mail-manager.php.inc:14) at MailManager() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:36) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Factories::Database() should not be called statically, assuming $this from incompatible context' at Emails() (/home/groups/c/cd/cdd/htdocs/php/code/mail-manager.php.inc:14) at MailManager() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:36) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::_STRING() should not be called statically, assuming $this from incompatible context' at Emails() (/home/groups/c/cd/cdd/htdocs/php/code/mail-manager.php.inc:14) at MailManager() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:36) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::TSTRING() should not be called statically, assuming $this from incompatible context' at _STRING() (/home/groups/c/cd/cdd/htdocs/php/code/dao/emails.php.inc:36) at Emails() (/home/groups/c/cd/cdd/htdocs/php/code/mail-manager.php.inc:14) at MailManager() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:36) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::_BOOL() should not be called statically, assuming $this from incompatible context' at Emails() (/home/groups/c/cd/cdd/htdocs/php/code/mail-manager.php.inc:14) at MailManager() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:36) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::TBOOL() should not be called statically, assuming $this from incompatible context' at _BOOL() (/home/groups/c/cd/cdd/htdocs/php/code/dao/emails.php.inc:37) at Emails() (/home/groups/c/cd/cdd/htdocs/php/code/mail-manager.php.inc:14) at MailManager() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:36) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::_STRING() should not be called statically, assuming $this from incompatible context' at Emails() (/home/groups/c/cd/cdd/htdocs/php/code/mail-manager.php.inc:14) at MailManager() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:36) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::TSTRING() should not be called statically, assuming $this from incompatible context' at _STRING() (/home/groups/c/cd/cdd/htdocs/php/code/dao/emails.php.inc:38) at Emails() (/home/groups/c/cd/cdd/htdocs/php/code/mail-manager.php.inc:14) at MailManager() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:36) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::_INT() should not be called statically, assuming $this from incompatible context' at Emails() (/home/groups/c/cd/cdd/htdocs/php/code/mail-manager.php.inc:14) at MailManager() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:36) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::TINT() should not be called statically, assuming $this from incompatible context' at _INT() (/home/groups/c/cd/cdd/htdocs/php/code/dao/emails.php.inc:39) at Emails() (/home/groups/c/cd/cdd/htdocs/php/code/mail-manager.php.inc:14) at MailManager() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:36) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::_INT() should not be called statically, assuming $this from incompatible context' at Emails() (/home/groups/c/cd/cdd/htdocs/php/code/mail-manager.php.inc:14) at MailManager() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:36) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::TINT() should not be called statically, assuming $this from incompatible context' at _INT() (/home/groups/c/cd/cdd/htdocs/php/code/dao/emails.php.inc:40) at Emails() (/home/groups/c/cd/cdd/htdocs/php/code/mail-manager.php.inc:14) at MailManager() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:36) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::_BOOL() should not be called statically, assuming $this from incompatible context' at Emails() (/home/groups/c/cd/cdd/htdocs/php/code/mail-manager.php.inc:14) at MailManager() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:36) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::TBOOL() should not be called statically, assuming $this from incompatible context' at _BOOL() (/home/groups/c/cd/cdd/htdocs/php/code/dao/emails.php.inc:41) at Emails() (/home/groups/c/cd/cdd/htdocs/php/code/mail-manager.php.inc:14) at MailManager() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:36) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2): 'fopen(/tmp/persistent/cdd/db//emails.met) [function.fopen]: failed to open stream: No such file or directory' at fopen() (/home/groups/c/cd/cdd/htdocs/php/code/ffdb/ffdb.php.inc:415) at create() (/home/groups/c/cd/cdd/htdocs/php/code/ffdb/ffdb-database.php.inc:75) at create() (/home/groups/c/cd/cdd/htdocs/php/code/dao/emails.php.inc:43) at Emails() (/home/groups/c/cd/cdd/htdocs/php/code/mail-manager.php.inc:14) at MailManager() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:36) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(256): 'Cannot create meta file: /tmp/persistent/cdd/db//emails.met' at user_error() (/home/groups/c/cd/cdd/htdocs/php/code/ffdb/ffdb.php.inc:418) at create() (/home/groups/c/cd/cdd/htdocs/php/code/ffdb/ffdb-database.php.inc:75) at create() (/home/groups/c/cd/cdd/htdocs/php/code/dao/emails.php.inc:43) at Emails() (/home/groups/c/cd/cdd/htdocs/php/code/mail-manager.php.inc:14) at MailManager() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:36) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Factories::Database() should not be called statically, assuming $this from incompatible context' at PendingVotes() (/home/groups/c/cd/cdd/htdocs/php/code/mail-manager.php.inc:15) at MailManager() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:36) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::_STRING() should not be called statically, assuming $this from incompatible context' at PendingVotes() (/home/groups/c/cd/cdd/htdocs/php/code/mail-manager.php.inc:15) at MailManager() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:36) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::TSTRING() should not be called statically, assuming $this from incompatible context' at _STRING() (/home/groups/c/cd/cdd/htdocs/php/code/dao/pending-votes.php.inc:19) at PendingVotes() (/home/groups/c/cd/cdd/htdocs/php/code/mail-manager.php.inc:15) at MailManager() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:36) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::_ARRAY() should not be called statically, assuming $this from incompatible context' at PendingVotes() (/home/groups/c/cd/cdd/htdocs/php/code/mail-manager.php.inc:15) at MailManager() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:36) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::TARRAY() should not be called statically, assuming $this from incompatible context' at _ARRAY() (/home/groups/c/cd/cdd/htdocs/php/code/dao/pending-votes.php.inc:20) at PendingVotes() (/home/groups/c/cd/cdd/htdocs/php/code/mail-manager.php.inc:15) at MailManager() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:36) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::_INT() should not be called statically, assuming $this from incompatible context' at PendingVotes() (/home/groups/c/cd/cdd/htdocs/php/code/mail-manager.php.inc:15) at MailManager() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:36) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::TINT() should not be called statically, assuming $this from incompatible context' at _INT() (/home/groups/c/cd/cdd/htdocs/php/code/dao/pending-votes.php.inc:21) at PendingVotes() (/home/groups/c/cd/cdd/htdocs/php/code/mail-manager.php.inc:15) at MailManager() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:36) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2): 'fopen(/tmp/persistent/cdd/db//pending-votes.met) [function.fopen]: failed to open stream: No such file or directory' at fopen() (/home/groups/c/cd/cdd/htdocs/php/code/ffdb/ffdb.php.inc:415) at create() (/home/groups/c/cd/cdd/htdocs/php/code/ffdb/ffdb-database.php.inc:75) at create() (/home/groups/c/cd/cdd/htdocs/php/code/dao/pending-votes.php.inc:23) at PendingVotes() (/home/groups/c/cd/cdd/htdocs/php/code/mail-manager.php.inc:15) at MailManager() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:36) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(256): 'Cannot create meta file: /tmp/persistent/cdd/db//pending-votes.met' at user_error() (/home/groups/c/cd/cdd/htdocs/php/code/ffdb/ffdb.php.inc:418) at create() (/home/groups/c/cd/cdd/htdocs/php/code/ffdb/ffdb-database.php.inc:75) at create() (/home/groups/c/cd/cdd/htdocs/php/code/dao/pending-votes.php.inc:23) at PendingVotes() (/home/groups/c/cd/cdd/htdocs/php/code/mail-manager.php.inc:15) at MailManager() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:36) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Factories::Database() should not be called statically, assuming $this from incompatible context' at CompletedFeatures() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:37) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::_INT() should not be called statically, assuming $this from incompatible context' at CompletedFeatures() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:37) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::TINT() should not be called statically, assuming $this from incompatible context' at _INT() (/home/groups/c/cd/cdd/htdocs/php/code/dao/completed-features.php.inc:19) at CompletedFeatures() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:37) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::_INT() should not be called statically, assuming $this from incompatible context' at CompletedFeatures() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:37) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::TINT() should not be called statically, assuming $this from incompatible context' at _INT() (/home/groups/c/cd/cdd/htdocs/php/code/dao/completed-features.php.inc:20) at CompletedFeatures() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:37) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::_STRING() should not be called statically, assuming $this from incompatible context' at CompletedFeatures() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:37) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2048): 'Non-static method Database::TSTRING() should not be called statically, assuming $this from incompatible context' at _STRING() (/home/groups/c/cd/cdd/htdocs/php/code/dao/completed-features.php.inc:21) at CompletedFeatures() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:37) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(2): 'fopen(/tmp/persistent/cdd/db//completed-features.met) [function.fopen]: failed to open stream: No such file or directory' at fopen() (/home/groups/c/cd/cdd/htdocs/php/code/ffdb/ffdb.php.inc:415) at create() (/home/groups/c/cd/cdd/htdocs/php/code/ffdb/ffdb-database.php.inc:75) at create() (/home/groups/c/cd/cdd/htdocs/php/code/dao/completed-features.php.inc:23) at CompletedFeatures() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:37) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(256): 'Cannot create meta file: /tmp/persistent/cdd/db//completed-features.met' at user_error() (/home/groups/c/cd/cdd/htdocs/php/code/ffdb/ffdb.php.inc:418) at create() (/home/groups/c/cd/cdd/htdocs/php/code/ffdb/ffdb-database.php.inc:75) at create() (/home/groups/c/cd/cdd/htdocs/php/code/dao/completed-features.php.inc:23) at CompletedFeatures() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:37) at VoteManager() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:24) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(256): 'Database not open.' at user_error() (/home/groups/c/cd/cdd/htdocs/php/code/ffdb/ffdb.php.inc:1859) at size() (/home/groups/c/cd/cdd/htdocs/php/code/ffdb/ffdb-database.php.inc:96) at get() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:58) at ismarked() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:113) at render() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:138) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54) Error(256): 'Database not open.' at user_error() (/home/groups/c/cd/cdd/htdocs/php/code/ffdb/ffdb.php.inc:1706) at getall() (/home/groups/c/cd/cdd/htdocs/php/code/ffdb/ffdb-database.php.inc:103) at sortby() (/home/groups/c/cd/cdd/htdocs/php/code/dao/features.php.inc:55) at sort() (/home/groups/c/cd/cdd/htdocs/php/code/vote-manager.php.inc:143) at render() (/home/groups/c/cd/cdd/htdocs/php/code/controller.php.inc:138) at include() (/home/groups/c/cd/cdd/htdocs/index.php:54)
Please vote for up to 3 features and/or make a suggestion Results
This is the CDD feedback for the CDD project itself.
Don't panic about the encryption warning: see below for what that's all about.
You can make a suggestion and/or vote on other suggestions. All CDD requires is that you provide your
email address. It will validate that address by sending you a confirmation email. Once you confirm
it, your suggestions and votes will be counted.
You can vote once per day. For the CDD project, I will work on the features
which have most votes, and when a new release goes out you will be notified by email.
Encryption
Your email address is stored in encrypted form on this system, and cannot be used by others to bother you with
spam. I will be switching to 2048 RSA public key encryption shortly (as soon as I can get SourceForge to enable
openssl), but for now a simple (secret key) encryption technique is being used. But it's not that simple: here's my email address as stored in the database:
DQEiLCUEKCYuCy0PKQcnPDYEJSYFKywgDzUkOj4hNwUlLTsxDic0IzN8aW4FZ2NCdQxrPGc4CGtgPwJzAQABDQZ2OWRncCg7MmNoZj4kCSQ+Ijw2IAkhOzQnDywpBjkqNgUjPg=
Even I can't decrypt that into a valid address without access to the secret key!
Please note that CDD is still early-release software (Version 0.1.0), and any data you enter here may
be deleted.
Release Management
CDD provides a built in release-manager to let you manage features and communicate with your
users. A live demo of the CDD release-manager available here.
The username and passwords are 'admin'.
Summary
That's all there is to CDD. It's a sort of table-wiki-emailer, but its simplicity is its power. Beyond
managing open-source projects it could be used for:
Selecting a location for the company picnic
Choosing the name for a product
Guessing the outcome of an election
etc...
Please make some suggestions for what you'd like this software
to do, and I can take it from there.
If you like CDD then you might want to check out some of the other Open-Source projects developed by
simontuffs.com: