diff --git a/src/modules/about/About.js b/src/modules/about/About.js index 2196e59..d4af466 100644 --- a/src/modules/about/About.js +++ b/src/modules/about/About.js @@ -1,16 +1,63 @@ import React, { Component } from 'react'; -import {Text, ScrollView, View, Platform, StyleSheet, Image} from "react-native"; +import {Text, ScrollView, View, Platform, StyleSheet, Image, Linking, TouchableOpacity} from "react-native"; +// import HTMLView from 'react-native-htmlview'; + +import {Button, Text as NBText, Icon} from 'native-base'; + +const CHATEAU_NEUF_ADDRESS = 'Det Norske Studentersamfund, Slemdalsveien 15, 0369 Oslo'; export default class About extends Component { + /* FIXME: Values here are pretty hardcoded. Should fetch config from a JSON-file or API */ render() { return ( + Det Norske Studentersamfund + + Følg oss på + + Linking.openURL('https://www.facebook.com/studentersamfundet/')}> + Facebook + + Linking.openURL('https://www.instagram.com/studentersamfundet/')}> + Instagram + + + + Adresse + Det Norske Studentersamfund{"\n"}Slemdalsveien 15, 0369 Oslo + + + + Åpningstider + + + + Ta kontakt + + + + + + + + + Chateau Neuf Studentene i Oslo har sitt naturlige tilholdssted på Det Norske Studentersamfund, i hyggelige lokaler på Chateau Neuf øverst på Majorstuen. Her er det åpent alle dager unntatt søndag, og hver dag skjer det en rekke ting i våre mange arrangementslokaler. Enten man ønsker en tur i baren, på kafé, på debatt, på konsert, teater eller kino, har man muligheten på Chateau Neuf. Chateau Neuf er et frivillig drevet studenthus. Studenter over alt i Oslo kan komme hit og få nyttig og spennende erfaring med å drive et av Oslos største kulturhus. Her kan du stå i bar, sette lys og lyd, jobbe med markedsføring, produsere konserter, bli kjent med hundrevis av bra mennesker og få minner for livet. Alle studentforeninger i Oslo kan arrangere gratis på Chateau Neuf. Skal du arrangere en fest, sette en konsert, holde et foredrag eller gjennomføre et møte, har vi lokaler som kan brukes til dette. + + {/**/} ) @@ -23,6 +70,7 @@ const styles = StyleSheet.create({ fontSize: 20, fontWeight: 'bold', color: '#000', + textAlign: 'center', }, paragraph: { fontSize: 16, @@ -50,5 +98,40 @@ const styles = StyleSheet.create({ }, featuredImage: { height: 230, + width: null, + }, + logo: { + height: 128, + width: null, + marginBottom: 10, + }, + icon: { + fontSize: 16, + }, + largeIcon: { + fontSize: 40, + }, + section: { + marginTop: 8, + marginBottom: 20, + alignSelf: 'center', + }, + someBtn: { + flex: 1, + alignItems: 'center', } -}); \ No newline at end of file +}); + +// const HTMLStyles = StyleSheet.create({ +// p: { +// fontSize: 16, +// marginBottom: -30, +// color: '#000', +// }, +// ul: { +// fontSize: 16, +// color: '#000', +// marginTop: -20, +// marginBottom: -30, +// }, +// }); \ No newline at end of file diff --git a/src/modules/about/AboutContainer.js b/src/modules/about/AboutContainer.js index 6e416ad..7f4aaa4 100644 --- a/src/modules/about/AboutContainer.js +++ b/src/modules/about/AboutContainer.js @@ -1,5 +1,45 @@ import {connect} from "react-redux"; +import React, {Component} from 'react'; +import Config from 'react-native-config'; import About from "./About"; -export default connect()(About); \ No newline at end of file +class AboutContainer extends Component { + // constructor(props) { + // super(props); + // this.state = { + // openingHours: '', + // loading: false, + // error: null, + // }; + // } + // + // componentDidMount() { + // this.fetchOpeningHours(); + // } + // + // fetchOpeningHours() { + // const url = `${Config.EVENT_API_URL}/wp-json/wp/v2/pages/?slug=aapningstider`; + // this.setState({ loading: true }); + // + // fetch(url) + // .then(res => res.json()) + // .then(res => { + // this.setState({ + // openingHours: res ? res[0].content.rendered : '', + // error: res.error || null, + // loading: false, + // }); + // + // }) + // .catch(error => { + // this.setState({ error, loading: false }); + // }); + // } + + render() { + return ; + } +} + +export default connect()(AboutContainer); \ No newline at end of file diff --git a/src/modules/events/EventDetail.js b/src/modules/events/EventDetail.js index 806c280..8d9731e 100644 --- a/src/modules/events/EventDetail.js +++ b/src/modules/events/EventDetail.js @@ -33,6 +33,12 @@ export default class EventDetail extends Component { _formatRelative(time) { return moment(time).fromNow(); } + _formatLocation() { + if(this.props.item.venue !== 'Annetsteds') { + return CHATEAU_NEUF_ADDRESS; + } + return 'Ukjent adresse' + } _formatTicketText() { /* FIXME: This should be handled by API */ @@ -70,8 +76,10 @@ export default class EventDetail extends Component { onUrlPress(link) { Linking.openURL(link); } - onLocationPress() { - Linking.openURL(`https://www.google.com/maps/dir/?api=1&destination=${CHATEAU_NEUF_ADDRESS}`); + onLocationPress(venue) { + if( venue !== 'Annetsteds' ) { + Linking.openURL(`https://www.google.com/maps/dir/?api=1&destination=${CHATEAU_NEUF_ADDRESS}`); + } } showPriceAndTicket() { @@ -162,11 +170,11 @@ export default class EventDetail extends Component { {/* Location and maps */} - + this.onLocationPress(item.venue)}> {item.venue} - {CHATEAU_NEUF_ADDRESS} + {this._formatLocation()} {this.showPriceAndTicket()} diff --git a/src/modules/events/EventListContainer.js b/src/modules/events/EventListContainer.js index 6bcf938..f97042b 100644 --- a/src/modules/events/EventListContainer.js +++ b/src/modules/events/EventListContainer.js @@ -1,15 +1,16 @@ import {connect} from "react-redux"; -import EventList from "./EventList"; -import React from 'react'; +import React, {Component} from 'react'; import Config from 'react-native-config'; import moment from "moment"; import 'moment/locale/nb'; +import EventList from "./EventList"; + moment.locale('nb'); /* Ref: https://medium.com/react-native-development/how-to-use-the-flatlist-component-react-native-basics-92c482816fe6 */ -class EventListContainer extends React.Component { +class EventListContainer extends Component { constructor(props) { super(props); diff --git a/src/screens/AboutScreen.js b/src/screens/AboutScreen.js index 10a50c7..5c9506a 100644 --- a/src/screens/AboutScreen.js +++ b/src/screens/AboutScreen.js @@ -1,9 +1,10 @@ import React, { Component } from 'react'; -import AboutContainer from "../modules/about/AboutContainer"; import Icon from 'react-native-vector-icons/SimpleLineIcons'; -import getTheme from '../../native-base-theme/components'; import {StyleProvider} from "native-base"; +import AboutContainer from "../modules/about/AboutContainer"; +import getTheme from '../../native-base-theme/components'; + export default class AboutScreen extends Component { static navigationOptions = { title: 'Om oss', @@ -22,7 +23,7 @@ export default class AboutScreen extends Component { render() { return ( - + ); } } \ No newline at end of file