mirror of
https://github.com/mastodon/mastodon
synced 2024-12-11 21:28:23 +09:00
65 lines
1.4 KiB
React
65 lines
1.4 KiB
React
|
import api from '../api';
|
||
|
|
||
|
export const REPORT_INIT = 'REPORT_INIT';
|
||
|
export const REPORT_CANCEL = 'REPORT_CANCEL';
|
||
|
|
||
|
export const REPORT_SUBMIT_REQUEST = 'REPORT_SUBMIT_REQUEST';
|
||
|
export const REPORT_SUBMIT_SUCCESS = 'REPORT_SUBMIT_SUCCESS';
|
||
|
export const REPORT_SUBMIT_FAIL = 'REPORT_SUBMIT_FAIL';
|
||
|
|
||
|
export const REPORT_STATUS_TOGGLE = 'REPORT_STATUS_TOGGLE';
|
||
|
|
||
|
export function initReport(account, status) {
|
||
|
return {
|
||
|
type: REPORT_INIT,
|
||
|
account,
|
||
|
status
|
||
|
};
|
||
|
};
|
||
|
|
||
|
export function cancelReport() {
|
||
|
return {
|
||
|
type: REPORT_CANCEL
|
||
|
};
|
||
|
};
|
||
|
|
||
|
export function toggleStatusReport(statusId, checked) {
|
||
|
return {
|
||
|
type: REPORT_STATUS_TOGGLE,
|
||
|
statusId,
|
||
|
checked,
|
||
|
};
|
||
|
};
|
||
|
|
||
|
export function submitReport() {
|
||
|
return (dispatch, getState) => {
|
||
|
dispatch(submitReportRequest());
|
||
|
|
||
|
api(getState).post('/api/v1/reports', {
|
||
|
account_id: getState().getIn(['reports', 'new', 'account_id']),
|
||
|
status_ids: getState().getIn(['reports', 'new', 'status_ids']),
|
||
|
comment: getState().getIn(['reports', 'new', 'comment'])
|
||
|
}).then(response => dispatch(submitReportSuccess(response.data))).catch(error => dispatch(submitReportFail(error)));
|
||
|
};
|
||
|
};
|
||
|
|
||
|
export function submitReportRequest() {
|
||
|
return {
|
||
|
type: REPORT_SUBMIT_REQUEST
|
||
|
};
|
||
|
};
|
||
|
|
||
|
export function submitReportSuccess(report) {
|
||
|
return {
|
||
|
type: REPORT_SUBMIT_SUCCESS,
|
||
|
report
|
||
|
};
|
||
|
};
|
||
|
|
||
|
export function submitReportFail(error) {
|
||
|
return {
|
||
|
type: REPORT_SUBMIT_FAIL,
|
||
|
error
|
||
|
};
|
||
|
};
|