Пример #1
0
class GlobalHistoryPlugin(BasePlugin):

    slug = settings.SLUG
    urlpatterns = {'root': [
        url(r'^$', views.GlobalHistory.as_view(), name='globalhistory'),
        url('^(?P<only_last>[01])/$', views.GlobalHistory.as_view(), name='globalhistory'),
    ]}
Пример #2
0
 def get_root_urls(self):
     urlpatterns = [
         url(r'^$', self.article_view, name='root', kwargs={'path': ''}),
         url(r'^create-root/$', self.root_view, name='root_create'),
         url(r'^missing-root/$', self.root_missing_view, name='root_missing'),
         url(r'^_search/$', self.search_view, name='search'),
         url(r'^_revision/diff/(?P<revision_id>[0-9]+)/$', self.article_diff_view, name='diff'),
     ]
     return urlpatterns
Пример #3
0
 def get_root_urls(self):
     urlpatterns = [
         url(r'^$', self.article_view, name='root', kwargs={'path': ''}),
         url(r'^create-root/$', self.root_view, name='root_create'),
         url(r'^missing-root/$', self.root_missing_view, name='root_missing'),
         url(r'^_search/$', self.search_view, name='search'),
         url(r'^_revision/diff/(?P<revision_id>[0-9]+)/$', self.article_diff_view, name='diff'),
     ]
     return urlpatterns
Пример #4
0
 def get_accounts_urls(self):
     if settings.ACCOUNT_HANDLING:
         urlpatterns = [
             url(r'^_accounts/sign-up/$', self.signup_view, name='signup'),
             url(r'^_accounts/logout/$', self.logout_view, name='logout'),
             url(r'^_accounts/login/$', self.login_view, name='login'),
             url(r'^_accounts/settings/$', self.profile_update_view, name='profile_update'),
         ]
     else:
         urlpatterns = []
     return urlpatterns
Пример #5
0
 def get_revision_urls(self):
     urlpatterns = [
         # This one doesn't work because it don't know
         # where to redirect after...
         url(r'^change/(?P<revision_id>[0-9]+)/$', self.revision_change_view, name='change_revision'),
         url(r'^preview/$', self.article_preview_view, name='preview_revision'),
         url(r'^merge/(?P<revision_id>[0-9]+)/preview/$', self.revision_preview_merge_view, name='merge_revision_preview'),
     ]
     return [
         url(r'^_revision/(?P<article_id>[0-9]+)/', include(urlpatterns)),
     ]
Пример #6
0
 def get_accounts_urls(self):
     if settings.ACCOUNT_HANDLING:
         urlpatterns = [
             url(r'^_accounts/sign-up/$', self.signup_view, name='signup'),
             url(r'^_accounts/logout/$', self.logout_view, name='logout'),
             url(r'^_accounts/login/$', self.login_view, name='login'),
             url(r'^_accounts/settings/$', self.profile_update_view, name='profile_update'),
         ]
     else:
         urlpatterns = []
     return urlpatterns
Пример #7
0
 def get_revision_urls(self):
     urlpatterns = [
         # This one doesn't work because it don't know
         # where to redirect after...
         url(r'^change/(?P<revision_id>[0-9]+)/$', self.revision_change_view, name='change_revision'),
         url(r'^preview/$', self.article_preview_view, name='preview_revision'),
         url(r'^merge/(?P<revision_id>[0-9]+)/preview/$', self.revision_preview_merge_view, name='merge_revision_preview'),
     ]
     return [
         url(r'^_revision/(?P<article_id>[0-9]+)/', include(urlpatterns)),
     ]
Пример #8
0
 def get_root_urls(self):
     our_root_urls = [
         url(r'^ex/(?P<exnum>\d+)/$',
             views.PTokenView.as_view(),
             name='ptoken_view'),  #  /ex/3495/
         url('^(?P<lang>[a-z][a-z](-[a-z]+)?)/(?P<corpus>[^/]*[0-9][^/]*)/(?P<sent_id>[^/_][^/]*)/$',
             views.CorpusSentenceView.as_view(),
             name='corpus_sentence_view'
             ),  #  /en/corpus/streusle4.1/reviews-001325-0003
         url(r'^_table/(?P<metadata_type>.*)/(?P<article_id>.*)/$',
             tables.ptoken_data_table,
             name="metadata_ptoken_data_table"),
     ]
     return our_root_urls + super().get_root_urls()
Пример #9
0
 def get_revision_urls(self):
     urlpatterns = [
         # This one doesn't work because it don't know
         # where to redirect after...
         url(r'^_revision/change/(?P<article_id>[0-9]+)/(?P<revision_id>[0-9]+)/$',
             self.revision_change_view_class.as_view(),
             name='change_revision'),
         url(r'^_revision/preview/(?P<article_id>[0-9]+)/$',
             self.article_preview_view_class.as_view(),
             name='preview_revision'),
         url(r'^_revision/merge/(?P<article_id>[0-9]+)/(?P<revision_id>[0-9]+)/preview/$',
             self.revision_merge_view_class.as_view(preview=True),
             name='merge_revision_preview'),
     ]
     return urlpatterns
