{"version":3,"sources":["./src/app/plant/plant.component.ts","./src/app/plant/plant.component.html","./src/app/indexfunctions.ts","./src/app/map/map.tools.ts","./src/app/priority-slider/priority-slider.component.ts","./src/app/priority-slider/priority-slider.component.html","./src/app/login-forget-pass/login-forget-pass.component.ts","./src/app/login-forget-pass/login-forget-pass.component.html","./src/app/toolbar-components/toolspopup/toolspopup.component.ts","./src/app/toolbar-components/toolspopup/toolspopup.component.html","./src/app/app.resource-report.ts","./src/app/toolbar-components/toolbar-layer-filters/toolbar-layer-filters.component.ts","./src/app/toolbar-components/toolbar-layer-filters/toolbar-layer-filters.component.html","./src/environments/environment.ts","./src/app/overview/overview.component.ts","./src/app/overview/overview.component.html","./src/app/map/map.functions.ts","./src/app/settings-components/user-settings-security/user-settings-security.component.ts","./src/app/settings-components/user-settings-security/user-settings-security.component.html","./src/app/toolbar-components/toolbar/toolbar.component.ts","./src/app/toolbar-components/toolbar/toolbar.component.html","./src/app/settings-components/user-settings-admin/user-settings-admin.component.ts","./src/app/settings-components/user-settings-admin/user-settings-admin.component.html","./src/app/benefits-card-quickcalc/benefits-card-quickcalc.component.ts","./src/app/benefits-card-quickcalc/benefits-card-quickcalc.component.html","./src/app/settings-components/user-settings-admin-new-user/user-settings-admin-new-user.component.ts","./src/app/settings-components/user-settings-admin-new-user/user-settings-admin-new-user.component.html","./src/app/app.component.ts","./src/app/app.component.html","./src/app/toolbar-components/toolbar-query/toolbar-query.component.ts","./src/app/toolbar-components/toolbar-query/toolbar-query.component.html","./src/app/toolbar-components/toolbar-quick-calculator/toolbar-quick-calculator.component.ts","./src/app/toolbar-components/toolbar-quick-calculator/toolbar-quick-calculator.component.html","./src/app/map/map.arcadefunction.ts","./src/app/app.module.ts","./src/app/dialog/dialog.component.ts","./src/app/dialog/dialog.component.html","./src/app/services/token-storage.service.ts","./src/app/services/project.service.ts","./src/app/map/map.component.ts","./src/app/map/map.component.html","./src/app/toolbar-components/toolbar-diversity/toolbar-diversity.component.ts","./src/app/toolbar-components/toolbar-diversity/toolbar-diversity.component.html","./src/app/services/backend.service.ts","./src/app/map/map.basicmap.ts","./src/app/toolbar-components/toolbar-query-layer/toolbar-query-layer.component.ts","./src/app/toolbar-components/toolbar-query-layer/toolbar-query-layer.component.html","./src/app/prioritize/prioritize.component.ts","./src/app/prioritize/prioritize.component.html","./src/app/toolbar-components/toolbar-layer-layers/toolbar-layer-layers.component.ts","./src/app/toolbar-components/toolbar-layer-layers/toolbar-layer-layers.component.html","./src/app/observe/observe.component.ts","./src/app/observe/observe.component.html","./src/app/report/report.component.ts","./src/app/report/report.component.html","./src/app/settings-components/user-settings-admin-edit-user/user-settings-admin-edit-user.component.ts","./src/app/settings-components/user-settings-admin-edit-user/user-settings-admin-edit-user.component.html","./src/app/toolbar-components/toolbar-query-vacantsite/toolbar-query-vacantsite.component.ts","./src/app/toolbar-components/toolbar-query-vacantsite/toolbar-query-vacantsite.component.html","./src/app/benefits-card/benefits-card.component.ts","./src/app/benefits-card/benefits-card.component.html","./src/app/map/map.popupchart.ts","./src/app/app.calculations.ts","./src/app/top-bar/top-bar.component.ts","./src/app/top-bar/top-bar.component.html","./src/app/settings-components/user-settings/user-settings.component.ts","./src/app/settings-components/user-settings/user-settings.component.html","./src/app/toolbar-components/toolbar-layer/toolbar-layer.component.ts","./src/app/toolbar-components/toolbar-layer/toolbar-layer.component.html","./src/app/toolbar-components/toolbar-quick-calculator/quick-calculations.ts","./src/app/toolbar-components/toolsmodule/toolsmodule.component.ts","./src/app/toolbar-components/toolsmodule/toolsmodule.component.html","./src/app/map/map.popupactions.ts","./src/app/map/map.tables.ts","./src/app/login/login.component.ts","./src/app/login/login.component.html","./src/app/globals.ts","./src/app/projects/projects.component.ts","./src/app/projects/projects.component.html","./src/main.ts","./src/app/bottom-panel/bottom-panel.component.ts","./src/app/bottom-panel/bottom-panel.component.html","./$_lazy_route_resource lazy namespace object"],"names":[],"mappings":"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","file":"main-es2015.js","sourcesContent":["import { Component, OnInit, Input, Output, EventEmitter, ViewChild, ElementRef } from '@angular/core';\nimport { Globals } from '../globals';\n\ndeclare let $:any\n\n@Component({\n selector: 'app-plant',\n templateUrl: './plant.component.html',\n styleUrls: ['./plant.component.scss']\n})\nexport class PlantComponent implements OnInit {\n\n layersselect=this.globals.constvars.layersselect\n @Input() hasProjections;\n isUK = this.globals.constvars.isUK;\n growthyears = this.globals.globalvars.growthyears;\n @Input() hasLogin;\n @Input() currentobject;\n @Input() username\n @Input() calculate: () => void;\n @Output() openevent= new EventEmitter()\n @Output() opensaveevent= new EventEmitter()\n @Output() saving= new EventEmitter()\n @ViewChild(\"goalselect\") private goalselect:ElementRef;\n @ViewChild(\"averagecost\") private averagecost:ElementRef;\n @ViewChild(\"averageMaintenancecost\") private averageMaintenancecost:ElementRef;\n\n day=new Date()\n year=this.day.getFullYear()\n \n hasProjects(){\n if(this.hasLogin && this.username!==\"Guest\"){\n return true\n }else{return false}\n }\n\n openload(){ \n this.openevent.emit(null)\n this.saving.emit(false)\n }\n load(projectobj){ \n this.currentobject=projectobj\n this.goalselect.nativeElement.value=this.currentobject[0].value\n $('#'+this.goalselect.nativeElement.value.substring(0, this.goalselect.nativeElement.value.length-3)).slider('value',this.currentobject[1].value)\n this.averagecost.nativeElement.value=this.currentobject[2].value\n this.averageMaintenancecost.nativeElement.value=this.currentobject[3].value\n $('#sizeDist').slider('values',this.currentobject[4].value)\n $('#SMaverageSlider').slider('value',this.currentobject[5].value)\n $('#MEDaverageSlider').slider('value',this.currentobject[6].value)\n $('#LGaverageSlider').slider('value',this.currentobject[7].value)\n $('#NatGrowthSlider').slider('value',this.currentobject[8].value)\n $('#mortalitySlider').slider('value',this.currentobject[9].value)\n $('#TimeSlider').slider('value',this.currentobject[10].value)\n setTimeout(()=>$('#TimegoalSlider').slider('value',this.currentobject[11].value+this.year),100)\n this.calculate()\n $(\".planter\").change()\n }\n opensave(){\n this.currentobject[0].value=this.goalselect.nativeElement.value\n this.currentobject[1].value=$('#'+this.goalselect.nativeElement.value.substring(0, this.goalselect.nativeElement.value.length-3)).slider('value')\n this.currentobject[2].value=this.averagecost.nativeElement.value\n this.currentobject[3].value=this.averageMaintenancecost.nativeElement.value \n this.currentobject[4].value=$('#sizeDist').slider('values')\n this.currentobject[5].value=$('#SMaverageSlider').slider('value')\n this.currentobject[6].value=$('#MEDaverageSlider').slider('value')\n this.currentobject[7].value=$('#LGaverageSlider').slider('value')\n this.currentobject[8].value=$('#NatGrowthSlider').slider('value')\n this.currentobject[9].value=$('#mortalitySlider').slider('value')\n this.currentobject[10].value=$('#TimeSlider').slider('value')\n this.currentobject[11].value=$('#TimegoalSlider').slider('value')-this.year \n this.opensaveevent.emit(this.currentobject)\n this.saving.emit(true)\n }\n constructor(private globals:Globals) { }\n checkboxclick(){\n this.calculate()\n $('.scenario').click()\n if ($(\".scenario\").is(':checked')) {\n $('#Scenariobtn').prop('disabled', false);\n $('#Summarybtn').prop('disabled', false);\n } else {\n $('#Scenariobtn').prop('disabled', true);\n $('#Summarybtn').prop('disabled', true);\n }\n if ($(\"#DoNothingcheck\").is(':checked')) {\n $(\"#Dobtn\").prop('disabled', false);\n } else {\n $(\"#Dobtn\").prop('disabled', true);\n }\n if ($(\"#NoNetlosscheck\").is(':checked')) {\n $(\"#Nobtn\").prop('disabled', false);\n } else {\n $(\"#Nobtn\").prop('disabled', true);\n }\n if ($(\"#Reversecheck\").is(':checked')) {\n $(\"#Reversebtn\").prop('disabled', false);\n } else {\n $(\"#Reversebtn\").prop('disabled', true);\n }\n if ($(\"#Visioncheck\").is(':checked')) {\n $(\"#Visionbtn\").prop('disabled', false);\n } else {\n $(\"#Visionbtn\").prop('disabled', true);\n }\n }\n ngOnInit(): void {\n $(\"#targetSlider\")\n .slider({\n max: this.globals.constvars.maxtargetpercent,\n min: 0,\n value: 10,\n step: 1,\n slide: function (event, ui) {\n $('#targetVal').val(ui.value);\n $('.planter').change()\n },\n change: function (event, ui) {\n $(\"#targetVal\").val(ui.value);\n $('#targetVal').change()\n $('.planter').change()\n }\n })\n .slider(\"float\")\n .slider(\"pips\", {\n rest: \"label\",\n step: 10,\n first: \"label\",\n last: \"label\"\n });\n $('#targetVal').val($('#targetSlider').slider('value'));\n $('.planter').change(() => {this.calculate()})\n let timerId;\n let debounceFunction = (func, delay)=> {\n // Cancels the setTimeout method execution\n clearTimeout(timerId);\n // Executes the func after delay time.\n timerId = setTimeout(func, delay);\n };\n let plantchange=()=>{\n this.growthyears=this.globals.globalvars.growthyears\n $('#reportbtn').prop('disabled', false);\n this.calculate();\n }\n $(\".planter\").change(()=>{\n debounceFunction(plantchange,500);\n })\n $('.planter-typein').keyup(()=>{\n debounceFunction(plantchange,500);\n })\n }\n\n}\n","
\n \n\n
\n
\n Use this application to estimate tree planting numbers and costs based on future canopy\n scenarios. Outputs from this analysis include projected canopy over time and projected benefits.\n Data can be viewed and exported in the Report application.\n
\n
\n\n
\n\n
\n
\n Step 1. Select a boundary layer to change the tree canopy\n
\n
\n
\n
Select Layer
\n \n
\n \n
\n
\n \n \n
\n
\n\n
\n
\n Step 2. Select goal to choose a target percent for all boundaries shown or choose a\n percent to increase the canopy by.\n
\n
\n
\n
Select Goal
\n \n
\n
\n
Target Percent
\n
\n \n
\n
\n
\n
\n \n
\n
\n
Increase Percent By
\n
\n \n
\n
\n
\n \n
\n
\n Step 3. Select your average tree crown size and mortality rate.\n
\n
\n
\n
Tree Planting Cost
\n
\n {{isUK ? '£' : '$'}}\n
\n
\n
\n
Annual Tree Maintenance Cost
\n
\n {{isUK ? '£' : '$'}}\n
\n
\n
\n
Distribution of Size Class
(%)
\n
\n
\n Small\n \n
\n
\n Medium\n \n
\n
\n Large\n \n
\n
\n
\n
\n
\n
Small Tree Crown
{{isUK ? '(m)' : '(ft)'}}
\n
\n \n
\n
\n
\n
\n
Medium Tree Crown
{{isUK ? '(m)' : '(ft)'}}
\n
\n \n
\n
\n
\n
\n
Large Tree Crown
{{isUK ? '(m)' : '(ft)'}}
\n
\n \n
\n
\n
\n
\n
Canopy Stability
(%)\n
\n \n
\n
\n \n
\n \n
\n
\n
\n \n
\n \n
\n
\n
\n Yearly canopy growth rate/change.\n
\n
\n\n
\n
Annual Mortality Rate of Planted Trees
(%)\n
\n \n
\n
\n
\n \n
\n
\n
\n
\n
\n Yearly mortaility rate of newly planted trees.\n
\n
\n\n
\n
\n Step 4. Set the number of planting years in your Project Timeline and a target year.\n
\n
\n
\n
Planting Years
\n
\n \n
\n
\n
\n
\n
Target Year
\n
\n \n
\n
\n
\n
\n
\n Total growth years after planting: {{growthyears}}\n
\n
\n \n \n
","declare const $: any;\n//new sidebar draggable\nexport function dragwidthElement(elmnt) {\n var pos3 = 0,\n pos4 = 0;\n if (document.getElementById(\"dragbar\")) {\n // if present, the header is where you move the DIV from:\n document.getElementById(\"dragbar\").onmousedown = dragMouseRight;\n } else {\n // otherwise, move the DIV from anywhere inside the DIV:\n elmnt.onmousedown = dragMouseRight;\n }\n \n function dragMouseRight(e) {\n e = e || window.event;\n e.preventDefault();\n document.getElementById(\"dragbar\").style.cursor = \"grabbing\"\n // get the mouse cursor position at startup:\n pos3 = e.clientX;\n pos4 = e.clientY;\n document.onmouseup = closeSideDragElement;\n // call a function whenever the cursor moves:\n document.onmousemove = SideElementDrag;\n }\n\n function SideElementDrag(e) {\n e = e || window.event;\n e.preventDefault();\n // calculate the new cursor position:\n let pos1 = pos3 - e.clientX;\n let pos2 = pos4 - e.clientY;\n pos3 = e.clientX-(window.innerWidth*.25);\n pos4 = e.clientY;\n \n // restrict the side drag to a certain area\n let leftlimit = (window.innerWidth * .2),\n rightlimit = (window.innerWidth *.4);\n let sidepx = (window.innerWidth*.25) + pos3;\n\n if (sidepx < leftlimit){\n sidepx = leftlimit\n };\n if (sidepx > rightlimit){\n sidepx = rightlimit\n };\n\n // set the element's new position:\n document.getElementById(\"sidebar\").style.width = \"calc(\" +sidepx+\"px )\";\n $('#mapdiv').css(\"width\", \"calc(100vw - \" + $('#sidebar').width() + \"px)\");\n $('#image').css(\"width\", \"calc(100vw - \" + $('#sidebar').width() + \"px)\");\n }\n\n function closeSideDragElement() {\n // stop moving when mouse button is released:\n document.onmouseup = null;\n document.onmousemove = null;\n document.getElementById(\"dragbar\").style.cursor = \"col-resize\";\n }\n }\n \n // bottom panel\n export function dragheightElement(elmnt) {\n var pos3 = 0,\n pos4 = 0;\n if (document.getElementById(\"dragbar2\")) {\n // if present, the header is where you move the DIV from:\n document.getElementById(\"dragbar2\").onmousedown = dragMouseDown;\n } else {\n // otherwise, move the DIV from anywhere inside the DIV:\n elmnt.onmousedown = dragMouseDown;\n }\n\n function dragMouseDown(e) {\n e = e || window.event;\n e.preventDefault();\n document.getElementById(\"dragbar2\").style.cursor = \"grabbing\";\n // get the mouse cursor position at startup:\n pos3 = e.clientX;\n pos4 = e.clientY;\n document.onmouseup = closeDragElement;\n // call a function whenever the cursor moves:\n document.onmousemove = elementDrag;\n }\n\n function elementDrag(e) {\n e = e || window.event;\n e.preventDefault();\n // calculate the new cursor position:\n let pos1 = pos3 - e.clientX;\n let pos2 = pos4 - e.clientY;\n pos3 = e.clientX;\n pos4 = e.clientY;\n // limit the bottom pannels draggable space\n let botlimit = (window.innerHeight * .05),\n toplimit = (window.innerHeight * .5);\n let uppx = window.innerHeight - pos4;\n if (uppx < botlimit){\n uppx = botlimit\n };\n if (uppx > toplimit){\n uppx = toplimit\n };\n // set the element's new position:\n document.getElementById(\"bottompanel\").style.height = (uppx) + \"px\";\n }\n\n function closeDragElement() {\n // stop moving when mouse button is released:\n document.onmouseup = null;\n document.onmousemove = null;\n document.getElementById(\"dragbar2\").style.cursor = \"row-resize\";\n }\n }\n export function exportCSVFile(headers=null, items, fileTitle,btn,title=null) {\n function convertToCSV(objArray) {\n var array = typeof objArray != 'object' ? JSON.parse(objArray) : objArray;\n var str = '';\n \n for (var i = 0; i < array.length; i++) {\n var line = '';\n for (var index in array[i]) {\n if (line != '') line += ','\n \n line += array[i][index];\n }\n \n str += line + '\\r\\n';\n }\n \n return str;\n }\n if (headers!==null) {\n items.unshift(headers);\n }\n if(title!==null){\n items.unshift(title)\n }\n \n // Convert Object to JSON\n var jsonObject = JSON.stringify(items);\n \n var csv = convertToCSV(jsonObject);\n \n var exportedFilenmae = fileTitle + '.csv' || 'export.csv';\n \n var blob = new Blob([csv], { type: 'text/csv;charset=utf-8;' });\n var link = document.getElementById(btn); \n var url = URL.createObjectURL(blob);\n link.setAttribute(\"href\", url);\n link.setAttribute(\"download\", exportedFilenmae);\n } ","declare const $: any;\ndeclare const pdfMake: any;\ndeclare const Plotly: any;\n\nexport function reorderlayers(currentlayer, Layers, baseLayers, selectbaseLayers, map, Limits) {\n let currentmainlayer\n if (document.getElementById(\"prioritize\").style.display == \"block\") {\n currentmainlayer = $('#Prioritylayer').val()\n } else {\n currentmainlayer = $('#layer').val()\n }\n currentlayer = currentmainlayer\n let orderedlayers = []\n $(\"#sortable\").sortable(\"toArray\").reverse().forEach(element => {\n if (Object.keys(Layers).includes(element) && $('#' + element + 'checkbox')[0] && $('#' + element + 'checkbox')[0].checked) {\n Layers[currentmainlayer].forEach(element => {\n orderedlayers.push(element)\n });\n } else if (Object.keys(baseLayers).includes(element) && $('#' + element + 'checkbox')[0] && $('#' + element + 'checkbox')[0].checked) {\n orderedlayers.push(baseLayers[element])\n orderedlayers.push(selectbaseLayers[element])\n }\n });\n let legendcount = 0\n $('#boundary').remove()\n $(\"#sortable\").sortable(\"toArray\").forEach((element, i) => {\n if ($('#' + element + 'checkbox')[0] && $('#' + element + 'checkbox')[0].checked) {\n legendcount = legendcount + 1\n }\n if (Object.keys(Layers).includes(element) && $('#' + element + 'checkbox')[0] && $('#' + element + 'checkbox')[0].checked) {\n\n $('head').append('');\n }\n });\n map.removeAll()\n map.addMany(orderedlayers)\n map.add(Limits);\n return currentlayer\n}\nexport function placeitemtop(item, currentlayer, Layers, baseLayers, selectbaseLayers, map, Limits) {\n $('#' + item + 'checkbox')[0].checked = true\n let firstinList = $(\"#sortable\").children()[0].id\n $(\"#\" + firstinList).before($('#' + item))\n this.reorderlayers(currentlayer, Layers, baseLayers, selectbaseLayers, map, Limits)\n}\nexport function unchecklayer(item, currentlayer, Layers, baseLayers, selectbaseLayers, map, Limits) {\n $('#' + item + 'checkbox')[0].checked = false\n this.reorderlayers(currentlayer, Layers, baseLayers, selectbaseLayers, map, Limits)\n}\nexport function printpicture(view) {\n let pixelRatio = 2;\n let pdfimage = (img) => {\n\n var docDefinition = {\n pageMargins: 20,\n pageSize: { width: (view.width * pixelRatio) + 30, height: (view.height * pixelRatio) + 30 },\n content: [{\n alignment: 'left',\n image: img\n }\n ]\n };\n\n pdfMake.createPdf(docDefinition).open();\n }\n view.takeScreenshot({ width: view.width * pixelRatio, height: view.height * pixelRatio }).then(function (screenshot) {\n pdfimage(screenshot.dataUrl)\n });\n}\n\ndeclare var view, map\nimport * as indexfunctions from '../indexfunctions';\nimport { loadModules } from 'esri-loader';\n\nexport async function diversitytool(turndiversityBackOn, Layers,baseLayers,selectbaseLayers,Limits,botanicalVar,UnassignedTrees){\n let sketchViewModel, featureLayerView, pausableWatchHandle;\n let centerGraphic,\n edgeGraphic,\n polylineGraphic,\n bufferGraphic,\n centerGeometryAtStart,\n labelGraphic,\n quadrants={\n topLeftQ1:{},topLeftQ2:{},topLeftQ3:{},topLeftQ4:{},\n topRightQ1:{}, topRightQ2:{},topRightQ3:{}, topRightQ4:{},\n bottomLeftQ1:{}, bottomLeftQ2:{}, bottomLeftQ3:{}, bottomLeftQ4:{},\n bottomRightQ1:{}, bottomRightQ2:{}, bottomRightQ3:{}, bottomRightQ4:{}\n },\n quadrantgraphics={\n topLeftQ1:{},topLeftQ2:{},topLeftQ3:{},topLeftQ4:{},\n topRightQ1:{}, topRightQ2:{},topRightQ3:{}, topRightQ4:{},\n bottomLeftQ1:{}, bottomLeftQ2:{}, bottomLeftQ3:{}, bottomLeftQ4:{},\n bottomRightQ1:{}, bottomRightQ2:{}, bottomRightQ3:{}, bottomRightQ4:{}\n }\n try {\n // Load the modules for the ArcGIS API for JavaScript\n const [ Polygon,\n geometryEngine, SketchViewModel, Polyline, Graphic, GraphicsLayer,watchUtils\n ] = await loadModules([\n \"esri/geometry/Polygon\",\n \"esri/geometry/geometryEngine\",\n \"esri/widgets/Sketch/SketchViewModel\",\n \"esri/geometry/Polyline\",\n \"esri/Graphic\",\n \"esri/layers/GraphicsLayer\",\n \"esri/core/watchUtils\",\n \"dojo/domReady!\"\n ]);\n const unit = \"miles\";\n // Create layers\n const graphicsLayer = new GraphicsLayer();\n const graphicsLayer2 = new GraphicsLayer();\n const bufferLayer = new GraphicsLayer({\n blendMode: \"average\"\n });\n let buffercolor=\"#a4ecf0\"\n view.highlightOptions= {\n color: [204, 204, 0, 0],\n haloColor: [205,105,6, 1],\n haloOpacity: 1,\n fillOpacity: 1\n }\n this.placeitemtop('VacantSites',this.currentlayer,Layers,baseLayers,selectbaseLayers,map,Limits)\n this.unchecklayer($('#layer').val(),this.currentlayer,Layers,baseLayers,selectbaseLayers,map,Limits)\n // tools.placeitemtop('Treesites',this.currentlayer,Layers,baseLayers,selectbaseLayers,map,Limits)\n map.addMany([bufferLayer, graphicsLayer,graphicsLayer2])\n let setUpAppUI=()=> {\n // When layer is loaded, create a watcher to trigger drawing of the buffer polygon\n view.whenLayerView(baseLayers[\"VacantSites\"]).then( (layerView) =>{\n featureLayerView = layerView;\n\n pausableWatchHandle = watchUtils.pausable(\n layerView,\n \"updating\",\n async (val) => {\n if (!val) {\n await drawBufferPolygon();\n }\n }\n );\n });\n }\n\n /*****************************************************************\n * Create SketchViewModel and wire up event listeners\n *****************************************************************/\n let setUpSketch=()=>{\n sketchViewModel = new SketchViewModel({\n view: view,\n layer: graphicsLayer\n });\n\n // Listen to SketchViewModel's update event so that population pyramid chart\n // is updated as the graphics are updated\n sketchViewModel.on(\"update\", onMove);\n }\n\n /*********************************************************************\n * Edge or center graphics are being moved. Recalculate the buffer with\n * updated geometry information and run the query stats again.\n *********************************************************************/\n let onMove=(event)=>{\n // If the edge graphic is moving, keep the center graphic\n // at its initial location. Only move edge graphic\n if (\n event.toolEventInfo &&\n event.toolEventInfo.mover &&\n event.toolEventInfo.mover.attributes &&\n event.toolEventInfo.mover.attributes.edge\n ) {\n const toolType = event.toolEventInfo.type;\n if (toolType === \"move-start\") {\n centerGeometryAtStart = centerGraphic.geometry;\n }\n // keep the center graphic at its initial location when edge point is moving\n else if (toolType === \"move\" || toolType === \"move-stop\") {\n centerGraphic.geometry = centerGeometryAtStart;\n }else if(toolType===null){}\n }\n\n // the center or edge graphic is being moved, recalculate the buffer\n const vertices = [\n [centerGraphic.geometry.x, centerGraphic.geometry.y],\n [edgeGraphic.geometry.x, edgeGraphic.geometry.y]\n ];\n\n // client-side stats query of features that intersect the buffer\n calculateBuffer(vertices);\n // user is clicking on the view... call update method with the center and edge graphics\n if (event.state === \"complete\") {\n sketchViewModel.update([edgeGraphic, centerGraphic], {\n tool: \"move\"\n });\n }\n if (event.toolEventInfo!==null && event.toolEventInfo.type === \"move-stop\") {\n queryLayerTreeSites(calculateBuffer(vertices).buffer,calculateBuffer(vertices).quadrantgraphics)\n }\n }\n /*********************************************************************\n * Edge or center point is being updated. Recalculate the buffer with\n * updated geometry information.\n *********************************************************************/\n let calculateBuffer=(vertices)=>{\n // Update the geometry of the polyline based on location of edge and center points\n polylineGraphic.geometry = new Polyline({\n paths: vertices,\n spatialReference: view.spatialReference\n });\n\n // Recalculate the polyline length and buffer polygon\n const length = geometryEngine.geodesicLength(\n polylineGraphic.geometry,\n unit\n );\n const buffer = geometryEngine.geodesicBuffer(\n centerGraphic.geometry,\n length,\n unit\n );\n\n // Update the buffer polygon\n bufferGraphic.geometry = buffer;\n \n let fourthDiameter=buffer.extent.width/4\n let centeralx=buffer.extent.center.x\n let centeraly=buffer.extent.center.y\n let extentLeft=buffer.extent.xmin\n let extentRight=buffer.extent.xmax\n let extentBottom=buffer.extent.ymin\n let extentTop=buffer.extent.ymax\n let gridvertices={\n center:[centeralx,centeraly],\n topCenter:[centeralx,centeraly+fourthDiameter],\n bottomCenter:[centeralx,centeraly-fourthDiameter],\n rightCenter:[centeralx+fourthDiameter,centeraly],\n leftCenter:[centeralx-fourthDiameter,centeraly],\n topCorner:[centeralx,extentTop],\n bottomCorner:[centeralx,extentBottom],\n rightCorner:[extentRight,centeraly],\n leftCorner:[extentLeft,centeraly],\n topLeftCorner:[extentLeft,extentTop],\n topLeftTopCenter:[extentLeft+fourthDiameter,extentTop],\n topLeftCenter:[extentLeft+fourthDiameter,extentTop-fourthDiameter],\n topLeftLeftCenter:[extentLeft,centeraly+fourthDiameter],\n topRightCorner:[extentRight,extentTop],\n topRightCenter:[extentRight-fourthDiameter,extentTop-fourthDiameter],\n topRighttopCenter:[extentRight-fourthDiameter,extentTop],\n topRightRightCenter:[extentRight,extentTop-fourthDiameter],\n bottomLeftCorner:[extentLeft,extentBottom],\n bottomLeftCenter:[extentLeft+fourthDiameter,extentBottom+fourthDiameter],\n bottomLeftBottomCenter:[extentLeft+fourthDiameter,extentBottom],\n bottomLeftLeftCenter:[extentLeft,extentBottom+fourthDiameter],\n bottomRightCorner:[extentRight,extentBottom],\n bottomRightCenter:[extentRight-fourthDiameter,extentBottom+fourthDiameter],\n bottomRightBottomCenter:[extentRight-fourthDiameter,extentBottom],\n bottomRightRightCenter:[extentRight,extentBottom+fourthDiameter]\n }\n\n let quardrantrings={\n topLeftQ1:[gridvertices.topLeftCorner,gridvertices.topLeftTopCenter,gridvertices.topLeftCenter,gridvertices.topLeftLeftCenter,gridvertices.topLeftCorner],\n topLeftQ2:[gridvertices.topLeftTopCenter,gridvertices.topCorner,gridvertices.topCenter,gridvertices.topLeftCenter,gridvertices.topLeftTopCenter],\n topLeftQ3:[gridvertices.topLeftLeftCenter,gridvertices.topLeftCenter,gridvertices.leftCenter,gridvertices.leftCorner,gridvertices.topLeftLeftCenter],\n topLeftQ4:[gridvertices.topLeftCenter,gridvertices.topCenter,gridvertices.center,gridvertices.leftCenter,gridvertices.topLeftCenter],\n topRightQ1:[gridvertices.topCorner,gridvertices.topRighttopCenter,gridvertices.topRightCenter,gridvertices.topCenter,gridvertices.topCorner], \n topRightQ2:[gridvertices.topRighttopCenter,gridvertices.topRightCorner,gridvertices.topRightRightCenter,gridvertices.topRightCenter,gridvertices.topRighttopCenter],\n topRightQ3:[gridvertices.topCenter,gridvertices.topRightCenter,gridvertices.rightCenter,gridvertices.center,gridvertices.topCenter], \n topRightQ4:[gridvertices.topRightCenter,gridvertices.topRightRightCenter,gridvertices.rightCorner,gridvertices.rightCenter,gridvertices.topRightCenter],\n bottomLeftQ1:[gridvertices.leftCorner,gridvertices.leftCenter,gridvertices.bottomLeftCenter,gridvertices.bottomLeftLeftCenter,gridvertices.leftCorner],\n bottomLeftQ2:[gridvertices.leftCenter,gridvertices.center,gridvertices.bottomCenter,gridvertices.bottomLeftCenter,gridvertices.leftCenter],\n bottomLeftQ3:[gridvertices.bottomLeftLeftCenter,gridvertices.bottomLeftCenter,gridvertices.bottomLeftBottomCenter,gridvertices.bottomLeftCorner,gridvertices.bottomLeftLeftCenter],\n bottomLeftQ4:[gridvertices.bottomLeftCenter,gridvertices.bottomCenter,gridvertices.bottomCorner,gridvertices.bottomLeftBottomCenter,gridvertices.bottomLeftCenter],\n bottomRightQ1:[gridvertices.center,gridvertices.rightCenter,gridvertices.bottomRightCenter,gridvertices.bottomCenter,gridvertices.center], \n bottomRightQ2:[gridvertices.rightCenter,gridvertices.rightCorner,gridvertices.bottomRightRightCenter,gridvertices.bottomRightCenter,gridvertices.rightCenter], \n bottomRightQ3:[gridvertices.bottomCenter,gridvertices.bottomRightCenter,gridvertices.bottomRightBottomCenter,gridvertices.bottomCorner,gridvertices.bottomCenter], \n bottomRightQ4:[gridvertices.bottomRightCenter,gridvertices.bottomRightRightCenter,gridvertices.bottomRightCorner,gridvertices.bottomRightBottomCenter,gridvertices.bottomRightCenter] \n }\n for( let quadrantpolygons in quadrants){\n quadrantgraphics[quadrantpolygons].geometry= new Polygon({\n rings: quardrantrings[quadrantpolygons],\n spatialReference: view.spatialReference\n });\n }\n\n // Update label graphic to show the length of the polyline\n labelGraphic.geometry = edgeGraphic.geometry;\n labelGraphic.symbol = {\n type: \"text\",\n color: buffercolor,\n text: length.toFixed(2) + \" miles\",\n haloColor: \"black\",\n haloSize: \"3px\",\n xoffset: 50,\n yoffset: 10,\n font: {\n // autocast as Font\n size: 14,\n family: \"sans-serif\",\n weight: \"bold\"\n }\n }\n return {buffer:buffer,quadrantgraphics:quadrantgraphics}\n }\n\n /*********************************************************************\n * Spatial query the census tracts feature layer view for statistics\n * using the updated buffer polygon.\n *********************************************************************/\n let queryQuadrants=async (layer,quadrantGeomerty)=>{\n let query = baseLayers[\"Treesites\"].createQuery();\n query.geometry = quadrantGeomerty;\n query.spatialRelationship = \"intersects\";\n let treemap\n await layer.queryFeatures(query).then((response)=>{\n let listofTrees=[]\n response.features.forEach(element => {\n if(element.attributes[botanicalVar].includes(UnassignedTrees)){\n }else{\n listofTrees.push(element.attributes[botanicalVar])\n }\n });\n treemap = quadrantmaptrees(listofTrees)\n })\n return await treemap\n }\n let speciesCount\n let queryLayerTreeSites=async (buffer,quardrants)=> {\n let quardrantsTress= []\n\n for(let quadrant in quardrants){\n quardrantsTress.push(await queryQuadrants(baseLayers[\"Treesites\"],quardrants[quadrant].geometry))\n }\n\n let queryBuffer = baseLayers[\"Treesites\"].createQuery();\n queryBuffer.geometry = buffer;\n queryBuffer.spatialRelationship = \"intersects\";\n \n let buffermap\n await baseLayers[\"Treesites\"].queryFeatures(queryBuffer).then( (response)=> {\n let listofTrees = []\n response.features.forEach(element => {\n if(element.attributes[botanicalVar].includes(UnassignedTrees)){\n }else{\n listofTrees.push(element.attributes[botanicalVar])\n }\n });\n buffermap = maptrees(listofTrees)\n })\n speciesCount=createSpeicesCount( await buffermap, await quardrantsTress)\n createpiechart( await buffermap, await speciesCount)\n }\n let createpiechart=(buffermap,treeCount)=>{\n let datavalues=[],datalabels=[],count=0,othervalue=0;\n if(buffermap!==undefined){\n buffermap.forEach((key,value)=>{\n if(count<=8){\n count++\n datavalues.push(key)\n datalabels.push(value)\n }else{\n othervalue+=key\n }\n })\n datavalues.push(othervalue)\n datalabels.push(\"All other species\")\n }\n \n var data = [{\n values:datavalues,\n labels:datalabels,\n type: 'pie',\n textposition:\"inside\",\n }];\n \n var layout = {\n height: 350,\n width: 250,\n showlegend: false,\n margin:{b:0,l:0,r:0,t:50},\n colorway : ['#7cb054', '#b0547c', '#b06e54', '#8854b0', '#54b060', '#aab054', '#7b9666'],\n title:{\n yanchor:\"top\",\n xanchor:\"center\",\n text:\"Species Density\"}\n };\n Plotly.newPlot('plotlypiegraph', data, layout);\n }\n let createSpeicesCount= (buffermap:Map,quardrantsTress:Array<[]>)=>{\n // {treename:{totalCount:N,totalQuadrants:N,frequancy:N,abundance:N}}\n let numberOfQuadrants=16\n let treeCount={all:{totalFrequency:0,totalSpecies:0,totalTrees:0,importanceValueIndex:0}}\n if(buffermap!==undefined){\n buffermap.forEach((key,value)=>{\n treeCount[value]={totalCount:key,totalQuadrants:0,frequancy:0,abundance:0}\n treeCount.all.totalSpecies++\n treeCount.all.totalTrees+=key\n })\n }\n quardrantsTress.forEach((map)=>{\n map.forEach((k,v)=>{\n let species:any=v\n if(Object.keys(treeCount).includes(species)){\n treeCount[species].totalQuadrants++\n treeCount[species].frequancy=treeCount[species].totalQuadrants/numberOfQuadrants\n treeCount.all.totalFrequency+=treeCount[species].frequancy\n treeCount[species].abundance=treeCount[species].totalCount/treeCount[species].totalQuadrants\n }\n })\n })\n for( let species in treeCount){\n if(species!=\"all\"){\n treeCount[species].relativeDensity=(treeCount[species].totalCount/treeCount.all.totalTrees)*100\n treeCount[species].relativeFrequency=(treeCount[species].frequancy/treeCount.all.totalFrequency)*100\n treeCount[species].relativeAbundance=(treeCount[species].abundance/treeCount.all.totalSpecies)*100\n treeCount[species].importanceValueIndex=treeCount[species].relativeDensity+treeCount[species].relativeFrequency+treeCount[species].relativeAbundance\n treeCount.all.importanceValueIndex+=treeCount[species].importanceValueIndex}\n }\n for( let species in treeCount){\n treeCount[species].importanceValueIndexPercent=(treeCount[species].importanceValueIndex/treeCount.all.importanceValueIndex)*100\n }\n let itemsFormatted = [];\n \n return treeCount\n }\n const quadrantmaptrees = arr => {\n let mymap = arr.reduce((acc, e) => acc.set(e, (acc.get(e) || 0) + 1), new Map)\n if(mymap.size>1){\n let mymap2 = new Map([...mymap.entries()].sort((a, b) => b[1] - a[1]))\n return mymap2\n }\n return mymap\n }\n const maptrees = arr => {\n let mymap = arr.reduce((acc, e) => acc.set(e, (acc.get(e) || 0) + 1), new Map)\n let mymap2\n if(mymap.size>0){\n mymap2 = new Map([...mymap.entries()].sort((a, b) => b[1] - a[1]))\n this.diversityobj = {\n richness:mymap2.size,\n total:arr.length\n }\n return mymap2}\n this.diversityobj = {\n richness:mymap.size,\n total:arr.length\n }\n return mymap2\n }\n /***************************************************\n * Draw the buffer polygon when application loads or\n * when user searches for a new location\n **************************************************/\n let drawBufferPolygon=()=>{\n // When pause() is called on the watch handle, the callback represented by the\n // watch is no longer invoked, but is still available for later use\n // this watch handle will be resumed when user searches for a new location\n pausableWatchHandle.pause();\n\n // Initial location for the center, edge and polylines on the view\n const viewCenter = view.center.clone();\n const centerScreenPoint = view.toScreen(viewCenter);\n const centerPoint = view.toMap({\n x: centerScreenPoint.x,\n y: centerScreenPoint.y\n });\n const edgePoint = view.toMap({\n x: centerScreenPoint.x + 40,\n y: centerScreenPoint.y - 20\n });\n\n // Store updated vertices\n const vertices = [\n [centerPoint.x, centerPoint.y],\n [edgePoint.x, edgePoint.y]\n ];\n\n // Create center, edge, polyline and buffer graphics for the first time\n if (!centerGraphic) {\n const polyline = new Polyline({\n paths: vertices,\n spatialReference: view.spatialReference\n });\n\n // get the length of the initial polyline and create buffer\n const length = geometryEngine.geodesicLength(polyline, unit);\n const buffer = geometryEngine.geodesicBuffer(\n centerPoint,\n length,\n unit\n );\n let fourthDiameter=buffer.extent.width/4\n let centeralx=buffer.extent.center.x\n let centeraly=buffer.extent.center.y\n let extentLeft=buffer.extent.xmin\n let extentRight=buffer.extent.xmax\n let extentBottom=buffer.extent.ymin\n let extentTop=buffer.extent.ymax\n let gridvertices={\n center:[centeralx,centeraly],\n topCenter:[centeralx,centeraly+fourthDiameter],\n bottomCenter:[centeralx,centeraly-fourthDiameter],\n rightCenter:[centeralx+fourthDiameter,centeraly],\n leftCenter:[centeralx-fourthDiameter,centeraly],\n topCorner:[centeralx,extentTop],\n bottomCorner:[centeralx,extentBottom],\n rightCorner:[extentRight,centeraly],\n leftCorner:[extentLeft,centeraly],\n topLeftCorner:[extentLeft,extentTop],\n topLeftTopCenter:[extentLeft+fourthDiameter,extentTop],\n topLeftCenter:[extentLeft+fourthDiameter,extentTop-fourthDiameter],\n topLeftLeftCenter:[extentLeft,centeraly+fourthDiameter],\n topRightCorner:[extentRight,extentTop],\n topRightCenter:[extentRight-fourthDiameter,extentTop-fourthDiameter],\n topRighttopCenter:[extentRight-fourthDiameter,extentTop],\n topRightRightCenter:[extentRight,extentTop-fourthDiameter],\n bottomLeftCorner:[extentLeft,extentBottom],\n bottomLeftCenter:[extentLeft+fourthDiameter,extentBottom+fourthDiameter],\n bottomLeftBottomCenter:[extentLeft+fourthDiameter,extentBottom],\n bottomLeftLeftCenter:[extentLeft,extentBottom+fourthDiameter],\n bottomRightCorner:[extentRight,extentBottom],\n bottomRightCenter:[extentRight-fourthDiameter,extentBottom+fourthDiameter],\n bottomRightBottomCenter:[extentRight-fourthDiameter,extentBottom],\n bottomRightRightCenter:[extentRight,extentBottom+fourthDiameter]\n }\n\n let quardrantrings={\n topLeftQ1:[gridvertices.topLeftCorner,gridvertices.topLeftTopCenter,gridvertices.topLeftCenter,gridvertices.topLeftLeftCenter,gridvertices.topLeftCorner],\n topLeftQ2:[gridvertices.topLeftTopCenter,gridvertices.topCorner,gridvertices.topCenter,gridvertices.topLeftCenter,gridvertices.topLeftTopCenter],\n topLeftQ3:[gridvertices.topLeftLeftCenter,gridvertices.topLeftCenter,gridvertices.leftCenter,gridvertices.leftCorner,gridvertices.topLeftLeftCenter],\n topLeftQ4:[gridvertices.topLeftCenter,gridvertices.topCenter,gridvertices.center,gridvertices.leftCenter,gridvertices.topLeftCenter],\n topRightQ1:[gridvertices.topCorner,gridvertices.topRighttopCenter,gridvertices.topRightCenter,gridvertices.topCenter,gridvertices.topCorner], \n topRightQ2:[gridvertices.topRighttopCenter,gridvertices.topRightCorner,gridvertices.topRightRightCenter,gridvertices.topRightCenter,gridvertices.topRighttopCenter],\n topRightQ3:[gridvertices.topCenter,gridvertices.topRightCenter,gridvertices.rightCenter,gridvertices.center,gridvertices.topCenter], \n topRightQ4:[gridvertices.topRightCenter,gridvertices.topRightRightCenter,gridvertices.rightCorner,gridvertices.rightCenter,gridvertices.topRightCenter],\n bottomLeftQ1:[gridvertices.leftCorner,gridvertices.leftCenter,gridvertices.bottomLeftCenter,gridvertices.bottomLeftLeftCenter,gridvertices.leftCorner],\n bottomLeftQ2:[gridvertices.leftCenter,gridvertices.center,gridvertices.bottomCenter,gridvertices.bottomLeftCenter,gridvertices.leftCenter],\n bottomLeftQ3:[gridvertices.bottomLeftLeftCenter,gridvertices.bottomLeftCenter,gridvertices.bottomLeftBottomCenter,gridvertices.bottomLeftCorner,gridvertices.bottomLeftLeftCenter],\n bottomLeftQ4:[gridvertices.bottomLeftCenter,gridvertices.bottomCenter,gridvertices.bottomCorner,gridvertices.bottomLeftBottomCenter,gridvertices.bottomLeftCenter],\n bottomRightQ1:[gridvertices.center,gridvertices.rightCenter,gridvertices.bottomRightCenter,gridvertices.bottomCenter,gridvertices.center], \n bottomRightQ2:[gridvertices.rightCenter,gridvertices.rightCorner,gridvertices.bottomRightRightCenter,gridvertices.bottomRightCenter,gridvertices.rightCenter], \n bottomRightQ3:[gridvertices.bottomCenter,gridvertices.bottomRightCenter,gridvertices.bottomRightBottomCenter,gridvertices.bottomCorner,gridvertices.bottomCenter], \n bottomRightQ4:[gridvertices.bottomRightCenter,gridvertices.bottomRightRightCenter,gridvertices.bottomRightCorner,gridvertices.bottomRightBottomCenter,gridvertices.bottomRightCenter] \n }\n for( let quadrantpolygons in quadrants){\n quadrants[quadrantpolygons]= new Polygon({\n rings: quardrantrings[quadrantpolygons],\n spatialReference: view.spatialReference\n });\n }\n\n // Create the graphics representing the line and buffer\n const pointSymbol = {\n type: \"simple-marker\",\n style: \"circle\",\n size: 10,\n color: [0, 255, 255, 0.5]\n };\n centerGraphic = new Graphic({\n geometry: centerPoint,\n symbol: pointSymbol,\n attributes: {\n center: \"center\"\n }\n });\n\n edgeGraphic = new Graphic({\n geometry: edgePoint,\n symbol: pointSymbol,\n attributes: {\n edge: \"edge\"\n }\n });\n\n polylineGraphic = new Graphic({\n geometry: polyline,\n symbol: {\n type: \"simple-line\",\n color: [254, 254, 254, 1],\n width: 2.5\n }\n });\n\n bufferGraphic = new Graphic({\n geometry: buffer,\n symbol: {\n type: \"simple-fill\",\n color: buffercolor,\n outline: {\n color: \"white\",\n width: 6\n }\n }\n });\n for (let quadrantextent in quadrantgraphics){\n quadrantgraphics[quadrantextent]= new Graphic({\n visible:false,\n geometry: quadrants[quadrantextent],\n symbol: {\n type: \"simple-fill\",\n color: \"transparent\",\n outline: {\n color: \"transparent\",\n width: 6\n }\n }\n });\n }\n \n labelGraphic = labelLength(edgePoint, length);\n\n // Add graphics to layer\n graphicsLayer.addMany([\n centerGraphic,\n edgeGraphic,\n ]);\n graphicsLayer.addMany(\n Object.values(quadrantgraphics)\n );\n graphicsLayer2.addMany([\n polylineGraphic,\n labelGraphic,\n ]\n );\n // once center and edge point graphics are added to the layer,\n // call sketch's update method pass in the graphics so that users\n // can just drag these graphics to adjust the buffer\n setTimeout( ()=> {\n sketchViewModel.update([edgeGraphic, centerGraphic], {\n tool: \"move\"\n });\n }, 500);\n bufferLayer.effect = \"blur(5px) brightness(1.3) drop-shadow(0, 0px, 19px black) drop-shadow(0, 0px, 19px black)\";\n bufferLayer.addMany([bufferGraphic]);\n }\n // Move the center and edge graphics to the new location returned from search\n else {\n centerGraphic.geometry = centerPoint;\n edgeGraphic.geometry = edgePoint;\n }\n\n // Query features that intersect the buffer\n calculateBuffer(vertices);\n } \n \n // Update UI\n setUpAppUI();\n setUpSketch();\n if(turndiversityBackOn){sketchViewModel.update([edgeGraphic, centerGraphic], {\n tool: \"move\"\n });}\n \n // Label polyline with its length\n let labelLength=(geom, length)=>{\n return new Graphic({\n geometry: geom,\n symbol: {\n type: \"text\",\n color: buffercolor,\n text: length.toFixed(2) + \" miles\",\n haloColor: \"black\",\n haloSize: \"1px\",\n xoffset: 50,\n yoffset: 10,\n font: {\n // autocast as Font\n size: 14,\n family: \"sans-serif\"\n }\n }\n });\n }\n }catch (error) {\n console.log('EsriLoader: ', error);\n }\n}","import { AfterViewInit, Component, ElementRef, EventEmitter, Input, Output, ViewChild } from '@angular/core';\n\ndeclare const $: any;\n\nconst steps = ['None', 'Low', 'High'];\n\n@Component({\n selector: 'app-priority-slider',\n templateUrl: './priority-slider.component.html',\n styleUrls: ['./priority-slider.component.scss']\n})\nexport class PrioritySliderComponent implements AfterViewInit {\n @ViewChild('weightSlider') weightSlider: ElementRef;\n\n @Input() name: string;\n @Input() tooltip: string;\n\n private _value = 1;\n @Output() valueChange = new EventEmitter();\n @Input()\n get value(): number {\n return this._value;\n }\n set value(value: number) {\n this._value = value;\n this.valueChange.emit(value);\n if (this.weightSlider) {\n $(this.weightSlider.nativeElement).slider('value', value);\n }\n }\n\n public openTooltip = false;\n\n ngAfterViewInit() {\n const slider = this.weightSlider.nativeElement;\n $(slider).slider({\n max: 2,\n value: this.value,\n slide: (event, ui) => {\n this._value = ui.value;\n this.valueChange.emit(ui.value);\n // $('.Weight-slider').change()\n },\n change: (event, ui) => {\n this._value = ui.value;\n this.valueChange.emit(ui.value);\n // $('.Weight-slider').change()\n }\n })\n .slider('pips', {\n rest: 'label',\n labels: steps\n });\n }\n constructor() { }\n}\n","
\n\t
\n\t\t{{ name }}\n\t\t
\n\t\t\t\n\t\t
\n\t
\n\t
\n\t\t\n\t\t
\n\t
\n
\n
\n\t
{{tooltip}}
\n
","import { Component, EventEmitter, OnInit, Output } from '@angular/core';\nimport { ProjectService } from '../services/project.service';\n\n@Component({\n selector: 'app-login-forget-pass',\n templateUrl: './login-forget-pass.component.html',\n styleUrls: ['./login-forget-pass.component.scss']\n})\nexport class LoginForgetPassComponent implements OnInit {\n @Output() closeevent= new EventEmitter()\n\n constructor(private project:ProjectService) { }\n\n async sendforgetpass(username){\n let emailsent:any= await this.project.sendpasswordemail({\"username\":username})\n console.log(emailsent.message)\n this.closeevent.emit()\n }\n close(){\n this.closeevent.emit()\n }\n ngOnInit(): void {\n }\n\n}\n","
To rest password, please enter the username linked to the account
\n \n
\n \n \n
","import { Component, OnInit, Input } from '@angular/core';\n\n@Component({\n selector: 'app-toolspopup',\n templateUrl: './toolspopup.component.html',\n styleUrls: ['./toolspopup.component.scss']\n})\nexport class ToolspopupComponent implements OnInit {\n\n @Input() currentoption\n @Input() currentoptionName\n @Input() currentlayer\n @Input() baseLayersRef\n @Input() layerfields\n @Input() setSummaryPie\n @Input() diversityobj\n @Input() clearQuery: () => void;\n @Input() addlayer: () => void;\n @Input() copyids: () => void;\n @Input() diversitytool: () => void;\n @Input() closediversity: () => void;\n @Input() showDiversitytable: () => void;\n\n constructor() { }\n\n displaystyle(name){\n if(name==this.currentoption){\n return \"block\"\n }else return \"none\"\n }\n\n ngOnInit(): void {\n }\n\n}\n","
\n
{{currentoptionName}}
\n
\n\n\n\n\n","\nimport { Calculations } from './app.calculations';\nimport { Globals } from './globals';\nimport * as indexfunctions from './indexfunctions'\ndeclare let $:any,numeral;\n\n\nexport class resourceReport {\n clearhighlight\n public isUK = JSON.parse(window.sessionStorage.getItem(\"isUK\"));\n constructor(clearhighlight, private globals:Globals, private calc:Calculations){\n this.clearhighlight=clearhighlight\n }\n sum = (a, b) => a + b;\n renameNAN(number){\n if(isNaN(number)||number == Infinity){\n number = 0\n }\n return number\n }\n filterAreasShown(){\n this.calc.findArray()\n let min = $(\"#min\").val();\n let min2 = $(\"#min2\").val();\n let min3 = $(\"#min3\").val();\n let max = $(\"#max\").val();\n let max2 = $(\"#max2\").val();\n let max3 = $(\"#max3\").val();\n let filter = $(\"#filter\").val();\n this.globals.globalvars.filteredlayer = []\n let showdatafor\n if (document.getElementById(\"prioritize\").style.display == \"block\") {\n showdatafor = $(\"#Prioritylayer\").val()\n } else {\n showdatafor = $(\"#layer\").val()\n }\n if (showdatafor == $(\"#Prioritylayer\").val()) {\n for (let x in this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()]) {\n if(this.globals.constvars.haschangelayer == true){\n if (isNaN(this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][0].result)) {\n if (this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][x][this.globals.mapvars.UTCPer] >= min && this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][x][this.globals.mapvars.UTCPer] <= max &&\n this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][x][this.globals.mapvars.UTCPoss] >= min2 && this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][x][this.globals.mapvars.UTCPoss] <= max2 &&\n this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][x][this.globals.mapvars.UTCCha] >= min3 && this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][x][this.globals.mapvars.UTCCha] <= max3) {\n this.globals.globalvars.filteredlayer.push(this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][x])\n }\n } else if (this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][x][this.globals.mapvars.UTCPer] >= min && this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][x][this.globals.mapvars.UTCPer] <= max &&\n this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][x][this.globals.mapvars.UTCPoss] >= min2 && this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][x][this.globals.mapvars.UTCPoss] <= max2 &&\n this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][x][this.globals.mapvars.UTCCha] >= min3 && this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][x][this.globals.mapvars.UTCCha] <= max3 &&\n this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][x].result >= filter) {\n this.globals.globalvars.filteredlayer.push(this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][x])\n }\n }else{\n if (isNaN(this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][0].result)) {\n if (this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][x][this.globals.mapvars.UTCPer] >= min && this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][x][this.globals.mapvars.UTCPer] <= max &&\n this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][x][this.globals.mapvars.UTCPoss] >= min2 && this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][x][this.globals.mapvars.UTCPoss] <= max2) {\n this.globals.globalvars.filteredlayer.push(this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][x])\n }\n } else if (this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][x][this.globals.mapvars.UTCPer] >= min && this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][x][this.globals.mapvars.UTCPer] <= max &&\n this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][x][this.globals.mapvars.UTCPoss] >= min2 && this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][x][this.globals.mapvars.UTCPoss] <= max2 &&\n this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][x].result >= filter) {\n this.globals.globalvars.filteredlayer.push(this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][x])\n }\n }\n }\n if (document.getElementById(\"prioritize\").style.display !== \"block\"&&!this.globals.mapvars.prioritylayers.includes($(\"#layer\").val())) {\n for (let x in this.globals.globalvars.filteredlayer) {\n this.globals.globalvars.filteredlayer[x].rank = \"N/A\"\n }\n }else{this.calc.addrankings(this.globals.globalvars.filteredlayer)}\n } else {\n let data = this.globals.Data[$(\"#layer\").val()]\n for (let x in data) {\n if(this.globals.constvars.haschangelayer == true){\n if (data[x][this.globals.mapvars.UTCPer] >= min && data[x][this.globals.mapvars.UTCPer] <= max &&\n data[x][this.globals.mapvars.UTCPoss] >= min2 && data[x][this.globals.mapvars.UTCPoss] <= max2 &&\n data[x][this.globals.mapvars.UTCCha] >= min3 && data[x][this.globals.mapvars.UTCCha] <= max3\n ) {\n data[x].rank = \"N/A\"\n this.globals.globalvars.filteredlayer.push(data[x])\n }\n }\n else{\n if (isNaN(data[0].result)) {\n if (data[x][this.globals.mapvars.UTCPer] >= min && data[x][this.globals.mapvars.UTCPer] <= max &&\n data[x][this.globals.mapvars.UTCPoss] >= min2 && data[x][this.globals.mapvars.UTCPoss] <= max2\n ) {\n data[x].rank = \"N/A\"\n this.globals.globalvars.filteredlayer.push(data[x])\n }\n }\n }\n }\n }\n let tempfilter = []\n if(this.globals.advquery == true){\n this.globals.globalvars.filteredlayer.forEach(poly=>{\n if(this.globals.stickypolynames.includes(poly[\"NAME\"])){\n tempfilter.push(poly)\n }\n })\n this.globals.globalvars.filteredlayer = tempfilter\n this.clearhighlight()\n }\n return this.globals.globalvars.filteredlayer\n }\n\n growthyears(){\n let currentyear = new Date().getFullYear()\n let timeslider = Number($(\"#TimeSlider\").slider('value'))\n let timegoalslider = Number($('#TimegoalSlider').slider('value')-currentyear) \n this.globals.globalvars.growthyears=timegoalslider-timeslider\n return timegoalslider-timeslider\n }\n getTreeResources(){\n let currentyear = new Date().getFullYear()\n this.globals.globalvars.ModeledUTCobj = []\n this.globals.globalvars.TotalModeledTrees = 0\n let ArrayModeledTrees = []\n let arrayTotalAcres = []\n let arrayCurrentTreeAcres = []\n let arrayModeledTreeAcres = []\n let arraystartingtrees=[]\n let ModeledTreePercent\n let annualplant\n let modeledTreeAcresAnnual\n let modeledTreePercentAnnual\n let targetSliderValue = Number($(\"#targetSlider\").slider('value'));\n let increaseSliderValue = Number($(\"#increaseSlider\").slider('value'));\n let averageSliderValue = (Number($('#SMaverageSlider').slider('value'))*($('#sizeDistValmin').val()/100)+(Number($('#MEDaverageSlider').slider('value'))*$('#sizeDistValmd').val()/100)+(Number($('#LGaverageSlider').slider('value'))*($('#sizeDistValmax').val()/100)));\n let mortalitySliderValue = Number($('#mortalitySlider').slider('value'));\n let natgrowth = Number($(\"#NatGrowthSlider\").slider('value')/100)\n let mortrate = (Number($('#mortalitySlider').slider('value'))/100);\n let costSliderValue = (Number($('#AveCost').val())+Number($('#AveManCost').val()));\n let timeslider = Number($(\"#TimeSlider\").slider('value'))\n let timegoalslider = Number($('#TimegoalSlider').slider('value')-currentyear) \n let growthyears=timegoalslider-timeslider\n let growthft = averageSliderValue\n if(timeslider<2){\n growthft = averageSliderValue\n }else if(timeslider<30){\n growthft = averageSliderValue+1\n }else{\n growthft = timegoalslider+1+(timeslider-29)\n }\n for (let x = 0; x < this.globals.globalvars.filteredlayer.length; x++) {\n let style = \"color:inherit;\"\n let b = this.globals.globalvars.filteredlayer[x][this.globals.mapvars.UTCPer]\n let b_static = this.globals.globalvars.filteredlayer[x][this.globals.mapvars.UTCPer]\n let geom = this.globals.globalvars.filteredlayer[x][this.globals.mapvars.geomAcres]\n let polytreeacres = this.globals.globalvars.filteredlayer[x][this.globals.mapvars.TreeAcres]\n //currentacres2 serv\n \n let currentacres = this.globals.globalvars.filteredlayer[x][this.globals.mapvars.TreeAcres]\n let currentacres2 = currentacres*Math.pow(1+natgrowth,timegoalslider)\n let goalValue = $('#goal').val();\n if (goalValue == \"targetSliderDiv\") {\n if (b >= targetSliderValue) {\n b = 0\n b_static = 0\n } else {\n b = ((targetSliderValue) / 100)-currentacres2/geom\n b_static = ((targetSliderValue) / 100)-currentacres/geom\n }\n } else {\n if ((this.globals.globalvars.filteredlayer[x][this.globals.mapvars.UTCPer] + increaseSliderValue) < 100) {\n b = increaseSliderValue / 100\n b_static = increaseSliderValue / 100\n } else {\n b = ((this.globals.globalvars.filteredlayer[x][this.globals.mapvars.UTCPer] + increaseSliderValue) - 100 - increaseSliderValue) / 100\n b_static = ((this.globals.globalvars.filteredlayer[x][this.globals.mapvars.UTCPer] + increaseSliderValue) - 100 - increaseSliderValue) / 100\n }\n }\n if((b*100)>=this.globals.globalvars.filteredlayer[x][this.globals.mapvars.UTCPoss]){\n b=(this.globals.globalvars.filteredlayer[x][this.globals.mapvars.UTCPoss]/100)\n b_static=(this.globals.globalvars.filteredlayer[x][this.globals.mapvars.UTCPoss]/100)\n style = \"color:red;\"\n }\n\n let finalpercent = (((currentacres/geom) * 1000) / 10) + ((b_static * 1000) / 10)\n let neededac = b*geom\n let Finalac = neededac + currentacres\n let needsqft = this.isUK == true? neededac*10000 : neededac*43560\n let ft = growthft\n let sqft = Math.PI*Math.pow(ft/2,2)\n let totaltreesminmort = needsqft/sqft\n let deathtrees = totaltreesminmort * mortrate\n let totaltreesplusmort = totaltreesminmort + deathtrees\n if (totaltreesplusmort < 0){\n totaltreesplusmort = 0\n }else{\n totaltreesplusmort = totaltreesminmort + deathtrees\n }\n //let totaltreesplusmort = totaltreesminmort + deathtrees\n let anntrees = totaltreesplusmort / timeslider\n let anntrees2 = anntrees\n\n //if(growthyears<2){\n // anntrees2 = anntrees + (growthyears/anntrees)\n //}else if(growthyears < 10 && growthyears >= 2){\n // anntrees2 = anntrees + (growthyears/anntrees)\n //}else if(growthyears < 30 && growthyears >= 10){\n // anntrees2 = anntrees + (growthyears/anntrees)\n //}else{\n // anntrees2 = anntrees + (anntrees/growthyears)\n //}\n\n let a = this.globals.globalvars.filteredlayer[x][this.globals.mapvars.TreeAcres]\n let a2 = this.globals.globalvars.filteredlayer[x][this.globals.mapvars.geomAcres]\n let c = a2 * b\n let d = c + a\n let e = averageSliderValue\n let f = Math.PI * Math.pow((e / 2), 2)\n let g = this.isUK == true? f / 10000 : f / 43560\n let h = c / g\n let j = mortrate * h\n let k = j + h\n let l = costSliderValue * Math.round(totaltreesplusmort)\n if (l < 0){\n l = 0\n }else{\n l = costSliderValue * Math.round(totaltreesplusmort)\n }\n\n let m = costSliderValue * Math.round(anntrees)\n if (m < 0){\n m = 0\n }else{\n m = costSliderValue * Math.round(anntrees)\n }\n \n this.globals.globalvars.ModeledUTCobj[x] = {\n \"id\": this.globals.globalvars.filteredlayer[x].NAME, \n \"Rank\": this.globals.globalvars.filteredlayer[x].rank, \n \"AreaAcres\": Math.round(this.globals.globalvars.filteredlayer[x][this.globals.mapvars.geomAcres]),\n \"TreeAcres\": Math.round(currentacres),\n \"CurrentPct\": (Math.round((currentacres/this.globals.globalvars.filteredlayer[x][this.globals.mapvars.geomAcres]) * 1000) / 10).toFixed(1),\n \"PercentChange\": \"\"+(Math.round(b_static * 1000) / 10).toFixed(1)+\"\",\n \"ProjectedPect\":finalpercent.toFixed(1), \n \"AddedAcres\": Math.round(neededac),\n \"ProjectedAcres\": Math.round(Finalac),\n \"AverageCrown\": Math.round(averageSliderValue), \n \"mortRate\": (mortalitySliderValue).toFixed(1),\n \"totalTrees\": Math.round(totaltreesplusmort),\n \"annualtrees\": this.renameNAN(anntrees2),\n \"TotalCost\": Math.round(l * 100) / 100,\n \"annualcost\": Math.round(m * 100) / 100,\n \"zoom\": \"\",\n \"PercentChangecsv\": (Math.round(b * 1000) / 10).toFixed(1),\n \"Orginalacres\": polytreeacres,\n }\n this.globals.globalvars.filteredlayer[x].ProjectedAcres = Math.round(d * 100) / 100\n this.globals.globalvars.filteredlayer[x].addedacres = Math.round(neededac)\n \n ArrayModeledTrees.push(this.globals.globalvars.ModeledUTCobj[x].totalTrees)\n arrayTotalAcres.push(this.globals.globalvars.ModeledUTCobj[x].AreaAcres)\n arrayCurrentTreeAcres.push(this.globals.globalvars.ModeledUTCobj[x].TreeAcres)\n arrayModeledTreeAcres.push(this.globals.globalvars.ModeledUTCobj[x].ProjectedAcres)\n arraystartingtrees.push(this.globals.globalvars.ModeledUTCobj[x].Orginalacres)\n }\n this.globals.globalvars.startingtrees =arraystartingtrees.reduce(this.sum)\n this.globals.globalvars.TotalModeledTrees = ArrayModeledTrees.reduce(this.sum);\n this.globals.globalvars.TotalAcres = arrayTotalAcres.reduce(this.sum);\n this.globals.globalvars.CurrentTreeAcres = arrayCurrentTreeAcres.reduce(this.sum);\n this.globals.globalvars.CurrentTreePercent = (this.globals.globalvars.CurrentTreeAcres / this.globals.globalvars.TotalAcres) * 100;\n this.globals.globalvars.ModeledTreeAcres = arrayModeledTreeAcres.reduce(this.sum);\n ModeledTreePercent = (this.globals.globalvars.ModeledTreeAcres / this.globals.globalvars.TotalAcres) * 100\n annualplant = this.globals.globalvars.TotalModeledTrees/timeslider\n modeledTreeAcresAnnual= this.globals.globalvars.ModeledTreeAcres/timeslider\n modeledTreePercentAnnual= (modeledTreeAcresAnnual / this.globals.globalvars.TotalAcres) * 100\n this.globals.globalvars.ModeledTreeAcresqwTime = arrayModeledTreeAcres.reduce(this.sum);\n this.globals.globalvars.ModeledTreePercentwTime = (this.globals.globalvars.ModeledTreeAcresqwTime / this.globals.globalvars.TotalAcres)*100\n this.globals.globalvars.totaladdedacres = this.globals.globalvars.ModeledTreeAcres - this.globals.globalvars.CurrentTreeAcres\n $('#AnnualTrees').html(numeral(Math.round(annualplant)).format('0,0'))\n // fillmatrix()\n //csv download\n let headers = this.isUK == true? {\n id: 'Name'.replace(/,/g, ''), // remove commas to avoid errors\n Rank: \"Rank\".replace(/,/g, ''),\n AreaAcres: \"Geometry (ha)\".replace(/,/g, ''),\n TreeAcres: \"Tree Area (ha)\".replace(/,/g, ''),\n CurrentPct: \"Current Tree (%)\".replace(/,/g, ''),\n PercentChange: \"Change (%)\".replace(/,/g, ''),\n AddedAcres: \"Added Tree (ha)\".replace(/,/g, ''),\n ProjectedAcres: \"Projected Tree (ha)\".replace(/,/g, ''),\n AverageCrown: \"Crown Diameter (m)\".replace(/,/g, ''),\n mortRate: \"Mortality (%)\".replace(/,/g, ''),\n totalTrees: \"Required Trees Plus Mortality\".replace(/,/g, ''),\n annualtrees: \"Annual Trees\".replace(/,/g, ''),\n TotalCost: \"Investment\".replace(/,/g, ''),\n annualcost: \"Annual Investment\".replace(/,/g, '')\n }:{\n id: 'Name'.replace(/,/g, ''), // remove commas to avoid errors\n Rank: \"Rank\".replace(/,/g, ''),\n AreaAcres: \"Geometry (ac)\".replace(/,/g, ''),\n TreeAcres: \"Tree Area (ac)\".replace(/,/g, ''),\n CurrentPct: \"Current Tree (%)\".replace(/,/g, ''),\n PercentChange: \"Change (%)\".replace(/,/g, ''),\n AddedAcres: \"Added Tree (ac)\".replace(/,/g, ''),\n ProjectedAcres: \"Projected Tree (ac)\".replace(/,/g, ''),\n AverageCrown: \"Crown Diameter (ft)\".replace(/,/g, ''),\n mortRate: \"Mortality (%)\".replace(/,/g, ''),\n totalTrees: \"Required Trees Plus Mortality\".replace(/,/g, ''),\n annualtrees: \"Annual Trees\".replace(/,/g, ''),\n TotalCost: \"Investment\".replace(/,/g, ''),\n annualcost: \"Annual Investment\".replace(/,/g, '')\n };\n let itemsFormatted = [];\n this.globals.globalvars.ModeledUTCobj.forEach((item) => {\n itemsFormatted.push({\n id: item.id.replace(/,/g, ''), // remove commas to avoid errors,\n Rank: item.Rank,\n AreaAcres: item.AreaAcres,\n TreeAcres: item.TreeAcres,\n CurrentPct: item.CurrentPct,\n PercentChange: item.PercentChangecsv,\n AddedAcres: item.AddedAcres,\n ProjectedAcres: item.ProjectedAcres,\n AverageCrown: item.AverageCrown,\n mortRate: item.mortRate,\n totalTrees: item.totalTrees,\n annualtrees:item.annualtrees,\n TotalCost: item.TotalCost,\n annualcost:item.annualcost\n });\n });\n let fileTitle = 'TreeAnalysis'; // or 'my-unique-title'\n indexfunctions.exportCSVFile(headers, itemsFormatted, fileTitle, \"downloadTree\");\n return {annualplant:annualplant,}\n }\n getTreeBenefits(){\n this.globals.globalvars.BenefitObj = []\n let OverallarrayC = []\n let airbenearrayC = []\n let carbonarrayC = []\n let stormarrayC = []\n let OverallarrayP = []\n let airbenearrayP = []\n let carbonarrayP = []\n let stormarrayP = []\n let CObenearrayP=[]\n let NO2benearrayP=[]\n let O3benearrayP=[]\n let SO2benearrayP=[]\n let PM10benearrayP=[]\n let stormamountarrayP = []\n let airamountbenearrayP = []\n let COamountbenearrayP=[]\n let NO2amountbenearrayP=[]\n let O3amountbenearrayP=[]\n let SO2amountbenearrayP=[]\n let PM10amountbenearrayP=[]\n let seqbenearrayP=[]\n let stbenearrayP=[]\n let carbonamountarrayP = []\n let seqamountbenearrayP=[]\n let stamountbenearrayP=[]\n let CObenearrayC=[]\n let NO2benearrayC=[]\n let O3benearrayC=[]\n let SO2benearrayC=[]\n let PM10benearrayC=[]\n let stormamountarrayC = []\n let airamountbenearrayC = []\n let COamountbenearrayC=[]\n let NO2amountbenearrayC=[]\n let O3amountbenearrayC=[]\n let SO2amountbenearrayC=[]\n let PM10amountbenearrayC=[]\n let seqbenearrayC=[]\n let stbenearrayC=[]\n let carbonamountarrayC = []\n let seqamountbenearrayC=[]\n let stamountbenearrayC=[]\n let timeslider = Number($(\"#TimeSlider\").slider('value'))\n let timepercent = [.00,.01,.02,.03,.04,.05,.07,.09,.11,.13,.15,.18,.21,.24,.27,.30,.34,.38,.42,.46,.50,.55,.60,.65,.70,.75,.80,.85,.90,.95,1.00]\n let currenttimepercent = timepercent[timeslider]\n for (let x = 0; x < this.globals.globalvars.filteredlayer.length; x++) {\n let a = this.globals.globalvars.filteredlayer[x].addedacres\n let b = ((this.globals.globalvars.filteredlayer[x].COUn * a) * currenttimepercent)+this.globals.globalvars.filteredlayer[x].COUnCurr\n let c = ((this.globals.globalvars.filteredlayer[x].COVal * a) * currenttimepercent)+this.globals.globalvars.filteredlayer[x].COValCurr\n let d = ((this.globals.globalvars.filteredlayer[x].NO2Un * a) * currenttimepercent)+this.globals.globalvars.filteredlayer[x].NO2UnCurr\n let e = ((this.globals.globalvars.filteredlayer[x].NO2Val * a) * currenttimepercent)+this.globals.globalvars.filteredlayer[x].NO2ValCurr\n let f = ((this.globals.globalvars.filteredlayer[x].O3Un * a) * currenttimepercent)+this.globals.globalvars.filteredlayer[x].O3UnCurr\n let g = ((this.globals.globalvars.filteredlayer[x].O3Val * a) * currenttimepercent)+this.globals.globalvars.filteredlayer[x].O3ValCurr\n let h = ((this.globals.globalvars.filteredlayer[x].SO2Un * a) * currenttimepercent)+this.globals.globalvars.filteredlayer[x].SO2UnCurr\n let i = ((this.globals.globalvars.filteredlayer[x].SO2Val * a) * currenttimepercent)+this.globals.globalvars.filteredlayer[x].SO2ValCurr\n let j = ((this.globals.globalvars.filteredlayer[x].PM10Un * a) * currenttimepercent)+this.globals.globalvars.filteredlayer[x].PM10UnCurr\n let k = ((this.globals.globalvars.filteredlayer[x].PM10Val * a) * currenttimepercent)+this.globals.globalvars.filteredlayer[x].PM10ValCur\n let l = ((this.globals.globalvars.filteredlayer[x].AQTotUn * a) * currenttimepercent)+this.globals.globalvars.filteredlayer[x].AQTotUnCur\n let m = ((this.globals.globalvars.filteredlayer[x].AQTotVal * a) * currenttimepercent)+this.globals.globalvars.filteredlayer[x].AQTotValCu\n let n = ((this.globals.globalvars.filteredlayer[x].StUn * a) * currenttimepercent)+this.globals.globalvars.filteredlayer[x].StUnCurr\n let o = ((this.globals.globalvars.filteredlayer[x].StVal * a) * currenttimepercent)+this.globals.globalvars.filteredlayer[x].StValCurr\n let p = ((this.globals.globalvars.filteredlayer[x].SeqUn * a) * currenttimepercent)+this.globals.globalvars.filteredlayer[x].SeqUnCurr\n let q = ((this.globals.globalvars.filteredlayer[x].SeqVal * a) * currenttimepercent)+this.globals.globalvars.filteredlayer[x].SeqValCurr\n let r = ((this.globals.globalvars.filteredlayer[x].CarUn * a) * currenttimepercent)+this.globals.globalvars.filteredlayer[x].CarUnCurr\n let s = ((this.globals.globalvars.filteredlayer[x].CarVal * a) * currenttimepercent)+this.globals.globalvars.filteredlayer[x].CarValCurr\n let t = ((this.globals.globalvars.filteredlayer[x].RunReGal * a) * currenttimepercent)+this.globals.globalvars.filteredlayer[x].RunReGalCu\n let u = ((this.globals.globalvars.filteredlayer[x].StormVal * a) * currenttimepercent)+this.globals.globalvars.filteredlayer[x].StormValCu\n this.globals.globalvars.BenefitObj[x] = {\n \"id\": this.globals.globalvars.filteredlayer[x].NAME,\n \"Rank\": this.globals.globalvars.filteredlayer[x].rank,\n \"CurrentTree\": Math.round(this.globals.globalvars.filteredlayer[x][this.globals.mapvars.TreeAcres]),\n \"ProjectedTree\": Math.round(this.globals.globalvars.filteredlayer[x].ProjectedAcres),\n \"COUnitCurrent\": Math.round(this.globals.globalvars.filteredlayer[x].COUnCurr),\n \"COValueCurrent\": Math.round(this.globals.globalvars.filteredlayer[x].COValCurr),\n \"COUnitProjected\": Math.round(b),\n \"COValuerPojected\": Math.round(c),\n \"NO2UnitCurrent\": Math.round(this.globals.globalvars.filteredlayer[x].NO2UnCurr),\n \"NO2ValueCurrent\": Math.round(this.globals.globalvars.filteredlayer[x].NO2ValCurr),\n \"NO2UnitProjected\": Math.round(d),\n \"NO2ValueProjected\": Math.round(e),\n \"O3UnitCurrent\": Math.round(this.globals.globalvars.filteredlayer[x].O3UnCurr),\n \"O3ValueCurrent\": Math.round(this.globals.globalvars.filteredlayer[x].O3ValCurr),\n \"O3UnitProjected\": Math.round(f),\n \"O3ValueProjected\": Math.round(g),\n \"SO2UnitCurrent\": Math.round(this.globals.globalvars.filteredlayer[x].SO2UnCurr),\n \"SO2ValueCurrent\": Math.round(this.globals.globalvars.filteredlayer[x].SO2ValCurr),\n \"SO2UnitProjected\": Math.round(h),\n \"SO2ValueProjected\": Math.round(i),\n \"PM10UnitCurrent\": Math.round(this.globals.globalvars.filteredlayer[x].PM10UnCurr),\n \"PM10ValueCurrent\": Math.round(this.globals.globalvars.filteredlayer[x].PM10ValCur),\n \"PM10UnitProjected\": Math.round(j),\n \"PM10ValueProjected\": Math.round(k),\n \"AQTotUnitCurrent\": Math.round(this.globals.globalvars.filteredlayer[x].AQTotUnCur),\n \"AQTotValueCurrent\": Math.round(this.globals.globalvars.filteredlayer[x].AQTotValCu),\n \"AQTotUnitProjected\": Math.round(l),\n \"AQTotValueProjected\": Math.round(m),\n \"StUnitCurrent\": Math.round(this.globals.globalvars.filteredlayer[x].StUnCurr),\n \"StValueCurrent\": Math.round(this.globals.globalvars.filteredlayer[x].StValCurr),\n \"StUnitProjected\": Math.round(n),\n \"StValueProjected\": Math.round(o),\n \"SeqUnitCurrent\": Math.round(this.globals.globalvars.filteredlayer[x].SeqUnCurr),\n \"SeqValueCurrent\": Math.round(this.globals.globalvars.filteredlayer[x].SeqValCurr),\n \"SeqUnitProjected\": Math.round(p),\n \"SeqValueProjected\": Math.round(q),\n \"CarUnitCurrent\": Math.round(this.globals.globalvars.filteredlayer[x].CarUnCurr),\n \"CarValueCurrent\": Math.round(this.globals.globalvars.filteredlayer[x].CarValCurr),\n \"CarUnitProjected\": Math.round(r),\n \"CarValueProjected\": Math.round(s),\n \"RunoffReductionGalCurrent\": Math.round(this.globals.globalvars.filteredlayer[x].RunReGalCu),\n \"StormValueCurrent\": Math.round(this.globals.globalvars.filteredlayer[x].StormValCu),\n \"RunoffReductionGalProjected\": Math.round(t),\n \"StormValueProjected\": Math.round(u),\n \"zoom\": \"\"\n }\n OverallarrayC.push(this.globals.globalvars.BenefitObj[x].AQTotValueCurrent + this.globals.globalvars.BenefitObj[x].CarValueCurrent + this.globals.globalvars.BenefitObj[x].StormValueCurrent)\n airbenearrayC.push(this.globals.globalvars.BenefitObj[x].AQTotValueCurrent)\n airamountbenearrayC.push(this.globals.globalvars.BenefitObj[x].AQTotUnitCurrent)\n CObenearrayC.push(this.globals.globalvars.BenefitObj[x].COValueCurrent)\n COamountbenearrayC.push(this.globals.globalvars.BenefitObj[x].COUnitCurrent)\n NO2benearrayC.push(this.globals.globalvars.BenefitObj[x].NO2ValueCurrent)\n NO2amountbenearrayC.push(this.globals.globalvars.BenefitObj[x].NO2UnitCurrent)\n O3benearrayC.push(this.globals.globalvars.BenefitObj[x].O3ValueCurrent)\n O3amountbenearrayC.push(this.globals.globalvars.BenefitObj[x].O3UnitCurrent)\n SO2benearrayC.push(this.globals.globalvars.BenefitObj[x].SO2ValueCurrent)\n SO2amountbenearrayC.push(this.globals.globalvars.BenefitObj[x].SO2UnitCurrent)\n PM10benearrayC.push(this.globals.globalvars.BenefitObj[x].PM10ValueCurrent)\n PM10amountbenearrayC.push(this.globals.globalvars.BenefitObj[x].PM10UnitCurrent)\n carbonarrayC.push(this.globals.globalvars.BenefitObj[x].CarValueCurrent)\n carbonamountarrayC.push(this.globals.globalvars.BenefitObj[x].CarUnitCurrent)\n seqbenearrayC.push(this.globals.globalvars.BenefitObj[x].SeqValueCurrent)\n seqamountbenearrayC.push(this.globals.globalvars.BenefitObj[x].SeqUnitCurrent)\n stbenearrayC.push(this.globals.globalvars.BenefitObj[x].StValueCurrent)\n stamountbenearrayC.push(this.globals.globalvars.BenefitObj[x].StUnitCurrent)\n stormarrayC.push(this.globals.globalvars.BenefitObj[x].StormValueCurrent)\n stormamountarrayC.push(this.globals.globalvars.BenefitObj[x].RunoffReductionGalCurrent)\n OverallarrayP.push(this.globals.globalvars.BenefitObj[x].AQTotValueProjected + this.globals.globalvars.BenefitObj[x].CarValueProjected + this.globals.globalvars.BenefitObj[x].StormValueProjected)\n airbenearrayP.push(this.globals.globalvars.BenefitObj[x].AQTotValueProjected)\n airamountbenearrayP.push(this.globals.globalvars.BenefitObj[x].AQTotUnitProjected)\n CObenearrayP.push(this.globals.globalvars.BenefitObj[x].COValuerPojected)\n COamountbenearrayP.push(this.globals.globalvars.BenefitObj[x].COUnitProjected)\n NO2benearrayP.push(this.globals.globalvars.BenefitObj[x].NO2ValueProjected)\n NO2amountbenearrayP.push(this.globals.globalvars.BenefitObj[x].NO2UnitProjected)\n O3benearrayP.push(this.globals.globalvars.BenefitObj[x].O3ValueProjected)\n O3amountbenearrayP.push(this.globals.globalvars.BenefitObj[x].O3UnitProjected)\n SO2benearrayP.push(this.globals.globalvars.BenefitObj[x].SO2ValueProjected)\n SO2amountbenearrayP.push(this.globals.globalvars.BenefitObj[x].SO2UnitProjected)\n PM10benearrayP.push(this.globals.globalvars.BenefitObj[x].PM10ValueProjected)\n PM10amountbenearrayP.push(this.globals.globalvars.BenefitObj[x].PM10UnitProjected)\n carbonarrayP.push(this.globals.globalvars.BenefitObj[x].CarValueProjected)\n carbonamountarrayP.push(this.globals.globalvars.BenefitObj[x].CarUnitProjected)\n seqbenearrayP.push(this.globals.globalvars.BenefitObj[x].SeqValueProjected)\n seqamountbenearrayP.push(this.globals.globalvars.BenefitObj[x].SeqUnitProjected)\n stbenearrayP.push(this.globals.globalvars.BenefitObj[x].StValueProjected)\n stamountbenearrayP.push(this.globals.globalvars.BenefitObj[x].StUnitProjected)\n stormarrayP.push(this.globals.globalvars.BenefitObj[x].StormValueProjected)\n stormamountarrayP.push(this.globals.globalvars.BenefitObj[x].RunoffReductionGalProjected)\n }\n let totaloverallC =OverallarrayC.reduce(this.sum);\n let totalairC =airbenearrayC.reduce(this.sum);\n let totalairCamount =airamountbenearrayC.reduce(this.sum);\n let totalCOC =CObenearrayC.reduce(this.sum);\n let totalCOCamount =COamountbenearrayC.reduce(this.sum);\n let totalNO2C =NO2benearrayC.reduce(this.sum);\n let totalNO2Camount =NO2amountbenearrayC.reduce(this.sum);\n let totalO3C =O3benearrayC.reduce(this.sum);\n let totalO3Camount =O3amountbenearrayC.reduce(this.sum);\n let totalSO2C =SO2benearrayC.reduce(this.sum);\n let totalSO2Camount =SO2amountbenearrayC.reduce(this.sum);\n let totalPM10C =PM10benearrayC.reduce(this.sum);\n let totalPM10Camount = PM10amountbenearrayC.reduce(this.sum);\n let totalcarbonC =carbonarrayC.reduce(this.sum);\n let totalcarbonCamount =carbonamountarrayC.reduce(this.sum);\n let totalseqC =seqbenearrayC.reduce(this.sum);\n let totalseqCamount =seqamountbenearrayC.reduce(this.sum);\n let totalstC =stbenearrayC.reduce(this.sum);\n let totalstCamount =stamountbenearrayC.reduce(this.sum);\n let totalstormC =stormarrayC.reduce(this.sum);\n let totalstormCamount =stormamountarrayC.reduce(this.sum);\n let totaloverallP =OverallarrayP.reduce(this.sum);\n let totalairP =airbenearrayP.reduce(this.sum);\n let totalairPamount =airamountbenearrayP.reduce(this.sum);\n let totalCOP =CObenearrayP.reduce(this.sum);\n let totalCOPamount =COamountbenearrayP.reduce(this.sum);\n let totalNO2P =NO2benearrayP.reduce(this.sum);\n let totalNO2Pamount =NO2amountbenearrayP.reduce(this.sum);\n let totalO3P =O3benearrayP.reduce(this.sum);\n let totalO3Pamount =O3amountbenearrayP.reduce(this.sum);\n let totalSO2P =SO2benearrayP.reduce(this.sum);\n let totalSO2Pamount =SO2amountbenearrayP.reduce(this.sum);\n let totalPM10P =PM10benearrayP.reduce(this.sum);\n let totalPM10Pamount =PM10amountbenearrayP.reduce(this.sum);\n let totalcarbonP =carbonarrayP.reduce(this.sum);\n let totalcarbonPamount =carbonamountarrayP.reduce(this.sum);\n let totalseqP =seqbenearrayP.reduce(this.sum);\n let totalseqPamount =seqamountbenearrayP.reduce(this.sum);\n let totalstP =stbenearrayP.reduce(this.sum);\n let totalstPamount =stamountbenearrayP.reduce(this.sum);\n let totalstormP =stormarrayP.reduce(this.sum);\n let totalstormPamount =stormamountarrayP.reduce(this.sum);\n this.globals.globalvars.benefitcardinfo = {\n totaloverallC:totaloverallC,totaloverallP:totaloverallP,\n totalairC:totalairC,totalairP:totalairP,\n totalcarbonC:totalcarbonC,totalcarbonP:totalcarbonP,\n totalstormC:totalstormC,totalstormP:totalstormP\n }\n this.globals.globalvars.benepdfinfo = {\n totaladdedacres:this.globals.globalvars.totaladdedacres,\n totalseqCamount:totalseqCamount,totalseqC:totalseqC,totalseqPamount:totalseqPamount,totalseqP:totalseqP,\n totalstCamount:totalstCamount,totalstC:totalstC,totalstPamount:totalstPamount,totalstP:totalstP,\n totalCOCamount:totalCOCamount,totalCOC:totalCOC,totalCOPamount:totalCOPamount,totalCOP:totalCOP,\n totalNO2Camount:totalNO2Camount,totalNO2C:totalNO2C,totalNO2Pamount:totalNO2Pamount,totalNO2P:totalNO2P,\n totalO3Camount:totalO3Camount,totalO3C:totalNO2C,totalO3Pamount:totalO3Pamount,totalO3P:totalO3P,\n totalSO2Camount:totalSO2Camount,totalSO2C:totalSO2C,totalSO2Pamount:totalSO2Pamount,totalSO2P:totalSO2P,\n totalPM10Camount:totalPM10Camount,totalPM10C:totalPM10C,totalPM10Pamount:totalPM10Pamount,totalPM10P:totalPM10P,\n totalairCamount:totalairCamount,totalairC:totalairC,totalairPamount:totalairPamount,totalairP:totalairP,\n totalstormCamount:totalstormCamount,totalstormC:totalstormC,totalstormPamount:totalstormPamount,totalstormP:totalstormP\n }\n let headers = {\n id: 'Name'.replace(/,/g, ''), // remove commas to avoid errors\n Rank: \"Rank\".replace(/,/g, ''),\n CurrentTree: \"Tree Area (ac)\".replace(/,/g, ''),\n ProjectedTree: \"Projected Area (ac)\".replace(/,/g, ''),\n COUnitCurrent: \"CO Unit Current\".replace(/,/g, ''),\n COValueCurrent: \"CO Value Current\".replace(/,/g, ''),\n COUnitProjected: \"CO Unit Projected\".replace(/,/g, ''),\n COValuerPojected: \"CO Value Projected\".replace(/,/g, ''),\n NO2UnitCurrent: \"NO2 Unit Current\".replace(/,/g, ''),\n NO2ValueCurrent: \"NO2 Value Current\".replace(/,/g, ''),\n NO2UnitProjected: \"NO2 Unit Projected\".replace(/,/g, ''),\n NO2ValueProjected: \"NO2 Value Projected\".replace(/,/g, ''),\n O3UnitCurrent: \"O3 Unit Current\".replace(/,/g, ''),\n O3ValueCurrent: \"O3 Value Current\".replace(/,/g, ''),\n O3UnitProjected: \"O3 Unit Projected\".replace(/,/g, ''),\n O3ValueProjected: \"O3 Value Projected\".replace(/,/g, ''),\n SO2UnitCurrent: \"SO2 Unit Current\".replace(/,/g, ''),\n SO2ValueCurrent: \"SO2 Value Current\".replace(/,/g, ''),\n SO2UnitProjected: \"SO2 Unit Projected\".replace(/,/g, ''),\n SO2ValueProjected: \"SO2 Value Projected\".replace(/,/g, ''),\n PM10UnitCurrent: \"PM10 Unit Current\".replace(/,/g, ''),\n PM10ValueCurrent: \"PM10 Value Current\".replace(/,/g, ''),\n PM10UnitProjected: \"PM10 Unit Projected\".replace(/,/g, ''),\n PM10ValueProjected: \"PM10 Value Projected\".replace(/,/g, ''),\n AQTotUnitCurrent: \"Air Quality Total Unit Current\".replace(/,/g, ''),\n AQTotValueCurrent: \"Air Quality Total Value Current\".replace(/,/g, ''),\n AQTotUnitProjected: \"Air Quality Total Unit Projected\".replace(/,/g, ''),\n AQTotValueProjected: \"Air Quality Total Value Projected\".replace(/,/g, ''),\n StUnitCurrent: \"Storage Unit Current\".replace(/,/g, ''),\n StValueCurrent: \"Storage Value Current\".replace(/,/g, ''),\n StUnitProjected: \"Storage Unit Projected\".replace(/,/g, ''),\n StValueProjected: \"Storage Value Projected\".replace(/,/g, ''),\n SeqUnitCurrent: \"Sequestered Unit Current\".replace(/,/g, ''),\n SeqValueCurrent: \"Sequestered Value Current\".replace(/,/g, ''),\n SeqUnitProjected: \"Sequestered Unit Projected\".replace(/,/g, ''),\n SeqValueProjected: \"Sequestered Value Projected\".replace(/,/g, ''),\n CarUnitCurrent: \"Carbon Unit Current\".replace(/,/g, ''),\n CarValueCurrent: \"Carbon Value Current\".replace(/,/g, ''),\n CarUnitProjected: \"Carbon Unit Projected\".replace(/,/g, ''),\n CarValueProjected: \"Carbon Value Projected\".replace(/,/g, ''),\n RunoffReductionGalCurrent: \"Runoff Reduction Gallon Current\".replace(/,/g, ''),\n StormValueCurrent: \"Storm Value Current\".replace(/,/g, ''),\n RunoffReductionGalProjected: \"Runoff Reduction Gallon Projected\".replace(/,/g, ''),\n StormValueProjected: \"Storm Value Projected\".replace(/,/g, '')\n };\n let itemsFormatted = [];\n this.globals.globalvars.BenefitObj.forEach((item) => {\n itemsFormatted.push({\n id: item.id.replace(/,/g, ''), // remove commas to avoid errors,.replace(/,/g, '')\n Rank: item.Rank,\n CurrentTree: item.CurrentTree,\n ProjectedTree: item.ProjectedTree,\n COUnitCurrent: item.COUnitCurrent,\n COValueCurrent: item.COValueCurrent,\n COUnitProjected: item.COUnitProjected,\n COValuerPojected: item.COValuerPojected,\n NO2UnitCurrent: item.NO2UnitCurrent,\n NO2ValueCurrent: item.NO2ValueCurrent,\n NO2UnitProjected: item.NO2UnitProjected,\n NO2ValueProjected: item.NO2ValueProjected,\n O3UnitCurrent: item.O3UnitCurrent,\n O3ValueCurrent: item.O3ValueCurrent,\n O3UnitProjected: item.O3UnitProjected,\n O3ValueProjected: item.O3ValueProjected,\n SO2UnitCurrent: item.SO2UnitCurrent,\n SO2ValueCurrent: item.SO2ValueCurrent,\n SO2UnitProjected: item.SO2UnitProjected,\n SO2ValueProjected: item.SO2ValueProjected,\n PM10UnitCurrent: item.PM10UnitCurrent,\n PM10ValueCurrent: item.PM10ValueCurrent,\n PM10UnitProjected: item.PM10UnitProjected,\n PM10ValueProjected: item.PM10ValueProjected,\n AQTotUnitCurrent: item.AQTotUnitCurrent,\n AQTotValueCurrent: item.AQTotValueCurrent,\n AQTotUnitProjected: item.AQTotUnitProjected,\n AQTotValueProjected: item.AQTotValueProjected,\n StUnitCurrent: item.StUnitCurrent,\n StValueCurrent: item.StValueCurrent,\n StUnitProjected: item.StUnitProjected,\n StValueProjected: item.StValueProjected,\n SeqUnitCurrent: item.SeqUnitCurrent,\n SeqValueCurrent: item.SeqValueCurrent,\n SeqUnitProjected: item.SeqUnitProjected,\n SeqValueProjected: item.SeqValueProjected,\n CarUnitCurrent: item.CarUnitCurrent,\n CarValueCurrent: item.CarValueCurrent,\n CarUnitProjected: item.CarUnitProjected,\n CarValueProjected: item.CarValueProjected,\n RunoffReductionGalCurrent: item.RunoffReductionGalCurrent,\n StormValueCurrent: item.StormValueCurrent,\n RunoffReductionGalProjected: item.RunoffReductionGalProjected,\n StormValueProjected: item.StormValueProjected\n });\n });\n let fileTitle = 'BenefitAnalysis'; // or 'my-unique-title'\n indexfunctions.exportCSVFile(headers, itemsFormatted, fileTitle, \"downloadBenefit\");\n return {benefitcardinfo:this.globals.globalvars.benefitcardinfo}\n }\n}","import { Component, Input, OnInit } from '@angular/core';\nimport { Globals } from 'src/app/globals';\n\n@Component({\n selector: 'app-toolbar-layer-filters',\n templateUrl: './toolbar-layer-filters.component.html',\n styleUrls: ['./toolbar-layer-filters.component.scss']\n})\nexport class ToolbarLayerFiltersComponent implements OnInit {\n\n haschangelayer=this.globals.constvars.haschangelayer\n\n constructor(private globals:Globals) { }\n\n ngOnInit(): void {\n }\n\n}\n","
\n \n
\n
Canopy Percent
\n
\n \n
\n \n
\n
\n\n
\n
Possible Canopy Percent
\n
\n \n
\n \n
\n
\n\n
\n
Canopy Change Percent
\n
\n \n
\n \n
\n
\n\n
\n
Filter Priority
\n
\n \n
\n
\n
\n \n
\n \n
\n
","// This file can be replaced during build by using the `fileReplacements` array.\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\n// The list of file replacements can be found in `angular.json`.\n\nexport const environment = {\n production: false\n};\n\n/*\n * For easier debugging in development mode, you can import the following file\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\n *\n * This import should be commented out in production mode because it will have a negative impact\n * on performance if an error is thrown.\n */\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\n","import { Component, Input, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-overview',\n templateUrl: './overview.component.html',\n styleUrls: ['./overview.component.scss']\n})\nexport class OverviewComponent implements OnInit {\n\n @Input() keyfindings\n @Input() OverviewParagraph\n @Input() OverviewContent\n\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
\n \n \n
\n
\n
\n
\n
\n
Key Findings:
\n
    \n
  • \n
\n
\n
\n
\n
\n
","import { Injectable } from \"@angular/core\";\nimport { Calculations } from \"../app.calculations\";\nimport { Globals } from \"../globals\";\n\ndeclare const $:any\n@Injectable()\nexport class MapFunctions{\n constructor(private globals:Globals, private calc:Calculations){\n \n }\n getMaxOfArray(numArray) {return Math.max.apply(null, numArray);}\n getMinOfArray(numArray) {return Math.min.apply(null, numArray);}\n resetFeatureLayerFilter(Layers, UTCLayers = [], expression) {\n UTCLayers.forEach(element => {\n Layers[element.name][2].definitionExpression = expression;\n })\n }\n // loops through and matches the results to be given a rank\n findrank(result) {\n let factors = [];\n for (const weightedFeature of this.globals.globalvars.weightedFeatures) {\n factors.push(result[weightedFeature.fieldName]);\n }\n let weights = [];\n for (const weightedFeature of this.globals.globalvars.weightedFeatures) {\n weights.push(this.calc.addedWeights(weightedFeature.level));\n }\n let addition = 0;\n for (let i = 0; i < this.globals.globalvars.weightedFeatures.length; i++) {\n addition = addition + (factors[i] * weights[i]);\n }\n let division = 0;\n for (let i = 0; i < this.globals.globalvars.weightedFeatures.length; i++) {\n division = division + weights[i];\n }\n let results = addition / division;\n const arr = this.calc.findArray();\n let rank = arr.indexOf(results)+1\n return rank;\n }\n createstring(prefix = '') {\n let weights = [];\n let strArray1 = [];\n for (let x = 0; x < this.globals.globalvars.weightedFeatures.length; x++) {\n weights.push(this.calc.addedWeights(this.globals.globalvars.weightedFeatures[x].level));\n strArray1.push('(' + prefix + this.globals.globalvars.weightedFeatures[x].fieldName + '*' + weights[x] + ')');\n };\n let str1 = '(' + strArray1.toString().replace(/,/g, '+') + ')';\n let str2 = '(' + weights.toString().replace(/,/g, '+') + ')';\n let constiable = '(' + str1 + '/' + str2 + ')';\n // if(parseInt(weights.toString().replace(/,/g, '+'))==0){\n // constiable = '0';\n // }\n let arr = this.calc.findArray().sort((a, b) => {\n return a - b;\n });\n // return fullstr;\n let text=[`var calc=${constiable};\n var myArray = [${arr}];`,\n `return indexof(myArray,calc)+1;`,\n `indexof(myArray,calc)+1`]\n return text\n }\n // for selecting objects\n setFeatureLayerFilter(Layers,expression) {\n Layers[$(\"#layer\").val()][2].definitionExpression = expression;\n if (document.getElementById(\"prioritize\").style.display == \"block\") {\n Layers[$('#Prioritylayer').val()][2].definitionExpression = expression;\n }\n }\n QueryLayerFilter(Layers,UTCLayers = [],expression) {\n UTCLayers.forEach(element=>{\n Layers[element.name][3].definitionExpression = expression;\n })\n }\n QuerySiteFilter(baseLayer,expression) {\n baseLayer.definitionExpression = expression;\n }\n setValueExpression(Layers,expression){\n let renderer = Layers[$(\"#layer\").val()][0].renderer.clone();\n renderer.visualVariables[0].valueExpression = expression;\n renderer.label =\"Boundary\"\n Layers[$(\"#layer\").val()][0].renderer = renderer;\n let lines = Layers[$(\"#layer\").val()][1].renderer.clone();\n lines.visualVariables[0].valueExpression = expression;\n Layers[$(\"#layer\").val()][1].renderer = lines;\n }\n setValueExpressionBlock(Layers,expression){\n let renderer = Layers[[$(\"#Prioritylayer\").val()].toString()][0].renderer.clone();\n renderer.visualVariables[0].valueExpression = expression;\n Layers[[$(\"#Prioritylayer\").val()].toString()][0].renderer = renderer;\n let lines = Layers[[$(\"#Prioritylayer\").val()].toString()][1].renderer.clone();\n lines.visualVariables[0].valueExpression = expression;\n Layers[[$(\"#Prioritylayer\").val()].toString()][1].renderer = lines;\n }\n setMaxValueCanopy(Layers,Min,Max){\n let renderer = Layers[$(\"#layer\").val()][0].renderer.clone();\n renderer.visualVariables[0].stops[0][\"value\"] = Min;\n renderer.visualVariables[0].stops[0][\"label\"] = Min+\"% Canopy\";\n renderer.visualVariables[0].stops[1][\"value\"] = Max;\n renderer.visualVariables[0].stops[1][\"label\"] = Max+\"% Canopy\";\n renderer.label=$(\"#layer\").val();\n renderer.label =\"Boundary\"\n Layers[$(\"#layer\").val()][0].renderer = renderer;\n }\n setPriorityValues(Layers,Min,Middle,Max,expression,defaultSym){\n let renderer = {\n type: \"simple\",\n symbol: defaultSym,\n label: \"Boundary\",\n visualVariables: [\n {\n type: \"color\",\n valueExpression: expression,\n legendOptions: {\n title: \"Priority Analysis\"\n },\n stops: [\n {\n value: Min,\n color: \"#f5fafa\",\n label: \"Low Priority\"\n },\n {\n value: Middle,\n color: \"#b5b0bf\",\n label: \"\"\n },\n {\n value: Max,\n color: \"#a60053\",\n label: \"High Priority\"\n }\n ]\n }\n ]\n };\n Layers[[$(\"#Prioritylayer\").val()].toString()][0].renderer = renderer;\n }\n resetRenderer(Layers,defaultSym,symbol,Min,Max){\n let renderer = {\n type: \"simple\",\n symbol: defaultSym,\n label: \"Boundary\",\n visualVariables: [\n {\n type: \"color\",\n valueExpression:('$feature.'+this.globals.mapvars.UTCPer),\n legendOptions: {\n title: \"Canopy Percentage\"\n },\n stops: [\n {\n value: Min[$(\"#layer\").val()],\n color: \"#e6e4e1\",\n label: Min[$(\"#layer\").val()]+\"% Canopy\"\n },\n {\n value: Max[$(\"#layer\").val()],\n color: \"#008c1a\",\n label: Max[$(\"#layer\").val()]+\"% Canopy\"\n }\n ]\n }\n ]\n };\n let renderer2 = {\n type: \"simple\", // autocasts as new SimpleRenderer()\n symbol: symbol,\n label: \"Boundary\",\n visualVariables: [{\n type: \"color\",\n valueExpression: ('$feature.' + this.globals.mapvars.UTCPer), //acarde expession language\n legendOptions: {\n title: \"Canopy Percentage\"\n },\n stops: [{\n value: Min[$(\"#layer\").val()],\n color: [0, 0, 0, .5],\n label: Min[$(\"#layer\").val()] + \"% Canopy\"\n },\n {\n value: Max[$(\"#layer\").val()],\n color: [0, 0, 0, .5],\n label: Max[$(\"#layer\").val()] + \"% Canopy\"\n }\n ]\n }]\n };\n Layers[$(\"#layer\").val()][0].renderer = renderer;\n Layers[$(\"#layer\").val()][1].renderer = renderer2;\n }\n setColorRamp(Layers,color1, color2, title,lowlabel,highlabel,lowvalue,highvalue){\n let renderer = Layers[$(\"#layer\").val()][0].renderer.clone();\n renderer.visualVariables[0].stops[0][\"color\"] = color1;\n renderer.visualVariables[0].stops[1][\"color\"] = color2;\n renderer.visualVariables[0].legendOptions.title=title;\n renderer.visualVariables[0].stops[0][\"label\"] = lowlabel;\n renderer.visualVariables[0].stops[1][\"label\"] = highlabel;\n renderer.visualVariables[0].stops[0][\"value\"] = lowvalue;\n renderer.visualVariables[0].stops[1][\"value\"] = highvalue;\n Layers[$(\"#layer\").val()][0].renderer = renderer;\n }\n changeLayer(Layers,layer,Limits,Min,Max,sketchlayer){\n this.globals.map.removeAll();\n this.globals.map.addMany(Layers[layer]);\n this.globals.map.add(Limits)\n this.globals.map.add(sketchlayer)\n this.setMaxValueCanopy(Layers,Min[$(\"#layer\").val()],Max[$(\"#layer\").val()]);\n }\n changePriorityLayer(Layers,layer,Limits){\n this.globals.map.removeAll();\n this.globals.map.addMany(Layers[layer]);\n this.globals.map.add(Limits)\n // setMaxValueCanopy(Min[$(\"#layer\").val()],Max[$(\"#layer\").val()]);\n }\n}\n\n\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { AbstractControl, FormControl, FormGroup, ValidationErrors, ValidatorFn, Validators } from '@angular/forms';\nimport { ProjectService } from 'src/app/services/project.service';\n\n@Component({\n selector: 'app-user-settings-security',\n templateUrl: './user-settings-security.component.html',\n styleUrls: ['./user-settings-security.component.scss']\n})\nexport class UserSettingsSecurityComponent implements OnInit {\n @Input() username \n currentuser\nregexnewpass= \"^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$\"\ncheckPasswords: ValidatorFn = (group: AbstractControl): ValidationErrors | null => { \n let pass = group.get('password').value;\n let confirmPass = group.get('confirmPassword').value\n return pass === confirmPass ? null : { notSame: true }\n }\n\n edituser=new FormGroup({\n user:new FormControl('',Validators.required),\n username:new FormControl('',Validators.required),\n email:new FormControl('',Validators.compose([Validators.required,Validators.email]))\n })\nnewpass=new FormGroup({\n password: new FormControl('',Validators.compose([Validators.required,Validators.pattern(this.regexnewpass)])),\n confirmPassword: new FormControl('',Validators.compose([Validators.required,matchValidator('password')]))\n})\npasswordbtntext=\"Save New Password\"\npasswordbtncolor=\"#a4c988\"\nProfilebtntext=\"Save & Update\"\nProfilebtncolor=\"#a4c988\"\nusernameInUse=false\n constructor(private project:ProjectService) { }\n async userdata(){\n let userdata:any= await this.project.getUserbytoken()\n if(userdata.data!==null){ \n this.currentuser=userdata.data\n }else{\n }\n this.updateProfile()\n }\n async update() { \n if(this.edituser.valid){\n let updateUser= await this.project.updateeUser({userId:this.currentuser._id,userconfig:this.edituser.value})\n if(updateUser.message=='username in use'){\n this.usernameInUse=true\n this.edituser.controls.username.setErrors({'incorrect': true})\n this.Profilebtntext=\"Error\"\n this.Profilebtncolor=\"rgba(206, 11, 11, 0.685)\"\n setTimeout(()=>{\n this.Profilebtntext=\"Save & Update\"\n this.Profilebtncolor=\"#a4c988\"\n },5000)\n }else{\n this.usernameInUse=false\n this.Profilebtntext=\"Saved\"\n this.Profilebtncolor=\"grey\"\n setTimeout(()=>{\n this.Profilebtntext=\"Save & Update\"\n this.Profilebtncolor=\"#a4c988\"\n },5000)\n }\n }else{\n this.Profilebtntext=\"Error\"\n this.Profilebtncolor=\"rgba(206, 11, 11, 0.685)\"\n setTimeout(()=>{\n this.Profilebtntext=\"Save & Update\"\n this.Profilebtncolor=\"#a4c988\"\n },5000)\n }\n }\n togglepassword(element,icon){\n const type = element.getAttribute(\"type\") === \"password\" ? \"text\" : \"password\";\n element.setAttribute(\"type\", type);\n icon.classList.toggle(\"fa-eye-slash\")\n }\n async updatepass() { \n if(this.newpass.valid){\n await this.project.updateeUser({userId:this.currentuser._id,userconfig:{password:this.newpass.value.password}})\n this.passwordbtntext=\"Saved\"\n this.passwordbtncolor=\"grey\"\n setTimeout(()=>{\n this.passwordbtntext=\"Save New Password\"\n this.passwordbtncolor=\"#a4c988\"\n },5000)\n }else{\n this.passwordbtntext=\"Error\"\n this.passwordbtncolor=\"rgba(206, 11, 11, 0.685)\"\n setTimeout(()=>{\n this.passwordbtntext=\"Save New Password\"\n this.passwordbtncolor=\"#a4c988\"\n },5000)\n }\n }\n updateProfile() { \n this.edituser.patchValue({\n user: this.currentuser.user,\n username:this.currentuser.username,\n role:this.currentuser.role,\n email:this.currentuser.email\n });\n }\n\n ngOnInit(): void {\n this.userdata()\n }\n\n}\nexport function matchValidator(\n matchTo: string, \n reverse?: boolean\n): ValidatorFn {\n return (control: AbstractControl): \n ValidationErrors | null => {\n if (control.parent && reverse) {\n const c = (control.parent?.controls as any)[matchTo] as AbstractControl;\n if (c) {\n c.updateValueAndValidity();\n }\n return null;\n }\n return !!control.parent &&\n !!control.parent.value &&\n control.value === \n (control.parent?.controls as any)[matchTo].value\n ? null\n : { matching: true };\n };\n}","
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
Username already in use. Please choose another username.
\n
\n
\n \n
\n
\n
\n
\n \n
    \n
  • At least one uppercase letter
  • \n
  • At least one lowercase letter
  • \n
  • At least one digit
  • \n
  • At least one special character, #?!@$%^&*-
  • \n
\n
\n
\n \n
Passwords must match
\n
\n
\n \n
\n
","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\nimport { Globals } from 'src/app/globals';\n@Component({\n selector: 'app-toolbar',\n templateUrl: './toolbar.component.html',\n styleUrls: ['./toolbar.component.scss']\n})\nexport class ToolbarComponent implements OnInit {\n\n @Input() layerfields\n @Input() setSummaryPie\n @Input() currentlayer\n @Input() baseLayersRef\n @Input() diversityobj\n @Input() clearQuery: () => void;\n @Input() addlayer: () => void;\n @Input() copyids: () => void;\n @Input() printpicture: () => void;\n @Output() openmodule = new EventEmitter()\n\n @Input() diversitytool: () => void;\n @Input() closediversity: () => void;\n @Input() showDiversitytable: () => void;\n \n options = {Layers:{arrow:15,name:\"Layers\"},Filter:{arrow:65,name:\"Filter\"},SiteQuery:{arrow:104,name:\"Vacant Site Query\"},LayerQuery:{arrow:150,name:\"Layer Query\"},\n SpeciesDiversity:{arrow:195,name:\"Species Diversity\"},QuickCalc:{arrow:150,name:\"QuickCalc\"}}\n currentoption = \"\"\n currentoptionName=''\n \n constructor(private globals:Globals) { }\n disableDiversity(){\n if(this.globals.constvars.hasVacantSites&&this.globals.constvars.hasTreeSites){\n return false\n }else return true\n }\n movepointer(option){\n let root = document.querySelector(':root')\n root.style.setProperty('--toolarrow',this.options[option].arrow+\"px\")\n this.currentoptionName = this.options[option].name\n this.toggletools(option)\n }\n\n opentoolpage(btnid, divid){\n for(let x=0; x\n
\n
\n \n \n \n \n \n \n \n
\n
\n
\n
\n
","import { Component, Input, OnInit } from '@angular/core';\nimport { ProjectService } from '../../services/project.service';\n\n@Component({\n selector: 'app-user-settings-admin',\n templateUrl: './user-settings-admin.component.html',\n styleUrls: ['./user-settings-admin.component.scss']\n})\nexport class UserSettingsAdminComponent implements OnInit {\n userList\n activeuserList=[]\n alluserList=[]\n showonlyactive=true\n activetoggle=\"#a4c988\"\n deletepopup = false\n deleteUser={\n username:\"\",\n id:\"\"\n }\n newuserpopup=false\n edituserpopup=false\n editthisuser\n constructor(private project:ProjectService) { }\n\n async getusers(){\n let authdata:any= await this.project.getAllUsers()\n this.alluserList = authdata.data\n this.activeuserList=[]\n this.alluserList.forEach(element => {\n if(element.active){\n this.activeuserList.push(element)\n }\n });\n if(this.showonlyactive){\n this.userList=this.activeuserList\n }else{\n this.userList=this.alluserList\n }\n }\n\n showallusers(){\n this.userList=this.alluserList\n }\n \n showactiveusers(){\n this.userList=this.activeuserList\n }\n\n toggleactivelist(){\n this.showonlyactive=!this.showonlyactive\n if(this.showonlyactive){\n this.showactiveusers()\n this.activetoggle=\"#a4c988\"\n }else{\n this.showallusers()\n this.activetoggle=\"#59962a\"\n }\n }\n rewriteactive(active){\n if(active){\n return \"Active\"\n }else{\n return \"Inactive\"\n }\n }\n opendeletepopup(deleteUsername,deleteUserid){\n this.deleteUser.username=deleteUsername\n this.deleteUser.id=deleteUserid\n this.deletepopup=true\n }\n async confirmdelete(userid){\n await this.project.deleteUser({userId:userid})\n this.getusers()\n this.deletepopup=false\n }\n openadduserpopup(){\n this.newuserpopup=true\n }\n openedituserpopup(person){\n this.edituserpopup=true\n this.editthisuser=person\n }\n closepopup(){\n this.deletepopup=false\n this.newuserpopup=false\n this.edituserpopup=false\n this.getusers()\n }\n ngOnInit(): void {\n this.getusers()\n }\n\n}\n","
User Management
\n\n\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n User\n \n Username\n \n Role\n \n E-mail\n \n Active\n \n Actions\n
{{person.user}}{{person.username}}{{person.role}}{{person.email}}{{person.active}}\n
\n \n \n
\n
\n
\n
\n
\n
\n
Are you sure you want to delete {{deleteUser.username}}
\n
\n \n \n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n
\n \n
\n
\n\n","import { AfterViewInit, Component, ElementRef, Input, ViewChild } from '@angular/core';\nimport { Globals } from 'src/app/globals';\n\ndeclare const Plotly: any;\n\n@Component({\n selector: 'app-benefits-card-quickcalc',\n templateUrl: './benefits-card-quickcalc.component.html',\n styleUrls: ['./benefits-card-quickcalc.component.scss']\n})\nexport class BenefitsCardQuickcalcComponent implements AfterViewInit {\n\n @Input() title: string;\n @Input() color: string;\n private imgurlcurr;\n private imgurlmod;\n public isUK = JSON.parse(window.sessionStorage.getItem(\"isUK\"));\n @ViewChild('currentStatistics') currentStatistics: ElementRef;\n @ViewChild('modelStatistics') modelStatistics: ElementRef;\n\n // overall config for responsive graphs with no display bar\n // to be used at the config parameter for Plotly.newPlot()\n private config = {\n responsive: true,\n displayModeBar: false,\n locales: this.isUK == true? {\n 'en': {\n 'format': {'currency': [\"£\", \"\"]}}\n }:\n {\n 'en': {\n 'format': {'currency': [\"$\", \"\"]}}\n }\n };\n\n // to be used at the layout parameter for Plotly.newPlot()\n private layout = {\n font: {\n family: 'Noto Serif',\n size: 11,\n color: 'darkgrey'\n },\n margin: {\n t: 55,\n r: 15,\n l: 15,\n b: 0\n }\n };\n\n private _totalCurrent: number;\n @Input()\n get totalCurrent(): number { return this._totalCurrent }\n set totalCurrent(totalCurrent: number) {\n this._totalCurrent = totalCurrent;\n this.plotCurrentBenefits();\n this.plotModeledBenefits();\n }\n\n private _totalProjected: number;\n @Input()\n get totalProjected(): number { return this._totalProjected }\n set totalProjected(totalProjected: number) {\n this._totalProjected = totalProjected;\n this.plotModeledBenefits();\n }\n\n constructor() { }\n\n private plotCurrentBenefits(): void { // TODO remove url?\n if (this.currentStatistics) {\n let benefitsCurrent = this.getCurrentConfig(this._totalCurrent, this.title);\n Plotly.newPlot(this.currentStatistics.nativeElement, benefitsCurrent, this.layout, this.config).then((gd) => {\n Plotly.toImage(gd, { height: 400, width: 500 })\n .then((url) => {\n this.imgurlcurr = url\n return Plotly.toImage(gd, { format: 'svg', height: 400, width: 500 });\n })\n });\n }\n }\n\n private plotModeledBenefits(): void {\n if (this.modelStatistics) {\n let benefitsModeled = this.getModeledConfig(this._totalCurrent, this._totalProjected, this.title);\n Plotly.newPlot(this.modelStatistics.nativeElement, benefitsModeled, this.layout, this.config).then((gd) => {\n Plotly.toImage(gd, { height: 400, width: 500 })\n .then((url) => {\n this.imgurlmod = url\n return Plotly.toImage(gd, { format: 'svg', height: 400, width: 500 });\n })\n });\n }\n }\n\n ngAfterViewInit(): void {\n this.plotCurrentBenefits();\n this.plotModeledBenefits();\n }\n\n /**\n * returns an array to be used as the \"data\" parameter for Plotly.newPlot for the currentBenefits plot\n * @param totalCurrent to be used as the \"value\" for the plot\n * @param title the name to be displayed with the plot\n */\n getCurrentConfig(totalCurrent, title) {\n return [{\n type: 'indicator',\n mode: 'number+delta',\n number: {\n font: {\n size: 25\n },\n valueformat: '$,.3s'\n },\n value: totalCurrent,\n title: {\n text: `Current
${title}`,\n font: {\n family: 'Noto Serif',\n size: 20,\n color: 'darkgrey'\n },\n },\n domain: {\n x: [0, 1],\n y: [0, 1]\n }\n }];\n }\n\n /**\n * returns an array to be used as the \"data\" parameter for Plotly.newPlot\n * @param totalCurrent to be used as the delta.reference for the plot\n * @param totalProjected to be used as the \"value\" for the plot\n * @param title the name to be displayed with the plot\n */\n getModeledConfig(totalCurrent, totalProjected, title) {\n return [{\n type: 'indicator',\n mode: 'number+delta',\n number: {\n font: {\n size: 25\n },\n valueformat: '$,.3s'\n },\n value: totalProjected,\n title: {\n text: `Modeled
${title}`,\n font: {\n family: 'Noto Serif',\n size: 20,\n color: 'darkgrey'\n },\n },\n domain: {\n x: [0, 1],\n y: [0, 1]\n }\n }];\n }\n}\n","
\n\t
\n\t\t{{title}} Benefits\n\t
\n\t
\n\t\t
\n\t
\n
","import { Component, EventEmitter, OnInit, Output } from '@angular/core';\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\nimport { ProjectService } from 'src/app/services/project.service';\n\n@Component({\n selector: 'app-user-settings-admin-new-user',\n templateUrl: './user-settings-admin-new-user.component.html',\n styleUrls: ['./user-settings-admin-new-user.component.scss']\n})\nexport class UserSettingsAdminNewUserComponent implements OnInit {\n @Output() closeevent= new EventEmitter()\n Profilebtntext=\"Add User\"\n Profilebtncolor=\"#a4c988\"\n usernameInUse=false\n newuser=new FormGroup({\n user:new FormControl('',Validators.required),\n username:new FormControl('',Validators.required),\n role:new FormControl('',Validators.required),\n email:new FormControl('',[Validators.required,Validators.email])\n })\n\n constructor(private project:ProjectService) { }\n\n closepopup(){\n this.closeevent.emit()\n }\n async addusers(){\n if(this.newuser.valid){\n let updateUser= await this.project.addUser(this.newuser.value)\n if(updateUser.message=='username in use'){\n this.usernameInUse=true\n this.newuser.controls.username.setErrors({'incorrect': true})\n this.Profilebtntext=\"Error\"\n this.Profilebtncolor=\"rgba(206, 11, 11, 0.685)\"\n setTimeout(()=>{\n this.Profilebtntext=\"Add User\"\n this.Profilebtncolor=\"#a4c988\"\n },5000)\n }else{\n this.usernameInUse=false\n this.Profilebtntext=\"User Added\"\n this.Profilebtncolor=\"grey\"\n setTimeout(()=>{\n this.closepopup()\n },1000)\n }\n }else{\n this.Profilebtntext=\"Error\"\n this.Profilebtncolor=\"rgba(206, 11, 11, 0.685)\"\n setTimeout(()=>{\n this.Profilebtntext=\"Add User\"\n this.Profilebtncolor=\"#a4c988\"\n },5000)\n }\n }\n ngOnInit(): void {\n }\n\n}\n","
Add new User
\n
\n
\n \n \n \n \n
\n
\n \n \n
\n","import { HttpErrorResponse } from '@angular/common/http';\nimport { AfterViewInit, Component, ViewChild } from '@angular/core';\nimport * as index from './indexfunctions';\nimport { MapComponent } from './map/map.component';\nimport { ProjectService } from './services/project.service';\nimport { TokenStorageService } from './services/token-storage.service';\nimport {resourceReport} from './app.resource-report'\nimport {Globals} from './globals'\nimport { Calculations } from './app.calculations';\n\ndeclare let $:any,numeral;\ndeclare const indexJS: any;\n\n\n@Component({\n selector: 'app-root',\n templateUrl: './app.component.html',\n styleUrls: ['./app.component.scss']\n})\nexport class AppComponent implements AfterViewInit {\n public title = 'TreeKeeper Canopy';\n public city = this.globals.constvars.city\n public TKURL = this.globals.constvars.TKURL\n public keyfindings = this.globals.constvars.keyfindings\n public OverviewParagraph = this.globals.constvars.OverviewParagraph\n public OverviewContent = this.globals.constvars.OverviewContent\n public CurrAverage = this.globals.constvars.CurrAverage\n public hasProjections = this.globals.constvars.hasProjections\n public isUK = this.globals.constvars.isUK\n public adminDivision = this.globals.constvars.adminDivision\n public projectConfig = this.globals.projectConfig \n public photo = this.globals.constvars.photo\n public rankings = this.globals.globalvars.rankings\n public filteredlayer = this.globals.globalvars.filteredlayer\n\n @ViewChild('report') private reportTab;\n @ViewChild('map') public map;\n //authentication\n hasLogin\n hasguestLogin\n @ViewChild('login') public login\n userloggedin\n constructor(private project: ProjectService, private token: TokenStorageService,private globals:Globals,private calc:Calculations) {\n };\n username\n admin=false\n setadmin(admin){\n this.admin=admin\n }\n assignusername(name){\n this.username=name\n }\n toolmoduleopen='none'\n moduletoolname=''\n quickCalcLayer=this.globals.constvars.cityLayerName\n quickCalcAreaName=this.globals.constvars.cityAreaName\n opentoolsmodule({toolname,moduleData}){\n this.toolmoduleopen=\"block\"\n this.moduletoolname=toolname\n if(toolname==\"Quick Calculator\"){\n this.quickCalcLayer=moduleData.layer\n this.quickCalcAreaName=moduleData.name\n }\n }\n closetoolsmodule(){\n this.toolmoduleopen=\"none\"\n }\n auth(auth){\n this.userloggedin=auth\n if(auth==true){\n setTimeout(()=>{\n indexJS();\n index.dragheightElement(document.getElementById(\"bottompanel\"));\n index.dragwidthElement(document.getElementById(\"sidebar\"));\n },100)\n }\n } \n async checkToken(){ \n if(this.token.getToken()!==null) {\n let userdata:any= await this.project.getUserbytoken().catch((err: HttpErrorResponse) => {\n this.token.removeToken()\n this.signinpopup()\n return err.error\n });;\n if(userdata.success){\n this.auth(true)\n this.username=userdata.data.username\n if(userdata.data.role==\"admin\"){\n this.setadmin(true)\n }else{\n this.setadmin(false)\n }\n }else{\n this.token.removeToken()\n this.signinpopup()\n }\n }else{\n this.signinpopup()\n }\n }\n loginerror=\"none\"\n loginpopup=\"none\"\n close(){\n this.loginerror=\"none\"\n this.loginpopup=\"block\"\n }\n error(){\n this.loginerror=\"block\"\n this.loginpopup=\"none\"\n }\n forgotpassword=\"none\"\n forgotpassopen(){\n this.forgotpassword=\"block\"\n this.loginpopup=\"none\"\n }\n forgotpassclose(){\n this.forgotpassword=\"none\"\n this.loginpopup=\"block\"\n }\n signinpopup(){\n console.log(this.loginpopup)\n this.loginpopup=\"block\"\n this.userloggedin=false\n }\n usersettingsclose(){\n this.usersettingsopen=false\n }\n settingsopen(){\n this.usersettingsopen=true\n }\n @ViewChild('prioritize') public prioritize;\n @ViewChild('plant') public plant;\n @ViewChild('prioritizepopup') public prioritizepopup;\n projectopen=false\n savingvalue=false\n currentobject=[\n ]\n projectsclose(){\n this.projectopen=false\n }\n projectsopen(){\n this.projectopen=true\n }\n openproject(project){\n if(document.getElementById(\"prioritize\").style.display == \"none\"){\n this.plant.load(project)\n }else{this.prioritize.load(project)}\n \n }\n opensaveas(){\n this.projectopen=true\n }\n saving(value){\n this.savingvalue=value\n }\n usersettingsopen=false\n\n buildResourceReport(){\n let resourcereport = new resourceReport(this.globals.clearhighlight,this.globals,this.calc)\n this.globals.globalvars.growthyears = resourcereport.growthyears()\n this.globals.globalvars.filteredlayer = resourcereport.filterAreasShown()\n this.globals.globalvars.annualplant = resourcereport.getTreeResources().annualplant\n this.globals.globalvars.benefitcardinfo = resourcereport.getTreeBenefits().benefitcardinfo\n }\n\n //var for benefit analysis\n\n timerId;\n debounceFunction = (func, delay)=>{\n clearTimeout(this.timerId);\n this.timerId = setTimeout(func, delay);\n };\n calculate = () => {\n this.debounceFunction(this.createreports,500)}\n createreports = () => { \n $(\"#loader\").show()\n this.buildResourceReport()\n this.reportTab.UpdateGraphandTable();\n $('#currentPER').html(Math.round(this.globals.globalvars.CurrentTreePercent) + '%')\n $('#modeledPER').html(Math.round(this.globals.globalvars.ModeledTreePercentwTime) + '%')\n $('#currentAC').html(numeral(Math.round(this.globals.globalvars.CurrentTreeAcres)).format('0,0'))\n $('#modeledAC').html(numeral(Math.round(this.globals.globalvars.ModeledTreeAcresqwTime)).format('0,0'))\n this.map.tables.buildscenrioobj()\n this.map.tables.buildTable()\n $(\"#loader\").hide()\n }\n async ngAfterViewInit() { \n await this.globals._getProjectConfig()\n .then(()=>{\n this.city = this.globals.constvars.city\n this.TKURL = this.globals.constvars.TKURL\n this.keyfindings = this.globals.constvars.keyfindings\n this.OverviewParagraph = this.globals.constvars.OverviewParagraph\n this.OverviewContent = this.globals.constvars.OverviewContent\n this.CurrAverage = this.globals.constvars.CurrAverage\n this.adminDivision = this.globals.constvars.adminDivision\n this.hasProjections = this.globals.constvars.hasProjections\n this.isUK = this.globals.constvars.isUK\n this.projectConfig = this.globals.projectConfig \n this.photo = this.globals.constvars.photo\n this.rankings = this.globals.globalvars.rankings\n this.filteredlayer = this.globals.globalvars.filteredlayer\n this.hasLogin = this.globals.constvars.hasLogin\n if(!this.globals.constvars.hasLogin){\n this.auth(true)}else{this.checkToken()}\n }\n )\n };\n \n}\n","\n\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n \n \n \n
\n
\n \n
\n \n
\n
\n
\n
\n
\n \n
\n\n \n \n
\n
\n
\n
\n \n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n
There is no user with that username and password
\n \n
\n
\n \n
\n
\n\n","import { Component, OnInit, Input } from '@angular/core';\n\n@Component({\n selector: 'app-toolbar-query',\n templateUrl: './toolbar-query.component.html',\n styleUrls: ['./toolbar-query.component.scss']\n})\nexport class ToolbarQueryComponent implements OnInit {\n\n @Input() layerfields\n @Input() setSummaryPie\n @Input() clearQuery: () => void;\n @Input() addlayer: () => void;\n @Input() copyids: () => void;\n\n constructor() { }\n openQuerypage(btnid, divid){\n for(let x=0; x\n
\n \n \n
\n \n \n
","import { Component, OnInit, Input } from '@angular/core';\nimport { Globals } from 'src/app/globals';\nimport {quickCalculations} from './quick-calculations'\n@Component({\n selector: 'app-toolbar-quick-calculator',\n templateUrl: './toolbar-quick-calculator.component.html',\n styleUrls: ['./toolbar-quick-calculator.component.scss']\n})\nexport class ToolbarQuickCalculatorComponent implements OnInit {\n @Input() quickCalcLayer = '';\n @Input() quickCalcAreaName = '';\n public isUK = JSON.parse(window.sessionStorage.getItem(\"isUK\"));\n\n projectedBenefits:any={\n totaloverallC:0,totaloverallP:0,\n totalairC:0,totalairP:0,\n totalcarbonC:0,totalcarbonP:0,\n totalstormC:0,totalstormP:0}\n\n layer\n areaData\n\n constructor(private globals:Globals) { \n }\n\n\n findLayer(layerTitle){\n this.globals.mapvars.layerdata.forEach((layer)=>{\n if(layer.layerName==layerTitle){\n this.layer = layer.attributes\n }\n })\n }\n\n findArea(areaName){\n this.layer.forEach((area)=>{\n if(area.NAME==areaName){\n this.areaData=area\n }\n })\n }\n calc(){\n this.findLayer(this.quickCalcLayer)\n this.findArea(this.quickCalcAreaName)\n let calc=new quickCalculations(this.areaData,this.globals)\n this.projectedBenefits= calc.getTreeBenefits()\n }\n\n ngOnInit(): void {\n }\n\n}\n","\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n Distribution of Size Class\n (%)\n
\n
\n
\n Small\n \n
\n
\n Medium\n \n
\n
\n Large\n \n
\n
\n\n
\n
\n
\n
\n Small Tree Crown\n {{isUK ? '(m)' : '(ft)'}}\n
\n
\n \n
\n
\n\n
\n\n
\n
\n Medium Tree Crown\n {{isUK ? '(m)' : '(ft)'}}\n
\n
\n \n
\n
\n\n
\n
\n
\n Large Tree Crown\n {{isUK ? '(m)' : '(ft)'}}\n
\n
\n \n
\n
\n\n
\n
\n
Projected Years
\n
\n \n
\n
\n
\n
\n
Annual Mortality Rate of Planted
Trees (%)\n
\n
\n \n
\n
\n
\n
\n\n
\n
\n
\n \n \n \n \n
\n
","import { Injectable } from \"@angular/core\";\nimport { Globals } from \"../globals\";\n\ndeclare const $:any;\n@Injectable()\nexport class ArcadeFunctions{\n\n constructor(private globals:Globals){}\n\n basicArcade(edgecase,foundarray,string,priorityfilter,setfeature,replaceWith){\n let values = edgecase\n let changeArcade = ''\n let priorityAcarde = ''\n if(this.globals.constvars.haschangelayer==true){\n changeArcade=' && $feature.'+this.globals.mapvars.UTCCha+' >= '+values.mincha + ' && $feature.' + this.globals.mapvars.UTCCha + ' <= ' + values.maxcha\n }\n if (document.getElementById(\"prioritize\").style.display == \"block\"){\n priorityAcarde='( '+string[2]+' )>= '+priorityfilter +'&&'\n }else{string[0]=''}\n if(foundarray){\n priorityAcarde='( 1 )>= '+priorityfilter\n setfeature=1\n }\n return `${string[0]}When(${priorityAcarde}\n $feature.${this.globals.mapvars.UTCPer} >= ${values.minper} && $feature.${this.globals.mapvars.UTCPer} <= ${values.maxper}\n && $feature.${this.globals.mapvars.UTCPoss} >= ${values.minposs} && $feature.${this.globals.mapvars.UTCPoss} <= ${values.maxposs}\n ${changeArcade} , ${setfeature}, '${replaceWith}')`\n }\n targetGoalArcade(edgecase,foundarray,string,priorityfilter,setfeature,replaceWith){\n return `var a =${$(\"#targetSlider\").slider('value')};\n var setfeature =When($feature.${this.globals.mapvars.UTCPer} >a,$feature.${this.globals.mapvars.UTCPer},$feature.${this.globals.mapvars.UTCPer}\n
\n
\n
\n
\n

\n Please visit our Support Portal for links to instructional tutorials, product developments, and answers to commonly asked questions.\n

\n

\n For login assistance or to submit an issue, please click here.\n

\n
\n
\n
\n \n
\n
\n","import { Injectable } from '@angular/core';\nconst TOKEN_KEY = 'auth-token';\nconst USER_KEY = 'auth-user';\n@Injectable({\n providedIn: 'root'\n})\nexport class TokenStorageService {\n constructor() { }\n signOut(): void {\n window.localStorage.clear();\n }\n public saveToken(token: string): void {\n window.localStorage.removeItem(TOKEN_KEY);\n window.localStorage.setItem(TOKEN_KEY, token);\n }\n public getToken(): string {\n return localStorage.getItem(TOKEN_KEY);\n }\n public removeToken(): void{\n window.localStorage.removeItem(TOKEN_KEY);\n }\n public saveUser(user): void {\n window.localStorage.removeItem(USER_KEY);\n window.localStorage.setItem(USER_KEY, JSON.stringify(user));\n }\n public getUser(): any {\n return JSON.parse(localStorage.getItem(USER_KEY));\n }\n}","import { Injectable } from '@angular/core';\nimport { BackendService } from './backend.service';\nimport { TokenStorageService } from './token-storage.service';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ProjectService {\n _token\n\n private _getClientName(){\n let url = window.location.href;\n let file = url.slice(url.lastIndexOf('/') + 1);\n // return \"akronoh\" // testing site\n return file\n }\n\n private _projectConfig;\n public async getProjectConfig() {\n if(this._projectConfig === undefined) {\n this._projectConfig = await this._getProjectConfig(this._getClientName());\n }\n return this._projectConfig;\n }\n\n public async getAllUsers(){\n return await this._getallusers(this._getClientName());\n }\n\n public async authUser(authData:object){\n let auth:any = await this._authUser(this._getClientName(), authData);\n if(auth.data!==null){this.token.saveToken(auth.data.accessToken)}\n return auth\n }\n\n public async getUserbytoken(){\n return await this._getUserbyToken(this._getClientName());\n }\n public async sendpasswordemail(emailData){\n return await this._sendpasswordemail(this._getClientName(), emailData);\n }\n\n public async getUserData(userID){\n return await this._getUserData(this._getClientName(), userID);\n }\n\n public async saveUserData(userproject){\n return await this._saveUserData(this._getClientName(), userproject);\n }\n\n public async deleteUserData(userproject){\n return await this._deleteUserData(this._getClientName(), userproject);\n }\n\n public async deleteUser(user){\n return await this._deleteUser(this._getClientName(), user);\n }\n public async reactivateUser(user){\n return await this._reactivateUser(this._getClientName(), user);\n }\n public async updateeUser(userconfig){\n return await this._updateeUser(this._getClientName(), userconfig);\n }\n public async addUser(userconfig){\n return await this._addUser(this._getClientName(), userconfig);\n }\n constructor(private backend: BackendService, private token:TokenStorageService) { }\n\n /**\n * \n * @param {string} projectName \n */\n private _getProjectConfig(file){\n // return this.backend.get(\"https://canopy.treekeepersoftware.com/akronoh/api/configuration\");\n return this.backend.get(\"https://canopy.treekeepersoftware.com/\"+file+\"/api/configuration\");\n }\n\n private _getallusers(file){\n // return this.backend.postwtoken(\"http://localhost:3500/auth/allusers\", {}, this.token.getToken())\n return this.backend.postwtoken(\"https://canopy.treekeepersoftware.com/\"+file+\"/api/auth/allusers\", {}, this.token.getToken());\n }\n\n private _authUser(file, authData:object){\n // return this.backend.login(\"http://localhost:3500/auth/signin\", authData)\n return this.backend.login(\"https://canopy.treekeepersoftware.com/\"+file+\"/api/auth/signin\", authData);\n }\n\n private _getUserbyToken(file){\n // return this.backend.postwtoken(\"http://localhost:3500/auth/tokensignin\", {}, this.token.getToken())\n return this.backend.postwtoken(\"https://canopy.treekeepersoftware.com/\"+file+\"/api/auth/tokensignin\", {}, this.token.getToken());\n }\n\n private _sendpasswordemail(file, emailData:object){\n // return this.backend.post(\"http://localhost:3500/sendforgetemail\", emailData)\n return this.backend.post(\"https://canopy.treekeepersoftware.com/\"+file+\"/api/sendforgetemail\", emailData);\n }\n\n private _getUserData(file, userID:object){\n // return this.backend.postwtoken(\"http://localhost:3500/auth/userprojects\", userID, this.token.getToken())\n return this.backend.postwtoken(\"https://canopy.treekeepersoftware.com/\"+file+\"/api/auth/userprojects\", userID, this.token.getToken());\n }\n\n private _saveUserData(file, userproject:object){\n // return this.backend.postwtoken(\"http://localhost:3500/auth/saveproject\", userproject, this.token.getToken())\n return this.backend.postwtoken(\"https://canopy.treekeepersoftware.com/\"+file+\"/api/auth/saveproject\", userproject, this.token.getToken());\n }\n\n private _deleteUserData(file, userproject:object){\n // return this.backend.postwtoken(\"http://localhost:3500/auth/deleteproject\", userproject, this.token.getToken())\n return this.backend.postwtoken(\"https://canopy.treekeepersoftware.com/\"+file+\"/api/auth/deleteproject\", userproject, this.token.getToken());\n }\n private _deleteUser(file, userproject:object){\n // return this.backend.postwtoken(\"http://localhost:3500/auth/user/delete\", userproject, this.token.getToken())\n return this.backend.postwtoken(\"https://canopy.treekeepersoftware.com/\"+file+\"/api/auth/user/delete\", userproject, this.token.getToken());\n }\n private _reactivateUser(file, userproject:object){\n // return this.backend.postwtoken(\"http://localhost:3500/auth/user/activate\", userproject, this.token.getToken())\n return this.backend.postwtoken(\"https://canopy.treekeepersoftware.com/\"+file+\"/api/auth/user/activate\", userproject, this.token.getToken());\n }\n private _updateeUser(file, userconfig:object){\n // return this.backend.postwtoken(\"http://localhost:3500/auth/user/update\", userconfig, this.token.getToken())\n return this.backend.postwtoken(\"https://canopy.treekeepersoftware.com/\"+file+\"/api/auth/user/update\", userconfig, this.token.getToken());\n }\n private _addUser(file, userconfig:object){\n // return this.backend.postwtoken(\"http://localhost:3500/auth/signup\", userconfig, this.token.getToken())\n return this.backend.postwtoken(\"https://canopy.treekeepersoftware.com/\"+file+\"/api/auth/signup\", userconfig, this.token.getToken());\n }\n}\n// ng b --base-href /allietest/diversity/","import { Component, OnInit, OnDestroy, ViewChild, ElementRef, AfterViewInit, Input,Output,EventEmitter } from '@angular/core';\nimport { loadModules,setDefaultOptions } from 'esri-loader';\nimport { HttpClient } from '@angular/common/http';\nimport { ProjectService } from '../services/project.service';\nimport * as popupactions from './map.popupactions'\nimport * as tools from './map.tools'\nimport * as bottomtable from './map.tables'\nimport { basicmap } from './map.basicmap'\nimport * as indexfunctions from '../indexfunctions';\nimport { Globals } from '../globals';\nimport { ArcadeFunctions } from './map.arcadefunction';\nimport { MapFunctions } from './map.functions';\nimport { PopupCharts } from './map.popupchart';\nimport { Calculations } from '../app.calculations';\n\n\n// Declare global functions and variables used.\n\ndeclare const $: any;\ndeclare const numeral: any;\ndeclare const pdfMake: any;\ndeclare const Plotly: any;\n\ndeclare let createCurrCanopyFilter: any,createPossCanopyFilter,createChangeFilter,createWeightFilter\n\n\nconst loadOptions = {\n version: \"4.23\",\n css: true,\n // insert the stylesheet link above the first ');\n }\n\n async ngOnInit() {\n $('#filterP').hide();\n }\n\n ngOnDestroy() {\n if (this.globals.view) {\n // destroy the map view\n this.globals.view.container = null;\n }\n }\n}\n","
\n \n \n
\n \n \n \n\n \n\n
\n\n","import { Component, OnInit, Input } from '@angular/core';\nimport { Globals } from 'src/app/globals';\ndeclare const $:any,pdfMake\n@Component({\n selector: 'app-toolbar-diversity',\n templateUrl: './toolbar-diversity.component.html',\n styleUrls: ['./toolbar-diversity.component.scss']\n})\nexport class ToolbarDiversityComponent implements OnInit {\n @Input() diversitytool: () => void;\n @Input() closediversity: () => void;\n @Input() showDiversitytable: () => void;\n @Input() diversityobj = {\n richness:0,\n total:0\n }\n diversitySiteName=\"none\"\n constructor(private globals:Globals) { }\n openSiteName(){\n this.diversitySiteName=\"block\"\n }\n disablebuttons(){\n if(this.diversityobj.total==0){\n return true\n }else return false\n }\n basicreport(mapimage,name){\n let pixelRatio = 1;\n this.showDiversitytable()\n let today = new Date();\n $('#DiversityTable' ).DataTable().button().add(0, {\n extend: 'pdfHtml5',\n text: 'Save current page',\n download: \"open\",\n orientation: \"landscape\",\n pageSize: { width: (this.globals.view.width * pixelRatio), height: (this.globals.view.height * pixelRatio)},\n customize: function (doc) {\n doc.styles.tableBodyEven.alignment = 'center';\n doc.styles.tableBodyOdd.alignment = 'center';\n doc.content[1].table.body[0].forEach((cell) => {\n cell.fillColor = '#a4c988'\n })\n doc.styles.title.alignment = \"left\"\n doc.styles.title.fontSize = 10\n doc.content.splice(0, 0, {\n margin: [0, -30, 0, 20],\n alignment: 'right',\n image: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAM0AAAAoCAYAAABdNX5YAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAABjPSURBVHhe7V0JeFTV2dZWW63W1mpbrftS27+bVv+21r+Lyw91rUu1VeuCWkFFW7UqIDuBoCyCELYkZE8IgZCwBhMIZM8kISE72XcSsk32ZZLJ2+89M2eYDJOQiGJL532e89y5537n3HPvfO/5lnMmOQsuuODCuOAijQsujBMu0rjgwjjhIo0LLowTLtK44MI44SKNCy6MEy7SnMFo721BaWM2cuuSUFBvQF1bGQbNA9arLnxauEhzBqKrvx1JZbsQmr4cfilu2Jg0Fz7J8xGY6o6d2V6oaM63SrrwaeAizRkGWpft2RuEKHMQkLIIgYbFCDJ8oApJ4yvk8UtegJzaRGsLF8YLF2nOIAyYTdibH6AsiyaKsxKQukgRp6I5z9rShfHARZozCMXHMuGTNM8pURwLSUOLZBrst7Z2YaxwkeYMwdCQGfuPhMI3ab5TkjiWwNTFyuLUGkusPbgwVrhIc4bANNCHbZlr4C9xjDOSOCu0Snl1ydYeXBgrXKQ5Q9A30IMth1Yq6+GMIM4KY5/smgRrDy6MFS7SnAIaGxtRVlqKivJyVcrLylBVVYUhs9kqcfowaDZhZ85GiVXcnBLEsTCrxriGcZAL44OLNKeA2P378fGKFVjn4aHKmtWrsX7tWsTu24c0gwFJiYnIzcmB+TSRyFDxyUkzZ7rQIm1KX4a2nmZraxfGChdpTgFxBw9i9ccfK6LYF49Vq1T9imXLsCUsDIODg9YWny9auxoQkrZE4pqFToliX7iOk1y2y9rShfHARRorqNhDQ0PqM4/682ggaUiQDevWOS28tiMy8rRZGiL/qEEtYI5EHLpltEZMN3f3d1hbuTAe/NeTJjs7GzHR0dgeEYFdO3Zgn3yOjY1FX1+fVWJk/DuShiBxQtKWKnIwxiGBWHyS56kSXRCEzv42q7QL48V/PGlaW1pQLcF3bU2NrVRXV+PYsWNjshbbRamXL106zKXaFBLyH00aokVctZz6eOwrDkFE9lpEHl6Hg8XhqG4tskpALWxyF4EL48NpIw0VmIqYIzP7J1FRanbfFxODYw0NIyp3V2enut7U2DiskBBtbZaZMj4uzqK469fbyhoq6/btY4olovbsgYeQRSs6g/nwLVvQ33/ylfJ/Z9IQtTVHUVtXC2NHCwYGLeRg4J9RtR9R+f6IECLtyPZCXPE2tRuaGTgXTo7TRpqjdXUIlRmcgfKqlSvVrM6jj7c3coVIzpCeloZ1Ir/Ry2tYWbdmDaI/+UTJJCUkqH5YpwvPd+3cOSZldUaarUKaz8rS7BTyflGkWey+GBMnTERIUKg6z6o5gGCJa5TblmLntiXRbZuPPXl+YqHqlawLI+O0kYbrF2s9PFSxKRYJtGIFDKmpVqnhyEhPx2oHQrCs/OgjxFhJk5qScoLi8nz3KZCGGa/PgjTsKyI8fExW6/PAjBkz8MILL6KrqwuGqih4c+fzCIufTBCQPGGHVqCps87agwvOcNpIUyOxhqe4TlR6m2IJaehKkRzOcCgjQ123V0QWEm/zpk3IysxUrhStl+/GjQj091eF1ivuwAFrL6Pjk717TyBNWGgoent7rRIj42Sk4TjZV6e4mV8E3NzckJpsQG1nobIugQZ3p4SxLyTO7lwfiXdOPmn8t+IE0nR0dGDKlCn405/+hHvvvRd33303Jk6cqM4ff/xxVSZMmIA777xTHR977DE8++yzqKystPbgHJ8laVjYDxXW29MTb/7jH/jtb3+Ln/30p7j15z/HLbfcgtt/9Ss899xz8BYCERnS11tvvaWe49FHH1XPNnXqVHz4wQfw3rDB1i9JQ0KaTCf378dCmi2bN6uZ3hlogbiToLSkRO0s0KW4qAj19afuJkVGbEdrWzMis9cpd8wZSZwVZtiKG8a+U6C7rxWt3fXKtWvpbkLfgCVGNQ90obOvR30+k6BIw4C5u7tbKUq5fIkXXHABzjrrLKWInK0mTZqkznUhSdzd3XHffffZ6jJl1h8NnzVpdGGfVPRZ77+PK773Pdt4+AyREoRzEmCiob29Xbld+vpLL72EuLg4pdT2LiM/+/v6KmVmG7YfCadKmtbWVgT4+Sk5T5HXhZZPu5+ngurKWpQ35sNfXDL7H6OdrNDaxBaFjZ59HBpA7bEMJBQEIdSwVNw6D0RkrcXWjNUIz/RDenUiDuaux46CBHwxEd3nB0WaqooK5dZs27pVuTYXX3wx/ueHP1T+eGpyslLMc88916ZwBoNBNSYefPBBVcf1jtHweZGGhf3SOjxkHQvLrbfeau0FytWiEj715JM455xz8Pc33lAxD107L7EydO/s++M56/kuuHYzUhbuoLiAp0KaNqNRkYak5z11YSIjJibGKvXpYZYZ/3BNvFrsdEaOkQqTA5GH14/oopl6G5Bc4AO/pFnYkOSOpKocdPabVPq6r7cJ2WVh8EmYBa/EWUKaxDOTNMXFxVi5fLn6wj4QC3L5ZZfh3X/+E34+Psr9mSkB5blf+YpNIe2/0Ly8PFxyySXK/RkNR48eVcpNRaIyBgUEIEiI6iexCN0RZyjIz4eflpWiYxYWnjOO4ZipoKy7T1wuPcabb74ZJrsAfN7cufjyl7+MyX/7m5JlO46FRz6nvoe+D60NiRMtMc9IIKnVs1jHw3fFZ9TjYx9Ru3dbpZ2DExPl2EYXHy8vpMhk9VngUFWsshzOyDFS4c8LwjNXq53TjhgytSIuZzW8JUbySVqI2Mpc65XhKCwPw8aEGdhRmHRmkqZU/GjOmFSSj5Ytw/MSC9AiUAGoUHNmzbKR5uyzz8ZeUSTO3jrA9RDl2ykzN+OHoKAghISEwJ9fvrTdKIqdlJSkFhyp5OyTrtRz4uK99OKLeOH555VC+4riUJ6FpGTmi+nmZ//6VyXHwnGxsO0kOXJcVFRnpGFco0FiX3HFFXhG+goODFRjYBseWd6SmIj9Ot7nr089paxSulhCxh98Lj+xDDzyOadNm6b6fPaZZ/CCuLBLJD6ileDnF194AS/K8Q2Jm9bJvfhu9u3bh4EBy1+DycrKwmp556++8oqSmyTvQd1Xnu1pue+SDz9U7lFCQoJ6J7xncHCwek/si+MoLCxUfY2E7s5e5NWlWOOZsbtnlN+V6+PkL9eYUSRk8BHCBKQugH+aL+p7RlgLMzVhT4YbwvPjz2zS0F3SRNGK5UgaumlrRY4zZJi4HnQxCC44vvfeezalnTlzJnaIa/OjH/1Itbnn7rvhIW4IieO+cKFKMGjZ9959VxExIiICV199Na655hqlMKHicv3wBz+w3FfcqsmTJ+MdsYBUbFqN3//ud8q94VgdScN23ClAhf+BfH74oYfU7K+fS5OGEwVJfPPPfqbafelLX8LLEu/wPi+LVWLdE088oeK9TTIejo917HO5TDBvM7nw2GOqjhMALc9zQiLtzv5O4sKoqCj84Q9/sJzLmJk0KZHgn4kI1rHQzX3vnXcUga+Re3zv8suVW5ibm4v777/fJhcu7321vEeOkxZ+rkw4I7mPWZnZqDdWKSLwj2o4kmOkwkxbSvkeay/HMdBbiR1pi+AnffmLy7etIBrdo4Q9JeWbsDUn+gTSDA31ocFYBmP/8Axlf28jqloKUSvXao0V6DIdb9nRVYvKliOoaytVR2OfXaJG3MiGthKpL5BSgtae4f129dSrfuvaKnC0rQzVrUfUeY2xHG3Sj3mwG7Ut+XJeJtcrUGcsRrW8N97BJJa1Ru5XK3WVLWXokXnkBNJohdLFkTRU1ulCDiocFxqbm49vLWcy4Tvf+Y6So6IQjH/0F05l167IIjc3Wz1X7zUKCgowYeJE9ZkLopx9KXPppZdirVi/YFF8xl5U6IkTJtislyNpbrzxRmU1r7/+enXOGZ1WxvH5WDbLLM7rlGM8x3dBWcY8vM/zQgaNN8TyUI6KzHiP72drWJiKp555+mnVLkCe8QbrfZlEIZgNu/DCC1UdJxSC1ve8885TdSQp4zKWpWJlmP1Llv5pmUgUynz3u9+1pcLnz5+v6tie78wZvDy90FDfgLhSiVXH6KIFCCFYjrVXWXs5jub6gwgSsjCp4Ju8AFGlyaNakcF+I5o6W+DIq5amRPjEvYvtRSnD2vf3HkP6kWD4J82GZ+JsRObHotsq0NFehoO5a8UtdMeB8jQbaZqbMxF1WCbx7DCJ3zKRVrIVWzLWIKEiHdoIdnXXIbXAH76J78Mz+SMcPpqH4toYbE5ZgMB0T2TU5qKgKgrByXMlDpuJwAwJGVpqrKRpQ0FFOHwS3RBXmXmcNExzUlF0fGBfHEnDGW6aWAYShtdaWlrYhQKtzbe//W0lt23bNlXHbByJxjoSgKShos+ZPVvVsdBNqZeYhwuNgaJ0tDh0X/i7FLo+lCFpKBcqLgoVbLYo3oeLF9sshyNpKH/TTTfZzi+84ALMl1mZlsnxOQOl7m9iXSj3zW9+U/1GhrsX3nrzTWVN7JVSW4f/ve02hIiLxud5/bXXsFAmAbpnfC8c03XXXqvk+Mzc+kOLcblYD9a9Kf0SR8S9Ou+rX1V1vBfXdGiFmULXrh5J9M7bbysZkoY/fCPo8rGOFm2kJAzJGeQfjH50IiR9ibhdC5wSRReSgQugaRXOM3fl1bvEwnC9ZzF8kt0QW37YemU86ENa/gZ4J84S984Ltd0OLqC5B4nZK1XM5C0x08Gq438xx9RThD0522zWzdiaidDkWfBJ90Vj/3FqFpQGY13c+9hTlIg+a3VfWx62pMyCl8ETjdZQLa8sBF7x7yLg0BaweV3tLiHWTPilbUCV3bjKq/cgoer434qzWBpxFdTvQuwUSRdnpKGl0aQxWt0zglZHkyY6OlrVLVmyRJ1fdeWVNqVyJA0tEC3PT3/yEzzy8MNKeRikUyEZu1CGyjxj+nRFluuuu065MnS39DgdScOZnsr2ta99bVgdJwe6UPbPaE+ar3/965gmz8fxXXXVVSq20OAE8Zc//1nJ3XjDDVi4YIGKWehO0qrxfdDdsyfNk3/5i8rAkQg8v0j6544GbhFiIoFkZj1jI76fX99+O+6/7z5FWo6Nfb46ZYqSueyyy2xpYK6PsY5WcKSF2Hnz5qn1qLLicrSaaoU4S5XFoSWxT0Hzj2zoPyoYXxI54l+oKavahQA70kSXpp1gRU6G7o5CxOVtwZ6sj8SauCGxxuEPewx24FBhKPbkb5aZfza8U5Yhq+GoutTfV47Ywv3o5U1FLj5HvKOEmTKOHHVdo6ujQBHEM2kZ8losnlBXa7bUSX+GDTgqsR5RVrcbfonT4ZvuL66iVJg7cFAI65kwC9sL45QV7O3IR0xBFLrsPGBFmqIjR9Tsaq9IuoxGGiofrQvBwL2iosJGmieffFIpGN2Hu37/e0VKrayOpLn7rrvwuCjBN77xDaVkJADleNSkofKTUPdKbHD++efjfSEQx6bH6UgaKi1dJW2pdPm/O+6Ar4yDym1ra0ca9v1HiX+ouF8VK/CBWDPGRsyisT/GUZSjAnOsd/z61/jWt76liMB34kiaH//4x3js0UcVyX71y19i+rRpKnnBd+Av9+X9KPeb3/xGvS9ayIceeMAWf9EyTn31VSVz0UUXKevxyCOPqHUoxjajLcIuWrQItwsJJz0/CSVFpWp7zL7CTQhO+1CRhIuYlt/eLEJ4lof6ScFoazMtyj2bp0jjJ+0ij8SK3RgfCsv3otjYguraHfBJmI7Q7Eh02odkA0YYCrairL0TeSV+8E6YoSxSVVcvhgaqhDSxYjnFcgj5wlNpjRYhuWG4K2nursaejMXwEqsZXW4hVLeNNJ5oUpwZFFdwA9YenIadRfHos7qBrc0GbFJkXYn8xlJkluxAkXH4zyg+NWn4pfP6NvG394sbxS32tA5UfMpRUW76/vfV51tuvhleogBUKrZxJA2zZ5HiztGV4VqKVhh70lCZuIOZ8QcVmlaElkiP05E018rsT+VkfEGF1PUszE4Ns1J2pGFMw8whrd0DErcwMOd9uJbC41133qnk+Ey0BtxNQCLRVeSk4EgaXqMVpRXhdU10fqal+or1vb4rlnO7vINXJk9W747P40gaZgDXyNhIZn4PXHgeDSTNXTIh3XPPPWoSM7a2q/q2Pgm4ZQYtMWagzJilfi7gLL3siIGeSmxPWwRfsUyBKRLbHApBs/Z/nMKMJmMl2vstrDD31eBAwXY095tkBs/DVsM8eCUvRW7zcRefpEnND0Upl7b6G7Evc7nM/DMRlrMdde2lSCg6qGKNdmM2QsWabEz6EGmtNaqpDT11iD60VEgzS1w0y6J7t8hvSZkLX8MqZNSkIaMkDJvTViG2NFGssB1rh/qRWeRrtchLEVd1YobyU5FmhsyW+sunMtGK8DMDWM6GWgmYLeMszHMG7VQEKpUjaTj7UiFJOhZms6aI8oSJP69Jw0zRCpnNua7D+1GhXhNlYluOxRlpKMN+GRvQ1dLXaP3+KaTj+grH7RjT8Pc1HKN+Liot3UHGF5o0dCVJSio/3x3vRdJrF1SThtZxk8RhlKMM+2Ph+WJRak0aprZJEBKW73SBuFZ0W0lMTRpaNyJUCM1zFiYJRoImDZMWD4j1qquzbMT8ZG8MdkbuhiElHUkJKRiwKvXJYUZRaSg2Jlr2sfkkL0Zq3cjbp5oa4xGc6oGKTou711B/ADtzNiG94gAOVezHrqyV0tcc7C5Ogi2CsJKmqMPSpqujGJHpi8SiLED4YV9EH4m3BOhdJYhImy/1bkioKVeyGqbuSuxMdxvm/lkszRxsNKxBwbESNHYeRXtft7rmiM6mFISIVfKRsZf1nGhLRyUNv2R+aW7z56uVdH5JXKfhYifr7V0cKhm/bG1p3vz735X10Fmps4VsVCq6OFQiBs76iyeBWMfZn8E13ZinZWbkb1GY/qWMzp5R0SlDcjHQp9VjRo0r7w+KYug+rxWlJWE4LpKCcco5drsaSObF7u4IkfGQnI7ZMz0WPhvT19oS/L/M2pRjipoyVHS2nztnDr5/442KoHxGnT17VFwpvit7wrBwbIyDNGmY3KAcyU9y3iku7cN//KN6h3yXlLHPnnErE+uYrWRa3RnsSfOwkFfvZ+Pu51/84hcq/c19hdrFHgvM/U04kPOxBPJzxa1j9mkDCpsbrFetGBpEXX28KJ474muKLBmyoW6kFGxDZUc3zMJRs3kIjccSECKBvK/BC3VMSxGD7UjLD0OJnc/W2CDkk1jKO2kmwvNiYaJxG+qT2Mcb6+OnY+eR4QvBxpY0BEmssjHNG7XdFvJ1G3Os7pkXmkZaW7KivzlNrNhstQ7VYHJIVAgUaZjF4exKpdeFM96K5cuVe/JLUWJ+QbpcL4E4Z8GlEuRTjoUKQB9fy9x2221qJqUVYPpU1zNeoKWy37fGNRvuQOCah7YWnPkZT9AN0nJPSf+0EMw06XUVN3Fx6BrRMl0q1kjLsnBthDM2s2UkD90U++t0cxiA07IxG6br//zEE8r9e1vuc9utt6o6ysyUwt0SPD9frBXvyTG/8frrSqEvESLynb0mBKRFptzVYuFopbQV5btdL++LFomE0vdkbKTfAa0T6zhxsD8mB7TcAnleJiQaGhpw5ZVXqjpady58Ou6mZiLgDonh+NxMCHBXBsG4SNeTUOMhDWESt8lwJFBctAUqReuTslQC9y1ILotGaukO7M1ehwAJ4BOr820W5FjDAUSIi9Vpn2M2tSAqwx3r4mchuiwLg0IGc+9R7D20CmlCcOGVFWaUVERgY8I74qbFWEgjMHVXISZL3LekpchpqsOAdNDb2yDBvFh+qctoqLAlKtqbMxCSNAMbklei1GhxU0dCR0MCAkXWO8UDpZ0nboFSpOHf66JScWbVhQuLnmJJpr72mlIOHnWZ/PLLqo4zsl5bYDr4lSlTbDL8TNLwB110Y6hYnM3ZlkdHWdbp66yjos8Wt1DL0RVzlKOCBcmsTovB8dj3SfmXRYbxBGdwjpEE/ofM2lqGfbANM1uj3YdEpVXlkXWU41HL8cj702JS7vWpU1U/lOM1Lt5ynLSmfLccCyccfU8tZ39PHmlZFy1cqK6tEleRuyuYauZvkwhuXeJuAS42e4lLaJ/+J7hTg7EM14r4LnS6eqVYQ13PBWPHdmODWApjMTJKd2LX4XUIy/gImzNWYGvmesSWHEBdh86qDgrBU7D78Fpxr3yQUpUFlc01d6CwKgZ7sterLTvb5JqhMkmts2zL/BgR2UHIb6m1WClCYo0MiTV2FcbDuolaYbC/BfmVe7A7JwiJpdE4kB+EvYW7UN1+fP3Q2FGCxMJgRGR5yL3WIKpwByranD/zsdZcxOUHyBhENmstogpE1jj8z1wp0jjDqDtc7UC50WS/iD+c54iTjfF0QY/hdI1FP7cuGiPVnxqkL6cJ6CGxAH2i6KIH4rb1y2eLBTHL5175bGkzxGsDPVJnUr2YzSaYnP4DqhHGq/rukTYnul6D5n6YrP2y/aC5z6kcwbEev69VdtiOC+BfRfw2V450O64AAAAASUVORK5CYII='\n });\n doc.content.splice(3, 0, {\n alignment: 'left',\n image: mapimage\n });\n },\n title: `${name}\n Species Diversity Report \n Date: ` + (today.getMonth() + 1) + `/` + today.getDate() + `/` + today.getFullYear() + `\n Recommend Species\n TBD`\n })\n $('#DiversityTable').DataTable().order( [ 6, 'desc' ] ).draw();\n $('#DiversityTable').DataTable().button().trigger();\n this.diversitySiteName=\"none\"\n }\n printfullreport(name) { \n let pixelRatio = 1;\n this.globals.view.takeScreenshot({ width: this.globals.view.width * pixelRatio, height: this.globals.view.height * pixelRatio }).then( (screenshot) => {\n this.basicreport(screenshot.dataUrl,name)\n });\n }\n ngOnInit(): void {\n }\n\n}\n","
\n \n \n
\n
\n
Tree
Count

{{diversityobj.total}}
\n
Species
Richness

{{diversityobj.richness}}
\n
\n
\n
\n \n Report Name: \n \n
","import { Injectable } from '@angular/core';\nimport { HttpClient, HttpErrorResponse, HttpHeaders } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { TokenStorageService } from './token-storage.service';\n\nconst httpOptions = {headers: new HttpHeaders({ 'Content-Type': 'application/json' })}\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class BackendService {\n\n constructor(private http: HttpClient, private token:TokenStorageService) { }\n\n public get(route: string){\n return this.http.get(route).toPromise();\n }\n\n public post(route: string, body: object){\n return this.http.post(route, body).toPromise();\n }\n public postwtoken(route: string, body: object, token){\n return this.http.post(route, body,{headers: new HttpHeaders({ 'x-access-token': token })}).toPromise()\n .catch((err: HttpErrorResponse) => {\n if(err.error.message=='Unauthorized!'){\n this.token.removeToken()\n location.reload()\n }\n return err.error\n });\n }\n \n public login(route, credentials){\n return this.http.post(route, {\n username: credentials.username,\n password: credentials.password\n }, httpOptions).toPromise()\n .catch((err: HttpErrorResponse) => {\n return err.error\n });;\n }\n public register(route, user): Observable {\n return this.http.post(route, {\n user: user.user,\n username: user.username,\n role: user.role,\n email: user.email\n }, httpOptions);\n }\n\n}\n","export class basicmap {\n center\n zoom\n priorityMin\n priorityMax\n constructor(center, zoom, priorityMin, priorityMax) {\n this.center = center\n this.zoom = zoom\n this.priorityMin = priorityMin\n this.priorityMax = priorityMax\n }\n blankmap = {\n basemap: 'topo-vector',\n navigation: {\n mouseWheelZoomEnabled: true\n }\n }\n basicView(map) {\n return {\n container: 'viewDiv',\n map: map,\n center: this.center,\n zoom: this.zoom,\n highlightOptions: {\n color: [204, 204, 0, 1],\n haloColor: '#FFFF33',\n haloOpacity: 1,\n fillOpacity: 1\n }\n }\n }\n // fill for polygons\n defaultSym = {\n type: 'simple-fill',\n color: [51, 51, 204, 0],\n outline: {\n color: [128, 128, 128, 0],\n width: '1px'\n }\n };\n // outline for polygons\n symbol = {\n type: 'simple-line',\n color: [128, 128, 128, 0],\n width: '1px',\n style: 'solid'\n };\n // highlighted polygon for linking table and map\n selectsymbol = {\n type: 'simple-fill',\n color: [204, 204, 0, 1],\n outline: {\n color: '#FFFF33',\n width: '2px'\n }\n };\n // Renderers\n // Selected renderer\n selRenderer = {\n type: 'simple', // autocasts as new SimpleRenderer()\n symbol: this.selectsymbol,\n label: 'Boundary'\n };\n // create labels for the names\n labelClass = {\n symbol: {\n type: 'text',\n color: 'black',\n haloColor: 'white',\n haloSize: 2,\n font: {\n family: 'Noto Serif',\n size: 7,\n weight: 'normal'\n }\n },\n labelPlacement: 'always-horizontal',\n labelExpressionInfo: {\n expression: '$feature.NAME'\n }\n };\n}\n","import { Component, Input, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-toolbar-query-layer',\n templateUrl: './toolbar-query-layer.component.html',\n styleUrls: ['./toolbar-query-layer.component.scss']\n})\nexport class ToolbarQueryLayerComponent implements OnInit {\n\n @Input() layerfields\n @Input() setSummaryPie\n @Input() clearQuery: () => void;\n @Input() addlayer: () => void;\n\n constructor() { }\n\n selectedfields(){\n let selectedarray=[]\n this.layerfields.forEach((field)=>{\n if(field.selected==true){\n selectedarray.push(field)\n }\n })\n return selectedarray\n }\n\n selectedfieldclass(i){\n if(this.layerfields[i].selected==true){\n return \"checked\"\n }else return \"unchecked\"\n }\n\n selectsummaryfield(i){\n this.layerfields[i].selected=!this.layerfields[i].selected\n this.setSummaryPie()\n }\n\n selectsummaryfieldkey(i,event: any){\n if(event.code==\"Enter\"||event.code==\"Space\"){this.layerfields[i].selected=!this.layerfields[i].selected\n this.setSummaryPie()}\n }\n\n ngOnInit(): void {\n }\n\n}\n","
\n
\n Draw Selection\n \n
\n \n
\n
\n\n
\n Select Data Fields\n \n
\n\n
\n Data Summary\n \n \n \n \n \n
{{field.label}}:{{field.sum}}{{field.units}}
\n
\n\n
\n Chart\n \n
\n\n
\n \n \n
\n\n
\n","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\nimport { Globals } from '../globals';\n\ndeclare const $: any;\n\n@Component({\n selector: 'app-prioritize',\n templateUrl: './prioritize.component.html',\n styleUrls: ['./prioritize.component.scss']\n})\nexport class PrioritizeComponent implements OnInit {\n\n Prioritylayersselect=this.globals.constvars.Prioritylayersselect\n weightedFeatures=this.globals.globalvars.weightedFeatures\n @Input() username\n @Input() calculate: () => void;\n @Output() openevent= new EventEmitter()\n @Output() opensaveevent= new EventEmitter()\n @Output() saving= new EventEmitter()\n\n constructor(private globals:Globals) { }\n\n public setAllWeights(priorityLevel) {\n this.globals.globalvars.weightedFeatures.forEach(weightedFeature => {\n weightedFeature.level = priorityLevel;\n });\n this.calculate()\n };\n\n hasProjects(){\n if(this.globals.constvars.hasLogin && this.username!==\"Guest\"){\n return true\n }else{return false}\n }\n\n openload(){ \n this.openevent.emit(null)\n this.saving.emit(false)\n }\n load(projectobj){\n for(let i=0;i\n \n
\n
\n Use this application to adjust weights based on a user's preferred criteria to derive a\n custom priority analysis. Prioritizing efforts will lead to more informed decision-making on the\n best places to plant trees which will gain the most return on investment.\n
\n
\n\n
\n
\n
\n Step 1. Set the criteria to your priority preference.\n
\n
\n
\n
Select Layer
\n \n
\n\n
\n
\n \n \n
\n
\n \n
\n
Set all weights to:
\n
\n \n \n \n
\n
\n \n \n
\n","import { Component, Input, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-toolbar-layer-layers',\n templateUrl: './toolbar-layer-layers.component.html',\n styleUrls: ['./toolbar-layer-layers.component.scss']\n})\nexport class ToolbarLayerLayersComponent implements OnInit {\n\n @Input() currentlayer\n @Input() baseLayersRef\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
\n
\n \n
Labels for Main Layer
\n
\n\n
    \n
  • \n

    Layer

    \n

    Opacity

    \n
  • \n
\n
    \n
  • \n \n \n \n
    \n
  • \n\n
  • \n \n \n \n
    \n
  • \n
\n
","import { Component, OnInit, Input } from '@angular/core';\nimport { Globals } from '../globals';\n\ndeclare let $:any\n\n@Component({\n selector: 'app-observe',\n templateUrl: './observe.component.html',\n styleUrls: ['./observe.component.scss']\n})\nexport class ObserveComponent implements OnInit {\n\n layersselect=this.globals.constvars.layersselect\n @Input() CurrAverage\n @Input() adminDivision\n\n constructor(private globals:Globals) { }\n\n public setfilter(min,max){\n if(min == 'min'){\n min=$('#flat-slider').slider('option','min');\n }\n if(max == 'max'){\n max=$('#flat-slider').slider('option','max');\n }\n $('#flat-slider').slider('values', 0,min);\n $('#flat-slider').slider('values', 1,max);\n };\n\n ngOnInit(): void {\n }\n\n}\n","
\n \n\n
\n
\n Use this application to view the results of the urban tree canopy assessment. Observing the data\n will help ask and answer questions that drive actionable change.\n
\n
\n\n
\n
\n
\n Select a boundary layer to observe the current urban tree canopy percent\n and possible urban tree canopy percent.\n
\n
\n\n
\n
Select Layer
\n \n
\n\n
\n
Set Canopy filter to Areas that are:
\n
\n \n \n \n
\n
\n\n
*{{adminDivision}} Average = {{CurrAverage}}%
\n
\n
","import { Component, OnInit, Input, ViewChild } from '@angular/core';\nimport { Globals } from '../globals';\n\ndeclare let $:any,numeral;\ndeclare const Plotly: any;\n\n@Component({\n selector: 'app-report',\n templateUrl: './report.component.html',\n styleUrls: ['./report.component.scss']\n})\nexport class ReportComponent implements OnInit {\n \n benefitcardinfo\n @Input() annualplant;\n isUK = JSON.parse(window.sessionStorage.getItem(\"isUK\"));\n \n @ViewChild('overall') private overall;\n @ViewChild('Air') private Air;\n @ViewChild('Carbon') private Carbon;\n @ViewChild('Storm') private Storm;\n\n private treegaugeimg;\n private percentbarimg;\n private acrebarimg;\n\n constructor(private globals:Globals) { \n this.benefitcardinfo=this.globals.globalvars.benefitcardinfo;\n }\n topFunction() {\n document.body.scrollTop = 0;\n document.getElementById(\"tab-box\").scrollTop = 0\n }\n getgraphicreport(){\n let targetSliderValue = $(\"#targetSlider\").slider('value');\n let increaseSliderValue = $(\"#increaseSlider\").slider('value');\n let averageSliderValue = (Number($('#SMaverageSlider').slider('value'))*($('#sizeDistValmin').val()/100)+(Number($('#MEDaverageSlider').slider('value'))*$('#sizeDistValmd').val()/100)+(Number($('#LGaverageSlider').slider('value'))*($('#sizeDistValmax').val()/100)));\n let mortalitySliderValue = $('#mortalitySlider').slider('value');\n let costSliderValue = (Number($('#AveCost').val())+Number($('#AveManCost').val()));\n let goalValue = $('#goal').val();\n let time = $(\"#TimeSlider\").slider('value')\n let today = new Date()\n let frame:any = document.getElementById(\"theFrame\");\n let goal \n if(goalValue==\"increaseSliderDiv\"){\n goal=\"Increase Canopy by \"+increaseSliderValue+\"% in \"+time+\" year(s)\"\n }else{\n goal=\"Target Canopy of \"+targetSliderValue+\"% in \"+time+\" year(s)\"\n }\n let doc = document.implementation.createHTMLDocument(\"New Document\");\n // let gauge = doc.createElement(\"img\");\n // gauge.src = picurl\n // let MCtitle = doc.createElement(\"div\")\n // MCtitle.classList=\"sectionName\"\n // MCtitle.innerHTML=\"Modeled Canopy\"\n let report = doc.createElement(\"div\")\n report.innerHTML=this.isUK == true?\n `\n
\n Modeled Report
\n Date: `+(today.getMonth()+1)+`/`+today.getDate()+`/`+today.getFullYear()+`
\n Goal: `+goal+`
Parameters: Cost: £`+costSliderValue+`; Tree Crown: `+averageSliderValue+` m; Mortality Rate: `+mortalitySliderValue+`%\n
\n
\n
\n
Modeled Canopy
\n
Trees to Plant
\n \n
Trees to Plant Annually:\n
`+Math.round(this.annualplant)+`
\n
\n
Tree Canopy Percent
\n \n
\n
Current Percent:\n
`+Math.round(this.globals.globalvars.CurrentTreePercent)+`%
\n
\n
Modeled Percent:\n
`+Math.round(this.globals.globalvars.ModeledTreePercentwTime)+`%
\n
\n
\n
Trees Canopy Hectares
\n \n
\n
Current Hectares:\n
`+Math.round(this.globals.globalvars.CurrentTreeAcres).toLocaleString()+`
\n
\n
Modeled Hectares:\n
`+Math.round(this.globals.globalvars.ModeledTreeAcresqwTime).toLocaleString()+`
\n
\n
\n
\n
\n
Modeled Benefits
\n
\n
Overall Benefits
\n
\n
\n
\n
\n
\n
\n
\n
\n
Air Benefits
\n
\n
\n
\n
\n
\n
\n
\n
\n
Carbon Benefits\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
Stormwater Benefits\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n `:\n `\n
\n Modeled Report
\n Date: `+(today.getMonth()+1)+`/`+today.getDate()+`/`+today.getFullYear()+`
\n Goal: `+goal+`
Parameters: Cost: $`+costSliderValue+`; Tree Crown: `+averageSliderValue+` ft; Mortality Rate: `+mortalitySliderValue+`%\n
\n
\n
\n
Modeled Canopy
\n
Trees to Plant
\n \n
Trees to Plant Annually:\n
`+Math.round(this.annualplant)+`
\n
\n
Tree Canopy Percent
\n \n
\n
Current Percent:\n
`+Math.round(this.globals.globalvars.CurrentTreePercent)+`%
\n
\n
Modeled Percent:\n
`+Math.round(this.globals.globalvars.ModeledTreePercentwTime)+`%
\n
\n
\n
Trees Canopy Acres
\n \n
\n
Current Acres:\n
`+Math.round(this.globals.globalvars.CurrentTreeAcres).toLocaleString()+`
\n
\n
Modeled Acres:\n
`+Math.round(this.globals.globalvars.ModeledTreeAcresqwTime).toLocaleString()+`
\n
\n
\n
\n
\n
Modeled Benefits
\n
\n
Overall Benefits
\n
\n
\n
\n
\n
\n
\n
\n
\n
Air Benefits
\n
\n
\n
\n
\n
\n
\n
\n
\n
Carbon Benefits\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
Stormwater Benefits\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n `\n let style = doc.createElement(\"style\")\n style.innerHTML=`\n @media print{@page {size: landscape}}\n #leftgraphics,#rightgraphics{\n display:flex;\n flex-direction: column;\n justify-content: center;\n align-items:center\n }\n #rightgraphics{\n margin-top:-3.5%;\n }\n .rightarrow {\n margin: auto;\n font-size: 30px;\n }\n #header{\n text-align:center;\n }\n .sectionName {\n width: 90%;\n margin: auto;\n margin-top: 5px;\n margin-bottom: 5px;\n padding: 7px;\n text-align: center;\n border: 2px solid #7cb054;\n color: #7cb054;\n font-size: 15px;\n }\n .graphics{\n display:grid;\n grid-template-columns: 1fr 1fr;\n }\n .benefitSectionContent{\n display: flex;\n flex-direction: row;\n justify-content: center;\n align-items:center}\n .benefitcard{\n width: 150px; /* width of container */\n height: 120px; /* height of container */\n overflow: hidden;\n } \n .curr{\n margin: 5px 0 0 90px;\n }\n .mod{\n margin: 5px 90px 0 0; \n }\n .benefitcard>img{\n margin: -140px -180px -200px -180px;\n }\n .graphtitle {\n width: 70%;\n margin: auto;\n margin-bottom: 10px;\n padding: 5px;\n border-bottom: 1px solid lightgrey;\n border-top: 1px solid lightgrey;\n text-align: center;\n margin-top: 5px;\n }\n \n .graph {\n margin: auto;\n margin-bottom: 20px;\n }\n \n .count {\n font-size: calc(6.5px + (6.5 - 0) * ((100vw - 300px) / (1600 - 300)));\n text-align: center;\n display: flex;\n flex-direction: row;\n justify-content: center;\n margin-top: 10px;\n }\n .annualnum{\n font-size: calc(6.5px + (6.5 - 0) * ((100vw - 300px) / (1600 - 300)));\n width: auto;\n margin: auto;\n padding: 5px;\n }\n .currentnum {\n width: auto;\n margin: 0% 10% 0% 5%;\n padding: 5px;\n border-top: 4px solid #408000;\n }\n \n .modelednum {\n width: auto;\n margin: 0% 5% 0% 10%;\n padding: 5px;\n border-top: 4px solid #a4c988;\n }\n \n .num {\n text-align: center;\n }\n .benefitSectionName{\n width: 90%;\n margin: auto;\n padding: 5px;\n text-align: center;\n margin-top: 5px;\n }\n #OverallBenefitsContenttitle {\n background: linear-gradient(to right, white 0%, #a4c988 30%, #a4c988 70%, white 100%);\n color: white;\n }\n \n #AirBenefitsContenttitle {\n background: linear-gradient(to right, white 0%, #88c9ad 30%, #88c9ad 70%, white 100%);\n color: white;\n }\n \n #CarbonBenefitsContenttitle {\n background: linear-gradient(to right, white 0%, #c99b88 30%, #c99b88 70%, white 100%);\n color: white;\n }\n \n #StormBenefitsContenttitle {\n background: linear-gradient(to right, white 0%, #c988a4 30%, #c988a4 70%, white 100%);\n color: white;\n }`\n let font= doc.createElement(\"link\")\n font.href = \"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.13.0/css/all.min.css\"\n font.rel = \"stylesheet\"\n try {\n doc.head.appendChild(font)\n doc.head.appendChild(style)\n doc.body.appendChild(report);\n } catch(e) {\n console.log(e);\n }\n \n \n // Copy the new HTML document into the frame\n \n let destDocument = frame.contentDocument;\n let srcNode = doc.documentElement;\n let newNode = destDocument.importNode(srcNode, true);\n \n destDocument.replaceChild(newNode, destDocument.documentElement);\n function printFrame() {\n var frm:any = document.getElementById(\"theFrame\");\n frm = frm.contentWindow\n frm.focus();// focus on contentWindow is needed on some ie versions\n frm.print();\n return false;\n }\n setTimeout(printFrame,0)\n }\n UpdateGraphandTable() {\n let config = {\n responsive: true,\n displayModeBar: false\n }\n //TreeGauge\n var TreeGauge = [{\n domain: {\n x: [0, 1],\n y: [0, 1]\n },\n value: this.globals.globalvars.TotalModeledTrees,\n type: \"indicator\",\n mode: \"gauge+number\",\n number: {\n valueformat: \",.3s\"\n },\n gauge: {\n axis: {\n tickfont: {\n size: 16\n }\n },\n bar: {\n color: \"#7cb054\"\n }\n }\n }];\n \n var GuageLayout = {\n font: {\n family: \"Noto Serif\",\n size: 16,\n color: \"darkgrey\"\n },\n margin: {\n t: 30,\n b: 10,\n r: 30,\n l: 30\n }\n };\n Plotly.newPlot('TreeGauge', TreeGauge, GuageLayout, config).then((gd)=>{\n Plotly.toImage(gd,{height:200,width:300})\n .then((url)=>{\n this.treegaugeimg = url\n return Plotly.toImage(gd,{format:'svg',height:200,width:300});\n })\n })\n //PercentBar\n var CurrentUTCP = {\n y: [''],\n x: [Math.round(this.globals.globalvars.CurrentTreePercent)],\n name: '',\n type: 'bar',\n text: Math.round(this.globals.globalvars.CurrentTreePercent),\n hoverinfo: 'none',\n orientation: 'h',\n marker: {\n color: \"#408000\"\n }\n };\n \n var ModeledUTCP = {\n y: [''],\n x: [Math.round(this.globals.globalvars.ModeledTreePercentwTime) - Math.round(this.globals.globalvars.CurrentTreePercent)],\n name: '',\n type: 'bar',\n text: Math.round(this.globals.globalvars.ModeledTreePercentwTime),\n hoverinfo: 'none',\n orientation: 'h',\n marker: {\n color: \"#a4c988\"\n }\n };\n \n var ModeledPer = [CurrentUTCP, ModeledUTCP];\n \n var PerUTC = {\n font: {\n family: \"Noto Serif\",\n size: 16,\n color: \"darkgrey\"\n },\n barmode: 'stack',\n margin: {\n t: 20,\n b: 20,\n r: 15,\n l: 10\n },\n showlegend: false,\n xaxis: {\n range: [0, 100],\n showticklabels: true\n }\n };\n \n Plotly.newPlot('PercentBar', ModeledPer, PerUTC, config).then((gd)=>{\n Plotly.toImage(gd,{height:100,width:300})\n .then((url)=>{\n this.percentbarimg = url\n return Plotly.toImage(gd,{format:'svg',height:100,width:300});\n })\n })\n //AcresBar\n var CurrentUTCA = {\n y: [''],\n x: [Math.round(this.globals.globalvars.CurrentTreeAcres)],\n name: '',\n type: 'bar',\n text: numeral(Math.round(this.globals.globalvars.CurrentTreeAcres)).format('0,0'),\n hoverinfo: 'none',\n orientation: 'h',\n marker: {\n color: \"#408000\"\n }\n };\n \n var ModeledUTCA = {\n y: [''],\n x: [Math.round(this.globals.globalvars.ModeledTreeAcresqwTime) - Math.round(this.globals.globalvars.CurrentTreeAcres)],\n name: '',\n type: 'bar',\n text: numeral(Math.round(this.globals.globalvars.ModeledTreeAcresqwTime)).format('0,0'),\n hoverinfo: 'none',\n orientation: 'h',\n marker: {\n color: \"#a4c988\"\n }\n };\n \n var ModeledAcres = [CurrentUTCA, ModeledUTCA];\n //add buffer to graph x axis\n var xMax = this.globals.globalvars.ModeledTreeAcresqwTime + (this.globals.globalvars.ModeledTreeAcresqwTime * .2)\n \n var AcreUTC = {\n font: {\n family: \"Noto Serif\",\n size: 16,\n color: \"darkgrey\"\n },\n barmode: 'stack',\n margin: {\n t: 20,\n b: 20,\n r: 15,\n l: 10\n },\n showlegend: false,\n xaxis: {\n range: [0, xMax],\n showticklabels: true\n }\n };\n \n Plotly.newPlot('AcreBar', ModeledAcres, AcreUTC, config).then((gd)=>{\n Plotly.toImage(gd,{height:100,width:300})\n .then((url)=>{\n this.acrebarimg = url\n return Plotly.toImage(gd,{format:'svg',height:100,width:300});\n })\n });\n this.benefitcardinfo=this.globals.globalvars.benefitcardinfo;\n }\n \n \n ngOnInit(): void {\n }\n\n}\n","
\n \n\n\n
\n
\n Use this application to view the results and export the projected data into spreadsheets for\n additional analysis. Tree counts, benefits, and cost estimates are modeled using inputs\n specified in the Plant Tab.\n
\n
\n\n
\n
\n
\n Modeled Canopy\n
\n\n
\n\n
Trees to Plant
\n\n
\n
\n Trees to Plant Annually:\n
\n
\n\n
Tree Canopy Percent
\n
\n
\n
Current Percent:\n
\n
\n
Modeled Percent:\n
\n
\n
\n\n
Trees Canopy {{isUK ? 'Hectares' : 'Acres'}}
\n
\n
\n
Current {{isUK ? 'Hectares' : 'Acres'}}:\n
\n
\n
Modeled {{isUK ? 'Hectares' : 'Acres'}}:\n
\n
\n
\n
\n
\n\n
\n
\n Modeled Benefits\n
\n\n \n \n \n \n\n
\n \n
\n
\n
\n
","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\nimport { ProjectService } from 'src/app/services/project.service';\n\n@Component({\n selector: 'app-user-settings-admin-edit-user',\n templateUrl: './user-settings-admin-edit-user.component.html',\n styleUrls: ['./user-settings-admin-edit-user.component.scss']\n})\nexport class UserSettingsAdminEditUserComponent implements OnInit {\n @Output() closeevent= new EventEmitter()\n @Input() user\n deletepopup=false\n sentemail=\"Reset Password\"\n emaildisable=false\n Profilebtntext=\"Update\"\n Profilebtncolor=\"#a4c988\"\n usernameInUse=false\n edituser=new FormGroup({\n user:new FormControl('',Validators.required),\n username:new FormControl('',Validators.required),\n role:new FormControl('',Validators.required),\n email:new FormControl('',[Validators.required,Validators.email])\n })\n\n constructor(private project:ProjectService) { }\n\n async sendforgetpass(username){\n let emailsent:any= await this.project.sendpasswordemail({\"username\":username})\n if(emailsent.success){\n this.sentemail=\"Email Sent\"\n this.emaildisable=true\n }\n }\n\n closepopup(){\n this.closeevent.emit()\n }\n opendeletepopup(){\n this.deletepopup=true\n }\n closadeletepopup(){\n this.deletepopup=false\n }\n confirmdelete(userid){\n this.project.deleteUser({userId:userid})\n this.deletepopup=false\n this.closeevent.emit()\n }\n async updateUser(userid){\n if(this.edituser.valid){\n let updateUser= await this.project.updateeUser({userId:userid,userconfig:this.edituser.value})\n if(updateUser.message=='username in use'){\n this.usernameInUse=true\n this.edituser.controls.username.setErrors({'incorrect': true})\n this.Profilebtntext=\"Error\"\n this.Profilebtncolor=\"rgba(206, 11, 11, 0.685)\"\n setTimeout(()=>{\n this.Profilebtntext=\"Update\"\n this.Profilebtncolor=\"#a4c988\"\n },5000)\n }else{\n this.usernameInUse=false\n this.Profilebtntext=\"Saved\"\n this.Profilebtncolor=\"grey\"\n setTimeout(()=>{\n this.closeevent.emit()\n },1000)\n }\n }else{\n this.Profilebtntext=\"Error\"\n this.Profilebtncolor=\"rgba(206, 11, 11, 0.685)\"\n setTimeout(()=>{\n this.Profilebtntext=\"Update\"\n this.Profilebtncolor=\"#a4c988\"\n },5000)\n }\n }\n async reactivate(){\n await this.project.reactivateUser({userId:this.user._id})\n this.closeevent.emit()\n }\n updateProfile() { \n this.edituser.patchValue({\n user: this.user.user,\n username:this.user.username,\n role:this.user.role,\n email:this.user.email\n });\n }\n ngOnInit(): void {\n this.updateProfile()\n }\n}\n","
Edit User
\n
\n
\n \n \n \n \n \n \n \n
\n
\n \n \n
\n
\n
\n
\n
Are you sure you want to delete {{user.username}}
\n
\n \n \n
\n
\n
","import { Component, OnInit, Input } from '@angular/core';\n\n@Component({\n selector: 'app-toolbar-query-vacantsite',\n templateUrl: './toolbar-query-vacantsite.component.html',\n styleUrls: ['./toolbar-query-vacantsite.component.scss']\n})\nexport class ToolbarQueryVacantsiteComponent implements OnInit {\n\n @Input() clearQuery: () => void; \n @Input() copyids: () => void;\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
\n \n
\n \n \n
\n
\n \n \n
\n
\n","import { AfterViewInit, Component, ElementRef, Input, ViewChild } from '@angular/core';\n\ndeclare const Plotly: any;\n\n//const colors = ['green', 'blue', 'orange', 'pink'];\n\n@Component({\n selector: 'app-benefits-card',\n templateUrl: './benefits-card.component.html',\n styleUrls: ['./benefits-card.component.scss']\n})\nexport class BenefitsCardComponent implements AfterViewInit {\n\n @Input() title: string;\n @Input() color: string;\n private imgurlcurr;\n private imgurlmod;\n public isUK = JSON.parse(window.sessionStorage.getItem(\"isUK\"));\n @ViewChild('currentStatistics') currentStatistics: ElementRef;\n @ViewChild('modelStatistics') modelStatistics: ElementRef;\n\n // overall config for responsive graphs with no display bar\n // to be used at the config parameter for Plotly.newPlot()\n private config = {\n responsive: true,\n displayModeBar: false,\n locales: this.isUK == true? {\n 'en': {\n 'format': {'currency': [\"£\", \"\"], 'symbol': [\"\",\" B\"], 'specifier': \"$,.1f\"}}\n }:\n {\n 'en': {\n 'format': {'currency': [\"$\", \"\"], 'symbol': [\"\",\" B\"], 'specifier': \"$,.1f\"}}\n }\n \n };\n\n // to be used at the layout parameter for Plotly.newPlot()\n private layout = {\n font: {\n family: 'Noto Serif',\n size: 11,\n color: 'darkgrey'\n },\n margin: {\n t: 55,\n r: 15,\n l: 15,\n b: 0\n }\n };\n\n private _totalCurrent: number;\n @Input()\n get totalCurrent(): number { return this._totalCurrent }\n set totalCurrent(totalCurrent: number) {\n this._totalCurrent = totalCurrent;\n this.plotCurrentBenefits();\n this.plotModeledBenefits();\n }\n\n private _totalProjected: number;\n @Input()\n get totalProjected(): number { return this._totalProjected }\n set totalProjected(totalProjected: number) {\n this._totalProjected = totalProjected;\n this.plotModeledBenefits();\n }\n\n constructor() { }\n\n private plotCurrentBenefits(): void { // TODO remove url?\n if (this.currentStatistics) {\n let benefitsCurrent = this.getCurrentConfig(this._totalCurrent, this.title);\n Plotly.newPlot(this.currentStatistics.nativeElement, benefitsCurrent, this.layout, this.config).then((gd) => {\n Plotly.toImage(gd, { height: 400, width: 500 })\n .then((url) => {\n this.imgurlcurr = url\n return Plotly.toImage(gd, { format: 'svg', height: 400, width: 500 });\n })\n });\n }\n }\n\n private plotModeledBenefits(): void {\n if (this.modelStatistics) {\n let benefitsModeled = this.getModeledConfig(this._totalCurrent, this._totalProjected, this.title);\n Plotly.newPlot(this.modelStatistics.nativeElement, benefitsModeled, this.layout, this.config).then((gd) => {\n Plotly.toImage(gd, { height: 400, width: 500 })\n .then((url) => {\n this.imgurlmod = url\n return Plotly.toImage(gd, { format: 'svg', height: 400, width: 500 });\n })\n });\n }\n }\n\n ngAfterViewInit(): void {\n this.plotCurrentBenefits();\n this.plotModeledBenefits();\n }\n\n /**\n * returns an array to be used as the \"data\" parameter for Plotly.newPlot for the currentBenefits plot\n * @param totalCurrent to be used as the \"value\" for the plot\n * @param title the name to be displayed with the plot\n */\n getCurrentConfig(totalCurrent, title) {\n return [{\n type: 'indicator',\n mode: 'number+delta',\n number: {\n font: {\n size: 25\n },\n valueformat: '$,.3s'\n },\n value: totalCurrent,\n title: {\n text: `Current
${title}`,\n font: {\n family: 'Noto Serif',\n size: 20,\n color: 'darkgrey'\n },\n },\n domain: {\n x: [0, 1],\n y: [0, 1]\n }\n }];\n }\n\n /**\n * returns an array to be used as the \"data\" parameter for Plotly.newPlot\n * @param totalCurrent to be used as the delta.reference for the plot\n * @param totalProjected to be used as the \"value\" for the plot\n * @param title the name to be displayed with the plot\n */\n getModeledConfig(totalCurrent, totalProjected, title) {\n return [{\n type: 'indicator',\n mode: 'number+delta',\n number: {\n font: {\n size: 25\n },\n valueformat: '$,.3s'\n },\n value: totalProjected,\n title: {\n text: `Modeled
${title}`,\n font: {\n family: 'Noto Serif',\n size: 20,\n color: 'darkgrey'\n },\n },\n delta: {\n reference: totalCurrent,\n relative: false,\n increasing: {\n color: '#a4c988'\n },\n font: {\n size: 15\n },\n valueformat: '$,.3s'\n },\n domain: {\n x: [0, 1],\n y: [0, 1]\n }\n }];\n }\n}\n","
\n\t
\n\t\t{{title}} Benefits\n\t
\n\t
\n\t\t
\n\t\t
\n\t\t\t\n\t\t
\n\t\t
\n\t
\n
","import { Injectable } from \"@angular/core\";\nimport { Globals } from \"../globals\";\nimport { MapFunctions } from \"./map.functions\";\ndeclare let $:any;\n@Injectable()\nexport class PopupCharts{\n constructor(private mapFunctions:MapFunctions, private globals:Globals){}\n getpopupcharts(e,query,chartpopuplayers,Priorityattributes,basiclayers,setContentInfo){\n setTimeout(() => { \n if (document.getElementById(\"prioritize\").style.display == \"block\") {\n let count = Priorityattributes[$(\"#Prioritylayer\").val()].length\n if (this.globals.advquery == true) { count = this.globals.stickypolynames.length }\n this.globals.view.popup.title = this.globals.view.popup.features[0].attributes.NAME + \" (Rank \" + this.mapFunctions.findrank(this.globals.view.popup.features[0].attributes) + \" of \"+ count + \")\"\n \n for(let layerview of this.globals.view.layerViews._items){\n this.globals.view.popup.content = setContentInfo(this.globals.view.popup.features[0].attributes);\n if(layerview.layer.popupEnabled){\n layerview.layer.popupTemplate.content = setContentInfo(this.globals.view.popup.features[0].attributes);\n }\n }\n };\n }, 500);\n \n return chartpopuplayers\n}\ncolorWeights(wieghtID){\n if (wieghtID==1){\n return \"#a4c988\"\n }else if (wieghtID==2){\n return \"#c99b88\"\n }else if (wieghtID==3){\n return \"#c988a4\"\n }else{return 0}\n }\n piechartobj(data){\n return {\n type: 'bar',\n data,\n options: {\n layout: {\n padding: {\n left: 0,\n right: 0,\n top: 10,\n bottom: 0\n }\n },\n legend: {\n display: false,\n },\n tooltips: {\n enabled: false\n },\n scales: {\n yAxes: [{\n ticks: {\n display: false\n }\n }],\n xAxes: [{\n ticks: {\n display: true,\n autoSkip: false\n }\n }]\n }\n }\n }\n }\n}\n\n","import { Injectable } from \"@angular/core\";\nimport { Globals } from \"./globals\";\n\ndeclare const $: any\n@Injectable()\nexport class Calculations {\n constructor(private globals:Globals){}\n findArray(ranks?) {\n let array = []\n let rankings = []\n for (let x in this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()]) {\n if (this.globals.stickypolynames !== undefined && this.globals.stickypolynames.length > 0 && this.globals.stickypolynames.includes(this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][x]['NAME'])) {\n let factors = [];\n let weights = [];\n let addition = 0;\n let division = 0;\n for (let i = 0; i < this.globals.globalvars.weightedFeatures.length; i++) {\n factors.push(this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][x][this.globals.globalvars.weightedFeatures[i].fieldName]);\n weights.push(this.addedWeights(this.globals.globalvars.weightedFeatures[i].level));\n addition = addition + (factors[i] * weights[i]);\n division = division + weights[i];\n }\n let result = addition / division \n if(division==0){result=0}\n this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][x].result = result\n array.push(result)\n rankings.push({ NAME: this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][x]['NAME'], array: result })\n } else if (this.globals.stickypolynames == undefined || this.globals.stickypolynames.length == 0) {\n let factors = [];\n let weights = [];\n let addition = 0;\n let division = 0;\n for (let i = 0; i < this.globals.globalvars.weightedFeatures.length; i++) {\n factors.push(this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][x][this.globals.globalvars.weightedFeatures[i].fieldName]);\n weights.push(this.addedWeights(this.globals.globalvars.weightedFeatures[i].level));\n addition = addition + (factors[i] * weights[i]);\n division = division + weights[i];\n }\n let result = addition / division\n if(division==0){result=0}\n this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][x].result = result\n array.push(result)\n rankings.push({ NAME: this.globals.mapvars.Priorityattributes[$(\"#Prioritylayer\").val()][x]['NAME'], array: result })\n }\n }\n rankings.sort((a, b) => (a.array < b.array) ? 1 : -1)\n for (let x = 0; x < rankings.length; x++) {\n rankings[x].order = x + 1\n }\n array = array.sort(function (a, b) {\n return b - a\n })\n if (ranks == \"ranks\") {\n return rankings\n }\n return array\n }\n addrankings(filteredlayer) {\n filteredlayer.forEach(filteredelement => {\n this.findArray(\"ranks\").forEach(rankelement => {\n if (filteredelement.NAME == rankelement.NAME) {\n filteredelement.rank = rankelement.order\n }\n })\n })\n }\n addedWeights(wieghtID) {\n if (wieghtID == 1) {\n return 2\n } else if (wieghtID == 2) {\n return 6\n } else if (wieghtID == 3) {\n return 10\n } else { return 0 }\n }\n \n}\n","import { Component, EventEmitter, Input, OnInit, Output, OnChanges } from '@angular/core';\nimport { Globals } from '../globals';\nimport { TokenStorageService } from '../services/token-storage.service';\n\n@Component({\n selector: 'app-top-bar',\n templateUrl: './top-bar.component.html',\n styleUrls: ['./top-bar.component.scss']\n})\nexport class TopBarComponent implements OnInit, OnChanges {\n @Input() TKURL\n @Input() city\n\n @Input() hasLogin\n @Input() username\n @Input() userloggedin\n\n @Output() signinpopupevent = new EventEmitter()\n @Output() settingopenevent = new EventEmitter()\n\n public showSupportModal = false;\n public canopySystemName = '';\n\n constructor(private token:TokenStorageService, private globals:Globals) { }\n\n hasProjects(){\n if(this.hasLogin && this.username!==\"Guest\"){\n return true\n }else{return false}\n }\n hasloginbtn(){\n if(this.hasLogin && this.username==\"Guest\"){\n return true\n }else{return false}\n }\n haslogoutbtn(){\n if(this.hasLogin && this.username!==\"Guest\" && this.userloggedin){\n return true\n }else{return false}\n }\n logout(){\n this.token.removeToken()\n this.signinpopupevent.emit()\n }\n signin(){\n this.signinpopupevent.emit()\n }\n settingsopen(){\n this.settingopenevent.emit()\n }\n ngOnInit(): void {\n }\n ngOnChanges(changes): void {\n if (changes.city && this.city) {\n this.canopySystemName = `TreeKeeper Canopy - ${changes.city.currentValue}`;\n }\n }\n openSupportModal(){\n this.showSupportModal = true;\n }\n closeSupportModal() {\n this.showSupportModal = false;\n }\n}\n","
\n
\n
CANOPY
\n
\n
Welcome {{username}} to TreeKeeper Canopy
\n
\n \n \n \n \n
\n
\n
\n
\n
{{city}}
\n \n
","import { Component, Input, OnInit, Output, EventEmitter } from '@angular/core';\n\n@Component({\n selector: 'app-user-settings',\n templateUrl: './user-settings.component.html',\n styleUrls: ['./user-settings.component.scss']\n})\nexport class UserSettingsComponent implements OnInit {\n\n @Output() closeevent = new EventEmitter()\n @Input() username\n @Input() admin\n\n securitystyle=\"block\"\n adminstyle=\"none\"\n\n opensecuritysettings(ele,ele2){\n this.adminstyle=\"none\"\n this.securitystyle=\"block\" \n if(!ele.classList.value.includes(\"btnactive\")){\n ele.classList.add(\"btnactive\")\n document.getElementById(ele2).classList.remove(\"btnactive\")\n }\n }\n openadminsettings(ele,ele2){\n this.adminstyle=\"block\"\n this.securitystyle=\"none\"\n if(!ele.classList.value.includes(\"btnactive\")){\n ele.classList.add(\"btnactive\")\n ele2.classList.remove(\"btnactive\")\n }\n }\n \n constructor() { }\n\n close(){\n this.closeevent.emit(null)\n }\n\n\n\n ngOnInit(): void {\n }\n\n}\n","

Settings

\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n\n
\n
\n\n
","import { Component, OnInit, Input } from '@angular/core';\n\n@Component({\n selector: 'app-toolbar-layer',\n templateUrl: './toolbar-layer.component.html',\n styleUrls: ['./toolbar-layer.component.scss']\n})\nexport class ToolbarLayerComponent implements OnInit {\n \n @Input() currentlayer\n @Input() baseLayersRef\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
\n \n \n
\n","import { Globals } from \"src/app/globals\";\n\ndeclare let $:any,numeral;\n\nexport class quickCalculations{\n area\n public isUK = JSON.parse(window.sessionStorage.getItem(\"isUK\"));\n constructor(area,private globals:Globals){\n this.area=area\n }\n sum = (a, b) => a + b;\n getProjectedCanopy(){\n let addedTrees=Number($('#planned-trees').val())\n let weightedCrownDiameter = (Number($('#QuickCalc-SMaverageSlider').slider('value'))*\n ($('#QuickCalc-sizeDistValmin').val()/100)+\n (Number($('#QuickCalc-MEDaverageSlider').slider('value'))*\n $('#QuickCalc-sizeDistValmd').val()/100)+\n (Number($('#QuickCalc-LGaverageSlider').slider('value'))*\n ($('#QuickCalc-sizeDistValmax').val()/100)));\n let projectedYears = Number($(\"#QuickCalc-TimeSlider\").slider('value'))\n let natMort = ((Number($(\"#QuickCalc-mortalitySlider\").slider('value'))/100))/* *timeslider */\n let growthft = weightedCrownDiameter\n /*if(timeslider<2){\n growthft = averageSliderValue\n }else if(timeslider<30){\n growthft = averageSliderValue+1\n }else{\n growthft = averageSliderValue+1+(timeslider-29)\n }*/\n\n //convert trees to acres\n // add acres to current tree acres\n\n //let addedTreesplusmort=addedTrees\n //let deadtrees=addedTrees*(natMort)\n //let ft = growthft\n let totalSurvivalTrees=addedTrees*Math.pow((1-natMort),(projectedYears))\n //let totalSurvivalTrees=addedTrees*(1-natMort*projectedYears)\n console.log(totalSurvivalTrees)\n let sqftPerTree = Math.PI*Math.pow(growthft/2,2)\n let newAcres = this.isUK==true? (sqftPerTree/10000)*totalSurvivalTrees : (sqftPerTree/43560)*totalSurvivalTrees\n this.area.addedacres = newAcres\n\n //QuickCalc Dashboard Benefits - Hardcoded Values may Change\n let totalBenefits=7500*newAcres\n let AQBenefits = totalBenefits *(.01)\n let CarbonBenefits = totalBenefits *(.68)\n let SWBenefits = totalBenefits *(.31)\n\n this.area.allBenefits = totalBenefits\n this.area.aqBenefits = AQBenefits\n this.area.carbBenefits = CarbonBenefits\n this.area.swBenefits = SWBenefits\n }\n getTreeBenefits(){\n this.getProjectedCanopy()\n let tempBenefitObj \n let OverallarrayC \n let airbenearrayC \n let carbonarrayC \n let stormarrayC \n let OverallarrayP \n let airbenearrayP \n let carbonarrayP \n let stormarrayP \n let CObenearrayP\n let NO2benearrayP\n let O3benearrayP\n let SO2benearrayP\n let PM10benearrayP\n let stormamountarrayP \n let airamountbenearrayP \n let COamountbenearrayP\n let NO2amountbenearrayP\n let O3amountbenearrayP\n let SO2amountbenearrayP\n let PM10amountbenearrayP\n let seqbenearrayP\n let stbenearrayP\n let carbonamountarrayP \n let seqamountbenearrayP\n let stamountbenearrayP\n let CObenearrayC\n let NO2benearrayC\n let O3benearrayC\n let SO2benearrayC\n let PM10benearrayC\n let stormamountarrayC \n let airamountbenearrayC \n let COamountbenearrayC\n let NO2amountbenearrayC\n let O3amountbenearrayC\n let SO2amountbenearrayC\n let PM10amountbenearrayC\n let seqbenearrayC\n let stbenearrayC\n let carbonamountarrayC \n let seqamountbenearrayC\n let stamountbenearrayC\n let timeslider = Number($(\"#QuickCalc-TimeSlider\").slider('value'))\n let timepercent = [.00,.01,.02,.03,.04,.05,.07,.09,.11,.13,.15,.18,.21,.24,.27,.30,.34,.38,.42,.46,.50,.55,.60,.65,.70,.75,.80,.85,.90,.95,1.00]\n let currenttimepercent = timepercent[timeslider]\n let a = this.area.addedacres\n \n //hardcoded QuickCalc Benefits Values\n let allBenefits = this.area.allBenefits\n let aqBenefits = this.area.aqBenefits\n let carbBenefits = this.area.carbBenefits\n let swBenefits = this.area.swBenefits\n\n let b = ((this.area.COUn * a) * currenttimepercent)\n let c = ((this.area.COVal * a) * currenttimepercent)\n let d = ((this.area.NO2Un * a) * currenttimepercent)\n let e = ((this.area.NO2Val * a) * currenttimepercent)\n let f = ((this.area.O3Un * a) * currenttimepercent)\n let g = ((this.area.O3Val * a) * currenttimepercent)\n let h = ((this.area.SO2Un * a) * currenttimepercent)\n let i = ((this.area.SO2Val * a) * currenttimepercent)\n let j = ((this.area.PM10Un * a) * currenttimepercent)\n let k = ((this.area.PM10Val * a) * currenttimepercent)\n let l = ((this.area.AQTotUn * a) * currenttimepercent)\n let m = ((this.area.AQTotVal * a) * currenttimepercent)\n let n = ((this.area.StUn * a) * currenttimepercent)\n let o = ((this.area.StVal * a) * currenttimepercent)\n let p = ((this.area.SeqUn * a) * currenttimepercent)\n let q = ((this.area.SeqVal * a) * currenttimepercent)\n let r = ((this.area.CarUn * a) * currenttimepercent)\n let s = ((this.area.CarVal * a) * currenttimepercent)\n let t = ((this.area.RunReGal * a) * currenttimepercent)\n let u = ((this.area.StormVal * a) * currenttimepercent)\n tempBenefitObj = {\n \"id\": this.area.NAME,\n \"Rank\": this.area.rank,\n \"CurrentTree\": Math.round(this.area[this.globals.mapvars.TreeAcres]),\n \"ProjectedTree\": Math.round(this.area.ProjectedAcres),\n \"COUnitCurrent\": Math.round(this.area.COUnCurr),\n \"COValueCurrent\": Math.round(this.area.COValCurr),\n \"COUnitProjected\": Math.round(b),\n \"COValuerPojected\": Math.round(c),\n \"NO2UnitCurrent\": Math.round(this.area.NO2UnCurr),\n \"NO2ValueCurrent\": Math.round(this.area.NO2ValCurr),\n \"NO2UnitProjected\": Math.round(d),\n \"NO2ValueProjected\": Math.round(e),\n \"O3UnitCurrent\": Math.round(this.area.O3UnCurr),\n \"O3ValueCurrent\": Math.round(this.area.O3ValCurr),\n \"O3UnitProjected\": Math.round(f),\n \"O3ValueProjected\": Math.round(g),\n \"SO2UnitCurrent\": Math.round(this.area.SO2UnCurr),\n \"SO2ValueCurrent\": Math.round(this.area.SO2ValCurr),\n \"SO2UnitProjected\": Math.round(h),\n \"SO2ValueProjected\": Math.round(i),\n \"PM10UnitCurrent\": Math.round(this.area.PM10UnCurr),\n \"PM10ValueCurrent\": Math.round(this.area.PM10ValCur),\n \"PM10UnitProjected\": Math.round(j),\n \"PM10ValueProjected\": Math.round(k),\n \"AQTotUnitCurrent\": Math.round(this.area.AQTotUnCur),\n \"AQTotValueCurrent\": Math.round(this.area.AQTotValCu),\n \"AQTotUnitProjected\": Math.round(l),\n \"AQTotValueProjected\": Math.round(m),\n \"StUnitCurrent\": Math.round(this.area.StUnCurr),\n \"StValueCurrent\": Math.round(this.area.StValCurr),\n \"StUnitProjected\": Math.round(n),\n \"StValueProjected\": Math.round(o),\n \"SeqUnitCurrent\": Math.round(this.area.SeqUnCurr),\n \"SeqValueCurrent\": Math.round(this.area.SeqValCurr),\n \"SeqUnitProjected\": Math.round(p),\n \"SeqValueProjected\": Math.round(q),\n \"CarUnitCurrent\": Math.round(this.area.CarUnCurr),\n \"CarValueCurrent\": Math.round(this.area.CarValCurr),\n \"CarUnitProjected\": Math.round(r),\n \"CarValueProjected\": Math.round(s),\n \"RunoffReductionGalCurrent\": Math.round(this.area.RunReGalCu),\n \"StormValueCurrent\": Math.round(this.area.StormValCu),\n \"RunoffReductionGalProjected\": Math.round(t),\n \"StormValueProjected\": Math.round(u),\n \"zoom\": \"\"\n }\n OverallarrayC=(tempBenefitObj.AQTotValueCurrent + tempBenefitObj.CarValueCurrent + tempBenefitObj.StormValueCurrent)\n airbenearrayC=(tempBenefitObj.AQTotValueCurrent)\n airamountbenearrayC=(tempBenefitObj.AQTotUnitCurrent)\n CObenearrayC=(tempBenefitObj.COValueCurrent)\n COamountbenearrayC=(tempBenefitObj.COUnitCurrent)\n NO2benearrayC=(tempBenefitObj.NO2ValueCurrent)\n NO2amountbenearrayC=(tempBenefitObj.NO2UnitCurrent)\n O3benearrayC=(tempBenefitObj.O3ValueCurrent)\n O3amountbenearrayC=(tempBenefitObj.O3UnitCurrent)\n SO2benearrayC=(tempBenefitObj.SO2ValueCurrent)\n SO2amountbenearrayC=(tempBenefitObj.SO2UnitCurrent)\n PM10benearrayC=(tempBenefitObj.PM10ValueCurrent)\n PM10amountbenearrayC=(tempBenefitObj.PM10UnitCurrent)\n carbonarrayC=(tempBenefitObj.CarValueCurrent)\n carbonamountarrayC=(tempBenefitObj.CarUnitCurrent)\n seqbenearrayC=(tempBenefitObj.SeqValueCurrent)\n seqamountbenearrayC=(tempBenefitObj.SeqUnitCurrent)\n stbenearrayC=(tempBenefitObj.StValueCurrent)\n stamountbenearrayC=(tempBenefitObj.StUnitCurrent)\n stormarrayC=(tempBenefitObj.StormValueCurrent)\n stormamountarrayC=(tempBenefitObj.RunoffReductionGalCurrent)\n OverallarrayP=(tempBenefitObj.AQTotValueProjected + tempBenefitObj.CarValueProjected + tempBenefitObj.StormValueProjected)\n airbenearrayP=(tempBenefitObj.AQTotValueProjected)\n airamountbenearrayP=(tempBenefitObj.AQTotUnitProjected)\n CObenearrayP=(tempBenefitObj.COValuerPojected)\n COamountbenearrayP=(tempBenefitObj.COUnitProjected)\n NO2benearrayP=(tempBenefitObj.NO2ValueProjected)\n NO2amountbenearrayP=(tempBenefitObj.NO2UnitProjected)\n O3benearrayP=(tempBenefitObj.O3ValueProjected)\n O3amountbenearrayP=(tempBenefitObj.O3UnitProjected)\n SO2benearrayP=(tempBenefitObj.SO2ValueProjected)\n SO2amountbenearrayP=(tempBenefitObj.SO2UnitProjected)\n PM10benearrayP=(tempBenefitObj.PM10ValueProjected)\n PM10amountbenearrayP=(tempBenefitObj.PM10UnitProjected)\n carbonarrayP=(tempBenefitObj.CarValueProjected)\n carbonamountarrayP=(tempBenefitObj.CarUnitProjected)\n seqbenearrayP=(tempBenefitObj.SeqValueProjected)\n seqamountbenearrayP=(tempBenefitObj.SeqUnitProjected)\n stbenearrayP=(tempBenefitObj.StValueProjected)\n stamountbenearrayP=(tempBenefitObj.StUnitProjected)\n stormarrayP=(tempBenefitObj.StormValueProjected)\n stormamountarrayP=(tempBenefitObj.RunoffReductionGalProjected)\n //let totaloverallC =OverallarrayC\n let totaloverallC =allBenefits\n //let totalairC =airbenearrayC\n let totalairC =aqBenefits\n let totalairCamount =airamountbenearrayC\n let totalCOC =CObenearrayC\n let totalCOCamount =COamountbenearrayC\n let totalNO2C =NO2benearrayC\n let totalNO2Camount =NO2amountbenearrayC\n let totalO3C =O3benearrayC\n let totalO3Camount =O3amountbenearrayC\n let totalSO2C =SO2benearrayC\n let totalSO2Camount =SO2amountbenearrayC\n let totalPM10C =PM10benearrayC\n let totalPM10Camount = PM10amountbenearrayC\n //let totalcarbonC =carbonarrayC\n let totalcarbonC =carbBenefits\n let totalcarbonCamount =carbonamountarrayC\n let totalseqC =seqbenearrayC\n let totalseqCamount =seqamountbenearrayC\n let totalstC =stbenearrayC\n let totalstCamount =stamountbenearrayC\n //let totalstormC =stormarrayC\n let totalstormC =swBenefits\n let totalstormCamount =stormamountarrayC\n //let totaloverallP =OverallarrayP\n let totaloverallP =allBenefits\n //let totalairP =airbenearrayP\n let totalairP =aqBenefits\n let totalairPamount =airamountbenearrayP\n let totalCOP =CObenearrayP\n let totalCOPamount =COamountbenearrayP\n let totalNO2P =NO2benearrayP\n let totalNO2Pamount =NO2amountbenearrayP\n let totalO3P =O3benearrayP\n let totalO3Pamount =O3amountbenearrayP\n let totalSO2P =SO2benearrayP\n let totalSO2Pamount =SO2amountbenearrayP\n let totalPM10P =PM10benearrayP\n let totalPM10Pamount =PM10amountbenearrayP\n //let totalcarbonP =carbonarrayP\n let totalcarbonP =carbBenefits\n let totalcarbonPamount =carbonamountarrayP\n let totalseqP =seqbenearrayP\n let totalseqPamount =seqamountbenearrayP\n let totalstP =stbenearrayP\n let totalstPamount =stamountbenearrayP\n //let totalstormP =stormarrayP\n let totalstormP =swBenefits\n let totalstormPamount =stormamountarrayP\n this.globals.globalvars.tempBenefitObj = {\n totaloverallC:totaloverallC,totaloverallP:totaloverallP,\n totalairC:totalairC,totalairP:totalairP,\n totalcarbonC:totalcarbonC,totalcarbonP:totalcarbonP,\n totalstormC:totalstormC,totalstormP:totalstormP\n }\n return this.globals.globalvars.tempBenefitObj\n }\n}","import { Component, Input, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-toolsmodule',\n templateUrl: './toolsmodule.component.html',\n styleUrls: ['./toolsmodule.component.scss']\n})\nexport class ToolsmoduleComponent implements OnInit {\n @Input() currentoptionName=''\n @Input() quickCalcLayer=''\n @Input() quickCalcAreaName=''\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
\n
{{currentoptionName}}
\n
\n","declare const $: any;\nexport function seeInTable(view, tables, setFeatureLayerFilter, Layers) {\n //give short var to name attribute\n let name = (view.popup.selectedFeature.attributes.NAME).toString();\n if (document.getElementById(\"TreeAnalysis_wrapper\").style.display == 'none' &&\n document.getElementById(\"BenefitTable_wrapper\").style.display == 'none' ||\n document.getElementById(\"TreeAnalysis_wrapper\").style.display == '') {\n tables.showtable('#TreeAnalysis_wrapper', '#Resourcebtn', '#downloadTreebtn', null, '#AnaylsisTablebtns');\n };\n let findrow = (table, id) => {\n $('#' + table).DataTable().column(0).search(id).draw();\n };\n findrow(\"TreeAnalysis\", name);\n findrow(\"BenefitTable\", name);\n\n let expression = \"NAME = 'donotselectanything'\";\n setFeatureLayerFilter(Layers, expression);\n }\nexport function seeVacantSites (tables,baseLayers,view,VacantsiteAttributesfortableViewer) {\n tables.hidetables();\n $(\"#loader\").show();\n let tabledata = [];\n let query2 = baseLayers[\"VacantSites\"].createQuery();\n let vacantsitesinpoly;\n query2.geometry = view.popup.selectedFeature.geometry;\n query2.spatialRelationship = \"intersects\";\n baseLayers[\"VacantSites\"].queryFeatures(query2).then((results) => {\n vacantsitesinpoly = results.features;\n let siteatt = [];\n vacantsitesinpoly.forEach(element => {\n siteatt.push(JSON.parse(JSON.stringify(element.attributes).replace(/\\\\r/g, '')))\n });\n let tabledatarow;\n siteatt.forEach(element => {\n tabledatarow = [\"\"];\n VacantsiteAttributesfortableViewer.forEach(item => {\n tabledatarow.push(element[item]);\n });\n tabledata.push(tabledatarow);\n })\n tables.showtable('#VacantSiteTable_wrapper', '#vacantsitebtn', '#downloadSelSitebtn', '#downloadAllSitebtn', '#vacantsiteTablebtns')\n tables.redrawTableWithDataAndNewHeight('VacantSiteTable', tabledata);\n $(\"#loader\").hide();\n })\n }\nexport function seeNatureScore(baseLayers,view,template){\n let avescore\n let query2 = baseLayers[\"NatureScore\"].createQuery();\n query2.geometry = view.popup.selectedFeature.geometry;\n query2.spatialRelationship = \"intersects\";\n baseLayers[\"NatureScore\"].queryFeatures(query2).then((results) => {\n let polyscores = []\n results.features.forEach(element => {\n polyscores.push(element.attributes.NatureScor)\n });\n const arrAvg = arr => arr.reduce((a,b) => a + b, 0) / arr.length\n avescore=Math.round(arrAvg(polyscores))\n let image= Math.ceil((avescore/10)/2)\n let nstemplate = template\n let leafscoretext=['Leaf Score: 1
Low density of natural elements. Effort required for immersive nature exposure opportunities.','Leaf Score: 2
Moderate to low density of natural elements. Effort may be required for immersive nature exposure opportunities.','Leaf Score: 3
Balanced mix of natural and built environmental elements. Modest effort required for immersive nature exposure opportunities.','Leaf Score: 4
Significant natural elements. Modest effort may be required for immersive nature exposure opportunities.','Leaf Score: 5
Abundant natural elements and nature exposure opportunities.']\n nstemplate.content = \"
NatureScore™: \"+avescore +'
'+leafscoretext[image-1]+'
Learn more about NatureScore™
'\n view.popup.features[0].popupTemplate = nstemplate\n })\n }\n export function openQuickCalc(moduleevent, view){\n moduleevent.emit({toolname:\"Quick Calculator\",moduleData:{\n layer:$('.layerselect').val(),\n name:view.popup.selectedFeature.attributes.NAME\n }})\n }\n \n","declare const $:any\nvar isUK = JSON.parse(window.sessionStorage.getItem(\"isUK\"));\nexport function table(VacantsiteAttributesfortableViewer,firstcolumnName){\n let today=new Date();\n function treeAnaylysis() {\n return $('#TreeAnalysis').DataTable({\n select: {\n style: 'single'\n },\n buttons: [\n {\n extend: 'pdfHtml5',\n text: 'Save current page',\n download:\"open\",\n orientation:\"landscape\",\n pageSize:\"TABLOID\",\n title:`\n Tree Resource\n Date:`+today.getMonth()+1+`/`+today.getDate()+`/`+today.getFullYear()+`\n `\n }\n ],\n paging: true,\n pageLength: 50,\n searching: true,\n scrollY: \"25vh\",\n scrollX: true,\n data: [\n [\"Loading\", 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11,12,13,14]\n ],\n columns: [{\n title: firstcolumnName\n },\n {\n title: \"Rank\"\n },\n {\n title: isUK == true? \"Geometry (ha)\":\"Geometry (ac)\",\n render: $.fn.dataTable.render.number(',', '.')\n },\n {\n title: isUK == true? \"Tree Area (ha)\":\"Tree Area (ac)\",\n render: $.fn.dataTable.render.number(',', '.')\n },\n {\n title: \"Current Tree (%)\"\n },\n {\n title: \"Change (%)\"\n },\n {\n title: \"Projected Percent (%)\"\n },\n {\n title: isUK == true? \"Added Tree (ha)\":\"Added Tree (ac)\",\n render: $.fn.dataTable.render.number(',', '.')\n },\n {\n title: isUK == true? \"Projected Tree (ha)\":\"Projected Tree (ac)\",\n render: $.fn.dataTable.render.number(',', '.')\n },\n {\n title: isUK == true? \"Weighted Crown Diameter (m)\":\"Weighted Crown Diameter (ft)\"\n },\n {\n title: \"Mortality (%)\"\n },\n {\n title: \"Required Trees +Mortality\",\n render: $.fn.dataTable.render.number(',', '.')\n },\n {\n title: \"Annual Trees\",\n render: $.fn.dataTable.render.number(',', '.')\n },\n {\n title: \"Investment\",\n render: isUK == true? $.fn.dataTable.render.number(',', '.',0,'£'):$.fn.dataTable.render.number(',', '.',0,'$')\n },\n {\n title: \"Annual Investment\",\n render: isUK == true? $.fn.dataTable.render.number(',', '.',0,'£'):$.fn.dataTable.render.number(',', '.',0,'$')\n },\n {\n title: \"Zoom\"\n }\n ]\n })}\n function beneifit(){\n return $('#BenefitTable').DataTable({\n select: {\n style: 'single'\n },\n buttons: [\n {\n extend: 'pdfHtml5',\n text: 'Save current page',\n download:\"open\",\n orientation:\"landscape\",\n pageSize:\"TABLOID\"\n }\n ],\n paging: true,\n pageLength: 50,\n searching: true,\n scrollY: \"25vh\",\n scrollX: true,\n data: [\n [\"Loading\",1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44]\n ],\n columns: [{\n title: firstcolumnName\n },\n {\n title: \"Rank\"\n },\n {\n title: \"Current Tree\",\n render: $.fn.dataTable.render.number(',', '.')\n },\n {\n title: \"Projected Tree\",\n render: $.fn.dataTable.render.number(',', '.')\n },\n {\n title: isUK == true? \"Air Quality Current (g)\":\"Air Quality Current (lbs)\",\n render: $.fn.dataTable.render.number(',', '.')\n },\n {\n title: isUK == true? \"Air Quality Current (£)\":\"Air Quality Current ($)\",\n render: $.fn.dataTable.render.number(',', '.')\n },\n {\n title: isUK == true? \"Air Quality Projected (g)\":\"Air Quality Projected (lbs)\",\n render: $.fn.dataTable.render.number(',', '.')\n },\n {\n title: isUK == true? \"Air Quality Projected (£)\":\"Air Quality Projected ($)\",\n render: $.fn.dataTable.render.number(',', '.')\n },\n {\n title: isUK == true? \"Carbon Current (kt)\":\"Carbon Current (lbs)\",\n render: $.fn.dataTable.render.number(',', '.')\n },\n {\n title: isUK == true? \"Carbon Current (£)\":\"Carbon Current ($)\",\n render: $.fn.dataTable.render.number(',', '.')\n },\n {\n title: isUK == true? \"Carbon Projected (kt)\":\"Carbon Projected (lbs)\",\n render: $.fn.dataTable.render.number(',', '.')\n },\n {\n title: isUK == true? \"Carbon Projected (£)\":\"Carbon Projected ($)\",\n render: $.fn.dataTable.render.number(',', '.')\n },\n {\n title: isUK == true? \"Runoff Reduction Current (ML)\":\"Runoff Reduction Current (gal)\",\n render: $.fn.dataTable.render.number(',', '.')\n },\n {\n title: isUK == true? \"Stormwater Current (£)\":\"Stormwater Current ($)\",\n render: $.fn.dataTable.render.number(',', '.')\n },\n {\n title: isUK == true? \"Runoff Reduction Projected (ML)\":\"Runoff Reduction Projected (gal)\",\n render: $.fn.dataTable.render.number(',', '.')\n },\n {\n title: isUK == true? \"Stormwater Projected (£)\":\"Stormwater Projected ($)\",\n render: $.fn.dataTable.render.number(',', '.')\n },\n {\n title: \"Zoom\"\n }\n ]\n })};\n function donnothing(){\n return $('#DoNothingTable').DataTable({\n buttons: [\n {\n extend: 'pdfHtml5',\n text: 'Save current page',\n download:\"open\",\n orientation:\"landscape\",\n pageSize:\"LETTER\"\n }\n ],\n select: {\n style: 'single'\n },\n paging: false,\n searching: false,\n scrollY: \"25vh\",\n scrollX: true,\n data: [\n [\"Year\", 2, 3, 4, 5, 6]\n ],\n columns: [{\n title: \"Year\"\n },\n {\n title: \"Existing Trees\",\n render: $.fn.dataTable.render.number(',', '.')\n },\n {\n title: \"Natural Mortality of Existing Trees\"\n },\n {\n title: \"Existing Trees minus Natural Mortality\",\n render: $.fn.dataTable.render.number(',', '.')\n },\n {\n title: isUK == true? \"Canopy Hectares\":\"Canopy Acres\",\n render: $.fn.dataTable.render.number(',', '.')\n },\n {\n title: \"Percent Canopy\"\n }\n ]\n })};\n function nonetloss () {\n return $('#NoNetLossTable').DataTable({\n buttons: [\n {\n extend: 'pdfHtml5',\n text: 'Save current page',\n download:\"open\",\n orientation:\"landscape\",\n pageSize:\"LETTER\"\n }\n ],\n select: {\n style: 'single'\n },\n paging: false,\n searching: false,\n scrollY: \"25vh\",\n scrollX: true,\n data: [\n [1, 2, 3, 4, 5, 6, 7, 8, 9]\n ],\n columns: [{\n title: \"Year\"\n },\n {\n title: \"Existing Trees\",\n render: $.fn.dataTable.render.number(',', '.')\n },\n {\n title: \"Natural Mortality of Existing Trees\"\n },\n {\n title: \"Existing Trees minus Natural Mortality\",\n render: $.fn.dataTable.render.number(',', '.')\n },\n {\n title: \"New Trees Planted for No Net Loss\",\n render: $.fn.dataTable.render.number(',', '.')\n },\n {\n title: \"Total Trees\",\n render: $.fn.dataTable.render.number(',', '.')\n },\n {\n title: isUK == true? \"Canopy Hectares\":\"Canopy Acres\",\n render: $.fn.dataTable.render.number(',', '.')\n },\n {\n title: \"Percent Canopy\"\n },\n {\n title: \"Investment\",\n render: isUK == true? $.fn.dataTable.render.number(',', '.', 0, '£'):$.fn.dataTable.render.number(',', '.', 0, '$')\n }\n ]\n })};\n function reverse () {\n return $('#ReverseTable').DataTable({\n buttons: [\n {\n extend: 'pdfHtml5',\n text: 'Save current page',\n download:\"open\",\n orientation:\"landscape\",\n pageSize:\"LETTER\"\n }\n ],\n select: {\n style: 'single'\n },\n paging: false,\n searching: false,\n scrollY: \"25vh\",\n scrollX: true,\n data: [\n [1, 2, 3, 4, 5, 6, 7, 8, 9]\n ],\n columns: [{\n title: \"Year\"\n },\n {\n title: \"Existing Trees\",\n render: $.fn.dataTable.render.number(',', '.')\n },\n {\n title: \"Natural Mortality of Existing Trees\"\n },\n {\n title: \"Existing Trees minus Natural Mortality\",\n render: $.fn.dataTable.render.number(',', '.')\n },\n {\n title: \"New Trees Planted to Reverse Current Trend\",\n render: $.fn.dataTable.render.number(',', '.')\n },\n {\n title: \"Total Trees\",\n render: $.fn.dataTable.render.number(',', '.')\n },\n {\n title: isUK == true? \"Canopy Hectares\":\"Canopy Acres\",\n render: $.fn.dataTable.render.number(',', '.')\n },\n {\n title: \"Percent Canopy\"\n },\n {\n title: \"Investment\",\n render: isUK == true? $.fn.dataTable.render.number(',', '.', 0, '£'):$.fn.dataTable.render.number(',', '.', 0, '$')\n }\n ]\n })};\n function vacant(){\n let VScolumns = [{title:\"Select\"}]\n let VSstarterdata = [\"\"]\n VacantsiteAttributesfortableViewer.forEach(element=>{\n if(element == \"id\"){\n VScolumns.push({title:\"ID\"})\n }else{VScolumns.push({title:element})}\n VSstarterdata.push(element)\n })\n $('#VacantSiteTable').DataTable({\n buttons: [\n {\n extend: 'pdfHtml5',\n text: 'Save current page',\n download:\"open\",\n orientation:\"landscape\",\n pageSize:\"LETTER\"\n }\n ],\n select: 'single',\n paging: false,\n searching: false,\n scrollY: \"25vh\",\n scrollX: true,\n data: [\n VSstarterdata\n ],\n columns: VScolumns\n })};\n function diversity() {\n return $('#DiversityTable').DataTable({\n select: {\n style: 'single'\n },\n buttons: [\n {\n extend: 'pdfHtml5',\n text: 'Save current page',\n download:\"open\",\n orientation:\"landscape\",\n pageSize:\"TABLOID\",\n title:`\n Species Diversity\n Date:`+today.getMonth()+1+`/`+today.getDate()+`/`+today.getFullYear()+`\n `\n }\n ],\n paging: true,\n pageLength: 50,\n searching: true,\n scrollY: \"25vh\",\n scrollX: true,\n data: [\n [\"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\"]\n ],\n columns: [{\n title: \"Botanical Name\"\n },\n {\n title: \"Count\",\n render: $.fn.dataTable.render.number(',', '.')\n },\n {\n title: \"Relative Density\",\n render: $.fn.dataTable.render.number(',', '.',2)\n },\n {\n title: \"Relative Frequency\",\n render: $.fn.dataTable.render.number(',', '.',2)\n },\n {\n title: \"Relative Abundance\",\n render: $.fn.dataTable.render.number(',', '.',2)\n },\n {\n title: \"Importance Value Index (IVI)\",\n render: $.fn.dataTable.render.number(',', '.',2)\n },\n {\n title: \"IVI Percent\",\n render: $.fn.dataTable.render.number(',', '.',2,\"\",\"%\")\n }\n ]\n })};\n treeAnaylysis()\n beneifit()\n donnothing()\n nonetloss()\n reverse()\n vacant()\n diversity()\n }","import { Component, OnInit, Output, EventEmitter, Input } from '@angular/core';\nimport { Globals } from '../globals';\nimport { ProjectService } from '../services/project.service';\nimport { TokenStorageService } from '../services/token-storage.service';\n\n@Component({\n selector: 'app-login',\n templateUrl: './login.component.html',\n styleUrls: ['./login.component.scss']\n})\nexport class LoginComponent implements OnInit {\n hasguestLogin\n @Output() loginevent = new EventEmitter();\n @Output() errorevent = new EventEmitter();\n @Output() username = new EventEmitter();\n @Output() forgetevent = new EventEmitter();\n @Output() adminevent = new EventEmitter();\n\n constructor(private project:ProjectService, private token:TokenStorageService, private globals:Globals) { \n this.hasguestLogin=this.globals.constvars.hasguestLogin\n }\n enterhit(event,user,password){\n if (event.keyCode === 13) {\n this.login(user,password)\n }\n }\n openforgetpassword(){\n this.forgetevent.emit()\n }\n togglepassword(element,icon){\n const type = element.getAttribute(\"type\") === \"password\" ? \"text\" : \"password\";\n element.setAttribute(\"type\", type);\n icon.classList.toggle(\"fa-eye-slash\")\n }\n async login(user,password){\n let authdata:any= await this.project.authUser({\"username\":user.value,\"password\":password.value})\n if(authdata.data!==null){\n let userdata:any= await this.project.getUserbytoken()\n this.loginevent.emit(true)\n this.username.emit(userdata.data.username)\n if(userdata.data.role==\"admin\"){\n this.adminevent.emit(true)\n }else{\n this.adminevent.emit(false)\n }\n }else{\n this.errorevent.emit(\"block\")\n }\n }\n async guestlogin(){\n this.username.emit(\"Guest\")\n this.loginevent.emit(true)\n }\n\n\n\n ngOnInit(): void {\n }\n}\n","
\n

Login

\n
\n \n \n
\n
\n \n  \n
\n
\n \n  \n \n
\n
","import { HttpClient } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { ProjectService } from './services/project.service';\n\n@Injectable()\n\nexport class Globals {\n projectConfig\n Data\n constvars = {\n city: '',\n TKURL: '',\n keyfindings: '',\n OverviewParagraph: '',\n OverviewContent: '',\n CurrAverage: '',\n hasProjections: '',\n photo: '',\n UTCLayers: [],\n hasLogin: false,\n hasguestLogin: false,\n haschangelayer: false,\n hasVacantSites: false,\n hasTreeSites: false,\n isUK: false,\n layersselect: '',\n Prioritylayersselect: '',\n natMortRate: 0,\n maxtargetpercent: '',\n citylimitslayerID: '',\n cityLayerName: '',\n cityAreaName: '',\n adminDivision: '',\n }\n ZoomTo\n clearhighlight\n globalvars = {\n weightedFeatures: [],\n rankings: [],\n filteredlayer: [],\n benepdfinfo: {\n totalCOC: 0,\n totalCOCamount: 0,\n totalCOP: 0,\n totalCOPamount: 0,\n totalNO2C: 0,\n totalNO2Camount: 0,\n totalNO2P: 0,\n totalNO2Pamount: 0,\n totalO3C: 0,\n totalO3Camount: 0,\n totalO3P: 0,\n totalO3Pamount: 0,\n totalPM10C: 0,\n totalPM10Camount: 0,\n totalPM10P: 0,\n totalPM10Pamount: 0,\n totalSO2C: 0,\n totalSO2Camount: 0,\n totalSO2P: 0,\n totalSO2Pamount: 0,\n totaladdedacres: 0,\n totalairC: 0,\n totalairCamount: 0,\n totalairP: 0,\n totalairPamount: 0,\n totalseqC: 0,\n totalseqCamount: 0,\n totalseqP: 0,\n totalseqPamount: 0,\n totalstC: 0,\n totalstCamount: 0,\n totalstP: 0,\n totalstPamount: 0,\n totalstormC: 0,\n totalstormCamount: 0,\n totalstormP: 0,\n totalstormPamount: 0,\n },\n growthyears: 0,\n annualplant: {},\n CurrentTreePercent: 0,\n TotalModeledTrees: 0,\n ModeledTreePercentwTime: 0,\n CurrentTreeAcres: 0,\n ModeledTreeAcresqwTime: 0,\n startingtrees: {},\n TotalAcres: 0,\n ModeledUTCobj: [],\n BenefitObj: [{\n \"id\": \"\",\n \"Rank\": 0,\n \"CurrentTree\":0,\n \"ProjectedTree\": 0,\n \"COUnitCurrent\": 0,\n \"COValueCurrent\": 0,\n \"COUnitProjected\": 0,\n \"COValuerPojected\": 0,\n \"NO2UnitCurrent\": 0,\n \"NO2ValueCurrent\": 0,\n \"NO2UnitProjected\": 0,\n \"NO2ValueProjected\": 0,\n \"O3UnitCurrent\": 0,\n \"O3ValueCurrent\": 0,\n \"O3UnitProjected\": 0,\n \"O3ValueProjected\":0,\n \"SO2UnitCurrent\": 0,\n \"SO2ValueCurrent\": 0,\n \"SO2UnitProjected\": 0,\n \"SO2ValueProjected\":0,\n \"PM10UnitCurrent\": 0,\n \"PM10ValueCurrent\":0,\n \"PM10UnitProjected\": 0,\n \"PM10ValueProjected\":0,\n \"AQTotUnitCurrent\": 0,\n \"AQTotValueCurrent\": 0,\n \"AQTotUnitProjected\": 0,\n \"AQTotValueProjected\":0,\n \"StUnitCurrent\": 0,\n \"StValueCurrent\":0,\n \"StUnitProjected\": 0,\n \"StValueProjected\":0,\n \"SeqUnitCurrent\": 0,\n \"SeqValueCurrent\": 0,\n \"SeqUnitProjected\":0,\n \"SeqValueProjected\": 0,\n \"CarUnitCurrent\": 0,\n \"CarValueCurrent\": 0,\n \"CarUnitProjected\": 0,\n \"CarValueProjected\": 0,\n \"RunoffReductionGalCurrent\": 0,\n \"StormValueCurrent\": 0,\n \"RunoffReductionGalProjected\":0,\n \"StormValueProjected\":0,\n \"zoom\": \"\"\n }],\n totaladdedacres: 0,\n totalseqCamount: {},\n ModeledTreeAcres: 0,\n benefitcardinfo:{\n totaloverallC:0,totaloverallP:0,\n totalairC:0,totalairP:0,\n totalcarbonC:0,totalcarbonP:0,\n totalstormC:0,totalstormP:0\n } ,\n tempBenefitObj:{}\n }\n view: any\n map: any\n advquery: any\n stickypolynames: any\n mapvars = {\n layerdata: [],\n API_Key: '',\n maxcount: 0,\n center: [],\n zoom: 0,\n priorityMin: {},\n priorityMax: {},\n PriorityData: {},\n Priorityattributes: {},\n prioritylayers:[],\n layerfields:[],\n TreeAcres:'',\n geomAcres:'',\n UTCPer:'',\n UTCPoss:'',\n UTCCha:'',\n folder:'',\n service:'',\n baseurl:'',\n server:'',\n url:'',\n query1:'',\n query2:'',\n queryIDs:'',\n popupTitle:'',\n priorityPopupContent:'',\n allOtherPopupContent:'',\n popupExpressionInfo:'',\n baseLayersRef:'',\n projectConfig:'',\n VacantsiteAttributes:'',\n VacantsiteAttributesfortableViewer:[],\n currentlayer:'',\n reorderlayers:'',\n showquerysitedintable:'',\n custombasemap: [],\n firstcolumnName: \"Name\",\n showDiversitytable:'',\n botanicalVar:'',\n UnassignedTrees:'',\n renderer2:{},\n renderer:{},\n AllLayerData:[]\n }\n constructor(private project: ProjectService, private http: HttpClient) {\n };\n async _getProjectConfig() {\n this.projectConfig = await this.project.getProjectConfig();\n this.constvars.city = this.projectConfig.data.htmlElements.city;\n if (this.projectConfig.data.htmlElements.TKURL) {\n this.constvars.TKURL = this.projectConfig.data.htmlElements.TKURL;\n }\n this.constvars.keyfindings = this.projectConfig.data.htmlElements.keyfindings;\n this.constvars.OverviewParagraph = this.projectConfig.data.htmlElements.OverviewParagraph;\n this.constvars.OverviewContent = this.projectConfig.data.htmlElements.OverviewContent;\n this.constvars.CurrAverage = this.projectConfig.data.CurrAverage;\n this.constvars.haschangelayer = this.projectConfig.data.haschangelayer;\n this.constvars.hasVacantSites = this.projectConfig.data.hasVacantSites;\n this.constvars.hasTreeSites = this.projectConfig.data.hasTreeSites;\n this.constvars.isUK = this.projectConfig.data.isUK;\n this.constvars.adminDivision = this.projectConfig.data.adminDivision;\n this.constvars.hasProjections = this.projectConfig.data.hasProjections;\n this.globalvars.weightedFeatures = this.projectConfig.data.weightedFeatures;\n this.constvars.layersselect = this.projectConfig.data.htmlElements.leyersselect;\n this.constvars.Prioritylayersselect = this.projectConfig.data.htmlElements.Prioritylayersselect;\n this.constvars.photo = this.projectConfig.data.htmlElements.photo;\n this.constvars.natMortRate = this.projectConfig.data.natMortRate;\n this.constvars.maxtargetpercent = this.projectConfig.data.maxtargetpercent;\n this.constvars.citylimitslayerID = this.projectConfig.data.mapElements.citylimitslayerID;\n this.constvars.cityLayerName = this.projectConfig.data.mapElements.cityLayerName;\n this.constvars.cityAreaName = this.projectConfig.data.mapElements.cityAreaName;\n this.constvars.UTCLayers = this.projectConfig.data.mapElements.UTCLayers; //delete should be in map\n if (this.projectConfig.data.hasLogin) {\n this.constvars.hasLogin = this.projectConfig.data.hasLogin;\n this.constvars.hasguestLogin = this.projectConfig.data.hasguestLogin;\n }\n this.mapvars.API_Key = this.projectConfig.data.API_Key;\n this.mapvars.maxcount = this.projectConfig.data.mapElements.maxcount;\n this.mapvars.prioritylayers = this.projectConfig.data.mapElements.Prioritylayers;\n this.mapvars.center = this.projectConfig.data.mapElements.center;\n this.mapvars.zoom = this.projectConfig.data.mapElements.zoom;\n this.mapvars.TreeAcres = this.projectConfig.data.mapElements.treeAcres;\n this.mapvars.geomAcres = this.projectConfig.data.mapElements.geomAcres;\n this.mapvars.UTCPer = this.projectConfig.data.mapElements.UTCPer;\n this.mapvars.UTCPoss = this.projectConfig.data.mapElements.UTCPoss;\n this.mapvars.UTCCha = this.projectConfig.data.mapElements.UTCCha;\n this.mapvars.folder = this.projectConfig.data.mapElements.folder;\n this.mapvars.service = \"\"\n this.mapvars.baseurl = \"gis.davey.com/\"\n this.mapvars.server = \"/MapServer/\"\n if (this.projectConfig.data.mapElements.baseurl) {\n this.mapvars.baseurl = this.projectConfig.data.mapElements.baseurl\n }\n if (this.projectConfig.data.mapElements.service) {\n this.mapvars.service = \"/\" + this.projectConfig.data.mapElements.service\n }\n if (this.projectConfig.data.mapElements.server) {\n this.mapvars.server = \"/\" + this.projectConfig.data.mapElements.server + \"/\"\n }\n this.mapvars.url = \"https://\" + this.mapvars.baseurl + \"arcgis/rest/services/\" + this.mapvars.folder + this.mapvars.service + this.mapvars.server;\n this.mapvars.query1 = `/query?where=` + this.mapvars.geomAcres + `>+0&text=&objectIds=&time=&geometry=&geometryType=esriGeometryEnvelope&inSR=&spatialRel=esriSpatialRelIntersects&relationParam=&outFields=*&returnGeometry=true&returnTrueCurves=false&maxAllowableOffset=&geometryPrecision=&outSR=4326+&returnIdsOnly=false&returnCountOnly=false&orderByFields=&groupByFieldsForStatistics=&outStatistics=&returnZ=false&returnM=false&gdbVersion=&returnDistinctValues=false&resultOffset=`;\n this.mapvars.query2 = `&resultRecordCount=&f=pjson`;\n this.mapvars.queryIDs = `/query?where=` + this.mapvars.geomAcres + `>%3D0&text=&objectIds=&time=&geometry=&geometryType=esriGeometryEnvelope&inSR=&spatialRel=esriSpatialRelIntersects&relationParam=&outFields=&returnGeometry=true&returnTrueCurves=false&maxAllowableOffset=&geometryPrecision=&outSR=4326+&returnIdsOnly=true&returnCountOnly=false&orderByFields=&groupByFieldsForStatistics=&outStatistics=&returnZ=false&returnM=false&gdbVersion=&returnDistinctValues=false&resultOffset=&resultRecordCount=&f=pjson`;\n this.mapvars.popupTitle = this.projectConfig.data.mapElements.popupTitle;\n this.mapvars.priorityPopupContent = this.projectConfig.data.mapElements.priorityPopupContent;\n this.mapvars.allOtherPopupContent = this.projectConfig.data.mapElements.allOtherPopupContent;\n this.mapvars.popupExpressionInfo = this.projectConfig.data.mapElements.popupExpressionInfo;\n this.mapvars.baseLayersRef = this.projectConfig.data.mapElements.baseLayersRef;\n this.mapvars.VacantsiteAttributes = this.projectConfig.data.mapElements.VacantsiteAttributes;\n this.mapvars.VacantsiteAttributesfortableViewer = this.projectConfig.data.mapElements.VacantsiteAttributesfortableViewer;\n this.mapvars.layerfields = this.projectConfig.data.mapElements.layerfields;\n this.mapvars.botanicalVar = this.projectConfig.data.mapElements.TreebotanicalVar;\n this.mapvars.UnassignedTrees = this.projectConfig.data.mapElements.UnassignedTrees;\n if (this.projectConfig.data.mapElements.custombasemap) {\n this.mapvars.custombasemap = this.projectConfig.data.mapElements.custombasemap\n }\n if (this.projectConfig.data.project == \"transmissiondemo\") {\n this.mapvars.firstcolumnName = \"Circuit\"\n }\n window.sessionStorage.setItem(\"isUK\", JSON.stringify(this.constvars.isUK));\n };\n\n private async downloadData(url) {\n return await this.http.get(url).toPromise()\n }\n initializeLayerData(name) {\n interface layerobjlayout { layerName: String; dataArray: []; attributes: []; UTC: {}; Possiblity: {}; Change: {} };\n let layerobj: layerobjlayout = {\n layerName: name,\n dataArray: [],\n attributes: [],\n UTC: {\n array: [],\n min: 0,\n max: 0\n },\n Possiblity: {\n array: [],\n min: 0,\n max: 0\n },\n Change: {\n array: [],\n min: 0,\n max: 0\n }\n };\n this.mapvars.layerdata.push(layerobj);\n }\n private async getbasedata() {\n // for (let index = 0; index < this.constvars.UTCLayers.length; index++) {\n // this.initializeLayerData(this.constvars.UTCLayers[index].name);\n // let data = await this.downloadData(this.url + this.constvars.UTCLayers[index].layerID + this.query1 + this.query2);\n // this.mapvars.layerdata[index].dataArray = data.features;\n // this.layerdata[index].dataArray = data.features;\n // for (let x in this.layerdata[index].dataArray) {\n // this.layerdata[index].UTC.array.push(this.layerdata[index].dataArray[x].attributes[this.UTCPer]);\n // this.layerdata[index].Possiblity.array.push(this.layerdata[index].dataArray[x].attributes[this.UTCPoss]);\n // if (constvars.haschangelayer == true) {\n // this.layerdata[index].Change.array.push(this.layerdata[index].dataArray[x].attributes[this.UTCCha]);\n // };\n // this.layerdata[index].attributes.push(this.layerdata[index].dataArray[x].attributes);\n // };\n // this.layerdata[index].UTC.min = Math.floor(this.getMinOfArray(this.layerdata[index].UTC.array));\n // this.layerdata[index].UTC.max = Math.ceil(this.getMaxOfArray(this.layerdata[index].UTC.array)) + 1;\n // this.layerdata[index].Possiblity.min = Math.floor(this.getMinOfArray(this.layerdata[index].Possiblity.array));\n // this.layerdata[index].Possiblity.max = Math.ceil(this.getMaxOfArray(this.layerdata[index].Possiblity.array)) + 1;\n // if (constvars.haschangelayer == true) {\n // this.layerdata[index].Change.min = Math.floor(this.getMinOfArray(this.layerdata[index].Change.array));\n // this.layerdata[index].Change.max = Math.ceil(this.getMaxOfArray(this.layerdata[index].Change.array)) + 1;\n // if (this.layerdata[index].Change.min < -100) {\n // this.layerdata[index].Change.min = -100;\n // }\n // if (this.layerdata[index].Change.max > 300) {\n // this.layerdata[index].Change.max = 300;\n // }\n // }\n // if (this.layerdata[index].UTC.min < -100) {\n // this.layerdata[index].UTC.min = -100;\n // }\n // if (this.layerdata[index].UTC.max > 100) {\n // this.layerdata[index].UTC.max = 100;\n // }\n // if (this.layerdata[index].Possiblity.min < -100) {\n // this.layerdata[index].Possiblity.min = -100;\n // }\n // if (this.layerdata[index].Possiblity.max > 100) {\n // this.layerdata[index].Possiblity.max = 100;\n // }\n // if (this.prioritylayers.includes(this.UTCLayers[index].name)) {\n // this.priorityMin[this.UTCLayers[index].name] = this.layerdata[index].UTC.min;\n // this.priorityMax[this.UTCLayers[index].name] = this.layerdata[index].UTC.max;\n // this.PriorityData[this.UTCLayers[index].name] = this.layerdata[index].dataArray;\n // this.Priorityattributes[this.UTCLayers[index].name] = this.layerdata[index].attributes;\n // }\n // }\n }\n}","import { HttpClient } from '@angular/common/http';\nimport { Component, Input, OnInit, Output } from '@angular/core';\nimport { EventEmitter } from '@angular/core';\nimport { ProjectService } from '../services/project.service';\ndeclare let globalvars\n@Component({\n selector: 'app-projects',\n templateUrl: './projects.component.html',\n styleUrls: ['./projects.component.scss']\n})\nexport class ProjectsComponent implements OnInit {\n @Output() closeevent = new EventEmitter()\n @Output() openprojectevent = new EventEmitter()\n @Input() currentobject\n @Input() saving\n @Input() username\n\n projectnamelist=[]\n projectobjects=[]\n\n constructor(private project:ProjectService) { }\n close(){\n this.closeevent.emit(null)\n }\n open(project){ \n if(this.saving==false){\n this.openprojectevent.emit(this.projectobjects[project])\n this.close()\n }else{\n this.saveuserdata(project)\n }\n }\n async userdata(){\n this.projectnamelist=[]\n this.projectobjects=[]\n let datatype=\"saveprioritized\"\n if(document.getElementById(\"prioritize\").style.display == \"none\"){\n datatype=\"saveplant\"\n }\n let authdata:any= await this.project.getUserData({\"user\":this.username})\n if(authdata.data!==null){ \n this.projectnamelist=Object.keys(authdata.data[datatype])\n this.projectobjects=authdata.data[datatype]\n }else{\n }\n }\n \n async saveuserdata(projectsavename){\n let datatype=\"saveprioritized\"\n let data=globalvars.weightedFeatures\n if(document.getElementById(\"prioritize\").style.display == \"none\"){\n datatype=\"saveplant\"\n data=this.currentobject\n }\n let authdata:any= await this.project.saveUserData({\"user\":this.username,\"datatype\":datatype,\"dataname\":projectsavename,\"data\":data})\n this.close()\n }\n\n async deleteuserdata(projectsavename){\n let datatype=\"saveprioritized\"\n if(document.getElementById(\"prioritize\").style.display == \"none\"){\n datatype=\"saveplant\"\n }\n await this.project.deleteUserData({\"user\":this.username,\"datatype\":datatype,\"dataname\":projectsavename})\n let nameindx=this.projectnamelist.indexOf(projectsavename)\n this.projectnamelist.splice(nameindx,1)\n }\n\n ngOnInit(): void {\n this.userdata()\n }\n\n}\n","

Saved Projects

\n
\n \n
\n
\n \n \n
\n\n","import { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\nimport { AppModule } from './app/app.module';\nimport { environment } from './environments/environment';\n\nif (environment.production) {\n enableProdMode();\n}\n\nplatformBrowserDynamic().bootstrapModule(AppModule)\n .catch(err => console.error(err));\n","import { Component, OnInit, Input } from '@angular/core';\nimport { Globals } from '../globals';\nimport * as indexfunctions from '../indexfunctions'\n\ndeclare const $: any,numeral,pdfMake,Plotly\n\n@Component({\n selector: 'app-bottom-panel',\n templateUrl: './bottom-panel.component.html',\n styleUrls: ['./bottom-panel.component.scss']\n})\nexport class BottomPanelComponent implements OnInit {\n\n @Input() hasProjections;\n hasVacantSites=this.globals.constvars.hasVacantSites;\n isUK = JSON.parse(window.sessionStorage.getItem(\"isUK\"));\n @Input() VacantsiteAttributes;\n benepdfinfo=this.globals.globalvars.benepdfinfo\n @Input() startingtrees;\n @Input() TotalAcres;\n prioritylayers=this.globals.mapvars.prioritylayers\n @Input() BenefitObj;\n @Input() ModeledUTCobj;\n @Input() calculate: () => void;\n \n private selectedsites;\n private DoNothingObj;\n private DNScenerio;\n private NoNetLossObj;\n private NNLScenerio;\n private ReveseTrendObj;\n private RTScenerio;\n private ScenarioSummary = {};\n private config = {\n responsive: true,\n displayModeBar: false\n }\n\n constructor(private globals:Globals) { }\n\n pdf(table){\n $('#'+table).DataTable().button().trigger();\n }\n\n getids(){\n this.selectedsites = [];\n for(let x=0;x<$('.vacantsites').length;x++){\n if($('.vacantsites')[x].checked){\n this.selectedsites.push(JSON.parse($(\"#\"+$('.vacantsites')[x].id).attr(\"data-object\")));\n }\n }\n if(this.selectedsites.length>0){\n let selectedids=[];\n this.selectedsites.forEach(site=>{\n selectedids.push(site.id);\n })\n $('#getVSids').html(\" Copied\")\n let copiedids = document.createElement('textarea');\n copiedids.value = selectedids.toString();\n copiedids.setAttribute('readonly','');\n // copiedids.style={display:'none'};\n document.body.appendChild(copiedids);\n copiedids.select();\n document.execCommand(\"copy\");\n document.body.removeChild(copiedids)\n setTimeout(()=>{$('#getVSids').html(' Copy Selected IDs')},2000);\n }\n }\n\n getselected(name){\n this.selectedsites = [];\n for(let x=0;x<$('.vacantsites').length;x++){\n if($('.vacantsites')[x].checked){\n this.selectedsites.push(JSON.parse($(\"#\"+$('.vacantsites')[x].id).attr(\"data-object\")));\n }\n }\n if(this.selectedsites.length>0){\n this.exportvacantsites(this.selectedsites,'Selected_Vacant_Sites_in_'+name,\"downloadSelectedsites\");\n }\n }\n\n selectAllSites(){\n $('.vacantsites').prop( \"checked\", true ); \n }\n\n exportvacantsites(data,fileTitle,btn){\n //csv download\n let headers = {};\n this.VacantsiteAttributes.forEach(element=>{\n headers[element] = element.replace(/,/g, '');\n })\n let itemsFormatted = [];\n data.forEach((item) => {\n let itemobject = {}\n this.VacantsiteAttributes.forEach(element=>{\n itemobject[element] = item[element];\n })\n itemsFormatted.push(itemobject);\n });\n indexfunctions.exportCSVFile(headers, itemsFormatted, fileTitle, btn);\n }\n\n DoNothingbuild() {\n this.DoNothingObj = [];\n let acres = this.TotalAcres;\n let CanAcres = this.startingtrees;\n let onePercentAcre = this.TotalAcres * .01;\n let treePerAcre = 66;\n let mortality = this.globals.constvars.natMortRate;\n let treesInOnePercent = onePercentAcre * treePerAcre;\n let totalTreesinArea = CanAcres * treePerAcre;\n let Year = new Date().getFullYear();\n let length = $(\"#TimeSlider\").slider('value') + 1;\n let endYear = Year + length;\n let eMinusNM = totalTreesinArea;\n let CanopyAcres = this.startingtrees;\n\n this.DoNothingObj.push({\n \"Year\": Year,\n \"Existing Trees\": totalTreesinArea,\n \"Natural Mortality of Existing Trees\": Math.round(mortality * 10000) / 100 + \"%\",//weird math to get nice looking number\n \"Existing Trees minus Natural Mortality\": eMinusNM,\n \"Canopy Acres\": Math.round(CanopyAcres),\n \"Percent Canopy\": Math.round((CanopyAcres / acres) * 100) + \"%\"\n });\n\n Year = Year + 1;\n while (Year < endYear) {\n totalTreesinArea = eMinusNM;\n eMinusNM = Math.round(totalTreesinArea + (totalTreesinArea * mortality));\n CanopyAcres = eMinusNM / treePerAcre;\n this.DoNothingObj.push({\n \"Year\": Year,\n \"Existing Trees\": totalTreesinArea,\n \"Natural Mortality of Existing Trees\": Math.round(mortality * 10000) / 100 + \"%\",//weird math to get nice looking number\n \"Existing Trees minus Natural Mortality\": eMinusNM,\n \"Canopy Acres\": Math.round(CanopyAcres),\n \"Percent Canopy\": Math.round((CanopyAcres / acres) * 10000) / 100 + \"%\"\n })\n Year = Year + 1;\n }\n\n //csv download\n let headers = {};\n let Existingtrees = {};\n let NaturalMortalityofExistingTrees = {};\n let ExistingTreesminusNaturalMortality = {};\n let CanopyAcres1 = {};\n let PercentCanopy = {};\n\n for (let x = 0; x < this.DoNothingObj.length; x++) {\n if (x == 0) {\n headers[x.toString()] = \"Year\";\n Existingtrees[x.toString()] = \"Existing Trees\";\n NaturalMortalityofExistingTrees[x.toString()] = \"Natural Mortality of Existing Trees\";\n ExistingTreesminusNaturalMortality[x.toString()] = \"Existing Trees minus Natural Mortality\";\n CanopyAcres1[x.toString()] = \"Canopy Acres\";\n PercentCanopy[x.toString()] = \"Percent Canopy\";\n }\n headers[this.DoNothingObj[x].Year] = this.DoNothingObj[x].Year;\n Existingtrees[this.DoNothingObj[x].Year] = this.DoNothingObj[x][\"Existing Trees\"];\n NaturalMortalityofExistingTrees[this.DoNothingObj[x].Year] = this.DoNothingObj[x][\"Natural Mortality of Existing Trees\"];\n ExistingTreesminusNaturalMortality[this.DoNothingObj[x].Year] = this.DoNothingObj[x][\"Existing Trees minus Natural Mortality\"];\n CanopyAcres1[this.DoNothingObj[x].Year] = this.DoNothingObj[x][\"Canopy Acres\"];\n PercentCanopy[this.DoNothingObj[x].Year] = this.DoNothingObj[x][\"Percent Canopy\"];\n }\n \n let itemsFormatted = [];\n itemsFormatted.push(Existingtrees, NaturalMortalityofExistingTrees, ExistingTreesminusNaturalMortality,\n CanopyAcres1, PercentCanopy)\n this.DNScenerio = itemsFormatted;\n let fileTitle = 'DoNothing'; // or 'my-unique-title'\n indexfunctions.exportCSVFile(headers, itemsFormatted, fileTitle, \"downloadDonothing\");\n }\n \n NoNetLossbuild() {\n this.NoNetLossObj = [];\n let acres = this.TotalAcres;\n let CanAcres = this.startingtrees;\n let onePercentAcre = this.TotalAcres * .01;\n let treePerAcre = 66;\n let mortality = this.globals.constvars.natMortRate;\n // let treesInOnePercent = onePercentAcre * treePerAcre;\n let totalTreesinArea = CanAcres * treePerAcre;\n let Year = new Date().getFullYear();\n let length = $(\"#TimeSlider\").slider('value') + 1;\n let endYear = Year + length;\n let eMinusNM = totalTreesinArea;\n let newTrees = 0;\n let totalTrees = newTrees + eMinusNM;\n let CanopyAcres = this.startingtrees;\n let Investment = (Number($('#AveCost').val())+Number($('#AveManCost').val())) * newTrees;\n \n this.NoNetLossObj.push({\n \"Year\": Year,\n \"Existing Trees\": totalTreesinArea,\n \"Natural Mortality of Existing Trees\": Math.round(mortality * 10000) / 100 + \"%\",\n \"Existing Trees minus Natural Mortality\": eMinusNM,\n \"New Trees Planted for No Net Loss\": newTrees,\n \"Total Trees\": totalTrees,\n \"Canopy Acres\": Math.round(CanopyAcres),\n \"Percent Canopy\": Math.round((CanopyAcres / acres) * 10000) / 100 + \"%\",\n \"Investment\": Math.round(Investment)\n })\n\n Year = Year + 1;\n while (Year < endYear) {\n totalTreesinArea = totalTrees;\n eMinusNM = Math.round(totalTreesinArea + (totalTreesinArea * mortality));\n newTrees = totalTreesinArea - eMinusNM;\n totalTrees = newTrees + eMinusNM;\n CanopyAcres = totalTrees / treePerAcre;\n Investment = (Number($('#AveCost').val())+Number($('#AveManCost').val())) * newTrees;\n \n this.NoNetLossObj.push({\n \"Year\": Year,\n \"Existing Trees\": totalTreesinArea,\n \"Natural Mortality of Existing Trees\": Math.round(mortality * 10000) / 100 + \"%\",\n \"Existing Trees minus Natural Mortality\": eMinusNM,\n \"New Trees Planted for No Net Loss\": newTrees,\n \"Total Trees\": totalTrees,\n \"Canopy Acres\": Math.round(CanopyAcres),\n \"Percent Canopy\": Math.round((CanopyAcres / acres) * 10000) / 100 + \"%\",\n \"Investment\": Math.round(Investment)\n })\n Year = Year + 1;\n }\n\n let headers = {};\n let Existingtrees = {};\n let NaturalMortalityofExistingTrees = {};\n let ExistingTreesminusNaturalMortality = {};\n let newTrees1 = {};\n let totalTrees1 = {};\n let CanopyAcres1 = {};\n let PercentCanopy = {};\n let Investment1 = {};\n\n for (let x = 0; x < this.NoNetLossObj.length; x++) {\n if (x == 0) {\n headers[x.toString()] = \"Year\";\n Existingtrees[x.toString()] = \"Existing Trees\";\n NaturalMortalityofExistingTrees[x.toString()] = \"Natural Mortality of Existing Trees\";\n ExistingTreesminusNaturalMortality[x.toString()] = \"Existing Trees minus Natural Mortality\";\n newTrees1[x.toString()] = \"New Trees Planted for No Net Loss\";\n totalTrees1[x.toString()] = \"Total Trees\";\n CanopyAcres1[x.toString()] = \"Canopy Acres\";\n PercentCanopy[x.toString()] = \"Percent Canopy\";\n Investment1[x.toString()] = \"Investment\";\n }\n headers[this.NoNetLossObj[x].Year] = this.NoNetLossObj[x].Year;\n Existingtrees[this.NoNetLossObj[x].Year] = this.NoNetLossObj[x][\"Existing Trees\"];\n NaturalMortalityofExistingTrees[this.NoNetLossObj[x].Year] = this.NoNetLossObj[x][\"Natural Mortality of Existing Trees\"];\n ExistingTreesminusNaturalMortality[this.NoNetLossObj[x].Year] = this.NoNetLossObj[x][\"Existing Trees minus Natural Mortality\"];\n newTrees1[this.NoNetLossObj[x].Year] = this.NoNetLossObj[x][\"New Trees Planted for No Net Loss\"];\n totalTrees1[this.NoNetLossObj[x].Year] = this.NoNetLossObj[x][\"Total Trees\"];\n CanopyAcres1[this.NoNetLossObj[x].Year] = this.NoNetLossObj[x][\"Canopy Acres\"];\n PercentCanopy[this.NoNetLossObj[x].Year] = this.NoNetLossObj[x][\"Percent Canopy\"];\n Investment1[this.NoNetLossObj[x].Year] = this.NoNetLossObj[x][\"Investment\"];\n }\n \n let itemsFormatted = [];\n itemsFormatted.push(Existingtrees, NaturalMortalityofExistingTrees, ExistingTreesminusNaturalMortality, newTrees1,\n totalTrees1, CanopyAcres1, PercentCanopy);\n this.NNLScenerio = itemsFormatted;\n let fileTitle = 'NoNetLoss'; // or 'my-unique-title'\n indexfunctions.exportCSVFile(headers, itemsFormatted, fileTitle, \"downloadNoNet\");\n }\n\n ReveseTrendbuild() {\n this.ReveseTrendObj = [];\n let acres = this.TotalAcres;\n let CanAcres = this.startingtrees;\n let onePercentAcre = this.TotalAcres * .01;\n let treePerAcre = 66;\n let mortality = this.globals.constvars.natMortRate;\n let treesInOnePercent = onePercentAcre * treePerAcre;\n let totalTreesinArea = CanAcres * treePerAcre;\n let Year = new Date().getFullYear();\n let length = $(\"#TimeSlider\").slider('value') + 1;\n let endYear = Year + length;\n let eMinusNM = totalTreesinArea;\n let newTrees = 0;\n let totalTrees = newTrees + eMinusNM;\n let CanopyAcres = this.startingtrees;\n let Investment = (Number($('#AveCost').val())+Number($('#AveManCost').val())) * newTrees;\n \n this.ReveseTrendObj.push({\n \"Year\": Year,\n \"Existing Trees\": totalTreesinArea,\n \"Natural Mortality of Existing Trees\": Math.round(mortality * 10000) / 100 + \"%\",\n \"Existing Trees minus Natural Mortality\": eMinusNM,\n \"New Trees Planted to Reverse Current Trend\": newTrees,\n \"Total Trees\": totalTrees,\n \"Canopy Acres to Reverse Current Trend\": Math.round(CanopyAcres),\n \"Percent Canopy\": Math.round((CanopyAcres / acres) * 10000) / 100 + \"%\",\n \"Investment\": Math.round(Investment)\n })\n\n Year = Year + 1;\n while (Year < endYear) {\n totalTreesinArea = totalTrees;\n eMinusNM = Math.round(totalTreesinArea + (totalTreesinArea * mortality));\n newTrees = (totalTreesinArea - eMinusNM) * 2;\n totalTrees = newTrees + eMinusNM;\n CanopyAcres = Math.round(totalTrees / treePerAcre);\n Investment = (Number($('#AveCost').val())+Number($('#AveManCost').val())) * newTrees;\n \n this.ReveseTrendObj.push({\n \"Year\": Year,\n \"Existing Trees\": totalTreesinArea,\n \"Natural Mortality of Existing Trees\": Math.round(mortality * 10000) / 100 + \"%\",\n \"Existing Trees minus Natural Mortality\": eMinusNM,\n \"New Trees Planted to Reverse Current Trend\": newTrees,\n \"Total Trees\": totalTrees,\n \"Canopy Acres to Reverse Current Trend\": Math.round(CanopyAcres),\n \"Percent Canopy\": Math.round((CanopyAcres / acres) * 10000) / 100 + \"%\",\n \"Investment\": Math.round(Investment)\n })\n Year = Year + 1;\n }\n\n let headers = {};\n let Existingtrees = {};\n let NaturalMortalityofExistingTrees = {};\n let ExistingTreesminusNaturalMortality = {};\n let newTrees1 = {};\n let totalTrees1 = {};\n let CanopyAcres1 = {};\n let PercentCanopy = {};\n let Investment1 = {};\n\n for (let x = 0; x < this.ReveseTrendObj.length; x++) {\n if (x == 0) {\n headers[x.toString()] = \"Year\";\n Existingtrees[x.toString()] = \"Existing Trees\";\n NaturalMortalityofExistingTrees[x.toString()] = \"Natural Mortality of Existing Trees\";\n ExistingTreesminusNaturalMortality[x.toString()] = \"Existing Trees minus Natural Mortality\";\n newTrees1[x.toString()] = \"New Trees Planted to Reverse Current Trend\";\n totalTrees1[x.toString()] = \"Total Trees\";\n CanopyAcres1[x.toString()] = \"Canopy Acres to Reverse Current Trend\";\n PercentCanopy[x.toString()] = \"Percent Canopy\";\n Investment1[x.toString()] = \"Investment\";\n }\n headers[this.ReveseTrendObj[x].Year] = this.ReveseTrendObj[x].Year;\n Existingtrees[this.ReveseTrendObj[x].Year] = this.ReveseTrendObj[x][\"Existing Trees\"];\n NaturalMortalityofExistingTrees[this.ReveseTrendObj[x].Year] = this.ReveseTrendObj[x][\"Natural Mortality of Existing Trees\"];\n ExistingTreesminusNaturalMortality[this.ReveseTrendObj[x].Year] = this.ReveseTrendObj[x][\"Existing Trees minus Natural Mortality\"];\n newTrees1[this.ReveseTrendObj[x].Year] = this.ReveseTrendObj[x][\"New Trees Planted to Reverse Current Trend\"];\n totalTrees1[this.ReveseTrendObj[x].Year] = this.ReveseTrendObj[x][\"Total Trees\"];\n CanopyAcres1[this.ReveseTrendObj[x].Year] = this.ReveseTrendObj[x][\"Canopy Acres to Reverse Current Trend\"];\n PercentCanopy[this.ReveseTrendObj[x].Year] = this.ReveseTrendObj[x][\"Percent Canopy\"];\n Investment1[this.ReveseTrendObj[x].Year] = this.ReveseTrendObj[x][\"Investment\"];\n }\n\n let itemsFormatted = [];\n itemsFormatted.push(Existingtrees, NaturalMortalityofExistingTrees, ExistingTreesminusNaturalMortality, newTrees1,\n totalTrees1, CanopyAcres1, PercentCanopy)\n this.RTScenerio = itemsFormatted;\n let fileTitle = 'ReversetheTrend'; // or 'my-unique-title'\n indexfunctions.exportCSVFile(headers, itemsFormatted, fileTitle, \"downloadReverse\");\n }\n\n buildscenrioobj() {\n this.DoNothingbuild();\n this.NoNetLossbuild();\n this.ReveseTrendbuild();\n this.buildSummary();\n }\n\n buildSummary() {\n this.ScenarioSummary = {};\n let Yeararray = [];\n for (let x in this.DoNothingObj) {\n Yeararray.push(this.DoNothingObj[x].Year);\n }\n\n this.ScenarioSummary[\"Years\"] = Yeararray;\n let doNothingPer = [];\n for (let x in this.DoNothingObj) {\n doNothingPer.push(this.DoNothingObj[x][\"Percent Canopy\"]);\n }\n\n this.ScenarioSummary[\"doNothing\"] = doNothingPer;\n let noNetLoss = [];\n for (let x in this.NoNetLossObj) {\n noNetLoss.push(this.NoNetLossObj[x][\"Percent Canopy\"]);\n }\n\n this.ScenarioSummary[\"noNetLoss\"] = noNetLoss;\n let ReversetheTrend = [];\n for (let x in this.ReveseTrendObj) {\n ReversetheTrend.push(this.ReveseTrendObj[x][\"Percent Canopy\"]);\n }\n\n this.ScenarioSummary[\"ReversetheTrend\"] = ReversetheTrend\n // let VisonPer = []\n // for (let x in this.VisionObj) {\n // VisonPer.push(this.VisionObj[x][\"Percent Canopy\"])\n // }\n // ScenarioSummary[\"Vision\"] = VisonPer\n let headers = {};\n let donothing = {};\n let nonetloss = {};\n let reverse = {};\n // let vision = {};\n\n for (let x = 0; x < this.ScenarioSummary[\"Years\"].length; x++) {\n if (x == 0) {\n headers[x.toString()] = \"Year\";\n if ($(\"#DoNothingcheck\").is(':checked')) {\n donothing[x.toString()] = \"Current Canopy Trend\";\n }\n if ($(\"#NoNetlosscheck\").is(':checked')) {\n nonetloss[x.toString()] = \"Canopy Goal: No Net Loss\";\n }\n if ($(\"#Reversecheck\").is(':checked')) {\n reverse[x.toString()] = \"Canopy Goal: Reverse the Trend\";\n }\n // if ($(\"#Visioncheck\").is(':checked')) {\n // vision[x.toString()] = \"Canopy Goal: Vision\"\n // }\n }\n headers[this.ScenarioSummary[\"Years\"][x]] = this.ScenarioSummary[\"Years\"][x];\n donothing[this.ScenarioSummary[\"Years\"][x]] = this.ScenarioSummary[\"Years\"][x];\n nonetloss[this.ScenarioSummary[\"Years\"][x]] = this.ScenarioSummary[\"Years\"][x];\n reverse[this.ScenarioSummary[\"Years\"][x]] = this.ScenarioSummary[\"Years\"][x];\n // vision[this.ScenarioSummary[\"Years\"][x]] = this.ScenarioSummary[\"Years\"][x];\n }\n\n let itemsFormatted = [];\n let ScenariosToReport = [];\n if ($(\"#DoNothingcheck\").is(':checked')) {\n itemsFormatted.push(donothing);\n if (this.DNScenerio[0][\"0\"] !== \"Do Nothing Scenario\") {\n this.DNScenerio.unshift({\n \"0\": \"Do Nothing Scenario\"\n })\n }\n ScenariosToReport.push({\n \"0\": \" \"\n })\n ScenariosToReport.push({\n \"0\": \" \"\n })\n for (let x in this.DNScenerio) {\n ScenariosToReport.push(this.DNScenerio[x])\n }\n }\n\n if ($(\"#NoNetlosscheck\").is(':checked')) {\n itemsFormatted.push(nonetloss);\n if (this.NNLScenerio[0][\"0\"] !== \"No Net Loss Scenario\") {\n this.NNLScenerio.unshift({\n \"0\": \"No Net Loss Scenario\"\n })\n }\n ScenariosToReport.push({\n \"0\": \" \"\n })\n ScenariosToReport.push({\n \"0\": \" \"\n })\n for (let x in this.NNLScenerio) {\n ScenariosToReport.push(this.NNLScenerio[x])\n }\n }\n\n if ($(\"#Reversecheck\").is(':checked')) {\n itemsFormatted.push(reverse);\n if (this.RTScenerio[0][\"0\"] !== \"Reverse the Trend Scenario\") {\n this.RTScenerio.unshift({\n \"0\": \"Reverse the Trend Scenario\"\n })\n }\n ScenariosToReport.push({\n \"0\": \" \"\n })\n ScenariosToReport.push({\n \"0\": \" \"\n })\n for (let x in this.RTScenerio) {\n ScenariosToReport.push(this.RTScenerio[x])\n }\n }\n \n // if ($(\"#Visioncheck\").is(':checked')) {\n // itemsFormatted.push(vision)\n // if (VScenerio[0][\"0\"] !== \"Vision Scenario\") {\n // VScenerio.unshift({\n // \"0\": \"Vision Scenario\"\n // })\n // }\n // ScenariosToReport.push({\n // \"0\": \" \"\n // })\n // ScenariosToReport.push({\n // \"0\": \" \"\n // })\n // for (x in VScenerio) {\n // ScenariosToReport.push(VScenerio[x])\n // }\n // }\n\n if ($(\".scenario\").is(':checked')) {\n itemsFormatted.unshift(headers);\n itemsFormatted.unshift({\n \"0\": \"Scenario Summary\"\n })\n ScenariosToReport.push({\n \"0\": \" \"\n })\n ScenariosToReport.push({\n \"0\": \" \"\n })\n for (let x in itemsFormatted) {\n ScenariosToReport.push(itemsFormatted[x])\n }\n }\n\n let fileTitle = 'ScenarioSummaryReport'; // or 'my-unique-title'\n indexfunctions.exportCSVFile(null, ScenariosToReport, fileTitle, \"downloadSummary\", {\n \"0\": \"Scenario Summary Report\"\n });\n this.buildsummaryplot();\n }\n\n buildsummaryplot() {\n var donothing = {\n x: this.ScenarioSummary[\"Years\"],\n y: this.ScenarioSummary[\"doNothing\"],\n type: 'scatter',\n name: \"Do Nothing\"\n };\n \n var noNetLoss = {\n x: this.ScenarioSummary[\"Years\"],\n y: this.ScenarioSummary[\"noNetLoss\"],\n type: 'scatter',\n name: \"No Net Loss\"\n };\n \n var ReversetheTrend = {\n x: this.ScenarioSummary[\"Years\"],\n y: this.ScenarioSummary[\"ReversetheTrend\"],\n type: 'scatter',\n name: \"Reverse the Trend\"\n };\n \n // var Vision = {\n // x: ScenarioSummary.Years,\n // y: ScenarioSummary.Vision,\n // type: 'scatter',\n // name: \"Vision\"\n // };\n \n var tablevalues = [this.ScenarioSummary[\"Years\"]];\n var tableheaders = [\n [\"Years\"]\n ];\n var axis = {\n showline: true,\n zeroline: false,\n showgrid: true,\n mirror: true,\n ticklen: 4,\n gridcolor: '#ffffff',\n tickfont: {\n size: 10\n },\n }\n var axis1 = {\n domain: [1, 1],\n anchor: 'y1'\n }\n var axis4 = {\n domain: [0.7, 1],\n anchor: 'x1'\n }\n var layout = {\n title: 'Scenario Summary',\n width: $('#TableDiv').width() - 150, //add padding around table\n height: $('#bottompanel').height() - 50, //gives rooms for buttons\n xaxis1: Object.assign(axis1, axis),\n yaxis1: Object.assign(axis4, axis),\n margin: {\n t: 35,\n b: 10,\n r: 30,\n l: 30\n }\n };\n var data = [];\n\n if ($(\"#DoNothingcheck\").is(':checked')) {\n data.push(donothing);\n tablevalues.push(this.ScenarioSummary[\"doNothing\"]);\n tableheaders.push([\"DoNothing\"]);\n }\n if ($(\"#NoNetlosscheck\").is(':checked')) {\n data.push(noNetLoss);\n tablevalues.push(this.ScenarioSummary[\"noNetLoss\"]);\n tableheaders.push([\"NoNetLoss\"]);\n }\n if ($(\"#Reversecheck\").is(':checked')) {\n data.push(ReversetheTrend);\n tablevalues.push(this.ScenarioSummary[\"ReversetheTrend\"]);\n tableheaders.push([\"ReversetheTrend\"]);\n }\n // if ($(\"#Visioncheck\").is(':checked')) {\n // data.push(Vision)\n // tablevalues.push(ScenarioSummary.Vision)\n // tableheaders.push([\"Vision\"])\n // }\n\n var table = {\n type: 'table',\n header: {\n values: tableheaders,\n align: \"center\",\n line: {\n width: 1,\n color: 'black'\n },\n fill: {\n color: \"#7cb054\"\n },\n font: {\n family: \"Noto Serif\",\n size: 12,\n color: \"white\"\n }\n },\n cells: {\n values: tablevalues,\n align: \"center\",\n line: {\n color: \"black\",\n width: 1\n },\n font: {\n family: \"Noto Serif\",\n size: 11,\n color: [\"black\"]\n }\n },\n xaxis: 'x',\n yaxis: 'y',\n domain: {\n x: [0, 1],\n y: [0, .5]\n }\n }\n data.push(table);\n Plotly.newPlot('Summaryplot', data, layout, this.config);\n }\n\n totalbenefitreport(){\n this.benepdfinfo=this.globals.globalvars.benepdfinfo\n console.log(this.globals.globalvars.benepdfinfo)\n let targetSliderValue = $(\"#targetSlider\").slider('value');\n let increaseSliderValue = $(\"#increaseSlider\").slider('value');\n let averageSliderValue = (Number($('#SMaverageSlider').slider('value')) * ($('#sizeDistValmin').val() / 100) + (Number($('#MEDaverageSlider').slider('value')) * $('#sizeDistValmd').val() / 100) + (Number($('#LGaverageSlider').slider('value')) * ($('#sizeDistValmax').val() / 100)));\n let mortalitySliderValue = $('#mortalitySlider').slider('value');\n let costSliderValue = (Number($('#AveCost').val()) + Number($('#AveManCost').val()));\n let goalValue = $('#goal').val();\n let time = $(\"#TimeSlider\").slider('value');\n let today = new Date();\n let frame = document.getElementById(\"theFrame\");\n let goal;\n\n if (goalValue == \"increaseSliderDiv\") {\n goal = \"Increase Canopy by \" + increaseSliderValue + \"% in \" + time + \" year(s)\";\n } else {\n goal = \"Target Canopy of \" + targetSliderValue + \"% in \" + time + \" year(s)\";\n }\n\n var docDefinition = {\n pageMargins: 80,\n header: [\"\", {\n text: 'Modeled Report',\n style: 'headerStyle',\n margin: [30, 20, 30, 1]\n },\n {\n text: `Date: ` + (today.getMonth() + 1) + `/` + today.getDate() + `/` + today.getFullYear(),\n style: 'headerStyle',\n margin: [30, 1]\n },\n {\n text: `Goal: ` + goal,\n style: 'headerStyle',\n margin: [30, 1]\n },\n {\n text: this.isUK == true?(`Parameters: Cost: £` + costSliderValue + `; Tree Crown: ` + averageSliderValue + ` m; Mortality Rate: ` + mortalitySliderValue + `%`):(`Parameters: Cost: $` + costSliderValue + `; Tree Crown: ` + averageSliderValue + ` ft; Mortality Rate: ` + mortalitySliderValue + `%`),\n style: 'headerStyle',\n margin: [30, 1]\n },\n ],\n content: this.isUK == true? [{\n margin: [0, -63, -25, 20],\n alignment: 'right',\n image: 'data:image/png;base64,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'\n },' ',\n {\n text: 'EXECUTIVE TREE SUMMARY',\n style: 'titleStyle'\n }, ' ', {\n text: `Hectares Added: ` + this.benepdfinfo.totaladdedacres,\n style: 'titleStyle',\n margin: [30, 1]\n }, ' ', ' ', ' ',\n 'Tree Benefit Estimates: Carbon',\n {\n layout: 'lightHorizontalLines', // optional\n table: {\n headerRows: 1,\n widths: ['auto', 'auto', 'auto', 'auto', 'auto'],\n \n body: [\n [{\n text: 'Description',\n style: 'descriptionStyle'\n }, 'Carbon (Metric Tons)', 'Value (GBP)', 'Projected Carbon (Metric Tons)', 'Projected Value (GBP)'],\n [{\n text: 'Sequestered annually in trees',\n style: 'descriptionStyle'\n }, numeral(this.benepdfinfo.totalseqCamount).format('0,0'), \"£\" + numeral(this.benepdfinfo.totalseqC).format('0,0'), numeral(this.benepdfinfo.totalseqPamount).format('0,0'), \"£\" + numeral(this.benepdfinfo.totalseqP).format('0,0')],\n [{\n text: 'Stored in trees',\n style: 'descriptionStyle'\n }, numeral(this.benepdfinfo.totalstCamount).format('0,0'), \"£\" + numeral(this.benepdfinfo.totalstC).format('0,0'), numeral(this.benepdfinfo.totalstPamount).format('0,0'), \"£\" + numeral(this.benepdfinfo.totalstP).format('0,0')]\n ]\n }\n },\n ' ', ' ',\n 'Tree Benefit Estimates: Air Pollution', ' ',\n {\n layout: 'lightHorizontalLines', // optional\n table: {\n headerRows: 1,\n widths: ['auto', 'auto', 'auto', 'auto', 'auto', 'auto'],\n \n body: [\n ['Abbr.', {\n text: 'Description',\n style: 'descriptionStyle'\n }, 'Amount (g)', 'Value (GBP)', 'Projected Amount (g)', 'Projected Value (GBP)'],\n ['CO', {\n text: 'Carbon Monoxide removed annually',\n style: 'descriptionStyle'\n }, numeral(this.benepdfinfo.totalCOCamount).format('0,0'), \"£\" + numeral(this.benepdfinfo.totalCOC).format('0,0'), numeral(this.benepdfinfo.totalCOPamount).format('0,0'), \"£\" + numeral(this.benepdfinfo.totalCOP).format('0,0')],\n ['NO2', {\n text: 'Nitrogen Dioxide removed annually',\n style: 'descriptionStyle'\n }, numeral(this.benepdfinfo.totalNO2Camount).format('0,0'), \"£\" + numeral(this.benepdfinfo.totalNO2C).format('0,0'), numeral(this.benepdfinfo.totalNO2Pamount).format('0,0'), \"£\" + numeral(this.benepdfinfo.totalNO2P).format('0,0')],\n ['O3', {\n text: 'Ozone removed annually',\n style: 'descriptionStyle'\n }, numeral(this.benepdfinfo.totalO3Camount).format('0,0'), \"£\" + numeral(this.benepdfinfo.totalO3C).format('0,0'), numeral(this.benepdfinfo.totalO3Pamount).format('0,0'), \"£\" + numeral(this.benepdfinfo.totalO3P).format('0,0')],\n ['SO2', {\n text: 'Sulfur Dioxide removed annually',\n style: 'descriptionStyle'\n }, numeral(this.benepdfinfo.totalSO2Camount).format('0,0'), \"£\" + numeral(this.benepdfinfo.totalSO2C).format('0,0'), numeral(this.benepdfinfo.totalSO2Pamount).format('0,0'), \"£\" + numeral(this.benepdfinfo.totalSO2P).format('0,0')],\n ['PM10', {\n text: 'Particulate Matter greater than 2.5 microns and less than 10 microns removed',\n style: 'descriptionStyle'\n }, numeral(this.benepdfinfo.totalPM10Camount).format('0,0'), \"£\" + numeral(this.benepdfinfo.totalPM10C).format('0,0'), numeral(this.benepdfinfo.totalPM10Pamount).format('0,0'), \"£\" + numeral(this.benepdfinfo.totalPM10P).format('0,0')],\n ['Total', '', numeral(this.benepdfinfo.totalairCamount).format('0,0'), \"£\" + numeral(this.benepdfinfo.totalairC).format('0,0'), numeral(this.benepdfinfo.totalairPamount).format('0,0'), \"£\" + numeral(this.benepdfinfo.totalairP).format('0,0')]\n ]\n }\n },\n ' ', ' ',\n 'Tree Benefit Estimates: Hydrological', ' ',\n {\n layout: 'lightHorizontalLines', // optional\n table: {\n headerRows: 1,\n widths: ['auto', 'auto', 'auto', 'auto', 'auto', 'auto'],\n \n body: [\n ['Abbr.', {\n text: 'Description',\n style: 'descriptionStyle'\n }, 'Amount (L)', 'Value (GBP)', 'Projected Amount (L)', 'Projected Value (GBP)'],\n ['AVRO', {\n text: 'Avoided Runoff',\n style: 'descriptionStyle'\n }, numeral(this.benepdfinfo.totalstormCamount).format('0,0'), \"£\" + numeral(this.benepdfinfo.totalstormC).format('0,0'), numeral(this.benepdfinfo.totalstormPamount).format('0,0'), \"£\" + numeral(this.benepdfinfo.totalstormP).format('0,0')]\n ]\n }\n }\n ]:[{\n margin: [0, -63, -25, 20],\n alignment: 'right',\n image: 'data:image/png;base64,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'\n },' ',\n {\n text: 'EXECUTIVE TREE SUMMARY',\n style: 'titleStyle'\n }, ' ', {\n text: `Acres Added: ` + this.benepdfinfo.totaladdedacres,\n style: 'titleStyle',\n margin: [30, 1]\n }, ' ', ' ', ' ',\n 'Tree Benefit Estimates: Carbon',\n {\n layout: 'lightHorizontalLines', // optional\n table: {\n headerRows: 1,\n widths: ['auto', 'auto', 'auto', 'auto', 'auto'],\n \n body: [\n [{\n text: 'Description',\n style: 'descriptionStyle'\n }, 'Carbon (Tons)', 'Value (USD)', 'Projected Carbon (Tons)', 'Projected Value (USD)'],\n [{\n text: 'Sequestered annually in trees',\n style: 'descriptionStyle'\n }, numeral(this.benepdfinfo.totalseqCamount).format('0,0'), \"$\" + numeral(this.benepdfinfo.totalseqC).format('0,0'), numeral(this.benepdfinfo.totalseqPamount).format('0,0'), \"$\" + numeral(this.benepdfinfo.totalseqP).format('0,0')],\n [{\n text: 'Stored in trees',\n style: 'descriptionStyle'\n }, numeral(this.benepdfinfo.totalstCamount).format('0,0'), \"$\" + numeral(this.benepdfinfo.totalstC).format('0,0'), numeral(this.benepdfinfo.totalstPamount).format('0,0'), \"$\" + numeral(this.benepdfinfo.totalstP).format('0,0')]\n ]\n }\n },\n ' ', ' ',\n 'Tree Benefit Estimates: Air Pollution', ' ',\n {\n layout: 'lightHorizontalLines', // optional\n table: {\n headerRows: 1,\n widths: ['auto', 'auto', 'auto', 'auto', 'auto', 'auto'],\n \n body: [\n ['Abbr.', {\n text: 'Description',\n style: 'descriptionStyle'\n }, 'Amount (lb)', 'Value (USD)', 'Projected Amount (lb)', 'Projected Value (USD)'],\n ['CO', {\n text: 'Carbon Monoxide removed annually',\n style: 'descriptionStyle'\n }, numeral(this.benepdfinfo.totalCOCamount).format('0,0'), \"$\" + numeral(this.benepdfinfo.totalCOC).format('0,0'), numeral(this.benepdfinfo.totalCOPamount).format('0,0'), \"$\" + numeral(this.benepdfinfo.totalCOP).format('0,0')],\n ['NO2', {\n text: 'Nitrogen Dioxide removed annually',\n style: 'descriptionStyle'\n }, numeral(this.benepdfinfo.totalNO2Camount).format('0,0'), \"$\" + numeral(this.benepdfinfo.totalNO2C).format('0,0'), numeral(this.benepdfinfo.totalNO2Pamount).format('0,0'), \"$\" + numeral(this.benepdfinfo.totalNO2P).format('0,0')],\n ['O3', {\n text: 'Ozone removed annually',\n style: 'descriptionStyle'\n }, numeral(this.benepdfinfo.totalO3Camount).format('0,0'), \"$\" + numeral(this.benepdfinfo.totalO3C).format('0,0'), numeral(this.benepdfinfo.totalO3Pamount).format('0,0'), \"$\" + numeral(this.benepdfinfo.totalO3P).format('0,0')],\n ['SO2', {\n text: 'Sulfur Dioxide removed annually',\n style: 'descriptionStyle'\n }, numeral(this.benepdfinfo.totalSO2Camount).format('0,0'), \"$\" + numeral(this.benepdfinfo.totalSO2C).format('0,0'), numeral(this.benepdfinfo.totalSO2Pamount).format('0,0'), \"$\" + numeral(this.benepdfinfo.totalSO2P).format('0,0')],\n ['PM10', {\n text: 'Particulate Matter greater than 2.5 microns and less than 10 microns removed',\n style: 'descriptionStyle'\n }, numeral(this.benepdfinfo.totalPM10Camount).format('0,0'), \"$\" + numeral(this.benepdfinfo.totalPM10C).format('0,0'), numeral(this.benepdfinfo.totalPM10Pamount).format('0,0'), \"$\" + numeral(this.benepdfinfo.totalPM10P).format('0,0')],\n ['Total', '', numeral(this.benepdfinfo.totalairCamount).format('0,0'), \"$\" + numeral(this.benepdfinfo.totalairC).format('0,0'), numeral(this.benepdfinfo.totalairPamount).format('0,0'), \"$\" + numeral(this.benepdfinfo.totalairP).format('0,0')]\n ]\n }\n },\n ' ', ' ',\n 'Tree Benefit Estimates: Hydrological', ' ',\n {\n layout: 'lightHorizontalLines', // optional\n table: {\n headerRows: 1,\n widths: ['auto', 'auto', 'auto', 'auto', 'auto', 'auto'],\n \n body: [\n ['Abbr.', {\n text: 'Description',\n style: 'descriptionStyle'\n }, 'Amount (gal)', 'Value (USD)', 'Projected Amount (gal)', 'Projected Value (USD)'],\n ['AVRO', {\n text: 'Avoided Runoff',\n style: 'descriptionStyle'\n }, numeral(this.benepdfinfo.totalstormCamount).format('0,0'), \"$\" + numeral(this.benepdfinfo.totalstormC).format('0,0'), numeral(this.benepdfinfo.totalstormPamount).format('0,0'), \"$\" + numeral(this.benepdfinfo.totalstormP).format('0,0')]\n ]\n }\n }\n ],\n \n defaultStyle: {\n fontSize: 9,\n alignment: 'center'\n },\n \n styles: {\n descriptionStyle: {\n alignment: 'left'\n },\n headerStyle: {\n alignment: 'left',\n bold: true,\n },\n titleStyle: {\n alignment: 'center',\n bold: true,\n fontSize: 12,\n }\n }\n };\n\n pdfMake.createPdf(docDefinition).open();\n }\n\n openclosetable (){\n if(document.getElementById(\"TableDiv\").style.display !== \"block\"){\n this.calculate();\n this.buildscenrioobj();\n this.buildTable();\n this.showtable('#TreeAnalysis_wrapper','#Resourcebtn','#downloadTreebtn',null,'#AnaylsisTablebtns');\n document.getElementById(\"toggletable\").innerHTML = ''\n }else{\n document.getElementById(\"TableDiv\").style.display = \"none\"\n document.getElementById('bottompanel').style.height='50px'\n document.getElementById(\"toggletable\").innerHTML = ''\n }\n }\n\n hidetables(){\n $(\"#VacantSiteTable_wrapper\").hide()\n $(\"#downloadSelSitebtn\").hide()\n $(\"#downloadAllSitebtn\").hide()\n $(\"#TreeAnalysis_wrapper\").hide()\n $(\"#downloadTreebtn\").hide()\n $(\"#BenefitTable_wrapper\").hide()\n $(\"#downloadBenefitbtn\").hide()\n $(\"#DoNothingTable_wrapper\").hide()\n $(\"#downloadDonothingbtn\").hide()\n $(\"#NoNetLossTable_wrapper\").hide()\n $(\"#downloadNoNetbtn\").hide()\n $(\"#ReverseTable_wrapper\").hide()\n $(\"#downloadReversebtn\").hide()\n $(\"#Summaryplot\").hide()\n $(\"#downloadSummarybtn\").hide()\n $(\"#DiversityTable_wrapper\").hide()\n $(\"#downloadDiversitybtn\").hide()\n // $(\"#VisionTable_wrapper\").hide()\n // $(\"#downloadVisionbtn\").hide()\n }\n\n showtable(tableid,btnid=null,download=null,download2=null,tableoptions=null) {\n document.getElementById(\"toggletable\").innerHTML = ''\n this.hidetables();\n\n for(let x=0;x<$('.update').length;x++) {\n $('.update')[x].classList='update'\n }\n\n $('.tableoptions').hide()\n if(tableid == 'scenario'){\n if($(\"#DoNothingcheck\").is(':checked')){\n tableid = \"#DoNothingTable_wrapper\";\n download = \"#downloadDonothingbtn\";\n btnid = \"#Dobtn\";\n }else if($(\"#NoNetlosscheck\").is(':checked')){\n tableid = \"#NoNetLossTable_wrapper\";\n download = \"#downloadNoNetbtn\";\n btnid = \"#Nobtn\";\n }else if($(\"#Reversecheck\").is(':checked')){\n tableid = \"#ReverseTable_wrapper\";\n download = \"#downloadReversebtn\";\n btnid = \"#Reversebtn\";\n }\n // else if($(\"#Visioncheck\").is(':checked')){\n // tableid = \"#VisionTable_wrapper\";\n // download = \"#downloadVisionbtn\";\n // btnid = \"#Visionbtn\";\n // }\n\n $('#ScenarioTablesbtns').show()\n $(btnid)[0].classList=\"update active\"\n }\n $(tableid).show()\n if(download!==null){\n $(download).show()\n }if(download2!==null){\n $(download2).show()\n }\n if(tableoptions!==null){\n $(tableoptions).show()\n }\n\n $(btnid)[0].classList=\"update active\"\n if(tableid == '#VacantSiteTable_wrapper'){\n $(\"#vacantsitebuttons\").show()\n }else{\n $(\"#vacantsitebuttons\").hide()\n }\n $(\"#TableDiv\").show();\n // buildsummaryplot()\n this.buildTable();\n }\n\n buildTable() {\n let tables = [{\n tablediv: 'TreeAnalysis',\n tablename: 'Tree Resource',\n deletecolumn: false,\n size: \"TABLOID\"\n },\n {\n tablediv: 'BenefitTable',\n tablename: 'Tree Benefits',\n deletecolumn: true,\n size: \"TABLOID\"\n },\n {\n tablediv: 'DoNothingTable',\n tablename: 'Do Nothing Scenario',\n deletecolumn: false\n },\n {\n tablediv: 'NoNetLossTable',\n tablename: 'No Net Loss Scenario',\n deletecolumn: false\n },\n {\n tablediv: 'ReverseTable',\n tablename: 'Reverse Trend Scenario',\n deletecolumn: false\n },\n // {\n // tablediv: 'VisionTable',\n // tablename: 'Vision Scenario',\n // deletecolumn: false\n // },\n {\n tablediv: 'VacantSiteTable',\n tablename: 'Vacant Sites',\n deletecolumn: false\n },\n {\n tablediv: 'DiversityTable',\n tablename: 'Diversity',\n deletecolumn: false\n }\n ]\n\n let targetSliderValue = $(\"#targetSlider\").slider('value');\n let increaseSliderValue = $(\"#increaseSlider\").slider('value');\n let averageSliderValue = (Number($('#SMaverageSlider').slider('value')) * ($('#sizeDistValmin').val() / 100) + (Number($('#MEDaverageSlider').slider('value')) * $('#sizeDistValmd').val() / 100) + (Number($('#LGaverageSlider').slider('value')) * ($('#sizeDistValmax').val() / 100)));\n let mortalitySliderValue = $('#mortalitySlider').slider('value');\n let costSliderValue = (Number($('#AveCost').val()) + Number($('#AveManCost').val()));\n let goalValue = $('#goal').val();\n let time = $(\"#TimeSlider\").slider('value');\n let today = new Date();\n let goal;\n \n if (goalValue == \"increaseSliderDiv\") {\n goal = \"Increase Canopy by \" + increaseSliderValue + \"% in \" + time + \" year(s)\"\n } else {\n goal = \"Target Canopy of \" + targetSliderValue + \"% in \" + time + \" year(s)\"\n }\n if (document.getElementById(\"prioritize\").style.display !== \"block\" && !this.prioritylayers.includes($(\"#layer\").val())) {\n $('#TreeAnalysis').DataTable().columns([1]).visible(false);\n $('#BenefitTable').DataTable().columns([1]).visible(false);\n } else {\n $('#TreeAnalysis').DataTable().columns([1]).visible(true);\n $('#BenefitTable').DataTable().columns([1]).visible(true);\n }\n \n function updatepdftable(tablediv, tablename, deletecolumn, size = 'LETTER', isUK) { //TODO refactor out?\n $('#' + tablediv).DataTable().button().add(0, {\n extend: 'pdfHtml5',\n text: 'Save current page',\n download: \"open\",\n orientation: \"landscape\",\n pageSize: size,\n customize: function (doc) {\n doc.styles.tableBodyEven.alignment = 'center';\n doc.styles.tableBodyOdd.alignment = 'center';\n doc.content[1].table.body[0].forEach((cell) => {\n cell.fillColor = '#a4c988'\n })\n if (deletecolumn == true) {\n doc.content[1].table.body.forEach((row) => {\n row.pop()\n })\n }\n doc.styles.title.alignment = \"left\"\n doc.styles.title.fontSize = 11\n doc.content.splice(1, 0, {\n margin: [0, -50, 0, 20],\n alignment: 'right',\n image: 'data:image/png;base64,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'\n });\n },\n title: isUK == true? \n (`` + tablename + `\n Date:` + (today.getMonth() + 1) + `/` + today.getDate() + `/` + today.getFullYear() + `\n Goal: ` + goal + `\n Parameters: Cost: £` + costSliderValue + `; Tree Crown: ` + averageSliderValue + ` m; Mortality Rate: ` + mortalitySliderValue + `%`):\n (`` + tablename + `\n Date:` + (today.getMonth() + 1) + `/` + today.getDate() + `/` + today.getFullYear() + `\n Goal: ` + goal + `\n Parameters: Cost: $` + costSliderValue + `; Tree Crown: ` + averageSliderValue + ` ft; Mortality Rate: ` + mortalitySliderValue + `%`)\n })\n }\n\n for (let x = 0; x < tables.length; x++) {\n updatepdftable(tables[x].tablediv, tables[x].tablename, tables[x].deletecolumn, tables[x].size, this.isUK)\n }\n \n //get which table is shown and which are hidden\n // the tables are being constently destroyed and rebuilt, this allows us to bring up the same table when they are rebuilt\n // without this the last table created will be shown and not the one the user was currently looking at\n var tableshown, tablehidden;\n if (document.getElementById(\"TableDiv\").style.display !== \"block\") {\n tableshown = \"none\";\n tablehidden = [\"TreeAnalysis_wrapper\", \"BenefitTable_wrapper\", \"DoNothingTable_wrapper\", \"NoNetLossTable_wrapper\", \"ReverseTable_wrapper\", \"VacantSiteTable_wrapper\",\"DiversityTable_wrapper\"]\n } else if (document.getElementById(\"TreeAnalysis_wrapper\").style.display == \"block\") {\n tableshown = \"TreeAnalysis_wrapper\";\n tablehidden = [\"BenefitTable_wrapper\", \"DoNothingTable_wrapper\", \"NoNetLossTable_wrapper\", \"ReverseTable_wrapper\", \"VacantSiteTable_wrapper\",\"DiversityTable_wrapper\"]\n } else if (document.getElementById(\"BenefitTable_wrapper\").style.display == \"block\") {\n tableshown = \"BenefitTable_wrapper\";\n tablehidden = [\"TreeAnalysis_wrapper\", \"DoNothingTable_wrapper\", \"NoNetLossTable_wrapper\", \"ReverseTable_wrapper\", \"VacantSiteTable_wrapper\",\"DiversityTable_wrapper\"]\n } else if (document.getElementById(\"DoNothingTable_wrapper\").style.display == \"block\") {\n tableshown = \"DoNothingTable_wrapper\";\n tablehidden = [\"TreeAnalysis_wrapper\", \"BenefitTable_wrapper\", \"NoNetLossTable_wrapper\", \"ReverseTable_wrapper\", \"VacantSiteTable_wrapper\",\"DiversityTable_wrapper\"]\n } else if (document.getElementById(\"NoNetLossTable_wrapper\").style.display == \"block\") {\n tableshown = \"NoNetLossTable_wrapper\";\n tablehidden = [\"TreeAnalysis_wrapper\", \"BenefitTable_wrapper\", \"DoNothingTable_wrapper\", \"ReverseTable_wrapper\", \"VacantSiteTable_wrapper\",\"DiversityTable_wrapper\"]\n } else if (document.getElementById(\"ReverseTable_wrapper\").style.display == \"block\") {\n tableshown = \"ReverseTable_wrapper\";\n tablehidden = [\"TreeAnalysis_wrapper\", \"BenefitTable_wrapper\", \"DoNothingTable_wrapper\", \"NoNetLossTable_wrapper\", \"VacantSiteTable_wrapper\",\"DiversityTable_wrapper\"]\n // } else if (document.getElementById(\"VisionTable_wrapper\").style.display == \"block\") {\n // tableshown = \"VisionTable_wrapper\";\n // tablehidden = [\"TreeAnalysis_wrapper\", \"BenefitTable_wrapper\", \"DoNothingTable_wrapper\", \"NoNetLossTable_wrapper\", \"ReverseTable_wrapper\", \"VacantSiteTable_wrapper\"]\n }if (document.getElementById(\"DiversityTable_wrapper\").style.display == \"block\") {\n tableshown = \"DiversityTable_wrapper\";\n tablehidden = [\"TreeAnalysis_wrapper\", \"BenefitTable_wrapper\", \"DoNothingTable_wrapper\", \"NoNetLossTable_wrapper\", \"ReverseTable_wrapper\", \"VacantSiteTable_wrapper\"]\n } else if (document.getElementById(\"VacantSiteTable_wrapper\").style.display == \"block\") {\n tableshown = \"VacantSiteTable_wrapper\";\n tablehidden = [\"TreeAnalysis_wrapper\", \"BenefitTable_wrapper\", \"DoNothingTable_wrapper\", \"NoNetLossTable_wrapper\", \"ReverseTable_wrapper\",\"DiversityTable_wrapper\"]\n }\n\n if (tableshown == undefined) { // TODO else if statements?\n tableshown = \"TreeAnalysis_wrapper\";\n tablehidden = [\"TreeAnalysis_wrapper\", \"BenefitTable_wrapper\", \"DoNothingTable_wrapper\", \"NoNetLossTable_wrapper\", \"ReverseTable_wrapper\", \"VacantSiteTable_wrapper\",\"DiversityTable_wrapper\"]\n };\n\n let height:any = parseInt(($('#TableDiv').css('height')).replace('px', ''));\n height = height + 'px';\n \n if (tableshown == \"TreeAnalysis_wrapper\") {\n this.refreshTableWithDataFromObject('TreeAnalysis', this.globals.globalvars.ModeledUTCobj, height)\n }\n if (tableshown == \"BenefitTable_wrapper\") {\n this.refreshTableWithDataFromObject('BenefitTable', this.globals.globalvars.BenefitObj, height - 90)\n }\n if (tableshown == \"DoNothingTable_wrapper\") {\n this.refreshTableWithDataFromObject('DoNothingTable', this.DoNothingObj, height)\n }\n if (tableshown == \"NoNetLossTable_wrapper\") {\n this.refreshTableWithDataFromObject('NoNetLossTable', this.NoNetLossObj, height)\n }\n if (tableshown == \"ReverseTable_wrapper\") {\n this.refreshTableWithDataFromObject('ReverseTable', this.ReveseTrendObj, height)\n }\n // if (tableshown == \"VisionTable_wrapper\") {\n // this.refreshTableWithDataFromObject('VisionTable', this.VisionObj, height)\n // }\n if (tableshown == \"DiversityTable_wrapper\") {\n this.refreshTableWithDataFromObject('DiversityTabl', [], height)\n }\n if (tableshown == \"VacantSiteTable_wrapper\") {\n this.refreshTableWithDataFromObject('VacantSiteTable', [], height)\n }\n if (tableshown !== 'none') {\n document.getElementById(tableshown).style.display = \"block\";\n tablehidden.forEach(table => {\n document.getElementById(table).style.display = \"none\";\n })\n }\n }\n \n refreshTableWithDataFromObject(tableName, dataObject, height) { //TODO height delete param?\n var rows = [];\n if (tableName == \"BenefitTable\") {\n for (x in this.globals.globalvars.BenefitObj) {\n let array = [];\n for (a in this.globals.globalvars.BenefitObj[x]) {\n if (!(a.includes(\"Rank\") || a.includes(\"AQTot\") || a.includes(\"Car\") || a.includes(\"Runoff\") || a.includes(\"Storm\") || a.includes(\"id\") || a.includes(\"CurrentTree\") || a.includes(\"ProjectedTree\") || a.includes(\"zoom\"))) {\n continue\n }\n array.push(this.globals.globalvars.BenefitObj[x][a]);\n }\n rows.push(array);\n }\n } else {\n for (var x in dataObject) {\n let array = [];\n for (var a in dataObject[x]) {\n array.push(dataObject[x][a]);\n }\n rows.push(array);\n }\n }\n this.redrawTableWithDataAndNewHeight(tableName, rows);\n }\n \n redrawTableWithDataAndNewHeight(tableName, rows) {\n $('#' + tableName).DataTable().clear();\n $('#' + tableName).DataTable().column(0).search('').draw()\n $('#' + tableName).DataTable().rows.add(rows).draw(true);\n $('#bottompanel').height($('.TableBox').height() + 50)\n }\n ngOnInit(): void {\n $('.scenario').click(()=>{this.buildscenrioobj()})\n }\n\n}\n","
\n
\n \n \n \n \n \n
\n
\n
\n
\n
\n \n \n \n
\n
\n \n \n
\n
\n \n \n \n \n
\n
\n \n \n \n
\n
\n \n \n \n
\n
\n \n \n \n
\n \n
\n \n \n \n
\n
\n \n \n \n
\n \n
\n \n \n
\n
\n
\n \n \n
\n
\n \n \n \n \n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n
","function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"zn8P\";"],"sourceRoot":"webpack:///"}