initial commit

This commit is contained in:
Stefan Tollkühn
2025-07-21 12:14:42 +02:00
parent a77fc87832
commit 3735122750
156 changed files with 3862 additions and 1 deletions

View File

@@ -0,0 +1,52 @@
<%= form_with(model: project) do |form| %>
<% if project.errors.any? %>
<div style="color: red">
<h2><%= pluralize(project.errors.count, "error") %> prohibited this project from being saved:</h2>
<ul>
<% project.errors.each do |error| %>
<li><%= error.full_message %></li>
<% end %>
</ul>
</div>
<% end %>
<div>
<%= form.label :name, style: "display: block" %>
<%= form.text_field :name %>
</div>
<h3>Subprojects</h3>
<%= form.fields_for :subprojects do |sp_form| %>
<div class="subproject-fields">
<%= sp_form.label :subproject_name %>
<%= sp_form.text_field :subproject_name %>
<% [:client, :owner, :builder].each do |role| %>
<div>
<%= sp_form.label "#{role}_id", "Select Existing #{role.capitalize}" %>
<%= sp_form.collection_select "#{role}_id", Client.all, :id, :company_name, prompt: "Select #{role.capitalize}" %>
<fieldset>
<legend>Or Create New <%= role.capitalize %></legend>
<%= sp_form.fields_for role do |c_form| %>
<%= c_form.label :company_name %>
<%= c_form.text_field :company_name %><br>
<%= c_form.label :firstname %>
<%= c_form.text_field :firstname %><br>
<%= c_form.label :lastname %>
<%= c_form.text_field :lastname %><br>
<%= c_form.label :email %>
<%= c_form.text_field :email %><br>
<!-- Add more client fields here as needed -->
<% end %>
</fieldset>
</div>
<% end %>
</div>
<% end %>
<div>
<%= form.submit %>
</div>
<% end %>

View File

@@ -0,0 +1,7 @@
<div id="<%= dom_id project %>">
<p>
<strong>Name:</strong>
<%= project.name %>
</p>
</div>

View File

@@ -0,0 +1,2 @@
json.extract! project, :id, :name, :created_at, :updated_at
json.url project_url(project, format: :json)

View File

@@ -0,0 +1,12 @@
<% content_for :title, "Editing project" %>
<h1>Editing project</h1>
<%= render "form", project: @project %>
<br>
<div>
<%= link_to "Show this project", @project %> |
<%= link_to "Back to projects", projects_path %>
</div>

View File

@@ -0,0 +1,16 @@
<p style="color: green"><%= notice %></p>
<% content_for :title, "Projects" %>
<h1>Projects</h1>
<div id="projects">
<% @projects.each do |project| %>
<%= render project %>
<p>
<%= link_to "Show this project", project %>
</p>
<% end %>
</div>
<%= link_to "New project", new_project_path %>

View File

@@ -0,0 +1 @@
json.array! @projects, partial: "projects/project", as: :project

View File

@@ -0,0 +1,11 @@
<% content_for :title, "New project" %>
<h1>New project</h1>
<%= render "form", project: @project %>
<br>
<div>
<%= link_to "Back to projects", projects_path %>
</div>

View File

@@ -0,0 +1,10 @@
<p style="color: green"><%= notice %></p>
<%= render @project %>
<div>
<%= link_to "Edit this project", edit_project_path(@project) %> |
<%= link_to "Back to projects", projects_path %>
<%= button_to "Destroy this project", @project, method: :delete %>
</div>

View File

@@ -0,0 +1 @@
json.partial! "projects/project", project: @project