LCM
Lawyer Content Manager
User & Administrator Manual
Version 1.0
How the system works · Features · Security · Operations
1. Introduction
Lawyer Content Manager(LCM) is a PHP and MySQL/MariaDB application built for law firms to track clients, cases, hearing dates, notes, fees, and staff access. It supports a local (standalone) installation and an online enterprise (multisite) deployment with optional data sync from the office to a remote server.
This manual describes how LCM works, what features are available, how standalone and online modes differ, how to manage clients, cases and fees, and how security and data visibility are controlled.
1.1 Who uses LCM
Role | Description |
Super Admin (Developer) | Platform control only: website settings, licenses, customer user accounts, sitemap. No access to any firm’s case or client records. |
Head Lawyer (Admin) | Firm owner. Manages clients, cases, fees, staff, license install, and online sync. |
Staff (Junior lawyer) | Works under a Head Lawyer with rights granted for view/edit of clients and/or cases. Cannot see fees or manage licenses. |
2. Standalone and Online (Enterprise)
2.1 Standalone (local)
·Installed on a local computer or office server.
·Full feature set including future document storage on the local machine.
·Head Lawyer and staff log in locally.
·Can be upgraded to connect to an online receiver for sync when Enterprise is enabled.
2.2 Enterprise / Online (multisite)
·Hosted website that can serve multiple law firms (customers).
·Lawyers may register online, verify email, and work in the browser.
·Local installations can push client and case data to the online receiver (receiver.php).
·Attached documents are intended for local use; the online package focuses on case data and reminders.
·Edition is switched in Super Admin → Settings (standalone / enterprise).
2.3 Sync overview
When a firm has a valid license and the Super Admin has set the Sync Receiver URL, the Head Lawyer uses Sync (transmitter.php) to export clients and cases and POST them to the online receiver.php. On first successful sync, the online system assigns a Firm Digital ID, which is stored back in the local installation. Sync is refused if the local license is missing or expired.
3. Feature overview
Area | Capabilities |
Calendar | Month view on the home page. Dates with hearings are highlighted in red. Click a red date to open cases for that day. |
Dashboard | Today’s cases, upcoming hearings, counts of clients and active cases. License and last-sync status for Head Lawyer. |
Clients | Full client master: mobile (country code default +91), name, DOB, address, city, pincode, email, ID type/number, file no. and date. |
Cases | Registration no., case number, court, judge, opposition, sections, notes, next date, status. History of notes by date. |
Search | Search by mobile or name within the logged-in firm’s data only. Combined client + case table. |
Fees | Total fee, paid in advance, fee date. Month/year report with balance. Visible only to Head Lawyer. |
Staff | Head Lawyer adds staff and assigns view/edit rights for clients and cases. |
License | Request (.key) file → developer issues (.license) file → firm installs. Validity enforced for sync. |
Auth | Register with email verification, login, forgot/reset password, change password. |
Super Admin | Isolated suadm area: settings, users, licenses, sitemap. No case/client browsing. |
4. Managing clients
Open Clients from the top navigation. Only data belonging to the Head Lawyer’s firm (or staff under that firm) is shown.
4.1 Required fields
·Country code (default India +91) and mobile number
·Name, date of birth, address, city, pincode, email
·Identity card type (Aadhar / Driving Licence / Other) and number
·File number and file date
4.2 Fee fields (Head Lawyer only)
When adding or editing a client, the Head Lawyer can enter Total fee, Paid in advance, and Fee date. Staff users do not see these fields on forms or on the client detail view.
4.3 Search and list
The client list can be filtered by name, mobile, file number, or email. From a client row you can view, edit, or open related cases (subject to rights).
5. Managing cases
Cases are linked to a client. Each case holds court details, opposition party, sections, status (active / pending / closed), today’s note, and next hearing date.
5.1 Notes and hearing history
When a case is saved with a note, the note is also stored in the case notes history. On the case view page, a table shows previous/last date, next date, status, and remarks/notes for a clear chronological picture.
5.2 Today’s cases and calendar
The dashboard lists cases whose next or today date is today. The home calendar marks any date that has case activity in red; clicking it loads a popup of cases for that date (via the API, using the same firm scope).
6. Fees
Fees are stored on the client record (not on every case line). The Fees report (Head Lawyer menu) filters by month and year (using fee date, or file date if fee date is empty) and shows:
·Name
·Case number (latest case for that client, if any)
·Total fee
·Paid amount
·Date
·Balance fee (total − paid)
Column totals for total, paid, and balance appear at the bottom of the report.
7. Staff and rights
Only the Head Lawyer can open Staff. New staff accounts are created with email and password. Rights can be set independently:
·View clients / Edit clients
·View cases / Edit cases
Staff cannot install licenses, open the fees report, or change firm-level sync settings. Super Admin does not manage firm staff; that remains inside each firm.
8. Licensing
8.1 Lawyer request
Head Lawyer opens License, enters name, email, phone, and number of months to purchase, then generates a .key file and downloads it. That file is sent to the developer (e.g. by email or messaging).
8.2 Developer issue
In Super Admin → Licenses, the developer uploads the .key file. Name, email, phone, and months appear on screen. After payment is confirmed, the developer generates a .license file, downloads it, and sends it back to the firm.
8.3 Install on firm side
The Head Lawyer uploads the .license file on the License page. Validity dates are stored in settings and on the licenses table. Sync requires a currently valid license.
9. Security and data visibility
9.1 Separation of Super Admin
Super Admin works only under /suadm/. There is no navigation to clients, cases, search, fees, or staff. Customer case content is never listed in the Super Admin UI. Sitemap generation includes only public pages (home, login, register)—no client or case URLs.
9.2 Firm data isolation
·Every client and case row is tied to a user_id (firm owner).
·Staff see only data of their parent Head Lawyer.
·Search queries always filter by the logged-in firm’s owner id.
·API cases-by-date uses the same ownership filter.
9.3 Authentication and accounts
·Passwords are stored with password_hash (not plain text).
·Registration sends an email verification link via PHP mail(); login is blocked until the email is verified (Super Admin exempt).
·Forgot password sends a one-hour reset link; reset-password sets a new password.
·Change password is available for Head Lawyer (Profile) and Super Admin (suadm → Change Password).
·CSRF tokens protect forms.
·Optional Cloudflare Turnstile on login and/or registration (enable separately in Super Admin settings).
9.4 Tracking and privacy
Analytics-style scripts are configured so that form interactions are not auto-captured on login-related pages. Customer case text is not exposed on public pages or in the sitemap.
9.5 License files
License request and issue files live under includes/licenses/ with directory protection. Only Super Admin can download generated .license files from suadm; firms install by upload.
10. Super Admin functions
Screen | Purpose |
Dashboard | Counts of customer users, active licenses, blocked users; shortcuts to settings and licenses. |
Settings | Site title, one-line description, meta tags, theme colour, sync receiver URL, edition, Turnstile keys and enable toggles for login/register, gzip, admin email, timezone. |
Users | List Name, Email, Phone, role, license validity, firm digital id; Block/Unblock/Delete. No case data. |