Skip to content

Commit ce24d97

Browse files
author
June Domingo
committed
Merge branch 'release/2.0.2'
2 parents 4182df7 + 0455fd9 commit ce24d97

File tree

13 files changed

+239
-222
lines changed

13 files changed

+239
-222
lines changed

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,4 +42,5 @@ android/keystores/debug.keystore
4242

4343
# Dev
4444
.env
45-
android/app/my-release-key.keystore
45+
android/app/my-release-key.keystore
46+
yarn-error.log

android/app/build.gradle

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
apply plugin: "com.android.application"
2+
apply from: project(':react-native-config').projectDir.getPath() + "/dotenv.gradle"
23

34
import com.android.build.OutputFile
45

@@ -141,6 +142,7 @@ dependencies {
141142
compile project(':react-native-navigation')
142143
compile project(':react-native-vector-icons')
143144
compile project(':react-native-linear-gradient')
145+
compile project(':react-native-config')
144146
}
145147

146148
// Run this once to be able to run the application with BUCK

android/app/src/main/java/com/movieapp/MainApplication.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
import com.reactnativenavigation.NavigationApplication;
1313
import com.oblador.vectoricons.VectorIconsPackage;
1414
import com.BV.LinearGradient.LinearGradientPackage;
15+
import com.lugg.ReactNativeConfig.ReactNativeConfigPackage;
1516

1617
import java.util.Arrays;
1718
import java.util.List;
@@ -50,7 +51,8 @@ public List<ReactPackage> createAdditionalReactPackages() {
5051
// No need to add RnnPackage and MainReactPackage
5152
return Arrays.<ReactPackage>asList(
5253
new VectorIconsPackage(),
53-
new LinearGradientPackage()
54+
new LinearGradientPackage(),
55+
new ReactNativeConfigPackage()
5456
);
5557
}
5658
}

android/settings.gradle

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,3 +7,5 @@ include ':react-native-navigation'
77
project(':react-native-navigation').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-navigation/android/app')
88
include ':react-native-linear-gradient'
99
project(':react-native-linear-gradient').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-linear-gradient/android')
10+
include ':react-native-config'
11+
project(':react-native-config').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-config/android')

package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,10 @@
2222
"numeral": "^1.5.3",
2323
"react": "^15.3.2",
2424
"react-native": "^0.37.0",
25+
"react-native-config": "^0.1.2",
2526
"react-native-linear-gradient": "^1.5.13",
2627
"react-native-navigation": "next",
27-
"react-native-scrollable-tab-view": "git+https://github.com/skv-headless/react-native-scrollable-tab-view.git",
28+
"react-native-scrollable-tab-view": "https://github.com/skv-headless/react-native-scrollable-tab-view.git",
2829
"react-native-swiper": "^1.5.3",
2930
"react-native-vector-icons": "^3.0.0",
3031
"react-redux": "^4.4.5",

src/constants/api.js

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
1-
export const URL = 'https://api.themoviedb.org/3';
2-
export const IMG_URL = 'https://image.tmdb.org/t/p';
3-
export const KEY = 'e50ddc772dd96f9aeb74b5236200b9d1';
1+
import Config from 'react-native-config';
42

5-
export const YOUTUBE_URL = 'https://www.googleapis.com/youtube/v3/videos';
6-
export const YOUTUBE_KEY = 'AIzaSyB2fsaNSqkMmWlua7BISQ1Sc8Yh6XH-X5U';
3+
export const TMDB_URL = Config.TMDB_URL;
4+
export const TMDB_IMG_URL = Config.TMDB_IMG_URL;
5+
export const TMDB_API_KEY = Config.TMDB_API_KEY;
6+
7+
export const YOUTUBE_URL = Config.YOUTUBE_URL;
8+
export const YOUTUBE_API_KEY = Config.YOUTUBE_API_KEY;

src/modules/movies/Movie.js

Lines changed: 59 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ import ScrollableTabView from 'react-native-scrollable-tab-view';
1717
import Swiper from 'react-native-swiper';
1818

