{"version":3,"sources":["webpack:///src/app/plant/plant.component.ts","webpack:///src/app/plant/plant.component.html","webpack:///src/app/indexfunctions.ts","webpack:///src/app/map/map.tools.ts","webpack:///src/app/priority-slider/priority-slider.component.ts","webpack:///src/app/priority-slider/priority-slider.component.html","webpack:///src/app/login-forget-pass/login-forget-pass.component.ts","webpack:///src/app/login-forget-pass/login-forget-pass.component.html","webpack:///src/app/toolbar-components/toolspopup/toolspopup.component.ts","webpack:///src/app/toolbar-components/toolspopup/toolspopup.component.html","webpack:///src/app/app.resource-report.ts","webpack:///src/app/toolbar-components/toolbar-layer-filters/toolbar-layer-filters.component.ts","webpack:///src/app/toolbar-components/toolbar-layer-filters/toolbar-layer-filters.component.html","webpack:///src/environments/environment.ts","webpack:///src/app/overview/overview.component.ts","webpack:///src/app/overview/overview.component.html","webpack:///src/app/map/map.functions.ts","webpack:///src/app/settings-components/user-settings-security/user-settings-security.component.html","webpack:///src/app/settings-components/user-settings-security/user-settings-security.component.ts","webpack:///src/app/toolbar-components/toolbar/toolbar.component.ts","webpack:///src/app/toolbar-components/toolbar/toolbar.component.html","webpack:///src/app/settings-components/user-settings-admin/user-settings-admin.component.html","webpack:///src/app/settings-components/user-settings-admin/user-settings-admin.component.ts","webpack:///src/app/benefits-card-quickcalc/benefits-card-quickcalc.component.ts","webpack:///src/app/benefits-card-quickcalc/benefits-card-quickcalc.component.html","webpack:///src/app/settings-components/user-settings-admin-new-user/user-settings-admin-new-user.component.html","webpack:///src/app/settings-components/user-settings-admin-new-user/user-settings-admin-new-user.component.ts","webpack:///src/app/app.component.html","webpack:///src/app/app.component.ts","webpack:///src/app/toolbar-components/toolbar-query/toolbar-query.component.ts","webpack:///src/app/toolbar-components/toolbar-query/toolbar-query.component.html","webpack:///src/app/toolbar-components/toolbar-quick-calculator/toolbar-quick-calculator.component.ts","webpack:///src/app/toolbar-components/toolbar-quick-calculator/toolbar-quick-calculator.component.html","webpack:///src/app/map/map.arcadefunction.ts","webpack:///src/app/app.module.ts","webpack:///src/app/dialog/dialog.component.ts","webpack:///src/app/dialog/dialog.component.html","webpack:///src/app/services/token-storage.service.ts","webpack:///src/app/services/project.service.ts","webpack:///src/app/map/map.component.ts","webpack:///src/app/map/map.component.html","webpack:///src/app/toolbar-components/toolbar-diversity/toolbar-diversity.component.ts","webpack:///src/app/toolbar-components/toolbar-diversity/toolbar-diversity.component.html","webpack:///src/app/services/backend.service.ts","webpack:///src/app/map/map.basicmap.ts","webpack:///src/app/toolbar-components/toolbar-query-layer/toolbar-query-layer.component.ts","webpack:///src/app/toolbar-components/toolbar-query-layer/toolbar-query-layer.component.html","webpack:///src/app/prioritize/prioritize.component.ts","webpack:///src/app/prioritize/prioritize.component.html","webpack:///src/app/toolbar-components/toolbar-layer-layers/toolbar-layer-layers.component.ts","webpack:///src/app/toolbar-components/toolbar-layer-layers/toolbar-layer-layers.component.html","webpack:///src/app/observe/observe.component.ts","webpack:///src/app/observe/observe.component.html","webpack:///src/app/report/report.component.ts","webpack:///src/app/report/report.component.html","webpack:///src/app/settings-components/user-settings-admin-edit-user/user-settings-admin-edit-user.component.html","webpack:///src/app/settings-components/user-settings-admin-edit-user/user-settings-admin-edit-user.component.ts","webpack:///src/app/toolbar-components/toolbar-query-vacantsite/toolbar-query-vacantsite.component.ts","webpack:///src/app/toolbar-components/toolbar-query-vacantsite/toolbar-query-vacantsite.component.html","webpack:///src/app/benefits-card/benefits-card.component.ts","webpack:///src/app/benefits-card/benefits-card.component.html","webpack:///src/app/map/map.popupchart.ts","webpack:///src/app/app.calculations.ts","webpack:///src/app/top-bar/top-bar.component.ts","webpack:///src/app/top-bar/top-bar.component.html","webpack:///src/app/settings-components/user-settings/user-settings.component.ts","webpack:///src/app/settings-components/user-settings/user-settings.component.html","webpack:///src/app/toolbar-components/toolbar-layer/toolbar-layer.component.ts","webpack:///src/app/toolbar-components/toolbar-layer/toolbar-layer.component.html","webpack:///src/app/toolbar-components/toolbar-quick-calculator/quick-calculations.ts","webpack:///src/app/toolbar-components/toolsmodule/toolsmodule.component.ts","webpack:///src/app/toolbar-components/toolsmodule/toolsmodule.component.html","webpack:///src/app/map/map.popupactions.ts","webpack:///src/app/map/map.tables.ts","webpack:///src/app/login/login.component.html","webpack:///src/app/login/login.component.ts","webpack:///src/app/globals.ts","webpack:///src/app/projects/projects.component.html","webpack:///src/app/projects/projects.component.ts","webpack:///src/main.ts","webpack:///src/app/bottom-panel/bottom-panel.component.ts","webpack:///src/app/bottom-panel/bottom-panel.component.html","webpack:///$_lazy_route_resource lazy namespace object"],"names":["PlantComponent","globals","layersselect","constvars","isUK","growthyears","globalvars","openevent","opensaveevent","saving","day","Date","year","getFullYear","hasLogin","username","emit","projectobj","currentobject","goalselect","nativeElement","value","$","substring","length","slider","averagecost","averageMaintenancecost","setTimeout","calculate","change","click","is","prop","max","maxtargetpercent","min","step","slide","event","ui","val","rest","first","last","timerId","debounceFunction","func","delay","clearTimeout","plantchange","keyup","selector","templateUrl","styleUrls","hasProjections","dragwidthElement","elmnt","pos3","pos4","document","getElementById","onmousedown","dragMouseRight","e","window","preventDefault","style","cursor","clientX","clientY","onmouseup","closeSideDragElement","onmousemove","SideElementDrag","pos1","pos2","innerWidth","leftlimit","rightlimit","sidepx","width","css","dragheightElement","dragMouseDown","closeDragElement","elementDrag","botlimit","innerHeight","toplimit","uppx","height","exportCSVFile","headers","items","fileTitle","btn","title","convertToCSV","objArray","array","JSON","parse","str","i","line","index","unshift","jsonObject","stringify","csv","exportedFilenmae","blob","Blob","type","link","url","URL","createObjectURL","setAttribute","reorderlayers","currentlayer","Layers","baseLayers","selectbaseLayers","map","Limits","currentmainlayer","display","orderedlayers","sortable","reverse","forEach","element","Object","keys","includes","checked","push","legendcount","remove","append","removeAll","addMany","add","placeitemtop","item","firstinList","children","id","before","unchecklayer","printpicture","view","pixelRatio","pdfimage","img","docDefinition","pageMargins","pageSize","content","alignment","image","pdfMake","createPdf","open","takeScreenshot","then","screenshot","dataUrl","diversitytool","turndiversityBackOn","botanicalVar","UnassignedTrees","quadrants","topLeftQ1","topLeftQ2","topLeftQ3","topLeftQ4","topRightQ1","topRightQ2","topRightQ3","topRightQ4","bottomLeftQ1","bottomLeftQ2","bottomLeftQ3","bottomLeftQ4","bottomRightQ1","bottomRightQ2","bottomRightQ3","bottomRightQ4","quadrantgraphics","Polygon","geometryEngine","SketchViewModel","Polyline","Graphic","GraphicsLayer","watchUtils","unit","graphicsLayer","graphicsLayer2","bufferLayer","blendMode","buffercolor","highlightOptions","color","haloColor","haloOpacity","fillOpacity","setUpAppUI","whenLayerView","layerView","featureLayerView","pausableWatchHandle","pausable","drawBufferPolygon","setUpSketch","sketchViewModel","layer","on","onMove","toolEventInfo","mover","attributes","edge","toolType","centerGeometryAtStart","centerGraphic","geometry","vertices","x","y","edgeGraphic","calculateBuffer","state","update","tool","queryLayerTreeSites","buffer","polylineGraphic","paths","spatialReference","geodesicLength","geodesicBuffer","bufferGraphic","fourthDiameter","extent","centeralx","center","centeraly","extentLeft","xmin","extentRight","xmax","extentBottom","ymin","extentTop","ymax","gridvertices","topCenter","bottomCenter","rightCenter","leftCenter","topCorner","bottomCorner","rightCorner","leftCorner","topLeftCorner","topLeftTopCenter","topLeftCenter","topLeftLeftCenter","topRightCorner","topRightCenter","topRighttopCenter","topRightRightCenter","bottomLeftCorner","bottomLeftCenter","bottomLeftBottomCenter","bottomLeftLeftCenter","bottomRightCorner","bottomRightCenter","bottomRightBottomCenter","bottomRightRightCenter","quardrantrings","quadrantpolygons","rings","labelGraphic","symbol","text","toFixed","haloSize","xoffset","yoffset","font","size","family","weight","queryQuadrants","quadrantGeomerty","query","createQuery","spatialRelationship","queryFeatures","response","listofTrees","features","treemap","quadrantmaptrees","quardrants","quardrantsTress","quadrant","queryBuffer","buffermap","maptrees","createSpeicesCount","speciesCount","createpiechart","treeCount","datavalues","datalabels","count","othervalue","undefined","key","data","values","labels","textposition","layout","showlegend","margin","b","l","r","t","colorway","yanchor","xanchor","Plotly","newPlot","numberOfQuadrants","all","totalFrequency","totalSpecies","totalTrees","importanceValueIndex","totalCount","totalQuadrants","frequancy","abundance","k","v","species","relativeDensity","relativeFrequency","relativeAbundance","importanceValueIndexPercent","itemsFormatted","arr","mymap","reduce","acc","set","get","Map","mymap2","entries","sort","a","diversityobj","richness","total","pause","viewCenter","clone","centerScreenPoint","toScreen","centerPoint","toMap","edgePoint","polyline","pointSymbol","outline","quadrantextent","visible","labelLength","effect","geom","console","log","steps","PrioritySliderComponent","_value","valueChange","openTooltip","weightSlider","name","tooltip","LoginForgetPassComponent","project","closeevent","sendpasswordemail","emailsent","message","sendforgetpass","close","ToolspopupComponent","currentoption","currentoptionName","baseLayersRef","layerfields","setSummaryPie","clearQuery","addlayer","copyids","closediversity","showDiversitytable","resourceReport","clearhighlight","calc","sessionStorage","getItem","sum","number","isNaN","Infinity","findArray","min2","min3","max2","max3","filter","filteredlayer","showdatafor","mapvars","Priorityattributes","haschangelayer","result","UTCPer","UTCPoss","UTCCha","prioritylayers","rank","addrankings","Data","tempfilter","advquery","poly","stickypolynames","currentyear","timeslider","Number","timegoalslider","ModeledUTCobj","TotalModeledTrees","ArrayModeledTrees","arrayTotalAcres","arrayCurrentTreeAcres","arrayModeledTreeAcres","arraystartingtrees","ModeledTreePercent","annualplant","modeledTreeAcresAnnual","modeledTreePercentAnnual","targetSliderValue","increaseSliderValue","averageSliderValue","mortalitySliderValue","natgrowth","mortrate","costSliderValue","growthft","b_static","geomAcres","polytreeacres","TreeAcres","currentacres","currentacres2","Math","pow","goalValue","finalpercent","neededac","Finalac","needsqft","ft","sqft","PI","totaltreesminmort","deathtrees","totaltreesplusmort","anntrees","anntrees2","a2","c","d","f","g","h","j","round","m","NAME","renameNAN","ProjectedAcres","addedacres","AreaAcres","Orginalacres","startingtrees","TotalAcres","CurrentTreeAcres","CurrentTreePercent","ModeledTreeAcres","ModeledTreeAcresqwTime","ModeledTreePercentwTime","totaladdedacres","html","numeral","format","replace","Rank","CurrentPct","PercentChange","AddedAcres","AverageCrown","mortRate","annualtrees","TotalCost","annualcost","PercentChangecsv","BenefitObj","OverallarrayC","airbenearrayC","carbonarrayC","stormarrayC","OverallarrayP","airbenearrayP","carbonarrayP","stormarrayP","CObenearrayP","NO2benearrayP","O3benearrayP","SO2benearrayP","PM10benearrayP","stormamountarrayP","airamountbenearrayP","COamountbenearrayP","NO2amountbenearrayP","O3amountbenearrayP","SO2amountbenearrayP","PM10amountbenearrayP","seqbenearrayP","stbenearrayP","carbonamountarrayP","seqamountbenearrayP","stamountbenearrayP","CObenearrayC","NO2benearrayC","O3benearrayC","SO2benearrayC","PM10benearrayC","stormamountarrayC","airamountbenearrayC","COamountbenearrayC","NO2amountbenearrayC","O3amountbenearrayC","SO2amountbenearrayC","PM10amountbenearrayC","seqbenearrayC","stbenearrayC","carbonamountarrayC","seqamountbenearrayC","stamountbenearrayC","timepercent","currenttimepercent","COUn","COUnCurr","COVal","COValCurr","NO2Un","NO2UnCurr","NO2Val","NO2ValCurr","O3Un","O3UnCurr","O3Val","O3ValCurr","SO2Un","SO2UnCurr","SO2Val","SO2ValCurr","PM10Un","PM10UnCurr","PM10Val","PM10ValCur","AQTotUn","AQTotUnCur","AQTotVal","AQTotValCu","n","StUn","StUnCurr","o","StVal","StValCurr","p","SeqUn","SeqUnCurr","q","SeqVal","SeqValCurr","CarUn","CarUnCurr","s","CarVal","CarValCurr","RunReGal","RunReGalCu","u","StormVal","StormValCu","AQTotValueCurrent","CarValueCurrent","StormValueCurrent","AQTotUnitCurrent","COValueCurrent","COUnitCurrent","NO2ValueCurrent","NO2UnitCurrent","O3ValueCurrent","O3UnitCurrent","SO2ValueCurrent","SO2UnitCurrent","PM10ValueCurrent","PM10UnitCurrent","CarUnitCurrent","SeqValueCurrent","SeqUnitCurrent","StValueCurrent","StUnitCurrent","RunoffReductionGalCurrent","AQTotValueProjected","CarValueProjected","StormValueProjected","AQTotUnitProjected","COValuerPojected","COUnitProjected","NO2ValueProjected","NO2UnitProjected","O3ValueProjected","O3UnitProjected","SO2ValueProjected","SO2UnitProjected","PM10ValueProjected","PM10UnitProjected","CarUnitProjected","SeqValueProjected","SeqUnitProjected","StValueProjected","StUnitProjected","RunoffReductionGalProjected","totaloverallC","totalairC","totalairCamount","totalCOC","totalCOCamount","totalNO2C","totalNO2Camount","totalO3C","totalO3Camount","totalSO2C","totalSO2Camount","totalPM10C","totalPM10Camount","totalcarbonC","totalcarbonCamount","totalseqC","totalseqCamount","totalstC","totalstCamount","totalstormC","totalstormCamount","totaloverallP","totalairP","totalairPamount","totalCOP","totalCOPamount","totalNO2P","totalNO2Pamount","totalO3P","totalO3Pamount","totalSO2P","totalSO2Pamount","totalPM10P","totalPM10Pamount","totalcarbonP","totalcarbonPamount","totalseqP","totalseqPamount","totalstP","totalstPamount","totalstormP","totalstormPamount","benefitcardinfo","benepdfinfo","CurrentTree","ProjectedTree","ToolbarLayerFiltersComponent","environment","production","OverviewComponent","keyfindings","OverviewParagraph","OverviewContent","MapFunctions","numArray","apply","UTCLayers","expression","definitionExpression","factors","weightedFeatures","weightedFeature","fieldName","weights","addedWeights","level","addition","division","results","indexOf","prefix","strArray1","str1","toString","str2","constiable","baseLayer","renderer","visualVariables","valueExpression","label","lines","Min","Max","stops","Middle","defaultSym","legendOptions","renderer2","color1","color2","lowlabel","highlabel","lowvalue","highvalue","sketchlayer","setMaxValueCanopy","UserSettingsSecurityComponent","regexnewpass","checkPasswords","group","pass","confirmPass","notSame","edituser","user","required","email","compose","newpass","password","pattern","confirmPassword","matchValidator","passwordbtntext","passwordbtncolor","Profilebtntext","Profilebtncolor","usernameInUse","getUserbytoken","userdata","currentuser","updateProfile","valid","updateeUser","userId","_id","userconfig","updateUser","controls","setErrors","icon","getAttribute","classList","toggle","patchValue","role","togglepassword","updatepass","matchTo","control","parent","updateValueAndValidity","matching","ToolbarComponent","openmodule","options","arrow","Filter","SiteQuery","LayerQuery","SpeciesDiversity","QuickCalc","toolopen","hasVacantSites","hasTreeSites","option","root","querySelector","setProperty","toggletools","btnid","divid","getElementsByClassName","className","toolname","closetools","moduleData","cityLayerName","cityAreaName","activeicon","opentools","movepointer","activateDiversityTool","opentoolsmodule","UserSettingsAdminComponent","activeuserList","alluserList","showonlyactive","activetoggle","deletepopup","deleteUser","newuserpopup","edituserpopup","getAllUsers","authdata","active","userList","showactiveusers","showallusers","deleteUsername","deleteUserid","userid","getusers","person","editthisuser","openadduserpopup","toggleactivelist","BenefitsCardQuickcalcComponent","config","responsive","displayModeBar","locales","_totalCurrent","totalCurrent","plotCurrentBenefits","plotModeledBenefits","_totalProjected","totalProjected","currentStatistics","benefitsCurrent","getCurrentConfig","gd","toImage","imgurlcurr","modelStatistics","benefitsModeled","getModeledConfig","imgurlmod","mode","valueformat","domain","UserSettingsAdminNewUserComponent","newuser","addUser","closepopup","addusers","AppComponent","token","city","TKURL","CurrAverage","adminDivision","projectConfig","photo","rankings","admin","toolmoduleopen","moduletoolname","quickCalcLayer","quickCalcAreaName","loginerror","loginpopup","forgotpassword","projectopen","savingvalue","usersettingsopen","createreports","show","buildResourceReport","reportTab","UpdateGraphandTable","tables","buildscenrioobj","buildTable","hide","auth","userloggedin","indexJS","getToken","err","removeToken","signinpopup","error","success","setadmin","plant","load","prioritize","resourcereport","filterAreasShown","getTreeResources","getTreeBenefits","_getProjectConfig","checkToken","settingsopen","closetoolsmodule","login","prioritizepopup","ToolbarQueryComponent","openQuerypage","ToolbarQuickCalculatorComponent","projectedBenefits","layerTitle","layerdata","layerName","areaName","area","areaData","findLayer","findArea","ArcadeFunctions","edgecase","foundarray","string","priorityfilter","setfeature","replaceWith","changeArcade","priorityAcarde","mincha","maxcha","minper","maxper","minposs","maxposs","basicArcade","AppModule","declarations","imports","providers","bootstrap","DialogComponent","closeModalEvent","supportFormLink","canopySystemName","closeSupportModal","TOKEN_KEY","USER_KEY","TokenStorageService","localStorage","clear","removeItem","setItem","providedIn","ProjectService","backend","location","href","file","slice","lastIndexOf","_projectConfig","_getClientName","_getallusers","authData","_authUser","saveToken","accessToken","_getUserbyToken","emailData","_sendpasswordemail","userID","_getUserData","userproject","_saveUserData","_deleteUserData","_deleteUser","_reactivateUser","_updateeUser","_addUser","postwtoken","post","loadOptions","version","insertCssBefore","MapComponent","http","arcadeFunctions","mapFunctions","popupCharts","top","bottom","API_Key","priorityMin","priorityMax","PriorityData","maxcount","zoom","folder","service","baseurl","server","query1","query2","queryIDs","popupTitle","priorityPopupContent","allOtherPopupContent","popupExpressionInfo","VacantsiteAttributes","VacantsiteAttributesfortableViewer","custombasemap","firstcolumnName","addlistenerTotable","popup","selected","mouseup","removeClass","currentTarget","innerText","split","join","setFeatureLayerFilter","esriConfig","esriMap","MapView","Attribution","FeatureLayer","CSVLayer","Legend","WMSLayer","Print","BasemapGallery","Basemap","Expand","PopupTemplate","Popup","Query","Sketch","UniqueValueRenderer","Chart","Point","Search","Home","ScaleBar","apiKey","basicmapconfig","blankmap","basicView","whenTrue","evt","whenFalse","autoCloseEnabled","move","component","position","basemapsource","fromId","basemap","portalItem","basemapToggle","source","expandbasemap","expanded","sketch","creationMode","availableCreateTools","legend","container","createElement","expandLgnd","searchWidget","homeWidget","scaleBar","fieldInfos","match","ele","digitSeparator","NatureScoreon","actions","template","expressionInfos","template2","citylimitslayerID","legendEnabled","popupEnabled","popupTemplate","sublayers","copyright","outFields","diversity","basiclayers","linelayers","selectlayers","querylayers","templatevar","layerID","labelsVisible","selRenderer","DataAttr","ZoomData","Arrays","PossMin","PossMax","ChaMin","ChaMax","dataArray","UTC","Possiblity","Change","ZoomTo","ringdata","polygon","hasZ","hasM","wkid","goTo","centroid","longitude","latitude","seeInTable","seeVacantSites","seeNatureScore","openQuickCalc","action","callseeintable","callseevacantsites","callseeNatureScore","callQuiclCacl","setInterval","chartpopuplayers","switchcontentgraph","graphbtnobj","graphpop","switchcontentbtn","onclick","switchcontent","popupcurrent","appendChild","switchcontentbtngraph","innerHTML","getpopupcharts","setContentInfo","popupdiv","canvas","featuredataabs","featurecolor","featurelabel","featuredata","totaldata","newvalue","colorWeights","datasets","backgroundColor","myPieChart","piechartobj","viewevent","stopPropagation","complete","create","addClass","selectedpolys","selectedsites","selectedNS","sitesnames","nsnames","polynames","sitequery","getElementsByTagName","dataquery","querylayerbyclick","querylayerbysketch","querysitebysketch","clickquery","mapPoint","queryrequest","splice","queryselected","addlastsketchtosites","removeselecetedsitesfromquery","graphic","field","templayerfields","queryseletecsites","defaultSymbol","addUniqueValueInfo","showquerysitedintable","addlastsketchtoquery","removeselecetedfromquery","tempsummary","tempfieldarray","units","names","QueryLayerFilter","advancequeryselect","expressionarray","selectedids","site","copiedids","body","select","execCommand","removeChild","tabledata","siteatt","tabledatarow","showtable","redrawTableWithDataAndNewHeight","piechart","destroy","shift","updateonly","specie","Species","Count","RelativeDensity","RelativeFrequency","RelativeAbundance","IVI","IVIPercent","removeMany","createCurrCanopyFilter","createPossCanopyFilter","createChangeFilter","createWeightFilter","resetFeatureLayerFilter","changeLayer","resetRenderer","mousedown","getMaxOfArray","createstring","graphics","setColorRamp","changePriorityLayer","setPriorityValues","filterslider","SetvisibleLabels","setValueExpressionBlock","goalrender","setValueExpression","natMortRate","layerobject","opacity","targetGoalArcade","increaseGoalArcade","arcade","labelClass","labelExpressionInfo","labelingInfo","renderedvalue","findrank","layerobj","toPromise","initializeLayerData","downloadData","floor","getMinOfArray","ceil","initializeMap","disableSelection","deactivate","getbasedata","data2","objectIds","loops","concat","mapViewEl","ToolbarDiversityComponent","diversitySiteName","mapimage","today","DataTable","button","extend","download","orientation","customize","doc","styles","tableBodyEven","tableBodyOdd","table","cell","fillColor","fontSize","getMonth","getDate","order","draw","trigger","basicreport","openSiteName","printfullreport","httpOptions","BackendService","route","reload","credentials","basicmap","navigation","mouseWheelZoomEnabled","selectsymbol","labelPlacement","ToolbarQueryLayerComponent","selectedarray","code","PrioritizeComponent","Prioritylayersselect","priorityLevel","setAllWeights","ToolbarLayerLayersComponent","ObserveComponent","ReportComponent","scrollTop","time","frame","goal","implementation","createHTMLDocument","report","treegaugeimg","percentbarimg","acrebarimg","toLocaleString","overall","Air","Carbon","Storm","rel","head","destDocument","contentDocument","srcNode","documentElement","newNode","importNode","replaceChild","printFrame","frm","contentWindow","focus","print","TreeGauge","gauge","axis","tickfont","bar","GuageLayout","CurrentUTCP","hoverinfo","marker","ModeledUTCP","ModeledPer","PerUTC","barmode","xaxis","range","showticklabels","CurrentUTCA","ModeledUTCA","ModeledAcres","xMax","AcreUTC","topFunction","getgraphicreport","UserSettingsAdminEditUserComponent","sentemail","emaildisable","reactivateUser","ToolbarQueryVacantsiteComponent","BenefitsCardComponent","delta","reference","relative","increasing","PopupCharts","layerViews","_items","layerview","wieghtID","padding","left","right","tooltips","enabled","scales","yAxes","ticks","xAxes","autoSkip","Calculations","ranks","filteredelement","rankelement","TopBarComponent","signinpopupevent","settingopenevent","showSupportModal","changes","currentValue","openSupportModal","UserSettingsComponent","securitystyle","adminstyle","ele2","opensecuritysettings","ToolbarLayerComponent","quickCalculations","addedTrees","weightedCrownDiameter","projectedYears","natMort","totalSurvivalTrees","sqftPerTree","newAcres","totalBenefits","AQBenefits","CarbonBenefits","SWBenefits","allBenefits","aqBenefits","carbBenefits","swBenefits","getProjectedCanopy","tempBenefitObj","ToolsmoduleComponent","selectedFeature","findrow","column","search","hidetables","vacantsitesinpoly","avescore","polyscores","NatureScor","arrAvg","nstemplate","leafscoretext","moduleevent","treeAnaylysis","buttons","paging","pageLength","searching","scrollY","scrollX","columns","render","fn","dataTable","beneifit","donnothing","nonetloss","vacant","VScolumns","VSstarterdata","LoginComponent","loginevent","errorevent","forgetevent","adminevent","hasguestLogin","keyCode","authUser","enterhit","openforgetpassword","Globals","AllLayerData","getProjectConfig","htmlElements","leyersselect","mapElements","Prioritylayers","treeAcres","TreebotanicalVar","ProjectsComponent","openprojectevent","projectnamelist","projectobjects","saveuserdata","datatype","getUserData","projectsavename","saveUserData","deleteUserData","nameindx","bootstrapModule","BottomPanelComponent","ScenarioSummary","attr","exportvacantsites","itemobject","DoNothingObj","acres","CanAcres","onePercentAcre","treePerAcre","mortality","treesInOnePercent","totalTreesinArea","Year","endYear","eMinusNM","CanopyAcres","Existingtrees","NaturalMortalityofExistingTrees","ExistingTreesminusNaturalMortality","CanopyAcres1","PercentCanopy","DNScenerio","NoNetLossObj","newTrees","Investment","newTrees1","totalTrees1","Investment1","NNLScenerio","ReveseTrendObj","RTScenerio","DoNothingbuild","NoNetLossbuild","ReveseTrendbuild","buildSummary","Yeararray","doNothingPer","noNetLoss","ReversetheTrend","donothing","ScenariosToReport","buildsummaryplot","tablevalues","tableheaders","showline","zeroline","showgrid","mirror","ticklen","gridcolor","axis1","anchor","axis4","xaxis1","assign","yaxis1","header","align","fill","cells","yaxis","headerRows","widths","defaultStyle","descriptionStyle","headerStyle","bold","titleStyle","tableid","download2","tableoptions","tablediv","tablename","deletecolumn","updatepdftable","row","pop","tableshown","tablehidden","parseInt","refreshTableWithDataFromObject","tableName","dataObject","rows","openclosetable","pdf","totalbenefitreport","getselected","selectAllSites","getids","webpackEmptyAsyncContext","req","Promise","resolve","Error","module","exports"],"mappings":"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","file":"main-es5.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","
\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, 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}","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
","
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 { 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","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
","
Add new User
\n
\n
\n \n \n \n \n
\n
\n \n \n
\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","\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 { 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","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
","
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, 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","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 }","
\n

Login

\n
\n \n \n
\n
\n \n  \n
\n
\n \n  \n \n
\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","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}","

Saved Projects

\n
\n \n
\n
\n \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","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,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 {\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\";"]}