GithubHelp home page GithubHelp logo

cmndrbensisko / locallayer Goto Github PK

View Code? Open in Web Editor NEW
55.0 55.0 26.0 6.58 MB

The LocalLayer Widget for ArcGIS Web AppBuilder is intended to allow the direct addition of ArcGIS for Server Mapservices to an ArcGIS Web AppBuilder application, without needing to wrap the desired services in an ArcGIS Online/Portal Web Map.

License: MIT License

JavaScript 70.71% HTML 25.11% CSS 4.18%

locallayer's People

Contributors

ashina-creator avatar cmndrbensisko avatar rscheitlin avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

locallayer's Issues

Enhancement - allow the creation of group layers within Local Layer Widget

It would be great if the local layer widget allowed the creation of group layers within its configuration page. Here's a use-case:

I have multiple layers representing Earthquakes and Floods at various scales. I want to add them as individual feature layers, with scale dependency controlling which layers are shown at a given scale.

To simplify the user experience I'd like a group layer checkbox for Earthquake and Flood, which would control all sub-layer visibility, eg:

  • Flood
    • Flood feature layer 1
    • Flood feature layer 2
    • Flood feature layer 3
  • Earthquake
    • Earthquake feature layer 1
    • Earthquake feature layer 2

Map reloading when clicking on Widget

Hi,

I just downloaded the LocalLayer widget and followed all the instructions in the readme to install it. I am able to add the widget on the screen, but when I click on the widget the map reloads. I have not configured anything on the widget yet, the sample layers are still there, I was expecting them to appear when I click on the widget. The widget would just reload the map when i click. Any idea what I should do?

Possible bug in toggling lowest ranked Layer List layers

Hi, thanks for developing this widget. I've recently had an issue with clicking the toggle boxes for the lowest ranked group layers in the Layer List of my web app, so in a layer list structure like this:

  • Group Layer 1
    • Sub layer 1a
    • Sub layer 1b
  • Group Layer 2
    • Sub layer 2a
    • Sub layer 2b
  • Group Layer 3
    • Sub layer 3a
    • Sub layer 3b

When trying to toggle sub layers 3a and 3b (the lowest ranked layers), there's no response in the check box on or off when selected. The layer disappears when toggling 3b off, if it's visible upon first page load however the user is unable to have it appear again without reloading.

Create widget setting page error.

Hi, I am trying to install the Local Layer widget and can't get past the configuration. I have made all of the code changes mentioned at https://github.com/cmndrbensisko/LocalLayer and when I start up Web AppBuilder, I do see the Local Layer Widget icon. When I click the pencil icon to configure it, I get the following error: Create widget setting page error: widgets/LocalLayer/Widget.

I have tried this four times each time starting with a clean install of WAB and I always get the error. Any idea what I am doing wrong?

Tiled layer not retaining custom pupup

I am using 1.3. I added a tiled layer and added text and a field reference to the custom popup clicked ok on the popup config and the opened the config again and the custom text is gone and the popup is using the key value popup with the field that I added to the custom side.

Format Fields in PopUp

Add formatting support for fields in the popup when the field is a number or date type

Issue with printing in Web AppBuilder 2.1

Thanks for developing this widget; super useful for us. I recently ran into an issue printing after upgrading to Web AppBuilder 2.1, and after working with ESRI support we isolated it to an issue with LocalLayer. When printing using layers configured in the widget, the points render fine in the map but the symbols fail to display in the legend. It seems that in v2.1, the web map as json has changed slightly which seems to effect the output.

WAB LocalLayer error

I've added the widget to the WAB 1.2 widgets folder so it shows in the widgets pool for selection in a new application. It all works in terms of configuring so I can drop the default listed layers and add in my own dynamic service from our own AGS. However when I launch the app and click the button I get an error, which as a novice I find difficult to solve. I'm not sure if it's something I have failed to configure. Any help would be greatly appreciated - the widget seems perfect for our requirements.

