mediahub-fe/service/landing/landing.ts

179 lines
6.7 KiB
TypeScript

import { httpGet, httpPost } from "../http-config/http-base-service";
import { httpDeleteInterceptor, httpGetInterceptor, httpPostInterceptor } from "../http-config/http-interceptor-service";
export async function getCsrfToken() {
const pathUrl = "csrf";
const headers = {
"content-type": "application/json",
};
return httpGet(pathUrl, headers);
// const url = 'https://netidhub.com/api/csrf';
// try {
// const response = await fetch(url, {
// method: 'GET',
// credentials: 'include'
// });
// if (!response.ok) {
// throw new Error(`HTTP error! status: ${response.status}`);
// }
// const data = await response.json();
// console.log("csrf : ", data);
// return data;
// } catch (error) {
// console.error('Fetch error: ', error);
// }
}
export async function getHeroData() {
return await httpGetInterceptor(`media/public/list?enablePage=1&sort=desc&sortBy=createdAt&size=5&page=0&typeId=1&title=&categoryId=&fileFormats=&tags=&group=&startDate=&endDate=&month=&year=`);
}
export async function getPublicCategoryData(group: any = "", type: string = "", isInt: Boolean = false) {
return await httpGetInterceptor(`media/categories/list/publish?enablePage=0&group=${group}&type=${type}&isInt=${isInt}`);
}
export async function getCategoryData() {
return await httpGetInterceptor(`media/categories/list/publish?enablePage=1&sort=desc&sortBy=updatedAt&size=12&type=`);
}
export async function getListContent(props: any) {
return await httpGetInterceptor(
`media/public/list?enablePage=1&sort=desc&sortBy=${props.sortBy}&size=${props.size}&isInt=${props.isInt}&typeId=${props.contentTypeId}&title=${props.title}&group=${props.group}&categoryId=&fileFormats=&tags=&startDate=&endDate=&month=&year=`
);
}
export async function getPrivacy() {
return await httpGetInterceptor(`general/privacy-policy/1`);
}
export async function getIndeksData() {
return await httpGetInterceptor(`blog/public/pagination?enablePage=1&page=0&size=20`);
}
export async function getDetail(slug: string) {
return await httpGetInterceptor(`media/public?slug=${slug}&state=mabes`);
}
export async function getDetailIndeks() {
return await httpGetInterceptor(`blog/public/pagination?enablePage=1&page=0&size=6`);
}
export async function getFeedback() {
return await httpGetInterceptor(`master/feedback/list`);
}
export async function postUserFeedback() {
return await httpGetInterceptor(`feedback/user`);
}
export async function listCategory(type = "") {
return await httpGetInterceptor(`media/categories/list/enable?enablePage=1&sort=desc&sortBy=updatedAt&size=12&type=${type}`);
}
export async function publicDetailBlog(slug: any) {
return await httpGetInterceptor(`blog/public/read/${slug}`);
}
export async function listData(type: string, search: string, category: string, size = 10, page = 0, sortBy = "createdAt", format = "", tag = "", group = "", startDate = "", endDate = "", month = "", year = "", isInt = false) {
return await httpGetInterceptor(
`media/public/list?enablePage=1&sort=desc&sortBy=${sortBy}&size=${size}&page=${page}&typeId=${type}&title=${search}&categoryId=${category}&fileFormats=${format}&tags=${tag}&group=${group}&startDate=${startDate}&endDate=${endDate}&month=${month}&year=${year}&isInt=${isInt}`
);
}
export async function listDataRegional(type: string, search: string, category: string, format = "", tag = "", startDate = "", endDate = "", month = "", year = "", size = 10, page = 0, sortBy = "createdAt") {
return await httpGetInterceptor(
`media/public/regional-list?enablePage=1&size=${size}&page=${page}&sort=desc&sortBy=${sortBy}&typeId=${type}&title=${search}&categoryId=${category}&fileFormats=${format}&tags=${tag}&startDate=${startDate}&endDate=${endDate}&month=${month}&year=${year}`
);
}
export async function getUserLevelListByParent(id: any) {
return await httpGetInterceptor(`users/user-levels/list?userLevelId=${id}`);
}
export async function getInfoProfile() {
return await httpGetInterceptor(`users/info`);
}
export async function getListPorvinces() {
return await httpGetInterceptor(`public/users/provinces`);
}
export async function getUsersTeams(id: any) {
return await httpGetInterceptor(`users?instituteId=${id}`);
}
export async function mediaWishlist(type: any, instituteId: any, search: any, category: any, size: string, page: number, sortBy: undefined, format: string) {
return await httpGetInterceptor(`/media/wishlist/list?enablePage=1&size=${size}&page=${page}&typeId=${type}&instituteId=${instituteId}`);
}
export async function checkWishlistStatus(mediaId: any) {
return await httpGetInterceptor(`/media/wishlist/status?mediaId=${mediaId}`);
}
export async function listRole() {
const url = "public/users/roles";
return httpGetInterceptor(url);
}
export async function deleteWishlist(id: any) {
return await httpDeleteInterceptor(`media/wishlist?id=${id}`);
}
export async function getContentRewritePagination(page = 0, size = 10) {
return await httpGetInterceptor(`media/rewrite/pagination?size=${size}&page=${page}`);
}
export async function getContentRewrite(id: any) {
return await httpGetInterceptor(`media/rewrite?id=${id}`);
}
export async function listDataAll(type: any, search: any, category: any, format = "", tag = "", group = "", startDate = "", endDate = "", month = "", year = "") {
return await httpGetInterceptor(
`media/public/list?enablePage=1&size=20&sort=desc&typeId=${type}&title=${search}&categoryId=${category}&fileFormats=${format}&tags=${tag}&group=${group}&startDate=${startDate}&endDate=${endDate}&month=${month}&year=${year}`
);
}
export async function saveWishlist(data: { mediaUploadId: string }) {
const url = "/media/wishlist";
return httpPostInterceptor(url, data);
}
export async function getPublicSuggestionList(id: any) {
const url = `media/public/suggestion?mediaId=${id}`;
return httpGetInterceptor(url);
}
export async function getUserNotifications(page = 0, typeId: any) {
const url = `notification/public/list?enablePage=1&page=${page}&typeId=${typeId}`;
return httpGetInterceptor(url);
}
export async function forgotPassword(username: any) {
const url = `forgot-password?username=${username}`;
const header = {
"content-Type": "application/json",
};
return httpPost(url, header);
}
export async function saveUserReports(data: any) {
const url = "public/users/reports";
const header = {
"content-Type": "application/json",
};
return httpPost(url, header);
}
export async function listCarousel() {
const url = "/media/public/banner";
return httpGetInterceptor(url)
}
export async function createPublicSuggestion(data: any) {
const url = 'media/public/suggestion';
const header = {
"content-Type": "application/json",
};
return httpGet( url, data );
}