|
POST
|
Hi Jeremy, Just to let you know that part of our team is fixing the problem now. Regards, Mike
... View more
06-26-2013
07:08 PM
|
0
|
0
|
2549
|
|
POST
|
Hi David, My very-short "Identify problem" stood for a bunch of problems with identify, including the one that you mentioned. 😞 You've been very helpful by pointing out the problem and providing the services--the challenges so far have been to figure out what's happening; the next challenges are to figure out how to solve them! Thanks, Mike
... View more
06-26-2013
07:07 PM
|
0
|
0
|
1021
|
|
POST
|
Hi Allison, It's not as easy as turning the feature on--our apps use a zoom slider widget from the ArcGIS API for JavaScript that does not include the 'zoom to extent' feature. You can add one to your apps fairly easily using a solution by Craig McDade, and another post offers some CSS for the solution. Regards, Mike
... View more
06-26-2013
07:01 PM
|
0
|
0
|
345
|
|
POST
|
Hi Allison, Craig had a great solution; here are a few more of the details that you were seeking. In default.htm, add the second set of code that he listed. I changed it a little by adding the CSS that you'll need and by removing the onClick specification--it's still needed, but for me, it was easier to link the click handler to the initial extent by setting the handler in the JavaScript. <body onorientationchange="orientationChanged();">
<div id="divMainContainer" style="width: 100%; height: 100%;" dojotype="dojox.mobile.View"
selected="true">
<div id="map" style="width: 100%; height: 100%;">
</div>
</div>
<!--Zoom to Extent-->
<div id="zoom" title="Zoom to Full Extent" class="esriSimpleSlider" style="top:155px!important">
<img src="images/zoom.png">
</div>
<div id="divSplashScreenContainer" class="divSplashScreenContainer" style="display: none;"> In js/homePage.js, we'll insert the click handler: dojo.connect(map, "onLoad", function () {
var zoomExtent;
var extent = GetQuerystring('extent');
if (extent != "") {
zoomExtent = extent.split(',');
}
else {
zoomExtent = responseObject.DefaultExtent.split(",");
}
var startExtent = new esri.geometry.Extent(parseFloat(zoomExtent[0]), parseFloat(zoomExtent[1]), parseFloat(zoomExtent[2]), parseFloat(zoomExtent[3]), map.spatialReference);
map.setExtent(startExtent);
MapInitFunction();
dojo.connect(dojo.byId("zoom"), "onclick", function () {
map.setExtent(startExtent); //here set your extent you wish to zoom back to, either calling the xmin, ymin, xmax, ymax or by calling the original extent variable
});
}); You can find these changes in the app's GitHub site; it's on a branch that's based on the version that you're using. The changed files are default.htm and homePage.js, and zoom.png icon was added. (It's just a 30x30 image; a sample is attached. The border comes from the +/- zoom control.) Thanks, Craig! As far as resources, I personally use (i.e., these are my recommendations and do not represent Esri) Esri's ArcGIS API for JavaScript Sandbox. Many of the JavaScript API samples have an "Explore in the sandbox" option, which not only gives you a working sample, but a try-it environment in which you can make changes and see what happens. The Dojo Toolkit online documentation. The tutorials get you started using Dojo, which, as you can see in the apps, we use heavily. w3schools. Good summary info for HTML, JavaScript, and CSS (sometimes you have to search for it--there's more on the site than meets the eye). Regards, Mike
... View more
06-26-2013
06:54 PM
|
0
|
0
|
868
|
|
POST
|
Hi David, You've found some interesting issues, but I cannot determine the causes yet. Missing legend items: I've narrowed it down to an operational layer claiming to not have a symbol even though the symbol has been clearly transmitted over the network as part of the layer. In the version of the software that you're using, that missing symbol prevents the layer from appearing in the legend and the symbols from appearing on the map. Especially odd is that, if I configure the app to have multiple copies of a service, it's possible for one copy to have a symbol and the other to be missing one. Identify problem: I can reproduce it easily using your services. I also see that the latest version of the software does not gracefully handle layer names long enough to wrap onto a second line. I don't have solutions for you yet, but I wanted to let you know that I've been working on it. Your configuration has been extremely useful--thank you for supplying it. Regards, Mike
... View more
06-26-2013
02:56 PM
|
0
|
0
|
1021
|
|
POST
|
Hi Craig, Something that I should have mentioned: because the proxy program caches the authorization information to speed up repeat access, if you switch between non-SSL and SSL or change the ArcGIS online password, you'll need to clear the proxy's cache. This is done by renaming proxy.config to anything else or removing it from the gallery web site's top level. Then invoke the proxy program in the browser, e.g., http://<server>/map-and-app-gallery/proxy.ashx. When the proxy program cannot find the config file, it clears the cache as a side effect; this feature was added to the app's GitHub site on May 3rd. Then rename/restore the proxy.config file. Because you've been experiencing the hanging problem longer than the cache's timeout, there's probably something else going on, but knowing to clear the cache is helpful during testing and setup. Regards, Mike
... View more
06-25-2013
03:23 PM
|
0
|
0
|
411
|
|
POST
|
Hi Jeremy, Thanks for reporting the problem; I'm able to reproduce it and we will work on it. Regards, Mike
... View more
06-24-2013
02:13 PM
|
0
|
0
|
2549
|
|
POST
|
Hi Liz, Thank you for reporting this problem. I like to suggest the fix to utils.js shown below, which has been checked into the app's GitHub site. Earlier in the code, nulls have been normalized to empty strings to simplify some other processing, so when we're cycling through the list of fields for the infowindow, we can check if the retrieved date field value is an empty string. The js.date module contains a list of date-conversion routines; I see in hindsight how that name is misleading. Regards, Mike for (var index in infoWindowData) { var tr = document.createElement("tr"); tbody.appendChild(tr); switch (infoWindowData[index].DataType) { case "string": CreateTableRow(tr, infoWindowData[index].DisplayText, dojo.string.substitute(infoWindowData[index].AttributeValue, attributes)); break; case "date": // Extract the desired date field from the list of attributes. If the date is not available, the date field is an empty string var dateField = dojo.string.substitute(infoWindowData[index].AttributeValue, attributes); var dateString = showNullValueAs; if (dateField.length > 0) { var utcMilliseconds = Number(dateField); dateString = dojo.date.locale.format(date.utcToLocal(date.utcTimestampFromMs(utcMilliseconds)), { datePattern: formatDateAs, selector: "date" }); } CreateTableRow(tr, infoWindowData[index].DisplayText, dateString); break; } }
... View more
06-24-2013
12:57 PM
|
0
|
0
|
627
|
|
POST
|
Hi Craig, The current Gallery switches over to SSL if the authentication with the server reports back that it requires it. I wouldn't modify the addresses in the code because there are aspects of the address usage that are out of the app's control that simply will not accept the switch, so the http/https is handled in the proxy. This enables the Gallery to support public or private content in a public or private group. Regards, Mike
... View more
06-18-2013
05:49 AM
|
0
|
0
|
411
|
|
POST
|
Hi Craig, We switched from a JSON-based config.txt to a JavaScript config.js so that one could use linting tools to check the syntax of the configuration file--they're a great way to catch tiny typos that silently break a JavaScript app. (One can lint JSON, but then we'd have to remove all of the comments.) So the first step that I do is to run my config file through a linter such as JSLint. Thank you for pointing out the out-of-date help documentation; I added that fix to our to-do list. Regards, Mike
... View more
06-07-2013
07:12 AM
|
0
|
0
|
1962
|
|
POST
|
Thanks, David--I've added your enhancement to Esri's GitHub site. Mike
... View more
05-23-2013
06:29 AM
|
0
|
0
|
1021
|
|
POST
|
Hi David, Both sites are getting stuck by a flaw in the app that's preventing the selected parcel's popup from appearing. Please change line 686 in js\locator.js from dijit.byId("divProperty").select(); to dijit.byId("divProperty").selected = true; I've made this change to the github version. The ArcGIS authentication that the proxy uses has not changed from 10.1 to 10.2, so you can continue to use that proxy program. The current version of Parks and Rec Finder supports mobile devices and has autocomplete. It will be available in the upcoming 10.2 release, or you can get it now from the Esri GitHub site (https://github.com/Esri/park-and-recreation-finder). (However, as with the other almost-10.2 apps in our GitHub site, such as tax-parcel-viewer, it is undergoing testing right now. When the repository commit is tagged with "10.2", you'll have the version that goes into arcgis.com and will be supported.) Regards, Mike
... View more
05-22-2013
10:47 AM
|
0
|
0
|
1264
|
|
POST
|
Hi Brian, http://www.arcgis.com/sharing/rest/content/items/<itemId>/data works for me for PDF items shared with everyone, where the item ID comes from the URL of the ArcGIS Online item, e.g., http://<organization>.maps.arcgis.com/home/item.html?id=7e92720c9f264cd6b07c247c2e43b06 Mike
... View more
05-22-2013
07:24 AM
|
1
|
0
|
6204
|
|
POST
|
There are a few issues floating in this thread; I'll try to catch them all. When a search result is selected from the list, the app should pan and zoom to the item. There were two cases where this wasn't working, and we've solved one of them: The map data were not in Web Mercator: no longer a requirement The original Parcel Viewer was for Web Mercator Aux Sphere only. In mid-April, we added general projection handling, which got into the template shortly afterwards. (It went in the download as well, but some people encountered an older version in downloads.) Web applications should not have any problem with coordinate systems. As an example, Paul's site, which started this thread, uses spatial reference 2965 (NAD_1983_StatePlane_Indiana_East_FIPS_1301_Feet), and one can jump to search results. The map data are a filtered subset: still a restriction If the map layer is created by filtering a larger data set (e.g., show only hydrants out of a layer with all facilities), the map shows only the filtered items, but a query to the layer returns everything, and thus the search results include items that are not visible. One can select an invisible item from the list, but since it is invisible, the pan and zoom step doesn't do anything. Layers need to be top-level items in the web map to be searchable. We are interested in supporting layers that are grouped or nested, but the webmap doesn't yet give the app all the information for searching these layers. (It's this case that leads to the "can't find layer" message and then lists the same layer name.) How is the address geolocator configured? In mid-April, the geolocator configuration was moved to the file commonConfig.js in the root level of the site. The value set there is assigned to esri.config.defaults.geometryService during the app's startup, unless overridden by an organization's Portal setting. Mike
... View more
05-22-2013
06:44 AM
|
0
|
0
|
1160
|
| Title | Kudos | Posted |
|---|---|---|
| 1 | 05-22-2013 07:24 AM | |
| 1 | 07-29-2013 01:59 PM | |
| 1 | 01-25-2016 08:45 AM |
| Online Status |
Offline
|
| Date Last Visited |
11-11-2020
02:23 AM
|