<commit_before>== Jobsworth Project Management
{<img src="https://travis-ci.org/ari/jobsworth.png?branch=dev" alt="Build Status" />}[https://travis-ci.org/ari/jobsworth]
{<img src="https://codeclimate.com/github/ari/jobsworth.png" />}[https://codeclimate.com/github/ari/jobsworth]

Welcome to the jobsworth project management, support ticketing and CRM system. This software is licensed under the AGPLv3.

Jobsworth can be used for helpdesk support ticketing, customer liasion, resource management (eg. systems and password tracking) and has a range of CRM type functionality. Plan your projects, see your schedule, know if you're slipping behind and why. Time Tracking and extensive reports help you show your clients exactly what you've done and for how long.

==== Features
* no restrictions or limits
* interactive gantt chart & scheduling
* flexible reporting
* tracks and indexes all changes
* notifications via email, rss & ical
* ldap integration
* accounting/billing system integration
* custom attributes
* inbound and outbound email integration
* sophisticated access control
* services (SLA)
* resources
* much much more

Further project details can be seen at {Ohloh}[https://www.ohloh.net/p/jobsworth].

=== Support

The primary support is through the {mailing list}[http://groups.google.com/group/jobsworth] or if you have a bug report, {create an issue}[https://github.com/ari/jobsworth/issues] in the tracker. If you want to write up details of a new feature you'd like to see, please use the {wiki}[https://github.com/ari/jobsworth/wiki].


=== Contributing

Code contributions are welcome to this project and the best way to go about it is to fork the git repository:

  https://github.com/ari/jobsworth

Please read the DEVELOPMENT.md file in this directory for more information. Join the {developer mailing list}[https://groups.google.com/forum/#!forum/jobsworth-dev] to discuss ideas or ask questions.


== Installing jobsworth on your server

=== Step 1: Prerequsites

You will need a database and can choose between mysql and postgresql. You will also need Java 7 and some sort of servlet container like Apache Tomcat. How to install and setup your database is beyond the scope of this document. Grab the latest openjdk or Oracle JVM and install that on your system.


=== Step 2: Database

Create a new database and user with full permissions to that database.


=== Step 3: Servlet container

Install Apache Tomcat and make sure you can get to the default installation home page. How to install Tomcat or some other servlet container is beyond the scope of these instructions but the basic details can be found in the {documentation}[http://tomcat.apache.org/tomcat-7.0-doc/]. Don't be afraid of all those XML configuration files in Tomcat; mostly they can be left to default values.

There is one file you will need to edit and that is context.xml. This file defines all the configuration for your application. Copy the {example}[https://github.com/ari/jobsworth/blob/master/config/context.example.xml] into the tomcat configuration folder and set all the variables to reasonable choices for your system. 


=== Step 4: Set up email receiving

When jobsworth sends outgoing emails for task updates, they will have a reply address which looks like this:

  <EMAIL>

If a user hits reply to that email, you want it to go back and be appended to the task comments. Here's how to set this up for sendmail; adapt the script for your own mail server.

==== Sendmail

Add an entry to /etc/mail/local-host-names for your hostname:

  acme.domain.com.au

Add an entry to /etc/mail/aliases to create an alias that will hand off emails to a script

  jobsworth: "|/usr/local/share/jobsworth/mail_script.sh"

Add an entry to /etc/mail/virtusertable to redirect all emails to your domain to the above alias

  @domain.com        jobsworth

run "make; make restart" in /etc/mail

Now create a script at /usr/local/share/jobsworth/mail_script.sh with the following contents

    #!/bin/sh
    SECRET=password1234
    URL=https://acme.domain.com.au/emails
    cat $2 | /usr/local/bin/curl -s -k --data-urlencode secret=${SECRET} --data-urlencode email@- ${URL}

Make sure you change the password and you make it the same as the password in the context.xml file.



=== Step 5: Installating the application

After all that setup we can now install the software. Just take the file ROOT.war from the github release and copy it into the webapps folder inside tomcat.



== Resources

[Project page]             http://github.com/ari/jobsworth

[Mailing list]             http://groups.google.com/group/jobsworth
<commit_msg>Update README.rdoc<commit_after>== Jobsworth Project Management
{<img src="https://travis-ci.org/ari/jobsworth.png?branch=dev" alt="Build Status" />}[https://travis-ci.org/ari/jobsworth]
{<img src="https://codeclimate.com/github/ari/jobsworth.png" />}[https://codeclimate.com/github/ari/jobsworth]

Welcome to the jobsworth project management, support ticketing and CRM system. This software is licensed under the AGPLv3.

Jobsworth can be used for helpdesk support ticketing, customer liasion, resource management (eg. systems and password tracking) and has a range of CRM type functionality. Plan your projects, see your schedule, know if you're slipping behind and why. Time Tracking and extensive reports help you show your clients exactly what you've done and for how long.

==== Features
* no restrictions or limits
* interactive gantt chart & scheduling
* flexible reporting
* tracks and indexes all changes
* notifications via email, rss & ical
* ldap integration
* accounting/billing system integration
* custom attributes
* inbound and outbound email integration
* sophisticated access control
* services (SLA)
* resources
* much much more

Further project details can be seen at {Ohloh}[https://www.ohloh.net/p/jobsworth].

=== Support

The primary support is through the {mailing list}[http://groups.google.com/group/jobsworth] or if you have a bug report, {create an issue}[https://github.com/ari/jobsworth/issues] in the tracker. If you want to write up details of a new feature you'd like to see, please use the {wiki}[https://github.com/ari/jobsworth/wiki].


=== Contributing

Code contributions are welcome to this project and the best way to go about it is to fork the git repository:

  https://github.com/ari/jobsworth

Please read the DEVELOPMENT.md file in this directory for more information. Join the {developer mailing list}[https://groups.google.com/forum/#!forum/jobsworth-dev] to discuss ideas or ask questions.


== Installing jobsworth on your server

=== Step 1: Prerequsites

You will need a database and can choose between mysql and postgresql. You will also need Java 7 and some sort of servlet container like Apache Tomcat. How to install and setup your database is beyond the scope of this document. Grab the latest openjdk or Oracle JVM and install that on your system.


=== Step 2: Database

Create a new database and user with full permissions to that database.


=== Step 3: Servlet container

Install Apache Tomcat and make sure you can get to the default installation home page. How to install Tomcat or some other servlet container is beyond the scope of these instructions but the basic details can be found in the {documentation}[http://tomcat.apache.org/tomcat-7.0-doc/]. Don't be afraid of all those XML configuration files in Tomcat; mostly they can be left to default values.

There is one file you will need to edit and that is context.xml. This file defines all the configuration for your application. Copy the {example}[https://github.com/ari/jobsworth/blob/master/config/context.example.xml] into the tomcat configuration folder and set all the variables to reasonable choices for your system. 


=== Step 4: Set up email receiving

When jobsworth sends outgoing emails for task updates, they will have a reply address which looks like this:

  <EMAIL>

If a user hits reply to that email, you want it to go back and be appended to the task comments. Here's how to set this up for sendmail; adapt the script for your own mail server.

==== Sendmail

Add an entry to /etc/mail/local-host-names for your hostname:

  acme.domain.com.au

Add an entry to /etc/mail/aliases to create an alias that will hand off emails to a script

  jobsworth: "|/usr/local/share/jobsworth/mail_script.sh"

Add an entry to /etc/mail/virtusertable to redirect all emails to your domain to the above alias

  @domain.com        jobsworth

run "make; make restart" in /etc/mail

Now create a script at /usr/local/share/jobsworth/mail_script.sh with the following contents

    #!/bin/sh
    SECRET=<PASSWORD>
    URL=https://acme.domain.com.au/emails
    cat $2 | /usr/local/bin/curl -s -k --data-urlencode secret=${SECRET} --data-urlencode email@- ${URL}

Make sure you change the password and you make it the same as the password in the context.xml file.



=== Step 5: Installating the application

After all that setup we can now install the software. Just take the file ROOT.war from the {github release}[https://github.com/ari/jobsworth/releases] and copy it into the webapps folder inside tomcat.



== Resources

[Project page]             http://github.com/ari/jobsworth

[Mailing list]             http://groups.google.com/group/jobsworth

{'fraction_non_alphanumeric': 0.0779639175257732, 'fraction_numerical': 0.002577319587628866, 'mean_word_length': 4.086291643910432, 'pattern_counts': {'":': 0, '<': 10, '<?xml version=': 0, '>': 10, 'https://': 23, 'lorem ipsum': 0, 'www.': 2, 'xml': 6}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3565209', 'n_tokens_mistral': 2604, 'n_tokens_neox': 2464, 'n_words': 1203}