2014-10-27 11:07:01 +00:00
|
|
|
require "uri"
|
|
|
|
require "net/http"
|
|
|
|
class Admin::StoreController < OrbitAdminController
|
|
|
|
layout false
|
|
|
|
before_action :store_url
|
|
|
|
def check_credentials
|
|
|
|
if current_site.store_token.nil?
|
|
|
|
render :json => {"success" => false}.to_json
|
|
|
|
else
|
|
|
|
render :json => {"success" => true}.to_json
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
def register_form
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
def template_store
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
def check_permissions
|
|
|
|
params_to_send = {'store_token' => current_site.store_token}
|
|
|
|
uri = URI.parse(@store_url)
|
|
|
|
http = Net::HTTP.new(uri.host,uri.port)
|
|
|
|
request = Net::HTTP::Get.new("/site/permissions")
|
|
|
|
request.body = params_to_send.to_query
|
|
|
|
response = http.request(request)
|
|
|
|
data = JSON.parse(response.body)
|
|
|
|
if !data["success"] && data["error"] == "INVALID_SITE_TOKEN"
|
|
|
|
current_site.store_token = nil
|
|
|
|
current_site.save
|
|
|
|
end
|
|
|
|
render :json => data.to_json
|
|
|
|
end
|
|
|
|
|
|
|
|
def register_site
|
|
|
|
params_to_send = {'site_domain' => request.host_with_port, 'admin_email' => params["email"], "site_token" => current_site.uid}
|
|
|
|
uri = URI.parse(@store_url)
|
|
|
|
http = Net::HTTP.new(uri.host,uri.port)
|
|
|
|
request = Net::HTTP::Post.new("/register/site")
|
|
|
|
request.body = params_to_send.to_query
|
|
|
|
response = http.request(request)
|
|
|
|
data = JSON.parse(response.body)
|
|
|
|
render :json => data.to_json
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
private
|
|
|
|
def store_url
|
2014-10-27 11:10:42 +00:00
|
|
|
@store_url = "http://store.tp.rulingcom.com"
|
2014-10-27 11:07:01 +00:00
|
|
|
end
|
|
|
|
end
|