diff --git a/app/controllers/donations_controller.rb b/app/controllers/donations_controller.rb index 31ef886ff..cfc39c1e3 100644 --- a/app/controllers/donations_controller.rb +++ b/app/controllers/donations_controller.rb @@ -1,5 +1,5 @@ class DonationsController < ApplicationController def new - redirect_to I18n.t('services.donations'), allow_other_host: true + redirect_to donate_path end end diff --git a/app/views/layouts/_footer.html.haml b/app/views/layouts/_footer.html.haml index 201ede017..00c11894e 100644 --- a/app/views/layouts/_footer.html.haml +++ b/app/views/layouts/_footer.html.haml @@ -29,8 +29,10 @@ %li= link_to t("navigation.sponsors"), sponsors_path %li= link_to t("navigation.events"), upcoming_events_path %li= link_to t("navigation.jobs"), "https://jobs.codebar.io/" - %li.active= link_to t("navigation.donate"), new_donation_path - %li= link_to "Buy us a coffee", "https://buymeacoffee.com/codebarhq", target: '_blank', rel: 'noopener noreferrer' + %li= link_to t("navigation.volunteer"), volunteer_path + %li= link_to t("navigation.fundraise"), fundraise_path + %li.active= link_to t("navigation.donate"), donate_path + %li= link_to t("navigation.buy_us_a_coffee"), 'https://buymeacoffee.com/codebarhq', target: '_blank', rel: 'noopener noreferrer' .col-sm-12.col-md-6.col-lg-3 = render partial: 'shared/social_media' diff --git a/app/views/layouts/_navigation.html.haml b/app/views/layouts/_navigation.html.haml index 089a5861f..4cf12d274 100644 --- a/app/views/layouts/_navigation.html.haml +++ b/app/views/layouts/_navigation.html.haml @@ -18,6 +18,7 @@ = link_to '#', {'role': 'button', 'aria-expanded': 'false', 'data-bs-toggle': 'dropdown', class: 'nav-link border-0 dropdown-toggle', id: 'navbarDropdownMenuLinkCommunity'} do Community %ul.dropdown-menu{'aria-labelledby': 'navbarDropdownMenuLinkCommunity'} + %li= link_to 'Sponsors', sponsors_path, class: 'dropdown-item' %li= link_to 'Coaches', coaches_path, class: 'dropdown-item' %li= link_to 'Impact Report', 'https://impact-report.codebar.io/', class: 'dropdown-item' %li= link_to 'codebar Stories Podcast', codebar_stories_podcast_path, class: 'dropdown-item' @@ -28,9 +29,13 @@ %li.nav-item = link_to sponsors_path, class: 'nav-link border-0' do Sponsors - %li.nav-item - = link_to how_to_support_us_path, class: 'nav-link border-0' do + %li.nav-item.dropdown + = link_to '#', {'role': 'button', 'aria-expanded': 'false', 'data-bs-toggle': 'dropdown', class: 'nav-link border-0 dropdown-toggle', id: 'navbarDropdownMenuLinkSupport'} do How to support us + %ul.dropdown-menu{'aria-labelledby': 'navbarDropdownMenuLinkSupport'} + %li= link_to 'Volunteer', volunteer_path, class: 'dropdown-item' + %li= link_to 'Fundraise', fundraise_path, class: 'dropdown-item' + %li= link_to 'Donate', 'https://enthuse.com/@codebar/donate', class: 'dropdown-item', target: '_blank', rel: 'noopener noreferrer' %li.nav-item = link_to "http://jobs.codebar.io/", class: 'nav-link border-0' do Job Board @@ -54,8 +59,5 @@ = render 'layouts/member_menu' %li.nav-item.d-flex.align-items-center %div.nav-link.d-flex.gap-2.py-0 - = link_to new_donation_path, class: 'btn btn-sm fs-6 fw-semibold btn-primary' do + = link_to 'https://enthuse.com/@codebar/donate', class: 'btn btn-sm fs-6 fw-semibold btn-primary', target: '_blank', rel: 'noopener noreferrer' do Donate - = link_to 'https://buymeacoffee.com/codebarhq', class: 'btn btn-sm fs-6 fw-semibold btn-secondary', target: '_blank', rel: 'noopener noreferrer' do - %i.fas.fa-coffee.me-1 - Buy us a coffee diff --git a/app/views/pages/donate.html.haml b/app/views/pages/donate.html.haml new file mode 100644 index 000000000..6faad770e --- /dev/null +++ b/app/views/pages/donate.html.haml @@ -0,0 +1,16 @@ +.py-4.py-lg-5.bg-primary + .container + .row.align-items-center + .col-12.col-md-6 + %h1.display-2.text-white.lh-1.mb-4 + Donate + %br + to codebar + %p.text-white.lead.mb-4 + Your donation helps us continue running free coding workshops for people from underrepresented groups in tech. + .col-12.col-md-6 + = image_tag 'how-to-support-us/codebar-festival-2023.jpg', alt: '', class: 'mw-100 rounded' + +.py-4.py-lg-5 + .container + = render partial: 'shared/donation_platforms' diff --git a/app/views/pages/fundraise.html.haml b/app/views/pages/fundraise.html.haml new file mode 100644 index 000000000..164e440f5 --- /dev/null +++ b/app/views/pages/fundraise.html.haml @@ -0,0 +1,29 @@ +.py-4.py-lg-5.bg-primary + .container + .row.align-items-center + .col-12.col-md-6 + %h1.display-2.text-white.lh-1.mb-4 + Fundraise + %br + for codebar + %p.text-white.lead.mb-4 + Join our team at a physical challenge event and help keep our workshops running. + .col-12.col-md-6 + = image_tag 'how-to-support-us/hackney-half.jpeg', alt: t('pages.how_to_support_us.fundraise.image_alt'), class: 'mw-100 rounded' + +.py-4.py-lg-5 + .container + .row.mb-5 + .col-12.col-lg-8 + %p.lead + = t('pages.how_to_support_us.fundraise.description_html', email: 'hello@codebar.io') + .row + .col-12.col-lg-4 + .ratio.shadow{style: '--bs-aspect-ratio: 150%;'} + %iframe{title: 'Royal Parks Half Marathon', src: '//runforcharity.com/codebar/royal-parks-half-marathon/registration'} + .col-12.col-lg-4 + .ratio.shadow{style: '--bs-aspect-ratio: 150%;'} + %iframe{title: 'Brighton Marathon April 2026', src: '//runforcharity.com/codebar/the-brighton-marathon/1744707816740.9279'} + .col-12.col-lg-4 + .ratio.shadow{style: '--bs-aspect-ratio: 150%;'} + %iframe{title: 'Hackney Half May 2026', src: '//runforcharity.com/codebar/hackney-half/1747652084027971'} diff --git a/app/views/pages/volunteer.html.haml b/app/views/pages/volunteer.html.haml new file mode 100644 index 000000000..1f288aa63 --- /dev/null +++ b/app/views/pages/volunteer.html.haml @@ -0,0 +1,55 @@ +.py-4.py-lg-5.bg-primary + .container + .row.align-items-center + .col-12.col-md-6 + %h1.display-2.text-white.lh-1.mb-4 + Volunteer + %br + with us + %p.text-white.lead.mb-4 + Use your skills to help people from groups underrepresented in tech break into the industry. + %ul.list-inline + %li.list-inline-item + = link_to t('pages.how_to_support_us.volunteer.become_a_coach.title'), '#become-a-coach', class: 'btn btn-light' + %li.list-inline-item + = link_to t('pages.how_to_support_us.volunteer.become_an_organiser.title'), '#become-an-organiser', class: 'btn btn-light' + .col-12.col-md-6 + = image_tag 'how-to-support-us/become-a-coach.jpg', alt: '', class: 'mw-100 rounded' + +.py-4.py-lg-5#become-a-coach + .container + .row.mb-5 + .col + %h2.h1.text-center= t('pages.how_to_support_us.volunteer.become_a_coach.title') + .row.justify-content-center + .col-12.col-lg-9 + %p.lead.text-center.mb-5 + = t('pages.how_to_support_us.volunteer.become_a_coach.description') + .text-center + = link_to registration_path(member_type: 'coach'), class: 'btn btn-primary btn-lg text-decoration-none' do + = t('members.sign_up_as_coach') + %i.fab.fa-github + +.py-4.py-lg-5.bg-light#become-an-organiser + .container + .row.mb-5 + .col + %h2.h1.text-center= t('pages.how_to_support_us.volunteer.become_an_organiser.title') + .row.justify-content-center + .col-12.col-lg-9 + %p.lead.text-center.mb-5 + = t('pages.how_to_support_us.volunteer.become_an_organiser.description') + .text-center + = mail_to 'hello@codebar.io', t('pages.how_to_support_us.volunteer.become_an_organiser.link'), subject: "I'd like to become a codebar organiser for [city] chapter", class: 'btn btn-primary btn-lg text-decoration-none' + +.py-4.py-lg-5#other-skills + .container + .row.mb-5 + .col + %h2.h1.text-center= t('pages.how_to_support_us.volunteer.volunteer.title') + .row.justify-content-center + .col-12.col-lg-9 + %p.lead.text-center.mb-5 + = t('pages.how_to_support_us.volunteer.volunteer.description') + .text-center + = mail_to 'hello@codebar.io', t('pages.how_to_support_us.volunteer.volunteer.link'), subject: "I'd like to volunteer with codebar", class: 'btn btn-primary btn-lg text-decoration-none' diff --git a/app/views/shared/_donation_platforms.html.haml b/app/views/shared/_donation_platforms.html.haml index 22e30fd16..2f25a8d24 100644 --- a/app/views/shared/_donation_platforms.html.haml +++ b/app/views/shared/_donation_platforms.html.haml @@ -12,7 +12,7 @@ .bg-white.rounded-top.p-3.d-flex.align-items-center = image_tag("logo.png", alt:t("donation_platforms.donation_form.image_alt"), class: "mw-100") .card-body - %h3.h6= link_to(t("donation_platforms.donation_form.title"), new_donation_path) + %h3.h6= link_to(t("donation_platforms.donation_form.title"), "https://codebar.enthuse.com/donate/") %p.card-text= t("donation_platforms.donation_form.text") .d-flex.col-sm-12.col-md-6.col-lg-3 .card.mt-3.mt-lg-0.shadow @@ -41,4 +41,4 @@ - if local_assigns[:with_button] .d-flex.justify-content-center.mt-4 - = link_to t("donation_platforms.link"), how_to_support_us_path, class: "btn btn-primary btn-lg my-4" + = link_to t("donation_platforms.link"), donate_path, class: "btn btn-primary btn-lg my-4" diff --git a/config/locales/admin.en.yml b/config/locales/admin.en.yml index 95f1a1eaa..9ea180d46 100644 --- a/config/locales/admin.en.yml +++ b/config/locales/admin.en.yml @@ -6,7 +6,7 @@ en: Eligible members are those who: 1. Have accepted the codebar Terms & Conditions 2. Are not banned from the platform - + Members who haven't accepted T&C or are banned do not receive invitations and cannot RSVP to workshops. shared: diff --git a/config/locales/de.yml b/config/locales/de.yml index 66d8e7a6e..68a0df925 100644 --- a/config/locales/de.yml +++ b/config/locales/de.yml @@ -127,6 +127,12 @@ de: blog: "Blog" codebar_stories: "codebar Stories" stats: "Stats" + how_to_support_us: "Uns unterstützen" + volunteer: "Ehrenamtlich" + fundraise: "Spenden sammeln" + donate: "Spenden" + buy_us_a_coffee: "Buy us a coffee" + job_board: "Jobbörse" dashboard: join_workshops_in: "Komm zu unseren kostenlosen Workshops in" workshops_goal: "um sich mit den Programmier- und Webentwicklungsgrundlagen vertraut zu machen." diff --git a/config/locales/en.yml b/config/locales/en.yml index 07c7d781b..60e4f3d2b 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -216,6 +216,12 @@ en: stats: "Stats" cookies: "Cookies" privacy-policy: "Privacy Policy" + how_to_support_us: "How to support us" + volunteer: "Volunteer" + fundraise: "Fundraise" + donate: "Donate" + buy_us_a_coffee: "Buy us a coffee" + job_board: "Job Board" contact_preferences: updated: "Contact preferences updated" diff --git a/config/locales/en_AU.yml b/config/locales/en_AU.yml index d72f2e670..42e0bd5d9 100644 --- a/config/locales/en_AU.yml +++ b/config/locales/en_AU.yml @@ -118,6 +118,12 @@ en-AU: blog: "Blog" codebar_stories: "codebar Stories" stats: "Stats" + how_to_support_us: "How to support us" + volunteer: "Volunteer" + fundraise: "Fundraise" + donate: "Donate" + buy_us_a_coffee: "Buy us a coffee" + job_board: "Job Board" dashboard: join_workshops_in: "Join our free workshops in" workshops_goal: "to get to grips with the basics of programming and web development." diff --git a/config/locales/en_GB.yml b/config/locales/en_GB.yml index 16bfdd123..3b02e951e 100644 --- a/config/locales/en_GB.yml +++ b/config/locales/en_GB.yml @@ -118,6 +118,12 @@ en-GB: blog: "Blog" codebar_stories: "codebar Stories" stats: "Stats" + how_to_support_us: "How to support us" + volunteer: "Volunteer" + fundraise: "Fundraise" + donate: "Donate" + buy_us_a_coffee: "Buy us a coffee" + job_board: "Job Board" dashboard: join_workshops_in: "Join our free workshops in" workshops_goal: "to get to grips with the basics of programming and web development." diff --git a/config/locales/en_US.yml b/config/locales/en_US.yml index 809ecf588..af0b48451 100644 --- a/config/locales/en_US.yml +++ b/config/locales/en_US.yml @@ -118,6 +118,12 @@ en-US: blog: "Blog" codebar_stories: "codebar Stories" stats: "Stats" + how_to_support_us: "How to support us" + volunteer: "Volunteer" + fundraise: "Fundraise" + donate: "Donate" + buy_us_a_coffee: "Buy us a coffee" + job_board: "Job Board" dashboard: join_workshops_in: "Join our free workshops in" workshops_goal: "to get to grips with the basics of programming and web development." diff --git a/config/locales/fi.yml b/config/locales/fi.yml index 8d0f0e63c..c2c4abac4 100644 --- a/config/locales/fi.yml +++ b/config/locales/fi.yml @@ -118,6 +118,12 @@ fi: blog: "Blog" codebar_stories: "codebar Stories" stats: "Stats" + how_to_support_us: "Kuinka tukea meitä" + volunteer: "Vapaaehtoinen" + fundraise: "Kerää varoja" + donate: "Lahjoita" + buy_us_a_coffee: "Buy us a coffee" + job_board: "Työpaikat" dashboard: join_workshops_in: "Join our free workshops in" workshops_goal: "to get to grips with the basics of programming and web development." diff --git a/config/locales/fr.yml b/config/locales/fr.yml index 3aca5e9c9..418a19da4 100644 --- a/config/locales/fr.yml +++ b/config/locales/fr.yml @@ -117,6 +117,12 @@ fr: blog: "Blog" codebar_stories: "codebar Stories" stats: "Statistiques" + how_to_support_us: "Comment nous soutenir" + volunteer: "Bénévole" + fundraise: "Collecte de fonds" + donate: "Donner" + buy_us_a_coffee: "Buy us a coffee" + job_board: "Offres d'emploi" dashboard: join_workshops_in: "Rejoignez nos ateliers gratuit" workshops_goal: "pour apprendre les bases de la programmation et du développement web." diff --git a/config/locales/no.yml b/config/locales/no.yml index 6581708ab..3622b0442 100644 --- a/config/locales/no.yml +++ b/config/locales/no.yml @@ -118,6 +118,12 @@ blog: "Blog" codebar_stories: "codebar Stories" stats: "Stats" + how_to_support_us: "Hvordan støtte oss" + volunteer: "Frivillig" + fundraise: "Samle inn midler" + donate: "Doner" + buy_us_a_coffee: "Buy us a coffee" + job_board: "Jobbørs" dashboard: join_workshops_in: "Join our free workshops in" workshops_goal: "to get to grips with the basics of programming and web development." diff --git a/config/routes.rb b/config/routes.rb index 37ee1c2aa..a0c5e29b4 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -176,7 +176,10 @@ get 'cookie-policy' => 'pages#show', id: 'cookie-policy' get 'privacy-policy' => 'pages#show', id: 'privacy-policy' get 'breach-code-of-conduct' => 'pages#show', id: 'breach-code-of-conduct' - get 'how-to-support-us' => 'pages#show', id: 'how-to-support-us' + get 'how-to-support-us' => redirect('/volunteer') + get 'volunteer' => 'pages#show', id: 'volunteer' + get 'fundraise' => 'pages#show', id: 'fundraise' + get 'donate' => 'pages#show', id: 'donate' get 'codebar-stories-podcast' => 'pages#show', id: 'codebar-stories-podcast' get ':id' => 'chapter#show', as: :chapter