1
0
mirror of https://github.com/mgerb/classic-wow-forums synced 2026-01-10 09:02:50 +00:00
Files
classic-wow-forums/client/app/services/thread.service.ts

57 lines
1.2 KiB
TypeScript

import axios from '../axios/axios';
import { ThreadModel } from '../model';
const getCategoryThreads = async (category_id: number): Promise<ThreadModel[]> => {
try {
const res = await axios.get(`/api/thread?category_id=${category_id}`);
return res.data.data;
} catch (e) {
console.error(e);
}
return [];
};
const getThread = async (thread_id: string | number): Promise<ThreadModel> => {
try {
const res = await axios.get(`/api/thread/${thread_id}`);
return res.data.data;
} catch (e) {
console.error(e);
}
return [] as any;
};
export interface ModUpdate {
id: number;
sticky?: boolean;
locked?: boolean;
hidden?: boolean;
}
const modUpdateThread = async (params: ModUpdate): Promise<any> => {
try {
const res = await axios.put('/api/thread/mod', params);
return res.data.data;
} catch (e) {
console.log(e);
}
};
const modUpdateReply = async (params: { id: number, hidden?: boolean }): Promise<any> => {
try {
const res = await axios.put('/api/reply/mod', params);
return res.data.data;
} catch (e) {
console.log(e);
}
};
export const ThreadService = {
getCategoryThreads,
getThread,
modUpdateReply,
modUpdateThread,
};