Пример #10
0
 def get_article_path_urls(self):
     urlpatterns = [
         url('^some-other-prefix/(?P<path>.+/|)$',
             self.article_view_class.as_view(),
             name='get'),
     ]
     return urlpatterns
Пример #11
0
 def get_deleted_list_urls(self):
     urlpatterns = [
         url('^_admin/$',
             self.deleted_list_view_class.as_view(),
             name="deleted_list"),
     ]
     return urlpatterns
Пример #12
0
class AttachmentPlugin(BasePlugin):

    slug = settings.SLUG
    urlpatterns = {
        'article': [url('', include('wiki.plugins.attachments.urls'))]
    }

    article_tab = (_('Attachments'), "fa fa-file")
    article_view = views.AttachmentView().dispatch

    # List of notifications to construct signal handlers for. This
    # is handled inside the notifications plugin.
    notifications = [{
        'model': models.AttachmentRevision,
        'message': lambda obj: (
            _("A file was changed: %s")
            if not obj.deleted
            else
            _("A file was deleted: %s")
        ) % truncate_title(obj.get_filename()),
        'key': ARTICLE_EDIT,
        'created': True,
        'get_article': lambda obj: obj.attachment.article}
    ]

    markdown_extensions = [AttachmentExtension()]
Пример #13
0
 def get_article_path_urls(self):
     urlpatterns = [
         url('^my-wiki/(?P<path>.+/|)$',
             self.article_view_class.as_view(),
             name='get'),
     ]
     return urlpatterns
Пример #14
0
class MetadataPlugin(BasePlugin):
    ''' This initializes the entire plugin, both the edit 'sidebar' class and the metadata 'tab' '''

    slug = settings.SLUG

    urlpatterns = {'article': [url('', include('wiki.plugins.metadata.urls'))]}

    sidebar = {
        'headline': _('Metadata'),
        'icon_class': 'fa-asterisk',
        'template': 'metadatasidebar.html',
        'form_class': forms.MetaSidebarForm,
        'get_form_kwargs': (lambda a: {})
    }

    article_tab = (_('Metadata'), "fa fa-asterisk")
    article_view = views.MetadataView().dispatch

    class RenderMedia:
        css = {'screen': 'wiki/css/metadata.css'}
        js = ['wiki/js/modurlify.js']

    def __init__(self):
        # print "I WAS LOADED!"
        pass
Пример #15
0
 def get_article_path_urls(self):
     urlpatterns = [
         url('^some-other-prefix/(?P<path>.+/|)$',
             self.article_view,
             name='get'),
     ]
     return urlpatterns
Пример #16
0
 def get_article_urls(self):
     urlpatterns = [
         url('^my-wiki/(?P<article_id>[0-9]+)/$',
             self.article_view_class.as_view(),
             name='get'),
     ]
     return urlpatterns
Пример #17
0
 def get_article_urls(self):
     urlpatterns = [
         url('^some-prefix/(?P<article_id>[0-9]+)/$',
             self.article_view,
             name='get'),
     ]
     return urlpatterns
Пример #18
0
 def get_article_path_urls(self):
     urlpatterns = [
         url('^my-wiki/(?P<path>.+/|)$',
             self.article_view_class.as_view(),
             name='get'),
     ]
     return urlpatterns
Пример #19
0
 def get_deleted_list_urls(self):
     urlpatterns = [
         url('^_admin/$',
             self.deleted_list_view_class.as_view(),
             name="deleted_list"),
     ]
     return urlpatterns
Пример #20
0
class LinkPlugin(BasePlugin):

    slug = 'links'
    urlpatterns = {
        'article': [
            url(r'^json/query-urlpath/$',
                views.QueryUrlPath.as_view(),
                name='links_query_urlpath'),
        ]
    }

    sidebar = {
        'headline': _('Links'),
        'icon_class': 'fa-bookmark',
        'template': 'wiki/plugins/links/sidebar.html',
        'form_class': None,
        'get_form_kwargs': (lambda a: {})
    }

    wikipath_config = [
        ('base_url', reverse_lazy('wiki:get', kwargs={'path': ''})),
        ('default_level', settings.LOOKUP_LEVEL),
    ]

    markdown_extensions = [
        urlize_makeExtension(),
        WikiPathExtension(wikipath_config)
    ]
Пример #21
0
 def get_article_urls(self):
     urlpatterns = [
         url('^my-wiki/(?P<article_id>[0-9]+)/$',
             self.article_view_class.as_view(),
             name='get'
             ),
     ]
     return urlpatterns
