FATMAN is a punch clock or attendance recorder for FreeAgentCentral. With it, you can clock your hours into tasks as you go, instead of having to fill in timesheets at the end of the day or week.
To get started, fill in your FreeAgent company name and click Login. For example, if your FreeAgent URL is bobsbakery.freeagentcentral.com, just fill in 'bobsbakery'. You will then be prompted for your FreeAgent login and password for that company, which will be used to authenticate to the FreeAgent API. Once logged in, you should see your contacts, projects and tasks automatically!
Don't forget to turn on API access! You need to turn it on in your FreeAgent Settings, under API and Feeds. If you don't, you won't be able to log in.
FATMAN is written in PHP and is BSD-licensed. It stores data in local state files per user and per company. These state files contain start times, contact, project and task data.
When not clocked in, it will query the FreeAgent API for your contacts, projects, tasks and recent timeslips. With this data, it presents an interface with which you can select recent tasks you've clocked in to, your contacts list, projects list and task list. It also allows for creation of new projects and tasks, and of course allows you to clock in to a task at a given time, or right now. When you do clock in, the state file is generated and stored on the webserver.
When clocked in, it will read the state file and give you the option to cancel this clock in, clock out at a given time or clock out right now. When you clock out, the time between clock in and clock out is computed and submitted to FreeAgent through the API as a timeslip for the active task. Optionally you can configure FATMAN so that the start and end times are stored in the comment field for a timeslip.
At the time of writing, the only way to authenticate to the FreeAgent API is by using your FreeAgent username and password. FATMAN therefore ask you for your FreeAgent company and credentials, and uses these to communicate securely with the API over HTTPS.
FATMAN can be used in two ways:
When using HTTP Basic Authentication, FATMAN should be used over HTTPS. If you use it over HTTP, your FreeAgent credentials are still submitted in plaintext over the internet, and if you are on a Wifi network, even over the air (hopefully your wifi is secure!). This might or might not be a problem for you, but you should at least be aware of it.
FATMAN keeps its settings in config.inc.php. The following settings can be configured:
This project is hosted on github at http://github.com/infernix/FATMAN. You can submit issues there, twitter me (infernix) or drop me an email at infernix@infernix.net. I'd love to hear from you if you're using it!