Beispiel #1
0
    def test_view_returns_reponse(self):
        templating_view = decorate(render_template("home.html"),
                                   redirect_view)
        resp = templating_view(self.get_req)

        self.assertEqual(b"", resp.content)
        if django.VERSION[1] > 5:
            self.assertEqual("http://lmgtfy.com", resp.url)
Beispiel #2
0
def _template_api_call(verb, template, view_fn):
    templated_view = render_template(template)(view_fn)
    return _api_call(verb, templated_view)
Beispiel #3
0
    def test_dict(self):
        templating_view = decorate(render_template("home.html"),
                                   {"Hello": "Joe"})
        resp = templating_view(self.get_req)

        self.assertEqual(b"I said hello to Joe\n", resp.content)
Beispiel #4
0
# -*- coding: utf-8 -*-
from __future__ import print_function
from __future__ import unicode_literals
from __future__ import division

from django_tinsel.decorators import route, render_template
from django_tinsel.utils import decorate as do

from apps.home import views as v
from apps.core.decorators import individual_mapper_do


home_page = route(GET=do(render_template('home/home.html'),
                         v.home_page))

about_faq_page = route(GET=do(render_template('home/about_faq.html'),
                              v.about_faq_page))

retrieve_job_status = do(v.retrieve_job_status)

individual_mapper_instructions = individual_mapper_do(
    render_template('home/individual_mapper_instructions.html'),
    v.individual_mapper_instructions)

trusted_mapper_request_sent = individual_mapper_do(
    render_template('home/trusted_mapper_request_sent.html'),
    v.trusted_mapper_request_sent)
Beispiel #5
0
from django.contrib.auth.decorators import login_required
from django.views.decorators.http import last_modified

from django_tinsel.decorators import route, render_template, json_api_call
from django_tinsel.utils import decorate as do

from apps.core.decorators import (individual_mapper_do, group_request,
                                  census_admin_do, update_with)
from apps.survey import views as v
from apps.survey.layer_context import get_group_territory_modification_time

#####################################
# PROGRESS PAGE ROUTES
#####################################

progress_page = route(GET=do(render_template('survey/progress.html'),
                             v.progress_page))

progress_page_blockface_popup = route(
    GET=do(
        render_template('survey/partials/progress_page_blockface_popup.html'),
        v.progress_page_blockface_popup))

group_borders_geojson = do(
    last_modified(get_group_territory_modification_time),
    route(GET=json_api_call(v.group_borders_geojson)))

group_popup = route(GET=do(group_request,
                           render_template('survey/partials/group_popup.html'),
                           v.group_popup))
Beispiel #6
0
    return _set_prop_on_comments(request, instance, 'is_archived', False)


@transaction.atomic
def hide(request, instance):
    return _set_prop_on_comments(request, instance, 'is_removed', True)


@transaction.atomic
def show(request, instance):
    return _set_prop_on_comments(request, instance, 'is_removed', False)


_admin_post_do = partial(do, require_http_method("POST"),
                         admin_instance_request,
                         render_template(
                             "otm_comments/partials/moderation.html"))

_render_flagging_view = partial(
    do,
    require_http_method("POST"),
    instance_request,
    render_template("otm_comments/partials/flagging.html"))

flag_endpoint = _render_flagging_view(flag)
unflag_endpoint = _render_flagging_view(unflag)
hide_flags_endpoint = _admin_post_do(hide_flags)
archive_endpoint = _admin_post_do(archive)
unarchive_endpoint = _admin_post_do(unarchive)
hide_endpoint = _admin_post_do(hide)
show_endpoint = _admin_post_do(show)
Beispiel #7
0
)

import treemap.views.user as user_views
import treemap.views.photo as photo_views
import treemap.views.tree as tree_views
import treemap.views.misc as misc_views
import treemap.views.map_feature as feature_views


add_map_feature_photo_do = partial(
    do,
    require_http_method("POST"),
    login_or_401,
    instance_request,
    creates_instance_user,
    render_template("treemap/partials/photo_carousel.html"),
)

#####################################
# misc content views
#####################################

edits_page = do(
    instance_request, requires_feature("recent_edits_report"), render_template("treemap/edits.html"), misc_views.edits
)

index_page = instance_request(misc_views.index)

map_page = do(instance_request, render_template("treemap/map.html"), misc_views.get_map_view_context)