Пример #22
0
 def get_revision_urls(self):
     urlpatterns = [
         # This one doesn't work because it don't know
         # where to redirect after...
         url(
             r'^_revision/change/(?P<article_id>[0-9]+)/(?P<revision_id>[0-9]+)/$',
             self.revision_change_view_class.as_view(),
             name='change_revision'),
         url(r'^_revision/preview/(?P<article_id>[0-9]+)/$',
             self.article_preview_view_class.as_view(),
             name='preview_revision'),
         url(
             r'^_revision/merge/(?P<article_id>[0-9]+)/(?P<revision_id>[0-9]+)/preview/$',
             self.revision_merge_view_class.as_view(preview=True),
             name='merge_revision_preview'),
     ]
     return urlpatterns
Пример #23
0
 def get_plugin_urls():
     urlpatterns = []
     for plugin in registry.get_plugins().values():
         slug = getattr(plugin, 'slug', None)
         if slug:
             article_urlpatterns = plugin.urlpatterns.get('article', [])
             urlpatterns += [
                 url(r'^(?P<article_id>[0-9]+)/plugin/' + slug + '/',
                     include(article_urlpatterns)),
                 url(r'^(?P<path>.+/|)_plugin/' + slug + '/',
                     include(article_urlpatterns)),
             ]
             root_urlpatterns = plugin.urlpatterns.get('root', [])
             urlpatterns += [
                 url(r'^_plugin/' + slug + '/', include(root_urlpatterns)),
             ]
     return urlpatterns
Пример #24
0
 def get_plugin_urls(self):
     urlpatterns = []
     for plugin in registry.get_plugins().values():
         slug = getattr(plugin, 'slug', None)
         if slug:
             article_urlpatterns = plugin.urlpatterns.get('article', [])
             urlpatterns += [
                 url(r'^(?P<article_id>[0-9]+)/plugin/' + slug + '/',
                     include(article_urlpatterns)),
                 url(r'^(?P<path>.+/|)_plugin/' + slug + '/',
                     include(article_urlpatterns)),
             ]
             root_urlpatterns = plugin.urlpatterns.get('root', [])
             urlpatterns += [
                 url(r'^_plugin/' + slug + '/', include(root_urlpatterns)),
             ]
     return urlpatterns
Пример #25
0
 def get_root_urls(self):
     urlpatterns = [
         url(r'^$',
             self.article_view_class.as_view(),
             name='root',
             kwargs={'path': ''}),
         url(r'^create-root/$',
             article.CreateRootView.as_view(),
             name='root_create'),
         url(r'^missing-root/$',
             article.MissingRootView.as_view(),
             name='root_missing'),
         url(r'^_search/$',
             get_class_from_str(self.search_view_class).as_view(),
             name='search'),
         url(r'^_revision/diff/(?P<revision_id>[0-9]+)/$',
             self.article_diff_view_class.as_view(),
             name='diff'),
     ]
     return urlpatterns
Пример #26
0
class NotifyPlugin(BasePlugin):

    slug = settings.SLUG
    urlpatterns = {
        'root': [
            url(r'^$',
                views.NotificationSettings.as_view(),
                name='notification_settings'),
        ]
    }

    article_view = views.NotificationSettings().dispatch

    settings_form = 'wiki.plugins.notifications.forms.SubscriptionForm'
Пример #27
0
from django.conf import settings
from django.contrib import admin
from django.contrib.staticfiles.urls import staticfiles_urlpatterns
from django_nyt.urls import get_pattern as get_notify_pattern
from wiki.compat import include, url
from wiki.urls import get_pattern as get_wiki_pattern

admin.autodiscover()

urlpatterns = [
    url(r'^admin/doc/', include('django.contrib.admindocs.urls')),
    url(r'^admin/', admin.site.urls),
]

if settings.DEBUG:
    urlpatterns += staticfiles_urlpatterns()
    urlpatterns += [
        url(r'^media/(?P<path>.*)$', 'django.views.static.serve', {
            'document_root': settings.MEDIA_ROOT,
        }),
    ]

urlpatterns += [
    url(r'^django_functest/', include('django_functest.urls')),
    url(r'^notify/', get_notify_pattern()),
    url(r'', get_wiki_pattern())
]
Пример #28
0
    def get_article_path_urls(self):
        urlpatterns = [
            url('^some-other-prefix/(?P<path>.+/|)$',
                self.article_view,
                name='get'),
        ]
        return urlpatterns


class WikiCustomConfig(WikiConfig):
    default_site = "tests.core.test_sites.WikiCustomSite"


urlpatterns = [
    url(r'^notify/', include('django_nyt.urls')),
    url(r'', include('wiki.urls')),
]


