The Pulse iPhone / iPad app is used by users who login to view event guest lists and manage the status of the guests. Multiple devices are used at the same time to manage these lists. The app is often used in areas where connectivity drops in and out. The major problem at the moment is that the app will frequently hang (the spinning wheel spins forever) when the db connection is down. This should be fixed so that multiple devices can still update their guest lists and then these guest status changes update the db only when a connection is available. So the app will work in areas of poor connectivity.
TIME TO COMPLETE
This app needs to be completed as soon as possible so please provide your fastest time to complete this project.
Saving Guests to iPhone/iPad to work from the local HD
Clicking Confirm on Guest Management should download the selected guest list and the guest status to the iPhone, iPad. This should be saved locally on the hd.
It should be possible to manage these lists (select or deselect a guest) when the phone has no wifi or cellular network. At the moment, a db connection is required to update the guest status from arrived to not arrived. It should be possible to select or deselect without a db connection. These status changes should be saved locally. Updating the db should only be attempted when there is a connection.
When a db connection is available, then the updates should be sent to the db. If 5 status have been changed out of a list of 100, then only these 5 should be sent to the db to be updated. In this way, it will be possible to have several apps updating the db at the same time, and only the most recent status changes will be sent to the db. This will enable guests to be managed by multiple devices when wifi / network coverage is dropping in and dropping out.
The Spinning Wheel
Removing db connectivity and then clicking on a guest causes the app to hang. The spinning wheel popup should be moved to the top right corner and replace the current circle with arrows. This spinning wheel should always be visible and only spin when clicked or when the db is being synced.
Automatic Updating of Guest Lists
Approximately every minute the guest list page automatically refreshes. This triggers the spinning wheel popup and if connectivity is down, then the app will hang. The automatic updates are necessary to sync multiple devices using the same db. However, this should be a background operation so that the guest status can still be changed on the devices without the app hanging. If there is no connection, the update will not be attempted. If there is a connection, the update will be saved locally and the db updated when there is a connection.
When no connection is available to the db and a user clicks through the app for db content. The spinning wheel will spin forever and the app will hang. If no connection is found within 5 seconds, then the spinning wheel should close and the same current page should be displayed. This means it will be possible to retry the connection again after 5 seconds.