Пример #1
0
from django.conf.urls import patterns
from django.conf.urls import url

from mama_cas.views import LoginView
from mama_cas.views import LogoutView
from mama_cas.views import ValidateView
from mama_cas.views import ServiceValidateView
from mama_cas.views import ProxyValidateView
from mama_cas.views import ProxyView
from mama_cas.views import WarnView
from mama_cas.views import SamlValidateView


urlpatterns = patterns('',
    url(r'^login/?$',
        LoginView.as_view(),
        name='cas_login'),
    url(r'^logout/?$',
        LogoutView.as_view(),
        name='cas_logout'),
    url(r'^validate/?$',
        ValidateView.as_view(),
        name='cas_validate'),
    url(r'^serviceValidate/?$',
        ServiceValidateView.as_view(),
        name='cas_service_validate'),
    url(r'^proxyValidate/?$',
        ProxyValidateView.as_view(),
        name='cas_proxy_validate'),
    url(r'^proxy/?$',
        ProxyView.as_view(),
Пример #2
0
(2) CAS server URIs as described in the CAS protocol.
"""

from django.conf.urls import url

from mama_cas.views import LoginView
from mama_cas.views import LogoutView
from mama_cas.views import ValidateView
from mama_cas.views import ServiceValidateView
from mama_cas.views import ProxyValidateView
from mama_cas.views import ProxyView
from mama_cas.views import WarnView
from mama_cas.views import SamlValidateView

urlpatterns = [
    url(r'^login/?$', LoginView.as_view(), name='cas_login'),
    url(r'^logout/?$', LogoutView.as_view(), name='cas_logout'),
    url(r'^validate/?$', ValidateView.as_view(), name='cas_validate'),
    url(r'^serviceValidate/?$',
        ServiceValidateView.as_view(),
        name='cas_service_validate'),
    url(r'^proxyValidate/?$',
        ProxyValidateView.as_view(),
        name='cas_proxy_validate'),
    url(r'^proxy/?$', ProxyView.as_view(), name='cas_proxy'),
    url(r'^p3/serviceValidate/?$',
        ServiceValidateView.as_view(),
        name='cas_p3_service_validate'),
    url(r'^p3/proxyValidate/?$',
        ProxyValidateView.as_view(),
        name='cas_p3_proxy_validate'),
Пример #3
0
"""
(2) CAS server URIs as described in the CAS protocol.
"""

from django.conf.urls import url

from mama_cas.views import LoginView
from mama_cas.views import LogoutView
from mama_cas.views import ValidateView
from mama_cas.views import ServiceValidateView
from mama_cas.views import ProxyValidateView
from mama_cas.views import ProxyView
from mama_cas.views import WarnView
from mama_cas.views import SamlValidateView


urlpatterns = [
    url(r'^login/?$', LoginView.as_view(), name='cas_login'),
    url(r'^logout/?$', LogoutView.as_view(), name='cas_logout'),
    url(r'^validate/?$', ValidateView.as_view(), name='cas_validate'),
    url(r'^serviceValidate/?$', ServiceValidateView.as_view(), name='cas_service_validate'),
    url(r'^proxyValidate/?$', ProxyValidateView.as_view(), name='cas_proxy_validate'),
    url(r'^proxy/?$', ProxyView.as_view(), name='cas_proxy'),
    url(r'^p3/serviceValidate/?$', ServiceValidateView.as_view(), name='cas_p3_service_validate'),
    url(r'^p3/proxyValidate/?$', ProxyValidateView.as_view(), name='cas_p3_proxy_validate'),
    url(r'^warn/?$', WarnView.as_view(), name='cas_warn'),
    url(r'^samlValidate/?$', SamlValidateView.as_view(), name='cas_saml_validate'),
]
Пример #4
0
from django.conf.urls import patterns
from django.conf.urls import url

from mama_cas.views import LoginView
from mama_cas.views import LogoutView
from mama_cas.views import ValidateView
from mama_cas.views import ServiceValidateView
from mama_cas.views import ProxyValidateView
from mama_cas.views import ProxyView
from mama_cas.views import WarnView
from mama_cas.views import SamlValidateView


urlpatterns = patterns('',
    url(r'^login/?$',
        LoginView.as_view(),
        name='cas_login'),
    url(r'^logout/?$',
        LogoutView.as_view(),
        name='cas_logout'),
    url(r'^validate/?$',
        ValidateView.as_view(),
        name='cas_validate'),
    url(r'^serviceValidate/?$',
        ServiceValidateView.as_view(),
        name='cas_service_validate'),
    url(r'^proxyValidate/?$',
        ProxyValidateView.as_view(),
        name='cas_proxy_validate'),
    url(r'^proxy/?$',
        ProxyView.as_view(),
Пример #5
0
def login_view(request):
    # GET request
    if request.method == 'GET':
        if request.user.is_authenticated:
            service = request.GET.get('service')
            if service:
                return LoginView.as_view()(request)
            return redirect('/home/')
        else:
            """
SET USER COOKIE HERE TOO
            """
            # Redirect to Login page
            return LoginView.as_view()(request)

    # POST request
    elif request.method == 'POST':
        email = request.POST.get('username')
        password = request.POST.get('password')

        if request.POST.get('password'):
            print(email)
            print(password)
            return LoginView.as_view()(request)

        else:  # LOGIN WITH EMAIL
            # Check valid email
            if re.match(r"[^@]+@[^@]+\.[^@]+", email):
                url = request.GET.get('service')  # Get URL to forward onto
                confirmEmailHold = None  # Create confirmEmailHold object

                if url:
                    confirmEmailHold = NoPasswordWaitingForEmailConfirm.objects.create(
                        email=email, url=url)
                else:
                    confirmEmailHold = NoPasswordWaitingForEmailConfirm.objects.create(
                        email=email)
                """
                SEND EMAIL VARIABLES
                """
                # Unique Key
                key = confirmEmailHold.key
                clickable_url = 'http://localhost:8080'

                # Try to send email
                subject = 'Just one more step!'
                recipient = email
                message = "You're almost done.\n" \
                    + "Click the link below in " +  confirmEmailHold.browser + " to activate your account.\n" \
                    + clickable_url + "/signin/?key=" + str(key) + "\n" \
                    + "Where is my password?\n" \
                    + "We doesn't make you remember yet another password. Just click the link and you’re in.\n" \
                    + "No password. Ever."

                if send_email(subject, recipient, message):
                    print('EMAIL SENT')
                    confirmEmailHold.email_sent = True

                    # Try to find a user with this email
                    user = None
                    try:
                        user = User.objects.get(email=email)
                        confirmEmailHold.user = user
                    except:
                        # No User found - save without user
                        pass

                    # Save confirmEmailHold
                    confirmEmailHold.save()

                    context = {'email': email}
                    # SET COOKIE
                    response = render(request, 'login_with_email.html',
                                      context)
                    response.set_cookie('cookie',
                                        value=confirmEmailHold.cookie,
                                        domain="localhost")
                    return response

                else:
                    msg = 'Unable to send email to: ' + email
                    messages.info(request, msg)
                    return render(request, 'login.html')

            else:
                msg = 'Invalid Email: ' + email
                messages.info(request, msg)
                return render(request, 'login.html')
Пример #6
0
"""
URLconf for CAS server URIs as described in the CAS protocol.
"""

from django.conf.urls import patterns
from django.conf.urls import url

from mama_cas.views import LoginView
from mama_cas.views import LogoutView
from mama_cas.views import ValidateView
from mama_cas.views import ServiceValidateView
from mama_cas.views import ProxyValidateView
from mama_cas.views import ProxyView
from mama_cas.views import WarnView


urlpatterns = patterns(
    "",
    url(r"^login/?$", LoginView.as_view(), name="cas_login"),
    url(r"^logout/?$", LogoutView.as_view(), name="cas_logout"),
    url(r"^validate/?$", ValidateView.as_view(), name="cas_validate"),
    url(r"^serviceValidate/?$", ServiceValidateView.as_view(), name="cas_service_validate"),
    url(r"^proxyValidate/?$", ProxyValidateView.as_view(), name="cas_proxy_validate"),
    url(r"^proxy/?$", ProxyView.as_view(), name="cas_proxy"),
    url(r"^warn/?$", WarnView.as_view(), name="cas_warn"),
)
Пример #7
0
Function views
    1. Add an import:  from my_app import views
    2. Add a URL to urlpatterns:  url(r'^$', views.home, name='home')
Class-based views
    1. Add an import:  from other_app.views import Home
    2. Add a URL to urlpatterns:  url(r'^$', Home.as_view(), name='home')
Including another URLconf
    1. Import the include() function: from django.conf.urls import url, include
    2. Add a URL to urlpatterns:  url(r'^blog/', include('blog.urls'))
"""
from django.conf.urls import url, include
from django.contrib import admin
from django.contrib.auth import views as auth_views
from django.views.generic import TemplateView
from mama_cas.views import LoginView
from mama_cas.views import LogoutView
from views import profilereset

urlpatterns = [
    url(r'^$', TemplateView.as_view(template_name='iaccount/index.html'), name='index'),
    url(r'^admin/', admin.site.urls),
    url(r'^cas/', include('mama_cas.urls')),
    url(r'^accounts/login/$', LoginView.as_view(), name='auth_login'),
    url(r'^accounts/logout/$', LogoutView.as_view(), name='auth_logout'),
    url(r'^accounts/profile/', TemplateView.as_view(template_name='iaccount/profile.html'), name='profile'),
    url(r'^accounts/profileset/', profilereset, name='profilereset'),
    url(r'^accounts/', include('registration.backends.default.urls')),
    url(r'^', include('django.contrib.auth.urls')),
    url(r'^captcha/', include('captcha.urls')),
]