This allows to add map specific copyright, or copyright required for tools like geocoders that are used in the context of the map.
61 lines
2.7 KiB
HTML
61 lines
2.7 KiB
HTML
<html>
|
|
<head>
|
|
<script src="../OLLoader.js"></script>
|
|
<script type="text/javascript">
|
|
var map;
|
|
function test_Control_Attribution_constructor (t) {
|
|
t.plan( 2 );
|
|
|
|
control = new OpenLayers.Control.Attribution();
|
|
t.ok( control instanceof OpenLayers.Control.Attribution, "new OpenLayers.Control returns object" );
|
|
t.eq( control.displayClass, "olControlAttribution", "displayClass is correct" );
|
|
}
|
|
function test_Control_Attribution_setBaseLayer (t) {
|
|
t.plan(1);
|
|
map = new OpenLayers.Map("map");
|
|
map.addControl(control);
|
|
map.addLayer(new OpenLayers.Layer("name",{'attribution':'My layer!', isBaseLayer: true}));
|
|
map.addLayer(new OpenLayers.Layer("name",{'attribution':'My layer 2!', isBaseLayer: true}));
|
|
map.setBaseLayer(map.layers[1]);
|
|
t.eq(control.div.innerHTML, 'My layer 2!', "Attribution correct with changed base layer");
|
|
|
|
}
|
|
function test_Control_Attribution_draw (t) {
|
|
t.plan(3);
|
|
control = new OpenLayers.Control.Attribution();
|
|
map = new OpenLayers.Map("map");
|
|
map.addControl(control);
|
|
map.addLayer(new OpenLayers.Layer("name",{'attribution':'My layer!'}));
|
|
t.eq(control.div.innerHTML, 'My layer!', "Attribution correct with one layer.");
|
|
map.addLayer(new OpenLayers.Layer("name", {'attribution':'My layer 2!'}));
|
|
t.eq(control.div.innerHTML, 'My layer!, My layer 2!', "Attribution correct with two layers.");
|
|
control.separator = '|';
|
|
control.template = "Map Copyright (c) 2012 by Foo Bar; ${layers}";
|
|
map.addLayer(new OpenLayers.Layer("name",{'attribution':'My layer 3!'}));
|
|
t.eq(control.div.innerHTML, 'Map Copyright (c) 2012 by Foo Bar; My layer!|My layer 2!|My layer 3!', "Attribution correct with three layers and diff seperator.");
|
|
|
|
|
|
}
|
|
|
|
function test_Control_Attribution_no_duplicates(t) {
|
|
t.plan(2);
|
|
|
|
map = new OpenLayers.Map("map");
|
|
map.addLayer(new OpenLayers.Layer("Company A: 1",{'attribution':'company A'}));
|
|
map.addLayer(new OpenLayers.Layer("Company A: 2",{'attribution':'company A'}));
|
|
|
|
control = new OpenLayers.Control.Attribution();
|
|
map.addControl(control);
|
|
t.eq(control.div.innerHTML, 'company A', "Attribution not duplicated.");
|
|
|
|
map.addLayer(new OpenLayers.Layer("Company B: 1",{'attribution':'company B'}));
|
|
map.addLayer(new OpenLayers.Layer("Company A: 3",{'attribution':'company A'}));
|
|
t.eq(control.div.innerHTML, 'company A, company B', "Attribution correct with four layers (3 with same attribution).");
|
|
}
|
|
</script>
|
|
</head>
|
|
<body>
|
|
<div id="map" style="width: 1024px; height: 512px;"/>
|
|
</body>
|
|
</html>
|