MCPcopy Create free account
hub / github.com/Maps4HTML/MapML.js / _setupQueryVars

Method _setupQueryVars

src/map-link.js:585–707  ·  view source on GitHub ↗
(template)

Source from the content-addressed store, hash-verified

583 }
584 }
585 _setupQueryVars(template) {
586 // process the inputs associated to template and create an object named
587 // query with member properties as follows:
588 // {width: 'widthvarname',
589 // height: 'heightvarname',
590 // left: 'leftvarname',
591 // right: 'rightvarname',
592 // top: 'topvarname',
593 // bottom: 'bottomvarname'
594 // i: 'ivarname'
595 // j: 'jvarname'}
596 // x: 'xvarname' x being the tcrs x axis
597 // y: 'yvarname' y being the tcrs y axis
598 // z: 'zvarname' zoom
599 // title: link title
600
601 var queryVarNames = { query: {} },
602 inputs = template.values;
603
604 for (var i = 0; i < template.values.length; i++) {
605 var type = inputs[i].getAttribute('type'),
606 units = inputs[i].getAttribute('units'),
607 axis = inputs[i].getAttribute('axis'),
608 name = inputs[i].getAttribute('name'),
609 position = inputs[i].getAttribute('position'),
610 rel = inputs[i].getAttribute('rel'),
611 select = inputs[i].tagName.toLowerCase() === 'map-select';
612 if (type === 'width') {
613 queryVarNames.query.width = name;
614 } else if (type === 'height') {
615 queryVarNames.query.height = name;
616 } else if (type === 'location') {
617 switch (axis) {
618 case 'x':
619 case 'y':
620 case 'column':
621 case 'row':
622 queryVarNames.query[axis] = name;
623 break;
624 case 'longitude':
625 case 'easting':
626 if (position) {
627 if (position.match(/.*?-left/i)) {
628 if (rel === 'pixel') {
629 queryVarNames.query.pixelleft = name;
630 } else if (rel === 'tile') {
631 queryVarNames.query.tileleft = name;
632 } else {
633 queryVarNames.query.mapleft = name;
634 }
635 } else if (position.match(/.*?-right/i)) {
636 if (rel === 'pixel') {
637 queryVarNames.query.pixelright = name;
638 } else if (rel === 'tile') {
639 queryVarNames.query.tileright = name;
640 } else {
641 queryVarNames.query.mapright = name;
642 }

Callers 1

_createTemplatedLinkMethod · 0.95

Calls 1

getAttributeMethod · 0.80

Tested by

no test coverage detected