# Path: wtfhack/base/models.py
# class Repo(models.Model):
#     # Full name is required
#     full_name = models.CharField(max_length=500, unique=True, null=False)
#     url = models.URLField(null=True)
#     language = models.ForeignKey(Language, related_name='repos')
#     description = models.CharField(max_length=500, null=True, blank=True)
# 
# 
#     def save(self, *args, **kwargs):
#         '''Override save method to set default url.'''
#         BASE = 'https://github.com/'
#         # Default url to base url + full_name
#         if not self.url:
#             self.url = BASE + self.full_name
#         super(Repo, self).save(*args, **kwargs)
# 
# 
#     def __unicode__(self):
#         return "{full_name}: {language}".format(full_name=self.full_name,
#                                                 language=self.language.name)
# 
# class Language(models.Model):
#     name = models.CharField(max_length=40, null=False)
#     learn_url = models.URLField(null=True, blank=True)
# 
#     @staticmethod
#     def all():
#         return [l.name for l in Language.objects.order_by('name')]
#     def __unicode__(self):
#         return self.name


from django.contrib import admin
from wtfhack.base.models import Repo, Language


class RepoInline(admin.TabularInline):
    model = Repo
class RepoAdmin(admin.ModelAdmin):
    fieldsets = [
        (None, {'fields': ['url', 'language', 'description', 'full_name']})
    ]

class LanguageAdmin(admin.ModelAdmin):
    fieldsets = [
        (None, {'fields': ['name', 'learn_url' ]})
    ]
    inlines = [RepoInline,]


# Path: wtfhack/base/models.py
# class Repo(models.Model):
#     # Full name is required
#     full_name = models.CharField(max_length=500, unique=True, null=False)
#     url = models.URLField(null=True)
#     language = models.ForeignKey(Language, related_name='repos')
#     description = models.CharField(max_length=500, null=True, blank=True)
# 
# 
#     def save(self, *args, **kwargs):
#         '''Override save method to set default url.'''
#         BASE = 'https://github.com/'
#         # Default url to base url + full_name
#         if not self.url:
#             self.url = BASE + self.full_name
#         super(Repo, self).save(*args, **kwargs)
# 
# 
#     def __unicode__(self):
#         return "{full_name}: {language}".format(full_name=self.full_name,
#                                                 language=self.language.name)
# 
# class Language(models.Model):
#     name = models.CharField(max_length=40, null=False)
#     learn_url = models.URLField(null=True, blank=True)
# 
#     @staticmethod
#     def all():
#         return [l.name for l in Language.objects.order_by('name')]
#     def __unicode__(self):
#         return self.name


# Path: wtfhack/base/admin.py
from django.contrib import admin
from wtfhack.base.models import Repo, Language



class RepoInline(admin.TabularInline):
    model = Repo
class RepoAdmin(admin.ModelAdmin):
    fieldsets = [
        (None, {'fields': ['url', 'language', 'description', 'full_name']})
    ]

class LanguageAdmin(admin.ModelAdmin):
    fieldsets = [
        (None, {'fields': ['name', 'learn_url' ]})
    ]
    inlines = [RepoInline,]


admin.site.register(Repo, RepoAdmin)