This repository has been archived by the owner on May 4, 2019. It is now read-only.
/
index.html
136 lines (98 loc) · 7.18 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
<!DOCTYPE html>
<html>
<head>
<meta charset='utf-8' />
<meta http-equiv="X-UA-Compatible" content="chrome=1" />
<meta name="description" content="Flickrie : An object-oriented wrapper for the Flickr API." />
<link rel="stylesheet" type="text/css" media="screen" href="stylesheets/stylesheet.css">
<title>Flickrie</title>
</head>
<body>
<!-- HEADER -->
<div id="header_wrap" class="outer">
<header class="inner">
<a id="forkme_banner" href="https://github.com/janko-m/flickrie">View on GitHub</a>
<h1 id="project_title">Flickrie</h1>
<h2 id="project_tagline">An object-oriented wrapper for the Flickr API.</h2>
</header>
</div>
<!-- MAIN CONTENT -->
<div id="main_content_wrap" class="outer">
<section id="main_content" class="inner">
<h3>About</h3>
<p>Your first thought is probably:</p>
<blockquote>There is already a library for that, you moron. It's called 'flickraw', and it's quite popular.</blockquote>
<p>Well, I'm here to show you in which ways I think this library is better.</p>
<p>Firstly, this library is object-oriented (unlike flickraw). This is a big advantage, because your code will be much more elegant and prettier. This also makes room for smart methods that Flickr doesn't provide.</p>
<p>Secondly, this library parses the response from Flickr. I'll demonstrate what I mean by this:</p>
Not parsed:
<div class="highlight">
<pre><code><span class="n">photo</span><span class="o">.</span><span class="n">updated_at</span> <span class="c1">#=> "2011-03-20 17:00:05"</span></code></pre>
</div>
Parsed:
<div class="highlight">
<pre><code><span class="n">photo</span><span class="o">.</span><span class="n">updated_at</span> <span class="c1">#=> 2011-03-20 17:00:05 +0000</span></code></pre>
</div>
<p>See the difference? One is a <code>String</code>, and the other is a <code>Time</code> object. A developer would probably want the <code>Time</code> object, because then he can work with that. The goal is to take care of these little things internally, so that the developer can concentrate on more important things.</p>
<h3>Installation</h3>
<pre><code>$ gem install flickrie
</code></pre>
<h3>Usage</h3>
<p>Single photo:</p>
<div class="highlight">
<pre><span class="n">photo</span> <span class="o">=</span> <span class="no">Flickrie</span><span class="o">.</span><span class="n">get_photo_info</span><span class="p">(</span><span class="mi">1337</span><span class="p">)</span> <span class="c1">#=> 1337 is the photo's ID</span>
<span class="n">photo</span><span class="o">.</span><span class="n">title</span> <span class="c1">#=> "Rock climbing"</span>
<span class="n">photo</span><span class="o">.</span><span class="n">has_people?</span> <span class="c1">#=> true</span>
<span class="n">photo</span><span class="o">.</span><span class="n">updated_at</span> <span class="c1">#=> 2012-06-01 23:27:40 +0200</span>
<span class="n">photo</span><span class="o">.</span><span class="n">views_count</span> <span class="c1">#=> 4</span>
</pre>
</div>
<p>Multiple photos:</p>
<div class="highlight">
<pre><span class="n">photos</span> <span class="o">=</span> <span class="no">Flickrie</span><span class="o">.</span><span class="n">photos_from_set</span><span class="p">(</span><span class="mi">28473</span><span class="p">,</span> <span class="ss">:include_sizes</span> <span class="o">=></span> <span class="kp">true</span><span class="p">)</span>
<span class="n">photo</span> <span class="o">=</span> <span class="n">photos</span><span class="o">.</span><span class="n">first</span>
<span class="n">photo</span><span class="o">.</span><span class="n">small</span><span class="p">(</span><span class="mi">320</span><span class="p">)</span><span class="o">.</span><span class="n">source_url</span> <span class="c1">#=></span>
</pre>
</div>
<p><img src="http://farm8.staticflickr.com/7094/7316710626_cf80b743d9_n.jpg" alt="painting"></p>
<div class="highlight">
<pre><span class="n">photo</span><span class="o">.</span><span class="n">medium</span><span class="p">(</span><span class="mi">500</span><span class="p">)</span><span class="o">.</span><span class="n">source_url</span> <span class="c1">#=></span>
</pre>
</div>
<p><img src="http://farm8.staticflickr.com/7094/7316710626_cf80b743d9.jpg" alt="painting"></p>
<p>Videos:</p>
<div class="highlight">
<pre><span class="n">video</span> <span class="o">=</span> <span class="no">Flickrie</span><span class="o">.</span><span class="n">get_video_info</span><span class="p">(</span><span class="mi">42374</span><span class="p">)</span>
<span class="n">video</span><span class="o">.</span><span class="n">duration</span> <span class="c1">#=> 34</span>
<span class="n">video</span><span class="o">.</span><span class="n">ready?</span> <span class="c1">#=> true</span>
</pre>
</div>
<p>Pagination:</p>
<div class="highlight">
<pre><span class="n">photos</span> <span class="o">=</span> <span class="no">Flickrie</span><span class="o">.</span><span class="n">photos_from_set</span><span class="p">(</span><span class="mi">32445</span><span class="p">,</span> <span class="ss">:per_page</span> <span class="o">=></span> <span class="mi">20</span><span class="p">,</span> <span class="ss">:page</span> <span class="o">=></span> <span class="mi">3</span><span class="p">)</span>
<span class="n">photos</span><span class="o">.</span><span class="n">per_page</span> <span class="c1">#=> 20</span>
<span class="n">photos</span><span class="o">.</span><span class="n">current_page</span> <span class="c1">#=> 3</span>
<span class="n">photos</span><span class="o">.</span><span class="n">total_pages</span> <span class="c1">#=> 7</span>
<span class="n">photos</span><span class="o">.</span><span class="n">total_entries</span> <span class="c1">#=> 140</span>
</pre>
</div>
<p>Sets:</p>
<div class="highlight">
<pre><span class="n">set</span> <span class="o">=</span> <span class="no">Flickrie</span><span class="o">.</span><span class="n">get_set_info</span><span class="p">(</span><span class="mi">23345</span><span class="p">)</span>
<span class="n">set</span><span class="o">.</span><span class="n">created_at</span> <span class="c1">#=> 2012-06-01 23:27:40 +0200</span>
<span class="n">set</span><span class="o">.</span><span class="n">photos</span> <span class="c1"># makes an HTTP request</span>
<span class="n">set</span><span class="o">.</span><span class="n">photos</span><span class="o">.</span><span class="n">first</span><span class="o">.</span><span class="n">restricted?</span> <span class="c1">#=> true</span>
</pre>
</div>
<p>These are just some of the features. If you like what you see, just download the gem and have fun. Be sure to visit the <a href="https://github.com/janko-m/flickrie">GitHub page</a> for additional links and more examples. Waiting for your feedback :)</p>
</section>
</div>
<!-- FOOTER -->
<div id="footer_wrap" class="outer">
<footer class="inner">
<p class="copyright">Flickrie maintained by <a href="https://github.com/janko-m">janko-m</a></p>
<p>Published with <a href="http://pages.github.com">GitHub Pages</a></p>
</footer>
</div>
</body>
</html>