SYMBOL INDEX (208 symbols across 35 files) FILE: app/__init__.py function create_app (line 21) | def create_app(config_name): FILE: app/api_1_0/authentication.py function verify_password (line 11) | def verify_password(email_or_token, password): function auth_error (line 28) | def auth_error(): function before_request (line 34) | def before_request(): function get_token (line 41) | def get_token(): FILE: app/api_1_0/comments.py function get_comments (line 9) | def get_comments(): function get_comment (line 30) | def get_comment(id): function get_post_comments (line 36) | def get_post_comments(id): function new_post_comment (line 61) | def new_post_comment(id): FILE: app/api_1_0/decorators.py function permission_required (line 6) | def permission_required(permission): FILE: app/api_1_0/errors.py function bad_request (line 6) | def bad_request(message): function unauthorized (line 12) | def unauthorized(message): function forbidden (line 18) | def forbidden(message): function validation_error (line 25) | def validation_error(e): FILE: app/api_1_0/posts.py function get_posts (line 10) | def get_posts(): function get_post (line 31) | def get_post(id): function new_post (line 38) | def new_post(): function edit_post (line 49) | def edit_post(id): FILE: app/api_1_0/users.py function get_user (line 7) | def get_user(id): function get_user_posts (line 13) | def get_user_posts(id): function get_user_followed_posts (line 37) | def get_user_followed_posts(id): FILE: app/auth/forms.py class LoginForm (line 8) | class LoginForm(FlaskForm): class RegistrationForm (line 16) | class RegistrationForm(FlaskForm): method validate_email (line 28) | def validate_email(self, field): method validate_username (line 32) | def validate_username(self, field): class ChangePasswordForm (line 37) | class ChangePasswordForm(FlaskForm): class PasswordResetRequestForm (line 45) | class PasswordResetRequestForm(FlaskForm): class PasswordResetForm (line 51) | class PasswordResetForm(FlaskForm): method validate_email (line 59) | def validate_email(self, field): class ChangeEmailForm (line 64) | class ChangeEmailForm(FlaskForm): method validate_email (line 70) | def validate_email(self, field): FILE: app/auth/views.py function before_request (line 13) | def before_request(): function unconfirmed (line 24) | def unconfirmed(): function login (line 31) | def login(): function logout (line 44) | def logout(): function register (line 51) | def register(): function confirm (line 69) | def confirm(token): function resend_confirmation (line 81) | def resend_confirmation(): function change_password (line 91) | def change_password(): function password_reset_request (line 105) | def password_reset_request(): function password_reset (line 124) | def password_reset(token): function change_email_request (line 142) | def change_email_request(): function change_email (line 161) | def change_email(token): FILE: app/decorators.py function permission_required (line 7) | def permission_required(permission): function admin_required (line 18) | def admin_required(f): FILE: app/email.py function send_async_email (line 7) | def send_async_email(app, msg): function send_email (line 12) | def send_email(to, subject, template, **kwargs): FILE: app/exceptions.py class ValidationError (line 1) | class ValidationError(ValueError): FILE: app/main/__init__.py function inject_permissions (line 10) | def inject_permissions(): FILE: app/main/errors.py function forbidden (line 6) | def forbidden(e): function page_not_found (line 16) | def page_not_found(e): function internal_server_error (line 26) | def internal_server_error(e): FILE: app/main/forms.py class NameForm (line 10) | class NameForm(FlaskForm): class EditProfileForm (line 15) | class EditProfileForm(FlaskForm): class EditProfileAdminForm (line 22) | class EditProfileAdminForm(FlaskForm): method __init__ (line 36) | def __init__(self, user, *args, **kwargs): method validate_email (line 42) | def validate_email(self, field): method validate_username (line 47) | def validate_username(self, field): class PostForm (line 53) | class PostForm(FlaskForm): class CommentForm (line 58) | class CommentForm(FlaskForm): FILE: app/main/views.py function after_request (line 14) | def after_request(response): function server_shutdown (line 25) | def server_shutdown(): function index (line 36) | def index(): function user (line 61) | def user(username): function edit_profile (line 74) | def edit_profile(): function edit_profile_admin (line 92) | def edit_profile_admin(id): function post (line 117) | def post(id): function edit (line 141) | def edit(id): function follow (line 159) | def follow(username): function unfollow (line 175) | def unfollow(username): function followers (line 189) | def followers(username): function followed_by (line 206) | def followed_by(username): function show_all (line 224) | def show_all(): function show_followed (line 232) | def show_followed(): function moderate (line 241) | def moderate(): function moderate_enable (line 254) | def moderate_enable(id): function moderate_disable (line 265) | def moderate_disable(id): FILE: app/models.py class Permission (line 13) | class Permission: class Role (line 21) | class Role(db.Model): method insert_roles (line 30) | def insert_roles(): method __repr__ (line 50) | def __repr__(self): class Follow (line 54) | class Follow(db.Model): class User (line 63) | class User(UserMixin, db.Model): method generate_fake (line 91) | def generate_fake(count=100): method add_self_follows (line 113) | def add_self_follows(): method __init__ (line 120) | def __init__(self, **kwargs): method password (line 133) | def password(self): method password (line 137) | def password(self, password): method verify_password (line 140) | def verify_password(self, password): method generate_confirmation_token (line 143) | def generate_confirmation_token(self, expiration=3600): method confirm (line 147) | def confirm(self, token): method generate_reset_token (line 159) | def generate_reset_token(self, expiration=3600): method reset_password (line 163) | def reset_password(self, token, new_password): method generate_email_change_token (line 175) | def generate_email_change_token(self, new_email, expiration=3600): method change_email (line 179) | def change_email(self, token): method can (line 198) | def can(self, permissions): method is_administrator (line 202) | def is_administrator(self): method ping (line 205) | def ping(self): method gravatar (line 209) | def gravatar(self, size=100, default='identicon', rating='g'): method follow (line 219) | def follow(self, user): method unfollow (line 224) | def unfollow(self, user): method is_following (line 229) | def is_following(self, user): method is_followed_by (line 233) | def is_followed_by(self, user): method followed_posts (line 238) | def followed_posts(self): method to_json (line 242) | def to_json(self): method generate_auth_token (line 255) | def generate_auth_token(self, expiration): method verify_auth_token (line 261) | def verify_auth_token(token): method __repr__ (line 269) | def __repr__(self): class AnonymousUser (line 273) | class AnonymousUser(AnonymousUserMixin): method can (line 274) | def can(self, permissions): method is_administrator (line 277) | def is_administrator(self): function load_user (line 284) | def load_user(user_id): class Post (line 288) | class Post(db.Model): method generate_fake (line 298) | def generate_fake(count=100): method on_changed_body (line 313) | def on_changed_body(target, value, oldvalue, initiator): method to_json (line 321) | def to_json(self): method from_json (line 336) | def from_json(json_post): class Comment (line 346) | class Comment(db.Model): method on_changed_body (line 357) | def on_changed_body(target, value, oldvalue, initiator): method to_json (line 364) | def to_json(self): method from_json (line 377) | def from_json(json_comment): FILE: config.py class Config (line 5) | class Config: method init_app (line 25) | def init_app(app): class DevelopmentConfig (line 29) | class DevelopmentConfig(Config): class TestingConfig (line 35) | class TestingConfig(Config): class ProductionConfig (line 42) | class ProductionConfig(Config): method init_app (line 47) | def init_app(cls, app): class HerokuConfig (line 70) | class HerokuConfig(ProductionConfig): method init_app (line 74) | def init_app(cls, app): class UnixConfig (line 89) | class UnixConfig(ProductionConfig): method init_app (line 91) | def init_app(cls, app): FILE: manage.py function make_shell_context (line 26) | def make_shell_context(): function test (line 34) | def test(coverage=False): function profile (line 56) | def profile(length=25, profile_dir=None): function deploy (line 65) | def deploy(): FILE: migrations/env.py function run_migrations_offline (line 27) | def run_migrations_offline(): function run_migrations_online (line 45) | def run_migrations_online(): FILE: migrations/versions/190163627111_account_confirmation.py function upgrade (line 17) | def upgrade(): function downgrade (line 23) | def downgrade(): FILE: migrations/versions/198b0eebcf9_caching_of_avatar_hashes.py function upgrade (line 17) | def upgrade(): function downgrade (line 23) | def downgrade(): FILE: migrations/versions/1b966e7f4b9e_post_model.py function upgrade (line 17) | def upgrade(): function downgrade (line 31) | def downgrade(): FILE: migrations/versions/2356a38169ea_followers.py function upgrade (line 17) | def upgrade(): function downgrade (line 30) | def downgrade(): FILE: migrations/versions/288cd3dc5a8_rich_text_posts.py function upgrade (line 17) | def upgrade(): function downgrade (line 23) | def downgrade(): FILE: migrations/versions/38c4e85512a9_initial_migration.py function upgrade (line 17) | def upgrade(): function downgrade (line 36) | def downgrade(): FILE: migrations/versions/456a945560f6_login_support.py function upgrade (line 17) | def upgrade(): function downgrade (line 25) | def downgrade(): FILE: migrations/versions/51f5ccfba190_comments.py function upgrade (line 17) | def upgrade(): function downgrade (line 35) | def downgrade(): FILE: migrations/versions/56ed7d33de8d_user_roles.py function upgrade (line 17) | def upgrade(): function downgrade (line 25) | def downgrade(): FILE: migrations/versions/d66f086b258_user_information.py function upgrade (line 17) | def upgrade(): function downgrade (line 27) | def downgrade(): FILE: tests/test_api.py class APITestCase (line 10) | class APITestCase(unittest.TestCase): method setUp (line 11) | def setUp(self): method tearDown (line 19) | def tearDown(self): method get_api_headers (line 24) | def get_api_headers(self, username, password): method test_404 (line 32) | def test_404(self): method test_no_auth (line 40) | def test_no_auth(self): method test_bad_auth (line 45) | def test_bad_auth(self): method test_token_auth (line 60) | def test_token_auth(self): method test_anonymous (line 90) | def test_anonymous(self): method test_unconfirmed_account (line 96) | def test_unconfirmed_account(self): method test_posts (line 111) | def test_posts(self): method test_users (line 179) | def test_users(self): method test_comments (line 204) | def test_comments(self): FILE: tests/test_basics.py class BasicsTestCase (line 6) | class BasicsTestCase(unittest.TestCase): method setUp (line 7) | def setUp(self): method tearDown (line 13) | def tearDown(self): method test_app_exists (line 18) | def test_app_exists(self): method test_app_is_testing (line 21) | def test_app_is_testing(self): FILE: tests/test_client.py class FlaskClientTestCase (line 7) | class FlaskClientTestCase(unittest.TestCase): method setUp (line 8) | def setUp(self): method tearDown (line 16) | def tearDown(self): method test_home_page (line 21) | def test_home_page(self): method test_register_and_login (line 25) | def test_register_and_login(self): FILE: tests/test_selenium.py class SeleniumTestCase (line 10) | class SeleniumTestCase(unittest.TestCase): method setUpClass (line 14) | def setUpClass(cls): method tearDownClass (line 54) | def tearDownClass(cls): method setUp (line 67) | def setUp(self): method tearDown (line 71) | def tearDown(self): method test_admin_home_page (line 74) | def test_admin_home_page(self): FILE: tests/test_user_model.py class UserModelTestCase (line 8) | class UserModelTestCase(unittest.TestCase): method setUp (line 9) | def setUp(self): method tearDown (line 16) | def tearDown(self): method test_password_setter (line 21) | def test_password_setter(self): method test_no_password_getter (line 25) | def test_no_password_getter(self): method test_password_verification (line 30) | def test_password_verification(self): method test_password_salts_are_random (line 35) | def test_password_salts_are_random(self): method test_valid_confirmation_token (line 40) | def test_valid_confirmation_token(self): method test_invalid_confirmation_token (line 47) | def test_invalid_confirmation_token(self): method test_expired_confirmation_token (line 56) | def test_expired_confirmation_token(self): method test_valid_reset_token (line 64) | def test_valid_reset_token(self): method test_invalid_reset_token (line 72) | def test_invalid_reset_token(self): method test_valid_email_change_token (line 82) | def test_valid_email_change_token(self): method test_invalid_email_change_token (line 90) | def test_invalid_email_change_token(self): method test_duplicate_email_change_token (line 100) | def test_duplicate_email_change_token(self): method test_roles_and_permissions (line 110) | def test_roles_and_permissions(self): method test_anonymous_user (line 115) | def test_anonymous_user(self): method test_timestamps (line 119) | def test_timestamps(self): method test_ping (line 128) | def test_ping(self): method test_gravatar (line 137) | def test_gravatar(self): method test_follows (line 154) | def test_follows(self): method test_to_json (line 191) | def test_to_json(self):