Switch to relative imports
The relative imports make it clearer what code is within the project and where it's coming from.
This commit is contained in:
parent
439f777bda
commit
b7e2ce2a4d
31 changed files with 131 additions and 84 deletions
|
@ -2,10 +2,6 @@ import hashlib
|
||||||
|
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
|
|
||||||
# This is backwards compatibilty support for a custom function we wrote
|
|
||||||
# ourselves that is no longer necessary in modern Django.
|
|
||||||
from django.shortcuts import render as render_template_with_context
|
|
||||||
|
|
||||||
|
|
||||||
class ParameterValidator:
|
class ParameterValidator:
|
||||||
def __init__(self, given_hash_or_params, params_hash_key=None):
|
def __init__(self, given_hash_or_params, params_hash_key=None):
|
||||||
|
|
|
@ -1,8 +1,7 @@
|
||||||
# Generated by Django 1.11.29 on 2023-01-27 06:02
|
# Generated by Django 1.11.29 on 2023-01-27 06:02
|
||||||
|
|
||||||
import conservancy.apps.assignment.models
|
|
||||||
from django.db import migrations, models
|
from django.db import migrations, models
|
||||||
|
from ..models import validate_mutiple_urls
|
||||||
|
|
||||||
class Migration(migrations.Migration):
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
@ -24,6 +23,6 @@ class Migration(migrations.Migration):
|
||||||
migrations.AlterField(
|
migrations.AlterField(
|
||||||
model_name='assignment',
|
model_name='assignment',
|
||||||
name='repositories',
|
name='repositories',
|
||||||
field=models.TextField(help_text='List of URLs, one per line', validators=[conservancy.apps.assignment.models.validate_mutiple_urls], verbose_name='Code repositories containing contributions of yours whose copyright you are assigning'),
|
field=models.TextField(help_text='List of URLs, one per line', validators=[validate_mutiple_urls], verbose_name='Code repositories containing contributions of yours whose copyright you are assigning'),
|
||||||
),
|
),
|
||||||
]
|
]
|
||||||
|
|
|
@ -1,11 +1,14 @@
|
||||||
from django.contrib import admin
|
from django.contrib import admin
|
||||||
from conservancy.apps.blog.models import EntryTag, Entry
|
|
||||||
|
from .models import EntryTag, Entry
|
||||||
|
|
||||||
|
|
||||||
class EntryTagAdmin(admin.ModelAdmin):
|
class EntryTagAdmin(admin.ModelAdmin):
|
||||||
prepopulated_fields = {'slug': ('label',)}
|
prepopulated_fields = {'slug': ('label',)}
|
||||||
|
|
||||||
admin.site.register(EntryTag, EntryTagAdmin)
|
admin.site.register(EntryTag, EntryTagAdmin)
|
||||||
|
|
||||||
|
|
||||||
class EntryAdmin(admin.ModelAdmin):
|
class EntryAdmin(admin.ModelAdmin):
|
||||||
list_display = ('pub_date', 'headline', 'author')
|
list_display = ('pub_date', 'headline', 'author')
|
||||||
list_filter = ['pub_date']
|
list_filter = ['pub_date']
|
||||||
|
|
|
@ -1,8 +1,11 @@
|
||||||
|
from datetime import datetime, timedelta
|
||||||
|
|
||||||
from django.db import models
|
from django.db import models
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
from conservancy import bsoup
|
|
||||||
from conservancy.apps.staff.models import Person
|
from ... import bsoup
|
||||||
from datetime import datetime, timedelta
|
from ..staff.models import Person
|
||||||
|
|
||||||
|
|
||||||
class EntryTag(models.Model):
|
class EntryTag(models.Model):
|
||||||
"""Tagging for blog entries"""
|
"""Tagging for blog entries"""
|
||||||
|
|
|
@ -1,8 +1,10 @@
|
||||||
from django.conf.urls import url, include
|
|
||||||
from conservancy.apps.blog.models import Entry, EntryTag # relative import
|
|
||||||
from conservancy.apps.staff.models import Person
|
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
from conservancy.apps.blog.views import last_name, BlogYearArchiveView, BlogMonthArchiveView, BlogDayArchiveView, BlogDateDetailView, custom_index, query
|
|
||||||
|
from django.conf.urls import url, include
|
||||||
|
|
||||||
|
from .models import Entry, EntryTag
|
||||||
|
from ..staff.models import Person
|
||||||
|
from .views import last_name, BlogYearArchiveView, BlogMonthArchiveView, BlogDayArchiveView, BlogDateDetailView, custom_index, query
|
||||||
|
|
||||||
extra_context = {}
|
extra_context = {}
|
||||||
|
|
||||||
|
|
|
@ -1,12 +1,14 @@
|
||||||
from conservancy.apps.blog.models import Entry, EntryTag # relative import
|
from datetime import datetime
|
||||||
# from django.views.generic.list_detail import object_list
|
from functools import reduce
|
||||||
|
|
||||||
from django.views.generic import ListView
|
from django.views.generic import ListView
|
||||||
from django.views.generic.dates import YearArchiveView, MonthArchiveView, DayArchiveView, DateDetailView
|
from django.views.generic.dates import YearArchiveView, MonthArchiveView, DayArchiveView, DateDetailView
|
||||||
from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger
|
from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger
|
||||||
from conservancy.apps.staff.models import Person
|
|
||||||
from django.shortcuts import get_object_or_404, render
|
from django.shortcuts import get_object_or_404, render
|
||||||
from datetime import datetime
|
|
||||||
from functools import reduce
|
from .models import Entry, EntryTag
|
||||||
|
from ..staff.models import Person
|
||||||
|
|
||||||
|
|
||||||
def OR_filter(field_name, objs):
|
def OR_filter(field_name, objs):
|
||||||
from django.db.models import Q
|
from django.db.models import Q
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
from django.contrib import admin
|
from django.contrib import admin
|
||||||
from conservancy.apps.contacts.models import ContactEntry
|
|
||||||
|
from .models import ContactEntry
|
||||||
|
|
||||||
|
|
||||||
class ContactEntryAdmin(admin.ModelAdmin):
|
class ContactEntryAdmin(admin.ModelAdmin):
|
||||||
list_display = ('email', 'subscribe_conservancy')
|
list_display = ('email', 'subscribe_conservancy')
|
||||||
|
|
|
@ -1,8 +1,10 @@
|
||||||
from django.shortcuts import render
|
from django.shortcuts import render
|
||||||
from django import forms
|
from django import forms
|
||||||
from conservancy.apps.contacts.models import ContactEntry
|
|
||||||
from django.forms import ModelForm
|
from django.forms import ModelForm
|
||||||
|
|
||||||
|
from .models import ContactEntry
|
||||||
|
|
||||||
|
|
||||||
def subscribe(request):
|
def subscribe(request):
|
||||||
"""Mailing list subscription form
|
"""Mailing list subscription form
|
||||||
"""
|
"""
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
from django.conf.urls import url, include
|
from django.conf.urls import url, include
|
||||||
from conservancy.apps.contractpatch import views as cpatch_views
|
|
||||||
|
from . import views as cpatch_views
|
||||||
|
|
||||||
urlpatterns = [
|
urlpatterns = [
|
||||||
url(r'', cpatch_views.index),
|
url(r'', cpatch_views.index),
|
||||||
|
|
|
@ -1,13 +1,16 @@
|
||||||
from conservancy import render_template_with_context
|
|
||||||
from conservancy.apps.blog.models import Entry as BlogEntry
|
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
|
|
||||||
|
from django.shortcuts import render
|
||||||
|
|
||||||
|
from ..blog.models import Entry
|
||||||
|
|
||||||
|
|
||||||
def index(request):
|
def index(request):
|
||||||
filters = {
|
filters = {
|
||||||
'pub_date__lte': datetime.now(),
|
'pub_date__lte': datetime.now(),
|
||||||
'tags__slug': 'ContractPatch',
|
'tags__slug': 'ContractPatch',
|
||||||
}
|
}
|
||||||
context = {
|
context = {
|
||||||
'blog_entries': BlogEntry.objects.filter(**filters)[:3],
|
'blog_entries': Entry.objects.filter(**filters)[:3],
|
||||||
}
|
}
|
||||||
return render_template_with_context(request, "contractpatch/index.html", context)
|
return render(request, "contractpatch/index.html", context)
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
from django.contrib import admin
|
from django.contrib import admin
|
||||||
from conservancy.apps.events.models import EventTag, Event, EventMedia
|
|
||||||
|
from .models import EventTag, Event, EventMedia
|
||||||
|
|
||||||
admin.site.register(EventTag)
|
admin.site.register(EventTag)
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,11 @@
|
||||||
from django.db import models
|
|
||||||
from conservancy.apps.staff.models import Person
|
|
||||||
from conservancy.apps.worldmap.models import EarthLocation
|
|
||||||
from datetime import datetime, timedelta
|
from datetime import datetime, timedelta
|
||||||
|
|
||||||
|
from django.db import models
|
||||||
|
|
||||||
|
from ..staff.models import Person
|
||||||
|
from ..worldmap.models import EarthLocation
|
||||||
|
|
||||||
|
|
||||||
class EventTag(models.Model):
|
class EventTag(models.Model):
|
||||||
"""Tagging for events
|
"""Tagging for events
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
from django.conf.urls import patterns, url, include
|
from django.conf.urls import patterns, url, include
|
||||||
from conservancy.apps.events.models import Event
|
|
||||||
|
from .models import Event
|
||||||
|
|
||||||
info_dict = {
|
info_dict = {
|
||||||
'queryset': Event.objects.all(),
|
'queryset': Event.objects.all(),
|
||||||
|
|
|
@ -3,9 +3,9 @@ from django.shortcuts import render
|
||||||
from django.http import Http404, HttpResponse
|
from django.http import Http404, HttpResponse
|
||||||
from django.template import loader
|
from django.template import loader
|
||||||
from django.core.exceptions import ObjectDoesNotExist
|
from django.core.exceptions import ObjectDoesNotExist
|
||||||
from conservancy.apps.events.models import Event
|
|
||||||
# for debugging...
|
from .models import Event
|
||||||
from django.http import HttpResponse
|
|
||||||
|
|
||||||
def event_detail(request, year, slug, queryset, **kwargs):
|
def event_detail(request, year, slug, queryset, **kwargs):
|
||||||
"""This view shows event detail.
|
"""This view shows event detail.
|
||||||
|
|
|
@ -1,14 +1,17 @@
|
||||||
from django.contrib import admin
|
from django.contrib import admin
|
||||||
from conservancy.apps.fundgoal import models as fundgoal_models
|
|
||||||
|
from . import models
|
||||||
|
|
||||||
|
|
||||||
class FundraisingGoalAdmin(admin.ModelAdmin):
|
class FundraisingGoalAdmin(admin.ModelAdmin):
|
||||||
list_display = ('fundraiser_code_name', 'fundraiser_goal_amount')
|
list_display = ('fundraiser_code_name', 'fundraiser_goal_amount')
|
||||||
|
|
||||||
|
|
||||||
class GoalProviderAdmin(admin.ModelAdmin):
|
class GoalProviderAdmin(admin.ModelAdmin):
|
||||||
fields = [
|
fields = [
|
||||||
'fundraising_goal',
|
'fundraising_goal',
|
||||||
'provider_name',
|
'provider_name',
|
||||||
]
|
]
|
||||||
|
|
||||||
admin.site.register(fundgoal_models.FundraisingGoal, FundraisingGoalAdmin)
|
admin.site.register(models.FundraisingGoal, FundraisingGoalAdmin)
|
||||||
admin.site.register(fundgoal_models.GoalProvider, GoalProviderAdmin)
|
admin.site.register(models.GoalProvider, GoalProviderAdmin)
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
from conservancy.apps.fundgoal.models import FundraisingGoal
|
|
||||||
from django.http import JsonResponse
|
from django.http import JsonResponse
|
||||||
|
|
||||||
|
from .models import FundraisingGoal
|
||||||
|
|
||||||
|
|
||||||
def view(request):
|
def view(request):
|
||||||
"""JSON version of request
|
"""JSON version of request
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
from django.contrib import admin
|
from django.contrib import admin
|
||||||
from conservancy.apps.news.models import PressRelease, ExternalArticleTag, ExternalArticle
|
|
||||||
|
from .models import PressRelease, ExternalArticleTag, ExternalArticle
|
||||||
|
|
||||||
|
|
||||||
class PressReleaseAdmin(admin.ModelAdmin):
|
class PressReleaseAdmin(admin.ModelAdmin):
|
||||||
list_display = ("headline", "pub_date")
|
list_display = ("headline", "pub_date")
|
||||||
|
|
|
@ -1,10 +1,13 @@
|
||||||
|
from datetime import datetime, timedelta
|
||||||
|
|
||||||
from django.db import models
|
from django.db import models
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
from conservancy import bsoup
|
|
||||||
from conservancy.apps.staff.models import Person
|
|
||||||
from conservancy.apps.events.models import Event
|
|
||||||
from django.contrib.sites.models import Site
|
from django.contrib.sites.models import Site
|
||||||
from datetime import datetime, timedelta
|
|
||||||
|
from ... import bsoup
|
||||||
|
from ..staff.models import Person
|
||||||
|
from ..events.models import Event
|
||||||
|
|
||||||
|
|
||||||
class PressRelease(models.Model, bsoup.SoupModelMixin):
|
class PressRelease(models.Model, bsoup.SoupModelMixin):
|
||||||
"""News release model"""
|
"""News release model"""
|
||||||
|
|
|
@ -19,8 +19,9 @@
|
||||||
|
|
||||||
from django.conf.urls import url, include
|
from django.conf.urls import url, include
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
from conservancy.apps.news.models import PressRelease, ExternalArticle
|
|
||||||
from conservancy.apps.news.views import NewsYearArchiveView, NewsMonthArchiveView, NewsDayArchiveView, NewsDateDetailView, listing
|
from .models import PressRelease, ExternalArticle
|
||||||
|
from .views import NewsYearArchiveView, NewsMonthArchiveView, NewsDayArchiveView, NewsDateDetailView, listing
|
||||||
|
|
||||||
info_dict = {
|
info_dict = {
|
||||||
'queryset': PressRelease.objects.all().filter(sites__id__exact=settings.SITE_ID),
|
'queryset': PressRelease.objects.all().filter(sites__id__exact=settings.SITE_ID),
|
||||||
|
|
|
@ -1,15 +1,15 @@
|
||||||
# from django.views.generic.list_detail import object_list
|
from datetime import datetime
|
||||||
|
|
||||||
from django.views.generic import ListView
|
from django.views.generic import ListView
|
||||||
from django.shortcuts import render
|
from django.shortcuts import render
|
||||||
from django.views.generic.dates import YearArchiveView, MonthArchiveView, DayArchiveView, DateDetailView
|
from django.views.generic.dates import YearArchiveView, MonthArchiveView, DayArchiveView, DateDetailView
|
||||||
from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger
|
from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger
|
||||||
from conservancy.apps.news.models import ExternalArticle
|
|
||||||
from conservancy.apps.news.models import PressRelease
|
|
||||||
from conservancy.apps.events.models import Event
|
|
||||||
from datetime import datetime
|
|
||||||
# for debugging...
|
|
||||||
from django.http import HttpResponse
|
from django.http import HttpResponse
|
||||||
|
|
||||||
|
from .models import ExternalArticle
|
||||||
|
from .models import PressRelease
|
||||||
|
from ..events.models import Event
|
||||||
|
|
||||||
|
|
||||||
class NewsListView(ListView):
|
class NewsListView(ListView):
|
||||||
extra_context = {}
|
extra_context = {}
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
from django.contrib import admin
|
from django.contrib import admin
|
||||||
from conservancy.apps.staff.models import Person
|
|
||||||
|
from .models import Person
|
||||||
|
|
||||||
|
|
||||||
class PersonAdmin(admin.ModelAdmin):
|
class PersonAdmin(admin.ModelAdmin):
|
||||||
list_display = ("username", "formal_name", "casual_name",
|
list_display = ("username", "formal_name", "casual_name",
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
from django.contrib import admin
|
from django.contrib import admin
|
||||||
from conservancy.apps.summit_registration.models import SummitRegistration
|
|
||||||
|
from .models import SummitRegistration
|
||||||
|
|
||||||
|
|
||||||
class SummitRegistrationAdmin(admin.ModelAdmin):
|
class SummitRegistrationAdmin(admin.ModelAdmin):
|
||||||
list_display = ('name', 'email', 'affiliation', 'cle_credit')
|
list_display = ('name', 'email', 'affiliation', 'cle_credit')
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
from django.conf.urls import url
|
from django.conf.urls import url
|
||||||
from django.views.generic import TemplateView
|
from django.views.generic import TemplateView
|
||||||
from conservancy.apps.supporter import views as supp_views
|
|
||||||
from conservancy.static import views as static_views
|
from . import views as supp_views
|
||||||
|
from ...static import views as static_views
|
||||||
|
|
||||||
INDEX_VIEW = supp_views.index
|
INDEX_VIEW = supp_views.index
|
||||||
urlpatterns = [
|
urlpatterns = [
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
|
from django.shortcuts import render
|
||||||
|
|
||||||
import conservancy
|
import conservancy
|
||||||
|
|
||||||
|
|
||||||
def index(request):
|
def index(request):
|
||||||
with conservancy.ParameterValidator(request.GET, 'upgrade_id') as validator:
|
with conservancy.ParameterValidator(request.GET, 'upgrade_id') as validator:
|
||||||
try:
|
try:
|
||||||
|
@ -13,4 +16,4 @@ def index(request):
|
||||||
'partial_amount': partial_amount,
|
'partial_amount': partial_amount,
|
||||||
'minimum_amount': 120 - partial_amount,
|
'minimum_amount': 120 - partial_amount,
|
||||||
}
|
}
|
||||||
return conservancy.render_template_with_context(request, "supporter/index.html", context)
|
return render(request, "supporter/index.html", context)
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
from django.contrib import admin
|
from django.contrib import admin
|
||||||
from conservancy.apps.supporters.models import Supporter
|
|
||||||
|
from .models import Supporter
|
||||||
|
|
||||||
|
|
||||||
class SupporterAdmin(admin.ModelAdmin):
|
class SupporterAdmin(admin.ModelAdmin):
|
||||||
list_display = ('display_name', 'display_until_date')
|
list_display = ('display_name', 'display_until_date')
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
from django.contrib import admin
|
from django.contrib import admin
|
||||||
from conservancy.apps.worldmap.models import EarthLocation
|
|
||||||
|
from .models import EarthLocation
|
||||||
|
|
||||||
|
|
||||||
class EarthLocationAdmin(admin.ModelAdmin):
|
class EarthLocationAdmin(admin.ModelAdmin):
|
||||||
list_display = ("label", "html_map_link")
|
list_display = ("label", "html_map_link")
|
||||||
|
|
|
@ -1,14 +1,16 @@
|
||||||
from django.contrib.syndication.views import Feed
|
|
||||||
from django.utils.feedgenerator import Rss201rev2Feed
|
|
||||||
from conservancy.apps.news.models import PressRelease
|
|
||||||
from conservancy.apps.blog.models import Entry as BlogEntry
|
|
||||||
from django.shortcuts import render
|
|
||||||
from django.conf import settings
|
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
|
from functools import reduce
|
||||||
import itertools
|
import itertools
|
||||||
import operator
|
import operator
|
||||||
from functools import reduce
|
|
||||||
|
from django.conf import settings
|
||||||
|
from django.contrib.syndication.views import Feed
|
||||||
|
from django.shortcuts import render
|
||||||
|
from django.utils.feedgenerator import Rss201rev2Feed
|
||||||
|
|
||||||
|
from .apps.blog.models import Entry as BlogEntry
|
||||||
|
from .apps.news.models import PressRelease
|
||||||
|
|
||||||
|
|
||||||
class ConservancyFeedBase(Feed):
|
class ConservancyFeedBase(Feed):
|
||||||
def copyright_holder(self): return "Software Freedom Conservancy"
|
def copyright_holder(self): return "Software Freedom Conservancy"
|
||||||
|
|
|
@ -1,19 +1,21 @@
|
||||||
from conservancy import render_template_with_context
|
|
||||||
from conservancy.apps.supporters.models import Supporter as Supporter
|
|
||||||
from conservancy.apps.news.models import PressRelease
|
|
||||||
from conservancy.apps.blog.models import Entry as BlogEntry
|
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
|
|
||||||
|
from django.shortcuts import render
|
||||||
|
|
||||||
|
from .apps.blog.models import Entry
|
||||||
|
from .apps.news.models import PressRelease
|
||||||
|
from .apps.supporters.models import Supporter
|
||||||
|
|
||||||
|
|
||||||
def view(request):
|
def view(request):
|
||||||
"""Conservancy front page view
|
"""Conservancy front page view
|
||||||
|
|
||||||
Performs all object queries necessary to render the front page.
|
Performs all object queries necessary to render the front page.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
now = datetime.now()
|
now = datetime.now()
|
||||||
context = {
|
context = {
|
||||||
'press_releases': PressRelease.objects.all().filter(pub_date__lte=now, sites=2)[:5],
|
'press_releases': PressRelease.objects.all().filter(pub_date__lte=now, sites=2)[:5],
|
||||||
'supporters_count': Supporter.objects.all().filter(display_until_date__gte=now).count(),
|
'supporters_count': Supporter.objects.all().filter(display_until_date__gte=now).count(),
|
||||||
'blog': BlogEntry.objects.all().filter(pub_date__lte=now)[:5],
|
'blog': Entry.objects.all().filter(pub_date__lte=now)[:5],
|
||||||
}
|
}
|
||||||
return render_template_with_context(request, "frontpage.html", context)
|
return render(request, "frontpage.html", context)
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
from datetime import datetime as DateTime
|
from datetime import datetime as DateTime
|
||||||
|
|
||||||
import conservancy.settings
|
from . import settings
|
||||||
from conservancy.apps.fundgoal.models import FundraisingGoal as FundraisingGoal
|
from .apps.fundgoal.models import FundraisingGoal
|
||||||
|
|
||||||
SITE_FUNDGOAL = 'cy2022-end-year-match'
|
SITE_FUNDGOAL = 'cy2022-end-year-match'
|
||||||
|
|
||||||
|
@ -18,8 +18,8 @@ def sitefundraiser(request):
|
||||||
'sitefundgoal': fundgoal_lookup(SITE_FUNDGOAL),
|
'sitefundgoal': fundgoal_lookup(SITE_FUNDGOAL),
|
||||||
}
|
}
|
||||||
|
|
||||||
if conservancy.settings.FORCE_CANONICAL_HOSTNAME:
|
if settings.FORCE_CANONICAL_HOSTNAME:
|
||||||
_HOST_URL_VAR = {'host_url': 'https://' + conservancy.settings.FORCE_CANONICAL_HOSTNAME}
|
_HOST_URL_VAR = {'host_url': 'https://' + settings.FORCE_CANONICAL_HOSTNAME}
|
||||||
def host_url(request):
|
def host_url(request):
|
||||||
return _HOST_URL_VAR
|
return _HOST_URL_VAR
|
||||||
else:
|
else:
|
||||||
|
|
|
@ -1,7 +1,10 @@
|
||||||
from django.shortcuts import render
|
|
||||||
from conservancy.apps.supporters.models import Supporter as Supporter
|
|
||||||
from datetime import datetime, timedelta
|
from datetime import datetime, timedelta
|
||||||
|
|
||||||
|
from django.shortcuts import render
|
||||||
|
|
||||||
|
from .apps.supporters.models import Supporter
|
||||||
|
|
||||||
|
|
||||||
def view(request):
|
def view(request):
|
||||||
"""Conservancy Sponsors Page view
|
"""Conservancy Sponsors Page view
|
||||||
|
|
||||||
|
|
|
@ -20,9 +20,9 @@
|
||||||
from django.conf.urls import url, include
|
from django.conf.urls import url, include
|
||||||
from django.contrib import admin
|
from django.contrib import admin
|
||||||
|
|
||||||
from conservancy import feeds, frontpage, sponsors
|
from . import feeds, frontpage, sponsors
|
||||||
import conservancy.apps.fundgoal.views as fundgoal_views
|
from .apps.fundgoal import views as fundgoal_views
|
||||||
import conservancy.static.views as static_views
|
from .static import views as static_views
|
||||||
|
|
||||||
admin.autodiscover()
|
admin.autodiscover()
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue