Forked from
ISPConfig / ISPConfig 3
2698 commits behind the upstream repository.
After you've reviewed these contribution guidelines, you'll be all set to
contribute to this project.
CONTRIBUTING.md 4.20 KiB
Which code branch to use
The master branch is used for code (mostly new features) that shall go into the next major release (e.g. 3.2, 3.3 and so on). The stable branch (e.g. stable-3.1, stable-3.2) is the branch for the current intermediate and bugfix releases. Bugfixes shall be committed to the current stable branch and not the master branch. The stable branch is merged to the master automatically from time to time, please do not submit bugfixes a second time against the master.
Some guidelines for web development with php.
- Unix Line Breaks Only, NO windows breaks please.
- Tabs to indent lines, NO spaces
- no accidental _<?php space before, within or after a file
- every PHP file starts and end with no spaces before or after
- error_reporting(E_ALL|E_STRICT), yep PHP 5
- Magic quotes is gone, get used to it now. config = magic_quotes_gpc() Everything must be quoted
- Don't use ereg, split and other old function -> gone in PHP 5.4
- Don't use features that are not supported in PHP 5.3, for compatibility with LTS OS releases, ISPConfig must support PHP 5.3+
- Don't use shorttags. A Shorttag is <? and that is confusing with <?xml -> always use <?php
- Don't use namespaces
- Column names in database tables and database table names are in lowercase
- Classes for the interface are located in interface/lib/classes/ and loaded with $app->uses() or $app->load() functions.
- Classes for the server are located in server/lib/classes/ and loaded with $app->uses() or $app->load() functions.
- please mark any section that need review or work on with /* TODO: short description */
- Make function / var names on the following way, first word lower, next word(s) first letter upper like. getFirstResult();
- always a space but NO newline before opening braces, e. g.
class abc {
public function cde() {
if($a == $b) {
return false;
}
}
}
- no spaces after function/method or control names, e. g.
function abc($x, $y) {
if($condition == true) {
$x = 2;
}
}
and NOT
function abc ($x, $y) {
if ( $condition == true ) {
}
}