import * as ycore from 'ycore' import * as Icons from '@ant-design/icons' import { RenderFeed } from 'components/MainFeed' export const FeedHandler = { refresh: () => { RenderFeed.RefreshFeed() }, killByID: (post_id) => { RenderFeed.killByID(post_id) }, addToRend: (payload) => { RenderFeed.addToRend(payload) } } export const IsThisPost = { owner: (post_uid) => { const a = ycore.handlerYIDT.__id() if (post_uid == a) { return true } return false }, boosted: () => { }, pinned: () => { }, flagged: () => { } } export const Post_Comments = { delete: (callback, payload) => { if (!payload) {return false} const { comment_id } = payload let formdata = new FormData(); formdata.append("type", "delete"); formdata.append("comment_id", comment_id); ycore.API_Call((err,res)=> { return callback(err,res) }, ycore.endpoints.comments_actions, formdata, ) }, new: (callback, payload) => { if (!payload) { return false } const { post_id, raw_text } = payload let formdata = new FormData(); formdata.append("action", "comment"); formdata.append("post_id", post_id); formdata.append("text", raw_text) ycore.API_Call((err,res)=> { return callback(err,res) }, ycore.endpoints.action_post, formdata, ) } } export const comty_user = { setData: () => { }, follow: (callback, payload) => { if (!payload) {return false} const { user_id } = payload let formdata = new FormData(); formdata.append("user_id", user_id); ycore.API_Call((err,res)=> { return callback(err,res) }, ycore.endpoints.follow_user, formdata, ) }, block:(callback, payload) => { // TO DO return false }, find: (callback, payload) => { if (!payload) {return false} const { key } = payload let formdata = new FormData(); formdata.append("search_key", key); const callOptions = { timeout: 10000 } ycore.API_Call((err,res)=> { return callback(err,res) }, ycore.endpoints.find_user, formdata, callOptions ) }, __tags: (callback, payload) => { if (!payload) {return false} const { id } = payload let formdata = new FormData(); formdata.append("user_id", id ) ycore.API_Call((err,res)=> { return callback(err,res) }, ycore.endpoints.get_user_tags, formdata ) } } export const comty_post = { getFeed: (callback, payload) => { if (!payload) {return false} const { fkey, type, id } = payload let formdata = new FormData(); formdata.append("after_post_id", (fkey || 0)) formdata.append("limit", ycore.AppSettings.limit_post_catch || 20) switch (type) { case 'feed': formdata.append("type", "get_news_feed"); break; case 'user': formdata.append("type", "get_user_posts"); formdata.append("id", id) break; default: formdata.append("type", "get_news_feed"); break; } ycore.API_Call((err,res)=> { return callback(err,res) }, ycore.endpoints.get_posts, formdata, ) }, get: (callback, payload) => { if (!payload) {return false} const { post_id, fetch } = payload let formdata = new FormData(); formdata.append("post_id", post_id) formdata.append("fetch", (fetch || "post_data,post_comments,post_wondered_users,post_liked_users")) ycore.API_Call((err,res)=> { return callback(err,res) }, ycore.endpoints.get_post_data, formdata ) }, new: (callback, payload) => { if (!payload) {return false} const { privacy, text, file } = payload let formdata = new FormData(); formdata.append("type", "new_post") formdata.append("postPrivacy", privacy) formdata.append("postText", text); file? formdata.append("postPhoto", file) : null const callOptions = { includeUserID: true } ycore.API_Call((err,res)=> { return callback(err,res) }, ycore.endpoints.new_post, formdata, callOptions ) }, delete: (callback, payload) => { if (!payload) {return false} const { post_id } = payload let formdata = new FormData(); formdata.append("action", "delete"); formdata.append("post_id", post_id) ycore.API_Call((err,res)=> { return callback(err,res) }, ycore.endpoints.action_post, formdata, ) }, save: (callback, payload) => { }, edit: (callback, payload) =>{ }, __pin: (callback, payload) => { }, __boost: (callback, payload) => { } } export const comty_search = { keywords: (callback, payload) =>{ if (!payload) {return false} const { key } = payload let formdata = new FormData(); formdata.append("search_key", key); const callOptions = { timeout: 10000 } ycore.API_Call((err,res)=> { return callback(err,res) }, ycore.endpoints.search_endpoint, formdata, callOptions ) } } export const comty_get = { session_data: () => { }, general_data: () => { if (!payload) {return false} const { id } = payload let formdata = new FormData(); formdata.append("user_id", id); ycore.API_Call((err,res)=> { return callback(err,res) }, ycore.endpoints.get_general_data, formdata ) } } export const get_app_session = { get_id: (callback) => { let formdata = new FormData(); formdata.append("server_key", ycore.yConfig.server_key); formdata.append("type", "get"); const requestOptions = { method: 'POST', body: formdata, redirect: 'follow' }; const uriObj = `${ycore.endpoints.get_sessions}${ycore.handlerYIDT.__token()}` fetch(uriObj, requestOptions) .then(response => response.text()) .then(result => { const pre = JSON.stringify(result) const pre2 = JSON.parse(pre) const pre3 = JSON.stringify(JSON.parse(pre2)["data"]) const obj = JSON.parse(pre3)["session_id"] return callback(null, obj) }) .catch(error => ycore.yconsole.log('error', error)); }, raw: (callback) => { const formdata = new FormData(); formdata.append("server_key", ycore.yConfig.server_key); formdata.append("type", "get"); const requestOptions = { method: 'POST', body: formdata, redirect: 'follow' }; const uriObj = `${ycore.endpoints.get_sessions}${ycore.handlerYIDT.__token()}` fetch(uriObj, requestOptions) .then(response => response.text()) .then(result => { const pre = JSON.stringify(result) const parsed = JSON.parse(pre) const obj = JSON.parse(parsed)["data"] ycore.yconsole.log(result, obj) return callback(null, obj) }) .catch(error => ycore.yconsole.log('error', error)); } } export const GetPostPrivacy = { bool: (e) => { switch (e) { case 'any': return '0' case 'only_followers': return '1' case 'only_follow': return '2' case 'private': return '3' default: return '0' } }, decorator: (e) => { switch (e) { case 'any': return Share with everyone case 'only_follow': return Share with people I follow case 'only_followers': return Share with people follow me case 'private': return Dont share, only me default: return Unknown } }, }