Added planning screen placeholder

This commit is contained in:
keplyx 2019-08-05 16:08:39 +02:00
parent 062ac9ac5d
commit fb086aac58
4 changed files with 62 additions and 2 deletions

View file

@ -1,14 +1,26 @@
// @flow
import * as React from 'react';
import {Container, Text} from 'native-base';
import {Button, Container, H3, Text} from 'native-base';
import CustomHeader from "../components/CustomHeader";
import i18n from "i18n-js";
import {Platform, View} from "react-native";
import CustomMaterialIcon from "../components/CustomMaterialIcon";
import ThemeManager from "../utils/ThemeManager";
import {Linking} from "expo";
type Props = {
navigation: Object,
}
/**
* Opens a link in the device's browser
* @param link The link to open
*/
function openWebLink(link) {
Linking.openURL(link).catch((err) => console.error('Error opening link', err));
}
/**
* Class defining the app's planning screen
*/
@ -18,6 +30,46 @@ export default class PlanningScreen extends React.Component<Props> {
return (
<Container>
<CustomHeader navigation={nav} title={i18n.t('screens.planning')}/>
<View style={{
flexGrow: 1,
justifyContent: 'center',
alignItems: 'center',
}}>
<View style={{
justifyContent: 'center',
alignItems: 'center',
width: '100%',
height: 100,
marginBottom: 20
}}>
<CustomMaterialIcon
icon={'forklift'}
fontSize={100}
width={100}
color={ThemeManager.getCurrentThemeVariables().fetchedDataSectionListErrorText}/>
</View>
<H3 style={{
textAlign: 'center',
marginRight: 20,
marginLeft: 20,
color: ThemeManager.getCurrentThemeVariables().fetchedDataSectionListErrorText
}}>
{i18n.t('planningScreen.wipTitle')}
</H3>
<Text style={{
textAlign: 'center',
color: ThemeManager.getCurrentThemeVariables().fetchedDataSectionListErrorText
}}>
{i18n.t('planningScreen.wipSubtitle')}
</Text>
{Platform.OS === 'android' ?
<Button block style={{marginTop: 20, marginRight: 10, marginLeft: 10}}
onPress={() => openWebLink('https://expo.io/@amicaleinsat/application-amicale')}>
<Text>Try the beta</Text>
</Button>
: <View/>}
</View>
</Container>
);
}

View file

@ -42,7 +42,7 @@ export default class ProxiwashScreen extends FetchedDataSectionList {
* Creates machine state parameters using current theme and translations
*/
constructor() {
super(DATA_URL, 1000 * 10); // Refresh every minute
super(DATA_URL, 1000 * 30); // Refresh every half minute
let colors = ThemeManager.getCurrentThemeVariables();
stateColors[MACHINE_STATES.TERMINE] = colors.proxiwashFinishedColor;
stateColors[MACHINE_STATES.DISPONIBLE] = colors.proxiwashReadyColor;

View file

@ -28,6 +28,10 @@
"listUpdated": "List updated!",
"listUpdateFail": "Error while updating list"
},
"planningScreen": {
"wipTitle": "WORK IN PROGRESS",
"wipSubtitle": "Soon, every event at the INSA Toulouse in one place !"
},
"aboutScreen": {
"appstore": "See on the Appstore",
"playstore": "See on the Playstore",

View file

@ -28,6 +28,10 @@
"listUpdated": "List mise à jour!",
"listUpdateFail": "Erreur lors de la mise à jour de la liste"
},
"planningScreen": {
"wipTitle": "WORK IN PROGRESS",
"wipSubtitle": "Bientôt, tous les évènements de l'INSA Toulouse en un seul endroit !"
},
"aboutScreen": {
"appstore": "Voir sur l'Appstore",
"playstore": "Voir sur le Playstore",