{{--
Add Project — docs/wireframes-v12/add-project.html (the card at ~lines
104-393: five form sections and the footer).
## Shape (CR-2b, spec §12)
ONE `.card`. Inside it, a `.form-section` per heading — each with its
`.form-section-title` and the wireframe's own icon — and a `.card-footer`
at the bottom. Fields are laid out by v12's `.form-row.form-row-2/-3`
grids, not by Bootstrap columns, which is why no field carries a
`group-class` any more: the row owns the columns and `.form-group` owns its
own margin.
The page title is v12's own header wording, "Add New Project", which is
longer than the breadcrumb crumb ("Add Project") on the same wireframe
page. The old `@section('subtitle')` line is gone: v12's header has no
second line and nothing it said is missing from the title.
The four upload slots follow v12's own split, which spec §4 now records:
the RERA certificate closes Compliance & Legal (~line 307), and the
brochure, logo and site plan open Marketing & Media (~lines 318-343) ahead
of the two links. They are one pipeline and two sections — the section a
zone sits in is a filing decision, and the slot it posts to is not.
## The twin rule (spec §2)
This file and projects/edit.blade.php are twins. Every field is written out
in both, and neither includes a shared form partial — that is the decision
that replaced projects/partials/form.blade.php, deleted once edit.blade.php
stopped including it. **A field added, removed or renamed here must be
mirrored in edit.blade.php in the same commit.**
TwinViewParityTest renders both screens and fails when their `name` sets or
their required-attribute sets differ. It does not compare labels, order or
validation rules, so those are on whoever edits one of the pair.
## Deliberate differences from the wireframe
* "Save as Draft" is not rendered: there is no draft state on the model,
and Planning is what the button would have meant (spec §1). v12's
footer therefore has three buttons and this one has two — Cancel
(`.btn-outline`) then Save Project (`.btn-primary`), in v12's order.
* `parking_slots` and `configurations` have no v12 field. The columns stay
(spec §3), the controls are gone.
* City is a free-text input, not the boilerplate's select2 (§4).
Project::CITY_OPTIONS still backs the index filter dropdown.
* Project Code is a readonly input with NO `name`, where v12 leaves it
named: the server owns the sequence, and a nameless control posts
nothing (a readonly one still would).
* The Unit Inventory section renders NO row of its own and no way to
make one by hand where v12 draws three static editable rows: rows come
from an uploaded file, every field in the section is read-only, and
there is no add-row button and no per-row delete. Client-directed
deviation, spec §11 (CR-1) — it supersedes the add-row/per-row-remove
deviation that spec §7 declared.
* Its Upload File picker accepts `.csv,.xls,.xlsx` where v12's accepts
`.csv,.xlsx`: CR-5 §15.3.5 put all three through SheetJS, and the
client's older sheets are saved in the format v12 left out.
--}}
@extends('layouts.app')
@section('title', __('projects.create_page_title'))
@section('breadcrumbs')