114 lines
1.8 KiB
JavaScript
114 lines
1.8 KiB
JavaScript
import { configureAxios, request } from '../requests'
|
|
|
|
// ======================
|
|
// Errors
|
|
// ======================
|
|
|
|
export function addError(message) {
|
|
return {
|
|
type: 'ADD_ERROR',
|
|
payload: {
|
|
message,
|
|
}
|
|
}
|
|
}
|
|
|
|
export function dismissError() {
|
|
return {
|
|
type: 'DISMISS_ERROR',
|
|
}
|
|
}
|
|
|
|
// ======================
|
|
// Users
|
|
// ======================
|
|
|
|
export function userLogout() {
|
|
return {
|
|
type: 'USER_LOGOUT',
|
|
}
|
|
}
|
|
|
|
export function isUserLoggedIn() {
|
|
return {
|
|
type: 'IS_USER_LOGGED_IN',
|
|
}
|
|
}
|
|
|
|
export function loginUser(username, password) {
|
|
return request(
|
|
'USER_LOGIN',
|
|
configureAxios().post(
|
|
'/users/login',
|
|
{
|
|
username: username,
|
|
password: password,
|
|
},
|
|
)
|
|
)
|
|
}
|
|
|
|
export function updateUser(config) {
|
|
return request(
|
|
'USER_UPDATE',
|
|
configureAxios().post('/users/edit', config)
|
|
)
|
|
}
|
|
|
|
export function userSignUp(config) {
|
|
return request(
|
|
'USER_SIGNUP',
|
|
configureAxios().post('/users/signup', config)
|
|
)
|
|
}
|
|
|
|
export function getUserInfos() {
|
|
return request(
|
|
'GET_USER',
|
|
configureAxios().get('/users/details')
|
|
)
|
|
}
|
|
|
|
// ======================
|
|
// Movies
|
|
// ======================
|
|
|
|
export function selectMovie(imdbId) {
|
|
return {
|
|
type: 'SELECT_MOVIE',
|
|
imdbId
|
|
}
|
|
}
|
|
|
|
export function getMovieDetails(imdbId) {
|
|
return request(
|
|
'MOVIE_GET_DETAILS',
|
|
configureAxios().get(`/movies/${imdbId}/get_details`)
|
|
)
|
|
}
|
|
|
|
export function fetchMovies(url) {
|
|
return request(
|
|
'MOVIE_LIST_FETCH',
|
|
configureAxios().get(url)
|
|
)
|
|
}
|
|
|
|
// ======================
|
|
// Shows
|
|
// ======================
|
|
|
|
export function fetchShows(url) {
|
|
return request(
|
|
'SHOW_LIST_FETCH',
|
|
configureAxios().get(url)
|
|
)
|
|
}
|
|
|
|
export function selectShow(imdbId) {
|
|
return {
|
|
type: 'SELECT_SHOW',
|
|
imdbId
|
|
}
|
|
}
|