code: def _login_url(service, ticket='ST', gateway=False):
      
  
      LOGINS = {'ST': 'login',
                'PT': 'proxyValidate'}
      if gateway:
          params = {'service': service, 'gateway': 'true'}
      else:
          params = {'service': service}
  
      if settings.CAS_EXTRA_LOGIN_PARAMS:
          params.update(settings.CAS_EXTRA_LOGIN_PARAMS)
  
      if not ticket:
          ticket = 'ST'
  
      login_type = LOGINS.get(ticket[:2], 'login')
  
      return urlparse.urljoin(settings.CAS_SERVER_URL, login_type) + '?' + urlencode(params)
docs: Generates CAS login URL
  
      :param: service Service URL
      :param: ticket Ticket
      :param: gateway Gatewayed