Browse Source

Added wiketud link in drawer

keplyx 4 years ago
parent
commit
356d7c2092
1 changed files with 22 additions and 10 deletions
  1. 22
    10
      components/SideMenu.js

+ 22
- 10
components/SideMenu.js View File

1
 import React from 'react';
1
 import React from 'react';
2
-import {Platform, Dimensions, StyleSheet, Image, FlatList} from 'react-native';
2
+import {Platform, Dimensions, StyleSheet, Image, FlatList, Linking} from 'react-native';
3
 import {Badge, Text, Container, Content, Icon, Left, ListItem, Right} from "native-base";
3
 import {Badge, Text, Container, Content, Icon, Left, ListItem, Right} from "native-base";
4
 import i18n from "i18n-js";
4
 import i18n from "i18n-js";
5
 
5
 
7
 
7
 
8
 const drawerCover = require("../assets/drawer-cover.png");
8
 const drawerCover = require("../assets/drawer-cover.png");
9
 
9
 
10
+const WIKETUD_LINK = "https://www.etud.insa-toulouse.fr/wiketud/index.php/Accueil";
11
+
10
 export default class SideBar extends React.Component {
12
 export default class SideBar extends React.Component {
11
 
13
 
12
     constructor(props) {
14
     constructor(props) {
44
                 // types: "11"
46
                 // types: "11"
45
             },
47
             },
46
             {
48
             {
49
+                name: "Wiketud",
50
+                route: "",
51
+                icon: "web",
52
+                bg: "#477EEA",
53
+                // types: "11"
54
+            },
55
+            {
47
                 name: i18n.t('screens.settings'),
56
                 name: i18n.t('screens.settings'),
48
                 route: "Settings",
57
                 route: "Settings",
49
                 icon: "settings",
58
                 icon: "settings",
60
         ];
69
         ];
61
     }
70
     }
62
 
71
 
63
-    navigateToScreen = (route) => () => {
72
+    navigateToScreen(route) {
64
         this.props.navigation.navigate(route);
73
         this.props.navigation.navigate(route);
65
         this.props.navigation.closeDrawer();
74
         this.props.navigation.closeDrawer();
66
         this.setState({active: route});
75
         this.setState({active: route});
71
             <Container>
80
             <Container>
72
                 <Content
81
                 <Content
73
                     bounces={false}
82
                     bounces={false}
74
-                    style={{ flex: 1, top: -1 }}
83
+                    style={{flex: 1, top: -1}}
75
                 >
84
                 >
76
-                    <Image source={drawerCover} style={styles.drawerCover} />
85
+                    <Image source={drawerCover} style={styles.drawerCover}/>
77
 
86
 
78
                     <FlatList
87
                     <FlatList
79
                         data={this.dataSet}
88
                         data={this.dataSet}
82
                         renderItem={({item}) =>
91
                         renderItem={({item}) =>
83
                             <ListItem
92
                             <ListItem
84
                                 button
93
                                 button
85
-                                noBorder={item.route !== 'Proximo'} // Display a separator before settings
94
+                                noBorder={item.name !== 'Wiketud'} // Display a separator before settings
86
                                 selected={this.state.active === item.route}
95
                                 selected={this.state.active === item.route}
87
-                                onPress={
88
-                                    this.navigateToScreen(item.route)
89
-                                }
96
+                                onPress={() => {
97
+                                    if (item.name !== 'Wiketud')
98
+                                        this.navigateToScreen(item.route);
99
+                                    else
100
+                                        Linking.openURL(WIKETUD_LINK).catch((err) => console.error('Error opening link', err));
101
+                                }}
90
                             >
102
                             >
91
                                 <Left>
103
                                 <Left>
92
                                     <Icon
104
                                     <Icon
93
                                         active
105
                                         active
94
                                         name={item.icon}
106
                                         name={item.icon}
95
                                         type={'MaterialCommunityIcons'}
107
                                         type={'MaterialCommunityIcons'}
96
-                                        style={{ color: "#777", fontSize: 26, width: 30 }}
108
+                                        style={{color: "#777", fontSize: 26, width: 30}}
97
                                     />
109
                                     />
98
                                     <Text style={styles.text}>
110
                                     <Text style={styles.text}>
99
                                         {item.name}
111
                                         {item.name}
100
                                     </Text>
112
                                     </Text>
101
                                 </Left>
113
                                 </Left>
102
                                 {item.types &&
114
                                 {item.types &&
103
-                                <Right style={{ flex: 1 }}>
115
+                                <Right style={{flex: 1}}>
104
                                     <Badge
116
                                     <Badge
105
                                         style={{
117
                                         style={{
106
                                             borderRadius: 3,
118
                                             borderRadius: 3,

Loading…
Cancel
Save