module RuCaptcha class CaptchaController < ActionController::Base def index return head :ok if request.head? headers['Cache-Control'] = 'no-cache, no-store, max-age=0, must-revalidate' headers['Pragma'] = 'no-cache' if params[:t].present? && (!params[:t].is_i? rescue true) render :body => nil, :status => 404 and return end if params[:format] == "wav" and RuCaptcha.espeak? data = generate_speech_rucaptcha opts = { disposition: 'inline', type: 'audio/wav' } elsif params[:format].blank? || params[:format] == "gif" data = generate_rucaptcha opts = { disposition: 'inline', type: 'image/gif' } else render :body => nil, :status => 404 and return end send_data data, opts end end end