# Features — clientSalesTracking

Evidence date: 2026-10-18. Revision: `master` `5d5d307` (2020-06-24, "react components").

The source repository has no feature list, README, or changelog. Status below is from the code on `master`. There is only one branch.

Planned features written as a roadmap: **none found**.

Commented references to a filter and an add-user modal are leftovers, not a written plan. See "Not implemented".

## Current features (master)

| Feature | What it does | Evidence | Status |
|---|---|---|---|
| Client list | Table of `tblClient` rows with id, name, telephone, fax, email, address, payment type, client job, last edit | `src/components/ListView.js`, `contactDetails.php` | Implemented |
| Client-side pagination | Default paginator on the table. No page size is set in code | `paginationFactory()` in `ListView.js` | Implemented |
| Sort by client id | Only the ID column sets `sort: true` | `ListView.js` column config | Implemented |
| Open edit form | Edit button navigates to `/edit/{ClientID}` | `ListView.js`, `src/App.js` | Implemented |
| Load client profile | Form fields filled from `getClient.php?id=` | `src/components/Card.js`, `getClient.php` | Implemented |
| Update contact details | Posts name, email, address, telephone, and fax to `update.php` | `Card.js` `onSubmit`, `update.php` | Implemented. Response handling does not match an UPDATE result; see business rule BR-010 |
| Navbar | Single link, "View", to `/ClientDetails` | `src/App.js` | Implemented |
| JSON endpoints with open CORS | `header.php` on every PHP script | `header.php` | Implemented |
| User dump endpoint | JSON list of `sysuser` | `userDetails.php` | Implemented as an endpoint. No UI |

## Completed features

Both commits landed on 2020-06-24 and are the whole history of `master`.

| When | Commit | What landed |
|---|---|---|
| 2020-06-24 07:23 | `422690e` "Client profile" | `contactDetails.php`, `getClient.php`, `update.php`, `userDetails.php`, `header.php`, `dbconnect.php`, `dbconnect2.php` |
| 2020-06-24 09:54 | `5d5d307` "react components" | Create React App scaffold, `ListView`, `Card` (profile), routes |

Nothing has been removed in a later commit. There is no later commit.

## In development

No branch, TODO comment, or ticket in the repository marks work in progress.

The profile card still contains placeholder copy ("Sub-title", "Some quick example text") and an unbound Workload slider. Provenance: **Implemented** unfinished UI, not a named in-progress feature.

## Not implemented

Present only as a comment, an unused dependency, or a field the UI does not save.

| Item | Evidence | Status |
|---|---|---|
| Column text filters | Commented import of `react-bootstrap-table2-filter` in `ListView.js`. The package is not in `package.json` | Not implemented |
| Add user modal | Commented import `./AddUserModal` in `ListView.js`. File does not exist | Not implemented |
| Save client job | Input is bound to state. `onSubmit` omits it. `update.php` does not set `txtClientJob` | Not implemented |
| Notes | `note` state in `Card.js` has no field and is not posted | Not implemented |
| Workload | Range input with no state | Not implemented. Placeholder |
| Create client | No form and no INSERT | Not implemented |
| Delete client | No control and no DELETE | Not implemented |
| Edit payment type or last-edit date | Shown on the list only | Not implemented |
| User administration UI | `userDetails.php` only | Not implemented |
| Authentication | No login route, no session, no token check | Not implemented |
| Sales tracking | No pipeline objects in code | Not implemented. The repository name is the only evidence of that idea |
| Service worker / offline | `src/serviceWorker.js` is the Create React App file. `src/index.js` calls `unregister()` | Not in use |

## Changed features

No feature has a before-and-after inside the two commits beyond the initial add. The PHP API and the React UI were introduced on the same day. The UI is the only caller of `contactDetails.php`, `getClient.php`, and `update.php`.

## Deprecated or removed

No deprecated marker and no removed feature in Git history.

Scaffold that the current UI does not use:

| Item | Evidence |
|---|---|
| `src/App.css` | Create React App template. Not imported |
| `src/App.test.js` | Expects "learn react", which the UI does not render |
| `public/manifest.json` name "Create React App Sample" | Default CRA manifest |
| jquery, datatables.net, react-bootstrap-table | In `package.json`, not imported under `src/` |

## Recently changed

The newest change in the repository is `5d5d307` on 2020-06-24. As of the evidence date (2026-10-18) that change is more than six years old.
