You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							62 lines
						
					
					
						
							2.8 KiB
						
					
					
				
			
		
		
	
	
							62 lines
						
					
					
						
							2.8 KiB
						
					
					
				| <% content_for :title, "Invite somebody to submit CORE data" %> | |
|  | |
| <% content_for :before_content do %> | |
|   <%= govuk_back_link(href: :back) %> | |
| <% end %> | |
|  | |
| <%= form_for(@resource, as: :user, html: { method: :post }) do |f| %> | |
|   <div class="govuk-grid-row"> | |
|     <div class="govuk-grid-column-two-thirds"> | |
|       <%= f.govuk_error_summary %> | |
|  | |
|       <h1 class="govuk-heading-l"> | |
|         <%= content_for(:title) %> | |
|       </h1> | |
|  | |
|       <%= f.govuk_text_field :name, | |
|         autocomplete: "name", | |
|         label: { text: "Name", size: "m" } %> | |
|  | |
|       <%= f.govuk_email_field :email, | |
|         label: { text: "Email address", size: "m" }, | |
|         autocomplete: "email", | |
|         spellcheck: "false", | |
|         value: @resource.email %> | |
|  | |
|       <% if current_user.support? %> | |
|         <% null_option = [OpenStruct.new(id: "", name: "Select an option")] %> | |
|         <% organisations = Organisation.all.map { |org| OpenStruct.new(id: org.id, name: org.name) } %> | |
|         <% answer_options = null_option + organisations %> | |
|  | |
|         <% if @organisation_id %> | |
|           <% organisation = Organisation.find(@organisation_id) %> | |
|           <% answer_options = [OpenStruct.new(id: organisation.id, name: organisation.name)] %> | |
|         <% end %> | |
|  | |
|           <%= f.govuk_collection_select :organisation_id, | |
|             answer_options, | |
|             :id, | |
|             :name, | |
|             "data-controller": "accessible-autocomplete", | |
|             label: { text: "Organisation", size: "m" }, | |
|             options: { disabled: [""], selected: @organisation_id ? answer_options.first : "" } %> | |
|       <% end %> | |
|  | |
|       <% hints_for_roles = { data_provider: ["Can view and submit logs for this organisation"], data_coordinator: ["Can view and submit logs for this organisation and any of its managing agents", "Can manage details for this organisation", "Can manage users for this organisation"], support: nil } %> | |
|  | |
|       <% roles_with_hints = current_user.assignable_roles.map { |key, _| OpenStruct.new(id: key, name: key.to_s.humanize, description: hints_for_roles[key.to_sym]) } %> | |
|  | |
|       <%= f.govuk_collection_radio_buttons :role, | |
|                                            roles_with_hints, | |
|                                            :id, | |
|                                            :name, | |
|                                            lambda { |option| | |
|                                              option.description&.map { |hint| content_tag(:li, hint) }&.reduce(:+) | |
|                                            }, | |
|                                            legend: { text: "Role (optional)", size: "m" }, | |
|                                            hint: { text: "You do not need to select a role if the user is a data protection officer only. You can tell us that this user is a data protection officer after you have invited them." } %> | |
|  | |
|       <%= f.govuk_submit "Continue" %> | |
|     </div> | |
|   </div> | |
| <% end %>
 | |
| 
 |