Favouriting works, reblogging is a little broken because of <Status>

This commit is contained in:
Eugen Rochko 2016-09-01 13:21:48 +02:00
parent c2a4d70265
commit 595c8dda60
10 changed files with 145 additions and 19 deletions

View file

@ -0,0 +1,81 @@
import api from '../api'
export const REBLOG = 'REBLOG';
export const REBLOG_REQUEST = 'REBLOG_REQUEST';
export const REBLOG_SUCCESS = 'REBLOG_SUCCESS';
export const REBLOG_FAIL = 'REBLOG_FAIL';
export const FAVOURITE = 'FAVOURITE';
export const FAVOURITE_REQUEST = 'FAVOURITE_REQUEST';
export const FAVOURITE_SUCCESS = 'FAVOURITE_SUCCESS';
export const FAVOURITE_FAIL = 'FAVOURITE_FAIL';
export function reblog(status) {
return function (dispatch, getState) {
dispatch(reblogRequest(status));
api(getState).post(`/api/statuses/${status.get('id')}/reblog`).then(function (response) {
dispatch(reblogSuccess(status, response.data));
}).catch(function (error) {
dispatch(reblogFail(status, error));
});
};
}
export function reblogRequest(status) {
return {
type: REBLOG_REQUEST,
status: status
};
}
export function reblogSuccess(status, response) {
return {
type: REBLOG_SUCCESS,
status: status,
response: response
};
}
export function reblogFail(status, error) {
return {
type: REBLOG_FAIL,
status: status,
error: error
};
}
export function favourite(status) {
return function (dispatch, getState) {
dispatch(favouriteRequest(status));
api(getState).post(`/api/statuses/${status.get('id')}/favourite`).then(function (response) {
dispatch(favouriteSuccess(status, response.data));
}).catch(function (error) {
dispatch(favouriteFail(status, error));
});
};
}
export function favouriteRequest(status) {
return {
type: FAVOURITE_REQUEST,
status: status
};
}
export function favouriteSuccess(status, response) {
return {
type: FAVOURITE_SUCCESS,
status: status,
response: response
};
}
export function favouriteFail(status, error) {
return {
type: FAVOURITE_FAIL,
status: status,
error: error
};
}