Concrete Classes

Concrete Classes (/admin/concrete-classes) stores mix classes referenced by project.concrete_class_id. The list shows Name and Status (Active/Inactive).

Permissions: FunctionId CONCRETE_CLASS (36), menu entry Concrete Classes (function.url = concrete_class). View opens the page; Add controls New; Edit controls the wizard; Delete controls row and bulk delete.

Screen layout

Concrete Classes list

Figure: FoodHub list — New in the page header; data card with Search concrete classes…, Export, sortable Name and Status, row ⋮, checkboxes, and pagination.

RegionWhat you see
Page toolbarTitle Concrete Classes, subtitle, New (Add), and the ? icon.
Data cardSearch, Export, sortable columns, checkboxes (Delete), bulk bar, mobile cards, pagination.
ModalSurface B on /admin/concrete-classes (?create=1 / ?edit=\{id\}). New = single General step. Edit = stepper General · Projects (read-only).

List behavior

  • Search — matches Name when the term is empty or at least three characters (legacy DataTables rule).
  • Export — Copy, Excel, and CSV for the current page.
  • Sort — Name, Status (default Name ascending).
  • Row ⋮ — Edit · Delete when permitted.
FieldRules
NameRequired. Unique name (legacy duplicate message).
StatusActive / Inactive switch.

Titles: New Concrete Class: / Update Concrete Class: \{name\}.

Read-only table of projects where concrete_class_id matches the class: C & G Project #, County, Name, Description, Due Date, Company, Status, Notes, View when you have project View permission.

Delete

Single and bulk delete remove rows not linked to a project. Linked rows show The concrete class could not be deleted, because it is related to a project (or the bulk variant).