Adnane Belmadiaf has proposed merging lp:~adnane002/loco-directory/fix.634074 
into lp:loco-directory.

Requested reviews:
  loco-directory-dev (loco-directory-dev)
Related bugs:
  #634074 Add Picasa and Pix.ie feeds to teams
  https://bugs.launchpad.net/bugs/634074

-- 
https://code.launchpad.net/~adnane002/loco-directory/fix.634074/+merge/35677
Your team loco-directory-dev is requested to review the proposed merge of 
lp:~adnane002/loco-directory/fix.634074 into lp:loco-directory.
=== added file 'loco_directory/teams/migrations/0010_add_photos_feed_fields.py'
--- loco_directory/teams/migrations/0010_add_photos_feed_fields.py	1970-01-01 00:00:00 +0000
+++ loco_directory/teams/migrations/0010_add_photos_feed_fields.py	2010-09-16 15:19:45 +0000
@@ -0,0 +1,121 @@
+
+from south.db import db
+from django.db import models
+from teams.models import *
+
+class Migration:
+    
+    def forwards(self, orm):
+        
+        # Adding field 'Team.picasa_id'
+        db.add_column('teams', 'picasa_id', orm['teams.team:picasa_id'])
+        
+        # Adding field 'Team.pixie_id'
+        db.add_column('teams', 'pixie_id', orm['teams.team:pixie_id'])
+        
+    
+    
+    def backwards(self, orm):
+        
+        # Deleting field 'Team.picasa_id'
+        db.delete_column('teams', 'picasa_id')
+        
+        # Deleting field 'Team.pixie_id'
+        db.delete_column('teams', 'pixie_id')
+        
+    
+    
+    models = {
+        'auth.group': {
+            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+            'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
+            'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'})
+        },
+        'auth.permission': {
+            'Meta': {'unique_together': "(('content_type', 'codename'),)"},
+            'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
+            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+            'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
+        },
+        'auth.user': {
+            'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
+            'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+            'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}),
+            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+            'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+            'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+            'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+            'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+            'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+            'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
+            'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}),
+            'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
+        },
+        'contenttypes.contenttype': {
+            'Meta': {'unique_together': "(('app_label', 'model'),)", 'db_table': "'django_content_type'"},
+            'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+            'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
+        },
+        'teams.continent': {
+            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+            'name': ('django.db.models.fields.TextField', [], {'max_length': '50'})
+        },
+        'teams.country': {
+            'continents': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['teams.Continent']"}),
+            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+            'name': ('django.db.models.fields.TextField', [], {'max_length': '100'})
+        },
+        'teams.language': {
+            'code': ('django.db.models.fields.CharField', [], {'max_length': '20', 'null': 'True'}),
+            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+            'name': ('django.db.models.fields.CharField', [], {'max_length': '150', 'null': 'True'})
+        },
+        'teams.team': {
+            'Meta': {'db_table': "'teams'"},
+            'admin_profiles': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['userprofiles.UserProfile']"}),
+            'approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+            'approved_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+            'city': ('django.db.models.fields.CharField', [], {'max_length': '50', 'null': 'True', 'blank': 'True'}),
+            'contact_profiles': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['userprofiles.UserProfile']"}),
+            'countries': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['teams.Country']"}),
+            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'null': 'True', 'blank': 'True'}),
+            'expires_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+            'flickr_id': ('django.db.models.fields.CharField', [], {'max_length': '20', 'null': 'True', 'blank': 'True'}),
+            'forum_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+            'irc_chan': ('django.db.models.fields.CharField', [], {'max_length': '25', 'null': 'True', 'blank': 'True'}),
+            'languages': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['teams.Language']"}),
+            'lp_name': ('django.db.models.fields.CharField', [], {'max_length': '40', 'null': 'True'}),
+            'ml_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+            'mugshot_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+            'name': ('django.db.models.fields.CharField', [], {'max_length': '80', 'null': 'True'}),
+            'owner_profile': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'owner'", 'null': 'True', 'to': "orm['userprofiles.UserProfile']"}),
+            'picasa_id': ('django.db.models.fields.CharField', [], {'max_length': '20', 'null': 'True', 'blank': 'True'}),
+            'pixie_id': ('django.db.models.fields.CharField', [], {'max_length': '20', 'null': 'True', 'blank': 'True'}),
+            'provides_support': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+            'spr': ('django.db.models.fields.CharField', [], {'max_length': '50', 'null': 'True', 'blank': 'True'}),
+            'web_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+            'wiki_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'})
+        },
+        'userprofiles.userprofile': {
+            'aim': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True', 'blank': 'True'}),
+            'blog': ('django.db.models.fields.URLField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
+            'facebook': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True', 'blank': 'True'}),
+            'flickr': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True', 'blank': 'True'}),
+            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+            'identica': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True', 'blank': 'True'}),
+            'irc': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True', 'blank': 'True'}),
+            'picasa': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True', 'blank': 'True'}),
+            'realname': ('django.db.models.fields.CharField', [], {'max_length': '150', 'blank': 'True'}),
+            'twitter': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True', 'blank': 'True'}),
+            'tz': ('django.db.models.fields.CharField', [], {'default': "'UTC'", 'max_length': '32'}),
+            'user': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.User']", 'unique': 'True'}),
+            'xmpp': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True', 'blank': 'True'})
+        }
+    }
+    
+    complete_apps = ['teams']

