Merge lp:~ronnie.vd.c/loco-team-portal/713727_flickr into lp:loco-team-portal

Proposed by Ronnie
Status: Merged
Approved by: Michael Hall
Approved revision: 387
Merged at revision: 391
Proposed branch: lp:~ronnie.vd.c/loco-team-portal/713727_flickr
Merge into: lp:loco-team-portal
Diff against target: 180 lines (+99/-46)
3 files modified
loco_directory/media/js/jquery-flickr.js (+92/-0)
loco_directory/templates/events/global_event_detail.inc.html (+4/-22)
loco_directory/templates/teams/team_detail.html (+3/-24)
To merge this branch: bzr merge lp:~ronnie.vd.c/loco-team-portal/713727_flickr
Reviewer Review Type Date Requested Status
Michael Hall (community) Approve
Review via email: mp+48714@code.launchpad.net
To post a comment you must log in.
387. By Ronnie

some other cleanups

Revision history for this message
Michael Hall (mhall119) wrote :

Looks good.

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== added file 'loco_directory/media/js/jquery-flickr.js'
2--- loco_directory/media/js/jquery-flickr.js 1970-01-01 00:00:00 +0000
3+++ loco_directory/media/js/jquery-flickr.js 2011-02-05 21:44:12 +0000
4@@ -0,0 +1,92 @@
5+/*
6+ * jQuery Flickr plugin 0.1.0
7+ * Requires jQuery 1.4.2
8+ *
9+ * Copyright 2011, Ronnie van den Crommenacker
10+ * Dual licensed under the MIT or GPL Version 2 licenses.
11+ * http://jquery.org/license
12+ */
13+
14+(function ($) {
15+ $.fn.extend({
16+ //This is where you write your plugin's name
17+ flickr: function (options) {
18+ var defaults = {
19+ key: null,
20+ id: null,
21+ tag: null,
22+ amount: 16,
23+ lightbox_class: 'lightbox'
24+ },
25+ group = false,
26+ html_elements = this,
27+ data = {
28+ format: 'json',
29+ method: 'flickr.photos.search',
30+ api_key: options.key,
31+ per_page: options.amount,
32+ jsoncallback: ''
33+ };
34+ options = $.extend(defaults, options);
35+
36+ function parseResponse(data) {
37+ var images = [];
38+ if (data.stat === 'ok') {
39+ $.each(data.photos.photo, function (i, rPhoto) {
40+ var basePhotoURL = 'http://farm' + rPhoto.farm + '.static.flickr.com/'
41+ + rPhoto.server + '/' + rPhoto.id + '_' + rPhoto.secret,
42+ image = $('<img>').attr({
43+ src: basePhotoURL + '_s.jpg',
44+ alt: rPhoto.title
45+ }),
46+ link = $('<a>').addClass(options.lightbox_class).attr({
47+ title: rPhoto.title,
48+ href: basePhotoURL + '.jpg'
49+ }).append(image);
50+ images.push(link);
51+ });
52+ $(html_elements).each(function (i, html_element) {
53+ var index;
54+ for (index in images) {
55+ if (images.hasOwnProperty(index)) {
56+ $(html_element).append(images[index]);
57+ }
58+ }
59+ });
60+ // Reinitiale the lightbox with the new photo's
61+ $('a.' + options.lightbox_class).lightBox();
62+ } else {
63+ // Error: Unknown user
64+ if (data.code === 2 && !group) {
65+ // If the user does not exists, maybe its a group id, try that one.
66+ group = true;
67+ data = {
68+ format: 'json',
69+ method: 'flickr.photos.search',
70+ api_key: options.key,
71+ group_id: options.id,
72+ per_page: options.amount,
73+ };
74+ $.getJSON('http://api.flickr.com/services/rest/?' + $.param(data) + '&jsoncallback=?', parseResponse);
75+ } else {
76+ // Show the error message
77+ $(html_elements).each(function (i, html_element) {
78+ $(html_element).append($('<p>').text(data.message));
79+ });
80+ }
81+ }
82+ }
83+
84+ if (options.id) {
85+ data.user_id = options.id;
86+ } else if (options.tag) {
87+ data.tags = options.tag;
88+ }
89+
90+ $.getJSON('http://api.flickr.com/services/rest/?' + $.param(data) + '&jsoncallback=?', parseResponse);
91+
92+ // Return the html objects untouched (the photo's are added when loaded)
93+ return this;
94+ } // End of flickr command
95+ });
96+}(jQuery));
97
98=== modified file 'loco_directory/templates/events/global_event_detail.inc.html'
99--- loco_directory/templates/events/global_event_detail.inc.html 2010-12-19 21:25:01 +0000
100+++ loco_directory/templates/events/global_event_detail.inc.html 2011-02-05 21:44:12 +0000
101@@ -3,33 +3,15 @@
102 {% if global_event_object.pictag %}
103 <link rel="stylesheet" href="{{MEDIA_URL}}css/jquery.lightbox-0.5.css" type="text/css" media="screen" />
104 <script type="text/javascript" src="{{MEDIA_URL}}js/jquery.lightbox-0.5.min.js"></script>
105+<script type="text/javascript" src="{{MEDIA_URL}}js/jquery-flickr.js"></script>
106 <script type="text/javascript">
107 $(function() {
108- var apiKey = '{{ flickr_api_key }}';
109 var tag = '{{ global_event_object.pictag }}';
110 var perPage = '27';
111
112-$.getJSON('http://api.flickr.com/services/rest/?format=json&method='+
113- 'flickr.photos.search&api_key=' + apiKey + '&tags=' + tag + '&per_page=' + perPage + '&jsoncallback=?',
114- function(data){
115- $.each(data.photos.photo, function(i, rPhoto){
116- var basePhotoURL = 'http://farm' + rPhoto.farm + '.static.flickr.com/'
117- + rPhoto.server + '/' + rPhoto.id + '_' + rPhoto.secret;
118-
119- var thumbPhotoURL = basePhotoURL + '_s.jpg';
120- var mediumPhotoURL = basePhotoURL + '.jpg';
121-
122- var photoStringStart = '<a class="lightbox" rel="lightbox[flickr]" ';
123- var photoStringEnd = 'title="' + rPhoto.title + '" href="'+
124- mediumPhotoURL +'"><img width="75" height="75"" src="' + thumbPhotoURL + '" alt="' +
125- rPhoto.title + '"/></a>';
126- var photoString = photoStringStart + photoStringEnd;
127-
128- $(photoString).appendTo("#photo-feed");
129- });
130- $("#photo-feed a.lightbox").lightBox();
131- });
132-
133+{% if flickr_api_key %}
134+ $('#photo-feed').flickr({ key: '{{ flickr_api_key }}', tag: tag, amount: 27 });
135+{% endif %}
136
137 var PicasaFeedUrl = 'http://picasaweb.google.com/data/feed/api/all?v=2'+
138 '&tag=' + tag + '&alt=json-in-script&kind=photo&max-results=' + perPage + '&thumbsize=75c&callback=?';
139
140=== modified file 'loco_directory/templates/teams/team_detail.html'
141--- loco_directory/templates/teams/team_detail.html 2011-01-26 00:57:42 +0000
142+++ loco_directory/templates/teams/team_detail.html 2011-02-05 21:44:12 +0000
143@@ -19,34 +19,13 @@
144 <script type="text/javascript" src="{{MEDIA_URL}}jquery/jquery.js"></script>
145 <script type="text/javascript" src="{{MEDIA_URL}}js/jquery.lightbox-0.5.min.js"></script>
146 <link rel="stylesheet" href="{{MEDIA_URL}}css/jquery.lightbox-0.5.css" type="text/css" media="screen" />
147+<script type="text/javascript" src="{{MEDIA_URL}}js/jquery-flickr.js"></script>
148 <script type="text/javascript">
149 $(function() {
150- var apiKey = '{{ flickr_api_key }}';
151 var perPage = '16';
152 {% endif %}
153-{% if team.flickr_id %}
154- var flickr_userId = '{{ team.flickr_id }}';
155- $.getJSON('http://api.flickr.com/services/rest/?format=json&method='+
156- 'flickr.photos.search&api_key=' + apiKey + '&user_id=' + flickr_userId +
157- '&per_page=' + perPage + '&jsoncallback=?',
158- function(data){
159- $.each(data.photos.photo, function(i, rPhoto){
160- var basePhotoURL = 'http://farm' + rPhoto.farm + '.static.flickr.com/'
161- + rPhoto.server + '/' + rPhoto.id + '_' + rPhoto.secret;
162-
163- var thumbPhotoURL = basePhotoURL + '_s.jpg';
164- var mediumPhotoURL = basePhotoURL + '.jpg';
165-
166- var photoStringStart = '<a class="lightbox" ';
167- var photoStringEnd = 'title="' + rPhoto.title + '" href="'+
168- mediumPhotoURL +'"><img src="' + thumbPhotoURL + '" alt="' +
169- rPhoto.title + '"/></a>;';
170- var photoString = photoStringStart + photoStringEnd
171-
172- $(photoString).appendTo("#flickr");
173- });
174- $("a.lightbox").lightBox();
175- });
176+{% if team.flickr_id %}
177+ $('#flickr').flickr({ key: "{{ flickr_api_key }}", id: "{{ team.flickr_id }}", amount: perPage });
178 {% endif %}
179 {% if team.picasa_id %}
180 var picasa_userId = '{{ team.picasa_id }}';

Subscribers

People subscribed via source and target branches