##// END OF EJS Templates
Updated ban admin to search by ip
neko259 -
r804:7ec82b88 default
parent child Browse files
Show More
@@ -1,31 +1,36 b''
1 from django.contrib import admin
1 from django.contrib import admin
2 from boards.models import Post, Tag, Ban, Thread
2 from boards.models import Post, Tag, Ban, Thread
3
3
4
4
5 class PostAdmin(admin.ModelAdmin):
5 class PostAdmin(admin.ModelAdmin):
6
6
7 list_display = ('id', 'title', 'text')
7 list_display = ('id', 'title', 'text')
8 list_filter = ('pub_time', 'thread_new')
8 list_filter = ('pub_time', 'thread_new')
9 search_fields = ('id', 'title', 'text')
9 search_fields = ('id', 'title', 'text')
10
10
11
11
12 class TagAdmin(admin.ModelAdmin):
12 class TagAdmin(admin.ModelAdmin):
13
13
14 list_display = ('name',)
14 list_display = ('name',)
15
15
16 class ThreadAdmin(admin.ModelAdmin):
16 class ThreadAdmin(admin.ModelAdmin):
17
17
18 def title(self, obj):
18 def title(self, obj):
19 return obj.get_opening_post().title
19 return obj.get_opening_post().title
20
20
21 def reply_count(self, obj):
21 def reply_count(self, obj):
22 return obj.get_reply_count()
22 return obj.get_reply_count()
23
23
24 list_display = ('id', 'title', 'reply_count', 'archived')
24 list_display = ('id', 'title', 'reply_count', 'archived')
25 list_filter = ('bump_time', 'archived')
25 list_filter = ('bump_time', 'archived')
26 search_fields = ('id', 'title')
26 search_fields = ('id', 'title')
27
27
28 class BanAdmin(admin.ModelAdmin):
29 list_display = ('ip', 'can_read')
30 list_filter = ('can_read',)
31 search_fields = ('ip',)
32
28 admin.site.register(Post, PostAdmin)
33 admin.site.register(Post, PostAdmin)
29 admin.site.register(Tag, TagAdmin)
34 admin.site.register(Tag, TagAdmin)
30 admin.site.register(Ban)
35 admin.site.register(Ban, BanAdmin)
31 admin.site.register(Thread, ThreadAdmin)
36 admin.site.register(Thread, ThreadAdmin)
@@ -1,20 +1,20 b''
1 from django.db import models
1 from django.db import models
2
2
3 __author__ = 'neko259'
3 __author__ = 'neko259'
4
4
5 BAN_REASON_AUTO = 'Auto'
5 BAN_REASON_AUTO = 'Auto'
6 BAN_REASON_MAX_LENGTH = 200
6 BAN_REASON_MAX_LENGTH = 200
7
7
8
8
9 class Ban(models.Model):
9 class Ban(models.Model):
10
10
11 class Meta:
11 class Meta:
12 app_label = 'boards'
12 app_label = 'boards'
13
13
14 ip = models.GenericIPAddressField()
14 ip = models.GenericIPAddressField()
15 reason = models.CharField(default=BAN_REASON_AUTO,
15 reason = models.CharField(default=BAN_REASON_AUTO,
16 max_length=BAN_REASON_MAX_LENGTH)
16 max_length=BAN_REASON_MAX_LENGTH)
17 can_read = models.BooleanField(default=True)
17 can_read = models.BooleanField(default=True)
18
18
19 def __unicode__(self):
19 def __str__(self):
20 return self.ip
20 return self.ip
General Comments 0
You need to be logged in to leave comments. Login now