d94cabb7a504e0dcc206214278e0e4d270f94664
kent
  Thu Aug 29 18:50:36 2019 -0700
Adding assay section and tightening up short_names to be unique.

diff --git src/hca/hcat/mysite/hcat/admin.py src/hca/hcat/mysite/hcat/admin.py
index 045b2ca..beccddb 100644
--- src/hca/hcat/mysite/hcat/admin.py
+++ src/hca/hcat/mysite/hcat/admin.py
@@ -1,92 +1,111 @@
 
 # Register your models here.
 # -*- coding: utf-8 -*-
 from __future__ import unicode_literals
 
 from django.contrib import admin
-from .models import Grant,Project,Lab,Contributor,Funder,ProjectState,Consent,Species,Organ,OrganPart,Disease,SampleType
+from .models import Grant,Project,Lab,Contributor,Funder,ProjectState,Consent,Species,Organ,OrganPart,Disease,SampleType,AssayType,AssayTech,Publication
 
 class ContributorAdmin(admin.ModelAdmin):
     list_filter = ['project_role']
     search_fields = ['name', 'project_role', 'email',]
     list_display = ['name', 'project_role', 'email', ]
 
 admin.site.register(Contributor, ContributorAdmin)
 
 
 class LabAdmin(admin.ModelAdmin):
     autocomplete_fields = ['contributors', 'pi', 'contact']
     search_fields = ['short_name', 'pi', 'contact']
     list_display = ['short_name', 'institution',]
 
 admin.site.register(Lab, LabAdmin)
 
 class ProjectStateAdmin(admin.ModelAdmin):
     list_display = ['state', 'description']
     
 admin.site.register(ProjectState, ProjectStateAdmin)
 
 class ProjectAdmin(admin.ModelAdmin):
     search_fields = ['short_name', 'title', 'contributors', 'labs', 'organ_part', 'organ', 'disease', 'species']
-    autocomplete_fields = ["contributors", "labs", "organ", "organ_part", "disease", "species", "sample_type"]
-    list_display = ['short_name', 'priority', 'state', 'wrangler1', 'title',]
-    list_filter = ['species', 'organ', 'state','priority', 'consent']
+    autocomplete_fields = ["contributors", "labs", "organ", "organ_part", "disease", "species", "sample_type", "assay_type", "assay_tech", "publications"]
+    list_display = ['short_name', 'score', 'state', 'wrangler1', 'title',]
+    list_filter = ['species', 'organ', 'state', 'assay_tech']
     fieldsets = (
-        ('overall', { 'fields': ('short_name', 'title', 'description',)}),
-        ('wrangling',  { 'fields': ('state', 'consent', 'priority', 'wrangler1', 'wrangler2')}),
+        ('overall', { 'fields': ('short_name', 'title', 'description','publications')}),
+        ('wrangling',  { 'fields': ('state', 'consent', 'score', 'wrangler1', 'wrangler2', 'contributors')}),
         ('biosample',  { 'fields': ('species', 'sample_type', 'organ', 'organ_part', 'disease')}),
+        ('assay', { 'fields': ('assay_type', 'assay_tech', 'cells_expected')}),
     )
     def formfield_for_foreignkey(self, db_field, request, **kwargs):
        if db_field.name == "wrangler1" or db_field.name == "wrangler2":
            kwargs["queryset"] = Contributor.objects.filter(project_role="wrangler")
        return super().formfield_for_foreignkey(db_field, request, **kwargs)
 
 admin.site.register(Project, ProjectAdmin)
 
 class GrantAdmin(admin.ModelAdmin):
     autocomplete_fields = ["funded_contributors", "funded_projects", "funded_labs"]
     search_fields = ["funded_contributors", "funded_projects", "funded_labs"]
     list_display = ['grant_id', 'funder', 'grant_title',]
     list_filter = ['funder']
 
 admin.site.register(Grant, GrantAdmin)
 
 class FunderAdmin(admin.ModelAdmin):
     list_display = ['short_name', 'description',]
 
 admin.site.register(Funder, FunderAdmin)
 
 
 class SpeciesAdmin(admin.ModelAdmin):
     search_fields = ["common_name"]
     list_display = ['common_name', 'scientific_name', 'ncbi_taxon',]
 
 admin.site.register(Species, SpeciesAdmin)
 
 class ConsentAdmin(admin.ModelAdmin):
     search_fields = ["short_name"]
 
 admin.site.register(Consent, ConsentAdmin)
 
 class DiseaseAdmin(admin.ModelAdmin):
     search_fields = ["short_name"]
     list_display = ["short_name", "description"]
 
 admin.site.register(Disease, DiseaseAdmin)
 
 class OrganAdmin(admin.ModelAdmin):
      search_fields = ["short_name"]
 
 admin.site.register(Organ, OrganAdmin)
 
 class OrganPartAdmin(admin.ModelAdmin):
      search_fields = ["short_name"]
 
 admin.site.register(OrganPart, OrganPartAdmin)
 
 class SampleTypeAdmin(admin.ModelAdmin):
     search_fields = ["short_name"]
     list_display = ["short_name", "description"]
 
 admin.site.register(SampleType, SampleTypeAdmin)
 
+class AssayTypeAdmin(admin.ModelAdmin):
+    search_fields = ["short_name"]
+    list_display = ["short_name", "description"]
+
+admin.site.register(AssayType, AssayTypeAdmin)
+
+class AssayTechAdmin(admin.ModelAdmin):
+    search_fields = ["short_name"]
+    list_display = ["short_name", "description"]
+
+admin.site.register(AssayTech, AssayTechAdmin)
+
+class PublicationAdmin(admin.ModelAdmin):
+    search_fields = ["short_name"]
+    list_display = ["short_name", "title"]
+
+admin.site.register(Publication, PublicationAdmin)
+