Difference between revisions of "Project Management"

From WHMCS Documentation

(Installation & Setup)
(Change Log)
 
(20 intermediate revisions by 4 users not shown)
Line 1: Line 1:
==Introduction==
+
== About this Addon Module ==
  
The Official Project Management addon for WHMCS is a tool designed to help you organise jobs & tasks, allowing you to tie Support Tickets & Invoices with To-Do Items to create Projects. The aim is to connect everything together via a single interface, avoiding unecessary & time consuming duplication to third party systems, and allowing staff to privately communicate and track internal discussions, share files, and track (as well as optionally bill) for time spent on individual tasks.
+
The '''Project Management''' addon can help you organise jobs and tasks by linking support tickets and invoices with to-do items to create projects. You can then work with these in a single interface and track internal discussions, share files, and track (and optionally bill for) time spent on individual tasks.
  
To find out more, please visit [https://www.whmcs.com/project-management/ www.whmcs.com/project-management]
+
You can access the add-on at '''Addons > Project Management'''.
  
__TOC__
+
For more information, see the [https://www.whmcs.com/project-management/ WHMCS Project Management] website.
  
==Installation & Setup==
+
<table class="table" style="text-align:center;margin:1em 1em 1em 0;background:#F9F9F9;border:1px #AAA solid;border-collapse:collapse;width:100%;">
 +
<tr>
 +
<th style="border:1px #AAA solid;padding:0.2em;background:#F2F2F2;text-align:center;">Addon Name</th>
 +
<th style="border:1px #AAA solid;padding:0.2em;background:#F2F2F2;text-align:center;">Latest Release</th>
 +
<th style="border:1px #AAA solid;padding:0.2em;background:#F2F2F2;text-align:center;">Current Version</th>
 +
<th style="border:1px #AAA solid;padding:0.2em;background:#F2F2F2;text-align:center;">Compatible With</th>
 +
<th style="border:1px #AAA solid;padding:0.2em;background:#F2F2F2;text-align:center;">Included in WHMCS</th>
 +
</tr>
 +
<tr>
 +
<td style="border:1px #AAA solid;padding:0.2em;">Project Management</td>
 +
<td style="border:1px #AAA solid;padding:0.2em;">N/A</td>
 +
<td style="border:1px #AAA solid;padding:0.2em;">N/A</td>
 +
<td style="border:1px #AAA solid;padding:0.2em;">N/A</td>
 +
<td style="border:1px #AAA solid;padding:0.2em;color:darkgreen;">Yes</td>
 +
</tr>
 +
</table>
  
The Project Management Add-on is supplied with WHMCS by default.
+
== Activating Project Management ==
  
To activate the addon, navigate to '''Configuration (<i class="fa fa-wrench" aria-hidden="true"></i>) > System Settings > Addon Modules''' or, prior to WHMCS 8.0, '''Setup > Addon Modules''' and hit the ''Activate'' button.
+
Because this addon ships with WHMCS by default, you do not need to download files before you activate the addon through the [[Admin Area]].
 +
 +
To do this:
  
<div class="docs-alert-info">You will need to purchase the Project Management add-on for your WHMCS license if you have not already done so. [http://www.whmcs.com/addons/project-management/ Learn more]</div>
+
# If you have not already, [http://www.whmcs.com/addons/project-management/ purchase the addon].
 +
# Go to '''Configuration (<i class="fa fa-wrench" aria-hidden="true"></i>) > System Settings > [[Addon Modules]]''' or, prior to WHMCS 8.0, '''Setup > Addon Modules'''.
 +
# Click '''Activate''' for '''Project Management'''.
 +
# Click '''Configure'''.
 +
# Select the [[Administrator Roles|admin role groups]] who will have access to this addon.
 +
# Select the [[Administrator Users|admin users]] who can configure Project Management settings within the addon.
 +
# Click '''Save Changes'''. 
  
Following activation of the module, assign yourself permissions to access it and then you can navigate to the add-on by going to Addons > Project Management.
+
== Project Management ==
  
===Settings===
+
The '''Project Management Overview''' lists all of your projects by default, in ascending order of due date. The list includes the title, assigned staff member, status, creation date, due date, number of days left or overdue, and the last updated date for the project.
  
*'''Access Control''' - These checkboxes allow you to define which role groups you want to allow to access and use the project management system
+
From this page you can also review the most recent 10 [[System Logs|activity log]] entries and search for projects.
*'''Master Admin Users''' - This series of checkboxes is where you define who you want to be able to access and configure the Project Management Addon settings within the module itself - this includes settings such as project statuses and access permissions
 
  
==Upgrading==
+
=== Projects Tab ===
  
To apply a manual update to the Project Management Addon, download the update from our website, unzip the files and upload them to the root WHMCS directory - the files are provided within the appropriate sub-directories to ensure correct upload.
+
This tab displays a list of projects. You can search by project title or associated ticket numbers. If there is only one match for your entered search term, the system will direct you to the project view for that project.
  
Upon your first visit to the Project Management Addon within your WHMCS admin area the new update will be detected and any required database updates will be automatically applied.
+
You can apply several filters to the list of projects:
  
==Getting Started==
+
*'''Incomplete''' — View all incomplete projects.
 +
*'''My Incomplete''' — View your assigned incomplete projects.
 +
*'''View All''' — View all complete and incomplete projects.
 +
*'''Assigned To Me''' — View all projects assigned to you, including completed ones
 +
*'''Due Within 7 Days''' — View all projects that are overdue or are due within one week.
 +
*'''Closed''' — View only completed projects.
  
To access the Project Management addon, simply navigate to '''Addons > Project Management'''
+
==== Accessing Projects via Tickets ====
  
You will then be presented with the Project Management Overview.  This page lists all projects by default, in ascending order of due date, so those due first will appear at the top, listing the title, staff member the project is assigned to, status, creation & due dates, number of days left or overdue, and the last updated date for the project.
+
When you view a ticket that is associated with a project, the project's title, due date, and status will display within the support ticket itself.
  
From this page you can also review the most recent 10 activity log entries displayed to the right of the page, and search for projects which we'll look at in more detail later on.
+
==== Accessing Projects via Clients ====
  
Everything within the Project Management system starts out with a project.  Tasks, Tickets, Invoices, Attachments & Messages, all must belong to a project.  So let's get started with creating a project...
+
In a client's profile's '''[[Clients:Summary Tab|Summary]]''' tab, you can click '''View Projects''' under '''Other Actions''' to go to the project list at '''Addons > Project Management''' with the list already filtered by client.
  
===Creating Your First Project===
+
=== Tasks Tab ===
  
#Click the '''Create New Project''' button (found at the top left of every Project Management Page)
+
This tab lists tasks for all of your projects and includes the filters that you can also use in the '''[[#Projects_Tab|Projects]]''' tab.
#A dialog window will then slide into view, where you will find fields for entering the title of the project, the creation date, due date, staff assignee (if any) and associated ticket number (again optional)
 
#Once you are done, click '''Create'''
 
#You will now be taken to the Project overview screen, and congratulations, you just created your first project!
 
  
You can also create a project directly from within a support ticket, using the "Create New Project" button that will appear at the top of the ticket if no projects are currently assigned to it.
+
=== Reports Tab ===
  
==The Project Management Screen==
+
This tab lists reports on your projects, time, and invoice amounts. You can filter them by [[Date_Range_Picker|date range]] and by admin.
  
This is the main page where you'll spend most of your time - the project management screen - the page that let's you view everything relating to your project.  There's no tabs or pages here, everything is on a single page, at your finger tips, right where you need it.
+
== Projects ==
 +
 
 +
Everything in the Project Management addon, including tasks, tickets, invoices, attachments, and messages, requires a project.
  
 
[[File:Projectmanagementview.png|800px]]
 
[[File:Projectmanagementview.png|800px]]
  
At the very top we have the project title, click the pencil edit icon to change the project title. Next to it are the '''Project Command buttons'''; Start Timer, Add Comment, Upload File, Send Email and Watching buttons. Use the green [[#Tracking_Time|Start Timer]] button when you start working on a project, whilst the ''Add Comment'' button records a private staff-only note. ''Upload File'' and ''Send Email'' allow you to perform those two actions respectively. Switch the ''Watching'' button to the On position to receive email notifications of changes to the project, switch it to Off to stop receiving these emails.  
+
When you access a project, all of the project's information will display in a single interface page.
  
Next we have the '''Info Bar'''. This contains all the project details - the creation date, staff member it's assigned to, associated client, due date, total time worked and status. Probably the most important statistic is ''due date'';  when it's Green there are 1 or more days to go until it's due, but the days left turn Red when there's only 1 day left, or it is overdue.
+
At the top of the page, you can click the pencil icon to edit the project title and details.
  
Below that are the '''Project Tabs''', giving you access to Tasks, Messages, Time Tracking, Tickets, Billing/Invoices, Files and the Project Log.
+
* This includes the creation and due dates, the assigned admin, the associated client, and the project's status.
 +
* Click '''Save''' to save your changes.
 +
* You can search for the associated client using [[Intelligent Search]].
  
The Project Log provides a full history of each and every action carried out on that project, the date/time it was done, and the admin user who performed it.
+
Use the buttons next to the project title to perform additional actions:
  
===Editing Projects===
+
* Start tracking time when you work on a project ('''[[#Tracking_Time|Start Timer]]''') or stop tracking ('''End Timer''').
 +
* Add a private staff-only note ('''Add Comment''').
 +
* Upload a file to the project ('''Upload File''').
 +
* Send an email using a template under the '''General Messages''' [[Email Templates|email template]] type ('''Send Email''').
 +
* Enable or disable email notifications about the project (toggle '''Watching''' to '''On''' or '''Off''').
  
To edit projects, providing you have the required permissions, you'll see an Edit button located towards the top right of the screen.  Upon clicking that, the previous display values will be transformed into input fields allowing you to update and make changes, and the edit button will be replaced with Save and Cancel buttons that you can use to save your changes, or abort.  If saving, a success message will appear briefly to confirm success.
+
<div class="docs-alert-info">
 +
The system will also send email notifications to admins who are assigned to the project or task.
 +
</div>
  
The Associated Client field features an intelligent search feature, so you can search for a client to assign to by entering any part of their name, company or email address, and simply select the desired result from the list of matches that get displayed.
+
The top of the page also displays basic information about the project, including the creation date, a color-coded due date, the assigned admin, the client, the status, and the date of the last update to the project.
  
===Changing Status===
+
=== Creating Your First Project ===
  
To change the status of a project, simply change the dropdown value located to the right of the info bar at any time.  Selection changes for this are automatically saved, so there's no save or submit required.  A success message will appear briefly to confirm success.
+
To create a project:
  
===Project Tasks===
+
# Click '''+ New Project''' in the top right corner.
 +
# Enter the title of the project, associated ticket number, assigned admin, associated client, the creation date, and the due date.
 +
# Click '''Create'''.
  
Tasks can be created using the "New Task" input field. Simply enter the task and press Enter key, or click the Add button to create it.  Upon pressing enter, the task will be added and the input field reset to empty to allow you to quickly and easily add multiple tasks in one go.
+
You can also create a project directly from within a support ticket by clicking the '''Create New Project''' tab. This option only appears in tickets if the ticket is not already associated with a project.
Once a task is completed it can be marked '''complete''' by ticking the checkbox next to the task name.
 
  
====Tracking Time====
+
=== Tasks ===
  
To track the time spent on tasks, staff members click the green ''Track Time'' button on the project page when they start working on it. This creates a time log entry with their username, and the start time.  The button will then change to an orange ''End Timer'' button, click this button when finished working on the project.
+
To add a new task to a project:
  
This time entry can then be assigned to a task via the '''Time Tracking''' tab. Click the ''Edit'' pencil icon and select the relevant task from the modal which appears.
+
# Enter the task name in '''Add new task'''.
 +
# Select an admin to assign to the new task.
 +
# Set the desired due date.
 +
# Click '''Add Task'''.
  
The total time is calculated on a per task basis, and for the project as a whole (total project time is displayed on the Info Bar).
+
To mark a task as complete, click the checkmark icon on the left of the list.
  
====Editing Tasks====
+
To edit a task, click the pencil icon, make the desired changes, and click '''Save'''.
  
If you have permissions, you can also edit tasks, which allows you to edit both the task title, and any time logged entries recorded for it, allowing to edit both the staff member and the start or end times for the task.
+
To delete a task, click the trashcan icon. You can also click the pencil icon and then click '''Delete'''.
  
===Task Templates===
+
=== Messages ===
Task Templates are a predefined list of tasks that can be added to a project via the push of a button. This feature offers the ability to store a list of commonly used tasks as a single template so that they can be added to additional projects on an as needed basis.
 
  
When viewing a Project, the Task Templates menu can be found on the right-hand side of the page. There you will see two buttons: Save Task List, and Import Tasks.
+
The '''Messages''' tab allows you to add notes and other messages that all admins can see when they view the project. Clients cannot view these messages.
  
====Save Task List====
+
To add a message, enter it in the text box and click '''Post Reply'''. You can also browse for and attach files.
This option allows you to save all of the tasks associated with the current Project into a single task list. Upon clicking the button, a modal will appear with a prompt to enter a name for the new task list, and clicking Save will see the new list created.
 
  
====Import Tasks====
+
=== Time Tracking ===
This option allows you to import tasks from an existing Task List. Upon clicking the button, a modal will appear with a search field that allows you to search for a list via the Project ID, Title, or Task Template Name. After locating the task list you can then select which tasks you would like to import, and click on the Import button to add them to the current project.
 
  
====Manage Tasks====
+
You can start the timer to track the time spent on tasks by clicking '''Start Timer'''.  
Task Templates can be managed via the Settings > Task Templates section of the Project Management Addon. There you are able to review any existing templates, and delete them if required.
 
  
===Associated Tickets===
+
* This creates a timer entry in the '''Time Tracking''' tab. It includes the admin and the start time.
 +
* Click '''End Timer''' to end the timer.
  
Assocating tickets to a project is simply a case of entering the Ticket Number into the input field and clicking Add. WHMCS will verify that the ticket number is valid, and that it isn't already assigned to the project, and if so will associate it to it.
+
To assign the timer record entry to a specific task:
  
A single ticket can be assigned to multiple projects, and a single project can have multiple tickets assigned to it.
+
# Go to the '''Time Tracking''' tab.
 +
# Click the ''Edit'' pencil icon.
 +
# Select the relevant task from the menu.
 +
# Optionally, adjust the admin user, start time, and end time.
 +
# Click '''Save'''.
  
'''Note:''' If a project is not yet associated to a client, then if a ticket belonging to a registered client is assigned, that client will automatically be associated with the project as well.
+
The system then calculates the total time for each task and for the project as a whole.
  
===Associated Invoices===
+
=== Tickets ===
  
Invoices associated with projects allow you to view their status from within the project itself.
+
To associate [[Support Tickets|support tickets]] with a project:
  
Invoices do not have to be assigned manually, they are automatically detected in one of 3 ways:
+
# Go to the '''Tickets''' tab.
 +
# Click '''Associate Ticket'''.
 +
# Optionally, search for the desired ticket number or keywords from the ticket name.
 +
# Select tickets by checking '''Select''' for each desired ticket.
 +
# Click '''Save'''.
  
#By containing a line item which includes the phrase "Ticket #xxxxxx" followed by any ticket number associated with the invoice as above
+
A single ticket can be assigned to multiple projects, and a single project can have multiple tickets assigned to it. If a project does not have an associated client and you assign a client's ticket to that project, that client will automatically be associated with the project too.
#By containing a line item which includes the phrase "Project #XXX" followed by the Project ID number being viewed
 
#Or by having been generated directly from the Project view itself, using either the '''Quick Invoice''' or '''Bill for Task Time Entries''' feature
 
  
Therefore to de-associate an invoice from a project the line item description would need to have the ticket or project reference it contains removed.
+
You can create a new ticket to associate with the project by clicking '''Open New Ticket'''.
  
===Staff Messageboard===
+
=== Billing ===
  
The staff messageboard is a way for staff members to communicate between each other in a centralised system that all staff can access and see.  Each message posted includes a date/time stamp, and can if needed include file attachments also.  It works in much the same way as the ticket system, except this is for private staff communication only and is not visible to clients.
+
Associating invoices with projects allows you to view their status from within the project itself.
  
===Attachments===
+
The system will automatically associate invoices using the following methods:
 +
 
 +
* Invoices with a line item including <tt>Ticket #xxxxxx</tt> followed by any associated ticket number.
 +
* Invoices with a line item including <tt>Project #XXX</tt> followed by the ID number for the project.
 +
* Invoices that you generated from within the project using either the '''Quick Invoice''' or '''Bill for Task Time Entries''' features.
 +
 
 +
To de-associate an invoice from a project, you must update or remove the line item description to remove the ticket or project reference.
 +
 
 +
=== Files ===
  
 
The attachments section allows you to upload files to the project without posting a message.
 
The attachments section allows you to upload files to the project without posting a message.
Line 132: Line 181:
 
All attachments, both uploaded here and as attachments in messages posted on the staff messageboard, are stored under the attachments directory, in a folder structure of /projects/xxx/ where xxx is the Project ID number, so projects can be easily accessed by FTP if needed, and cleaned up.
 
All attachments, both uploaded here and as attachments in messages posted on the staff messageboard, are stored under the attachments directory, in a folder structure of /projects/xxx/ where xxx is the Project ID number, so projects can be easily accessed by FTP if needed, and cleaned up.
  
==Searching For & Locating Projects==
+
=== Log ===
 +
 
 +
The '''Log''' tab lists a full history of each action in that project, the date and time, and the associated admin.
 +
 
 +
=== Task Templates ===
  
Accessible on the main navigation bar from every page within the Project Management Addon is the filter shortcuts. These allow you to filter the projects list in the following ways:
+
Task Templates are predefined lists of tasks to add to a project.  
  
*'''Incomplete''' - View all incomplete projects
+
* You can save and import task templates from within individual projects.
*'''My Incomplete''' - View the incomplete projects that are just assigned to you
+
* You can view a list of task templates and delete them by going to '''Settings > Task Templates''' in the top-right corner of any '''Project Management''' page.
*'''View All''' - View all projects, including completed ones
 
*'''Assigned To Me''' - View all projects assigned to you, including completed ones
 
*'''Due Within 7 Days''' - View all projects due within the week (or overdue)
 
*'''Closed''' - View just the completed projects
 
  
There is also a search field located at the top right of the project management nav bar on every page.  This allows you to search by Project Title, or Associated Ticket Numbers.
+
==== Save Task List ====
  
If only 1 match is found for the search term entered you will be taken straight into the project view for the matching item, otherwise you will be displayed a list of results to choose from.
+
To save all of the tasks in the current project as a new task template:
  
There are 2 more ways of accessing projects, from tickets and clients.
+
# Click '''Save Task List'''.
 +
# Enter a name for the new task list.
 +
# Click '''Save'''.
  
#When viewing '''any tickets associated''' with a project, you will automatically be displayed the associated projects information within the support ticket itself, showing the title, due date and status of the project(s) relating to it
+
You can now replicate this task list in this or other projects.
#And also from the '''client summary page''', a new link will appear under the "Other Actions" menu, labelled "View Projects" allowing you to jump to the projects listing overview, filtered for all projects belonging to just that client.
 
  
==Homepage Widget==
+
==== Import Tasks ====
  
The addon also includes a homepage widget, which you can activate for your admin role group in the normal way in '''Setup > Administrator Roles'''.  The widget allows you to see an overview of projects, including title, due date, days left & status, as well as recent activity, with just your assigned projects displayed by default.
+
To import tasks from an existing task template:
  
==Reports==
+
# Click '''Import Tasks'''.
 +
# Select the desired task template from the menu or enter text to search for a template and select it.
 +
# Click '''Import'''.
  
The Reports menu item found in the top right menu bar allows you to access the reports for the project management system. The reports available currently allow you to review projects, time, and amounts invoiced, with options to filter by date range, and per staff member for analysis of work performed.
+
This will import a new copy of all of the task template's tasks into your project.
  
==Settings==
+
== Settings ==
  
The settings area is where the Project Management specific options can be configured, as well as the internal access permissions for Project Management related actions.
+
You can configure several '''Project Management''' settings as well as configuring permissions for related actions. To do this, click '''Settings''' in the top-right corner of any '''Project Management''' addon page.
  
*'''Default Hourly Rate''' - This is where you define the standard hourly rate you charge, to be used in automatic time based billing calculations, but the rate can always be overriden on a per case basis when generating invoices for time based logs
+
You can configure the following settings in the '''General''' tab:
*'''Project Statuses''' - This field allows you to customise the available statuses for projects, by entering a comma separated list of values.
 
*'''Completed Statuses''' - This is where you define which statuses will be treated as completed - ie. not incomplete or awaiting work - by default this is the Abandoned and Completed project statuses
 
*'''Client Area Access''' - This displays an area to clients where they can view the status and details of their projects. There are granular options controlling which areas clients can see/use. Once configured, the client area can be accessed via /index.php?m=project_management
 
  
===Permissions===
+
*'''Default Hourly Rate''' — Set the standard hourly rate to charge in automatic time-based billing calculations. You can override this rate on a per-case basis when generating invoices for time-based logs.
 +
*'''Project Statuses''' — Set the available statuses for projects as a comma-separated list.
 +
*'''Completed Statuses''' — Select the statuses to treat as completed (not incomplete or awaiting work). This defaults to '''Abandoned''' and '''Completed'''.
  
The project management permissions allow you to fine tune and control exactly what you want your different levels of staff to be able to access or do, on a per administrator role basis.  A range of permisions are available to configure, allowing add, edit and delete rights to be assigned individually.
+
You can configure the following settings in the '''Client Area''' tab:
  
==API==
+
* '''Enable/Disable''' — Check to enable or uncheck to disable Client Area project access. [[File:Pma_clientarea_overview.png|thumb]]
A range of API commands are available for the addon to facilitate project management from remote systems. At the time of writing they are:
+
*'''Allow Access To''' — Check the sections of the Client Area in which clients can view the status and details of their projects. To access this, add the following line to your Client Area URL: <tt>/index.php?m=project_management</tt>
 +
[[File:Pma_clientarea_projectview.png|800px]]
 +
 
 +
You can view a list of task templates and delete them in the '''Task Templates''' tab.
 +
 
 +
You can set admin role access by checking and unchecking individual permissions in the '''Permissions''' tab.
 +
 
 +
== Homepage Widget ==
 +
 
 +
The addon also includes an [[Admin Dashboard|Admin Area Dashboard]] widget, which you can activate for your admin role group in the normal way in '''Configuration (<i class="fa fa-wrench" aria-hidden="true"></i>) > [[Administrator Roles|Manage Admins]]''' or, prior to WHMCS 8.0, '''Setup > Staff Management > Administrator Roles'''. 
 +
 
 +
The widget allows you to see an overview of projects, including title, due date, days left, status, and recent activity.
 +
 
 +
== API ==
 +
 
 +
A range of API commands are available for the addon to facilitate project management from remote systems:
  
 
*[https://developers.whmcs.com/api-reference/addprojectmessage/ AddProjectMessage]
 
*[https://developers.whmcs.com/api-reference/addprojectmessage/ AddProjectMessage]
Line 187: Line 253:
 
*[https://developers.whmcs.com/api-reference/updateprojecttask UpdateProjectTask]
 
*[https://developers.whmcs.com/api-reference/updateprojecttask UpdateProjectTask]
  
A full and current list is published at https://developers.whmcs.com/api/api-index/
+
For more information, see our [https://developers.whmcs.com/api/api-index/ API documentation].
 +
 
 +
== Upgrading ==
 +
 
 +
To apply a manual update to the '''Project Management''' addon, download the update from our website, unzip the files, and upload them to the root WHMCS directory.
 +
 
 +
The files are in the appropriate sub-directories to ensure correct upload.
 +
 
 +
== Uninstalling ==
 +
 
 +
To uninstall the module and completely remove all associated data (projects, logs, tasks, task templates, and attachments), see [[Addon Modules]].
 +
 
 +
== Troubleshooting ==
 +
 +
''N/A''
 +
 +
== Change Log ==
 +
 +
See the [https://marketplace.whmcs.com/product/26-project-management-addon#changelog Project Management] Marketplace listing.

Latest revision as of 19:27, 6 August 2023

About this Addon Module

The Project Management addon can help you organise jobs and tasks by linking support tickets and invoices with to-do items to create projects. You can then work with these in a single interface and track internal discussions, share files, and track (and optionally bill for) time spent on individual tasks.

You can access the add-on at Addons > Project Management.

For more information, see the WHMCS Project Management website.

Addon Name Latest Release Current Version Compatible With Included in WHMCS
Project Management N/A N/A N/A Yes

Activating Project Management

Because this addon ships with WHMCS by default, you do not need to download files before you activate the addon through the Admin Area.

To do this:

  1. If you have not already, purchase the addon.
  2. Go to Configuration () > System Settings > Addon Modules or, prior to WHMCS 8.0, Setup > Addon Modules.
  3. Click Activate for Project Management.
  4. Click Configure.
  5. Select the admin role groups who will have access to this addon.
  6. Select the admin users who can configure Project Management settings within the addon.
  7. Click Save Changes.

Project Management

The Project Management Overview lists all of your projects by default, in ascending order of due date. The list includes the title, assigned staff member, status, creation date, due date, number of days left or overdue, and the last updated date for the project.

From this page you can also review the most recent 10 activity log entries and search for projects.

Projects Tab

This tab displays a list of projects. You can search by project title or associated ticket numbers. If there is only one match for your entered search term, the system will direct you to the project view for that project.

You can apply several filters to the list of projects:

  • Incomplete — View all incomplete projects.
  • My Incomplete — View your assigned incomplete projects.
  • View All — View all complete and incomplete projects.
  • Assigned To Me — View all projects assigned to you, including completed ones
  • Due Within 7 Days — View all projects that are overdue or are due within one week.
  • Closed — View only completed projects.

Accessing Projects via Tickets

When you view a ticket that is associated with a project, the project's title, due date, and status will display within the support ticket itself.

Accessing Projects via Clients

In a client's profile's Summary tab, you can click View Projects under Other Actions to go to the project list at Addons > Project Management with the list already filtered by client.

Tasks Tab

This tab lists tasks for all of your projects and includes the filters that you can also use in the Projects tab.

Reports Tab

This tab lists reports on your projects, time, and invoice amounts. You can filter them by date range and by admin.

Projects

Everything in the Project Management addon, including tasks, tickets, invoices, attachments, and messages, requires a project.

Projectmanagementview.png

When you access a project, all of the project's information will display in a single interface page.

At the top of the page, you can click the pencil icon to edit the project title and details.

  • This includes the creation and due dates, the assigned admin, the associated client, and the project's status.
  • Click Save to save your changes.
  • You can search for the associated client using Intelligent Search.

Use the buttons next to the project title to perform additional actions:

  • Start tracking time when you work on a project (Start Timer) or stop tracking (End Timer).
  • Add a private staff-only note (Add Comment).
  • Upload a file to the project (Upload File).
  • Send an email using a template under the General Messages email template type (Send Email).
  • Enable or disable email notifications about the project (toggle Watching to On or Off).

The system will also send email notifications to admins who are assigned to the project or task.

The top of the page also displays basic information about the project, including the creation date, a color-coded due date, the assigned admin, the client, the status, and the date of the last update to the project.

Creating Your First Project

To create a project:

  1. Click + New Project in the top right corner.
  2. Enter the title of the project, associated ticket number, assigned admin, associated client, the creation date, and the due date.
  3. Click Create.

You can also create a project directly from within a support ticket by clicking the Create New Project tab. This option only appears in tickets if the ticket is not already associated with a project.

Tasks

To add a new task to a project:

  1. Enter the task name in Add new task.
  2. Select an admin to assign to the new task.
  3. Set the desired due date.
  4. Click Add Task.

To mark a task as complete, click the checkmark icon on the left of the list.

To edit a task, click the pencil icon, make the desired changes, and click Save.

To delete a task, click the trashcan icon. You can also click the pencil icon and then click Delete.

Messages

The Messages tab allows you to add notes and other messages that all admins can see when they view the project. Clients cannot view these messages.

To add a message, enter it in the text box and click Post Reply. You can also browse for and attach files.

Time Tracking

You can start the timer to track the time spent on tasks by clicking Start Timer.

  • This creates a timer entry in the Time Tracking tab. It includes the admin and the start time.
  • Click End Timer to end the timer.

To assign the timer record entry to a specific task:

  1. Go to the Time Tracking tab.
  2. Click the Edit pencil icon.
  3. Select the relevant task from the menu.
  4. Optionally, adjust the admin user, start time, and end time.
  5. Click Save.

The system then calculates the total time for each task and for the project as a whole.

Tickets

To associate support tickets with a project:

  1. Go to the Tickets tab.
  2. Click Associate Ticket.
  3. Optionally, search for the desired ticket number or keywords from the ticket name.
  4. Select tickets by checking Select for each desired ticket.
  5. Click Save.

A single ticket can be assigned to multiple projects, and a single project can have multiple tickets assigned to it. If a project does not have an associated client and you assign a client's ticket to that project, that client will automatically be associated with the project too.

You can create a new ticket to associate with the project by clicking Open New Ticket.

Billing

Associating invoices with projects allows you to view their status from within the project itself.

The system will automatically associate invoices using the following methods:

  • Invoices with a line item including Ticket #xxxxxx followed by any associated ticket number.
  • Invoices with a line item including Project #XXX followed by the ID number for the project.
  • Invoices that you generated from within the project using either the Quick Invoice or Bill for Task Time Entries features.

To de-associate an invoice from a project, you must update or remove the line item description to remove the ticket or project reference.

Files

The attachments section allows you to upload files to the project without posting a message.

All attachments, both uploaded here and as attachments in messages posted on the staff messageboard, are stored under the attachments directory, in a folder structure of /projects/xxx/ where xxx is the Project ID number, so projects can be easily accessed by FTP if needed, and cleaned up.

Log

The Log tab lists a full history of each action in that project, the date and time, and the associated admin.

Task Templates

Task Templates are predefined lists of tasks to add to a project.

  • You can save and import task templates from within individual projects.
  • You can view a list of task templates and delete them by going to Settings > Task Templates in the top-right corner of any Project Management page.

Save Task List

To save all of the tasks in the current project as a new task template:

  1. Click Save Task List.
  2. Enter a name for the new task list.
  3. Click Save.

You can now replicate this task list in this or other projects.

Import Tasks

To import tasks from an existing task template:

  1. Click Import Tasks.
  2. Select the desired task template from the menu or enter text to search for a template and select it.
  3. Click Import.

This will import a new copy of all of the task template's tasks into your project.

Settings

You can configure several Project Management settings as well as configuring permissions for related actions. To do this, click Settings in the top-right corner of any Project Management addon page.

You can configure the following settings in the General tab:

  • Default Hourly Rate — Set the standard hourly rate to charge in automatic time-based billing calculations. You can override this rate on a per-case basis when generating invoices for time-based logs.
  • Project Statuses — Set the available statuses for projects as a comma-separated list.
  • Completed Statuses — Select the statuses to treat as completed (not incomplete or awaiting work). This defaults to Abandoned and Completed.

You can configure the following settings in the Client Area tab:

  • Enable/Disable — Check to enable or uncheck to disable Client Area project access.
    Pma clientarea overview.png
  • Allow Access To — Check the sections of the Client Area in which clients can view the status and details of their projects. To access this, add the following line to your Client Area URL: /index.php?m=project_management

Pma clientarea projectview.png

You can view a list of task templates and delete them in the Task Templates tab.

You can set admin role access by checking and unchecking individual permissions in the Permissions tab.

Homepage Widget

The addon also includes an Admin Area Dashboard widget, which you can activate for your admin role group in the normal way in Configuration () > Manage Admins or, prior to WHMCS 8.0, Setup > Staff Management > Administrator Roles.

The widget allows you to see an overview of projects, including title, due date, days left, status, and recent activity.

API

A range of API commands are available for the addon to facilitate project management from remote systems:

For more information, see our API documentation.

Upgrading

To apply a manual update to the Project Management addon, download the update from our website, unzip the files, and upload them to the root WHMCS directory.

The files are in the appropriate sub-directories to ensure correct upload.

Uninstalling

To uninstall the module and completely remove all associated data (projects, logs, tasks, task templates, and attachments), see Addon Modules.

Troubleshooting

N/A

Change Log

See the Project Management Marketplace listing.