Javascript

jQuery

With the refactoring we have integrated  jQuery and it is automatically included in every page. Please try try to use it whenever possible, and instead of reinventing the wheel please consider using a  plugin. Please follow the conventions and save plugins to www/include/js/plugins. See the  official documentation which includes tutorials and an API reference.

Validation

Please consider using  JSLint as it usually pinpoints to the common pitfalls.

Documentation

We are using  JSDoc for generating documentation, please see the  official tag reference. If you have added a new file, include it in www/include/js/Makeconf.

PHP

Strict

Set your error_reporting to E_ALL | E_STRICT either via  error_reporting or in your php.ini file.

PEAR

 PEAR is a framework and distribution system for reusable PHP components

Please do not forget to update the InstallationGuide with the PEAR package requirements.

Smarty

As described in #412 we have  Smarty integrated in the system. We strongly encourage you to use Smarty templates whenever possible to seperate programming logic and display. For more information see the ticket.

Coding Style

Please follow the  PEAR Coding Standards.

Documentation

We are using  phpdoc for documentation of PHP code. Please write good documentaiton so everyone can understand your code.

XHTML

Validation

Please  validate your XHTML code.  This FireFox extension might be helpful too.

Cross-browser compatibility

Since, this is a research project, we are focusing only on  FireFox at the moment. However, please use jQuery and all the validation techniques that are mentioned in this page.

XSLT

See this blog post ( http://kwarc.info/blog/2008/11/26/documenting-xslt/) and an example ( https://trac.kwarc.info/krextor/export/556/trunk/doc/xsltdoc/extract/util/rdfa.xsl.xd.html) for details on how to document XSLT.