Behind the screens, background tasks extract text from attachments, keep the search index up to date, send queued emails and synchronize with Unifier. This page covers those tasks, the logs administrators use to follow what happened, and the grid features shared by every list in CLIF.
Working with grids#
Every list in CLIF (submissions, departments, funds, logs …) offers the same tools:
| Tool | What it does |
|---|---|
| Search box and filter row | Search all columns, or filter a column with the row under the headers or its filter menu. |
| Change Logs (clock) | Who changed which records in this list, and how. |
| Export to Excel | Downloads the rows you see as an .xlsx file. |
| Clear filter settings | Resets filters, sorting, search and the saved column layout. |
| Refresh | Reloads the data. |
| + (Add), Edit, Clone, Delete | Row commands. Clone creates a copy straight away, with the name prefixed by Clone. |
- Column widths, sorting and filters are remembered in your browser for each grid.
- Delete deactivates most records instead of removing them: they disappear from the lists because the Is Active filter is set to Yes. Clear that filter to see inactive records, and tick Is Active again to restore one.
- Opening, changing and deleting records is recorded in the Activity Logs.
System tasks#
Platform → System Tasks lists the background tasks:
| Task | What it does |
|---|---|
| Convert attached PDF to text | Reads the text of new PDF attachments (OCR) so they can be searched. |
| Collect advanced search information | Adds submissions changed since the last run to the advanced search index. |
| Send emails | Sends queued emails. |
| Unifier Synchronization | Imports funds, projects, cost centers and spending categories from Unifier. |
Click Schedule on a task to choose when it runs, and tick Is Active to switch it on. A task has one schedule; choosing another replaces it. Deactivating a task stops it from running.
Schedules#
Platform → Schedules holds the schedules tasks can use. Add one and choose its type:
| Type | Settings |
|---|---|
| Daily recurring | Every 1–59 minutes or every 1–24 hours. |
| Daily | Once a day at a set time. |
| Weekly | Selected days of the week at a set time. |
| Monthly | Selected days of selected months at a set time. |
| Custom | A five-part cron expression. |
Changing a schedule reschedules every task that uses it. Many common schedules (every few minutes, nightly, monthly) are already defined.
Hangfire dashboard#
Platform → Hangfire Dashboard shows the background job server: jobs waiting, running, succeeded and failed, and the recurring jobs with their next run time. Failed runs are also written to the Error Logs.
Logs#
Under Logs. Each log has a Period picker (today by default, up to 180 days back, year to date or a custom range).
| Log | Contents |
|---|---|
| Activity Logs | Every record that was created, modified, deleted, read or listed: date, user, action, record type and id. Click Details for old and new values. |
| Email Logs | Every email CLIF created: date, subject, sender, recipients, content and why it was sent. |
| Error Logs | Errors with user, message and full technical details, including errors on the public dashboard and in background tasks. |
Submission Monitor#
Submission Mng → Submission Monitor lists who has which submission open right now, with when they opened it and their last change. Use it to check whether someone is still working on a submission before making large changes.
Cached entries#
CLIF keeps frequently used lists in memory. If a change made directly in the database does not show up, open Administration → Cached Entries, choose the organization and remove the entry (or Remove all entries) to reload it.
Services#
For the technical team, CLIF consists of these applications:
| Application | Role |
|---|---|
| Clif | The main web application. |
| Clif.Hangfire | Runs the system tasks; hosts the Hangfire dashboard. |
| Clif.OCR | Extracts text from PDF attachments. |
| Clif.Api | The public read-only API behind the public dashboard. |
| Clif.Public | The public Board of Estimates dashboard. |
| Clif.EST | A one-off tool that loads all existing submissions into the advanced search index (for example after setting up a new index). |
| Clif.Docs | This documentation site. |