@wiki_override_settings(
    INSTALLED_APPS=[
        'tests.testdata',
        'django.contrib.auth.apps.AuthConfig',
        'django.contrib.contenttypes.apps.ContentTypesConfig',
        'django.contrib.sessions.apps.SessionsConfig',
        'django.contrib.admin.apps.AdminConfig',
        'django.contrib.humanize.apps.HumanizeConfig',
        'django.contrib.sites.apps.SitesConfig',
        'django_nyt.apps.DjangoNytConfig',
        'mptt',
Пример #29
0
from django.conf import settings
from django.contrib import admin
from django.contrib.staticfiles.urls import staticfiles_urlpatterns
from django.http.response import HttpResponse
from django.views.static import serve as static_serve
from wiki.compat import include, url


admin.autodiscover()

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^robots.txt', lambda _: HttpResponse('User-agent: *\nDisallow: /')),
    # url(r'^silk/', include('silk.urls', namespace='silk')),
]



urlpatterns += [
    url(r'^notify/', include('django_nyt.urls')),
    url(r'', include('wiki.urls')),
]

handler500 = 'testproject.views.server_error'
handler404 = 'testproject.views.page_not_found'


if settings.DEBUG:
    import debug_toolbar
    urlpatterns += staticfiles_urlpatterns()
    urlpatterns += [
Пример #30
0
from django.http.response import HttpResponse
from django.views.static import serve as static_serve
from wiki.compat import include, url
from . import views
from . import mysites as sites
##
from .my_views.article import ArticleView
from django.views.generic.base import View

##
from .my_views import accounts

admin.autodiscover()

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^robots.txt', lambda _: HttpResponse('User-agent: *\nDisallow: /')),
    url(r'^test1/', views.test1, name='wikitest1'),
    # url(r'^test2/', views.test2, name='wikitest2'),
]

if settings.DEBUG:
    urlpatterns += staticfiles_urlpatterns()
    urlpatterns += [
        url(r'^media/(?P<path>.*)$', static_serve,
            {'document_root': settings.MEDIA_ROOT}),
    ]

urlpatterns += [
    url(r'^notify/', include('django_nyt.urls')),
    url(r'^_test/', views.hello_fn),
Пример #31
0
from django.utils.module_loading import import_string
from wiki import sites
from wiki.compat import include, url
from wiki.conf import settings
from wiki.core.plugins import registry
from wiki.views import accounts, article, deleted_list

urlpatterns = [
    url(r'^', sites.site.urls),
]


class WikiURLPatterns:

    """
    configurator for wiki urls.

    To customize, you can define your own subclass, either overriding
    the view providers, or overriding the functions that collect
    views.
    """

    # basic views
    article_view_class = article.ArticleView
    article_create_view_class = article.Create
    article_delete_view_class = article.Delete
    article_deleted_view_class = article.Deleted
    article_dir_view_class = article.Dir
    article_edit_view_class = article.Edit
    article_move_view_class = article.Move
    article_preview_view_class = article.Preview
Пример #32
0
 def get_article_urls(self):
     urlpatterns = [
         # Paths decided by article_ids
         url(r'^$', self.article_view, name='get'),
         url(r'^delete/$', self.article_delete_view, name='delete'),
         url(r'^deleted/$', self.article_deleted_view, name='deleted'),
         url(r'^edit/$', self.article_edit_view, name='edit'),
         url(r'^move/$', self.article_move_view, name='move'),
         url(r'^preview/$', self.article_preview_view, name='preview'),
         url(r'^history/$', self.article_history_view, name='history'),
         url(r'^settings/$', self.article_settings_view, name='settings'),
         url(r'^source/$', self.article_source_view, name='source'),
         url(r'^revision/change/(?P<revision_id>[0-9]+)/$',
             self.revision_change_view,
             name='change_revision'),
         url(r'^revision/merge/(?P<revision_id>[0-9]+)/$',
             self.revision_merge_view,
             name='merge_revision'),
         url(r'^plugin/(?P<slug>\w+)/$',
             self.article_plugin_view,
             name='plugin'),
     ]
     return [
         url(r'^(?P<article_id>[0-9]+)/', include(urlpatterns)),
     ]
Пример #33
0
from django.utils.module_loading import import_string
from . import mysites as sites
from wiki.compat import include, url
from wiki.conf import settings
from wiki.core.plugins import registry
from wiki.views import deleted_list

##
from .my_views import article, accounts

urlpatterns = [
    url(r'^', sites.site.urls),
]


class WikiURLPatterns:
    """
    configurator for wiki urls.

    To customize, you can define your own subclass, either overriding
    the view providers, or overriding the functions that collect
    views.
    """

    # basic views
    article_view_class = article.ArticleView
    article_create_view_class = article.Create
    article_delete_view_class = article.Delete
    article_deleted_view_class = article.Deleted
    article_dir_view_class = article.Dir
    article_edit_view_class = article.Edit
Пример #34
0
 def get_article_path_urls(self):
     urlpatterns = [
         # Paths decided by URLs
         url(r'^(?P<path>.+/|)_create/$', self.article_create_view, name='create'),
         url(r'^(?P<path>.+/|)_delete/$', self.article_delete_view, name='delete'),
         url(r'^(?P<path>.+/|)_deleted/$', self.article_deleted_view, name='deleted'),
         url(r'^(?P<path>.+/|)_edit/$', self.article_edit_view, name='edit'),
         url(r'^(?P<path>.+/|)_move/$', self.article_move_view, name='move'),
         url(r'^(?P<path>.+/|)_preview/$', self.article_preview_view, name='preview'),
         url(r'^(?P<path>.+/|)_history/$', self.article_history_view, name='history'),
         url(r'^(?P<path>.+/|)_dir/$', self.article_dir_view, name='dir'),
         url(r'^(?P<path>.+/|)_search/$', self.search_view, name='search'),
         url(r'^(?P<path>.+/|)_settings/$', self.article_settings_view, name='settings'),
         url(r'^(?P<path>.+/|)_source/$', self.article_source_view, name='source'),
         url(r'^(?P<path>.+/|)_revision/change/(?P<revision_id>[0-9]+)/$', self.revision_change_view, name='change_revision'),
         url(r'^(?P<path>.+/|)_revision/merge/(?P<revision_id>[0-9]+)/$', self.revision_merge_view, name='merge_revision'),
         url(r'^(?P<path>.+/|)_plugin/(?P<slug>\w+)/$', self.article_plugin_view, name='plugin'),
         # This should always go last!
         url(r'^(?P<path>.+/|)$', self.article_view, name='get'),
     ]
     return urlpatterns
Пример #35
0
 def get_article_urls(self):
     urlpatterns = [
         # Paths decided by article_ids
         url(r'^$', self.article_view, name='get'),
         url(r'^delete/$', self.article_delete_view, name='delete'),
         url(r'^deleted/$', self.article_deleted_view, name='deleted'),
         url(r'^edit/$', self.article_edit_view, name='edit'),
         url(r'^move/$', self.article_move_view, name='move'),
         url(r'^preview/$', self.article_preview_view, name='preview'),
         url(r'^history/$', self.article_history_view, name='history'),
         url(r'^settings/$', self.article_settings_view, name='settings'),
         url(r'^source/$', self.article_source_view, name='source'),
         url(r'^revision/change/(?P<revision_id>[0-9]+)/$', self.revision_change_view, name='change_revision'),
         url(r'^revision/merge/(?P<revision_id>[0-9]+)/$', self.revision_merge_view, name='merge_revision'),
         url(r'^plugin/(?P<slug>\w+)/$', self.article_plugin_view, name='plugin'),
     ]
     return [
         url(r'^(?P<article_id>[0-9]+)/', include(urlpatterns)),
     ]
Пример #36
0
from django.conf import settings
from django.contrib import admin
from django.contrib.staticfiles.urls import staticfiles_urlpatterns
from django.http.response import HttpResponse
from django.views.static import serve as static_serve
from django_nyt.urls import get_pattern as get_notify_pattern
from wiki.compat import include, url
from wiki.urls import get_pattern as get_wiki_pattern

admin.autodiscover()

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^robots.txt', lambda _: HttpResponse('User-agent: *\nDisallow: /')),
]

if settings.DEBUG:
    urlpatterns += staticfiles_urlpatterns()
    urlpatterns += [
        url(r'^media/(?P<path>.*)$', static_serve,
            {'document_root': settings.MEDIA_ROOT}),
    ]

urlpatterns += [
    url(r'^notify/', get_notify_pattern()),
    url(r'', get_wiki_pattern())
]

handler500 = 'testproject.views.server_error'
handler404 = 'testproject.views.page_not_found'
Пример #37
0
 def get_article_urls(self):
     urlpatterns = [
         # Paths decided by article_ids
         url(r'^(?P<article_id>[0-9]+)/$',
             self.article_view_class.as_view(),
             name='get'),
         url(r'^(?P<article_id>[0-9]+)/delete/$',
             self.article_delete_view_class.as_view(),
             name='delete'),
         url(r'^(?P<article_id>[0-9]+)/deleted/$',
             self.article_deleted_view_class.as_view(),
             name='deleted'),
         url(r'^(?P<article_id>[0-9]+)/edit/$',
             self.article_edit_view_class.as_view(),
             name='edit'),
         url(r'^(?P<article_id>[0-9]+)/move/$',
             self.article_move_view_class.as_view(),
             name='move'),
         url(r'^(?P<article_id>[0-9]+)/preview/$',
             self.article_preview_view_class.as_view(),
             name='preview'),
         url(r'^(?P<article_id>[0-9]+)/history/$',
             self.article_history_view_class.as_view(),
             name='history'),
         url(r'^(?P<article_id>[0-9]+)/settings/$',
             self.article_settings_view_class.as_view(),
             name='settings'),
         url(r'^(?P<article_id>[0-9]+)/source/$',
             self.article_source_view_class.as_view(),
             name='source'),
         url(
             r'^(?P<article_id>[0-9]+)/revision/change/(?P<revision_id>[0-9]+)/$',
             self.revision_change_view_class.as_view(),
             name='change_revision'),
         url(
             r'^(?P<article_id>[0-9]+)/revision/merge/(?P<revision_id>[0-9]+)/$',
             self.revision_merge_view_class.as_view(),
             name='merge_revision'),
         url(r'^(?P<article_id>[0-9]+)/plugin/(?P<slug>\w+)/$',
             self.article_plugin_view_class.as_view(),
             name='plugin'),
     ]
     return urlpatterns
Пример #38
0
        ]
        return urlpatterns

    def get_article_path_urls(self):
        urlpatterns = [
            url('^some-other-prefix/(?P<path>.+/|)$', self.article_view, name='get'),
        ]
        return urlpatterns


