Example #1
0
    def editable_udf_models(self):
        from treemap.plugin import feature_enabled
        from treemap.models import Tree, Plot
        from treemap.udf import UDFModel
        from treemap.util import leaf_models_of_class
        gsi_enabled = feature_enabled(self, 'green_infrastructure')

        core_models = {Tree, Plot}
        gsi_models = {clz for clz in leaf_models_of_class(UDFModel)
                      if gsi_enabled
                      and clz.__name__ in self.map_feature_types
                      and getattr(clz, 'is_editable', False)
                      and clz not in core_models}
        all_models = core_models | gsi_models

        return {'core': core_models, 'gsi': gsi_models, 'all': all_models}
Example #2
0
    def editable_udf_models(self):
        from treemap.plugin import feature_enabled
        from treemap.models import Tree, Plot
        from treemap.udf import UDFModel
        from treemap.util import leaf_models_of_class
        gsi_enabled = feature_enabled(self, 'green_infrastructure')

        core_models = {Tree, Plot}
        gsi_models = {clz for clz in leaf_models_of_class(UDFModel)
                      if gsi_enabled
                      and clz.__name__ in self.map_feature_types
                      and getattr(clz, 'is_editable', False)
                      and clz not in core_models}
        all_models = core_models | gsi_models

        return {'core': core_models, 'gsi': gsi_models, 'all': all_models}
Example #3
0
 def feature_enabled(self, feature):
     # Delayed import to prevent circular imports
     from treemap.plugin import feature_enabled
     return feature_enabled(self, feature)
Example #4
0
 def feature_enabled(self, feature):
     # Delayed import to prevent circular imports
     from treemap.plugin import feature_enabled
     return feature_enabled(self, feature)
Example #5
0
urlpatterns = patterns(
    '',
    url(r'^$', list_imports_endpoint, name='list_imports'),
    url(r'^refresh$', refresh_imports_endpoint, name='refresh_imports'),
    url(r'^start_import$', start_import_endpoint, name='start_import'),
    url(r'^status/%s/' % _import_api_pattern, show_import_status_endpoint,
        name='status'),
    url(r'^status_panel/%s/' % _import_api_pattern, show_status_panel_endpoint,
        name='status_panel'),
    url(r'^species/solve(?P<import_event_id>\d+)/(?P<row_index>\d+)/$',
        solve_endpoint, name='solve'),
    url(r'^update/%s/(?P<row_id>\d+)/$' % _type_pattern,
        update_row_endpoint, name='update_row'),
    url(r'^commit/%s/$' % _import_api_pattern, commit_endpoint, name='commit'),

    url(r'^export/species/all', export_all_species, name='export_all_species'),
    url(r'^export/species/(?P<import_event_id>\d+)$',
        export_single_species_import, name='export_single_species_import'),
    url(r'^export/tree/(?P<import_event_id>\d+)$', export_single_tree_import,
        name='export_single_tree_import'),

    # API
    url(r'^api/merge$', merge_species, name='merge'),
    url(r'^api/counts', counts, name='counts'),
    url(r'^api/species/similar', find_similar_species,
        name='find_similar_species'),
)

if not feature_enabled(None, 'bulk_upload'):
    urlpatterns = patterns('')