Merge lp:~mhall119/loco-team-portal/update-profiles-command into lp:loco-team-portal

Proposed by Michael Hall
Status: Merged
Merged at revision: 284
Proposed branch: lp:~mhall119/loco-team-portal/update-profiles-command
Merge into: lp:loco-team-portal
Diff against target: 52 lines (+36/-0)
2 files modified
loco_directory/teams/management/commands/update.py (+2/-0)
loco_directory/userprofiles/management/commands/update-profiles.py (+34/-0)
To merge this branch: bzr merge lp:~mhall119/loco-team-portal/update-profiles-command
Reviewer Review Type Date Requested Status
Chris Johnston Approve
Review via email: mp+35192@code.launchpad.net

Description of the change

Updates user profiles realname and timezone daily

To post a comment you must log in.
Revision history for this message
Chris Johnston (cjohnston) :
review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'loco_directory/teams/management/commands/update.py'
--- loco_directory/teams/management/commands/update.py 2010-08-28 19:27:47 +0000
+++ loco_directory/teams/management/commands/update.py 2010-09-11 15:16:44 +0000
@@ -13,3 +13,5 @@
13 run_job("update-countries", datetime.timedelta(days=1))13 run_job("update-countries", datetime.timedelta(days=1))
14 run_job("update-languages", datetime.timedelta(days=1))14 run_job("update-languages", datetime.timedelta(days=1))
15 run_job("lpupdate", datetime.timedelta(minutes=20))15 run_job("lpupdate", datetime.timedelta(minutes=20))
16 run_job("update-profiles", datetime.timedelta(days=1))
17
1618
=== added directory 'loco_directory/userprofiles/management'
=== added file 'loco_directory/userprofiles/management/__init__.py'
=== added directory 'loco_directory/userprofiles/management/commands'
=== added file 'loco_directory/userprofiles/management/commands/__init__.py'
=== added file 'loco_directory/userprofiles/management/commands/update-profiles.py'
--- loco_directory/userprofiles/management/commands/update-profiles.py 1970-01-01 00:00:00 +0000
+++ loco_directory/userprofiles/management/commands/update-profiles.py 2010-09-11 15:16:44 +0000
@@ -0,0 +1,34 @@
1#!/usr/bin/python
2
3from django.core.management.base import NoArgsCommand
4
5from common import launchpad
6from django.contrib.auth.models import User, Group
7from userprofiles.models import UserProfile, create_profile
8
9from datetime import datetime
10import sys
11
12class Command(NoArgsCommand):
13 help = "Updates user profiles with information from Launchpad."
14
15 def handle_noargs(self, **options):
16 lp = launchpad.lp_login()
17 if not lp:
18 sys.exit(1)
19 USER_BLACKLIST = (u"root", u"admin")
20
21 ld_users = User.objects.all()
22
23 for ld_user in ld_users:
24 if not ld_user.username in USER_BLACKLIST:
25 profile, created = UserProfile.objects.get_or_create(user=ld_user)
26 try:
27 lp_user = lp.people[ld_user.username]
28 profile.tz = lp_user.time_zone or "UTC"
29 profile.realname = lp_user.display_name or user.username
30 profile.save()
31 except Exception, e:
32 print "Error updaing %s" % ld_user
33 print e
34 pass

Subscribers

People subscribed via source and target branches