summaryrefslogtreecommitdiff
path: root/tools/migrate_chat.py
diff options
context:
space:
mode:
Diffstat (limited to 'tools/migrate_chat.py')
-rwxr-xr-xtools/migrate_chat.py35
1 files changed, 21 insertions, 14 deletions
diff --git a/tools/migrate_chat.py b/tools/migrate_chat.py
index a554d63..1824987 100755
--- a/tools/migrate_chat.py
+++ b/tools/migrate_chat.py
@@ -92,50 +92,57 @@ if __name__ == '__main__':
db = MigrateDB()
db.connect()
+ print "loading users..."
sj_user = list(db.get_sj_user_table())
map_user = {}
for row in sj_user:
try:
user = User.objects.get(username=row['username'])
except User.DoesNotExist:
- print "ERROR in users"
+ print "ERROR in users '%s' does not exist" % row['username']
- map_user[row['id']] = user.pk
+ map_user[row['id']] = user
+ print "loading rooms..."
sj_room = list(db.get_sj_room_table())
map_room = {}
for row in sj_room:
try:
room = SJRoom.objects.get(name=row['name'])
except SJRoom.DoesNotExist:
- print "ERROR"
- map_room[row['id']] = room.pk
+ print "ERROR in room '%s' does not exist" % row['name']
+ map_room[row['id']] = room
+
# Migrate sj_chat table
sj_chat = list(db.get_sj_chat_table())
for row in sj_chat:
- user = admin
- pk = map_user.get(row['userid'], 0)
- if pk:
- user = User.objects.get(pk=pk)
- room = SJRoom.objects.get(name='main')
- pk = map_room.get(row['roomid'], 0)
- if pk:
- room = SJRoom.objects.get(pk=pk)
+ if row['userid'] in map_user:
+ user = map_user[row['userid']]
+ else:
+ print "unknown user in migrate: '%d'" % row['userid']
+ continue
+
+ if row['roomid'] in map_room:
+ room = map_room[row['roomid']]
+ else:
+ print "unknown room in migrate: '%d'" % row['roomid']
+ continue
+
try:
chat = SJContent.objects.get(
user=user,
datetime=datetime.fromtimestamp(row['date']),
room=room,
+ old_id=row['id'],
content_type='text')
except SJContent.DoesNotExist:
chat = SJContent(
user=user,
datetime=datetime.fromtimestamp(row['date']),
room=room,
+ old_id=row['id'],
content_type='text')
chat.settings = dict(text=row['msg'])
chat.save()
- row['__sjcontent_text_pk'] = chat.pk
-