← Review Hub / Phone App

The DOJ phone app

A read-only DOJ companion that lives inside the LB Phone as a custom app named “DOJ”. The crestwood_doj resource registers it at runtime via exports['lb-phone']:AddCustomApp (identifier doj, defaultApp = true so it's preloaded on every character's phone). The app icon is a single DOJ seal (html/phoneapp/icon.png); no per-role theming or accent color is passed.

The LB Phone loads a thin NUI wrapper (html/phoneapp/index.html) that iframes the DOJ website's public app page (phoneapp/public.html). So it's the same PHP/JS backend as the website — just a phone-shaped view. It is a companion, not a workstation: you can read your records and the city's public data, but every action ("file a form", "pay in person") points you to a DOJ terminal at City Hall, the Police MDT, or your firm's MDT.

App name
DOJ
id doj · default app
Tabs
5 (top nav)
Home · Records · Penal · Library · My DOJ
Login
Token, not passcode
phone owner → citizenid
Writes?
None — read-only
no filing / no payment

How the "token login per role" actually works

This is not the website's passcode login (where you type judge1, clerk1, etc.). On the phone you tap "Sign in as this phone's owner". The wrapper asks the game client for a token (NUI callback getTokencrestwood_doj:phoneapp:getToken), which mints a short-lived row in doj_phoneapp_tokens (token → citizenid, expires in 30 minutes) and posts it back to the iframe (dojRequestToken / dojToken handshake). Every API call is scoped to that citizenid only.

You don't pick a role. Your role is whatever your doj_users row says (via phoneappMyRole / phoneappRoleSummary). A plain citizen with no DOJ row simply gets no role extras. So the picker below mimics "sign in as a person who holds this DOJ role."

How much changes per role? (honest answer: not the tabs)

All five tabs are identical for every login. Role only changes two things.

Same for everyone

  • Home — City Bulletin, Court Docket, DOJ Online Staff (public)
  • Penal Code — offenses grouped by Title (public)
  • Library — DOJ books + City Jobs Directory (public)
  • Records — 4 public registries: Case, Marriage, Property, Professional
  • My DOJ — your own account block (filings, invoices, bills, permits, licenses, cases)

Changes with your DOJ role

  1. Records unlocks 3 restricted registry pills — Licenses Citations Warrants — for any DOJ-personnel role (everyone except plain Citizen).
  2. My DOJ appends a small role summary panel below your account block — one of 7 panel types (Clerk, Judge, Prosecutor, Law-Enforcement, IT, Executive, Law-Office), or none for Citizen.

Flip the picker further down to see both differences live.

Public tabs — identical for every login

No sign-in required. These three render the same whether you're a citizen or the Chief Justice.

Home tab public — auto-refreshes every 60s

9:415G · Wi-Fi · 82% 🔋
⚖️

Department of Justice

Los Santos County — Public information portal

City Bulletin
Courthouse maintenance closureNotice
Courtroom 2 closed Sat for HVAC work. Hearings moved to Courtroom 1.
Chief Justice Aria Vance · Jul 18, 2026
Firearm permit fee updateWarning
Concealed-carry permit fee rises to $1,500 effective Monday.
Master Clerk R. Doyle · Jul 15, 2026
Court Docket
The State v. Marcus ReyesScheduled
Jul 20, 2026 4:00 PM · Courtroom 1 · Judge Aria Vance
Delgado v. Sunrise Realty LLCScheduled
Jul 21, 2026 6:30 PM · Courtroom 2 · Judge Owen Park (pending confirmation)
Private session — closed to the public
Jul 22, 2026 5:00 PM
DOJ Online Staff
Judge1
Aria Vance
Clerk2
R. Doyle
Mia Chen
Police3
Ofc. J. Kaur
Ofc. L. Bianchi
Sgt. D. Cole

Penal Code tab public — grouped by Title, searchable

9:415G · Wi-Fi · 82% 🔋
⚖️

Department of Justice

Los Santos County — Public information portal

Offenses Against Persons3
PC 22.01 — AssaultMisdemeanor
Intentionally causing bodily injury to another person.
Jail: 6 mo · Fine: $2,500
PC 22.02 — Aggravated AssaultFelony
Assault causing serious bodily injury or using a deadly weapon.
Jail: 24 mo · Fine: $10,000
PC 19.03 — MurderFelony
Intentionally or knowingly causing the death of an individual.
Jail: 120 mo · Fine: $50,000
Offenses Against Property4
PC 31.03 — TheftMisdemeanor
Unlawfully appropriating property with intent to deprive the owner.
Jail: 3 mo · Fine: $1,200
Traffic Offenses6
Tap to expand…
Public Order & Safety5
Tap to expand…

Library tab public — DOJ books + City Jobs Directory

9:415G · Wi-Fi · 82% 🔋
⚖️

Department of Justice

Los Santos County — Public information portal

