rbs@u2
Home
Php_u2
Html #1
Html #2
Html #3
Html #4
JS #1
JS #2
JS #3
JS #4
JsApi #1
JsApi #2
JsApi #3
JsApi #4
JsApi_u4
all-files
ori-v2
master
user
Logout
dsg
tool css
bootstrtap 5.3
auth
profile
waste
waste_group
venue
vehicle
event
comment
notification
discover
post
scanner
to_delete
const fetch = require('node-fetch'); async function discover(v) { let url=`${v.api}/event/favourite-event/${v.param}`; console.log(url) const res = await fetch(url,{ method: 'POST', body: JSON.stringify(v.body), headers: { 'Content-Type': 'application/json', } }); return res } async function discover(v) { let url=`${v.api}/event/get-event/${v.param}`; console.log(url) const res = await fetch(url,{ method: 'POST', body: JSON.stringify(v.body), headers: { 'Content-Type': 'application/json', } }); return res } async function discover(v) { let url=`${v.api}/event/get-events-trending/${v.param}`; console.log(url) const res = await fetch(url,{ method: 'POST', body: JSON.stringify(v.body), headers: { 'Content-Type': 'application/json', } }); return res } async function discover(v) { let url=`${v.api}/event/get-event-categories/${v.param}`; console.log(url) const res = await fetch(url,{ method: 'POST', body: JSON.stringify(v.body), headers: { 'Content-Type': 'application/json', } }); return res } const event = { discover, discover, discover, discover, } module.exports = event
Save
event_id"; //echo $sql8."
"; $res=mysqli_query($db,$sql); if(mysqli_num_rows($res)>0) { //$dt['success']=true; $r1=mysqli_fetch_assoc($res); $dt=$r1; $dt['dates'][0]['start_date']=date("Y-m-d",strtotime($r1['date_start'])); $dt['dates'][0]['start_time']=date("H:i",strtotime($r1['date_start'])); $dt['dates'][0]['end_date']=date("Y-m-d",strtotime($r1['date_end'])); $dt['dates'][0]['end_time']=date("H:i",strtotime($r1['date_end'])); $dt['dates'][0]['exclude_time']=$ar['ft'][$r1['exclude_time']]; $sql2="SELECT id,alt,type,`path` as url,width,height,mime_type from `images` where modul='events_cover_photo' and item_id=$js->event_id limit 1"; //echo $sql8."
"; $res2=mysqli_query($db,$sql2); if(mysqli_num_rows($res2)>0) { $r2=mysqli_fetch_assoc($res2); $dt['cover_photo']=$r2; } $sql3="SELECT id,alt,type,`path` as url,width,height,mime_type,`date`,icon from `images` where modul='events_gallery' and item_id=$js->event_id order by seq"; //echo $sql8."
"; $res3=mysqli_query($db,$sql3); if(mysqli_num_rows($res3)>0) { while($r3=mysqli_fetch_assoc($res3)) { $dt['gallery'][]=$r3; } } $dt['likes']=""; $dt['comments']=""; $dt['has_tickets']=false; $dt['is_liked']=false; } else { $dt['message']="Event with ID ".$js->event_id." not found"; } return $dt; } function get_event_categories(){ global $ar,$db; $dt=array(); $sql="SELECT id,slug,name from `event_categories` "; //echo $sql8."
"; $res=mysqli_query($db,$sql); while($r1 = mysqli_fetch_assoc($res)) { $dt[]=$r1; } return $dt; } function get_events_trending($js){ global $ar,$db; $dt=array(); $user_id=$js->user_id; $page=$js->page; $limit=$js->per_page; $sql="SELECT id,title,start_date,end_date,location,thumbnail from `events_trending` "; //echo $sql8."
"; $res=mysqli_query($db,$sql); $total_items=mysqli_num_rows($res); $total_pages=ceil($total_items/$limit); $start=($page-1)*$limit; $sql2 = $sql." order by start_date desc limit ".$start.",".$limit; $res2=mysqli_query($db,$sql2); $a=0; while($r2 = mysqli_fetch_assoc($res2)) { $sql3="SELECT * from user_event_liked where user_id=".$user_id." and event_id=".$r2['id']; $res3=mysqli_query($db,$sql3); $dt['data'][$a]=$r2; if(mysqli_num_rows($res3)>0) { $dt['data'][$a]['is_liked']=true; } else { $dt['data'][$a]['is_liked']=false; } $a++; } $dt['total_pages']=$total_pages; $dt['current_page']=$page; $dt['limit']=$limit; $dt['version']='1.0.3'; return $dt; } ?>
user_id; $sql4 = "select id from `events` order by id desc limit 1"; $res4 = mysqli_query($db, $sql4); if (mysqli_num_rows($res4) == 1) { $rw4 = mysqli_fetch_assoc($res4); $id2 = $rw4['id'] + 1; } else { $id2 = 1; } $idt = array( 'id' => $id2, 'category' => $js->category, 'user_id' => $js->user_id, 'title' => $js->title, 'location' => $js->location, 'description' => $js->description, 'start_at' => $js->start_at, 'end_at' => $js->end_at, 'create_at' => time(), ); Insert($db, "events", $idt, 0); if(isset($js->cover_photo) && $js->cover_photo!=''){ $data = $js->cover_photo; $image_info = getimagesize($data); $extension = (isset($image_info["mime"]) ? explode('/', $image_info["mime"] )[1]: ""); //$dt['type']=$extension; $tmp_file=$ar['img_path']."users/tmp/".$user_id.".".$extension; $sub_folder=$ar['img_path']."/users/".$user_id; if(!is_dir($sub_folder)){ mkdir($sub_folder, 0755); } $sub_folder_p=$ar['img_path']."/users/".$user_id."/ev"; if(!is_dir($sub_folder_p)){ mkdir($sub_folder_p, 0755); } $new_file=genRandom(10).".".$extension; //$dt['newfile']=$new_file; $data = str_replace('data:image/'.$extension.';base64,', '', $data); $data = str_replace(' ','+',$data); $bin = base64_decode($data); if ($bin === false) { $dt['info']="convert invalid"; } //tmp file file_put_contents($tmp_file, $bin); ini_set('display_errors', '0'); resize_crop_image(1200,760,$tmp_file,$sub_folder_p."/".$new_file); unlink($tmp_file); $sql="SELECT `seq` from `images` where `modul`='event' and `item_id`=".$id2." order by `seq` desc limit 1"; $res=mysqli_query($db,$sql); if(mysqli_num_rows($res)==1) { $r = mysqli_fetch_assoc($res); $seq2=$r['seq']+1; } else { $seq2=1; } $sql2="SELECT `id` from `images` order by `id` desc limit 1"; $res2=mysqli_query($db,$sql2); if(mysqli_num_rows($res2)==1) { $r2 = mysqli_fetch_assoc($res2); $id3=$r2['id']+1; } else { $id3=1; } $idt=array( 'id'=>$id3, 'modul'=>'event', 'item_id'=>$id2, 'seq'=>$seq2, 'create_at'=>time(), 'path'=>$ar['imgurl']."users/".$user_id."/ev/".$new_file, ); Insert($db,"images",$idt,0); $udt=array( 'cover_photo'=>$ar['imgurl']."users/".$user_id."/ev/".$new_file, ); Update($db,"events",$udt,"id=".$id2,0); } //$dt['success']=true; $dt['message'] = "Event added successful"; return $dt; } function delete_event($js){ global $ar,$db; $dt=array(); $sql="SELECT * from `events` where id=".$js->event_id." and user_id=".$js->user_id; //$dt['sql']=$sql; $res=mysqli_query($db,$sql); if(mysqli_num_rows($res)>0) { $r=mysqli_fetch_assoc($res); $udt=array( 'del'=>1, ); Update($db,"events",$udt,"id=".$js->event_id,0); //Delete($db,"waste","id=".$js->waste_id,0); $dt['success']=true; $dt['message']="Event deleted successfully"; } else { $dt['error']=true; $dt['message']="Error delete event"; } return $dt; } function edit_event($js){ global $ar,$db; $dt=array(); $user_id=$js->user_id; $event_id=$js->event_id; if(isset($js->user_id)) { $udt=array( 'category' => $js->category, 'user_id' => $js->user_id, 'title' => $js->title, 'location' => $js->location, 'description' => $js->description, 'start_at' => $js->start_at, 'end_at' => $js->end_at, 'update_at'=>time(), ); Update($db,"events",$udt,"id=".$js->event_id,0); if($js->cover_photo) { $data=$js->cover_photo; $image_info = getimagesize($data); $extension = (isset($image_info["mime"]) ? explode('/', $image_info["mime"] )[1]: ""); $dt['type']=$extension; $tmp_file=$ar['img_path']."users/tmp/".$js->user_id.".".$extension; $sub_folder=$ar['img_path']."/users/".$js->user_id; if(!is_dir($sub_folder)){ mkdir($sub_folder, 0755); } $sub_folder_p=$ar['img_path']."/users/".$js->user_id."/ev"; if(!is_dir($sub_folder_p)){ mkdir($sub_folder_p, 0755); } $new_file=genRandom(10).".".$extension; $dt['newfile']=$new_file; $data = str_replace('data:image/'.$extension.';base64,', '', $data); $data = str_replace(' ','+',$data); $bin = base64_decode($data); if ($bin === false) { //$dt['info']="convert invalid"; } //tmp file file_put_contents($tmp_file, $bin); ini_set('display_errors', '0'); resize_crop_image(1200,760,$tmp_file,$sub_folder_p."/".$new_file); unlink($tmp_file); $sql="SELECT `seq` from `images` where `modul`='event' and `item_id`=".$js->event_id." order by `seq` desc limit 1"; $res=mysqli_query($db,$sql); if(mysqli_num_rows($res)==1) { $r = mysqli_fetch_assoc($res); $seq2=$r['seq']+1; } else { $seq2=1; } $sql3="SELECT `id` from `images` order by `id` desc limit 1"; $res3=mysqli_query($db,$sql3); if(mysqli_num_rows($res3)==1) { $r3 = mysqli_fetch_assoc($res3); $id3=$r3['id']+1; } else { $id3=1; } $idt=array( 'id'=>$id3, 'modul'=>'event', 'item_id'=>$js->event_id, 'seq'=>$seq2, 'create_at'=>time(), 'path'=>$ar['imgurl']."users/".$js->user_id."/ev/".$new_file, ); Insert($db,"images",$idt,0); $udt=array( 'cover_photo'=>$ar['imgurl']."users/".$js->user_id."/ev/".$new_file, ); Update($db,"events",$udt,"id=".$js->event_id,0); } $dt['success']=true; $dt['message']="Update event successfully"; //$dt['id']=$id2; } else { $dt['error']=true; $dt['message']="Error update event"; } //$dt['col']=$js; return $dt; } function get_event($js){ global $ar,$db; $dt=array(); $sql="SELECT * from `events` where id=".$js->event_id; //echo $sql8."
"; $res=mysqli_query($db,$sql); if(mysqli_num_rows($res)>0) { $r1 = mysqli_fetch_assoc($res); $dt['data']=$r1; $sql3="SELECT `path` as url from images where `item_id`='".$r1['id']."' and modul='event'"; //echo $sql8."
"; $res3=mysqli_query($db,$sql3); $d=0; while($r3 = mysqli_fetch_assoc($res3)) { $dt['data']['media'][$d]=$r3; $d++; } $dt['success']=true; } else { //$dt['error']=true; //$dt['error']="No posts found for the user"; $dt['data']=[]; $dt['message']="No data found"; } return $dt; } function get_events($js){ global $ar,$db; $dt=array(); $sql="SELECT * from `events` where del=0"; //echo $sql8."
"; $res=mysqli_query($db,$sql); $total_items=mysqli_num_rows($res); $total_pages=ceil($total_items/$js->limit); $start=($js->page-1)*$js->limit; $sql2 = $sql." order by create_at desc limit ".$start.",".$js->limit; $res2=mysqli_query($db,$sql2); if(mysqli_num_rows($res)>0) { $c=0; while($r1 = mysqli_fetch_assoc($res2)) { $dt['data'][$c]=$r1; $sql3="SELECT `path` as url from images where `item_id`='".$r1['id']."' and modul='event'"; //echo $sql8."
"; $res3=mysqli_query($db,$sql3); $d=0; while($r3 = mysqli_fetch_assoc($res3)) { $dt['data'][$c]['media'][$d]=$r3; $d++; } $c++; } $dt['success']=true; $dt['page']=$js->page; $dt['limit']=$js->limit; $dt['total_pages']=$total_pages; $dt['total_items']=$total_items; } else { //$dt['error']=true; //$dt['error']="No posts found for the user"; $dt['data']=[]; $dt['message']="No data"; } return $dt; } function get_user_event($js){ global $ar,$db; $dt=array(); $sql="SELECT * from `events` where del=0 and user_id=".$js->user_id; //echo $sql8."
"; $res=mysqli_query($db,$sql); $total_items=mysqli_num_rows($res); $total_pages=ceil($total_items/$js->limit); $start=($js->page-1)*$js->limit; $sql2 = $sql." order by create_at desc limit ".$start.",".$js->limit; $res2=mysqli_query($db,$sql2); if(mysqli_num_rows($res)>0) { $c=0; while($r1 = mysqli_fetch_assoc($res2)) { $dt['data'][$c]=$r1; $sql3="SELECT `path` as url from images where `item_id`='".$r1['id']."' and modul='event'"; //echo $sql8."
"; $res3=mysqli_query($db,$sql3); $d=0; while($r3 = mysqli_fetch_assoc($res3)) { $dt['data'][$c]['media'][$d]=$r3; $d++; } $c++; } $dt['success']=true; $dt['page']=$js->page; $dt['limit']=$js->limit; $dt['total_pages']=$total_pages; $dt['total_items']=$total_items; } else { //$dt['error']=true; //$dt['error']="No posts found for the user"; $dt['data']=[]; $dt['message']="No data for the user"; } return $dt; } function like_event($js){ global $ar,$db; $dt=array(); $sql2="SELECT `id` from `user_event_liked` order by `id` desc limit 1"; $res2=mysqli_query($db,$sql2); if(mysqli_num_rows($res2)==1) { $r2 = mysqli_fetch_assoc($res2); $id2=$r2['id']+1; } else { $id2=1; } $sql1="SELECT * from `user_event_liked` where event_id=".$js->event_id." and user_id=".$js->user_id; $res1=mysqli_query($db,$sql1); if(mysqli_num_rows($res1)==1) { Delete($db,"user_event_liked","event_id=".$js->event_id." and user_id=".$js->user_id,0); $dt['success']=true; $dt['message']="Event un-liked"; } else { $idt=array( 'id'=>$id2, 'event_id'=>$js->event_id, 'user_id'=>$js->user_id, ); Insert($db,"user_event_liked",$idt,0); $dt['success']=true; $dt['message']="Event liked"; } return $dt; } function save_event($js){ global $ar,$db; $dt=array(); $sql2="SELECT `id` from `user_event_saved` order by `id` desc limit 1"; $res2=mysqli_query($db,$sql2); if(mysqli_num_rows($res2)==1) { $r2 = mysqli_fetch_assoc($res2); $id2=$r2['id']+1; } else { $id2=1; } $sql1="SELECT * from `user_event_saved` where event_id=".$js->event_id." and user_id=".$js->user_id; $res1=mysqli_query($db,$sql1); if(mysqli_num_rows($res1)==1) { Delete($db,"user_event_saved","event_id=".$js->event_id." and user_id=".$js->user_id,0); $dt['success']=true; $dt['message']="Event un-saved"; } else { $idt=array( 'id'=>$id2, 'event_id'=>$js->event_id, 'user_id'=>$js->user_id, ); Insert($db,"user_event_saved",$idt,0); $dt['success']=true; $dt['message']="Event saved"; } return $dt; } function update_event_cover_photo($js){ global $ar,$db; $dt=array(); $user_id=$js->user_id; $event_id=$js->event_id; $data=$js->cover_photo; if(isset($js->cover_photo) && $js->cover_photo!=''){ $image_info = getimagesize($data); $extension = (isset($image_info["mime"]) ? explode('/', $image_info["mime"] )[1]: ""); //$dt['type']=$extension; $tmp_file=$ar['img_path']."users/tmp/".$user_id.".".$extension; $sub_folder=$ar['img_path']."/users/".$user_id; if(!is_dir($sub_folder)){ mkdir($sub_folder, 0755); } $sub_folder_p=$ar['img_path']."/users/".$user_id."/ev"; if(!is_dir($sub_folder_p)){ mkdir($sub_folder_p, 0755); } $new_file=genRandom(10).".".$extension; //$dt['newfile']=$new_file; $data = str_replace('data:image/'.$extension.';base64,', '', $data); $data = str_replace(' ','+',$data); $bin = base64_decode($data); if ($bin === false) { $dt['info']="convert invalid"; } //tmp file file_put_contents($tmp_file, $bin); ini_set('display_errors', '0'); resize_crop_image(1200,760,$tmp_file,$sub_folder_p."/".$new_file); unlink($tmp_file); $sql="SELECT `seq` from `images` where `modul`='event' and `item_id`=".$js->event_id." order by `seq` desc limit 1"; $res=mysqli_query($db,$sql); if(mysqli_num_rows($res)==1) { $r = mysqli_fetch_assoc($res); $seq2=$r['seq']+1; } else { $seq2=1; } $sql2="SELECT `id` from `images` order by `id` desc limit 1"; $res2=mysqli_query($db,$sql2); if(mysqli_num_rows($res2)==1) { $r2 = mysqli_fetch_assoc($res2); $id3=$r2['id']+1; } else { $id3=1; } $idt=array( 'id'=>$id3, 'modul'=>'event', 'item_id'=>$js->event_id, 'seq'=>$seq2, 'create_at'=>time(), 'path'=>$ar['imgurl']."users/".$user_id."/ev/".$new_file, ); Insert($db,"images",$idt,0); $udt=array( 'cover_photo'=>$ar['imgurl']."users/".$user_id."/ev/".$new_file, ); Update($db,"events",$udt,"id=".$js->event_id,0); //$dt['idt']=$idt; //$dt['udt']=$udt; $dt['success']=true; $dt['message']="Cover photo update"; } else { $dt['error']=true; $dt['message']="Error update cover photo"; } //$dt['image_url']=$ar['imgurl']."users/".$user_id."/w/".$new_file; return $dt; } ?>
Save
export const maybeFavoriteEvent = async (eventId) => { const user = await getSessionUser(); if (!user || !user.id) { return null; } const response = await fetch(`${API_URL}/wp-json/app/v1/favourite-event`, { cache: "no-cache", method: "POST", headers: { "Content-Type": "application/json", }, body: JSON.stringify({ event_id: eventId, user_id: user.id }), }); const data = await response.json(); return data; }; export const fetchEvent = async (eventId) => { let user; try { user = await getSessionUser(); } catch (e) { console.error("Error fetching user no session"); } const response = await fetch(`${API_URL}/wp-json/app/v1/get-event`, { cache: "no-cache", method: "POST", headers: { "Content-Type": "application/json", }, body: JSON.stringify({ event_id: eventId, user_id: user?.id }), }); const data = await response.json(); if (response.status !== 200) { throw new Error(data.message); } return data; }; export const fetchEventCats = async () => { const response = await fetch(`${API_URL}/wp-json/app/v1/get-event-categories`, { method: "GET", cache: "force-cache", }); const data = await response.json(); return data; }; export const fetchTrendingEvents = async (page, paginate = false, filters = null) => { const controller = new AbortController() const signal = controller.signal try { const user = await getSessionUser(); if (!user) { throw new Error('Session user not found'); } const response = await fetch(`${API_URL}/wp-json/app/v1/get-events-trending`, { method: "POST", headers: { "Content-Type": "application/json", }, body: JSON.stringify({ user_id: user.id, page, per_page: 10, paginate, filters }), signal }); const data = await response.json(); if (!data) { throw new Error('Failed to fetch trending events'); } return data; } catch (error) { console.error(error); return null; } };
import { API_URL, TIMEOUT_MS_HIGHER } from "./consts.js" import { getSessionUser } from "./auth.js"; export const addEvent = async (data) => { try { const user = await getSessionUser() if (!user) return setTimeout(() => { controller.abort() }, TIMEOUT_MS_HIGH) const response = await fetch(`${API_URL}/event/add-event`, { method: "POST", headers: { "Content-Type": "application/json", }, body: JSON.stringify({ ...data, user_id: user.id, }) }) const res = await response.json() return res } catch (error) { if (error.name === 'AbortError') { throw { message: "Failed to add event, your connection timed out", name: "TimeOutError" }; } else { throw error; // Rethrow any other errors } } } export const deleteEvent = async (eventId) => { const user = await getSessionUser() if (!user) return const response = await fetch(`${API_URL}/event/delete-event`, { method: "POST", headers: { "Content-Type": "application/json", }, body: JSON.stringify({ user_id: user.id, event_id: eventId }), }) const data = await response.json() return data } export const editEvent = async (data) => { try { const user = await getSessionUser() if (!user) return setTimeout(() => { controller.abort() }, TIMEOUT_MS_HIGH) const response = await fetch(`${API_URL}/event/edit-event`, { method: "POST", headers: { "Content-Type": "application/json", }, body: JSON.stringify({ ...data, user_id: user.id, }) }) const res = await response.json() return res } catch (error) { if (error.name === 'AbortError') { throw { message: "Failed to edit event, your connection timed out", name: "TimeOutError" }; } else { throw error; // Rethrow any other errors } } } export const getEventById = async (eventId) => { let user; try { user = await getSessionUser(); } catch (e) { console.error("Error fetching user no session"); } const response = await fetch(`${API_URL}/event/get-event`, { cache: "no-cache", method: "POST", headers: { "Content-Type": "application/json", }, body: JSON.stringify({ event_id: eventId, user_id: user.id }), }); const data = await response.json(); if (response.status !== 200) { throw new Error(data.message); } return data; }; export const getEvents = async (page = 1, limit = 10) => { let user; try { user = await getSessionUser(); } catch (e) { console.error("Error fetching user no session"); } try { const response = await fetch(`${API_URL}/event/get-events`, { method: "POST", headers: { "Content-Type": "application/json", }, body: JSON.stringify({ user_id: user.id, page, limit }), }) const data = await response.json() if (response.status !== 200) { return [] } return data } catch (error) { return [] } } export const getEventsByUser = async (profilId) => { try { const response = await fetch(`${API_URL}/event/get-user-event`, { method: "POST", headers: { "Content-Type": "application/json", }, body: JSON.stringify({ user_id: profilId }), }) const data = await response.json() if (response.status !== 200) { return [] } return data } catch (error) { return [] } } export const LikeEvent = async (eventId) => { const user = await getSessionUser() if (!user) return const response = await fetch(`${API_URL}/event/like-event`, { method: "POST", headers: { "Content-Type": "application/json", }, body: JSON.stringify({ user_id: user.id, event_id: eventId }), }) const data = await response.json() return data } export const SaveEvent = async (eventId) => { const user = await getSessionUser() if (!user) return const response = await fetch(`${API_URL}/event/save-event`, { method: "POST", headers: { "Content-Type": "application/json", }, body: JSON.stringify({ user_id: user.id, event_id: eventId }), }) const data = await response.json() return data } export const updateEventCoverImage = async (eventId, cover_photo) => { try { const user = await getSessionUser(); if (!user) return; setTimeout(() => { controller.abort() }, TIMEOUT_MS_HIGHER) const response = await fetch(`${API_URL}/waste/update-waste-cover-photo`, { method: "POST", headers: { "Content-Type": "application/json", }, body: JSON.stringify({ user_id: user.id, event_id: eventId, cover_photo }) }); const data = await response.json(); return data; } catch (error) { if (error.name === 'AbortError') { throw { message: "Failed to update cover photo, your connection timed out", name: "TimeOutError" }; } else { throw error; // Rethrow any other errors } } };
Save
event
-- favourite-event
-- get-event
-- get-event-categories
-- get-events-trending