Class: Flickr::Person

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

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(flickr, nsid, username) ⇒ Person

Returns a new instance of Person.



265
266
267
268
269
270
271
# File 'lib/flickr/base.rb', line 265

def initialize(flickr, nsid, username)
  @flickr = flickr
  @nsid = nsid
  @username = username
  @info_fetched = false
  @upload_fetched = false
end

Instance Attribute Details

#bandwidth_maxObject

Returns the value of attribute bandwidth_max.



259
260
261
# File 'lib/flickr/base.rb', line 259

def bandwidth_max
  @bandwidth_max
end

#bandwidth_usedObject

Returns the value of attribute bandwidth_used.



259
260
261
# File 'lib/flickr/base.rb', line 259

def bandwidth_used
  @bandwidth_used
end

#familyObject

Returns the value of attribute family.



259
260
261
# File 'lib/flickr/base.rb', line 259

def family
  @family
end

#filesize_maxObject

Returns the value of attribute filesize_max.



259
260
261
# File 'lib/flickr/base.rb', line 259

def filesize_max
  @filesize_max
end

#friendObject

Returns the value of attribute friend.



259
260
261
# File 'lib/flickr/base.rb', line 259

def friend
  @friend
end

#iconserverObject

Returns the value of attribute iconserver.



259
260
261
# File 'lib/flickr/base.rb', line 259

def iconserver
  @iconserver
end

#ignoredObject

Returns the value of attribute ignored.



259
260
261
# File 'lib/flickr/base.rb', line 259

def ignored
  @ignored
end

#info_fetchedObject

Returns the value of attribute info_fetched.



259
260
261
# File 'lib/flickr/base.rb', line 259

def info_fetched
  @info_fetched
end

#isadminObject

Returns the value of attribute isadmin.



259
260
261
# File 'lib/flickr/base.rb', line 259

def isadmin
  @isadmin
end

#isproObject

Returns the value of attribute ispro.



259
260
261
# File 'lib/flickr/base.rb', line 259

def ispro
  @ispro
end

#locationObject

Returns the value of attribute location.



259
260
261
# File 'lib/flickr/base.rb', line 259

def location
  @location
end

#mbox_sha1sumObject

Returns the value of attribute mbox_sha1sum.



259
260
261
# File 'lib/flickr/base.rb', line 259

def mbox_sha1sum
  @mbox_sha1sum
end

#nsidObject

Returns the value of attribute nsid.



259
260
261
# File 'lib/flickr/base.rb', line 259

def nsid
  @nsid
end

#photos_countObject

Returns the value of attribute photos_count.



259
260
261
# File 'lib/flickr/base.rb', line 259

def photos_count
  @photos_count
end

#photos_firstdateObject

Returns the value of attribute photos_firstdate.



259
260
261
# File 'lib/flickr/base.rb', line 259

def photos_firstdate
  @photos_firstdate
end

#photos_firstdatetakenObject

Returns the value of attribute photos_firstdatetaken.



259
260
261
# File 'lib/flickr/base.rb', line 259

def photos_firstdatetaken
  @photos_firstdatetaken
end

#photosurlObject

Returns the value of attribute photosurl.



259
260
261
# File 'lib/flickr/base.rb', line 259

def photosurl
  @photosurl
end

#profileurlObject

Returns the value of attribute profileurl.



259
260
261
# File 'lib/flickr/base.rb', line 259

def profileurl
  @profileurl
end

#realnameObject

Returns the value of attribute realname.



259
260
261
# File 'lib/flickr/base.rb', line 259

def realname
  @realname
end

#upload_fetchedObject

Returns the value of attribute upload_fetched.



259
260
261
# File 'lib/flickr/base.rb', line 259

def upload_fetched
  @upload_fetched
end

#usernameObject

Returns the value of attribute username.



259
260
261
# File 'lib/flickr/base.rb', line 259

def username
  @username
end

Class Method Details

.from_xml(xml, flickr = nil) ⇒ Object

I think this will define a class method. You can’t use Flickr::Person.from_xml and if you just say Person.from_xml, it can’t resolve Flickr::Person::Person



283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
# File 'lib/flickr/base.rb', line 283

def self.from_xml(xml,flickr=nil)
  els = xml.elements
  att = xml.root.attributes

  nsid = cond_attr(att,'nsid')
  username = cond_text(els,'/person/username')

  p = flickr.person_cache_lookup(nsid) if flickr
  p ||= Flickr::Person.new(flickr,nsid,username)

  p.username = username
  p.isadmin = cond_attr(att,'isadmin') &&
    cond_attr(att,'isadmin') == '1'
    p.ispro = cond_attr(att,'ispro') &&
    cond_attr(att,'ispro') == '1'
    p.iconserver = cond_attr(att,'iconserver') &&
    cond_attr(att,'iconserver').to_i
  p.realname = cond_text(els,'/person/realname')
  p.mbox_sha1sum = cond_text(els,'/person/mbox_sha1sum')
  p.location = cond_text(els,'/person/location')
  p.photosurl = cond_text(els,'/person/photosurl')
  p.profileurl = cond_text(els,'/person/profileurl')
  tstr = cond_text(els,'/person/photos/firstdate')
  p.photos_firstdate = Time.at(tstr.to_i) if tstr
  tstr = cond_text(els, '/person/photos/firstdatetaken')
  p.photos_firstdatetaken = Time.gm(*ParseDate.parsedate(tstr)) if
  tstr
  p.photos_count = cond_text(els,'/person/photos/count')
  p.photos_count = p.photos_count if p.photos_count

  p.info_fetched = true if p.photos_count

  if els['/user/bandwidth']
    att = els['/user/bandwidth'].attributes
    p.bandwidth_max = cond_attr(att,'max') &&
      cond_attr(att,'max').to_i
    p.bandwidth_used = cond_attr(att,'used') &&
      cond_attr(att,'used').to_i
  end
  if els['/user/filesize']
    att = els['/user/filesize'].attributes
    p.filesize_max = cond_attr(att,'max') &&
      cond_attr(att,'max').to_i
  end

  p.upload_fetched = true if p.bandwidth_max

  flickr.person_cache_store(p) if flickr
  return p
end

Instance Method Details

#full_infoObject



273
274
275
# File 'lib/flickr/base.rb', line 273

def full_info()
  self.info_fetched ? self : @flickr.people.getInfo(self)
end

#upload_statusObject



276
277
# File 'lib/flickr/base.rb', line 276

def upload_status() self.upload_fetched ? self :
@flickr.people.getUploadStatus(self) end