From accb6682675f92eed6e1c306995017b1c8da1289 Mon Sep 17 00:00:00 2001 From: Torsten Date: Sat, 21 Jan 2023 22:43:39 +0200 Subject: [PATCH] fixing the forms again --- app/assets/stylesheets/merged/merged.css | 5 +++++ app/controllers/merged/form_controller.rb | 9 ++++----- app/helpers/merged/form_helper.rb | 5 +++++ app/models/merged/view_base.rb | 1 - app/views/merged/form/form.haml | 8 ++++++++ app/views/merged/view/_form_section.haml | 2 +- 6 files changed, 23 insertions(+), 7 deletions(-) create mode 100644 app/helpers/merged/form_helper.rb create mode 100644 app/views/merged/form/form.haml diff --git a/app/assets/stylesheets/merged/merged.css b/app/assets/stylesheets/merged/merged.css index 14fec61..093ecc9 100644 --- a/app/assets/stylesheets/merged/merged.css +++ b/app/assets/stylesheets/merged/merged.css @@ -2079,6 +2079,11 @@ select { border-color: rgb(156 163 175 / var(--tw-border-opacity)); } +.border-green-500 { + --tw-border-opacity: 1; + border-color: rgb(34 197 94 / var(--tw-border-opacity)); +} + .bg-red-100 { --tw-bg-opacity: 1; background-color: rgb(254 226 226 / var(--tw-bg-opacity)); diff --git a/app/controllers/merged/form_controller.rb b/app/controllers/merged/form_controller.rb index e2fbb84..36473e0 100644 --- a/app/controllers/merged/form_controller.rb +++ b/app/controllers/merged/form_controller.rb @@ -1,14 +1,14 @@ module Merged - class FormController < MergedController + class FormController < ::ApplicationController - def sendit + def post @section = Section.find( params[:section_id] ) @errors = { } return if bot_alert check_maths verify_data if( @errors.length > 0) - render :form + render "merged/form/form" else dispatch_form_data( ) redirect_to main_app.root_url , notice: @section.option("ok_message") @@ -36,7 +36,6 @@ module Merged end def check_option(card , value) return unless value.blank? - puts "Checking #{card.header} #{value}" compulsory = card.option("compulsory") != "no" return unless compulsory # check different types @@ -48,7 +47,7 @@ module Merged def check_maths key = params[:bot_fudder].to_i / 2 if( (2*key + 1).to_s != params[:challenge]) - @errors[:challenge] = "Check the maths #{params[:challenge]}" + @errors[:challenge] = "Check the anti bot maths, it wasn't: #{params[:challenge]}" end end diff --git a/app/helpers/merged/form_helper.rb b/app/helpers/merged/form_helper.rb new file mode 100644 index 0000000..50ae677 --- /dev/null +++ b/app/helpers/merged/form_helper.rb @@ -0,0 +1,5 @@ +module Merged + module FormHelper + include ViewHelper + end +end diff --git a/app/models/merged/view_base.rb b/app/models/merged/view_base.rb index 79b4d91..dccac53 100644 --- a/app/models/merged/view_base.rb +++ b/app/models/merged/view_base.rb @@ -69,7 +69,6 @@ module Merged raise "Type mismatch #{key} #{@attributes[key].class}!=#{value.class}" end end - puts "setting #{key}=#{value}" attributes[key] = value end end diff --git a/app/views/merged/form/form.haml b/app/views/merged/form/form.haml new file mode 100644 index 0000000..b064c65 --- /dev/null +++ b/app/views/merged/form/form.haml @@ -0,0 +1,8 @@ +.flex.flex-col.m-20 + .flex.items-center.justify-center.flex-1 + - @errors.each do |name , message| + .m-5.rounded.border-l-4.border-green-500.bg-red-50.p-4 + %strong.font-medium.text-red-700= name.capitalize + .mt-2.text-sm.text-red-700= message + += render_section @section diff --git a/app/views/merged/view/_form_section.haml b/app/views/merged/view/_form_section.haml index 384f4e3..f482d69 100644 --- a/app/views/merged/view/_form_section.haml +++ b/app/views/merged/view/_form_section.haml @@ -6,7 +6,7 @@ = markdown(section) .flex.items-center.justify-start.m-10.md:m-20 .mx-auto.w-full.max-w-4xl{class: "max-w-[50%]"} - = form_tag( merged.form_sendit_path , {class: "mt-10" }) do + = form_tag( main_app.post_form_path , {class: "mt-10" }) do - challenge = rand(8) = hidden_field_tag :section_id , section.id = hidden_field_tag :bot_fudder , "#{challenge*2}"