City Guide12
Tap to read…
DOJ Rulebook8
Tap to read…
Driver's Handbook6
Tap to read…
Professional Examination Handbook5
Tap to read…
Bar Study Guide & Law Office Roles7
Tap to read…
City Jobs Directory4
Every job in CrestWood — pay, duties, and how to join.
Public Safety
Police Officer$1,800 / shift
Patrol, respond to dispatch, make arrests, file reports.
How to join: Apply at the Mission Row academy.
EMS Paramedic$1,600 / shift
Revive and treat the injured, run the hospital.
How to join: Sign up at Pillbox Medical.
Civil Service
Tap to expand…

My DOJ — the sign-in screen

Same for everyone until you sign in. Also hosts the Law Offices directory (public).

My DOJ — signed out tap the gold button to sign in as the phone owner

9:415G · Wi-Fi · 82% 🔋
⚖️

Department of Justice

Los Santos County — Public information portal

See your soul's DOJ account — filings you've submitted, invoices due, permits pending, licenses and cases. Filing new forms is handled at City Hall Services.

Law Offices

Open a firm's website in the Browser app to sign in there.

Public Defenders
Private Practice

What the sign-in screen does

  • The gold button triggers the dojRequestTokendojToken handshake with the game client (30-min token).
  • Once signed in, this screen is replaced by your account block + role panel (next section).
  • Law Offices is public and always shown here. Public Defenders = the one DOJ Law Office (roster = every active public_defender); every other live firm is "Private Practice."
  • Firm links open in an in-app overlay iframe with a Back button — gap LB Phone 2.8.3 has no public deep-link export to hand a URL to the Browser app, so the app works around it.

Flip between logins

Pick a role to see the two things that actually change: the Records pills and the My DOJ role panel. Everything else stays exactly as shown above.

Records tab 4 public registries

9:415G · Wi-Fi · 82% 🔋
⚖️

Department of Justice

Los Santos County — Public information portal

Showing the last 30 days — search finds any record from the permanent archive.

CR-2026-0148Closed
The State v. Marcus Reyes
Criminal · Filed Jul 2, 2026
CV-2026-0091Open
Delgado v. Sunrise Realty LLC
Civil · Filed Jul 9, 2026
Ricky Lafleur & Julian HigginsActive
MC-0231 · Jul 5, 2026 · Tap for certificate

↑ Tapping a marriage record opens a printable certificate:

CrestWood Department of Justice
Certificate of Marriage
This certifies that
Ricky Lafleur
and
Julian Higgins
were united in marriage on Jul 5, 2026
Officiated by Judge Aria Vance
Certificate No. MC-0231

My DOJ — signed in account block + role panel

9:415G · Wi-Fi · 82% 🔋
⚖️

Department of Justice

Los Santos County — Public information portal

Your DOJ account. To file forms or pay in person, visit City Hall Services.

My Filings2
Name Change PetitionApproved
Submitted Jul 10, 2026 via terminal · Reviewed Jul 11, 2026
Business License ApplicationPending
Submitted Jul 17, 2026 via website
My Invoices1
INV-20431Due
Court filing fee
$250 · Due Jul 25, 2026
My Property Bills1
Unit 12B — Alta St. AptsOverdue
Rent · $1,800 · Due Jul 12, 2026
My Permit Applications1
Concealed Carry PermitBackground Check
Applied Jul 14, 2026 · Wait until Jul 21, 2026
My Licenses2
Driver License (Class C)Active
DL-88421 · Expires Mar 2, 2027
Weapon LicenseActive
WL-1203 · Expires Jan 4, 2027
My Cases1
CV-2026-0091Open
Delgado v. Sunrise Realty LLC
Civil · Filed Jul 9, 2026

Role panel


The account block (Filings, Invoices, Bills, Permits, Licenses, Cases) is the phone owner's own records — structurally the same for every login. Only the panel below it and the Records pills change with your DOJ role.

Gaps & things to know

Read-only companion by design

  • You cannot file a form, pay an invoice/bill, or sign a document from the phone. Every path points to a DOJ terminal, Police MDT, or firm MDT.
  • No Notifications / push tab and no unread badge — missing. Home silently re-fetches every 60s while open; nothing alerts you when closed.
  • No Payments screen — invoices and bills are displayed but not payable in-app.

Behavior notes

  • Sign-in is identity-based, not role-selectable: you always sign in as yourself; the role panel follows your doj_users row.
  • Registry pills wrap onto multiple rows on purpose — horizontal scroll was cut off inside the LB Phone iframe (owner report, 2026-07-15).
  • A 60px camera-safe spacer sits above the header so the phone's camera cutout never covers the seal (per the LB Phone app-header pattern).
  • An older, superseded UI (phoneapp/index.html: blue accent; tabs Bulletin / Cases / Invoices / Bills / Licenses; token-in-URL only) still ships in the folder but is not what the LB Phone loads — the live app is public.html.

Faithful to phoneapp/public.html + api/phoneapp.php. Records, names, and dates are mock data.