SYMBOL INDEX (628 symbols across 42 files) FILE: pybb/admin.py class ForumInlineAdmin (line 14) | class ForumInlineAdmin(admin.TabularInline): class CategoryAdmin (line 20) | class CategoryAdmin(admin.ModelAdmin): class ForumAdmin (line 31) | class ForumAdmin(admin.ModelAdmin): method get_fieldsets (line 51) | def get_fieldsets(self, request, obj=None): class PollAnswerAdmin (line 64) | class PollAnswerAdmin(admin.TabularInline): class TopicAdmin (line 70) | class TopicAdmin(admin.ModelAdmin): class TopicReadTrackerAdmin (line 91) | class TopicReadTrackerAdmin(admin.ModelAdmin): class ForumReadTrackerAdmin (line 95) | class ForumReadTrackerAdmin(admin.ModelAdmin): class PostAdmin (line 99) | class PostAdmin(admin.ModelAdmin): class ProfileAdmin (line 123) | class ProfileAdmin(admin.ModelAdmin): class AttachmentAdmin (line 141) | class AttachmentAdmin(admin.ModelAdmin): method admin_view_post (line 144) | def admin_view_post(self, obj): method admin_edit_post (line 149) | def admin_edit_post(self, obj): FILE: pybb/apps.py class PybbConfig (line 5) | class PybbConfig(AppConfig): method ready (line 10) | def ready(self): FILE: pybb/compat.py function send_html_mail (line 14) | def send_html_mail(subject, text_msg, html_msg, sender, recipient, function send_mass_html_mail (line 25) | def send_mass_html_mail(emails, *args, **kwargs): function get_image_field_class (line 39) | def get_image_field_class(): function get_image_field_full_name (line 52) | def get_image_field_full_name(): function get_user_model (line 66) | def get_user_model(): function get_user_model_path (line 71) | def get_user_model_path(): function get_username_field (line 75) | def get_username_field(): function get_atomic_func (line 79) | def get_atomic_func(): function get_paginator_class (line 84) | def get_paginator_class(): function is_installed (line 100) | def is_installed(app_name): function get_related_model_class (line 105) | def get_related_model_class(parent_model, field_name): function slugify (line 109) | def slugify(text): FILE: pybb/context_processors.py function processor (line 7) | def processor(request): FILE: pybb/defaults.py function getsetting_with_deprecation_check (line 58) | def getsetting_with_deprecation_check(all_settings, setting_name): # pr... function bbcode (line 143) | def bbcode(s): # pragma: no cover function markdown (line 155) | def markdown(s): # pragma: no cover function _render_quote (line 167) | def _render_quote(name, value, options, parent, context): # pragma: no ... function smile_it (line 176) | def smile_it(s): # pragma: no cover FILE: pybb/feeds.py class PybbFeed (line 11) | class PybbFeed(Feed): method link (line 14) | def link(self): method item_guid (line 17) | def item_guid(self, obj): method item_pubdate (line 20) | def item_pubdate(self, obj): class LastPosts (line 24) | class LastPosts(PybbFeed): method get_object (line 30) | def get_object(self, request, *args, **kwargs): method items (line 33) | def items(self, user): class LastTopics (line 38) | class LastTopics(PybbFeed): method get_object (line 44) | def get_object(self, request, *args, **kwargs): method items (line 47) | def items(self, user): FILE: pybb/forms.py class AttachmentForm (line 24) | class AttachmentForm(forms.ModelForm): class Meta (line 25) | class Meta(object): method clean_file (line 29) | def clean_file(self): class PollAnswerForm (line 37) | class PollAnswerForm(forms.ModelForm): class Meta (line 38) | class Meta: class BasePollAnswerFormset (line 43) | class BasePollAnswerFormset(BaseInlineFormSet): method clean (line 44) | def clean(self): class PostForm (line 58) | class PostForm(forms.ModelForm): class Meta (line 67) | class Meta(object): method __init__ (line 74) | def __init__(self, *args, **kwargs): method clean_body (line 110) | def clean_body(self): method clean (line 120) | def clean(self): method save (line 128) | def save(self, commit=True): class MovePostForm (line 172) | class MovePostForm(forms.Form): method __init__ (line 174) | def __init__(self, instance, user, *args, **kwargs): method get_new_topic (line 245) | def get_new_topic(self): method save (line 266) | def save(self): class AdminPostForm (line 294) | class AdminPostForm(PostForm): method __init__ (line 301) | def __init__(self, *args, **kwargs): method save (line 308) | def save(self, *args, **kwargs): class EditProfileForm (line 324) | class EditProfileForm(forms.ModelForm): class Meta (line 325) | class Meta(object): method __init__ (line 329) | def __init__(self, *args, **kwargs): method clean_avatar (line 333) | def clean_avatar(self): method clean_signature (line 339) | def clean_signature(self): class UserSearchForm (line 350) | class UserSearchForm(forms.Form): method filter (line 353) | def filter(self, qs): class PollForm (line 361) | class PollForm(forms.Form): method __init__ (line 362) | def __init__(self, topic, *args, **kwargs): method clean_answers (line 377) | def clean_answers(self): class ForumSubscriptionForm (line 385) | class ForumSubscriptionForm(forms.Form): method __init__ (line 386) | def __init__(self, user, forum, instance=None, *args, **kwargs): method process (line 411) | def process(self): class ModeratorForm (line 430) | class ModeratorForm(forms.Form): method __init__ (line 432) | def __init__(self, user, *args, **kwargs): method process (line 457) | def process(self, target_user): FILE: pybb/management/commands/dump_topics.py class Command (line 10) | class Command(BaseCommand): method handle (line 14) | def handle(self, *args, **options): FILE: pybb/management/commands/migrate_profile.py class Command (line 12) | class Command(BaseCommand): method handle (line 16) | def handle(self, *args, **options): FILE: pybb/management/commands/pybb_delete_invalid_topics.py class Command (line 7) | class Command(BaseCommand): method handle (line 10) | def handle(self, *args, **kwargs): FILE: pybb/management/commands/pybb_update_counters.py class Command (line 9) | class Command(BaseCommand): method handle (line 12) | def handle(self, *args, **options): FILE: pybb/management/commands/supermoderator.py class Command (line 8) | class Command(BaseCommand): method handle (line 12) | def handle(self, *args, **kwargs): FILE: pybb/markup/base.py function smile_it (line 9) | def smile_it(s): function filter_blanks (line 15) | def filter_blanks(user, str): function rstrip_str (line 22) | def rstrip_str(user, str): class BaseParser (line 30) | class BaseParser(object): method format_attachments (line 33) | def format_attachments(self, text, attachments): method format (line 59) | def format(self, text, instance=None): method quote (line 64) | def quote(self, text, username=''): method get_widget_cls (line 68) | def get_widget_cls(cls, **kwargs): FILE: pybb/markup/bbcode.py class BBCodeWidget (line 10) | class BBCodeWidget(Textarea): class Media (line 11) | class Media: method render (line 25) | def render(self, *args, **kwargs): class BBCodeParser (line 31) | class BBCodeParser(BaseParser): method __init__ (line 34) | def __init__(self): method _render_quote (line 42) | def _render_quote(self, name, value, options, parent, context): method format (line 49) | def format(self, text, instance=None): method quote (line 54) | def quote(self, text, username=''): FILE: pybb/markup/markdown.py class MarkdownWidget (line 10) | class MarkdownWidget(Textarea): class Media (line 11) | class Media: method render (line 25) | def render(self, *args, **kwargs): class MarkdownParser (line 31) | class MarkdownParser(BaseParser): method __init__ (line 34) | def __init__(self): method format (line 37) | def format(self, text, instance=None): method quote (line 42) | def quote(self, text, username=''): FILE: pybb/middleware.py class PybbMiddleware (line 15) | class PybbMiddleware(MiddlewareParentClass): method process_request (line 16) | def process_request(self, request): FILE: pybb/migrations/0001_initial.py class Migration (line 9) | class Migration(migrations.Migration): FILE: pybb/migrations/0002_slugs_optional.py class Migration (line 5) | class Migration(migrations.Migration): FILE: pybb/migrations/0003_slugs_fill.py function fill_slugs (line 6) | def fill_slugs(apps, schema_editor): function clear_slugs (line 25) | def clear_slugs(apps, schema_editor): class Migration (line 35) | class Migration(migrations.Migration): FILE: pybb/migrations/0004_slugs_required.py class Migration (line 5) | class Migration(migrations.Migration): FILE: pybb/migrations/0005_auto_20151108_1528.py class Migration (line 11) | class Migration(migrations.Migration): FILE: pybb/migrations/0006_forum_subscriptions.py class Migration (line 7) | class Migration(migrations.Migration): FILE: pybb/migrations/0007_auto_20170111_1504.py class Migration (line 5) | class Migration(migrations.Migration): FILE: pybb/models.py class Category (line 18) | class Category(models.Model): class Meta (line 25) | class Meta(object): method __str__ (line 30) | def __str__(self): method forum_count (line 33) | def forum_count(self): method get_absolute_url (line 36) | def get_absolute_url(self): method topics (line 42) | def topics(self): method posts (line 46) | def posts(self): class Forum (line 50) | class Forum(models.Model): class Meta (line 66) | class Meta(object): method __str__ (line 72) | def __str__(self): method update_counters (line 75) | def update_counters(self): method get_absolute_url (line 90) | def get_absolute_url(self): method posts (line 96) | def posts(self): method last_post (line 100) | def last_post(self): method get_parents (line 106) | def get_parents(self): class ForumSubscription (line 118) | class ForumSubscription(models.Model): class Meta (line 141) | class Meta(object): method __str__ (line 146) | def __str__(self): method save (line 150) | def save(self, all_topics=False, **kwargs): method delete (line 158) | def delete(self, all_topics=False, **kwargs): class Topic (line 164) | class Topic(models.Model): class Meta (line 192) | class Meta(object): method __str__ (line 198) | def __str__(self): method head (line 202) | def head(self): method last_post (line 209) | def last_post(self): method get_absolute_url (line 215) | def get_absolute_url(self): method save (line 220) | def save(self, *args, **kwargs): method delete (line 237) | def delete(self, using=None): method update_counters (line 241) | def update_counters(self): method get_parents (line 250) | def get_parents(self): method poll_votes (line 258) | def poll_votes(self): class RenderableItem (line 265) | class RenderableItem(models.Model): class Meta (line 270) | class Meta(object): method render (line 277) | def render(self): class Post (line 285) | class Post(RenderableItem): class Meta (line 293) | class Meta(object): method summary (line 298) | def summary(self): method __str__ (line 303) | def __str__(self): method is_topic_head (line 307) | def is_topic_head(self): method save (line 310) | def save(self, *args, **kwargs): method get_absolute_url (line 338) | def get_absolute_url(self): method delete (line 341) | def delete(self, *args, **kwargs): method get_parents (line 352) | def get_parents(self): class Profile (line 359) | class Profile(PybbProfile): class Meta (line 368) | class Meta(object): method get_absolute_url (line 372) | def get_absolute_url(self): method get_display_name (line 375) | def get_display_name(self): class Attachment (line 379) | class Attachment(models.Model): class Meta (line 380) | class Meta(object): method save (line 389) | def save(self, *args, **kwargs): method size_display (line 393) | def size_display(self): class TopicReadTrackerManager (line 403) | class TopicReadTrackerManager(models.Manager): method get_or_create_tracker (line 404) | def get_or_create_tracker(self, user, topic): class TopicReadTracker (line 425) | class TopicReadTracker(models.Model): class Meta (line 435) | class Meta(object): class ForumReadTrackerManager (line 441) | class ForumReadTrackerManager(models.Manager): method get_or_create_tracker (line 442) | def get_or_create_tracker(self, user, forum): class ForumReadTracker (line 463) | class ForumReadTracker(models.Model): class Meta (line 473) | class Meta(object): class PollAnswer (line 479) | class PollAnswer(models.Model): class Meta (line 483) | class Meta: method __str__ (line 487) | def __str__(self): method votes (line 490) | def votes(self): method votes_percent (line 493) | def votes_percent(self): class PollAnswerUser (line 501) | class PollAnswerUser(models.Model): class Meta (line 506) | class Meta: method __str__ (line 511) | def __str__(self): function create_or_check_slug (line 515) | def create_or_check_slug(instance, model, **extra_filters): FILE: pybb/permissions.py class DefaultPermissionHandler (line 10) | class DefaultPermissionHandler(object): method filter_categories (line 25) | def filter_categories(self, user, qs): method may_view_category (line 33) | def may_view_category(self, user, category): method filter_forums (line 44) | def filter_forums(self, user, qs): method may_view_forum (line 52) | def may_view_forum(self, user, forum): method may_create_topic (line 60) | def may_create_topic(self, user, forum): method filter_topics (line 69) | def filter_topics(self, user, qs): method may_view_topic (line 94) | def may_view_topic(self, user, topic): method may_moderate_topic (line 112) | def may_moderate_topic(self, user, topic): method may_close_topic (line 119) | def may_close_topic(self, user, topic): method may_open_topic (line 123) | def may_open_topic(self, user, topic): method may_stick_topic (line 127) | def may_stick_topic(self, user, topic): method may_unstick_topic (line 131) | def may_unstick_topic(self, user, topic): method may_vote_in_topic (line 135) | def may_vote_in_topic(self, user, topic): method may_create_post (line 145) | def may_create_post(self, user, topic): method may_post_as_admin (line 161) | def may_post_as_admin(self, user): method may_subscribe_topic (line 169) | def may_subscribe_topic(self, user, topic): method filter_posts (line 176) | def filter_posts(self, user, qs): method may_view_post (line 198) | def may_view_post(self, user, post): method may_moderate_post (line 212) | def may_moderate_post(self, user, post): method may_edit_post (line 217) | def may_edit_post(self, user, post): method may_delete_post (line 223) | def may_delete_post(self, user, post): method may_admin_post (line 237) | def may_admin_post(self, user, post): method may_block_user (line 246) | def may_block_user(self, user, user_to_block): method may_attach_files (line 252) | def may_attach_files(self, user): method may_create_poll (line 259) | def may_create_poll(self, user): method may_edit_topic_slug (line 266) | def may_edit_topic_slug(self, user): method may_change_forum (line 274) | def may_change_forum(self, user, forum): method may_manage_moderators (line 283) | def may_manage_moderators(self, user): FILE: pybb/profiles.py class PybbProfile (line 22) | class PybbProfile(models.Model): class Meta (line 27) | class Meta(object): method save (line 47) | def save(self, *args, **kwargs): method avatar_url (line 52) | def avatar_url(self): method get_display_name (line 58) | def get_display_name(self): FILE: pybb/signals.py function topic_saved (line 10) | def topic_saved(instance, **kwargs): function post_saved (line 14) | def post_saved(instance, **kwargs): function post_deleted (line 38) | def post_deleted(instance, **kwargs): function user_saved (line 51) | def user_saved(instance, created, **kwargs): function get_save_slug (line 74) | def get_save_slug(extra_field=None): function setup (line 95) | def setup(): FILE: pybb/static/markitup/ajax_csrf.js function getCookie (line 2) | function getCookie(name) { function csrfSafeMethod (line 19) | function csrfSafeMethod(method) { FILE: pybb/static/markitup/jquery.markitup.js function localize (line 126) | function localize(data, inText) { function init (line 134) | function init() { function dropMenus (line 200) | function dropMenus(markupSet) { function magicMarkups (line 247) | function magicMarkups(string) { function prepare (line 280) | function prepare(action) { function build (line 288) | function build(string) { function markup (line 336) | function markup(button) { function fixOperaBug (line 427) | function fixOperaBug(string) { function fixIeBug (line 434) | function fixIeBug(string) { function insert (line 442) | function insert(block) { function set (line 452) | function set(start, len) { function get (line 471) | function get() { function preview (line 497) | function preview() { function refreshPreview (line 534) | function refreshPreview() { function renderPreview (line 538) | function renderPreview() { function writeInPreview (line 571) | function writeInPreview(data) { function keyPressed (line 588) | function keyPressed(e) { function remove (line 636) | function remove() { FILE: pybb/static/pybb/js/pybbjs.js function pybb_delete_post (line 1) | function pybb_delete_post(url, post_id, confirm_text) { function getSelectedText (line 19) | function getSelectedText() { function add_pybb_attachment_item (line 138) | function add_pybb_attachment_item() { FILE: pybb/subscription.py function notify_forum_subscribers (line 16) | def notify_forum_subscribers(topic): function notify_topic_subscribers (line 33) | def notify_topic_subscribers(post): function send_notification (line 54) | def send_notification(users, template, context=None): FILE: pybb/templatetags/pybb_tags.py function pybb_time (line 30) | def pybb_time(parser, token): function pybb_get_time (line 40) | def pybb_get_time(context, context_time): class PybbTimeNode (line 44) | class PybbTimeNode(template.Node): method __init__ (line 45) | def __init__(self, time): method render (line 49) | def render(self, context): function pybb_user_time (line 54) | def pybb_user_time(context_time, user): function pybb_link (line 84) | def pybb_link(object, anchor=''): function pybb_topic_moderated_by (line 96) | def pybb_topic_moderated_by(topic, user): # pragma: no cover function pybb_editable_by (line 106) | def pybb_editable_by(post, user): # pragma: no cover function pybb_posted_by (line 117) | def pybb_posted_by(post, user): function pybb_is_topic_unread (line 125) | def pybb_is_topic_unread(topic, user): function pybb_topic_unread (line 143) | def pybb_topic_unread(topics, user): function pybb_forum_unread (line 173) | def pybb_forum_unread(forums, user): function pybb_topic_inline_pagination (line 195) | def pybb_topic_inline_pagination(topic): function pybb_topic_poll_not_voted (line 203) | def pybb_topic_poll_not_voted(topic, user): function endswith (line 210) | def endswith(str, substr): function pybb_get_profile (line 215) | def pybb_get_profile(*args, **kwargs): function pybb_get_latest_topics (line 223) | def pybb_get_latest_topics(context, cnt=5, user=None): function pybb_get_latest_posts (line 232) | def pybb_get_latest_posts(context, cnt=5, user=None): function load_perms_filters (line 240) | def load_perms_filters(): function check_app_installed (line 270) | def check_app_installed(app_name): function pybbm_calc_topic_views (line 275) | def pybbm_calc_topic_views(topic): FILE: pybb/tests.py function sleep_only_if_required (line 46) | def sleep_only_if_required(s): class SharedTestModule (line 56) | class SharedTestModule(object): method create_user (line 58) | def create_user(self): method login_client (line 61) | def login_client(self, username='zeus', password='zeus'): method create_post (line 64) | def create_post(self, _sleep=False, **kwargs): method create_post_via_http (line 77) | def create_post_via_http(self, client, forum_id=None, topic_id=None, _... method create_initial (line 102) | def create_initial(self, post=True): method get_form_values (line 109) | def get_form_values(self, response, form="post-form"): method get_with_user (line 112) | def get_with_user(self, url, username=None, password=None): class FeaturesTest (line 120) | class FeaturesTest(TestCase, SharedTestModule): method setUp (line 121) | def setUp(self): method test_base (line 130) | def test_base(self): method test_forum_page (line 143) | def test_forum_page(self): method test_category_page (line 153) | def test_category_page(self): method test_profile_language_default (line 160) | def test_profile_language_default(self): method test_profile_edit (line 166) | def test_profile_edit(self): method test_pagination_and_topic_addition (line 182) | def test_pagination_and_topic_addition(self): method test_bbcode_and_topic_title (line 193) | def test_bbcode_and_topic_title(self): method test_topic_addition (line 200) | def test_topic_addition(self): method test_topic_read_before_post_addition (line 212) | def test_topic_read_before_post_addition(self): method test_post_deletion (line 254) | def test_post_deletion(self): method test_topic_deletion (line 259) | def test_topic_deletion(self): method test_forum_updated (line 270) | def test_forum_updated(self): method test_read_tracking (line 277) | def test_read_tracking(self): method test_read_tracking_multi_user (line 323) | def test_read_tracking_multi_user(self): method test_read_tracking_multi_forum (line 409) | def test_read_tracking_multi_forum(self): method test_read_tracker_after_posting (line 441) | def test_read_tracker_after_posting(self): method test_pybb_is_topic_unread_filter (line 450) | def test_pybb_is_topic_unread_filter(self): method test_is_forum_unread_filter (line 507) | def test_is_forum_unread_filter(self): method test_read_tracker_when_topics_forum_changed (line 555) | def test_read_tracker_when_topics_forum_changed(self): method test_open_first_unread_post (line 609) | def test_open_first_unread_post(self): method test_latest_topics (line 640) | def test_latest_topics(self): method test_hidden (line 699) | def test_hidden(self): method test_inactive (line 760) | def test_inactive(self): method get_csrf (line 774) | def get_csrf(self, form): method test_csrf (line 777) | def test_csrf(self): method test_user_blocking (line 785) | def test_user_blocking(self): method test_user_unblocking (line 813) | def test_user_unblocking(self): method test_ajax_preview (line 827) | def test_ajax_preview(self): method test_headline (line 832) | def test_headline(self): method test_quote (line 838) | def test_quote(self): method test_edit_post (line 845) | def test_edit_post(self): method test_admin_post_add (line 895) | def test_admin_post_add(self): method test_stick (line 904) | def test_stick(self): method test_delete_view (line 913) | def test_delete_view(self): method test_open_close (line 940) | def test_open_close(self): method test_subscription (line 957) | def test_subscription(self): method test_subscription_disabled (line 994) | def test_subscription_disabled(self): method _test_notification_emails_init (line 1027) | def _test_notification_emails_init(self): method test_notification_emails_alternative (line 1051) | def test_notification_emails_alternative(self): method test_notification_emails_content (line 1062) | def test_notification_emails_content(self): method test_notification_emails_translation (line 1091) | def test_notification_emails_translation(self): method test_notifications_disabled (line 1104) | def test_notifications_disabled(self): method test_forum_subscription (line 1134) | def test_forum_subscription(self): method test_topic_updated (line 1262) | def test_topic_updated(self): method test_topic_deleted (line 1274) | def test_topic_deleted(self): method test_user_views (line 1302) | def test_user_views(self): method test_post_count (line 1325) | def test_post_count(self): method test_latest_topics_tag (line 1336) | def test_latest_topics_tag(self): method test_latest_posts_tag (line 1345) | def test_latest_posts_tag(self): method test_multiple_objects_returned (line 1354) | def test_multiple_objects_returned(self): method tearDown (line 1370) | def tearDown(self): method test_managing_forums (line 1374) | def test_managing_forums(self): class MoveAndSplitPostTest (line 1441) | class MoveAndSplitPostTest(TestCase, SharedTestModule): method create_initial (line 1443) | def create_initial(self): method test_move_topic (line 1464) | def test_move_topic(self): method test_split_posts_all (line 1503) | def test_split_posts_all(self): method test_split_posts_last (line 1566) | def test_split_posts_last(self): method test_split_posts_some_same_forum (line 1591) | def test_split_posts_some_same_forum(self): method test_split_posts_some_other_forum (line 1624) | def test_split_posts_some_other_forum(self): class AnonymousTest (line 1656) | class AnonymousTest(TestCase, SharedTestModule): method setUp (line 1657) | def setUp(self): method tearDown (line 1672) | def tearDown(self): method test_anonymous_posting (line 1677) | def test_anonymous_posting(self): method test_anonymous_cache_topic_views (line 1684) | def test_anonymous_cache_topic_views(self): function premoderate_test (line 1705) | def premoderate_test(user, post): class PreModerationTest (line 1715) | class PreModerationTest(TestCase, SharedTestModule): method setUp (line 1716) | def setUp(self): method test_premoderation (line 1723) | def test_premoderation(self): method tearDown (line 1811) | def tearDown(self): class AttachmentTest (line 1815) | class AttachmentTest(TestCase, SharedTestModule): method setUp (line 1816) | def setUp(self): method test_attachment (line 1825) | def test_attachment(self): method test_attachment_usage (line 1836) | def test_attachment_usage(self): method tearDown (line 1867) | def tearDown(self): class PollTest (line 1872) | class PollTest(TestCase, SharedTestModule): method setUp (line 1873) | def setUp(self): method test_poll_add (line 1879) | def test_poll_add(self): method test_regression_adding_poll_with_removed_answers (line 1923) | def test_regression_adding_poll_with_removed_answers(self): method test_regression_poll_deletion_after_second_post (line 1939) | def test_regression_poll_deletion_after_second_post(self): method test_poll_edit (line 1959) | def test_poll_edit(self): method test_poll_voting (line 2000) | def test_poll_voting(self): method test_poll_voting_on_closed_topic (line 2044) | def test_poll_voting_on_closed_topic(self): method tearDown (line 2059) | def tearDown(self): class FiltersTest (line 2063) | class FiltersTest(TestCase, SharedTestModule): method setUp (line 2064) | def setUp(self): method test_filters (line 2068) | def test_filters(self): class CustomPermissionHandler (line 2079) | class CustomPermissionHandler(permissions.DefaultPermissionHandler): method filter_categories (line 2085) | def filter_categories(self, user, qs): method may_view_category (line 2088) | def may_view_category(self, user, category): method filter_forums (line 2091) | def filter_forums(self, user, qs): method may_view_forum (line 2096) | def may_view_forum(self, user, forum): method filter_topics (line 2099) | def filter_topics(self, user, qs): method may_view_topic (line 2105) | def may_view_topic(self, user, topic): method filter_posts (line 2108) | def filter_posts(self, user, qs): method may_view_post (line 2113) | def may_view_post(self, user, post): method may_create_poll (line 2116) | def may_create_poll(self, user): method may_edit_topic_slug (line 2119) | def may_edit_topic_slug(self, user): method may_change_forum (line 2122) | def may_change_forum(self, user, forum): class MarkupParserTest (line 2125) | class MarkupParserTest(TestCase, SharedTestModule): method setUp (line 2127) | def setUp(self): method tearDown (line 2147) | def tearDown(self): method test_markup_engines (line 2153) | def test_markup_engines(self): method test_quote_engines (line 2234) | def test_quote_engines(self): method test_body_cleaners (line 2263) | def test_body_cleaners(self): function _attach_perms_class (line 2279) | def _attach_perms_class(class_name): function _detach_perms_class (line 2288) | def _detach_perms_class(): class ControlsAndPermissionsTest (line 2295) | class ControlsAndPermissionsTest(TestCase, SharedTestModule): method create_initial (line 2297) | def create_initial(self, on_moderation=False, closed=False, sticky=Fal... method test_permission_documentation (line 2365) | def test_permission_documentation(self): method test_may_create_post (line 2558) | def test_may_create_post(self): method test_filter_topics_anonymous_and_other (line 2633) | def test_filter_topics_anonymous_and_other(self): method test_filter_posts_anonymous_and_other (line 2665) | def test_filter_posts_anonymous_and_other(self): method test_filter_topics_author (line 2726) | def test_filter_topics_author(self): method test_filter_posts_author (line 2754) | def test_filter_posts_author(self): method test_filter_topics_staff_without_perms (line 2794) | def test_filter_topics_staff_without_perms(self): method test_filter_posts_staff_without_perms (line 2824) | def test_filter_posts_staff_without_perms(self): method test_filter_topics_staff_with_perms (line 2869) | def test_filter_topics_staff_with_perms(self): method test_filter_posts_staff_with_perms (line 2890) | def test_filter_posts_staff_with_perms(self): method test_filter_topics_superuser (line 2922) | def test_filter_topics_superuser(self): method test_filter_posts_superuser (line 2940) | def test_filter_posts_superuser(self): method test_post_actions_anonymous (line 2969) | def test_post_actions_anonymous(self): method test_post_actions_own_post (line 2980) | def test_post_actions_own_post(self): method test_post_actions_other_post (line 3011) | def test_post_actions_other_post(self): method test_post_actions_staff_no_perms (line 3023) | def test_post_actions_staff_no_perms(self): method test_post_actions_staff_with_perms (line 3037) | def test_post_actions_staff_with_perms(self): method test_post_actions_superuser (line 3085) | def test_post_actions_superuser(self): method test_post_actions_moderator (line 3113) | def test_post_actions_moderator(self): class CustomPermissionHandlerTest (line 3180) | class CustomPermissionHandlerTest(TestCase, SharedTestModule): method setUp (line 3183) | def setUp(self): method tearDown (line 3203) | def tearDown(self): method test_category_permission (line 3206) | def test_category_permission(self): method test_forum_permission (line 3218) | def test_forum_permission(self): method test_topic_permission (line 3226) | def test_topic_permission(self): method test_post_permission (line 3233) | def test_post_permission(self): method test_poll_add (line 3240) | def test_poll_add(self): class RestrictEditingHandler (line 3256) | class RestrictEditingHandler(permissions.DefaultPermissionHandler): method may_create_topic (line 3257) | def may_create_topic(self, user, forum): method may_create_post (line 3260) | def may_create_post(self, user, topic): method may_edit_post (line 3263) | def may_edit_post(self, user, post): class LogonRedirectTest (line 3267) | class LogonRedirectTest(TestCase, SharedTestModule): method setUp (line 3270) | def setUp(self): method test_redirect_category (line 3288) | def test_redirect_category(self): method test_redirect_forum (line 3299) | def test_redirect_forum(self): method test_redirect_topic (line 3310) | def test_redirect_topic(self): method test_redirect_post (line 3321) | def test_redirect_post(self): method test_redirect_topic_add (line 3333) | def test_redirect_topic_add(self): method test_redirect_post_edit (line 3351) | def test_redirect_post_edit(self): method test_profile_autocreation_signal_on (line 3369) | def test_profile_autocreation_signal_on(self): method test_profile_autocreation_middleware (line 3376) | def test_profile_autocreation_middleware(self): method test_user_delete_cascade (line 3387) | def test_user_delete_cascade(self): class NiceUrlsTest (line 3402) | class NiceUrlsTest(TestCase, SharedTestModule): method __init__ (line 3403) | def __init__(self, *args, **kwargs): method setUp (line 3409) | def setUp(self): method test_unicode_slugify (line 3416) | def test_unicode_slugify(self): method test_automatique_slug (line 3420) | def test_automatique_slug(self): method test_no_duplicate_slug (line 3425) | def test_no_duplicate_slug(self): method test_fail_on_too_many_duplicate_slug (line 3455) | def test_fail_on_too_many_duplicate_slug(self): method test_long_duplicate_slug (line 3471) | def test_long_duplicate_slug(self): method test_absolute_url (line 3480) | def test_absolute_url(self): method test_add_topic (line 3500) | def test_add_topic(self): method test_old_url_redirection (line 3522) | def test_old_url_redirection(self): method tearDown (line 3540) | def tearDown(self): class TestTemplateTags (line 3544) | class TestTemplateTags(TestCase, SharedTestModule): method test_pybb_time_anonymous (line 3551) | def test_pybb_time_anonymous(self): method test_pybb_time_authenticated (line 3575) | def test_pybb_time_authenticated(self): method test_pybb_get_time (line 3590) | def test_pybb_get_time(self): method test_pybb_link (line 3598) | def test_pybb_link(self): method test_pybb_posted_by (line 3616) | def test_pybb_posted_by(self): method test_pybb_is_topic_unread (line 3629) | def test_pybb_is_topic_unread(self): method test_pybb_topic_unread (line 3646) | def test_pybb_topic_unread(self): method test_pybb_forum_unread (line 3722) | def test_pybb_forum_unread(self): method test_pybb_topic_inline_pagination (line 3791) | def test_pybb_topic_inline_pagination(self): method test_pybb_topic_poll_not_voted (line 3812) | def test_pybb_topic_poll_not_voted(self): method test_endswith (line 3836) | def test_endswith(self): method test_pybb_get_profile (line 3844) | def test_pybb_get_profile(self): method test_pybb_get_latest_topics (line 3859) | def test_pybb_get_latest_topics(self): method test_pybb_get_latest_posts (line 3892) | def test_pybb_get_latest_posts(self): method test_perms_check_app_installed (line 3949) | def test_perms_check_app_installed(self): method test_pybbm_calc_topic_views (line 3955) | def test_pybbm_calc_topic_views(self): function build_dynamic_test_for_templatetags_perms (line 3975) | def build_dynamic_test_for_templatetags_perms(): class MiscTest (line 4056) | class MiscTest(TestCase, SharedTestModule): method test_profile_avatar_url_property (line 4058) | def test_profile_avatar_url_property(self): method test_profile_get_display_name (line 4075) | def test_profile_get_display_name(self): FILE: pybb/util.py function resolve_class (line 27) | def resolve_class(name): function resolve_function (line 35) | def resolve_function(path): function get_markup_engine (line 45) | def get_markup_engine(name=None): function _get_markup_formatter (line 68) | def _get_markup_formatter(name=None): function _get_markup_quoter (line 92) | def _get_markup_quoter(name=None): function get_body_cleaner (line 116) | def get_body_cleaner(name): function unescape (line 120) | def unescape(text): function get_pybb_profile (line 130) | def get_pybb_profile(user): function get_pybb_profile_model (line 145) | def get_pybb_profile_model(): function build_cache_key (line 154) | def build_cache_key(key_name, **kwargs): class FilePathGenerator (line 161) | class FilePathGenerator(object): method __init__ (line 167) | def __init__(self, to, *args, **kwargs): method deconstruct (line 170) | def deconstruct(self, *args, **kwargs): method __call__ (line 173) | def __call__(self, instance, filename): FILE: pybb/views.py class PaginatorMixin (line 35) | class PaginatorMixin(object): method get_paginator (line 36) | def get_paginator(self, queryset, per_page, orphans=0, allow_empty_fir... class RedirectToLoginMixin (line 43) | class RedirectToLoginMixin(object): method dispatch (line 48) | def dispatch(self, request, *args, **kwargs): method get_login_redirect_url (line 58) | def get_login_redirect_url(self): class IndexView (line 63) | class IndexView(generic.ListView): method get_context_data (line 68) | def get_context_data(self, **kwargs): method get_queryset (line 76) | def get_queryset(self): class CategoryView (line 80) | class CategoryView(RedirectToLoginMixin, generic.DetailView): method get_login_redirect_url (line 85) | def get_login_redirect_url(self): method get_queryset (line 90) | def get_queryset(self): method get_object (line 93) | def get_object(self, queryset=None): method get_context_data (line 99) | def get_context_data(self, **kwargs): method get (line 105) | def get(self, *args, **kwargs): class ForumView (line 111) | class ForumView(RedirectToLoginMixin, PaginatorMixin, generic.ListView): method dispatch (line 117) | def dispatch(self, request, *args, **kwargs): method get_login_redirect_url (line 121) | def get_login_redirect_url(self): method get_context_data (line 124) | def get_context_data(self, **kwargs): method get_queryset (line 140) | def get_queryset(self): method get_forum (line 148) | def get_forum(self, **kwargs): method get (line 157) | def get(self, *args, **kwargs): class ForumSubscriptionView (line 163) | class ForumSubscriptionView(RedirectToLoginMixin, generic.FormView): method get_login_redirect_url (line 167) | def get_login_redirect_url(self): method get_success_url (line 170) | def get_success_url(self): method get_form_kwargs (line 173) | def get_form_kwargs(self): method get_context_data (line 181) | def get_context_data(self, **kwargs): method form_valid (line 187) | def form_valid(self, form): method get_objects (line 211) | def get_objects(self): class LatestTopicsView (line 223) | class LatestTopicsView(PaginatorMixin, generic.ListView): method get_queryset (line 229) | def get_queryset(self): class PybbFormsMixin (line 235) | class PybbFormsMixin(object): method get_post_form_class (line 243) | def get_post_form_class(self): method get_admin_post_form_class (line 246) | def get_admin_post_form_class(self): method get_attachment_formset_class (line 249) | def get_attachment_formset_class(self): method get_poll_form_class (line 252) | def get_poll_form_class(self): method get_poll_answer_formset_class (line 255) | def get_poll_answer_formset_class(self): class TopicView (line 259) | class TopicView(RedirectToLoginMixin, PaginatorMixin, PybbFormsMixin, ge... method get (line 264) | def get(self, request, *args, **kwargs): method get_login_redirect_url (line 271) | def get_login_redirect_url(self): method dispatch (line 275) | def dispatch(self, request, *args, **kwargs): method get_queryset (line 302) | def get_queryset(self): method get_context_data (line 321) | def get_context_data(self, **kwargs): method mark_read (line 356) | def mark_read(self): method get_topic (line 386) | def get_topic(self, **kwargs): class PostEditMixin (line 402) | class PostEditMixin(PybbFormsMixin): method post (line 405) | def post(self, request, *args, **kwargs): method get_form_class (line 408) | def get_form_class(self): method get_context_data (line 415) | def get_context_data(self, **kwargs): method form_valid (line 431) | def form_valid(self, form): class AddPostView (line 489) | class AddPostView(PostEditMixin, generic.CreateView): method dispatch (line 494) | def dispatch(self, request, *args, **kwargs): method get_form_kwargs (line 532) | def get_form_kwargs(self): method get_context_data (line 546) | def get_context_data(self, **kwargs): method get_success_url (line 552) | def get_success_url(self): class EditPostView (line 558) | class EditPostView(PostEditMixin, generic.UpdateView): method dispatch (line 567) | def dispatch(self, request, *args, **kwargs): method get_form_kwargs (line 570) | def get_form_kwargs(self): method get_object (line 575) | def get_object(self, queryset=None): class MovePostView (line 582) | class MovePostView(RedirectToLoginMixin, generic.UpdateView): method dispatch (line 591) | def dispatch(self, request, *args, **kwargs): method get_form_kwargs (line 594) | def get_form_kwargs(self): method get_object (line 599) | def get_object(self, queryset=None): method form_valid (line 605) | def form_valid(self, *args, **kwargs): method get_success_url (line 615) | def get_success_url(self): class UserView (line 619) | class UserView(generic.DetailView): method get_object (line 624) | def get_object(self, queryset=None): method get_context_data (line 629) | def get_context_data(self, **kwargs): class UserPosts (line 635) | class UserPosts(PaginatorMixin, generic.ListView): method dispatch (line 640) | def dispatch(self, request, *args, **kwargs): method get_queryset (line 645) | def get_queryset(self): method get_context_data (line 652) | def get_context_data(self, **kwargs): class UserTopics (line 658) | class UserTopics(PaginatorMixin, generic.ListView): method dispatch (line 663) | def dispatch(self, request, *args, **kwargs): method get_queryset (line 668) | def get_queryset(self): method get_context_data (line 675) | def get_context_data(self, **kwargs): class PostView (line 681) | class PostView(RedirectToLoginMixin, generic.RedirectView): method dispatch (line 685) | def dispatch(self, request, *args, **kwargs): method get_login_redirect_url (line 689) | def get_login_redirect_url(self): method get_redirect_url (line 692) | def get_redirect_url(self, **kwargs): method get_post (line 699) | def get_post(self, **kwargs): class ModeratePost (line 703) | class ModeratePost(generic.RedirectView): method get_redirect_url (line 707) | def get_redirect_url(self, **kwargs): class ProfileEditView (line 716) | class ProfileEditView(generic.UpdateView): method get_object (line 720) | def get_object(self, queryset=None): method get_form_class (line 723) | def get_form_class(self): method dispatch (line 732) | def dispatch(self, request, *args, **kwargs): method get_success_url (line 735) | def get_success_url(self): class DeletePostView (line 739) | class DeletePostView(generic.DeleteView): method get_object (line 744) | def get_object(self, queryset=None): method form_valid (line 752) | def form_valid(self, form): method get_success_url (line 763) | def get_success_url(self): class TopicActionBaseView (line 775) | class TopicActionBaseView(generic.View): method get_topic (line 777) | def get_topic(self): method get (line 781) | def get(self, *args, **kwargs): class StickTopicView (line 787) | class StickTopicView(TopicActionBaseView): method action (line 789) | def action(self, topic): class UnstickTopicView (line 796) | class UnstickTopicView(TopicActionBaseView): method action (line 798) | def action(self, topic): class CloseTopicView (line 805) | class CloseTopicView(TopicActionBaseView): method action (line 807) | def action(self, topic): class OpenTopicView (line 814) | class OpenTopicView(TopicActionBaseView): method action (line 815) | def action(self, topic): class TopicPollVoteView (line 822) | class TopicPollVoteView(PybbFormsMixin, generic.UpdateView): method dispatch (line 827) | def dispatch(self, request, *args, **kwargs): method get_form_class (line 830) | def get_form_class(self): method get_form_kwargs (line 833) | def get_form_kwargs(self): method form_valid (line 838) | def form_valid(self, form): method form_invalid (line 853) | def form_invalid(self, form): method get_success_url (line 856) | def get_success_url(self): function topic_cancel_poll_vote (line 861) | def topic_cancel_poll_vote(request, pk): function delete_subscription (line 868) | def delete_subscription(request, topic_id): function add_subscription (line 877) | def add_subscription(request, topic_id): function post_ajax_preview (line 888) | def post_ajax_preview(request): function mark_all_as_read (line 895) | def mark_all_as_read(request): function block_user (line 907) | def block_user(request, username): function unblock_user (line 938) | def unblock_user(request, username): class UserEditPrivilegesView (line 949) | class UserEditPrivilegesView(generic.edit.FormMixin, generic.edit.Proces... method get_success_url (line 957) | def get_success_url(self): method get_initial (line 960) | def get_initial(self): method get_form_kwargs (line 967) | def get_form_kwargs(self): method get (line 972) | def get(self, request, *args, **kwargs): method post (line 976) | def post(self, request, *args, **kwargs): method form_valid (line 980) | def form_valid(self, form): FILE: runtests.py function runtests (line 15) | def runtests(*test_args, **kwargs): FILE: test/example_bootstrap/static/csrf.js function getCookie (line 2) | function getCookie(name) { FILE: test/example_thirdparty/example_thirdparty/forms.py class SignupFormWithCaptcha (line 5) | class SignupFormWithCaptcha(SignupForm): FILE: test/test_project/test_app/apps.py class TestApp (line 5) | class TestApp(AppConfig): FILE: test/test_project/test_app/migrations/0001_initial.py class Migration (line 9) | class Migration(migrations.Migration): FILE: test/test_project/test_app/models.py class CustomUserManager (line 11) | class CustomUserManager(BaseUserManager): method create_user (line 12) | def create_user(self, username, email=None, password=None, **extra_fie... class CustomUser (line 23) | class CustomUser(AbstractBaseUser, PermissionsMixin): class Meta (line 34) | class Meta: class CustomProfile (line 38) | class CustomProfile(PybbProfile): class Meta (line 47) | class Meta(object): method get_absolute_url (line 51) | def get_absolute_url(self): method get_display_name (line 54) | def get_display_name(self): FILE: test/test_project/test_project/markup_parsers.py class CustomBBCodeParser (line 6) | class CustomBBCodeParser(BBCodeParser): method __init__ (line 7) | def __init__(self): class LiberatorParser (line 20) | class LiberatorParser(BaseParser): method format (line 28) | def format(self, text): method quote (line 33) | def quote(self, text, username=''):