name="sentry-auth-organization-saml-sls", ), url( r"^metadata/(?P<organization_slug>[^/]+)/$", SAML2MetadataView.as_view(), name="sentry-auth-organization-saml-metadata", ), ] ), ), # Auth url( r"^auth/", include( [ url(r"^login/$", AuthLoginView.as_view(), name="sentry-login"), url( r"^login/(?P<organization_slug>[^/]+)/$", AuthOrganizationLoginView.as_view(), name="sentry-auth-organization", ), url( r"^link/(?P<organization_slug>[^/]+)/$", AuthOrganizationLoginView.as_view(), name="sentry-auth-link-identity", ), url(r"^2fa/$", TwoFactorAuthView.as_view(), name="sentry-2fa-dialog"), url(r"^2fa/u2fappid\.json$", u2f_appid, name="sentry-u2f-app-id"), url(r"^sso/$", AuthProviderLoginView.as_view(), name="sentry-auth-sso"), url(r"^logout/$", AuthLogoutView.as_view(), name="sentry-logout"), url(
# SAML url(r'^saml/acs/(?P<organization_slug>[^/]+)/$', SAML2AcceptACSView.as_view(), name='sentry-auth-organization-saml-acs'), url(r'^saml/sls/(?P<organization_slug>[^/]+)/$', SAML2SLSView.as_view(), name='sentry-auth-organization-saml-sls'), url(r'^saml/metadata/(?P<organization_slug>[^/]+)/$', SAML2MetadataView.as_view(), name='sentry-auth-organization-saml-metadata'), # Auth url( r'^auth/link/(?P<organization_slug>[^/]+)/$', AuthOrganizationLoginView.as_view(), name='sentry-auth-link-identity' ), url(r'^auth/login/$', AuthLoginView.as_view(), name='sentry-login'), url( r'^auth/login/(?P<organization_slug>[^/]+)/$', AuthOrganizationLoginView.as_view(), name='sentry-auth-organization' ), url(r'^auth/2fa/$', TwoFactorAuthView.as_view(), name='sentry-2fa-dialog'), url(r'^auth/2fa/u2fappid\.json$', u2f_appid, name='sentry-u2f-app-id'), url(r'^auth/sso/$', AuthProviderLoginView.as_view(), name='sentry-auth-sso'), url(r'^auth/logout/$', AuthLogoutView.as_view(), name='sentry-logout'), url(r'^auth/reactivate/$', ReactivateAccountView.as_view(), name='sentry-reactivate-account'), url(r'^auth/register/$', AuthLoginView.as_view(), name='sentry-register'), url(r'^auth/close/$', AuthCloseView.as_view(), name='sentry-auth-close'), # Account
url(r'^api/0/', include('sentry.api.urls')), url(r'^api/hooks/mailgun/inbound/', MailgunInboundWebhookView.as_view(), name='sentry-mailgun-inbound-hook'), url(r'^api/hooks/release/(?P<plugin_id>[^/]+)/(?P<project_id>[^/]+)/(?P<signature>[^/]+)/', ReleaseWebhookView.as_view(), name='sentry-release-hook'), url(r'^api/embed/error-page/$', ErrorPageEmbedView.as_view(), name='sentry-error-page-embed'), # OAuth url(r'^oauth/authorize/$', OAuthAuthorizeView.as_view()), url(r'^oauth/token/$', OAuthTokenView.as_view()), # Auth url(r'^auth/link/(?P<organization_slug>[^/]+)/$', AuthOrganizationLoginView.as_view(), name='sentry-auth-link-identity'), url(r'^auth/login/$', AuthLoginView.as_view(), name='sentry-login'), url(r'^auth/login/(?P<organization_slug>[^/]+)/$', AuthOrganizationLoginView.as_view(), name='sentry-auth-organization'), url(r'^auth/2fa/$', TwoFactorAuthView.as_view(), name='sentry-2fa-dialog'), url(r'^auth/2fa/u2fappid\.json$', u2f_appid, name='sentry-u2f-app-id'), url(r'^auth/sso/$', AuthProviderLoginView.as_view(), name='sentry-auth-sso'), url(r'^auth/logout/$', AuthLogoutView.as_view(), name='sentry-logout'), url(r'^auth/reactivate/$', ReactivateAccountView.as_view(), name='sentry-reactivate-account'), url(r'^auth/register/$', AuthLoginView.as_view(), name='sentry-register'),
r"^sls/(?P<organization_slug>[^/]+)/$", SAML2SLSView.as_view(), name="sentry-auth-organization-saml-sls", ), url( r"^metadata/(?P<organization_slug>[^/]+)/$", SAML2MetadataView.as_view(), name="sentry-auth-organization-saml-metadata", ), ]), ), # Auth url( r"^auth/", include([ url(r"^login/$", AuthLoginView.as_view(), name="sentry-login"), url( r"^login/(?P<organization_slug>[^/]+)/$", AuthOrganizationLoginView.as_view(), name="sentry-auth-organization", ), url( r"^link/(?P<organization_slug>[^/]+)/$", AuthOrganizationLoginView.as_view(), name="sentry-auth-link-identity", ), url(r"^2fa/$", TwoFactorAuthView.as_view(), name="sentry-2fa-dialog"), url(r"^2fa/u2fappid\.json$", u2f_appid, name="sentry-u2f-app-id"), url(r"^sso/$",
url(r'^_static/(?P<module>[^/]+)/(?P<path>.*)$', generic.static_media, name='sentry-media'), # API url(r'^api/0/', include('sentry.api.urls')), url(r'^api/hooks/mailgun/inbound/', MailgunInboundWebhookView.as_view(), name='sentry-mailgun-inbound-hook'), url(r'^api/hooks/release/(?P<plugin_id>[^/]+)/(?P<project_id>[^/]+)/(?P<signature>[^/]+)/', ReleaseWebhookView.as_view(), name='sentry-release-hook'), url(r'^api/embed/error-page/$', ErrorPageEmbedView.as_view(), name='sentry-error-page-embed'), # Auth url(r'^auth/link/(?P<organization_slug>[^/]+)/$', AuthLinkIdentityView.as_view(), name='sentry-auth-link-identity'), url(r'^auth/login/$', AuthLoginView.as_view(), name='sentry-login'), url(r'^auth/login/(?P<organization_slug>[^/]+)/$', AuthOrganizationLoginView.as_view(), name='sentry-auth-organization'), url(r'^auth/sso/$', AuthProviderLoginView.as_view(), name='sentry-auth-sso'), url(r'^auth/logout/$', AuthLogoutView.as_view(), name='sentry-logout'), # Account url(r'^login-redirect/$', accounts.login_redirect, name='sentry-login-redirect'), url(r'^register/$', accounts.register,
urlpatterns += patterns( '', # Store endpoints first since they are the most active url(r'^api/store/$', api.StoreView.as_view(), name='sentry-api-store'), url(r'^api/(?P<project_id>[\w_-]+)/store/$', api.StoreView.as_view(), name='sentry-api-store'), url(r'^_static/(?P<module>[^/]+)/(?P<path>.*)$', generic.static_media, name='sentry-media'), # API url(r'^api/0/', include('sentry.api.urls')), # Account url(r'^login/$', AuthLoginView.as_view(), name='sentry-login'), url(r'^login-redirect/$', accounts.login_redirect, name='sentry-login-redirect'), url(r'^logout/$', AuthLogoutView.as_view(), name='sentry-logout'), url(r'^register/$', accounts.register, name='sentry-register'), url(r'^account/sudo/$', 'sudo.views.sudo', {'template_name': 'sentry/account/sudo.html'}, name='sentry-sudo'), url(r'^account/recover/$', accounts.recover, name='sentry-account-recover'), url(r'^account/recover/confirm/(?P<user_id>[\d]+)/(?P<hash>[0-9a-zA-Z]+)/$', accounts.recover_confirm, name='sentry-account-recover-confirm'), url(r'^account/settings/$', accounts.settings,
url(r'^_static/(?:(?P<version>\d{10}|[a-f0-9]{32,40})/)?(?P<module>[^/]+)/(?P<path>.*)$', generic.static_media, name='sentry-media'), # API url(r'^api/0/', include('sentry.api.urls')), url(r'^api/hooks/mailgun/inbound/', MailgunInboundWebhookView.as_view(), name='sentry-mailgun-inbound-hook'), url(r'^api/hooks/release/(?P<plugin_id>[^/]+)/(?P<project_id>[^/]+)/(?P<signature>[^/]+)/', ReleaseWebhookView.as_view(), name='sentry-release-hook'), url(r'^api/embed/error-page/$', ErrorPageEmbedView.as_view(), name='sentry-error-page-embed'), # Auth url(r'^auth/link/(?P<organization_slug>[^/]+)/$', AuthOrganizationLoginView.as_view(), name='sentry-auth-link-identity'), url(r'^auth/login/$', AuthLoginView.as_view(), name='sentry-login'), url(r'^auth/login/(?P<organization_slug>[^/]+)/$', AuthOrganizationLoginView.as_view(), name='sentry-auth-organization'), url(r'^auth/2fa/$', TwoFactorAuthView.as_view(), name='sentry-2fa-dialog'), url(r'^auth/2fa/u2fappid\.json$', u2f_appid, name='sentry-u2f-app-id'), url(r'^auth/sso/$', AuthProviderLoginView.as_view(), name='sentry-auth-sso'), url(r'^auth/logout/$', AuthLogoutView.as_view(), name='sentry-logout'), url(r'^auth/reactivate/$', ReactivateAccountView.as_view(), name='sentry-reactivate-account'), url(r'^auth/register/$', AuthLoginView.as_view(), name='sentry-register'),
# API url(r"^api/0/", include("sentry.api.urls")), url(r"^api/hooks/mailgun/inbound/", MailgunInboundWebhookView.as_view(), name="sentry-mailgun-inbound-hook"), url( r"^api/hooks/release/(?P<plugin_id>[^/]+)/(?P<project_id>[^/]+)/(?P<signature>[^/]+)/", ReleaseWebhookView.as_view(), name="sentry-release-hook", ), url(r"^api/embed/error-page/$", ErrorPageEmbedView.as_view(), name="sentry-error-page-embed"), # Auth url( r"^auth/link/(?P<organization_slug>[^/]+)/$", AuthOrganizationLoginView.as_view(), name="sentry-auth-link-identity", ), url(r"^auth/login/$", AuthLoginView.as_view(), name="sentry-login"), url( r"^auth/login/(?P<organization_slug>[^/]+)/$", AuthOrganizationLoginView.as_view(), name="sentry-auth-organization", ), url(r"^auth/sso/$", AuthProviderLoginView.as_view(), name="sentry-auth-sso"), url(r"^auth/logout/$", AuthLogoutView.as_view(), name="sentry-logout"), # Account url(r"^login-redirect/$", accounts.login_redirect, name="sentry-login-redirect"), url(r"^register/$", AuthLoginView.as_view(), name="sentry-register"), url(r"^account/sudo/$", "sudo.views.sudo", {"template_name": "sentry/account/sudo.html"}, name="sentry-sudo"), url(r"^account/recover/$", accounts.recover, name="sentry-account-recover"), url( r"^account/recover/confirm/(?P<user_id>[\d]+)/(?P<hash>[0-9a-zA-Z]+)/$", accounts.recover_confirm,
name='sentry-openid-login' ), # add by hzwangzhiwei openid success callback url( r'^auth/login/(?P<organization_slug>[^/]+)/$', openid_org_login_index, # AuthOrganizationLoginView.as_view(), name='sentry-auth-organization'), url(r'^auth/sso/$', AuthProviderLoginView.as_view(), name='sentry-auth-sso'), url(r'^auth/logout/$', AuthLogoutView.as_view(), name='sentry-logout'), # Account url(r'^login-redirect/$', accounts.login_redirect, name='sentry-login-redirect'), url(r'^register/$', AuthLoginView.as_view(), name='sentry-register'), url(r'^account/sudo/$', 'sudo.views.sudo', {'template_name': 'sentry/account/sudo.html'}, name='sentry-sudo'), url(r'^account/recover/$', accounts.recover, name='sentry-account-recover'), url(r'^account/recover/confirm/(?P<user_id>[\d]+)/(?P<hash>[0-9a-zA-Z]+)/$', accounts.recover_confirm, name='sentry-account-recover-confirm'), url(r'^account/settings/$', accounts.settings, name='sentry-account-settings'), url(r'^account/settings/appearance/$', accounts.appearance_settings, name='sentry-account-settings-appearance'), url(r'^account/settings/identities/$',