def create_js_catalog_url(): packages = ['django_mptt_admin'] url_pattern = r'^jsi18n/$' if django.VERSION[0:2] <= (1, 9): return create_url(url_pattern, 'jsi18n', javascript_catalog, kwargs=dict(packages=packages), cacheable=True) else: return create_url(url_pattern, 'jsi18n', JavaScriptCatalog.as_view(packages=packages), cacheable=True)
def i18n_javascript(self, request, extra_context=None): """ Displays the i18n JavaScript that the Django admin requires. `extra_context` is unused but present for consistency with the other admin views. """ return JavaScriptCatalog.as_view(packages=['django.contrib.admin'])(request)
def test_i18n_unknown_package_error(self): view = JavaScriptCatalog.as_view() request = RequestFactory().get('/') msg = 'Invalid package(s) provided to JavaScriptCatalog: unknown_package' with self.assertRaisesMessage(ValueError, msg): view(request, packages='unknown_package') msg += ',unknown_package2' with self.assertRaisesMessage(ValueError, msg): view(request, packages='unknown_package+unknown_package2')
def handle(self, *args, **options): fake_request = HttpRequest() fake_request.method = 'GET' for lang in settings.AMO_LANGUAGES: filename = os.path.join( settings.STATICFILES_DIRS[0], 'js', 'i18n', '%s.js' % lang) with translation.override(lang): response = JavaScriptCatalog.as_view()(fake_request) with open(filename, 'w') as f: f.write(force_text(response.content))
def get_urls(self): """ Adds a url to move nodes to this admin """ urls = super(TreeAdmin, self).get_urls() if django.VERSION < (1, 10): from django.views.i18n import javascript_catalog jsi18n_url = url(r'^jsi18n/$', javascript_catalog, {'packages': ('treebeard',)}) else: from django.views.i18n import JavaScriptCatalog jsi18n_url = url(r'^jsi18n/$', JavaScriptCatalog.as_view(packages=['treebeard']), name='javascript-catalog' ) new_urls = [ url('^move/$', self.admin_site.admin_view(self.move_node), ), jsi18n_url, ] return new_urls + urls
def get_urls(self): urls = super(SubscriptionAdmin, self).get_urls() my_urls = [ url(r'^import/$', self._wrap(self.subscribers_import), name=self._view_name('import')), url(r'^import/confirm/$', self._wrap(self.subscribers_import_confirm), name=self._view_name('import_confirm')), ] # Translated JS strings - these should be app-wide but are # only used in this part of the admin. For now, leave them here. if HAS_CBV_JSCAT: my_urls.append(url(r'^jsi18n/$', JavaScriptCatalog.as_view(packages=('newsletter',)), name='newsletter_js18n')) else: my_urls.append(url(r'^jsi18n/$', javascript_catalog, {'packages': ('newsletter',)}, name='newsletter_js18n')) return my_urls + urls
from django.views import defaults from django.views.generic import RedirectView from django.views.i18n import JavaScriptCatalog from django.contrib.staticfiles import views as static_views # pylint suggests importing analytics_dashboard.core, which causes errors in our AMI # pylint: disable=relative-import from core import views admin.autodiscover() urlpatterns = [ url(r'^$', views.LandingView.as_view(), name='landing'), url(r'^api-auth/', include('rest_framework.urls')), url(r'^jsi18n/$', JavaScriptCatalog.as_view(packages=['core', 'courses']), name='javascript-catalog'), url(r'^status/$', views.status, name='status'), url(r'^health/$', views.health, name='health'), url(r'^courses/', include('courses.urls')), url(r'^admin/', admin.site.urls), # TODO: the namespace arg is deprecated, but python-social-auth urls.py doesn't specify app_name so we are stuck # using namespace. Once python-social-auth is updated to fix that, remove the namespace arg. url('', include('social_django.urls', namespace='social')), url(r'^accounts/login/$', RedirectView.as_view(url=reverse_lazy('social:begin', args=['edx-oidc']), permanent=False, query_string=True), name='login'), url(r'^accounts/logout/$', views.InsightsLogoutView.as_view(), name='logout'), url(r'^accounts/logout_then_login/$', views.insights_logout_then_login, name='logout_then_login'), url(r'^test/auto_auth/$', views.AutoAuth.as_view(), name='auto_auth'), url(r'^announcements/', include('pinax.announcements.urls', namespace='pinax_announcements')), ]
def i18n_javascript(self, request): """ Displays the i18n JavaScript that the Django admin requires. """ return JavaScriptCatalog.as_view( packages=['django.contrib.admin'])(request)
re_path(r'^pluginDetection/(?P<detection>[a-zA-Z0-9-]*)$', uds.web.views.plugin_detection, name='PluginDetection'), # Client access enabler re_path(r'^enable/(?P<idService>.+)/(?P<idTransport>.+)$', uds.web.views.clientEnabler, name='ClientAccessEnabler'), # Releaser re_path(r'^release/(?P<idService>.+)$', uds.web.views.release, name='Releaser'), # Custom authentication callback re_path(r'^auth/(?P<authName>.+)', uds.web.views.authCallback, name='uds.web.views.authCallback'), re_path(r'^authinfo/(?P<authName>.+)', uds.web.views.authInfo, name='uds.web.views.authInfo'), re_path(r'^about', uds.web.views.about, name='uds.web.views.about'), # Ticket authentication re_path(r'^tkauth/(?P<ticketId>.+)$', uds.web.views.ticketAuth, name='TicketAuth'), # REST Api re_path(r'^rest/(?P<arguments>.*)$', REST.Dispatcher.as_view(), name="REST"), # Web admin GUI re_path(r'^adm/', include('uds.admin.urls')), # Files re_path(r'^files/(?P<uuid>.+)', uds.web.views.file_storage, name='uds.web.views.file_storage'), # Internacionalization in javascript # Javascript catalog. In fact, lang is not used, but it is maintanied for "backward" user templates compatibility re_path(r'^jsi18n/(?P<lang>[a-z]*)$', JavaScriptCatalog.as_view(), name='uds.web.views.jsCatalog'), ] # Append urls from special dispatchers urlpatterns += loadModulesUrls()
https://docs.djangoproject.com/en/2.0/topics/http/urls/ Examples: Function views 1. Add an import: from my_app import views 2. Add a URL to urlpatterns: path('', views.home, name='home') Class-based views 1. Add an import: from other_app.views import Home 2. Add a URL to urlpatterns: path('', Home.as_view(), name='home') Including another URLconf 1. Import the include() function: from django.urls import include, path 2. Add a URL to urlpatterns: path('blog/', include('blog.urls')) """ import django from django.contrib import admin from django.urls import path, include from django.views.i18n import JavaScriptCatalog from kiz import settings urlpatterns = [ path('admin/jsi18n/', JavaScriptCatalog.as_view()), path('admin/', admin.site.urls), path('', include('main.urls')), ] if settings.DEBUG: import debug_toolbar urlpatterns = [ path('__debug__/', include(debug_toolbar.urls)) ] + urlpatterns
success_url=reverse_lazy('auth_password_reset_done')), name='auth_password_reset'), url(r'^password/reset/confirm/(?P<uidb64>[0-9A-Za-z]+)-(?P<token>.+)/$', auth_views.PasswordResetConfirmView.as_view( template_name='django_registration/password_reset_confirm.html', success_url=reverse_lazy('auth_password_reset_complete')), name='auth_password_reset_confirm'), url(r'^password/reset/complete/$', auth_views.PasswordResetCompleteView.as_view( template_name='django_registration/password_reset_complete.html'), name='auth_password_reset_complete'), url(r'^password/reset/done/$', auth_views.PasswordResetDoneView.as_view( template_name='django_registration/password_reset_done.html'), name='auth_password_reset_done'), # javascript i18n url(r'^jsi18n/(?P<packages>\S+?)/$', JavaScriptCatalog.as_view(), name='jsi18n_catalog'), # admin site url(r'^admin/', admin.site.urls), ] if settings.DEBUG: # pragma: no cover import debug_toolbar from django.contrib.staticfiles.views import serve as serve_static from django.views.decorators.cache import never_cache urlpatterns += [ url(r'^__debug__/', include(debug_toolbar.urls)), url(r'^static/(?P<path>.*)$', never_cache(serve_static)), ]
class BaseApiTests(APITestCase, URLPatternsTestCase): fixtures = [ 'initial_data.json', 'group_test_data.json', 'default_oauth_apps.json', "test_thesaurus.json" ] urlpatterns = [ url(r'^home/$', TemplateView.as_view(template_name='index.html'), name='home'), url(r'^help/$', TemplateView.as_view(template_name='help.html'), name='help'), url(r"^account/", include("allauth.urls")), url(r'^people/', include('geonode.people.urls')), url(r'^api/v2/', include(router.urls)), url(r'^api/v2/', include('geonode.api.urls')), url(r'^api/v2/api-auth/', include('rest_framework.urls', namespace='geonode_rest_framework')), url(r'^$', TemplateView.as_view(template_name='layers/layer_list.html'), { 'facet_type': 'layers', 'is_layer': True }, name='layer_browse'), url(r'^$', TemplateView.as_view(template_name='maps/map_list.html'), { 'facet_type': 'maps', 'is_map': True }, name='maps_browse'), url(r'^$', TemplateView.as_view(template_name='documents/document_list.html'), { 'facet_type': 'documents', 'is_document': True }, name='document_browse'), url(r'^$', TemplateView.as_view(template_name='groups/group_list.html'), name='group_list'), url(r'^search/$', TemplateView.as_view(template_name='search/search.html'), name='search'), url(r'^$', services, name='services'), url( r'^invitations/', include('geonode.invitations.urls', namespace='geonode.invitations')), url(r'^i18n/', include(django.conf.urls.i18n), name="i18n"), url(r'^jsi18n/$', JavaScriptCatalog.as_view(), {}, name='javascript-catalog'), url(r'^(?P<mapid>[^/]+)/embed$', map_embed, name='map_embed'), url(r'^(?P<layername>[^/]+)/embed$', layer_embed, name='layer_embed'), url(r'^(?P<geoappid>[^/]+)/embed$', geoapp_edit, {'template': 'apps/app_embed.html'}, name='geoapp_embed'), ] if check_ogc_backend(geoserver.BACKEND_PACKAGE): from geonode.geoserver.views import layer_acls, resolve_user urlpatterns += [ url(r'^acls/?$', layer_acls, name='layer_acls'), url(r'^acls_dep/?$', layer_acls, name='layer_acls_dep'), url(r'^resolve_user/?$', resolve_user, name='layer_resolve_user'), url(r'^resolve_user_dep/?$', resolve_user, name='layer_resolve_user_dep'), ] def setUp(self): create_models(b'document') create_models(b'map') create_models(b'layer') def test_gropus_list(self): """ Ensure we can access the gropus list. """ url = reverse('group-profiles-list') # Unauhtorized response = self.client.get(url, format='json') self.assertEqual(response.status_code, 403) # Auhtorized self.assertTrue(self.client.login(username='******', password='******')) response = self.client.get(url, format='json') self.assertEqual(response.status_code, 200) self.assertEqual(len(response.data), 5) logger.debug(response.data) self.assertEqual(response.data['total'], 2) self.assertEqual(len(response.data['group_profiles']), 2) url = reverse('group-profiles-detail', kwargs={'pk': 1}) response = self.client.get(url, format='json') self.assertEqual(response.status_code, 200) logger.debug(response.data) self.assertEqual(response.data['group_profile']['title'], 'Registered Members') self.assertEqual(response.data['group_profile']['description'], 'Registered Members') self.assertEqual(response.data['group_profile']['access'], 'private') self.assertEqual(response.data['group_profile']['group']['name'], response.data['group_profile']['slug']) def test_users_list(self): """ Ensure we can access the users list. """ url = reverse('users-list') # Anonymous response = self.client.get(url, format='json') self.assertEqual(response.status_code, 200) self.assertEqual(len(response.data), 5) logger.debug(response.data) self.assertEqual(response.data['total'], 0) self.assertEqual(len(response.data['users']), 0) # Auhtorized self.assertTrue(self.client.login(username='******', password='******')) response = self.client.get(url, format='json') self.assertEqual(response.status_code, 200) self.assertEqual(len(response.data), 5) logger.debug(response.data) self.assertEqual(response.data['total'], 10) self.assertEqual(len(response.data['users']), 10) # response has link to the response self.assertTrue('link' in response.data['users'][0].keys()) url = reverse('users-detail', kwargs={'pk': 1}) response = self.client.get(url, format='json') self.assertEqual(response.status_code, 200) logger.debug(response.data) self.assertEqual(response.data['user']['username'], 'admin') self.assertIsNotNone(response.data['user']['avatar']) # anonymous users are not in contributors group url = reverse('users-detail', kwargs={'pk': -1}) response = self.client.get(url, format='json') self.assertNotIn('add_resource', response.data['user']['perms']) # Bobby self.assertTrue(self.client.login(username='******', password='******')) # Bobby cannot access other users' details response = self.client.get(url, format='json') self.assertEqual(response.status_code, 404) # Bobby can see himself in the list url = reverse('users-list') self.assertEqual(len(response.data), 1) response = self.client.get(url, format='json') self.assertEqual(response.status_code, 200) logger.debug(response.data) self.assertEqual(response.data['total'], 1) self.assertEqual(len(response.data['users']), 1) # Bobby can access its own details bobby = get_user_model().objects.filter(username='******').get() url = reverse('users-detail', kwargs={'pk': bobby.id}) response = self.client.get(url, format='json') self.assertEqual(response.status_code, 200) logger.debug(response.data) self.assertEqual(response.data['user']['username'], 'bobby') self.assertIsNotNone(response.data['user']['avatar']) # default contributor group_perm is returned in perms self.assertIn('add_resource', response.data['user']['perms']) def test_register_users(self): """ Ensure users are created with default groups. """ url = reverse('users-list') user_data = { 'username': '******', } response = self.client.post(url, data=user_data, format='json') self.assertEqual(response.status_code, 201) # default contributor group_perm is returned in perms self.assertIn('add_resource', response.data['user']['perms']) def test_base_resources(self): """ Ensure we can access the Resource Base list. """ url = reverse('base-resources-list') # Anonymous response = self.client.get(url, format='json') self.assertEqual(response.status_code, 200) self.assertEqual(len(response.data), 5) self.assertEqual(response.data['total'], 26) # Pagination self.assertEqual(len(response.data['resources']), 10) logger.debug(response.data) # Remove public permissions to Layers from geonode.layers.utils import set_layers_permissions set_layers_permissions( "read", # permissions_name None, # resources_names == None (all layers) [get_anonymous_user()], # users_usernames None, # groups_names True, # delete_flag ) response = self.client.get(url, format='json') self.assertEqual(response.status_code, 200) self.assertEqual(len(response.data), 5) self.assertEqual(response.data['total'], 18) # Pagination self.assertEqual(len(response.data['resources']), 10) # Admin self.assertTrue(self.client.login(username='******', password='******')) response = self.client.get(url, format='json') self.assertEqual(response.status_code, 200) self.assertEqual(len(response.data), 5) self.assertEqual(response.data['total'], 18) # response has link to the response self.assertTrue('link' in response.data['resources'][0].keys()) # Pagination self.assertEqual(len(response.data['resources']), 10) logger.debug(response.data) # Bobby self.assertTrue(self.client.login(username='******', password='******')) response = self.client.get(url, format='json') self.assertEqual(response.status_code, 200) self.assertEqual(len(response.data), 5) self.assertEqual(response.data['total'], 18) # Pagination self.assertEqual(len(response.data['resources']), 10) logger.debug(response.data) # Norman self.assertTrue(self.client.login(username='******', password='******')) response = self.client.get(url, format='json') self.assertEqual(response.status_code, 200) self.assertEqual(len(response.data), 5) self.assertEqual(response.data['total'], 18) # Pagination self.assertEqual(len(response.data['resources']), 10) logger.debug(response.data) # Pagination # Admin self.assertTrue(self.client.login(username='******', password='******')) response = self.client.get(f"{url}?page_size=17", format='json') self.assertEqual(response.status_code, 200) self.assertEqual(len(response.data), 5) self.assertEqual(response.data['total'], 18) # Pagination self.assertEqual(len(response.data['resources']), 17) # Check user permissions resource = ResourceBase.objects.filter(owner__username='******').first() # Admin response = self.client.get(f"{url}/{resource.id}/", format='json') self.assertTrue( 'change_resourcebase' in list(response.data['resource']['perms'])) # Annonymous self.assertIsNone(self.client.logout()) response = self.client.get(f"{url}/{resource.id}/", format='json') self.assertFalse( 'change_resourcebase' in list(response.data['resource']['perms'])) # user owner self.assertTrue(self.client.login(username='******', password='******')) response = self.client.get(f"{url}/{resource.id}/", format='json') self.assertTrue( 'change_resourcebase' in list(response.data['resource']['perms'])) # user not owner and not assigned self.assertTrue(self.client.login(username='******', password='******')) response = self.client.get(f"{url}/{resource.id}/", format='json') self.assertFalse( 'change_resourcebase' in list(response.data['resource']['perms'])) def test_search_resources(self): """ Ensure we can search across the Resource Base list. """ url = reverse('base-resources-list') # Admin self.assertTrue(self.client.login(username='******', password='******')) response = self.client.get( f"{url}?search=ca&search_fields=title&search_fields=abstract", format='json') self.assertEqual(response.status_code, 200) self.assertEqual(len(response.data), 5) self.assertEqual(response.data['total'], 1) # Pagination self.assertEqual(len(response.data['resources']), 1) def test_filter_resources(self): """ Ensure we can filter across the Resource Base list. """ url = reverse('base-resources-list') # Admin self.assertTrue(self.client.login(username='******', password='******')) # Filter by owner == bobby response = self.client.get(f"{url}?filter{{owner.username}}=bobby", format='json') self.assertEqual(response.status_code, 200) self.assertEqual(len(response.data), 5) self.assertEqual(response.data['total'], 3) # Pagination self.assertEqual(len(response.data['resources']), 3) # Filter by resource_type == document response = self.client.get(f"{url}?filter{{resource_type}}=document", format='json') self.assertEqual(response.status_code, 200) self.assertEqual(len(response.data), 5) self.assertEqual(response.data['total'], 9) # Pagination self.assertEqual(len(response.data['resources']), 9) # Filter by resource_type == layer and title like 'common morx' response = self.client.get( f"{url}?filter{{resource_type}}=layer&filter{{title.icontains}}=common morx", format='json') self.assertEqual(response.status_code, 200) self.assertEqual(len(response.data), 5) self.assertEqual(response.data['total'], 1) # Pagination self.assertEqual(len(response.data['resources']), 1) # Filter by Keywords response = self.client.get(f"{url}?filter{{keywords.name}}=here", format='json') self.assertEqual(response.status_code, 200) self.assertEqual(len(response.data), 5) self.assertEqual(response.data['total'], 1) # Pagination self.assertEqual(len(response.data['resources']), 1) # Filter by Metadata Regions response = self.client.get( f"{url}?filter{{regions.name.icontains}}=Italy", format='json') self.assertEqual(response.status_code, 200) self.assertEqual(len(response.data), 5) self.assertEqual(response.data['total'], 0) # Pagination self.assertEqual(len(response.data['resources']), 0) # Filter by Metadata Categories response = self.client.get( f"{url}?filter{{category.identifier}}=elevation", format='json') self.assertEqual(response.status_code, 200) self.assertEqual(len(response.data), 5) self.assertEqual(response.data['total'], 9) # Pagination self.assertEqual(len(response.data['resources']), 9) # Extent Filter response = self.client.get( f"{url}?page_size=26&extent=-180,-90,180,90", format='json') self.assertEqual(response.status_code, 200) self.assertEqual(len(response.data), 5) self.assertEqual(response.data['total'], 26) # Pagination self.assertEqual(len(response.data['resources']), 26) response = self.client.get(f"{url}?page_size=26&extent=0,0,100,100", format='json') self.assertEqual(response.status_code, 200) self.assertEqual(len(response.data), 5) self.assertEqual(response.data['total'], 26) # Pagination self.assertEqual(len(response.data['resources']), 26) response = self.client.get(f"{url}?page_size=26&extent=-10,-10,-1,-1", format='json') self.assertEqual(response.status_code, 200) self.assertEqual(len(response.data), 5) self.assertEqual(response.data['total'], 12) # Pagination self.assertEqual(len(response.data['resources']), 12) # Extent Filter: Crossing Dateline extent = "-180.0000,56.9689,-162.5977,70.7435,155.9180,56.9689,180.0000,70.7435" response = self.client.get(f"{url}?page_size=26&extent={extent}", format='json') self.assertEqual(response.status_code, 200) self.assertEqual(len(response.data), 5) self.assertEqual(response.data['total'], 12) # Pagination self.assertEqual(len(response.data['resources']), 12) def test_sort_resources(self): """ Ensure we can sort the Resource Base list. """ url = reverse('base-resources-list') # Admin self.assertTrue(self.client.login(username='******', password='******')) response = self.client.get(f"{url}?sort[]=title", format='json') self.assertEqual(response.status_code, 200) self.assertEqual(len(response.data), 5) self.assertEqual(response.data['total'], 26) # Pagination self.assertEqual(len(response.data['resources']), 10) resource_titles = [] for _r in response.data['resources']: resource_titles.append(_r['title']) sorted_resource_titles = sorted(resource_titles.copy()) self.assertEqual(resource_titles, sorted_resource_titles) response = self.client.get(f"{url}?sort[]=-title", format='json') self.assertEqual(response.status_code, 200) self.assertEqual(len(response.data), 5) self.assertEqual(response.data['total'], 26) # Pagination self.assertEqual(len(response.data['resources']), 10) resource_titles = [] for _r in response.data['resources']: resource_titles.append(_r['title']) reversed_resource_titles = sorted(resource_titles.copy()) self.assertNotEqual(resource_titles, reversed_resource_titles) def test_perms_resources(self): """ Ensure we can Get & Set Permissions across the Resource Base list. """ url = reverse('base-resources-list') # Admin self.assertTrue(self.client.login(username='******', password='******')) resource = ResourceBase.objects.filter(owner__username='******').first() set_perms_url = urljoin( f"{reverse('base-resources-detail', kwargs={'pk': resource.pk})}/", 'set_perms/') get_perms_url = urljoin( f"{reverse('base-resources-detail', kwargs={'pk': resource.pk})}/", 'get_perms/') url = reverse('base-resources-detail', kwargs={'pk': resource.pk}) response = self.client.get(url, format='json') self.assertEqual(response.status_code, 200) self.assertEqual(int(response.data['resource']['pk']), int(resource.pk)) response = self.client.get(get_perms_url, format='json') self.assertEqual(response.status_code, 200) resource_perm_spec = response.data self.assertTrue('bobby' in resource_perm_spec['users']) self.assertFalse('norman' in resource_perm_spec['users']) # Add perms to Norman resource_perm_spec['users']['norman'] = resource_perm_spec['users'][ 'bobby'] response = self.client.put(set_perms_url, data=resource_perm_spec, format='json') self.assertEqual(response.status_code, 200) response = self.client.get(get_perms_url, format='json') self.assertEqual(response.status_code, 200) resource_perm_spec = response.data self.assertTrue('norman' in resource_perm_spec['users']) # Remove perms to Norman resource_perm_spec['users']['norman'] = [] response = self.client.put(set_perms_url, data=resource_perm_spec, format='json') self.assertEqual(response.status_code, 200) response = self.client.get(get_perms_url, format='json') self.assertEqual(response.status_code, 200) resource_perm_spec = response.data self.assertFalse('norman' in resource_perm_spec['users']) # Ensure get_perms and set_perms are done by users with correct permissions. # logout admin user self.assertIsNone(self.client.logout()) # get perms response = self.client.get(get_perms_url, format='json') self.assertEqual(response.status_code, 403) # set perms response = self.client.put(set_perms_url, data=resource_perm_spec, format='json') self.assertEqual(response.status_code, 403) # login resourse owner # get perms self.assertTrue(self.client.login(username='******', password='******')) response = self.client.get(get_perms_url, format='json') self.assertEqual(response.status_code, 200) # set perms response = self.client.put(set_perms_url, data=resource_perm_spec, format='json') self.assertEqual(response.status_code, 200) def test_featured_and_published_resources(self): """ Ensure we can Get & Set Permissions across the Resource Base list. """ url = reverse('base-resources-list') # Admin self.assertTrue(self.client.login(username='******', password='******')) resources = ResourceBase.objects.filter(owner__username='******') url = urljoin(f"{reverse('base-resources-list')}/", 'featured/') response = self.client.get(url, format='json') self.assertEqual(response.status_code, 200) self.assertEqual(len(response.data), 5) self.assertEqual(response.data['total'], 0) # Pagination self.assertEqual(len(response.data['resources']), 0) resources.filter(resource_type='map').update(featured=True) url = urljoin(f"{reverse('base-resources-list')}/", 'featured/') response = self.client.get(url, format='json') self.assertEqual(response.status_code, 200) self.assertEqual(len(response.data), 5) self.assertEqual(response.data['total'], 2) # Pagination self.assertEqual(len(response.data['resources']), 2) def test_resource_types(self): """ Ensure we can Get & Set Permissions across the Resource Base list. """ url = urljoin(f"{reverse('base-resources-list')}/", 'resource_types/') response = self.client.get(url, format='json') r_type_names = [ item['name'] for item in response.data['resource_types'] ] self.assertEqual(response.status_code, 200) self.assertTrue('resource_types' in response.data) self.assertTrue('layer' in r_type_names) self.assertTrue('map' in r_type_names) self.assertTrue('document' in r_type_names) self.assertFalse('service' in r_type_names) @patch('PIL.Image.open', return_value=test_image) def test_thumbnail_urls(self, img): """ Ensure the thumbnail url reflects the current active Thumb on the resource. """ # Admin self.assertTrue(self.client.login(username='******', password='******')) resource = ResourceBase.objects.filter(owner__username='******').first() url = reverse('base-resources-detail', kwargs={'pk': resource.pk}) response = self.client.get(url, format='json') self.assertEqual(response.status_code, 200) self.assertEqual(int(response.data['resource']['pk']), int(resource.pk)) thumbnail_url = response.data['resource']['thumbnail_url'] self.assertIsNone(thumbnail_url) f = BytesIO(test_image.tobytes()) f.name = 'test_image.jpeg' curated_thumbnail = CuratedThumbnail.objects.create(resource=resource, img=File(f)) url = reverse('base-resources-detail', kwargs={'pk': resource.pk}) response = self.client.get(url, format='json') self.assertEqual(response.status_code, 200) self.assertEqual(int(response.data['resource']['pk']), int(resource.pk)) thumbnail_url = response.data['resource']['thumbnail_url'] self.assertTrue(curated_thumbnail.thumbnail_url in thumbnail_url) def test_embed_urls(self): """ Ensure the embed urls reflect the concrete instance ones. """ # Admin self.assertTrue(self.client.login(username='******', password='******')) resources = ResourceBase.objects.all() for resource in resources: url = reverse('base-resources-detail', kwargs={'pk': resource.pk}) response = self.client.get(url, format='json') if resource.title.endswith('metadata true'): self.assertEqual(response.status_code, 404) else: self.assertEqual(response.status_code, 200) self.assertEqual(int(response.data['resource']['pk']), int(resource.pk)) embed_url = response.data['resource']['embed_url'] self.assertIsNotNone(embed_url) instance = resource.get_real_instance() if hasattr(instance, 'embed_url'): if instance.embed_url != NotImplemented: self.assertEqual( build_absolute_uri(instance.embed_url), embed_url) else: self.assertEqual("", embed_url) def test_owners_list(self): """ Ensure we can access the list of owners. """ url = reverse('owners-list') # Anonymous response = self.client.get(url, format='json') self.assertEqual(response.status_code, 200) self.assertEqual(response.data['total'], 8) # Admin self.assertTrue(self.client.login(username='******', password='******')) response = self.client.get(url, format='json') self.assertEqual(response.status_code, 200) self.assertEqual(response.data['total'], 8) response = self.client.get(f"{url}?type=geoapp", format='json') self.assertEqual(response.status_code, 200) self.assertEqual(response.data['total'], 0) response = self.client.get(f"{url}?type=layer&title__icontains=CA", format='json') self.assertEqual(response.status_code, 200) self.assertEqual(response.data['total'], 1) # response has link to the response self.assertTrue('link' in response.data['owners'][0].keys()) # Authenticated user self.assertTrue(self.client.login(username='******', password='******')) response = self.client.get(url, format='json') self.assertEqual(response.status_code, 200) self.assertEqual(response.data['total'], 8) def test_categories_list(self): """ Ensure we can access the list of categories. """ url = reverse('categories-list') # Anonymous response = self.client.get(url, format='json') self.assertEqual(response.status_code, 200) self.assertEqual(response.data['total'], TopicCategory.objects.count()) # Admin self.assertTrue(self.client.login(username='******', password='******')) response = self.client.get(url, format='json') self.assertEqual(response.status_code, 200) self.assertEqual(response.data['total'], TopicCategory.objects.count()) # response has link to the response self.assertTrue('link' in response.data['categories'][0].keys()) # Authenticated user self.assertTrue(self.client.login(username='******', password='******')) response = self.client.get(url, format='json') self.assertEqual(response.status_code, 200) self.assertEqual(response.data['total'], TopicCategory.objects.count()) def test_regions_list(self): """ Ensure we can access the list of regions. """ url = reverse('regions-list') # Anonymous response = self.client.get(url, format='json') self.assertEqual(response.status_code, 200) self.assertEqual(response.data['total'], Region.objects.count()) # Admin self.assertTrue(self.client.login(username='******', password='******')) response = self.client.get(url, format='json') self.assertEqual(response.status_code, 200) self.assertEqual(response.data['total'], Region.objects.count()) # response has link to the response self.assertTrue('link' in response.data['regions'][0].keys()) # Authenticated user self.assertTrue(self.client.login(username='******', password='******')) response = self.client.get(url, format='json') self.assertEqual(response.status_code, 200) self.assertEqual(response.data['total'], Region.objects.count()) def test_keywords_list(self): """ Ensure we can access the list of keywords. """ url = reverse('keywords-list') # Anonymous response = self.client.get(url, format='json') self.assertEqual(response.status_code, 200) self.assertEqual(response.data['total'], HierarchicalKeyword.objects.count()) # Admin self.assertTrue(self.client.login(username='******', password='******')) response = self.client.get(url, format='json') self.assertEqual(response.status_code, 200) self.assertEqual(response.data['total'], HierarchicalKeyword.objects.count()) # response has link to the response self.assertTrue('link' in response.data['keywords'][0].keys()) # Authenticated user self.assertTrue(self.client.login(username='******', password='******')) response = self.client.get(url, format='json') self.assertEqual(response.status_code, 200) self.assertEqual(response.data['total'], HierarchicalKeyword.objects.count()) def test_tkeywords_list(self): """ Ensure we can access the list of thasaurus keywords. """ url = reverse('tkeywords-list') # Anonymous response = self.client.get(url, format='json') self.assertEqual(response.status_code, 200) self.assertEqual(response.data['total'], ThesaurusKeyword.objects.count()) # Admin self.assertTrue(self.client.login(username='******', password='******')) response = self.client.get(url, format='json') self.assertEqual(response.status_code, 200) self.assertEqual(response.data['total'], ThesaurusKeyword.objects.count()) # response has link to the response self.assertTrue('link' in response.data['tkeywords'][0].keys()) # Authenticated user self.assertTrue(self.client.login(username='******', password='******')) response = self.client.get(url, format='json') self.assertEqual(response.status_code, 200) self.assertEqual(response.data['total'], ThesaurusKeyword.objects.count())
from django.conf.urls import url from django.views.i18n import JavaScriptCatalog from . import admin_views from . import fiber_admin urlpatterns = [ url(r'^page/(?P<id>\d+)/move_up/$', admin_views.page_move_up, name='fiber_page_move_up'), url(r'^page/(?P<id>\d+)/move_down/$', admin_views.page_move_down, name='fiber_page_move_down'), url(r'^login/$', admin_views.fiber_login, name='fiber_login'), url(r'^pages.json$', admin_views.pages_json, name='pages_json'), url(r'^fiber_admin/', fiber_admin.site.urls), url(r'^jsi18n/$', JavaScriptCatalog.as_view(), {'packages': 'fiber'}, name='fiber_i18n'), ]
# User management url(r"", include("socialhome.users.urls", namespace="users")), url(r"^accounts/", include("allauth.urls")), # Markdownx # Use our own upload view based on the MarkdownX view url(r"^markdownx/upload/$", MarkdownXImageUploadView.as_view(), name="markdownx_upload"), url(r"^markdownx/", include("markdownx.urls")), # Content url(r"^content/", include("socialhome.content.urls", namespace="content")), # Fallback for bookmarklet route for cross-project support url(r"^bookmarklet/", ContentBookmarkletView.as_view(), name="bookmarklet"), # JavaScript translations path("jsi18n/", JavaScriptCatalog.as_view(packages=['socialhome']), name="javascript-catalog"), # Django URLs in JS url(r"^jsreverse/$", urls_js, name="js_reverse"), # Admin pages url(settings.ADMIN_URL, admin.site.urls), url(r"^django-rq/", include("django_rq.urls")), # API url(r"^api/$", schema_view, name="api-docs"), url(r"^api/", include((router.urls, "api"))), url(r"^api/image-upload/$", ImageUploadView.as_view(), name="api-image-upload"), url(r"^api/streams/", include("socialhome.streams.urls.api", namespace="api-streams")), url(r"^api-auth/", include("rest_framework.urls", namespace="rest_framework")), url(r"^api-token-auth/", ObtainSocialhomeAuthToken.as_view(), name="api-token-auth"),
url(r'^environment/properties/values/$', management_views.environment_property_values, name='mgmt-environment_property_values'), # Report zone url(r'^report/', include(report_urls)), url(r'^report_builder/', include(report_builder_urls)), # Advanced search url(r'^advance-search/$', TemplateView.as_view(template_name="advanced_search/deprecation_warning.html")), url(r'^deprecated/advanced-search/$', advanced_search.advance_search, name='advance_search'), # TODO: do we need this at all ??? # Using admin js without admin permission # https://docs.djangoproject.com/en/1.11/topics/i18n/translation/#django.views.i18n.JavaScriptCatalog url(r'^jsi18n/$', JavaScriptCatalog.as_view()), ] # Debug zone if settings.DEBUG: urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) try: import debug_toolbar urlpatterns += [ url(r'^__debug__/', include(debug_toolbar.urls)), ] # in case we're trying to debug in production # and debug_toolbar is not installed
url(r'favicon\.ico$', RedirectView.as_view(url='/static/favicon.ico')), url(r'robots\.txt$', RedirectView.as_view(url='/static/robots.txt')), ] # Custom handlers for error pages. handler404 = 'freppledb.common.views.handler404' handler500 = 'freppledb.common.views.handler500' # Adding urls for each installed application. for app in settings.INSTALLED_APPS: try: mod = import_module('%s.urls' % app) if hasattr(mod, 'urlpatterns'): if getattr(mod, 'autodiscover', False): urlpatterns += mod.urlpatterns except ImportError as e: # Silently ignore if the missing module is called urls if 'urls' not in str(e): raise e # Admin pages, and the Javascript i18n library. # It needs to be added as the last item since the applications can # hide/override some admin urls. urlpatterns += [ url(r'^data/', data_site.urls), url(r'^data/jsi18n/$', JavaScriptCatalog.as_view(packages=['django.conf', 'freppledb'])), url(r'^admin/jsi18n/$', JavaScriptCatalog.as_view(packages=['django.conf', 'freppledb'])), url(r'^api-auth/', include('rest_framework.urls', namespace='rest_framework')), ]
import django from django.conf.urls import url from django.views.i18n import JavaScriptCatalog javascript_catalog = JavaScriptCatalog.as_view() from main.jet.views import add_bookmark_view, remove_bookmark_view, toggle_application_pin_view, model_lookup_view app_name = 'jet' urlpatterns = [ url(r'^add_bookmark/$', add_bookmark_view, name='add_bookmark'), url(r'^remove_bookmark/$', remove_bookmark_view, name='remove_bookmark'), url(r'^toggle_application_pin/$', toggle_application_pin_view, name='toggle_application_pin'), url(r'^model_lookup/$', model_lookup_view, name='model_lookup'), url(r'^jsi18n/$', javascript_catalog, {'packages': 'django.contrib.admin+jet'}, name='jsi18n'), ] if django.VERSION[:2] < (1, 8): from django.conf.urls import patterns urlpatterns = patterns('', *urlpatterns)
'requests/', params={'page_size': 1}) kwargs['user_request_count'] = response.json().get('count') return super().get_context_data(start_page_url=settings.START_PAGE_URL, **kwargs) urlpatterns = i18n_patterns( url(r'^$', login_required(LandingView.as_view()), name='home'), url(r'^', include('cashbook.urls')), url(r'^disbursements/', include('disbursements.urls', namespace='disbursements')), url(r'^', include('mtp_auth.urls')), url(r'^', include('mtp_common.user_admin.urls')), url(r'^', include('feedback.urls')), url(r'^js-i18n.js$', cache_control(public=True, max_age=86400)(JavaScriptCatalog.as_view()), name='js-i18n'), url( r'^404.html$', lambda request: TemplateResponse( request, 'mtp_common/errors/404.html', status=404)), url( r'^500.html$', lambda request: TemplateResponse( request, 'mtp_common/errors/500.html', status=500)), ) urlpatterns += [ url(r'^ping.json$', PingJsonView.as_view( build_date_key='APP_BUILD_DATE', commit_id_key='APP_GIT_COMMIT', version_number_key='APP_BUILD_TAG',
from django.conf.urls import url from django.urls import path from django.views.i18n import JavaScriptCatalog from django.views.decorators.cache import cache_page from django.utils import timezone from . import views # When we last restarted the server; used for cache control headers and # invalidating the server side cache on server restart last_modified_date = timezone.now() urlpatterns = [ path('jsi18n/', cache_page(86400, key_prefix='js18n-%s' % last_modified_date)( JavaScriptCatalog.as_view(packages=['webpush']) ), name='javascript-catalog'), path('save_information', views.save_info, name='save_webpush_info'), path('jwt/save_information', views.jwt_save_info, name='jwt_save_webpush_info'), # Service worker need to be loaded from same domain path('service-worker.js', views.ServiceWorkerView.as_view(), name='service_worker') ]
groups.groups_delete, name='groups_delete'), # Journal urls url(r'^journal/(?P<pk>\d+)?/?$', journal.JournalView.as_view(), name='journal'), # Exams urls url(r'^exams/$', exams.exams_list, name='exams'), # Contact_admin url url(r'^contact-admin/$', contact_admin.contact_admin, name='contact_admin'), url(r'^jsi18n\.js$', JavaScriptCatalog.as_view(packages=['students']), name='javascript-catalog'), url(r'^admin/', include(admin.site.urls)), # User Related urls url(r'^users/profile/$', login_required( TemplateView.as_view(template_name='registration/profile.html')), name='profile'), url(r'^users/logout/$', auth_views.logout, kwargs={'next_page': 'home'}, name='auth_logout'), url(r'^register/complete/$', RedirectView.as_view(pattern_name='home'), name='registration_complete'),
from . import views from ...users.forms.auth import AdminAuthenticationForm admin.autodiscover() admin.site.login_form = AdminAuthenticationForm urlpatterns = [ url(r"^", include("social_django.urls", namespace="social")), url(r"^forum/", include("misago.urls", namespace="misago")), url(r"^django-admin/", admin.site.urls), url( r"^django-i18n.js$", cache_page(86400 * 2, key_prefix="misagojsi18n")( last_modified(lambda req, **kw: timezone.now())( JavaScriptCatalog.as_view(packages=["misago"]))), name="django-i18n", ), url(r"^forum/test-pagination/$", views.test_pagination, name="test-pagination"), url( r"^forum/test-pagination/(?P<page>[1-9][0-9]*)/$", views.test_pagination, name="test-pagination", ), url( r"^forum/test-paginated-response/$", views.test_paginated_response, name="test-paginated-response", ),
from django.conf.urls import include from django.conf.urls.i18n import i18n_patterns from django.contrib import admin from django.contrib.sitemaps.views import sitemap from django.contrib.staticfiles.urls import staticfiles_urlpatterns from django.urls import path from django.views.i18n import JavaScriptCatalog from django.views.static import serve from djangocms_blog.sitemaps import BlogSitemap admin.autodiscover() urlpatterns = [ path("media/<str:path>", serve, {"document_root": settings.MEDIA_ROOT, "show_indexes": True}), path("jsi18n/", JavaScriptCatalog.as_view(), name="javascript-catalog"), path("taggit_autosuggest/", include("taggit_autosuggest.urls")), path("itemap.xml", sitemap, {"sitemaps": {"cmspages": CMSSitemap, "blog": BlogSitemap}}), ] urlpatterns += staticfiles_urlpatterns() if "server" not in sys.argv: urlpatterns += i18n_patterns( path("blog/", include("djangocms_blog.urls")), ) urlpatterns += i18n_patterns( path("admin/", admin.site.urls), path("", include("cms.urls")), )
from django.conf.urls import include, url from django.views.decorators.cache import cache_page from django.views.i18n import JavaScriptCatalog from kanisa.views import KanisaIndexView from kanisa.views.public.seasonal import seasonal_view urlpatterns = [ url(r'^$', KanisaIndexView.as_view(), {}, 'kanisa_public_index'), url(r'^banners/', include('kanisa.urls.public.banners')), url(r'^blog/', include('kanisa.urls.public.blog')), url(r'^christmas/$', seasonal_view, {'season': 'christmas'}, 'kanisa_public_seasonal'), url(r'^diary/', include('kanisa.urls.public.diary')), url(r'^easter/$', seasonal_view, {'season': 'easter'}, 'kanisa_public_seasonal'), url(r'^jsi18n/$', cache_page(86400, key_prefix='js18n')(JavaScriptCatalog.as_view( packages=['recurrence'] )), name='javascript-catalog'), url(r'^manage/', include('kanisa.urls.management')), url(r'^members/', include('kanisa.urls.members')), url(r'^search/', include('kanisa.urls.public.search')), url(r'^sermons/', include('kanisa.urls.public.sermons')), url(r'^xhr/', include('kanisa.urls.xhr')), ]
admin.autodiscover() admin.site.login_form = AdminAuthenticationForm urlpatterns = [ url(r'^', include('misago.urls', namespace='misago')), # Javascript translations url( r'^django-i18n.js$', last_modified(lambda req, **kw: timezone.now())( cache_page(86400 * 2, key_prefix='misagojsi18n')( JavaScriptCatalog.as_view( packages=['misago'], ), ), ), name='django-i18n', ), # Uncomment next line if you plan to use Django admin for 3rd party apps #url(r'^django-admin/', admin.site.urls), ] # If debug mode is enabled, include debug toolbar if settings.DEBUG: import debug_toolbar urlpatterns += [
from django.contrib import admin from django.conf.urls.static import static from django.conf import settings from django.conf.urls.i18n import i18n_patterns from django.utils.translation import gettext_lazy as _ from django.views.i18n import JavaScriptCatalog from django.views.generic import TemplateView from machina import urls as machina_urls admin.autodiscover() urlpatterns = [ path('i18n/', include('django.conf.urls.i18n')), path('jsi18n/', JavaScriptCatalog.as_view(domain="django"), name='javascript-catalog'), path('comments/default/', include('django_comments.urls')), path('api-auth/', include('rest_framework.urls', namespace='rest_framework')), path('reviews/', include('reviews.urls')), path('.well-known/', include('letsencrypt.urls')), path('.well-known/', include('diventi.brave.urls')), path('__debug__/', include(debug_toolbar.urls)), ] urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) urlpatterns += [ path('payments/', include('diventi.payments.urls', namespace='payments')), path('apps/', include('diventi.products.urls', namespace='products_retro')
name='public_map'), url(r'^public/task/(?P<task_pk>[^/.]+)/iframe/map/$', public_views.map_iframe, name='public_iframe_map'), url(r'^public/task/(?P<task_pk>[^/.]+)/3d/$', public_views.model_display, name='public_3d'), url(r'^public/task/(?P<task_pk>[^/.]+)/iframe/3d/$', public_views.model_display_iframe, name='public_iframe_3d'), url(r'^public/task/(?P<task_pk>[^/.]+)/json/$', public_views.task_json, name='public_json'), url(r'^processingnode/([\d]+)/$', app_views.processing_node, name='processing_node'), url(r'^api/', include("app.api.urls")), url(r'^plugins/(?P<plugin_name>[^/.]+)/(.*)$', app_view_handler), url(r'^about/$', app_views.about, name='about'), url(r'^dev-tools/(?P<action>.*)$', dev_views.dev_tools, name='dev_tools'), # TODO: add caching: https://docs.djangoproject.com/en/3.1/topics/i18n/translation/#note-on-performance url(r'^jsi18n/', JavaScriptCatalog.as_view(packages=['app']), name='javascript-catalog'), url(r'^i18n/', include('django.conf.urls.i18n')), ] + root_url_patterns() handler404 = app_views.handler404 handler500 = app_views.handler500
from django.conf import settings from django.conf.urls import url, include from django.utils.module_loading import import_string, autodiscover_modules from django.views.i18n import JavaScriptCatalog from django.views.static import serve from djangofloor import urls from djangofloor.scripts import load_celery from djangofloor.utils import get_view_from_string from djangofloor.views import favicon, robots __author__ = "Matthieu Gallet" load_celery() catalog_view = JavaScriptCatalog.as_view(packages=settings.DF_JS_CATALOG_VIEWS) urlpatterns = [ url(r"jsi18n/$", catalog_view, name="jsi18n"), url( r"%s(?P<path>.*)$" % settings.MEDIA_URL[1:], serve, {"document_root": settings.MEDIA_ROOT}, ), url( r"%s(?P<path>.*)$" % settings.STATIC_URL[1:], serve, {"document_root": settings.STATIC_ROOT}, ), url(r"df/", include(urls, namespace="df")), url(r"robots\.txt$", robots), url(
name='plot_aggregate'), path('ajax/model-options/', ajax_aggregates_meta_view, name="ajax_load_model_options"), ## Trend Routing path('analyze/plot/trend/', PlotTrendView.as_view(), name='plot_trend'), ] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) js_info_dict = { 'domain': 'djangojs', 'packages': ('quorem', ), } try: from django.views.i18n import JavaScriptCatalog urlpatterns += [ url(r'^jsi18n/$', JavaScriptCatalog.as_view(**js_info_dict), name='javascript-catalog'), ] except ImportError: from django.views.i18n import javascript_catalog urlpatterns += [ url( r'^jsi18n/$', javascript_catalog, js_info_dict, name='javascript-catalog', ) ]
urlpatterns = i18n_patterns( url(r'^blog/', include('ideascube.blog.urls')), url(r'^library/', include('ideascube.library.urls')), url(r'^search/', include('ideascube.search.urls')), url(r'^mediacenter/', include('ideascube.mediacenter.urls')), url(r'^monitoring/', include('ideascube.monitoring.urls')), url(r'^$', views.index, name='index'), url(r'^welcome_staff/$', views.welcome_staff, name='welcome_staff'), url(r'^server/', include('ideascube.serveradmin.urls')), url(r'^login/$', auth_views.login, name='login'), url(r'^logout/$', auth_views.logout, kwargs={"next_page": "/"}, name='logout'), url(r'^user/$', views.user_list, name='user_list'), url(r'^user/(?P<pk>[\d]+)/$', views.user_detail, name='user_detail'), url(r'^user/(?P<pk>[\d]+)/edit/$', views.user_update, name='user_update'), url(r'^user/(?P<pk>[\d]+)/set-password/$', views.set_password, name='user_set_password'), url(r'^user/new/$', views.user_create, name='user_create'), url(r'^user/export/$', views.user_export, name='user_export'), url(r'^user/import/$', views.user_import, name='user_import'), url(r'^user/(?P<pk>[\d]+)/delete/$', views.user_delete, name='user_delete'), url(r'^user/(?P<pk>[\d]+)/toggle-staff/$', views.user_toggle_staff, name='user_toggle_staff'), url(r'^jsi18n/$', JavaScriptCatalog.as_view(packages=['ideascube']), name='jsi18n'), ) urlpatterns = urlpatterns + [ url(r'^i18n/', include('django.conf.urls.i18n')), ] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
def create_js_catalog_url(): packages = ['django_mptt_admin'] url_pattern = r'^jsi18n/$' return create_url(url_pattern, 'jsi18n', JavaScriptCatalog.as_view(packages=packages), cacheable=True)
# App versions. url(r'pages/appversions/', include('olympia.applications.urls')), # Services url(r'', include('olympia.amo.urls')), # Search url(r'^search/', include('olympia.search.urls')), # Javascript translations. # Should always be called with a cache-busting querystring. # Still served for the moment, but superseded by a fully static version we # generate at deploy-time through our generate_jsi18n_files command. url(r'^jsi18n\.js$', cache_page(60 * 60 * 24 * 365)(JavaScriptCatalog.as_view()), {'domain': 'djangojs', 'packages': []}, name='jsi18n'), # API v3+. url(r'^api/', include('olympia.api.urls')), # Redirect for all global stats URLs. url(r'^statistics/', lambda r: redirect('/'), name='statistics.dashboard'), # Redirect patterns. url(r'^bookmarks/?$', lambda r: redirect('browse.extensions', 'bookmarks', permanent=True)), url(r'^reviews/display/(\d+)', lambda r, id: redirect('addons.ratings.list', id, permanent=True)),
"""ImageCollector2 URL Configuration The `urlpatterns` list routes URLs to views. For more information please see: https://docs.djangoproject.com/en/2.0/topics/http/urls/ Examples: Function views 1. Add an import: from my_app import views 2. Add a URL to urlpatterns: path('', views.home, name='home') Class-based views 1. Add an import: from other_app.views import Home 2. Add a URL to urlpatterns: path('', Home.as_view(), name='home') Including another URLconf 1. Import the include() function: from django.urls import include, path 2. Add a URL to urlpatterns: path('blog/', include('blog.urls')) """ from django.contrib import admin from django.urls import include from django.conf.urls import url from django.views.i18n import JavaScriptCatalog urlpatterns = [ url(r'^jsi18n', JavaScriptCatalog.as_view(), name="javascript-catalog"), url(r'^i18n/', include('django.conf.urls.i18n')), url(r'^collector/', include('collector.urls')), url(r'^admin/', admin.site.urls), ]
from django.conf import settings from django.conf.urls import url from django.conf.urls.static import static from django.contrib import admin from django.urls import include, path from django.views import defaults as default_views from django.views.i18n import JavaScriptCatalog from graphene_django.views import GraphQLView urlpatterns = [ url(r'^graphql$', GraphQLView.as_view(graphiql=True)), url(r"", include("thefederation.urls")), # JavaScript translations path("jsi18n/", JavaScriptCatalog.as_view(packages=['thefederation']), name="javascript-catalog"), # Admin pages url(settings.ADMIN_URL, admin.site.urls), url(r"^django-rq/", include("django_rq.urls")), url(r'^_silk/', include('silk.urls', namespace='silk')), ] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) if settings.DEBUG: # This allows the error pages to be debugged during development, just visit # these url in browser to see how these error pages look like. urlpatterns += [ url(r"^400/$", default_views.bad_request, kwargs={"exception": Exception("Bad Request!")}),
# -*- coding: utf-8 -*- # from django.conf import settings from django.urls import path, re_path, include from django.views.i18n import JavaScriptCatalog from . import views urlpatterns=[ re_path(r'^login/?$', views.login, name='login'), re_path(r'^logout/?$', views.logout, name='logout'), re_path(r'^users/?$', views.users, name='users'), re_path(r'^users/(?P<user>[^/]*)/?$', views.user, name='user'), re_path(r'^users/(?P<user>[^/]*)/prefs/?$', views.prefs, name='prefs'), re_path(r'^users/(?P<user>[^/]*)/prefs/(?P<prefId>[^/]*)/?$', views.pref, name='pref'), re_path(r'^ajax/users/?$', views.ajaxUsers, name='ajax-users'), re_path(r'^ajax/pref/(?P<name>[^/]+)/?$', views.ajaxPref, name='ajax-pref'), #It can be disabled in WF-AJAX_PREF re_path(r'^ajax/prefs/(?P<name>[^/]+)/?$', views.ajaxPrefs, name='ajax-prefs'), #It can be disabled in WF-AJAX_PREFS re_path('jsi18n/', JavaScriptCatalog.as_view(domain='django', packages=['webframe',]), name='js'), ]
# Ticket authentication related re_path(r'^uds/page/ticket/auth/(?P<ticketId>[a-zA-Z0-9-])$', uds.web.views.ticketAuth, name='page.ticket.auth'), path(r'uds/page/ticket/launcher', uds.web.views.modern.index, name='page.ticket.launcher'), # This must be the last, so any patition will be managed by client in fact re_path(r'uds/page/.*', uds.web.views.modern.index, name='page.placeholder'), # Utility path('uds/utility/closer', uds.web.views.service.closer, name='utility.closer'), # Javascript path(r'uds/utility/uds.js', uds.web.views.modern.js, name="utility.js"), # i18n re_path(r'^uds/utility/i18n/(?P<lang>[a-z_-]*).js$', JavaScriptCatalog.as_view(), name='utility.jsCatalog'), path(r'uds/utility/i18n/', include('django.conf.urls.i18n')), # Downloader re_path(r'^uds/utility/download/(?P<idDownload>[a-zA-Z0-9-]*)$', uds.web.views.download, name='utility.downloader'), # WEB API path (not REST api, frontend) re_path(r'^uds/webapi/img/transport/(?P<idTrans>[a-zA-Z0-9-]+)$', uds.web.views.transportIcon, name='webapi.transportIcon'), re_path(r'^uds/webapi/img/gallery/(?P<idImage>[a-zA-Z0-9-]+)$', uds.web.views.image, name='webapi.galleryImage'), re_path(r'^uds/webapi/action/(?P<idService>.+)/enable/(?P<idTransport>[a-zA-Z0-9-]+)$', uds.web.views.userServiceEnabler, name='webapi.enabler'), re_path(r'^uds/webapi/action/(?P<idService>.+)/(?P<action>[a-zA-Z0-9-]+)$', uds.web.views.action, name='webapi.action'), # Services list, ... path(r'uds/webapi/services', uds.web.views.modern.servicesData, name='webapi.services'),
from django.conf import settings from django.conf.urls import include, url, static from django.contrib import admin from django.views.i18n import JavaScriptCatalog from test_app.views import root, AuthorAutocomplete admin.autodiscover() urlpatterns = [ url(r'^$', root), url(r'^author_autocomplete/$', AuthorAutocomplete.as_view(), name="author-autocomplete"), url(r'^multiseek/', include(('multiseek.urls', 'multiseek'), namespace="multiseek")), url(r'^admin/', admin.site.urls), url(r'^i18n/$', JavaScriptCatalog.as_view(packages=['multiseek']), name="js_i18n_catalog") ] + static.static(settings.STATIC_URL, document_root=settings.STATIC_ROOT, show_indexes=True)
app_view_patterns = [ path('users/', include('users.urls.views_urls', namespace='users')), path('assets/', include('assets.urls.views_urls', namespace='assets')), path('perms/', include('perms.urls.views_urls', namespace='perms')), path('terminal/', include('terminal.urls.views_urls', namespace='terminal')), path('ops/', include('ops.urls.view_urls', namespace='ops')), path('audits/', include('audits.urls.view_urls', namespace='audits')), path('orgs/', include('orgs.urls.views_urls', namespace='orgs')), path('auth/', include('authentication.urls.view_urls'), name='auth'), ] if settings.XPACK_ENABLED: app_view_patterns.append(path('xpack/', include('xpack.urls', namespace='xpack'))) js_i18n_patterns = i18n_patterns( path('jsi18n/', JavaScriptCatalog.as_view(), name='javascript-catalog'), ) urlpatterns = [ path('', IndexView.as_view(), name='index'), path('luna/', LunaView.as_view(), name='luna-error'), path('i18n/<str:lang>/', I18NView.as_view(), name='i18n-switch'), path('settings/', include('common.urls.view_urls', namespace='settings')), path('common/', include('common.urls.view_urls', namespace='common')), path('api/v1/', redirect_format_api), path('api/', include(v1_api_patterns)), # External apps url path('captcha/', include('captcha.urls')), ] urlpatterns += app_view_patterns
from django.urls import include, re_path from django.views.i18n import JavaScriptCatalog urlpatterns = [ re_path(r'^', include('course_grader.urls')), re_path(r'^saml/', include('uw_saml.urls')), re_path(r'^support/?', include('userservice.urls')), re_path(r'^persistent_message/', include('persistent_message.urls')), re_path(r'^jsi18n/$', JavaScriptCatalog.as_view(packages=['grade_conversion_calculator', 'course_grader']), name='javascript-catalog') ]
url(r"^dashboard/", include((dashboard_urls, "dashboard"), namespace="dashboard")), url(r"^graphql/", csrf_exempt(GraphQLView.as_view(schema=schema)), name="api"), url( r"^sitemap\.xml$", sitemap, {"sitemaps": sitemaps}, name="django.contrib.sitemaps.views.sitemap", ), url(r"^i18n/$", set_language, name="set_language"), url("", include("social_django.urls", namespace="social")), ] translatable_urlpatterns = [ url(r"^", include(core_urls)), url(r"^checkout/", include((checkout_urls, "checkout"), namespace="checkout")), url(r"^jsi18n/$", JavaScriptCatalog.as_view(), name="javascript-catalog"), url(r"^order/", include((order_urls, "order"), namespace="order")), url(r"^page/", include((page_urls, "page"), namespace="page")), url(r"^products/", include((product_urls, "product"), namespace="product")), url(r"^account/", include((account_urls, "account"), namespace="account")), url(r"^feeds/", include((feed_urls, "data_feeds"), namespace="data_feeds")), url(r"^search/", include((search_urls, "search"), namespace="search")), ] urlpatterns = non_translatable_urlpatterns + i18n_patterns(*translatable_urlpatterns) if settings.DEBUG: import debug_toolbar urlpatterns += [ url(r"^__debug__/", include(debug_toolbar.urls)),
def i18n_javascript(self, request): """ Displays the i18n JavaScript that the Django admin requires. """ return JavaScriptCatalog.as_view(packages=["django.contrib.admin"])(request)
from cms.test_utils.project.sampleapp.forms import LoginForm, LoginForm2, LoginForm3 from cms.test_utils.project.placeholderapp.views import example_view, latest_view from cms.test_utils.project.sampleapp.views import plain_view admin.autodiscover() urlpatterns = [ url(r'^media/(?P<path>.*)$', serve, { 'document_root': settings.MEDIA_ROOT, 'show_indexes': True }), url(r'^media/cms/(?P<path>.*)$', serve, { 'document_root': get_cms_setting('MEDIA_ROOT'), 'show_indexes': True }), url(r'^jsi18n/(?P<packages>\S+?)/$', JavaScriptCatalog.as_view()), ] urlpatterns += staticfiles_urlpatterns() urlpatterns += i18n_patterns( url(r'^sample/login_other/$', LoginView.as_view(), kwargs={'authentication_form': LoginForm2}), url(r'^sample/login/$', LoginView.as_view(), kwargs={'authentication_form': LoginForm}), url(r'^sample/login3/$', LoginView.as_view(), kwargs={'authentication_form': LoginForm3}), url(r'^admin/', admin.site.urls),
] urlpatterns = AUTH_URLS + WELL_KNOWN_URLS + [ url(r'^admin/', include(admin.site.urls)), url(r'^auto_auth/$', core_views.AutoAuth.as_view(), name='auto_auth'), url(r'^api-auth/', include(AUTH_URLS, namespace='rest_framework')), url(r'^api-docs/', get_swagger_view(title='Ecommerce API'), name='api_docs'), url(r'^courses/', include('ecommerce.courses.urls', namespace='courses')), url(r'^credit/', include('ecommerce.credit.urls', namespace='credit')), url(r'^coupons/', include('ecommerce.coupons.urls', namespace='coupons')), url(r'^health/$', core_views.health, name='health'), url(r'^i18n/', include('django.conf.urls.i18n')), url(r'^jsi18n/$', JavaScriptCatalog.as_view(packages=['courses']), name='javascript-catalog'), url(r'^management/', include('ecommerce.management.urls', namespace='management')), url(r'^payment-bff/', include('ecommerce.payment_bff.urls', namespace='payment_bff')), url(r'^programs/', include('ecommerce.programs.urls', namespace='programs')), url(r'^enterprise/', include('ecommerce.enterprise.urls', namespace='enterprise')), url(r'^journals/', include('ecommerce.journals.urls', namespace='journals')), # TODO: journals dependency ] # Install Oscar extension URLs
from misago.users.forms.auth import AdminAuthenticationForm admin.autodiscover() admin.site.login_form = AdminAuthenticationForm urlpatterns = [ url(r"^", include("misago.urls", namespace="misago")), url(r"^", include("social_django.urls", namespace="social")), # Javascript translations url( r"^django-i18n.js$", last_modified(lambda req, **kw: timezone.now())( cache_page(86400 * 2, key_prefix="misagojsi18n")( JavaScriptCatalog.as_view(packages=["misago"]) ) ), name="django-i18n", ), # Uncomment next line if you plan to use Django admin for 3rd party apps url(r"^django-admin/", admin.site.urls), ] # If debug mode is enabled, include debug toolbar if settings.DEBUG: import debug_toolbar urlpatterns += [url(r"^__debug__/", include(debug_toolbar.urls))]
from django.views.i18n import JavaScriptCatalog from misago.users.forms.auth import AdminAuthenticationForm admin.autodiscover() admin.site.login_form = AdminAuthenticationForm urlpatterns = [ url(r'^', include('misago.urls', namespace='misago')), url(r'^', include('social_django.urls', namespace='social')), # Javascript translations url( r'^django-i18n.js$', last_modified(lambda req, **kw: timezone.now())(cache_page( 86400 * 2, key_prefix='misagojsi18n')(JavaScriptCatalog.as_view( packages=['misago'], ), ), ), name='django-i18n', ), # Uncomment next line if you plan to use Django admin for 3rd party apps #url(r'^django-admin/', admin.site.urls), ] # If debug mode is enabled, include debug toolbar if settings.DEBUG: import debug_toolbar urlpatterns += [ url(r'^__debug__/', include(debug_toolbar.urls)), ] # Use static file server for static and media files (debug only)
**kwargs ) urlpatterns = i18n_patterns( url(r'^$', login_required(LandingView.as_view()), name='home'), url(r'^', include('cashbook.urls')), url(r'^disbursements/', include('disbursements.urls', namespace='disbursements')), url(r'^', include('mtp_auth.urls')), url(r'^', include('mtp_common.user_admin.urls')), url(r'^', include('feedback.urls')), url(r'^js-i18n.js$', cache_control(public=True, max_age=86400)(JavaScriptCatalog.as_view()), name='js-i18n'), url(r'^404.html$', lambda request: TemplateResponse(request, 'mtp_common/errors/404.html', status=404)), url(r'^500.html$', lambda request: TemplateResponse(request, 'mtp_common/errors/500.html', status=500)), ) urlpatterns += [ url(r'^ping.json$', PingJsonView.as_view( build_date_key='APP_BUILD_DATE', commit_id_key='APP_GIT_COMMIT', version_number_key='APP_BUILD_TAG', ), name='ping_json'), url(r'^healthcheck.json$', HealthcheckView.as_view(), name='healthcheck_json'), url(r'^favicon.ico$', RedirectView.as_view(url=settings.STATIC_URL + 'images/favicon.ico', permanent=True)), url(r'^robots.txt$', lambda request: HttpResponse('User-agent: *\nDisallow: /', content_type='text/plain')),
# Top Level Pages path('donations/', tournaments.views.DonationsView.as_view(), name='donations'), path('style/', tournaments.views.StyleGuideView.as_view(), name='style-guide'), # Set language override path('i18n/', include('django.conf.urls.i18n')), # JS Translations Catalogue; includes all djangojs files in locale folders path('jsi18n/', JavaScriptCatalog.as_view(domain="djangojs", ), name='javascript-catalog'), # Summernote (WYSYWIG) path('summernote/', include('django_summernote.urls')), # Admin area path('jet/', include('jet.urls', 'jet')), path('database/', admin.site.urls), # Accounts path('accounts/logout/', auth_views.LogoutView.as_view(),
router.register(r'softwares', SoftwareViewSet) router.register(r'hardwares', HardwareViewSet) router.register(r'installations', InstallationViewSet) admin.autodiscover() urlpatterns = [ url(r'^$', views.home, name="home"), url(r'^api/', include(router.urls)), url(r'^report$', views.generic_report, name='generic_report'), url(r'^create-event/$', views.create_event, name="create_event"), url(r'^events/', include('manager.urls.events'), name='events'), url(r'^tags/', include('manager.urls.event_tags'), name='event_tags'), url(r'^admin/', include(admin.site.urls), name='admin'), url(r'^forms/', include(forms_builder.forms.urls)), url(r'^ckeditor/', include('ckeditor_uploader.urls'), name='ckeditor'), url(r'^accounts/profile/', TemplateView.as_view(template_name='account/profile.html'), name="user_profile"), url(r'^accounts/', include('allauth.urls')), url(r'^captcha/', include('captcha.urls')), url(r'^jsi18n/$', JavaScriptCatalog.as_view(), {'domain': 'djangojs', 'packages': None}, name='javascript-catalog'), url(r'^i18n/', include('django.conf.urls.i18n')), ] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) if settings.DEBUG: import debug_toolbar urlpatterns += [url(r'^__debug__/', include(debug_toolbar.urls))]
from django.views.decorators.cache import cache_page from django.views.generic.base import RedirectView from django.views.i18n import JavaScriptCatalog from rest_framework_simplejwt.views import token_obtain_pair, token_refresh from .rest_framework.views import DownloadUrlView, UploadParamsView # Django urlpatterns = [ path('admin/', admin.site.urls), path('i18n/', include('django.conf.urls.i18n')), path('jsi18n/', cache_page( 86400, key_prefix=f'js18n-{datetime.datetime.now().strftime("%Y%m%d")}')( JavaScriptCatalog.as_view()), name='javascript-catalog') ] # Vendor urlpatterns += [ path('api-auth/', include('rest_framework.urls')), path('api/token/', token_obtain_pair, name='token_obtain_pair'), path('api/token/refresh/', token_refresh, name='token_refresh'), # path('search/', include('haystack.urls')) ] # Railgun S urlpatterns += [ re_path(r'^download-url/(?P<cloud>(aliyun|aws))/$', DownloadUrlView.as_view(), name='download-url'), re_path(r'^upload-params/(?P<cloud>(aliyun|aws))/$',
import django from django.conf.urls import url try: from django.views.i18n import JavaScriptCatalog javascript_catalog = JavaScriptCatalog.as_view() except ImportError: # Django < 2.0 from django.views.i18n import javascript_catalog from jet.views import add_bookmark_view, remove_bookmark_view, toggle_application_pin_view, model_lookup_view app_name = 'jet' urlpatterns = [ url( r'^add_bookmark/$', add_bookmark_view, name='add_bookmark' ), url( r'^remove_bookmark/$', remove_bookmark_view, name='remove_bookmark' ), url( r'^toggle_application_pin/$', toggle_application_pin_view, name='toggle_application_pin' ), url(
try: from django.urls import path except ImportError: pass try: from django.views.i18n import javascript_catalog jstrans = url(r"^jsi18n/$", javascript_catalog, name="javascript-catalog") except ImportError: from django.views.i18n import JavaScriptCatalog jstrans = path( "jsi18n/", JavaScriptCatalog.as_view(packages=["socialhome"]), name="javascript-catalog", ) urlpatterns = [ url(r"^admin/", admin.site.urls), jstrans, ] {% if cookiecutter.with_apptest%} if "apptest" in settings.INSTALLED_APPS: # pragma: nobranch urlpatterns += [ url(r"^test", include("apptest.urls")), ] {%endif%}
from kirppu.views import index, MobileRedirect # Uncomment the next two lines to enable the admin: from django.contrib import admin admin.autodiscover() js_packages = ( 'kirppu', ) last_modified_date = timezone.now() urlpatterns = [ path('', index, name='home'), path(r'kirppu/', include('kirppu.urls', namespace="kirppu")), path(r'accounts/', include('kirppuauth.urls', namespace="kirppuauth")), # Uncomment the admin/doc line below to enable admin documentation: # url(r'^admin/doc/', include('django.contrib.admindocs.urls')), # Uncomment the next line to enable the admin: path(r'admin/', admin.site.urls), path(r'i18n/', include('django.conf.urls.i18n')), path(r'jsi18n/', last_modified(lambda req, **kw: last_modified_date)( JavaScriptCatalog.as_view(packages=js_packages)), name="javascript-catalog"), re_path(r'^m/?$', MobileRedirect.as_view()), path('', include('kompassi_oauth2.urls')), ]
from django.conf.urls.static import static from django.contrib import admin from django.urls import path from django.views.i18n import JavaScriptCatalog from artifacts import views from users import views as user_views urlpatterns = [ path('admin/', admin.site.urls), ] if settings.DEBUG: urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT) urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) urlpatterns += i18n_patterns( path('', views.HomeView.as_view(), name='home'), path('register/', user_views.UserFormView.as_view(), name='register'), path('contact', user_views.ContactView.as_view(), name='contact'), path('about', views.AboutView.as_view(), name='about'), path('artifact/', include('artifacts.urls')), path('accounts/', include('authtools.urls')), path('jsi18n/', JavaScriptCatalog.as_view(packages=['artifacts']), name='javascript-catalog'), path('i18n/', include('django.conf.urls.i18n')), )
# App versions. url(r'pages/appversions/', include('olympia.applications.urls')), # Services url(r'', include('olympia.amo.urls')), # Search url(r'^search/', include('olympia.search.urls')), # Javascript translations. # Should always be called with a cache-busting querystring. # Still served for the moment, but superseded by a fully static version we # generate at deploy-time through our generate_jsi18n_files command. url(r'^jsi18n\.js$', cache_page(60 * 60 * 24 * 365)(JavaScriptCatalog.as_view()), {'domain': 'djangojs', 'packages': []}, name='jsi18n'), # API v3+. url(r'^api/', include('olympia.api.urls')), # Site statistics that we are going to catch, the rest will fall through. url(r'^statistics/', include('olympia.stats.urls')), # Fall through for any URLs not matched above stats dashboard. url(r'^statistics/', lambda r: redirect('/'), name='statistics.dashboard'), # Redirect patterns. url(r'^bookmarks/?$', lambda r: redirect('browse.extensions', 'bookmarks', permanent=True)),
r"^sitemap\.xml$", sitemap, {"sitemaps": sitemaps}, name="django.contrib.sitemaps.views.sitemap", ), url(r"^i18n/$", set_language, name="set_language"), url("", include("social_django.urls", namespace="social")), url(r"^stream/course/(?P<product_pk>[0-9]+)/video/(?P<video_pk>[0-9]+)/$", product_views.stream_video), ] translatable_urlpatterns = [ url(r"^", include(core_urls)), url(r"^checkout/", include((checkout_urls, "checkout"), namespace="checkout")), url(r"^jsi18n/$", JavaScriptCatalog.as_view(), name="javascript-catalog"), url(r"^order/", include((order_urls, "order"), namespace="order")), url(r"^page/", include((page_urls, "page"), namespace="page")), url(r"^account/", include((account_urls, "account"), namespace="account")), url(r"^feeds/", include((feed_urls, "data_feeds"), namespace="data_feeds")), url(r"^search/", include((search_urls, "search"), namespace="search")), url(r"^courses/", include((product_urls, "product"), namespace="product")), ] urlpatterns = non_translatable_urlpatterns + i18n_patterns( *translatable_urlpatterns) if settings.DEBUG: try: import debug_toolbar
from django.http import HttpResponse from django.contrib import admin from django.views import static from django.views.generic.base import TemplateView from django.views.i18n import JavaScriptCatalog admin.autodiscover() urlpatterns = [ # 'login' and 'register' url(r'^accounts/', include('sweettooth.auth.urls')), url(r'^', include('sweettooth.extensions.urls'), name='index'), url(r'^review/', include('sweettooth.review.urls')), url(r'^errors/', include('sweettooth.errorreports.urls')), url(r'^jsi18n/$', JavaScriptCatalog.as_view(), name='javascript-catalog'), url(r'^admin/', admin.site.urls), url(r'^comments/', include('sweettooth.ratings.urls')), url(r'^comments/', include('django_comments.urls')), url( r'^robots\.txt$', TemplateView.as_view(template_name='robots.txt', content_type='text/plain')), ] if settings.DEBUG: # Use static.serve for development... urlpatterns.append( url(r'^extension-data/(?P<path>.*)', static.serve, dict(document_root=settings.MEDIA_ROOT),
# Patterns not subject to i18n urlpatterns = [ path('django-admin/', admin.site.urls), path('admin/', include(wagtailadmin_urls)), path('documents/', include(wagtaildocs_urls)), path('django-rq/', include('django_rq.urls')), path('braintree/webhook/', BraintreeWebhookView.as_view(), name='braintree_webhook'), ] urlpatterns += i18n_patterns( # TODO we may want to version this cache, or pre-compile the catalog at build time # See https://django-statici18n.readthedocs.io path('jsi18n/', cache_page(86400)(JavaScriptCatalog.as_view()), name='javascript-catalog'), path('', include(payments_urls)), ) if settings.DEBUG: from django.conf.urls.static import static from django.contrib.staticfiles.urls import staticfiles_urlpatterns # Serve static and media files from development server urlpatterns += staticfiles_urlpatterns() urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) urlpatterns += [ # Add views for testing 404 and 500 templates
# -*- coding: UTF-8 -*- from django.urls import path from django.views.i18n import JavaScriptCatalog import sql.query_privileges import sql.sql_optimize from common import auth, config, workflow, dashboard, check from sql import views, sql_workflow, sql_analyze, query, slowlog, instance, db_diagnostic, resource_group, binlog, \ data_dictionary from sql.utils import tasks urlpatterns = [ path('', views.index), path('jsi18n/', JavaScriptCatalog.as_view(), name='javascript-catalog'), path('index/', views.index), path('login/', views.login, name='login'), path('logout/', auth.sign_out), path('signup/', auth.sign_up), path('sqlworkflow/', views.sqlworkflow), path('submitsql/', views.submit_sql), path('editsql/', views.submit_sql), path('submitotherinstance/', views.submit_sql), path('detail/<int:workflow_id>/', views.detail, name='detail'), path('autoreview/', sql_workflow.submit), path('passed/', sql_workflow.passed), path('execute/', sql_workflow.execute), path('timingtask/', sql_workflow.timing_task), path('alter_run_date/', sql_workflow.alter_run_date), path('cancel/', sql_workflow.cancel), path('rollback/', views.rollback),
'domain': "djangojs", 'packages': ('BikeMaps','mapApp',), } urlpatterns = [ url(r'^api-auth/', include('rest_framework.urls', namespace='rest_framework')), url(r'^api-token-auth/', auth_views.obtain_auth_token), url(r'^rest-auth/', include('rest_auth.urls')), url(r'^rest-auth/registration/', include('rest_auth.registration.urls')), url(r'^accounts/', include('allauth.urls')), url(r'^accounts/', include('django.contrib.auth.urls')), url(r'^admin/', include(admin.site.urls)), url(r'^robots.txt$', TemplateView.as_view(template_name='robots.txt', content_type='text/plain')), url(r'^jsi18n/$', JavaScriptCatalog.as_view(), name='javascript-catalog'), url(r'^\.well-known/', include(certbot_django.server.urls)), ] # Add internationalization url patters to these pages urlpatterns += solid_i18n_patterns( url(r'^', include('mapApp.urls', namespace="mapApp")), url(r'^user/', include('userApp.urls', namespace="userApp")), url(r'^blog/', include('blogApp.urls', namespace="blogApp")), url(r'^jsi18n/$', JavaScriptCatalog.as_view(), name='javascript-catalog'), ) if settings.DEBUG: import debug_toolbar urlpatterns += [ url(r'^__debug__/', include(debug_toolbar.urls)),
# Sport club member. url(r'^member-grid(?P<action>/?\w*)/$', MemberGrid.as_view(), name='member_grid', kwargs={'view_title': 'Club members grid'}), url(r'^member-grid-tabs(?P<action>/?\w*)/$', MemberGridTabs.as_view(), name='member_grid_tabs', kwargs={'view_title': 'Club members grid with custom layout'}), url(r'^member-grid-custom-actions(?P<action>/?\w*)/$', MemberGridCustomActions.as_view(), name='member_grid_custom_actions', kwargs={'view_title': 'Club members grid with custom actions'}), url(r'^club-member-grid-(?P<club_id>\w*)(?P<action>/?\w*)/$', ClubMemberGrid.as_view(), name='club_member_grid', kwargs={'view_title': '"{}" members'}), ] js_info_dict = { 'domain': 'djangojs', 'packages': ('djk_sample',), } try: from django.views.i18n import JavaScriptCatalog urlpatterns.append( url(r'^jsi18n/$', JavaScriptCatalog.as_view(**js_info_dict), name='javascript-catalog'), ) except ImportError: from django.views.i18n import javascript_catalog urlpatterns.append( url(r'^jsi18n/$', javascript_catalog, js_info_dict, name='javascript-catalog') ) if settings.DEBUG: from django.contrib.staticfiles.urls import staticfiles_urlpatterns urlpatterns += staticfiles_urlpatterns()