From bd8cd34fc29e77a6ad8b9aa94b606e1bd9f27b0e Mon Sep 17 00:00:00 2001 From: Thomas McNiven Date: Sun, 9 Dec 2018 05:17:32 +1000 Subject: [PATCH 1/4] add survery banner to feed screen --- src/screens/Feed/feedStreams.js | 1 + src/screens/Feed/index.js | 58 +++++++++++++++++++++++++-------- src/store/app/actions.js | 4 +++ src/store/app/reducer.js | 6 ++++ src/store/types.js | 2 ++ 5 files changed, 57 insertions(+), 14 deletions(-) diff --git a/src/screens/Feed/feedStreams.js b/src/screens/Feed/feedStreams.js index 7e83276b6..58ec123de 100644 --- a/src/screens/Feed/feedStreams.js +++ b/src/screens/Feed/feedStreams.js @@ -14,6 +14,7 @@ export const feedStreams = [ description: 'Shared with everyone', selectable: false, targetInterest: null, + }, // Disabled anime and manga feeds // { diff --git a/src/screens/Feed/index.js b/src/screens/Feed/index.js index e6a54a669..6bc127e08 100644 --- a/src/screens/Feed/index.js +++ b/src/screens/Feed/index.js @@ -1,5 +1,5 @@ import React from 'react'; -import { StatusBar, View, StyleSheet, Platform } from 'react-native'; +import { StatusBar, View, StyleSheet, Platform, Dimensions, Linking } from 'react-native'; import { connect } from 'react-redux'; import { KeyboardAwareFlatList } from 'react-native-keyboard-aware-scroll-view'; import { AdMobBanner } from 'react-native-admob'; @@ -22,6 +22,9 @@ import { statusBarHeight } from 'kitsu/constants/app'; import { registerDeepLinks, unregisterDeepLinks } from 'kitsu/utils/deeplink'; import { feedStreams } from './feedStreams'; import { isAoProOrKitsuPro } from 'kitsu/utils/user'; +import { StyledText } from 'kitsu/components/StyledText'; +import { Button } from 'kitsu/components/Button'; +import { dismissBanner } from 'kitsu/store/app/actions';; const styles = StyleSheet.create({ container: { @@ -33,6 +36,12 @@ const styles = StyleSheet.create({ flex: 1, backgroundColor: listBackPurple, }, + banner: { + backgroundColor: listBackPurple, + width: Dimensions.get('window').width, + padding: 10, + paddingBottom: 20, + } }); class Feed extends React.PureComponent { @@ -213,6 +222,17 @@ class Feed extends React.PureComponent { }); }; + openSurvey = () => { + Linking.openURL("https://kitsu.typeform.com/to/tqNQN4"); + this.closeSurvey(); + }; + + closeSurvey = () => { + if (this.props.dismissBanner) { + this.props.dismissBanner(); + } + }; + keyExtractor = (item, index) => { return `${item.id}-${item.updatedAt}`; } @@ -233,16 +253,16 @@ class Feed extends React.PureComponent { {/* Render a AdMobBanner every 3 posts */} {!isAoProOrKitsuPro(this.props.currentUser) && ((index + 1) % 3 === 0) && ( - - - console.log(error)} - /> - - )} + + + console.log(error)} + /> + + )} ); default: @@ -296,14 +316,24 @@ class Feed extends React.PureComponent { removeClippedSubviews={Platform.OS === 'android'} /> + + {!this.props.bannerDismissed && ( + + Give us your feedback + Most users complete this survey in a few minutes. +