Exemple #1
0
 def mapcache_legend_request(self,
                             request,
                             project_hash,
                             publish,
                             layer_hash=None,
                             zoom=None,
                             format=None):
     params = {
         key.upper(): request.GET[key]
         for key in request.GET.iterkeys()
     }
     project = params['PROJECT'] + '.qgs'
     try:
         layer = WmsLayer(
             project=project_hash,
             publish=publish,
             name=layer_hash,
             provider_layers=params['LAYER'].encode('utf-8'),
             provider_url=set_query_parameters(
                 settings.GISLAB_WEB_MAPSERVER_URL, {'MAP': project}),
             image_format=format,
         )
         params.pop('PROJECT')
         params.pop('LAYER')
         return get_legendgraphic_response(layer, zoom, **params)
     except:
         raise Http404
Exemple #2
0
def legend(request,
           project_hash,
           publish,
           layer_hash=None,
           zoom=None,
           format=None):
    params = {key.upper(): request.GET[key] for key in request.GET.keys()}
    project = params['PROJECT'] + '.qgs'
    mapserver_url = set_query_parameters(settings.GISQUICK_MAPSERVER_URL,
                                         {'MAP': abs_project_path(project)})
    project_info = get_project_info(project_hash, publish, project=project)
    if not project_info:
        raise Http404
    if not check_project_access(request, params['PROJECT'],
                                project_info['authentication']):
        raise PermissionDenied

    try:
        layer = WmsLayer(
            project=project_hash,
            publish=publish,
            name=layer_hash,
            provider_layers=params['LAYER'].encode('utf-8'),
            provider_url=mapserver_url,
            image_format=format,
        )
        params.pop('PROJECT')
        params.pop('LAYER')
        return get_legendgraphic_response(layer, zoom, **params)
    except:
        raise Http404
 def mapcache_legend_request(self, request, project_hash, publish, layer_hash=None, zoom=None, format=None):
     params = {key.upper(): request.GET[key] for key in request.GET.iterkeys()}
     project = params['PROJECT']+'.qgs'
     try:
         layer = WmsLayer(
             project=project_hash,
             publish=publish,
             name=layer_hash,
             provider_layers=params['LAYER'].encode('utf-8'),
             provider_url=set_query_parameters(settings.GISLAB_WEB_MAPSERVER_URL, {'MAP': project}),
             image_format=format,
         )
         params.pop('PROJECT')
         params.pop('LAYER')
         return get_legendgraphic_response(layer, zoom, **params)
     except:
         raise Http404