GithubHelp home page GithubHelp logo

esri / crowdsource-reporter Goto Github PK

View Code? Open in Web Editor NEW
25.0 38.0 32.0 8.51 MB

An ArcGIS Online group application template authored by organization and made available to constituents to report a problem or observation.

Home Page: http://solutions.arcgis.com/local-government/help/crowdsource-reporter/

License: Apache License 2.0

JavaScript 92.68% CSS 4.52% HTML 2.80%
web-development solutions local-government crowdsource-reporter government crowdsourcing configurable-apps

crowdsource-reporter's Introduction

crowdsource-reporter

Crowdsource Reporter is a configurable group application template that allows users to submit problems or observations.

The Crowdsource Reporter application presents one, or more, maps that can be used to report a problem or observation. Users can anonymously submit new reports, review existing reports, and comment and vote on reports or observations submitted by other users. They can also authenticate with their ArcGIS Online credentials and track the status of problems or observations they have reported.

Image of the Constituent Engagement app

Features

  • Presents editable layers from one or more maps that have been shared with the ArcGIS Online/Portal group configured in the application.
  • Users can submit new reports, review existing reports, and comment and vote on reports or observations submitted by other users.
  • Users can access the content anonymously, or authenticate using their ArcGIS credentials. Authenticated users gain access to additional functionality, such as My Issues - a list of all reports they have submitted.
  • The application has been optimized for smartphones but is responsively designed and can also be used in browsers on smartphones, tablets, and desktops using all browsers supported by ArcGIS Online.

Requirements

Experience

  • Authoring maps
  • Configuring ArcGIS Online/Portal web app templates

Software

  • ArcGIS Online subscription or ArcGIS Portal

Browser Compatibility

Instructions

General Help

Deploying

  1. To deploy this application, download the template from Portal/ArcGIS Online and unzip it.
  2. Copy the unzipped folder containing the web app template files, such as index.html, to your web server. You can rename the folder to change the URL through which users will access the application. By default the URL to the app will be http://<Your Web Server>/<app folder name>/index.html
  3. Change the sharing host, found in defaults.js inside the config folder for the application, to the sharing URL for ArcGIS Online or Portal. For ArcGIS Online users, keep the default value of www.arcgis.com or specify the name of your organization.
  • ArcGIS Online Example: "sharinghost": location.protocol + "//" + “<your organization name>.maps.arcgis.com
  • Portal Example where arcgis is the name of the Web Adaptor: "sharinghost": location.protocol + "//" + "webadaptor.domain.com/arcgis"
  1. If you are using Portal or a local install of the ArcGIS API for JavaScript, change all references to the ArcGIS API for JavaScript in index.html to refer to your local copy of the API. Search for the references containing "//js.arcgis.com/3.35" and replace this portion of the reference with the url to your local install.
  • For example: "//webadaptor.domain.com/arcgis/jsapi/jsapi" where arcgis is the name of your Web Adaptor.
  1. Copy a group ID from Portal/ArcGIS Online and replace the default group ID in the application’s default.js file. You can now run the application on your web server or configure the application further.

Note: If your application edits features in a feature service, contains secure services or web maps that aren't shared publicly, or generate requests that exceed 200 characters, you may need to set up and use a proxy page. Common situations where you may exceed the URL length are using complex polygons as input to a task or specifying a spatial reference using well-known text (WKT). For details on installing and configuring a proxy page see Using the proxy. If you do not have an Internet connection, you will need to access and deploy the ArcGIS API for JavaScript documentation from developers.arcgis.com.

Resources

Learn more about Esri's ArcGIS for Local Government maps and apps.

Show me a list of other Local Government GitHub repositories.

This application uses the 3.25 version of Esri's ArcGIS API for JavaScript; see the site for concepts, samples, and a reference for using the API to create mapping web sites.

Esri's ArcGIS Online Help site describes how to create web maps and web map applications in the ArcGIS Online ecosystem.

Issues

Find a bug or want to request a new feature? Please let us know by submitting an issue.

Contributing

Esri welcomes contributions from anyone and everyone. Please see our guidelines for contributing.

Licensing

Copyright 2014 Esri

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

A copy of the license is available in the repository's LICENSE.txt file.

