Den vre koden hr gr s att systemet kollar vilken video som ska visas p en dynamisk sida genom att utg frn den aktuella sidadressen:
Under filmen finns ett flt dr tittare kan lmna kommentarer och ge filmen en rating. Som du ser s r det kopplat till dataset1 men jag vet inte hur man kombinerar den vre koden med den nedre koden genom datasetet? Gr man det genom ett filter? Jag tror att man tminstone ska brja med att lgga
Kod:
let url = wixLocation.url; let pageId = url.substr(url.lastIndexOf("/") + 1); $w.onReady(async function () { let videoInfo = await getVideoInfo(pageId); $w("#text331").text = (videoInfo.title); $w("#image66").src = (videoInfo.frontpic); $w("#text330").text = (videoInfo.creatorName);
Under filmen finns ett flt dr tittare kan lmna kommentarer och ge filmen en rating. Som du ser s r det kopplat till dataset1 men jag vet inte hur man kombinerar den vre koden med den nedre koden genom datasetet? Gr man det genom ett filter? Jag tror att man tminstone ska brja med att lgga
Kod:
direkt under wixData.get("Videos", pageId)
Kod:
men i vrigt r jag vldigt osker:function filterComments
Kod:
let bounceCenter = { "duration": 500, "direction": "center", "intensity": "medium", }; function login() { wixUsers.promptLogin({ "mode": "login" }) } $w.onReady(() => { filterComments() $w("#logout").onClick(logoutAndRedirect); }) function logoutAndRedirect(event) { Promise.all([wixLocation.to('/login'), wixUsers.logout()]); } function filterComments() { $w('#dataset1').onReady(() => { $w('#dataset1').setFilter( wixData.filter() .eq("title", $w("#dataset1").getCurrentItem()._id) ).then(() => { let currentItem = $w("#dataset1").getCurrentItem(); let totalCount = $w("#dataset1").getTotalCount(); $w('#text344').text = totalCount.toString() + " ratings and comments" wixData.aggregate("Videos") .filter(wixData.filter().eq("title", $w('#dataset1').getCurrentItem()._id)) .sum("rating", "rating") .run() .then((results) => { if (results.items.length < 1) { $w('#ratingsDisplay').rating = 0 } else { let sumAmount = results.items[0].rating let rating = Number(sumAmount / totalCount).toFixed(1) $w('#ratingsDisplay').rating = Number(rating) } }); likeFunctionComment() addComment() deleteComment() }) }) } function deleteComment() { wixData.get("Videos", pageId) $w('#repeater1').forEachItem(($item, itemData, index) => { console.log(itemData.currentUserId + " === " + wixUsers.currentUser.id) if (itemData.currentUserId === wixUsers.currentUser.id) { $item("#deleteComment").show() } else { $item("#deleteComment").hide() } }) $w('#deleteComment').onClick((event) => { wixData.get("Videos", pageId) let $item = $w.at(event.context) let currentItem = $item("#dataset1").getCurrentItem() $item('#deleteComment').disable() $item('#deleteComment').label = "Deleting..." wixData.remove("Videos", currentItem._id) .then(() => { $w('#dataset1').refresh() setTimeout(() => { let totalCount = $w("#dataset1").getTotalCount(); $w('#text344').text = totalCount.toString() + " ratings and comments" setTimeout(() => { wixData.aggregate("Videos") .filter(wixData.filter().eq("title", $w('#dataset1').getCurrentItem()._id)) .sum("rating", "rating") .run() .then((results) => { if (results.items.length < 1) { $w('#ratingsDisplay').rating = 0 } else { let sumAmount = results.items[0].rating let rating = Number(sumAmount / totalCount).toFixed(1) $w('#ratingsDisplay').rating = Number(rating) } }); }, 2500) }, 2000) }) }) } function addComment() { wixData.get("Videos", pageId) $w('#button3').onClick(() => { $w("#image63").hide(); $w("#image62").show(); $w("#audioPlayer").play(); setTimeout(() => { $w("#image62").hide(); $w("#image63").show(); }, 150); let value = $w('#textBox2').value.replace(/\s+/g, ' ') if (value === ' ' || value === '') { $w('#button3').enable() $w('#infotext').text = 'Please enter a written comment' $w('#infotext').show() setTimeout(() => { $w('#infotext').hide() }, 5000) } else { if ($w('#ratingsInput').valid) { insertComment() } else { $w('#infotext').text = 'Please first add a star rating for this video!' $w('#infotext').show() setTimeout(() => { $w('#infotext').hide() }, 9000) } } }) }