Class: SmugMug

Inherits:
Object
  • Object
show all
Defined in:
lib/mugs.rb

Instance Method Summary collapse

Constructor Details

#initializeSmugMug

Returns a new instance of SmugMug.



8
9
10
11
12
13
# File 'lib/mugs.rb', line 8

def initialize
  @end_point = "http://api.smugmug.com/hack/rest/1.2.0/"
  @albums = Array.new
  @images = Array.new
  @image_urls = Array.new
end

Instance Method Details

#albums_get(nickname) ⇒ Object



22
23
24
25
26
27
28
29
30
31
32
33
# File 'lib/mugs.rb', line 22

def albums_get(nickname)
  uri = "#{@end_point}?method=smugmug.albums.get&SessionID=#{@session_id}&NickName=#{nickname}" 
  content = Net::HTTP.get URI.parse(uri)
  doc = Document.new content
  doc.root.elements.each("Albums/Album") do |album| 
    a = Album.new
    a.id = album.attributes["id"]
    a.title = album.attributes["Title"]
    @albums.push a
  end
  return @albums
end

#images_get(album_id) ⇒ Object



35
36
37
38
39
40
41
42
43
44
45
# File 'lib/mugs.rb', line 35

def images_get(album_id)
  uri = "#{@end_point}?method=smugmug.images.get&SessionID=#{@session_id}&AlbumID=#{album_id}" 
  content = Net::HTTP.get URI.parse(uri)
  doc = Document.new content
  doc.root.elements.each("Images/Image") do |image| 
    i = Image.new
    i.id = image.attributes["id"]
    @images.push i
  end
  return @images
end

#images_get_urls(image_id) ⇒ Object



47
48
49
50
51
52
53
54
55
56
57
58
59
60
# File 'lib/mugs.rb', line 47

def images_get_urls(image_id)
  uri = "#{@end_point}?method=smugmug.images.getURLs&SessionID=#{@session_id}&ImageID=#{image_id}" 
  content = Net::HTTP.get URI.parse(uri)
  doc = Document.new content
  i = ImageURLs.new
  i.id = image_id
  i.album_url = doc.root.elements["Image"].attributes["AlbumURL"]
  i.tiny_url = doc.root.elements["Image"].attributes["TinyURL"]
  i.thumb_url = doc.root.elements["Image"].attributes["ThumbURL"]
  i.small_url = doc.root.elements["Image"].attributes["SmallURL"]
  i.medium_url = doc.root.elements["Image"].attributes["MediumURL"]
  i.large_url = doc.root.elements["Image"].attributes["LargeURL"]
  return i
end

#login_anonymously(key) ⇒ Object



15
16
17
18
19
20
# File 'lib/mugs.rb', line 15

def (key)
  uri = "#{@end_point}?method=smugmug.login.anonymously&APIKey=#{key}" 
  content = Net::HTTP.get URI.parse(uri)
  doc = Document.new content 
  @session_id = doc.root.elements["Login/Session"].attributes['id']
end