crowdsource-reporter's People

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

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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

crowdsource-reporter's Issues

Add in-app help

Add an in-app help window that will open in front of the app on desktop and tablet devices, and full-screen in front of the app on smartphones. This should not open in another tab - it should be part of the app.

The content of this window will be a block of text that will be configurable though the app configuration panel.

Help will be accessed by clicking an icon in the UI - location TBD. I am working with our design team to come up with the UI and will add it to this issue as soon as I have the comp and graphics. @CTLocalGovTeam : Once we have made these decisions I will assign this issue to you for work.

Cannot change group using config panel

  1. Share a group using the app
  2. In the config panel choose another group
  3. Click Save and Done
  4. Open the application. The content displayed is from the initial group used, not the group that was selected in the config panel.

typos in identity strings

When the user is signed in using Facebook, the identity string that is stored says 'FaceBook'. The correct capitalization is 'Facebook'.

Can the String for Google+ be 'Google+'? If there is an issue with the +, please make this 'GooglePlus'

Cannot open links from map description

If a map description contains a link, it can only be opened by left-clicking the link and choosing 'open in new tab'. Right-clicking the link does nothing. Links should open in new tabs when left-clicked.

Features can be created with illegal null values

When a field does not accept null values, the related parameter should (and does) display 'required' at the end of the parameter name. Despite this, no value is required in these fields to submit the report.

The submit button should be disabled until all required fields are completed.

Date formats

What is the source of date formats displayed in the app?

Decrease size of map control

Navigating on the GeoForm on a touch device is difficult because of the size of the map control. The geoForm can't be scrolled while the map is covering the screen.

For all devices:

  1. decrease the width of the map control so that the left side aligns with the line between the search button and the X

  2. decrease the height of the control by 30%

Date Field in Title - Displaying seconds since epoch

Data needs to be formated, raw value is being displayed now

Fire Hydrant reported on1422381017874

needs to be
Fire Hydrant reported on 1/27/2014 ....

This only occurs when edit tracking is enabled after a webmap is created and the pop up is defined. The Edit Tracking fields are not present in the pop definition.

To repo, create a webmap and remove the pop up info for the date field.

Show number pad for all numeric fields

In the geoform, when entering an integer the number appears instead of the keyboard. Float and Double fields show the keyboard. They should also show the number pad.

Consistent date formats

The date format for the Created Date and the Modified Date values in the item details don't match the format used when displaying dates in the data. Please use consistent date formats.

symbology changes when zooming

Symbols change from those defined in the layer to black points when zooming in on the map.

Tested on iPhone, Tab S, iPad, Desktop Chrome

Display/refresh issues in Safari

The application does not display correctly in Safari (v5.1.7 7534.57.2) on a desktop.

Selecting map and layer:
1-19-2015 3-33-31 pm

Creating a report:
1-19-2015 3-34-21 pm

App spins on repeated sign in/sign out using IE9

This was reported to Dr Anand and Sumit on Friday, adding to GitHub for tracking purposes.

Using IE9 only:
Using Guest, social media, or AGOL credententials, sign in to the app.
Sign out of the app
Sign back into the app - app will spin
Cache must be cleared before signing back in again.

Organization URL is hard-coded

The organization URL ishard-coded in the default.js file. This parameter must be 'arcgis.com' in order for the app to work while hosted in AGOL. Please fix.

Zoom to issue doesn't work in desktop view

in the desktop view of the app, clicking the 'map' icon for an issue should zoom the map to the location of that issue, at the zoom level specified in the configuration. Currently clicking this button does nothing.

Tablet view needs to be more intutive

In tablet view, it is hard to determine what to do when the app is opened. It is hard to tell that I have to click a map name and once I open the map to know what to do with the layers. The edit button to so far away, it is hard to see and hard to correlate with the active layer. Not sure what best fix is, but maybe something like letting the user input custom text to the map and layer display. Also, look at how the user can generate a new feature from the layer item in the accordion panel.

ex:
To create a ${MapName}, click here
View ${LayerNAme} issues

No MGRS search

Searching for an MGRS value such as 4QFJ12345678 returns no values.

It also appears that the configuration options for USNG and MGRS both refer to USNG, as searching for a USNG coordinate returns 2 identical results - 1 marked as USNG and one marked as MGRS.

