egroupware_official/phpgwapi/doc/etiquette.txt
2003-12-05 13:29:03 +00:00

71 lines
3.6 KiB
Plaintext

This is a preliminary etiquette doc for eGroupWare. Please check it from time to
time for updates:
phpGroupWare is a large project, with possibly over 50 developers at the time
of this writing. In its current location, it is impossible to restrict access
for each developer to a particular module or application. As such, it is
important that some basic rules be followed when developing in CVS:
1. Many of the developers frequent the IRC channel #egroupware on
irc.freenode.net. Please take the time to drop by and introduce yourself.
2. Please see the coding_standard.txt document in this folder for some basic
guidelines for code formatting. PHP can be interpreted in many forms,
and this document outlines our preference to ensure readability and
compatibility.
3. If you want to begin some work on an existing app please consult the
primary developer for the application first. Most of the files will
contain some type of identification and/or contact information in the
head of each file.
4. If you are unable to contact the author, please contact at least one of the
project leads [ ralf, lars, reinerj ] or a core developer.
5. If you have just joined the project, or have always kept to your own
application, etc., then please exercise caution when committing changes
in the phpgwapi [the API], admin, and preferences modules. These can
affect the operation of all applications. In particular, work done in
the API is typically allowed only with prior consent from one of the
project leads. In other words, work done here without some notification
and authorization is very risky to your continued involvement with this
project ;)
6. If you are working in the API, or on some other application which could
affect the usability for users and developers, please be sure to fully
test your changes. It is recommended that you visit a large sampling of
applications to ensure that they still work as expected after your
changes. This could include the functioning of one application or the
API against mysql AND pgsql, at least. It could also affect the function
of an application that uses LDAP instead of SQL for storage and
retrieval.
7. Do not write table update scripts that alter content or structure of the
API or of another application's tables.
8. Before importing a new application, or adding many files | directories to
existing modules, please contact one of the project leads [ ralf, lars,
reinerj ].
9. Please do not import a new application that does not have some basic
functionality in place or at least a description and basic documentation.
10. If you do not have an original icon for your app, please do not import a
copy from another application icon. The API should insert a default
until a new one is created. The size of icons should be 31x31 for all but
the idsociety template. Do not put a 31x31 color icon in the idsociety
template.
11. Basically, all template files are located in the app_name/templates/default/
directory. Please do only commit template files to other app_name/templates/
_layout_/directories if they _differ_ from the default version. The same is
valid for images. All application images are located in the app_name/templates/
default/images directory. Please do only commit images to other than the default
directory if they _differ_ from the default version. Most of the applications
do not need other templates directories than default and idsociety. The idsociety
templates directory should only contain the images dir with the navbar and
navbar_over icon for the idsociety layout.
Please avoid to have files twice in your application directory.
Thanks