require 'sinatra' require 'mailgun-ruby' require 'envyable' # env.yml mit den unten verwendeten ENV anleg Envyable.load("#{File.dirname(__FILE__)}/config/env.yml") helpers do def repost(adresse) mg_client = Mailgun::Client.new(ENV['MG_API_KEY']) message_params = { from: ENV['MG_SENDER'], to: adresse, subject: 'Zugangsdaten zum Intranet', text: "Jemand hat die Zugangsdaten zum Intranet für diese Adresse angefordert.\n\nBenutzername und Passwort:\n#{ENV['MG_USER']}\n#{ENV['MG_PASSWORD']}\n\nEinen schönen Tag noch und bis zum nächsten Mal." } mg_client.send_message(ENV['MG_DOMAIN'], message_params).to_h! puts "Nachricht an #{adresse} verschickt" end end get '/' do <<-eos Zugangsdaten vergessen

Zugangsdaten zum Intranet vergessen?

eos end post "/repost" do adresse = params["email"] domain = adresse.scan(/(?<=@)([^\s]+)(?=\s|$)/).join if ENV['MG_ZUL_DOMAIN']== domain repost(adresse) puts "Nachricht an #{adresse} verschickt" <<-eos Zugangsdaten verschickt

Zugangsdaten verschickt, bis zum nächsten Mal.

eos else puts "Fehler: #{adresse} unzulässig" <<-eos Fehler!

Nur Dienstadressen sind zulässig.

eos end end