class WikiCustomConfig(WikiConfig):
    default_site = "tests.core.test_sites.WikiCustomSite"


urlpatterns = [
    url(r'^notify/', include('django_nyt.urls')),
    url(r'', include('wiki.urls')),
]


@wiki_override_settings(
    INSTALLED_APPS=[
        'tests.testdata',
        'django.contrib.auth.apps.AuthConfig',
        'django.contrib.contenttypes.apps.ContentTypesConfig',
        'django.contrib.sessions.apps.SessionsConfig',
        'django.contrib.admin.apps.AdminConfig',
        'django.contrib.humanize.apps.HumanizeConfig',
        'django.contrib.sites.apps.SitesConfig',
        'django_nyt.apps.DjangoNytConfig',
        'mptt',
Пример #39
0
from django.conf import settings
from django.contrib import admin
from django.contrib.staticfiles.urls import staticfiles_urlpatterns
from wiki.compat import include, url


urlpatterns = [
    url(r'^admin/doc/', include('django.contrib.admindocs.urls')),
    url(r'^admin/', admin.site.urls),
]

if settings.DEBUG:
    urlpatterns += staticfiles_urlpatterns()
    urlpatterns += [
        url(r'^media/(?P<path>.*)$',
            'django.views.static.serve',
            {'document_root': settings.MEDIA_ROOT,
             }),
    ]

urlpatterns += [
    url(r'^django_functest/', include('django_functest.urls')),
    url(r'^notify/', include('django_nyt.urls')),
    url(r'', include('wiki.urls')),
]
Пример #40
0
from django.utils.module_loading import import_string
from wiki import sites
from wiki.compat import include, url
from wiki.conf import settings
from wiki.core.plugins import registry
from wiki.views import accounts, article, deleted_list

urlpatterns = [
    url(r'^', sites.site.urls),
    url('^martor/', include('martor.urls'))
]


class WikiURLPatterns:
    """
    configurator for wiki urls.

    To customize, you can define your own subclass, either overriding
    the view providers, or overriding the functions that collect
    views.
    """

    # basic views
    article_view_class = article.ArticleView
    article_create_view_class = article.Create
    article_delete_view_class = article.Delete
    article_deleted_view_class = article.Deleted
    article_dir_view_class = article.Dir
    article_edit_view_class = article.Edit
    article_move_view_class = article.Move
    article_preview_view_class = article.Preview
Пример #41
0
class ImagePlugin(BasePlugin):

    slug = settings.SLUG
    sidebar = {
        'headline': _('Images'),
        'icon_class': 'fa-picture-o',
        'template': 'wiki/plugins/images/sidebar.html',
        'form_class': forms.SidebarForm,
        'get_form_kwargs': (lambda a: {
            'instance': models.Image(article=a)
        })
    }

    # List of notifications to construct signal handlers for. This
    # is handled inside the notifications plugin.
    notifications = [{
        'model':
        models.ImageRevision,
        'message':
        lambda obj: _("An image was added: %s") % truncate_title(
            obj.get_filename()),
        'key':
        ARTICLE_EDIT,
        'created':
        False,
        # Ignore if there is a previous revision... the image isn't new
        'ignore':
        lambda revision: bool(revision.previous_revision),
        'get_article':
        lambda obj: obj.article
    }]

    class RenderMedia:
        js = [
            'wiki/colorbox/jquery.colorbox-min.js',
            'wiki/js/images.js',
        ]

        css = {'screen': 'wiki/colorbox/example1/colorbox.css'}

    urlpatterns = {
        'article': [
            url('^$', views.ImageView.as_view(), name='images_index'),
            url('^delete/(?P<image_id>[0-9]+)/$',
                views.DeleteView.as_view(),
                name='images_delete'),
            url('^restore/(?P<image_id>[0-9]+)/$',
                views.DeleteView.as_view(),
                name='images_restore',
                kwargs={'restore': True}),
            url('^purge/(?P<image_id>[0-9]+)/$',
                views.PurgeView.as_view(),
                name='images_purge'),
            url('^(?P<image_id>[0-9]+)/revision/change/(?P<rev_id>[0-9]+)/$',
                views.RevisionChangeView.as_view(),
                name='images_set_revision'),
            url('^(?P<image_id>[0-9]+)/revision/add/$',
                views.RevisionAddView.as_view(),
                name='images_add_revision'),
        ]
    }

    markdown_extensions = [ImageExtension()]
Пример #42
0
 def get_article_urls(self):
     urlpatterns = [
         # Paths decided by article_ids
         url(r'^(?P<article_id>[0-9]+)/$',
             self.article_view_class.as_view(),
             name='get'),
         url(r'^(?P<article_id>[0-9]+)/delete/$',
             self.article_delete_view_class.as_view(),
             name='delete'),
         url(r'^(?P<article_id>[0-9]+)/deleted/$',
             self.article_deleted_view_class.as_view(),
             name='deleted'),
         url(r'^(?P<article_id>[0-9]+)/edit/$',
             self.article_edit_view_class.as_view(),
             name='edit'),
         url(r'^(?P<article_id>[0-9]+)/move/$',
             self.article_move_view_class.as_view(),
             name='move'),
         url(r'^(?P<article_id>[0-9]+)/preview/$',
             self.article_preview_view_class.as_view(),
             name='preview'),
         url(r'^(?P<article_id>[0-9]+)/history/$',
             self.article_history_view_class.as_view(),
             name='history'),
         url(r'^(?P<article_id>[0-9]+)/settings/$',
             self.article_settings_view_class.as_view(),
             name='settings'),
         url(r'^(?P<article_id>[0-9]+)/source/$',
             self.article_source_view_class.as_view(),
             name='source'),
         url(r'^(?P<article_id>[0-9]+)/revision/change/(?P<revision_id>[0-9]+)/$',
             self.revision_change_view_class.as_view(),
             name='change_revision'),
         url(r'^(?P<article_id>[0-9]+)/revision/merge/(?P<revision_id>[0-9]+)/$',
             self.revision_merge_view_class.as_view(),
             name='merge_revision'),
         url(r'^(?P<article_id>[0-9]+)/plugin/(?P<slug>\w+)/$',
             self.article_plugin_view_class.as_view(),
             name='plugin'),
     ]
     return urlpatterns
Пример #43
0
from django.conf import settings
from django.contrib import admin
from django.contrib.staticfiles.urls import staticfiles_urlpatterns
from django.http.response import HttpResponse
from django.views.static import serve as static_serve
from wiki.compat import include, url

admin.autodiscover()

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^robots.txt', lambda _: HttpResponse('User-agent: *\nDisallow: /')),
]

if settings.DEBUG:
    urlpatterns += staticfiles_urlpatterns()
    urlpatterns += [
        url(r'^media/(?P<path>.*)$', static_serve, {'document_root': settings.MEDIA_ROOT}),
    ]


urlpatterns += [
    url(r'^notify/', include('django_nyt.urls')),
    url(r'', include('wiki.urls')),
]

handler500 = 'testproject.views.server_error'
handler404 = 'testproject.views.page_not_found'
Пример #44
0
                name='get'
                ),
        ]
        return urlpatterns

    def get_article_path_urls(self):
        urlpatterns = [
            url('^some-other-prefix/(?P<path>.+/|)$',
                self.article_view_class.as_view(),
                name='get'),
        ]
        return urlpatterns


