Please disable Adblockers and enable JavaScript for domain CEWebS.cs.univie.ac.at! We have NO ADS, but they may interfere with some of our course material.
Name: examples/flickr/Helpers/flickr.rb
1: | require 'digest/md5' |
2: | |
3: | class FlickrHelper |
4: | def initialize(dir) |
5: | @api_key = File.read(dir + '/flickr.key').strip |
6: | @api_secret = File.read(dir + '/flickr.secret').strip |
7: | if File.exist?(dir + 'flickr.token') |
8: | @auth_token = File.read(dir + 'flickr.token').strip |
9: | else |
10: | @auth_token = "simulated" |
11: | end |
12: | end |
13: | |
14: | attr_reader :api_key, :api_secret, :auth_token |
15: | |
16: | def sign(ary,names=[]) |
17: | sig = @api_secret |
18: | ary.sort{|a,b|a.name<=>b.name}.each do |e| |
19: | if e.class == Riddl::Parameter::Simple |
20: | if names.empty? |
21: | sig += "#{e.name}#{e.value}" |
22: | else |
23: | sig += "#{e.name}#{e.value}" if names.include?(e.name) |
24: | end |
25: | end |
26: | end |
27: | Digest::MD5.hexdigest(sig) |
28: | end |
29: | end |