static_page = do(instance_request, render_template("treemap/staticpage.html"), misc_views.static_page)
Beispiel #8
0
# -*- coding: utf-8 -*-
from __future__ import print_function
from __future__ import unicode_literals
from __future__ import division

from django_tinsel.decorators import route, render_template

from apps.core.decorators import census_admin_do

from apps.census_admin import views as v


upload_group_polygons = census_admin_do(
    render_template('census_admin/upload_group_polygons.html'),
    route(GET=lambda x: {},
          POST=v.upload_group_polygons))
Beispiel #9
0
from django_tinsel.decorators import route, render_template, json_api_call

from django_tinsel.utils import decorate as do

from apps.core.decorators import (user_must_have_online_training,
                                  group_request, group_admin_do)
from apps.event import views as v

#####################################
# EVENT ROUTES
#####################################

events_list_page = route(
    GET=do(
        render_template('event/event_list_page.html'),
        v.events_list_page))

events_list_feed = route(GET=do(json_api_call, v.events_list_feed))

future_events_geojson = route(GET=do(json_api_call, v.future_events_geojson))

#####################################
# GROUP ROUTES
#####################################

add_event = group_admin_do(render_template('event/add_event.html'),
                           route(GET=v.add_event_page,
                                 POST=v.add_event))

event_detail = do(group_request,
Beispiel #10
0
                                             update_user_roles,
                                             create_user_role,
                                             remove_invited_user_from_instance)
from treemap.decorators import (require_http_method, admin_instance_request,
                                return_400_if_validation_errors,
                                requires_feature)

admin_route = lambda **kwargs: admin_instance_request(route(**kwargs))

json_do = partial(do, json_api_call, return_400_if_validation_errors)

management = do(require_http_method('GET'), views.management_root)

admin_counts = admin_route(GET=do(json_api_call, views.admin_counts))

site_config = admin_route(GET=do(render_template('manage_treemap/basic.html'),
                                 views.site_config_basic_info),
                          PUT=json_do(update_instance_fields_with_validator,
                                      views.site_config_validator))

external_link = admin_route(GET=do(render_template('manage_treemap/link.html'),
                                   views.external_link),
                            PUT=json_do(views.update_external_link))

branding = admin_route(GET=do(render_template('manage_treemap/branding.html'),
                              views.branding),
                       PUT=json_do(update_instance_fields_with_validator,
                                   views.branding_validator))

embed = admin_route(
    GET=do(render_template('manage_treemap/embed.html'), views.embed))
Beispiel #11
0
                                return_400_if_validation_errors)

admin_route = lambda **kwargs: admin_instance_request(route(**kwargs))

json_do = partial(do, json_api_call, return_400_if_validation_errors)

management = do(
    require_http_method('GET'),
    views.management_root)

admin_counts = admin_route(
    GET=do(json_api_call, views.admin_counts)
)

site_config = admin_route(
    GET=do(render_template('manage_treemap/basic.html'),
           views.site_config_basic_info),
    PUT=json_do(update_instance_fields_with_validator,
                views.site_config_validator)
)

external_link = admin_route(
    GET=do(render_template('manage_treemap/link.html'),
           views.external_link),
    PUT=json_do(views.update_external_link)
)

