##// END OF EJS Templates
Moved signatures block to the model block. All the signed content is in the 'content' block now. Removed edit time, previous and next posts links from the XML sync output because they can be computed from the post itself and can be changed locally for foreign posts (which breaks the signature)
Moved signatures block to the model block. All the signed content is in the 'content' block now. Removed edit time, previous and next posts links from the XML sync output because they can be computed from the post itself and can be changed locally for foreign posts (which breaks the signature)

File last commit:

r827:9fc1212e decentral
r838:2b96b9e7 decentral
Show More
0035_auto__add_signature__add_globalid__chg_field_post_global_id__add_index.py
146 lines | 8.5 KiB | text/x-python | PythonLexer
/ boards / migrations / 0035_auto__add_signature__add_globalid__chg_field_post_global_id__add_index.py
# -*- coding: utf-8 -*-
from south.utils import datetime_utils as datetime
from south.db import db
from south.v2 import SchemaMigration
from django.db import models
class Migration(SchemaMigration):
def forwards(self, orm):
# Adding model 'Signature'
db.create_table('boards_signature', (
('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
('key_type', self.gf('django.db.models.fields.TextField')()),
('key', self.gf('django.db.models.fields.TextField')()),
('signature', self.gf('django.db.models.fields.TextField')()),
))
db.send_create_signal('boards', ['Signature'])
# Adding model 'GlobalId'
db.create_table('boards_globalid', (
('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
('key', self.gf('django.db.models.fields.TextField')()),
('key_type', self.gf('django.db.models.fields.TextField')()),
('local_id', self.gf('django.db.models.fields.IntegerField')()),
))
db.send_create_signal('boards', ['GlobalId'])
# Adding M2M table for field signature on 'Post'
m2m_table_name = db.shorten_name('boards_post_signature')
db.create_table(m2m_table_name, (
('id', models.AutoField(verbose_name='ID', primary_key=True, auto_created=True)),
('post', models.ForeignKey(orm['boards.post'], null=False)),
('signature', models.ForeignKey(orm['boards.signature'], null=False))
))
db.create_unique(m2m_table_name, ['post_id', 'signature_id'])
# Renaming column for 'Post.global_id' to match new field type.
db.rename_column('boards_post', 'global_id', 'global_id_id')
# Changing field 'Post.global_id'
db.alter_column('boards_post', 'global_id_id', self.gf('django.db.models.fields.related.OneToOneField')(null=True, to=orm['boards.GlobalId'], unique=True))
# Adding index on 'Post', fields ['global_id']
db.create_index('boards_post', ['global_id_id'])
# Adding unique constraint on 'Post', fields ['global_id']
db.create_unique('boards_post', ['global_id_id'])
def backwards(self, orm):
# Removing unique constraint on 'Post', fields ['global_id']
db.delete_unique('boards_post', ['global_id_id'])
# Removing index on 'Post', fields ['global_id']
db.delete_index('boards_post', ['global_id_id'])
# Deleting model 'Signature'
db.delete_table('boards_signature')
# Deleting model 'GlobalId'
db.delete_table('boards_globalid')
# Removing M2M table for field signature on 'Post'
db.delete_table(db.shorten_name('boards_post_signature'))
# Renaming column for 'Post.global_id' to match new field type.
db.rename_column('boards_post', 'global_id_id', 'global_id')
# Changing field 'Post.global_id'
db.alter_column('boards_post', 'global_id', self.gf('django.db.models.fields.TextField')(null=True))
models = {
'boards.ban': {
'Meta': {'object_name': 'Ban'},
'can_read': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'ip': ('django.db.models.fields.GenericIPAddressField', [], {'max_length': '39'}),
'reason': ('django.db.models.fields.CharField', [], {'default': "'Auto'", 'max_length': '200'})
},
'boards.globalid': {
'Meta': {'object_name': 'GlobalId'},
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'key': ('django.db.models.fields.TextField', [], {}),
'key_type': ('django.db.models.fields.TextField', [], {}),
'local_id': ('django.db.models.fields.IntegerField', [], {})
},
'boards.keypair': {
'Meta': {'object_name': 'KeyPair'},
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'key_type': ('django.db.models.fields.TextField', [], {}),
'primary': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
'private_key': ('django.db.models.fields.TextField', [], {}),
'public_key': ('django.db.models.fields.TextField', [], {})
},
'boards.post': {
'Meta': {'object_name': 'Post', 'ordering': "('id',)"},
'_text_rendered': ('django.db.models.fields.TextField', [], {}),
'global_id': ('django.db.models.fields.related.OneToOneField', [], {'null': 'True', 'to': "orm['boards.GlobalId']", 'unique': 'True', 'blank': 'True'}),
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'images': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'to': "orm['boards.PostImage']", 'blank': 'True', 'db_index': 'True', 'related_name': "'ip+'", 'null': 'True'}),
'last_edit_time': ('django.db.models.fields.DateTimeField', [], {}),
'poster_ip': ('django.db.models.fields.GenericIPAddressField', [], {'max_length': '39'}),
'poster_user_agent': ('django.db.models.fields.TextField', [], {}),
'pub_time': ('django.db.models.fields.DateTimeField', [], {}),
'referenced_posts': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'to': "orm['boards.Post']", 'blank': 'True', 'db_index': 'True', 'related_name': "'rfp+'", 'null': 'True'}),
'refmap': ('django.db.models.fields.TextField', [], {'blank': 'True', 'null': 'True'}),
'signature': ('django.db.models.fields.related.ManyToManyField', [], {'null': 'True', 'to': "orm['boards.Signature']", 'symmetrical': 'False', 'blank': 'True'}),
'text': ('markupfield.fields.MarkupField', [], {'rendered_field': 'True'}),
'text_markup_type': ('django.db.models.fields.CharField', [], {'default': "'bbcode'", 'max_length': '30'}),
'thread_new': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['boards.Thread']", 'default': 'None', 'null': 'True'}),
'title': ('django.db.models.fields.CharField', [], {'max_length': '200'})
},
'boards.postimage': {
'Meta': {'object_name': 'PostImage', 'ordering': "('id',)"},
'hash': ('django.db.models.fields.CharField', [], {'max_length': '36'}),
'height': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'image': ('boards.thumbs.ImageWithThumbsField', [], {'blank': 'True', 'max_length': '100'}),
'pre_height': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
'pre_width': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
'width': ('django.db.models.fields.IntegerField', [], {'default': '0'})
},
'boards.signature': {
'Meta': {'object_name': 'Signature'},
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'key': ('django.db.models.fields.TextField', [], {}),
'key_type': ('django.db.models.fields.TextField', [], {}),
'signature': ('django.db.models.fields.TextField', [], {})
},
'boards.tag': {
'Meta': {'object_name': 'Tag', 'ordering': "('name',)"},
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'db_index': 'True'}),
'threads': ('django.db.models.fields.related.ManyToManyField', [], {'null': 'True', 'to': "orm['boards.Thread']", 'symmetrical': 'False', 'related_name': "'tag+'", 'blank': 'True'})
},
'boards.thread': {
'Meta': {'object_name': 'Thread'},
'archived': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
'bump_time': ('django.db.models.fields.DateTimeField', [], {}),
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'last_edit_time': ('django.db.models.fields.DateTimeField', [], {}),
'replies': ('django.db.models.fields.related.ManyToManyField', [], {'null': 'True', 'to': "orm['boards.Post']", 'symmetrical': 'False', 'related_name': "'tre+'", 'blank': 'True'}),
'tags': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['boards.Tag']", 'symmetrical': 'False'})
}
}
complete_apps = ['boards']