52 lines
1.4 KiB
Ruby
52 lines
1.4 KiB
Ruby
require 'httparty'
|
|
class Store
|
|
include HTTParty
|
|
|
|
format :json
|
|
base_uri STORE_CONFIG[:store_settings]["api_url"]
|
|
|
|
def initialize(site_id,site_token,api_key)
|
|
@options_for_get = {
|
|
headers: {
|
|
"Authorization" => api_key,
|
|
"X-SiteToken" => site_token,
|
|
"X-SiteId" => site_id,
|
|
"Content-Type" => "application/json",
|
|
'Accept' => 'application/json'
|
|
}
|
|
}
|
|
|
|
@options_for_client = {
|
|
headers: {
|
|
"Authorization" => api_key,
|
|
"Content-Type" => "application/json",
|
|
'Accept' => 'application/json'
|
|
}
|
|
}
|
|
end
|
|
|
|
def templates(options={})
|
|
options = @options_for_get
|
|
self.class.get('/templates', options)
|
|
end
|
|
|
|
def get_template(id)
|
|
options = @options_for_get
|
|
self.class.get("/templates/#{id}", options)
|
|
end
|
|
|
|
def extensions(options={})
|
|
options = @options_for_get
|
|
self.class.get('/extensions', options)
|
|
end
|
|
|
|
def get_extension(id)
|
|
options = @options_for_get
|
|
self.class.get("/extensions/#{id}", options)
|
|
end
|
|
|
|
def post_client(site_id,site_token,site_name,url,university,department,email,country)
|
|
options = @options_for_client.merge({ :body => {:site_name => site_name, :site_id => site_id,:url => url, :university => university, :department => department, :email => email, :country => country, :site_token => site_token}.to_json })
|
|
self.class.post('/clients', options )
|
|
end
|
|
end |