=== modified file 'loco_directory/teams/models.py'
--- loco_directory/teams/models.py	2010-09-13 17:08:59 +0000
+++ loco_directory/teams/models.py	2010-09-16 15:19:45 +0000
@@ -87,6 +87,10 @@
     languages = models.ManyToManyField(Language)
     flickr_id = models.CharField(_("Flickr User ID"), max_length=20, null=True, blank=True,
                                 help_text=_("To get your Flickr user id go to http://idgettr.com. Ex. 47353...@n03"))
+    picasa_id = models.CharField(_("Picasa User ID"), max_length=20, null=True, blank=True,
+                                help_text=_("Ex. [email protected], so your Picasa id is : toto"))
+    pixie_id = models.CharField(_("Pix.ie User ID"), max_length=20, null=True, blank=True,
+                                help_text=_("Your Pix.ie Username"))
     
     objects = TeamManager()
     

=== modified file 'loco_directory/templates/teams/team_detail.html'
--- loco_directory/templates/teams/team_detail.html	2010-09-13 19:07:26 +0000
+++ loco_directory/templates/teams/team_detail.html	2010-09-16 15:19:45 +0000
@@ -18,15 +18,20 @@
 <script type="text/javascript" src="{{MEDIA_URL}}js/jquery.lightbox-0.5.min.js"></script>
 <link rel="stylesheet" href="{{MEDIA_URL}}css/jquery.lightbox-0.5.css" type="text/css" media="screen" /> 
 <script type="text/javascript"> 
+
+
+
 $(function() {
     var apiKey = '{{ flickr_api_key }}';
-    var userId = '{{ team.flickr_id }}';
-    var tag = '';
     var perPage = '27';
-    
+    var flickr_userId = '{{ team.flickr_id }}';
+    var picasa_userId = '{{ team.picasa_id }}';
+    var pixie_userId = '{{ team.pixie_id }}';
+
+
     $.getJSON('http://api.flickr.com/services/rest/?format=json&method='+
-        'flickr.photos.search&api_key=' + apiKey + '&user_id=' + userId + 
-        '&tags=' + tag + '&per_page=' + perPage + '&jsoncallback=?', 
+        'flickr.photos.search&api_key=' + apiKey + '&user_id=' + flickr_userId + 
+        '&per_page=' + perPage + '&jsoncallback=?', 
     function(data){
         $.each(data.photos.photo, function(i, rPhoto){
             var basePhotoURL = 'http://farm' + rPhoto.farm + '.static.flickr.com/'
@@ -45,7 +50,43 @@
         });
         $("a.lightbox").lightBox();
     });
+    $.getJSON('http://picasaweb.google.com/data/feed/base/user/'+ picasa_userId +'?alt=json&kind=photo'+
+     '&access=public&thumbsize=72&max-results=' + perPage + '&hl=en_US&callback=?',
+    function(data) {
+	  $.each(data.feed.entry, function(i,item) {
+             var altLink = "#";
+	     if(item.media$group.media$content[0].url) {
+		   altLink = item.media$group.media$content[0].url;
+             }
+	     var title = "Untitled";
+	     if(item.media$group.media$description.$t) {
+		  title = item.media$group.media$description.$t;
+	     }
+	    $("<img/>").attr("src",item.media$group.media$thumbnail[0].url).attr("width",75).attr("height",75).attr("title", title)
+	      .appendTo("#picasa")
+	      .wrap("<a class='lightbox' href='"+item.media$group.media$content[0].url+"'</a>");
+	  });
+         $("a.lightbox").lightBox();
+    });
+
+    $.getJSON('http://api.pix.ie/v0.81/account/'+ pixie_userId +'/photos.json?oauth_consumer_key=1dcc8233-a6da-46b0-acb0-4e29aa612b30&page=1&perpage=' + perPage
+     + '&sortby=recent&extras=items_item_owner,items_item_Description,items_item_sizes_all&jsonp=?', 
+    function(data){
+        $.each(data.items, function(i, Photo){
+            var photoStringStart = '<a class="lightbox" ';
+            var photoStringEnd = 'title="' + Photo.title + '" href="'+ 
+                Photo.sizes[4].url +'"><img width="75" height="75" src="' + Photo.sizes[1].url + '" alt="' + 
+                Photo.title + '"/></a>';
+            var photoString = photoStringStart +  photoStringEnd;  
+
+            $(photoString).appendTo("#pixie");
+        });
+        $("a.lightbox").lightBox();
+    });
 });
+
+
+
 </script>
 <style type="text/css"> 
 div#flickr a.lightbox img {
@@ -53,6 +94,18 @@
 	margin-left: 5px;
 	margin-right: 5px;
 }
+
+div#picasa a.lightbox img {
+	border: 5px solid #b3aaa4;
+	margin-left: 5px;
+	margin-right: 5px;
+}
+
+div#pixie a.lightbox img {
+	border: 5px solid #b3aaa4;
+	margin-left: 5px;
+	margin-right: 5px;
+}
 </style> 
 {% endif %}
 <link type="application/rss+xml" rel="alternate" title="{% trans "Team Events (RSS)" %}" href="{% url team-events-rss team.lp_name %}" />
@@ -175,7 +228,9 @@
 {% if team.flickr_id %} 
 <article class="minor-content alone" style="width:95%;">
     <h2>{% trans "Photos from" %} {{ team.name }}</a></h2>
-    <div style="width:100%;" id="flickr"> </div> 
+    <div style="width:100%;" id="flickr"> </div>
+    <div style="width:100%;" id="picasa"> </div> 
+    <div style="width:100%;" id="pixie"> </div> 
 </article>
 {% endif %}
 

_______________________________________________
Mailing list: https://launchpad.net/~loco-directory-dev
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~loco-directory-dev
More help   : https://help.launchpad.net/ListHelp

Reply via email to