urlpatterns = [
    url(r'^notify/', include('django_nyt.urls')),
    url(r'', get_wiki_pattern(url_config_class=WikiCustomUrlPatterns))
]


@wiki_override_settings(WIKI_URL_CONFIG_CLASS='tests.core.test_models.WikiCustomUrlPatterns',
                        ROOT_URLCONF='tests.core.test_urls')
class ArticleModelReverseMethodTest(TestCase):

    def test_get_absolute_url_if_urlpath_set_is_not_exists__no_root_urlconf(self):
        a = Article.objects.create()

        url = a.get_absolute_url()

        expected = '/some-prefix/1/'
Пример #45
0
 def get_article_path_urls(self):
     urlpatterns = [
         # Paths decided by URLs
         url(r'^(?P<path>.+/|)_create/$',
             self.article_create_view_class.as_view(),
             name='create'),
         url(r'^(?P<path>.+/|)_delete/$',
             self.article_delete_view_class.as_view(),
             name='delete'),
         url(r'^(?P<path>.+/|)_deleted/$',
             self.article_deleted_view_class.as_view(),
             name='deleted'),
         url(r'^(?P<path>.+/|)_edit/$',
             self.article_edit_view_class.as_view(),
             name='edit'),
         url(r'^(?P<path>.+/|)_move/$',
             self.article_move_view_class.as_view(),
             name='move'),
         url(r'^(?P<path>.+/|)_preview/$',
             self.article_preview_view_class.as_view(),
             name='preview'),
         url(r'^(?P<path>.+/|)_history/$',
             self.article_history_view_class.as_view(),
             name='history'),
         url(r'^(?P<path>.+/|)_dir/$',
             self.article_dir_view_class.as_view(),
             name='dir'),
         url(r'^(?P<path>.+/|)_search/$',
             self.search_view_class.as_view(),
             name='search'),
         url(r'^(?P<path>.+/|)_settings/$',
             self.article_settings_view_class.as_view(),
             name='settings'),
         url(r'^(?P<path>.+/|)_source/$',
             self.article_source_view_class.as_view(),
             name='source'),
         url(r'^(?P<path>.+/|)_revision/change/(?P<revision_id>[0-9]+)/$',
             self.revision_change_view_class.as_view(),
             name='change_revision'),
         url(r'^(?P<path>.+/|)_revision/merge/(?P<revision_id>[0-9]+)/$',
             self.revision_merge_view_class.as_view(),
             name='merge_revision'),
         url(r'^(?P<path>.+/|)_plugin/(?P<slug>\w+)/$',
             self.article_plugin_view_class.as_view(),
             name='plugin'),
         # This should always go last!
         url(r'^(?P<path>.+/|)$',
             self.article_view_class.as_view(),
             name='get'),
     ]
     return urlpatterns