branding = admin_route(
    GET=do(render_template('manage_treemap/branding.html'),
           views.branding),
    PUT=json_do(update_instance_fields_with_validator,
Beispiel #12
0
    def test_callable(self):
        templating_view = decorate(render_template("home.html"), dict_view)
        resp = templating_view(self.get_req)

        self.assertEqual(b"I said hello to World\n", resp.content)
Beispiel #13
0
    def test_status_code(self):
        templating_view = render_template("home.html")(dict_view, 500)
        resp = templating_view(self.get_req)

        self.assertEqual(b"I said hello to World\n", resp.content)
        self.assertEqual(500, resp.status_code)
Beispiel #14
0
from treemap.decorators import (login_or_401, return_400_if_validation_errors,
                                require_http_method, requires_feature,
                                creates_instance_user, instance_request,
                                admin_instance_request, json_api_edit)

import treemap.views.user as user_views
import treemap.views.photo as photo_views
import treemap.views.tree as tree_views
import treemap.views.misc as misc_views
import treemap.views.map_feature as feature_views

add_map_feature_photo_do = partial(
    do, require_http_method("POST"), login_or_401, instance_request,
    creates_instance_user,
    render_template('treemap/partials/photo_carousel.html'))

#####################################
# misc content views
#####################################

edits_page = do(instance_request, requires_feature('recent_edits_report'),
                render_template('treemap/edits.html'), misc_views.edits)

index_page = instance_request(misc_views.index)

map_page = do(instance_request, render_template('treemap/map.html'),
              misc_views.get_map_view_context)

static_page = do(instance_request, render_template('treemap/staticpage.html'),
                 misc_views.static_page)
Beispiel #15
0
    def test_dict(self):
        templating_view = decorate(render_template("home.html"),
                                   {"Hello": "Joe"})
        resp = templating_view(self.get_req)

        self.assertEqual(b"I said hello to Joe\n", resp.content)
Beispiel #16
0
                                creates_instance_user, instance_request,
                                json_api_edit)

import treemap.views.user as user_views
import treemap.views.tree as tree_views
import treemap.views.misc as misc_views
import treemap.views.map_feature as feature_views


add_map_feature_photo_do = partial(
    do,
    require_http_method("POST"),
    login_or_401,
    instance_request,
    creates_instance_user,
    render_template('treemap/partials/photo_carousel.html'))

#####################################
# misc content views
#####################################

edits_page = do(
    instance_request,
    requires_feature('recent_edits_report'),
    render_template('treemap/edits.html'),
    misc_views.edits)

index_page = instance_request(misc_views.index)

map_page = do(
    instance_request,
Beispiel #17
0
    def test_status_code(self):
        templating_view = render_template("home.html")(dict_view, 500)
        resp = templating_view(self.get_req)

        self.assertEqual(b"I said hello to World\n", resp.content)
        self.assertEqual(500, resp.status_code)
Beispiel #18
0
from django_tinsel.decorators import route, render_template

from apps.login import views as v
from apps.login.backends import NycRegistrationView


#####################################
# ACCOUNTS ROUTES
#####################################

logout = do(v.logout)
password_reset = do(v.password_reset)

activation_complete = do(
    login_required,
    render_template('registration/activation_complete.html'),
    route(GET=v.activation_complete,
          POST=v.save_optional_info))

register = NycRegistrationView.as_view()

#####################################
# LOGIN ROUTES
#####################################

forgot_username = do(
    render_template('login/forgot_username.html'),
    route(GET=v.forgot_username_page, POST=v.forgot_username))

forgot_username_sent = do(
    render_template('login/forgot_username_complete.html'),
Beispiel #19
0
    def test_callable(self):
        templating_view = decorate(render_template("home.html"), dict_view)
        resp = templating_view(self.get_req)

        self.assertEqual(b"I said hello to World\n", resp.content)
Beispiel #20
0
from apps.users.views.group import group_list_page

from apps.core.decorators import user_must_have_online_training

from apps.home.training.decorators import render_flatpage

from apps.home.training import views as v

from apps.home.training.decorators import mark_user


groups_to_follow = route(
    GET=do(login_required,
           user_must_have_online_training,
           mark_user('training_finished_groups_to_follow'),
           render_template('home/groups_to_follow.html'),
           group_list_page))


training_list_page = route(GET=do(render_template('home/training.html'),
                                  v.training_list_page))

intro_quiz = do(login_required,
                route(GET=do(render_template('home/quiz_page.html'),
                             v.intro_quiz),
                      POST=do(render_template('home/quiz_complete_page.html'),
                              v.complete_quiz)))

training_instructions = route(GET=do(
    render_template('home/training_instructions.html'),
    v.training_instructions))
Beispiel #21
0
    return _set_prop_on_comments(request, instance, 'is_archived', False)


@transaction.atomic
def hide(request, instance):
    return _set_prop_on_comments(request, instance, 'is_removed', True)


@transaction.atomic
def show(request, instance):
    return _set_prop_on_comments(request, instance, 'is_removed', False)


_admin_post_do = partial(
    do, require_http_method("POST"), admin_instance_request,
    render_template("otm_comments/partials/moderation.html"))

_render_flagging_view = partial(
    do, require_http_method("POST"), instance_request,
    render_template("otm_comments/partials/flagging.html"))

flag_endpoint = _render_flagging_view(flag)
unflag_endpoint = _render_flagging_view(unflag)
hide_flags_endpoint = _admin_post_do(hide_flags)
archive_endpoint = _admin_post_do(archive)
unarchive_endpoint = _admin_post_do(unarchive)
hide_endpoint = _admin_post_do(hide)
show_endpoint = _admin_post_do(show)

comments_csv_endpoint = do(require_http_method("GET"), admin_instance_request,
                           json_api_call, queryset_as_exported_csv,
Beispiel #22
0
                                admin_instance_request, json_api_edit)

import treemap.views.user as user_views
import treemap.views.photo as photo_views
import treemap.views.tree as tree_views
import treemap.views.misc as misc_views
import treemap.views.map_feature as feature_views


add_map_feature_photo_do = partial(
    do,
    require_http_method("POST"),
    login_or_401,
    instance_request,
    creates_instance_user,
    render_template('treemap/partials/photo_carousel.html'))

#####################################
# misc content views
#####################################

edits_page = do(
    instance_request,
    requires_feature('recent_edits_report'),
    render_template('treemap/edits.html'),
    misc_views.edits)

index_page = instance_request(misc_views.index)

map_page = do(
    instance_request,
Beispiel #23
0
from django_tinsel.decorators import route, render_template

from apps.login import views as v
from apps.login.backends import NycRegistrationView


#####################################
# ACCOUNTS ROUTES
#####################################

logout = do(v.logout)
password_reset = do(v.password_reset)

activation_complete = do(
    login_required,
    render_template('registration/activation_complete.html'),
    route(GET=v.activation_complete,
          POST=v.save_optional_info))

register = NycRegistrationView.as_view()

password_reset_impossible = route(
    GET=render_template('login/password_reset_impossible.html')())

#####################################
# LOGIN ROUTES
#####################################

forgot_username = do(
    render_template('login/forgot_username.html'),
    route(GET=v.forgot_username_page, POST=v.forgot_username))
Beispiel #24
0
def _template_api_call(verb, template, view_fn):
    templated_view = render_template(template)(view_fn)
    return _api_call(verb, templated_view)
Beispiel #25
0
def unarchive(request, instance):
    return _set_prop_on_comments(request, instance, "is_archived", False)


@transaction.atomic
def hide(request, instance):
    return _set_prop_on_comments(request, instance, "is_removed", True)


@transaction.atomic
def show(request, instance):
    return _set_prop_on_comments(request, instance, "is_removed", False)


_admin_post_do = partial(
    do, require_http_method("POST"), admin_instance_request, render_template("otm_comments/partials/moderation.html")
)

_render_flagging_view = partial(
    do, require_http_method("POST"), instance_request, render_template("otm_comments/partials/flagging.html")
)

flag_endpoint = _render_flagging_view(flag)
unflag_endpoint = _render_flagging_view(unflag)
hide_flags_endpoint = _admin_post_do(hide_flags)
archive_endpoint = _admin_post_do(archive)
unarchive_endpoint = _admin_post_do(unarchive)
hide_endpoint = _admin_post_do(hide)
show_endpoint = _admin_post_do(show)

comments_csv_endpoint = do(
Beispiel #26
0
# -*- coding: utf-8 -*-
from __future__ import print_function
from __future__ import unicode_literals
from __future__ import division

from django.contrib.auth.decorators import login_required

from django_tinsel.decorators import route, render_template, json_api_call
from django_tinsel.utils import decorate as do

from apps.core.decorators import group_request, group_admin_do, census_admin_do

from apps.users.views import group as v


render_follow_detail = render_template('groups/partials/follow_detail.html')


group_list_page = route(GET=do(render_template('groups/list.html'),
                               v.group_list_page))

group_detail = route(GET=do(group_request,
                            render_template('groups/detail.html'),
                            v.group_detail))

group_edit = group_admin_do(render_template('groups/settings.html'),
                            route(GET=v.edit_group,
                                  POST=v.update_group_settings))

follow_group = do(
    login_required,
Beispiel #27
0
# -*- coding: utf-8 -*-
from __future__ import print_function
from __future__ import unicode_literals
from __future__ import division

from django.contrib.auth.decorators import login_required

from django_tinsel.decorators import route, render_template
from django_tinsel.utils import decorate as do

from apps.users.views import user as v
from apps.core.decorators import (user_must_have_field_training,
                                  user_must_have_online_training)


render_user_template = render_template('users/profile.html')
render_settings_template = render_template('users/settings.html')

user_detail_redirect = do(login_required,
                          route(GET=v.user_detail_redirect))

user_profile_settings = do(
    login_required,
    render_settings_template,
    route(GET=v.profile_settings,
          POST=v.update_profile_settings))

achievements = do(route(GET=do(render_template('users/achievement.html'),
                               v.achievements_page)))

user_detail = route(