示例#1
0
def signin(request: HttpRequest) -> HttpResponse:
    form = SigninForm(request.POST or None)

    if form.is_valid():
        subdomain = form.cleaned_data.get('subdomain')

        hostname_without_port = remove_www(request.get_host().split(':')[0])

        domain = Domain.objects.get(
            domain=f'{subdomain}.{hostname_without_port}')
        protocol = 'https' if request.is_secure() else 'http'

        return redirect(f'{protocol}://{domain.domain}:{request.get_port()}')

    return render(request, 'schools/signin.html', {'form': form})
示例#2
0
    def get_context_data(self, **kwargs):
        context = super(HomeView, self).get_context_data(**kwargs)

        hostname_without_port = remove_www(self.request.get_host().split(':')[0])

        try:
            Client.objects.get(schema_name='public')
        except utils.DatabaseError:
            context['need_sync'] = True
            context['shared_apps'] = settings.SHARED_APPS
            context['tenants_list'] = []
            return context
        except Client.DoesNotExist:
            context['no_public_tenant'] = True
            context['hostname'] = hostname_without_port

        if Client.objects.count() == 1:
            context['only_public_tenant'] = True

        context['tenants_list'] = Client.objects.all()
        return context
示例#3
0
 def hostname_from_request(self, request):
     """ Extracts hostname from request. Used for custom requests filtering.
         By default removes the request's port and common prefixes.
     """
     return remove_www(request.get_host().split(':')[0])
示例#4
0
 def hostname_from_request(request):
     """ Extracts hostname from request. Used for custom requests filtering.
         By default removes the request's port and common prefixes.
     """
     return remove_www(request.get_host().split(':')[0])
示例#5
0
文件: config.py 项目: kzailac/poem-2
def get_hostname(request):
    return remove_www(request.get_host().split(':')[0]).lower()