1919
import * as moviesActions from './movies.actions';
20-
import { IMG_URL, YOUTUBE_KEY, YOUTUBE_URL } from '../../constants/api';
20+
import { TMDB_IMG_URL, YOUTUBE_API_KEY, YOUTUBE_URL } from '../../constants/api';
2121
import Casts from './tabs/Casts';
2222
import Trailers from './tabs/Trailers';
2323
import DefaultTabBar from '../_global/scrollableTabView/DefaultTabBar';
@@ -111,11 +111,13 @@ class Movie extends Component {
111111
if (tabName === 'casts') this.setState({ castsTabHeight: height });
112112
if (tabName === 'trailers') this.setState({ trailersTabHeight: height });
113113
// if (tabName === 'similarTo') this.setState({ similarToTabHeight: height });
114+
console.log('tab', tabName);
115+
console.log('height', height);
114116
}
115117

116118
_retrieveYoutubeDetails() {
117119
this.props.details.videos.results.map(item => {
118-
const request = axios.get(`${YOUTUBE_URL}/?id=${item.key}&key=${YOUTUBE_KEY}&part=snippet`)
120+
const request = axios.get(`${YOUTUBE_URL}/?id=${item.key}&key=${YOUTUBE_API_KEY}&part=snippet`)
119121
.then(res => {
120122
const data = this.state.youtubeVideos;
121123
data.push(res.data.items[0]);
@@ -147,6 +149,7 @@ class Movie extends Component {
147149
}
148150

149151
render() {
152+
console.log('Hello');
150153
const iconStar = <Icon name="md-star" size={16} color="#F5B642" />;
151154
const { details /* similarMovies */ } = this.props;
152155
const info = details;
@@ -159,7 +162,7 @@ class Movie extends Component {
159162
// if (this.state.tab === 2) height = this.state.similarToTabHeight;
160163

161164
return (this.state.isLoading ? <View style={styles.progressBar}><ProgressBar /></View> :
162-
<ScrollView
165+
<ScrollView
163166
style={styles.container}
164167
onScroll={this._onScroll.bind(this)}
165168
onContentSizeChange={this._onContentSizeChange}
@@ -171,63 +174,63 @@ class Movie extends Component {
171174
progressBackgroundColor="white"
172175
/>
173176
}>
174-
<View style={{ height }}>
175-
<Swiper
176-
style={styles.swiper}
177-
autoplay
178-
autoplayTimeout={4}
179-
showsPagination={false}
180-
height={248}
181-
loop
182-
index={5}>
183-
{
184-
info.images.backdrops.map((item, index) => (
185-
<View key={index}>
186-
<Image source={{ uri: `${IMG_URL}/w780/${(item.file_path)}` }} style={styles.imageBackdrop} />
187-
<LinearGradient colors={['rgba(0, 0, 0, 0.2)', 'rgba(0,0,0, 0.2)', 'rgba(0,0,0, 0.7)']} style={styles.linearGradient} />
188-
</View>
189-
))
190-
}
191-
</Swiper>
192-
<View style={styles.cardContainer}>
193-
<Image source={{ uri: `${IMG_URL}/w185/${info.poster_path}` }} style={styles.cardImage} />
194-
<View style={styles.cardDetails}>
195-
<Text style={styles.cardTitle}>{info.original_title}</Text>
196-
<Text style={styles.cardTagline}>{info.tagline}</Text>
197-
<View style={styles.cardGenre}>
198-
{
199-
info.genres.map(item => (
200-
<Text key={item.id} style={styles.cardGenreItem}>{item.name}</Text>
201-
))
202-
}
177+
<View style={{ height }}>
178+
<Swiper
179+
style={styles.swiper}
180+
autoplay
181+
autoplayTimeout={4}
182+
showsPagination={false}
183+
height={248}
184+
loop
185+
index={5}>
186+
{
187+
info.images.backdrops.map((item, index) => (
188+
<View key={index}>
189+
<Image source={{ uri: `${TMDB_IMG_URL}/w780/${(item.file_path)}` }} style={styles.imageBackdrop} />
190+
<LinearGradient colors={['rgba(0, 0, 0, 0.2)', 'rgba(0,0,0, 0.2)', 'rgba(0,0,0, 0.7)']} style={styles.linearGradient} />
203191
</View>
204-
<View style={styles.cardNumbers}>
205-
<View style={styles.cardStar}>
206-
{iconStar}
207-
<Text style={styles.cardStarRatings}>8.9</Text>
208-
</View>
209-
<Text style={styles.cardRunningHours} />
192+
))
193+
}
194+
</Swiper>
195+
<View style={styles.cardContainer}>
196+
<Image source={{ uri: `${TMDB_IMG_URL}/w185/${info.poster_path}` }} style={styles.cardImage} />
197+
<View style={styles.cardDetails}>
198+
<Text style={styles.cardTitle}>{info.original_title}</Text>
199+
<Text style={styles.cardTagline}>{info.tagline}</Text>
200+
<View style={styles.cardGenre}>
201+
{
202+
info.genres.map(item => (
203+
<Text key={item.id} style={styles.cardGenreItem}>{item.name}</Text>
204+
))
205+
}
206+
</View>
207+
<View style={styles.cardNumbers}>
208+
<View style={styles.cardStar}>
209+
{iconStar}
210+
<Text style={styles.cardStarRatings}>8.9</Text>
210211
</View>
212+
<Text style={styles.cardRunningHours} />
211213
</View>
212214
</View>
213-
<View style={styles.contentContainer}>
214-
<ScrollableTabView
215-
onChangeTab={this._onChangeTab}
216-
renderTabBar={() => (
217-
<DefaultTabBar
218-
textStyle={styles.textStyle}
219-
underlineStyle={styles.underlineStyle}
220-
style={styles.tabBar}
221-
/>
222-
)}>
223-
<Info tabLabel="INFO" info={info} />
224-
<Casts tabLabel="CASTS" info={info} getTabHeight={this._getTabHeight} />
225-
<Trailers tabLabel="TRAILERS" youtubeVideos={this.state.youtubeVideos} openYoutube={this._openYoutube} getTabHeight={this._getTabHeight} />
226-
{/* <Similar tabLabel="SIMILAR TO" similarMovies={fiveSimilarMovies} getTabHeight={this._getTabHeight} viewMovie={this._viewMovie} /> */}
227-
</ScrollableTabView>
228-
</View>
229215
</View>
230-
</ScrollView>
216+
<View style={styles.contentContainer}>
217+
<ScrollableTabView
218+
onChangeTab={this._onChangeTab}
219+
renderTabBar={() => (
220+
<DefaultTabBar
221+
textStyle={styles.textStyle}
222+
underlineStyle={styles.underlineStyle}
223+
style={styles.tabBar}
224+
/>
225+
)}>
226+
<Info tabLabel="INFO" info={info} />
227+
<Casts tabLabel="CASTS" info={info} getTabHeight={this._getTabHeight} />
228+
<Trailers tabLabel="TRAILERS" youtubeVideos={this.state.youtubeVideos} openYoutube={this._openYoutube} getTabHeight={this._getTabHeight} />
229+
{/* <Similar tabLabel="SIMILAR TO" similarMovies={fiveSimilarMovies} getTabHeight={this._getTabHeight} viewMovie={this._viewMovie} /> */}
230+
</ScrollableTabView>
231+
</View>
232+
</View>
233+
</ScrollView>
231234
);
232235
}
233236
}
@@ -259,4 +262,4 @@ function mapDispatchToProps(dispatch) {
259262
};
260263
}
261264

262-
export default connect(mapStateToProps, mapDispatchToProps)(Movie);
265+
export default connect(mapStateToProps, mapDispatchToProps)(Movie);

src/modules/movies/components/CardMovie.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import {
99
import Icon from 'react-native-vector-icons/Ionicons';
1010
import { connect } from 'react-redux';
1111

12-
import { IMG_URL } from '../../../constants/api';
12+
import { TMDB_IMG_URL } from '../../../constants/api';
1313
import styles from './styles/CardMovie';
1414

1515
const iconStar = (<Icon name="md-star" size={16} color="#F5B642" />);
@@ -32,7 +32,7 @@ class CardMovie extends Component {
3232
<View style={styles.cardContainer}>
3333
<TouchableOpacity activeOpacity={0.9} onPress={viewMovie.bind(this, info.id)}>
3434
<View style={styles.card}>
35-
<Image source={{ uri: `${IMG_URL}/w185/${info.poster_path}` }} style={styles.cardImage} />
35+
<Image source={{ uri: `${TMDB_IMG_URL}/w185/${info.poster_path}` }} style={styles.cardImage} />
3636
<View style={styles.cardDetails}>
3737
<Text
3838
style={styles.cardTitle}
@@ -71,4 +71,4 @@ function mapStateToProps(state, ownProps) {
7171
};
7272
}
7373

74-
export default connect(mapStateToProps, null)(CardMovie);
74+
export default connect(mapStateToProps, null)(CardMovie);

src/modules/movies/components/CardSwipe.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,17 +8,17 @@ import {
88
import Icon from 'react-native-vector-icons/Ionicons';
99
import LinearGradient from 'react-native-linear-gradient';
1010

11-
import { IMG_URL } from '../../../constants/api';
11+
import { TMDB_IMG_URL } from '../../../constants/api';
1212
import styles from './styles/CardSwipe';
1313

1414
const iconStar = (<Icon name="md-star" size={16} color="#F5B642" />);
1515

1616
const CardSwipe = ({ info, viewMovie }) => (
1717
<View>
18-
<Image source={{ uri: `${IMG_URL}/w780/${(info.backdrop_path || info.poster_path)}` }} style={styles.imageBackdrop} />
18+
<Image source={{ uri: `${TMDB_IMG_URL}/w780/${(info.backdrop_path || info.poster_path)}` }} style={styles.imageBackdrop} />
1919
<LinearGradient colors={['rgba(0, 0, 0, 0.5)', 'rgba(0,0,0, 0.7)', 'rgba(0,0,0, 0.8)']} style={styles.linearGradient} />
2020
<View style={styles.cardContainer}>
21-
<Image source={{ uri: `${IMG_URL}/w185/${info.poster_path}` }} style={styles.cardImage} />
21+
<Image source={{ uri: `${TMDB_IMG_URL}/w185/${info.poster_path}` }} style={styles.cardImage} />
2222
<View style={styles.cardDetails}>
2323
<Text style={styles.cardTitle} numberOfLines={2}>
2424
{info.original_title}

src/modules/movies/components/CardThumb.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,13 @@ import {
66
View
77
} from 'react-native';
88

9-
import { IMG_URL } from '../../../constants/api';
9+
import { TMDB_IMG_URL } from '../../../constants/api';
1010
import styles from './styles/CardThumb';
1111

1212
const CardThumb = ({ info, viewMovie }) => (
1313
<TouchableOpacity activeOpacity={0.8} onPress={viewMovie.bind(this, info.id)}>
1414
<View style={styles.cardThumbContainer}>
15-
<Image source={{ uri: `${IMG_URL}/w185/${info.poster_path}` }} style={styles.cardThumbImage} />
15+
<Image source={{ uri: `${TMDB_IMG_URL}/w185/${info.poster_path}` }} style={styles.cardThumbImage} />
1616
<View style={styles.cardThumbTitleContainer}>
1717
<Text style={styles.cardThumbTitle} numberOfLines={2}>
1818
{info.original_title}
@@ -27,4 +27,4 @@ CardThumb.propTypes = {
2727
viewMovie: PropTypes.func.isRequired
2828
};
2929

30-
export default CardThumb;
30+
export default CardThumb;

0 commit comments

Comments
 (0)