message on app load

On application load, developer tools in Chrome display the following message:

"The XMLHttpRequest progress event property 'position' is deprecated. Please use 'loaded' instead."

Don't store social media alias

When storing social media credentials, don't store the alias associated with the account. These are frequently changed and are not required to be unique. Storing the system (twitter, google+, etc) with either the username/handle (in twitter this is the @ value) and/or the GUID should be sufficient.

Currently when users create features, these features disappear from 'their' list when they change their alias, even though the unique values (GUID & handle) haven't changed.

Option to make Report-It the default view after selecting webmap

It might be more user friendly if on selecting a webmap/issue-category the geoform would be open by default, instead of the list view of existing issues. I say that because in most cases the primary reason a user goes to this map is to submit a new point. Reviewing and commenting on existing points is only the secondary purpose a user would visit this application. Especially if the map is empty it is very confusing.

This would also solve issue #23.

Suggestions on how I can achieve that in the .js code would be very much appreciated, too. Overall very nice job on this template, thank you!!

Custom Pop ups are not displaying

I have configured a custom attribute display in my pop up. This is stored in the wemap as the description:(cant figure out how to show the raw text in my example below, it is being formated)

"description": "Issue reported on {CreationDate} and last updated on {EditDate}.

Additional Details:
{COMMENTS}
",

In the app, a field list is being shown instead of the custom popup.

Add shortcut icon

app doesn't currently have an icon when shortcuts are created on phones/tablets
Icon should be high resolution for crisp display on high pixel density devices.

Social media sign in

Follow-up to my conversations with Dr Anand and Sumit this morning and last week:

If the email address always accessible on all three social media platforms, regardless of account security settings, please store the email address of a user instead of the name of the social medial platform and account GUID.

This will help users to see all their issues, even if they have been submitted using multiple platforms, assuming their accounts use the same email.

In addition, since it is not possible to have a $ (current value separator in the identifier string) in an email address, is it now possible to reliably ignore any text after the $ when filtering for the My Issues list?

This will help users to see all their issues, even if they change the alias(s) associated with their account(s).

Configuration should provide list of fields instead of free text entry

When on the configuration page for the app, the user must select fields containing # Votes, user credentials, etc. These are free text fields. It would be great if it were a pick list instead. This would remove the need for the user to go back and find the field name or perhaps misspell it.

image

store user credentials with comments

repro steps:

App is configured to use field NAME for storing reporter name. Field NAME exists in feature class and related comments table.

  1. sign into app using social media

  2. Create a feature. Username is successfully written to NAME field for new feature

  3. Comment on another feature. Username is NOT written to NAME field of comments table.

Please keep track of credentials in the comments table if the configured field exists in the table as well as the feature class.

No address search

searching for an address such as 123 main st naperville il returns no results.
The app should use the address locator(s) configured in the organization as well as any locators configured in the organization (MGRS, USNG, lat/long).

Increase obviousness of selected map/layer

In the desktop view, the selected map is indicated by colouring the border of the selected map in the left panel, and the selected layer is indicated by chainging the name at the top of the right panel.

Please propose a way to make both the map and layer selection more obvious in the left panel.

Duplicate values showing in new features

When submitting a new report, any parameters left empty appear to take on the value of another surrounding (populated) parameter.

For example, if a feature is added with the following 3 parameter values:
parameter 1: FC-215
parameter 2:
parameter 3: 6

The following will be displayed when reviewing the values:
parameter 1: FC-215
parameter 2: 6 <- this value shouldn't be here
parameter 3: 6

This occurs with all field types, even if the substituted value is not valid for the parameter type (eg text will appear in an empty integer parameter)

Geoform not honoring layer templates

As discussed in this morning's meeting with Dr. Anand, Sumit, and Avijit.

When templates including default values are defined on the web map layer, these default values are not populated on features that are created through the geoform. They are used when creating features through the web map.

Cannot edit values on Android tablets

This was initially reported by CyberTech on a Tab 4 (Android 4.4.2).

I can repro on our Tab S (4.4.2) and Tab 2 (4.1.2).

Any text editing operation that causes the keyboard to open causes a refresh.

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.