mirror of
https://github.com/TracksApp/tracks.git
synced 2025-12-18 00:00:12 +01:00
small refactorings
This commit is contained in:
parent
26a27e5cfe
commit
ccdaae038b
4 changed files with 57 additions and 63 deletions
|
|
@ -33,17 +33,12 @@ class IntegrationsController < ApplicationController
|
|||
end
|
||||
|
||||
def cloudmailin
|
||||
# verify cloudmailin signature
|
||||
provided = request.request_parameters.delete(:signature)
|
||||
signature = Digest::MD5.hexdigest(request.request_parameters.sort{|a,b| a[0].to_s <=> b[0].to_s}.map{|k,v| v}.join + SITE_CONFIG['cloudmailin'])
|
||||
|
||||
# if signature does not match, return 403
|
||||
if provided != signature
|
||||
if !verify_cloudmailin_signature
|
||||
render :text => "Message signature verification failed.", :status => 403
|
||||
return false
|
||||
end
|
||||
|
||||
if MessageGateway::receive(Mail.new(params[:message]))
|
||||
if process_message(params[:message])
|
||||
render :text => 'success', :status => 200
|
||||
else
|
||||
render :text => "No user found or other error", :status => 404
|
||||
|
|
@ -51,6 +46,16 @@ class IntegrationsController < ApplicationController
|
|||
end
|
||||
|
||||
private
|
||||
|
||||
def process_message(message)
|
||||
MessageGateway::receive(Mail.new(message))
|
||||
end
|
||||
|
||||
def verify_cloudmailin_signature
|
||||
provided = request.request_parameters.delete(:signature)
|
||||
signature = Digest::MD5.hexdigest(request.request_parameters.sort{|a,b| a[0].to_s <=> b[0].to_s}.map{|k,v| v}.join + SITE_CONFIG['cloudmailin'])
|
||||
return provided == signature
|
||||
end
|
||||
|
||||
def get_applescript(partial_name)
|
||||
context = current_user.contexts.find params[:context_id]
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue