484028 Risk Networking Site 2

I am currently building risk management software that will conduct incident data collection and analysis

I require an application that will work with an already designed Social networking site [url removed, login to view]

I require well documented, completely secure and extendible code.

The developer that successfully completes Stage One will get an opprtunity to work on further stages and projects.

Specification for stage 1

At this stage the application must provide ability for the user to add, edit, remove and view incident records.

The application must contain 4 basic pages (forms) country selection page, incident table page, incident add/edit/remove page and incident narrative page. There may be also a page with incident table customization form if this form doesn't fit within incident table page.

Displayed data fields and allowed values may vary from country to country so data entry and display pages must be developed with this requirement in mind.

* * *

Country Selection Page

This page must provide ability for the user to select a country to work with. On selection of country the user must be redirected to incident table page for the country.

Incident Table Page

This page must represent incident data for the country in as a table of incident records. There must be ability for the user to customize data representation. Specific requirements to table representation listed below in Incident Table section. The page must also contain navigation link to country selection page and a button or link to new incident page.

The page may also have controls to select and remove multiple selected incident records.

For each incident record there must be Edit and Narrative buttons or links which must open edit or narrative pages for the record.

Incident Add/Edit/Remove page

The page must display a form with controls corresponding to incident data field allowing the user to report a new incident or edit an existing incident record. The page mode (add or edit) depends on URL request parameters.

The page must provide input validation and in case of invalid values it must display error messages near affected controls and highlight them.

In case of successful data entry the page must redirect the user to the incident table page and scroll to the created/edited record.

In edit incident mode the page must provide controls to delete selected incident record. The controls must provide protection against

The page must also contain a navigation link to incident table page. It may also contain a link to country selection page.

Incident Narrative Page

The page must display incident details text for the incident specified by URL parameter. It must also contain a link to go back to incident table page.

Incident Table

Basic requirements:

1. Incident table must be split into pages containing data for months. The first page must display records for the last month, the next page — for the previous and the last — for the first month when incident reporting was started (most old). The page must have a heading indicating the time period.

2. There must be ability to select sort order for records displayed and sort direction (ascending or descending). The order must apply for the records within time period of the page, not to page order. The default order is on incident date descending (i.e. newest to oldest).

3. There must be ability to filter displayed records on their field values. I.e. select display values for enumeration and set fields and display ranges (min and/or max) for numeric fields.

4. The page must also display total values for numeric fields, total number of incidents for the time period (and displayed incidents number if filtering applied). I.e. “Total: X incidents (Y shown)”.

Advanced requirements (may be postponed to meet the timeframe):

1. Ability to select time period used to split records into pages: month, quarter, half year or year.

2. Ability to select multiple fields for custom sort order and direction for each field.