Named map with params

by jsanz

HTML

<link rel="stylesheet" href="https://cartodb-libs.global.ssl.fastly.net/cartodb.js/v3/themes/css/cartodb.css">
<script src="https://cartodb-libs.global.ssl.fastly.net/cartodb.js/v3/3.15/cartodb.js"></script>
<div id="map"></div>

CSS

html, body, #map {
    height: 100%;
    padding: 0;
    margin: 0;
}

JavaScript

var myLayer, mySubLayer;
var map = L.map('map', {
    zoomControl: true,
    center: [0, 0],
    zoom: 2
});

    L.tileLayer('http://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}.png', {
        attribution: '&copy; <a href="http://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors, &copy; <a href="http://cartodb.com/attributions">CartoDB</a>'
}).addTo(map);

var namedLayerSource = {
    user_name: 'kapil-dhawan',
    type: 'namedmap',
    auth_token: "cartodb",
    named_map: {
        name: "named_map_prashant",
        layers: [],
        params:{
        	"generic1": "pb_mbi_data_copy",
          "generic2": '',
          "generic3": "ST_Contains(ST_Buffer(CDB_LatLng(-1.889306,29.256592),15),the_geom)",
         }
    }
};

// add cartodb layer with one sublayer
cartodb.createLayer(map, namedLayerSource, {
    https: true
})
.addTo(map)
.done(function (layer) {
   myLayer = layer;
})
    .error(function (err) {
    console.log("error: " + err);
});