Sha256: 4db581b9b811e21f115dfdae0f2032fe1da907674079e9470d3e65fab3cb06a2

Contents?: true

Size: 1.03 KB

Versions: 5

Compression:

Stored size: 1.03 KB

Contents

module Lapse
  class Client
    # Client methods for working with clips
    module Clips
      def all_clips
        get('clips').body
      end

      def featured_clips
        get('clips/featured').body
      end

      def clip(clip_id, slug = false)
        params = {}
        params[:slug] = true if slug
        get("clips/#{clip_id}", params).body
      end

      def create_clip
        post('clips').body
      end

      def update_clip(clip_id, options)
        params = { clip: options }
        patch("clips/#{clip_id}", params).body
      end

      def submit_frames(clip_id, frame_ids)
        params = {
          :frame_ids => frame_ids
        }
        post("clips/#{clip_id}/submit_frames", params).body
      end

      def publish_clip(clip_id, title = nil)
        params = {
          :clip => {
            :title => title
          }
        }
        post("clips/#{clip_id}/publish", params).body
      end

      def destroy_clip(clip_id)
        boolean_from_response(:delete, "clips/#{clip_id}")
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
lapse-0.0.20 lib/lapse/client/clips.rb
lapse-0.0.19 lib/lapse/client/clips.rb
lapse-0.0.18 lib/lapse/client/clips.rb
lapse-0.0.17 lib/lapse/client/clips.rb
lapse-0.0.16 lib/lapse/client/clips.rb