diff --git a/locale/en.json b/locale/en.json
index d21b17c66..c453f4018 100644
--- a/locale/en.json
+++ b/locale/en.json
@@ -11,6 +11,7 @@
"SOCIAL_GROUP_SUBHEADER": "Social group created on {dateCreated}",
"ALL_SOCIAL_GROUPS": "All social groups",
"BULK_IMPORT": "Bulk import",
+ "DATA_PAGE" : "Data page",
"LIME": "Lime",
"LABEL": "Label",
"TYPE": "Type",
@@ -200,6 +201,7 @@
"SEARCH_ITIS_SPECIES": "Search ITIS species",
"SEARCH_INDIVIDUALS_INSTRUCTION": "Search for an individual by name or guid",
"SEARCH_SIGHTINGS_INSTRUCTION": "Search for a sighting by location, owner or guid",
+ "SEARCH_ANIMALS_INSTRUCTION": "Search for an animal by location or owner",
"SEARCH_USER_INSTRUCTION": "Search for a user by name or email",
"PRAIRIE": "Prairie",
"EDIT_USER_METADATA": "Edit user metadata",
@@ -547,6 +549,8 @@
"SPECIAL_INPUTS": "SPECIAL FIELDS",
"SIGHTING_SEARCH_RESULT_PRIMARY_TEXT": "{date} sighting in {region}",
"SIGHTING_SEARCH_RESULT_SECONDARY_TEXT": "Reported by {name} on {date}",
+ "ANIMAL_SEARCH_RESULT_PRIMARY_TEXT": "{date} sighting in {region}",
+ "ANIMAL_SEARCH_RESULT_SECONDARY_TEXT": "Reported by {name} on {date}",
"SELECTED_QUERY_ANNOTATION": "Selected query annotation",
"IDENTIFICATION_FINISHED_TIME": "Identification finished on {time}.",
"SELECTED_MATCH_CANDIDATE": "Selected match candidate",
@@ -637,6 +641,7 @@
"SPECIES:": "Species:",
"EXPLORE_SIGHTINGS_CAPITALIZED": "Explore Sightings",
"EXPLORE_SIGHTINGS": "Explore sightings",
+ "EXPLORE_ANIMALS": "Explore animals",
"ATTRIBUTES": "Attributes",
"RELATIONSHIPS": "Relationships",
"RELATIONSHIPS_DESCRIPTION": "Known or observed social and familial relationships.",
@@ -986,6 +991,7 @@
"COMPONENT_COMMIT_HASH": "{component} commit hash: ",
"INDIVIDUAL_SEARCH_NO_RESULTS": "Your search \"{searchTerm}\" did not match any individuals.",
"SIGHTING_SEARCH_NO_RESULTS": "Your search \"{searchTerm}\" did not match any sightings.",
+ "ENCOUNTER_SEARCH_NO_RESULTS": "Your search \"{searchTerm}\" did not match any sightings.",
"POTENTIAL_COLLABORATOR_SEARCH_NO_RESULTS": "Your search \"{searchTerm}\" did not match any potential collaborators.",
"SEARCH_SERVER_ERROR": "A server error occurred while attempting to search.",
"CONFIGURATION_SITE_NAME_LABEL": "Site name",
@@ -1139,8 +1145,8 @@
"ROLE_GUID_MISSING": "Role is missing ID",
"UNFINISHED_OPTIONS": "Options must have valid values and labels and unique values",
"PROGRESS_STATISTICS_UNKNOWN_PROGRESS": "unknown progress",
- "PROGRESS_STATISTICS_UNKNOWN_ETA_&_UNKNOWN_QUEUE": "Unknown time remaining. Queued behind an unknown number of jobs.",
- "PROGRESS_STATISTICS_UNKNOWN_ETA_&_QUEUE": "Unknown time remaining. Queued behind {ahead, number} {ahead, plural, one {job} other {jobs}}.",
+ "PROGRESS_STATISTICS_UNKNOWN_ETA_&_UNKNOWN_QUEUE": "Estimated time to complete failed to calculate. If processing does not complete within a day, re-run the job. Queued behind an unknown number of jobs.",
+ "PROGRESS_STATISTICS_UNKNOWN_ETA_&_QUEUE": "Estimated time to complete failed to calculate. If processing does not complete within a day, re-run the job. Queued behind {ahead, number} {ahead, plural, one {job} other {jobs}}.",
"PROGRESS_STATISTICS_WRAPPING_ETA_&_UNKNOWN_QUEUE": "Wrapping up... Queued behind an unknown number of jobs.",
"PROGRESS_STATISTICS_WRAPPING_ETA_&_QUEUE": "Wrapping up... Queued behind {ahead, number} {ahead, plural, one {job} other {jobs}}.",
"PROGRESS_STATISTICS_ETA_&_UNKNOWN_QUEUE": "{timeRemaining} left. Queued behind an unknown number of jobs.",
@@ -1271,5 +1277,18 @@
"CONFIRM_NO_MATCH" : "Confirm no match",
"NUMBER_OF_INDIVIDUALS" : "Number of individuals",
"NUMBER_OF_ENCOUNTERS" : "Number of animals",
- "ASSIGN" : "Assign"
+ "NUMBER_OF_ANNOTATIONS" : "Number of annotations",
+ "ASSIGN" : "Assign",
+ "STATE" : "State",
+ "ENCOUNTER_TIME" : "Time of encounter",
+ "LATITUDE" : "Latitude",
+ "LONGTITUDE" : "Longtitude",
+ "MY_PENDING_SIGHTINGS" : "My pending sightings",
+ "MY_SIGHTINGS" : "My sightings",
+ "MY_UNAPPROVED_SIGHTINGS" : "My unapproved sightings",
+ "TotalAccount" : "Total Account: {totalAccount}",
+ "MANAGE_REGIONS" : "Manage Regions",
+ "EXPORT_RESULT" : "Export result",
+ "EXPORT_ACCESS_RESTRICTED_WARNING" : "No results meet export criteria. Consider adjusting your search or requesting export collaborations.",
+ "OK" : "Ok"
}
diff --git a/src/AuthenticatedSwitch.jsx b/src/AuthenticatedSwitch.jsx
index ec70c46fc..eff39216b 100644
--- a/src/AuthenticatedSwitch.jsx
+++ b/src/AuthenticatedSwitch.jsx
@@ -7,7 +7,6 @@ import AuthenticatedAppHeader from './components/AuthenticatedAppHeader';
import SaveCustomField from './pages/fieldManagement/settings/saveField/SaveField';
import GeneralSettings from './pages/generalSettings/GeneralSettings';
import SiteStatus from './pages/siteStatus/SiteStatus';
-import SplashSettings from './pages/splashSettings/SplashSettings';
import FieldManagement from './pages/fieldManagement/FieldManagement';
import UserManagement from './pages/userManagement/UserManagement';
import AdminActions from './pages/adminActions/AdminActions';
@@ -36,19 +35,21 @@ import FourOhFour from './pages/fourohfour/FourOhFour';
import useSiteSettings from './models/site/useSiteSettings';
import SearchIndividuals from './pages/individual/SearchIndividuals';
import SearchSightings from './pages/sighting/SearchSightings';
+import SearchAnimals from './pages/sighting/encounters/SearchAnimals';
import SiteSetup from './pages/setup/SiteSetup';
import MatchSighting from './pages/match/MatchSighting';
import AuditLog from './pages/devTools/AuditLog';
import Welcome from './pages/auth/Welcome';
import EmailVerified from './pages/auth/EmailVerified';
import Home from './pages/home/Home';
-import Preferences from './pages/preferences/Preferences';
import ResendVerificationEmail from './pages/auth/ResendVerificationEmail';
import Footer from './components/Footer';
import { defaultCrossfadeDuration } from './constants/defaults';
import Requests from './pages/setup/Requests';
import SpeciesManagement from './pages/fieldManagement/SpeciesManagement';
+import RegionManagement from './pages/fieldManagement/RegionManagement';
import ChangeLog from './pages/changeLog/ChangeLog';
+import DataPage from './pages/dataPage/DataPage';
export default function AuthenticatedSwitch({
emailNeedsVerification,
@@ -100,9 +101,6 @@ export default function AuthenticatedSwitch({
) : (
-
-
-
@@ -118,6 +116,9 @@ export default function AuthenticatedSwitch({
+
+
+
@@ -130,9 +131,6 @@ export default function AuthenticatedSwitch({
-
-
-
@@ -166,6 +164,9 @@ export default function AuthenticatedSwitch({
+
+
+
@@ -184,6 +185,9 @@ export default function AuthenticatedSwitch({
+
+
+
@@ -214,9 +218,12 @@ export default function AuthenticatedSwitch({
-
+
+
+
+
diff --git a/src/components/AuthenticatedAppHeader/ActionsPane.jsx b/src/components/AuthenticatedAppHeader/ActionsPane.jsx
index 518b73238..cb084c4a7 100644
--- a/src/components/AuthenticatedAppHeader/ActionsPane.jsx
+++ b/src/components/AuthenticatedAppHeader/ActionsPane.jsx
@@ -10,6 +10,7 @@ import Divider from '@material-ui/core/Divider';
import PublicIcon from '@material-ui/icons/SupervisedUserCircle';
import ControlPanelIcon from '@material-ui/icons/PermDataSetting';
import BulkImportIcon from '@material-ui/icons/PostAdd';
+import InsertChartOutlinedOutlinedIcon from '@material-ui/icons/InsertChartOutlined';
import LogoutIcon from '@material-ui/icons/ExitToApp';
import Link from '../Link';
@@ -17,6 +18,12 @@ import Text from '../Text';
import defaultProfilePhoto from '../../assets/defaultProfile.jpg';
const actions = [
+ {
+ id: 'data-page',
+ href: '/data-page',
+ messageId: 'DATA_PAGE',
+ icon: InsertChartOutlinedOutlinedIcon,
+ },
{
id: 'bulk-import',
href: '/bulk-import',
@@ -87,7 +94,7 @@ export default function NotificationsPane({
onClose={closePopover}
>
-
+