diff --git a/app/Clubs.js b/app/Clubs.js index 4a50f18..10e2adf 100644 --- a/app/Clubs.js +++ b/app/Clubs.js @@ -10,7 +10,8 @@ import { FlatList, TouchableOpacity, Image, - TouchableHighlight + TouchableHighlight, + Linking } from 'react-native'; import { @@ -25,6 +26,7 @@ import { createStackNavigator } from '@react-navigation/stack' import { SearchBar } from 'react-native-elements'; import styles from './styles/liststyles' import { url } from './resources/fetchInfo.json' +import LinearGradient from 'react-native-linear-gradient'; const Stack = createStackNavigator(); @@ -32,7 +34,18 @@ export const ClubInfo = ({route}) => { const item = route.params; return ( - Meeting Time and Day: {'\n'}{item.meeting}{"\n\n"}Zoom Link: {'\n'}{item.link}{"\n\n"}Sponsor: {'\n'}{item.sponsor} + + Meeting Time and Day: + {item.meeting} + + + Zoom Link: + Linking.openURL(item.link)}>{item.link} + + + Sponsor: + {item.sponsor} + ) } diff --git a/app/LunchEvents.js b/app/LunchEvents.js index 4bc67e2..a1db09b 100644 --- a/app/LunchEvents.js +++ b/app/LunchEvents.js @@ -8,6 +8,7 @@ import { StatusBar, FlatList, TouchableOpacity, + Image, } from 'react-native'; import { @@ -17,22 +18,62 @@ import { DebugInstructions, ReloadInstructions, } from 'react-native/Libraries/NewAppScreen'; - +import { NavigationContainer } from '@react-navigation/native' +import { createStackNavigator } from '@react-navigation/stack' import styles from './styles/liststyles' import { url } from './resources/fetchInfo.json' +const Stack = createStackNavigator(); -const LunchEvent = ({item}) => { - const [visible, setVisible] = useState(0) - const extra = visible?({'\n'}{item.item.text}{'\n\n'}Location: {item.item.loc}):(<>); +const LunchEvent = (props) => { + const item = props.item return( - setVisible(!visible)} activeOpacity={0.8}> - {item.item.title} - {extra} + props.navigation.navigate('LunchInfo', {data:props.data,name:props.name,text:item.text,loc:item.loc})} activeOpacity={0.8}> + + + {item.title} + ) } +export const LunchInfo = ({route}) => { + const item = route.params; + return ( + + + Description: + {item.text} + + + Location: + {item.loc} + + + ) + } +function Lunch () { + return ( + + + + ({ + title:route.params.name + })} + /> + + + ) + } class LunchEvents extends React.Component { @@ -64,7 +105,7 @@ class LunchEvents extends React.Component { } + renderItem={({item}) => } keyExtractor={item=>JSON.stringify(item)} /> @@ -72,4 +113,4 @@ class LunchEvents extends React.Component { } } -export default LunchEvents; +export default Lunch; diff --git a/app/SSLOps.js b/app/SSLOps.js index 129125a..72860ba 100644 --- a/app/SSLOps.js +++ b/app/SSLOps.js @@ -8,6 +8,7 @@ import { StatusBar, FlatList, TouchableOpacity, + Image, } from 'react-native'; import { @@ -17,21 +18,69 @@ import { DebugInstructions, ReloadInstructions, } from 'react-native/Libraries/NewAppScreen'; +import { NavigationContainer } from '@react-navigation/native' +import { createStackNavigator } from '@react-navigation/stack' import styles from './styles/liststyles'; import { url } from './resources/fetchInfo.json'; -const SSLElement = ({item}) => { - const [visible, setVisible] = useState(0) - const extra = visible?({'\n'}Details: {item.item.text}{"\n\n"}Where: {item.item.loc}{"\n\n"}Teacher: {item.item.teacher}):(<>); - return( - - setVisible(!visible)} activeOpacity={0.8}> - {item.item.title} - {extra} - - +const Stack = createStackNavigator(); + +export const SSLInfo = ({route}) => { + const item = route.params; + console + return ( + + + Description: + {item.text} + + + Who: + {item.teacher} + + + Where: + {item.loc} + + + ) + } + +function SSLElement (props) { + const item = props.item; + return( + + props.navigation.navigate('SSLInfo', {data: props.data, name: item.item.title, text: item.item.text, loc:item.item.loc, teacher: item.item.teacher})} activeOpacity={0.8}> + + + {item.item.title} + + + ) } +function SSLOpp () { + return ( + + + + ({ + title:route.params.title + })} + /> + + + ) + } class SSLOps extends React.Component { @@ -63,7 +112,7 @@ class SSLOps extends React.Component { } + renderItem={item=>} keyExtractor={item=>JSON.stringify(item)} /> @@ -71,4 +120,4 @@ class SSLOps extends React.Component { } } -export default SSLOps; \ No newline at end of file +export default SSLOpp; \ No newline at end of file diff --git a/app/Staff.js b/app/Staff.js index e0ad176..4c4fcc2 100644 --- a/app/Staff.js +++ b/app/Staff.js @@ -30,7 +30,7 @@ const StaffElement = ({item}) => { setVisible(!visible)} activeOpacity={0.8}> - + {item.item.name} {visible?extra:<>} diff --git a/app/assets/lunch.png b/app/assets/lunch.png new file mode 100644 index 0000000..b22878c Binary files /dev/null and b/app/assets/lunch.png differ diff --git a/app/assets/sslopps.png b/app/assets/sslopps.png new file mode 100644 index 0000000..4af2185 Binary files /dev/null and b/app/assets/sslopps.png differ diff --git a/app/styles/liststyles.js b/app/styles/liststyles.js index 20d555d..67ed989 100644 --- a/app/styles/liststyles.js +++ b/app/styles/liststyles.js @@ -29,6 +29,22 @@ const styles = StyleSheet.create({ alignSelf:'flex-end', marginTop:'-3%', marginRight:'-3%' + }, + title1: { + fontSize: 28, + fontWeight: 'bold', + }, + link: { + fontSize: 28, + textDecorationLine: 'underline', + textDecorationStyle: "solid", + textDecorationColor: "#000", + }, + infoContainer: { + backgroundColor: 'white', + borderRadius: 6, + padding: 5, + marginBottom: 10, } });