TypeError: Failed to execute 'appendChild' on 'Node': parameter 1 is not of type 'Node'.
at TypeError (native)
at Object.b.place (http://js.arcgis.com/3.14/init.js:148:448)
at declare.setPosition (http://ws211:3344/webappbuilder/apps/6/jimu.js/BaseWidget.js:235:12)
at null. (http://ws211:3344/webappbuilder/apps/6/jimu.js/OnScreenWidgetIcon.js:120:18)
at http://js.arcgis.com/3.14/init.js:167:296
at k (http://js.arcgis.com/3.14/init.js:189:431)
at m (http://js.arcgis.com/3.14/init.js:189:357)
at resolve (http://js.arcgis.com/3.14/init.js:191:441)
at null. (http://ws211:3344/webappbuilder/apps/6/jimu.js/WidgetManager.js:117:25)
at http://js.arcgis.com/3.14/init.js:167:296 "TypeError: Failed to execute 'appendChild' on 'Node': parameter 1 is not of type 'Node'.
at TypeError (native)
at Object.b.place (http://js.arcgis.com/3.14/init.js:148:448)
at declare.setPosition (http://ws211:3344/webappbuilder/apps/6/jimu.js/BaseWidget.js:235:12)
at null. (http://ws211:3344/webappbuilder/apps/6/jimu.js/OnScreenWidgetIcon.js:120:18)
at http://js.arcgis.com/3.14/init.js:167:296
at k (http://js.arcgis.com/3.14/init.js:189:431)
at m (http://js.arcgis.com/3.14/init.js:189:357)
at resolve (http://js.arcgis.com/3.14/init.js:191:441)
at null. (http://ws211:3344/webappbuilder/apps/6/jimu.js/WidgetManager.js:117:25)
at http://js.arcgis.com/3.14/init.js:167:296
----------------------------------------
rejected at a (http://js.arcgis.com/3.14/init.js:190:337)
at k (http://js.arcgis.com/3.14/init.js:190:89)
at m (http://js.arcgis.com/3.14/init.js:189:357)
at resolve (http://js.arcgis.com/3.14/init.js:191:441)
at null. (http://ws211:3344/webappbuilder/apps/6/jimu.js/WidgetManager.js:117:25)
at http://js.arcgis.com/3.14/init.js:167:296
----------------------------------------
Error
at then.b.then (http://js.arcgis.com/3.14/init.js:192:253)
at declare.switchToOpen (http://ws211:3344/webappbuilder/apps/6/jimu.js/OnScreenWidgetIcon.js:118:10)
at declare.onClick (http://ws211:3344/webappbuilder/apps/6/jimu.js/OnScreenWidgetIcon.js:61:14)
at null. (http://ws211:3344/webappbuilder/apps/6/jimu.js/OnScreenWidgetIcon.js:37:14)
at HTMLDivElement. (http://js.arcgis.com/3.14/init.js:167:296)"

GP service curiosity

First mad respect and props to the Dev team,

I am curious to know if anyone has tried consuming their local layers to local gp services in wab?

Enhanced control over layer order

Layer order should follow the order specified in the widget, instead of Feature Layers automatically floating to the top of the layer draw order

Layer name is not honoured in the UI, when working with feature layers

I'm finding that the name specified for a feature layer is not sticking in the Layer List widget.

To reproduce, update the name of the sample Land Use feature layer under C:\arcgis-web-appbuilder-1.0\server\apps\XXX\configs\LocalLayer\config_Local Layer Widget.json and note that this is not used in the UI.

I can see that lOptions.id is correctly set to the value from the config file, but this value isn't used in the Layer List widget (instead it seems to use the name from the REST API).

This problem doesn't apply to Dynamic or Tiled layers.

Problems embedding an iframe in an infoWindow when using attribute substitution

I'm seeing a problem when trying to embed an iframe within an infoWindow, attached to a dynamic layer specified via the Local Layer Widget.

I've put this as the Custom source for the popup:

iframe src="http://localhost/reports/pages/{GISID}"
a href="http://localhost/reports/pages/{GISID}"

where {GISID} is a valid field within the dynamic layer. The attribute substitution for the anchor tag works correctly:

`a href="http://localhost/reports/pages/1090390" target="_blank">Open report in new tab

... but the substitution for the iframe src includes a span tag:

iframe src="http://localhost/reports/pages/&lt;span class='esriNumericValue'&gt;1090390&lt;/span&gt;"></iframe

Is this something you have control over in the Local Layer Widget, or is it a problem introduced by the WAB?

thanks

Does the widget work with WAB Dev 2.18+ and ArcGIS Server 10.8.1?

Hello Adam,

I worked extensively with the widget in 2015-2017, and had GREAT success with it. I used to communicate with you all the time. I am at a new job now, and was wondering if the widget will work with the referenced software versions. I hope you are doing well.

All the best to you!

how to use local arcgis server's map service

As the title, may I ask some skills about how to add my local arcgis server's services into my application. Cause I found that the local Layer widget in my web appbuilder could only help me add some layer published on the arcgisonline and portal.

Dynamic Service Sublayer Visibility

From Barnaby:

Ok, I think I have discovered what is preventing sublayers of dynamic layers being turned on and off individually, AND what is preventing legends of dynamic layers from displaying.

Case 1: A service is published in which the top layer is On in ArcMap:

toplayeron-nolegend_arcmap.jpg

Note that the top-most "Landsat 7 ETM+..." layer is On. When this service is added as a dynamic layer using widget 1.2, its legend will NOT display in the WAB app, and its sublayers CANNOT be turned on and off individually. All sublayers are always on, and can only be turned off when the entire layer is turned of in WAB layer menu. Since multiple sublayers are on, WAB doesn't know which sublayer to display a legend for:

toplayeron-nolegend_wab.jpg

Case 2: A service is published in which the top layer is Off in ArcMap:

toplayeroff-legend_arcmap.jpg

Note that the top-most "Landsat 7 ETM+..." layer is Off. When this service is added as a dynamic layer using widget 1.2, its legend WILL display in the WAB app, and its sublayers CAN be turned on and off individually:

toplayeroff-legend_wab.jpg

Is there a way to fix this so that sublayers of dynamic layers can be toggled on and off normally whether the top-most layer in the service is on or off when published?

Add basemap not working

Add basemap is not working for cached map service. Using WAB 1.1. - Getting a different spatial reference error

All cached services are in state plane with custom tiling scheme

Update to Web Appbuilder 1.2

Hi, esri announced Web Appbuilder for developer 1.2. Can you give some guidance on how to configure LocalLayer on this new version?

Thank you so much for your work! This works amazingly in version 1.1.

Local Layer Widget window not closing or responding

I am using Web AppBuilder v2.2

I have enabled LocalLayer Widget, but the window is not responding.

LocateButton::navigator.geolocation requires a secure origin.
Load widgetOnScreen: 358ms
Object {layers: Object, review: false}
Uncaught TypeError: Cannot read property '_tables' of undefined
at Object. (http://mylaptop:3344/webappbuilder/apps/3/widgets/LocalLayer/setting/Setting.js?wab_dv=2.2:89:78)
at Object.c [as destroy] (http://js.arcgis.com/3.18/init.js:118:438)
at Object.onClose (http://mylaptop:3344/webappbuilder/builder/main.js?wab_dv=2.2:3709:384)
at Object.onOk (http://mylaptop:3344/webappbuilder/builder/main.js?wab_dv=2.2:3708:370)
at Object.onClick (http://js.arcgis.com/3.18/init.js:63:209)
at Object. (http://mylaptop:3344/webappbuilder/stemapp/jimu.js/dijit/Popup.js?wab_dv=2.2:443:20)
at HTMLDivElement. (http://js.arcgis.com/3.18/init.js:63:209)
Uncaught TypeError: Cannot read property '_tables' of undefined(…)
Uncaught TypeError: Cannot read property '_tables' of undefined(…)
Uncaught TypeError: Cannot read property '_tables' of undefined(…)
Uncaught TypeError: Cannot read property '_tables' of undefined(…)
Uncaught TypeError: Cannot read property '_tables' of undefined(…)
Uncaught TypeError: Cannot read property 'tables' of undefined(…)
Object {layers: Object, review: false}
Uncaught TypeError: Cannot read property 'tables' of undefined(…)
Objectlayers: Objectreview: false__proto
: Object
Uncaught TypeError: Cannot read property '_tables' of undefined(…)

Attribute Table Does Not Appear When Editing Secured Resource

I am trying to set up the editor widget in WAB with LocalLayers on AGS Server 10.2 (using feature layers with ownership based editing turned on). Adding features seems to work, however, when I add; the attribute editor does not appear and clicking on the added feature just brings up its pop-up without any editing options.

Is there a fix for this or does anyone have any idea where I would look to fix this?

LDAP Alternate for Edit Tracking

Hi. This is a great widget and helped us a lot on using web app builder. First of all I would like to thank you for this. And would like to ask you a question. I'm not sure if this is the right place thus I can post it somewhere else if you want me to.

So here is the question. Is it possible to use edit tracking instead of LDAP? We would like to edit tracking with our own system without LDAP. Users will be recorded in a database. Do you have any suggestions about this scenario?

Thanks in advance.

Configuration with Tab Theme

Hello,

I have been trying to use the local layers widget with the Tab Theme but have been unsuccessful in getting the widget to be registered with this theme, are there any special instructions?

Local Layer Map Service Opacity for each Layer

We are going to use Dynamic Layers on our own ArcGIS Server and Feature Layers , and we are going to use WAB 2.8, is Latest local Layer compatible with WAB 2.8? If not what needs to be done to make it compatible, Thanks

Attribute table widget gets out of sync with LocalLayer widget

This may not be the custom widget issue, maybe a general WAB-Dev (have not yet tested if I get same results). Problem occurs when using the GUI to modify attribute tables, and I believe is tied to having possibly too many tables, or secure tables?

When I start to modify fields to show on attribute table, on about the 6th attribute table in the list, pulls fields from a totally different table (first layer on list?). Problem is repeatable. Seems config file and attribute table displayed is correct. More an issue on the GUI pulling in the data.

(See attached image) Table to modify is "Controlled-Use Areas", fields in edit window are from "UCU Codes" (first layer in list). Several of the layers in the table will display the same incorrect fields.
\client\server\apps##\configs\AttributeTable\config_Attribute_Table.json can be modified to be correct and app will reflect the changes, but AttributeTable edit dialog will still be incorrect.

Is this a LocalLayer/Attribute issue, or a WAB. if WAB, I can start a tech incident. Posted here first, in case this is a known issue from the widget.

wrongattributes

Have you seen this behavior?
Thanks

Local Layer Widget and WAB 2.0

I tried to install the LL widget with WAB 2.0, using the instructions for WAB 1.3 and it's not working correctly.

LL Widget is now appearing as an in-panel widget - I can only add it to the Header Controller or one of the placeholder on-map widgets. But the main problem is that it doesn't actually add the layers to the map - the Legend and Layer List are both empty.

Any ideas? I hope Esri haven't deliberately tried to break this widget because it doesn't fit with their model ;)

not responding to changes in configuration

I can only get the configuration to add layers/popup content. once a layer is added to the map I cannot change the popup config or remove a layer without refreshing the browser.

Local Layer Issues

Hi Everyone,

I'm using the WAB for Developers version 1.2 and the Local Layer widget version 1.2.2
locallayerissue

I have several issues with my Local Layer widget:

  1. I don't know how to filter a service by an specific area of interest that is already defined in an attribute.
  2. I cannot define the number of decimal places for any of my double attributes (see attachment latitude and longitude for example).
  3. I have a feature class with a relationship and the table appears several times in my Layer List.
  4. Even though I have "Show Attachments" checked it doesn't show any attachments.

Is there any way to code this instead?

Please, any help with any or all of these issues will be really appreciate it.

Thank you,

Feature Layer Outlines,

Borders on Feature Layers appear dark black by default in finished web mapping applications, ignoring their actual border styling.

WAB - Data Aggregation widget error

Hi - I'm using WAB version 2.5. When i add the version 2.8 Data Aggregation widget it gives the following error:
Create widget setting page error.
Any ideas on how to fix this error please?
Thanks,
Nat

Adding cached image service to Add Tile layer not working

On adding cached image service to Add Tile layer not working, get the following error:
"Invalid Tiled Map Service URL"
tried to add a cached image service layer (all layers in WAB 1.1 in local state plane).

Cached image service is in state plane with custom tiling scheme

Dynamic layer scale-dependent visibility not shown in Layer List widget

I'm not sure if this is a flaw in the Layer List widget, or the Local Layer widget.

I have a grouped layer containing sublayers with scale dependency set. When viewing this in ArcGIS Online the sublayers' visibility is shown in the TOC:

eq1

When this layer is added to the Local Layer widget as a dynamic layer, the sublayers are always shown as visible in the Layer List widget:

locallayer

Should I raise this with Esri and the WAB team, or is this a Local Layer widget issue? Thanks

Is it possible to add layers at run-time?

The local layer widget is awesome at allowing an administrator to configure a web app, before it is published.

Is there any support for allowing end-users to add a layer to the map dynamically? Eg, when using a Web App, I want to add a new feature layer based on its REST endpoint.

Does this work with v2.3 WAB?

If I install LocalLayer by copying to widgets folder and modifying config.json, I can see the widget just fine in my map design. Clicking configure on the LocalLayer widget brings up that dialog just fine. But I can't save or cancel out of that. OK, Cancel and the X button in the top right of the dialog do nothing for me. Tried on Chrome & Edge, same result. No errors being spat out of the node window in the background, either.

From Chrome Debugger on clicking OK, map.updatedLayerInfos is undefined :
LayerInfos.getInstanceSync()._tables = this.map.updatedLayerInfos._tables;

Uncaught TypeError: Cannot read property '_tables' of undefined
at Object. (Setting.js?wab_dv=2.3:89)
at Object.c [as destroy] (init.js:118)
at Object.onClose (main.js?wab_dv=2.3:3796)
at Object.onOk (main.js?wab_dv=2.3:3795)
at Object.onClick (init.js:63)
at Object. (Popup.js?wab_dv=2.3:443)
at HTMLDivElement. (init.js:63)
(anonymous) @ Setting.js?wab_dv=2.3:89
c @ init.js:118
onClose @ main.js?wab_dv=2.3:3796
onOk @ main.js?wab_dv=2.3:3795
(anonymous) @ init.js:63
(anonymous) @ Popup.js?wab_dv=2.3:443
(anonymous) @ init.js:63

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.