class Slash3D::Iframe
Represent an Iframe
to build a model with 3D Slash
Constants
- LANGUAGES
Attributes
lang[R]
redirect_url[R]
source[R]
Public Class Methods
new(content_id: nil, source: nil, redirect_url: nil, lang: nil)
click to toggle source
# File lib/slash3d/iframe.rb, line 12 def initialize(content_id: nil, source: nil, redirect_url: nil, lang: nil) @content_id = content_id @source = source @redirect_url = redirect_url @lang = lang end
Public Instance Methods
content_id()
click to toggle source
# File lib/slash3d/iframe.rb, line 22 def content_id @content_id ||= SecureRandom.hex(32) end
url()
click to toggle source
# File lib/slash3d/iframe.rb, line 26 def url parameters = { partner: Slash3D.configuration.partner_code, content: content_id, src: source, redirect: redirect_url, sign: signature, lang: lang_number, parent: 1, } "https://www.3dslash.net/slash.php?" + parameters.to_query end
Private Instance Methods
lang_number()
click to toggle source
# File lib/slash3d/iframe.rb, line 42 def lang_number LANGUAGES[lang] || 'en' end
signature()
click to toggle source
# File lib/slash3d/iframe.rb, line 46 def signature signature_values = [ Slash3D.configuration.api_key, Slash3D.configuration.partner_code, content_id, source, redirect_url, ] Digest::SHA256.hexdigest(signature_values.join("|")) end