Method: GrandCloud::Video#publish

Defined in:
lib/grand_cloud/video.rb

#publish(id, programId) ⇒ Object



160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
# File 'lib/grand_cloud/video.rb', line 160

def publish id, programId
  publish_attributes = %w(vid ku6vid publishedJavaScript publishedHtml publishedSwf)

  json = common_request do 
    Base.send_request({
      :method => 'get',
      :uri => "/video/#{id}/publication",
      :additional_params => {
        :ProgramId => programId
      }
    })
  end

  json = json['publication'].select {|k, v| publish_attributes.include?(k) }.inject({}) do |r, (k, v)|
    r.merge!(k => (v.is_a?(Hash) ? v['value'] : v))
  end
  wrap_object(json)
rescue Error::ResponseError => e
  GrandCloud.logger.error(e)
  return nil
end