Chapter 5. Contributing to OTRS

Table of Contents

Sending Contributions
Translating OTRS
Updating an existing translation
Adding a new frontend translation
Translating the Documentation
Code Style Guide
Perl
Formatting
Using the Perl language
Writing good documentation
Database interaction
JavaScript
Browser Handling
Directory Structure
Variables
Functions
Namespaces
Code Comments
Event Handling
HTML
CSS
Architecture
Style
User Interface Design
Capitalization
Accessibility Guide
Accessibility Basics
What is Accessibility?
Why is it important for OTRS?
How can I successfully work on accessibility issues even if I am not disabled?
Ok, but I don't have a screen reader!
Accessibility Standards
Web Content Accessibility Guidelines (WCAG)
Accessible Rich Internet Applications (WAI-ARIA) 1.0
Implementation guidelines
Provide alternatives for non-text content
Make navigation easy
Make interaction possible
General screen reader optimizations
Unit Tests
Creating a test file
Prerequisites for testing
Testing
Unit Test API

Abstract

This chapter will show how you can contribute to the OTRS framework, so that other users will be able to benefit from your work.

Sending Contributions

The source code of OTRS and additional public modules can be found on github. From there you can get to the listing of all available repositories. It also describes the currently active branches and where contributions should go to (stable vs. development branches).

It is highly recommended that you use the OTRS code quality checker OTRSCodePolicy as described in the development environment chapter even before sending in your contributions. If your code does not validate against this tool, it will likely not be accepted.

The easiest way to send your contributions to the OTRS developer's team is by creating a "pull request" in github. Please take a look at the instructions on github, specifically about forking a repository and sending pull requests.

The basic workflow would look like this:

  • Register at github, if you have no account yet.

  • Fork the repository you want to contribute to, and checkout the branch that the changes should go in.

  • Create a new development branch for your fix/feature/contribution, based on the current branch.

  • After you finished your changes and committed them, push your branch to github.

  • Create a pull request. The OTRS dev team will be notified about this, check your pull request and either merge it or give you some feedback about possible improvements.

It might sound complicated, but once you have this workflow set up you'll see that making contributions is extremely easy.