Пример #46
0
from wiki.compat import url
from wiki.plugins.attachments import views

urlpatterns = [
    url(r'^$',
        views.AttachmentView.as_view(),
        name='attachments_index'),
    url(r'^search/$',
        views.AttachmentSearchView.as_view(),
        name='attachments_search'),
    url(r'^add/(?P<attachment_id>[0-9]+)/$',
        views.AttachmentAddView.as_view(),
        name='attachments_add'),
    url(r'^replace/(?P<attachment_id>[0-9]+)/$',
        views.AttachmentReplaceView.as_view(),
        name='attachments_replace'),
    url(r'^history/(?P<attachment_id>[0-9]+)/$',
        views.AttachmentHistoryView.as_view(),
        name='attachments_history'),
    url(r'^download/(?P<attachment_id>[0-9]+)/$',
        views.AttachmentDownloadView.as_view(),
        name='attachments_download'),
    url(r'^delete/(?P<attachment_id>[0-9]+)/$',
        views.AttachmentDeleteView.as_view(),
        name='attachments_delete'),
    url(r'^download/(?P<attachment_id>[0-9]+)/revision/(?P<revision_id>[0-9]+)/$',
        views.AttachmentDownloadView.as_view(),
        name='attachments_download'),
    url(r'^change/(?P<attachment_id>[0-9]+)/revision/(?P<revision_id>[0-9]+)/$',
        views.AttachmentChangeRevisionView.as_view(),
        name='attachments_revision_change'),
Пример #47
0
 def get_article_urls(self):
     urlpatterns = [
         url('^some-prefix/(?P<article_id>[0-9]+)/$', self.article_view, name='get'),
     ]
     return urlpatterns
Пример #48
0
from wiki.compat import url
from wiki.plugins.attachments import views

urlpatterns = [
    url(r'^$', views.AttachmentView.as_view(), name='attachments_index'),
    url(r'^search/$',
        views.AttachmentSearchView.as_view(),
        name='attachments_search'),
    url(r'^add/(?P<attachment_id>[0-9]+)/$',
        views.AttachmentAddView.as_view(),
        name='attachments_add'),
    url(r'^replace/(?P<attachment_id>[0-9]+)/$',
        views.AttachmentReplaceView.as_view(),
        name='attachments_replace'),
    url(r'^history/(?P<attachment_id>[0-9]+)/$',
        views.AttachmentHistoryView.as_view(),
        name='attachments_history'),
    url(r'^download/(?P<attachment_id>[0-9]+)/$',
        views.AttachmentDownloadView.as_view(),
        name='attachments_download'),
    url(r'^delete/(?P<attachment_id>[0-9]+)/$',
        views.AttachmentDeleteView.as_view(),
        name='attachments_delete'),
    url(r'^download/(?P<attachment_id>[0-9]+)/revision/(?P<revision_id>[0-9]+)/$',
        views.AttachmentDownloadView.as_view(),
        name='attachments_download'),
    url(r'^change/(?P<attachment_id>[0-9]+)/revision/(?P<revision_id>[0-9]+)/$',
        views.AttachmentChangeRevisionView.as_view(),
        name='attachments_revision_change'),
]