@@ -1215,7 +1229,8 @@
floGlobals.appObjects[uid] = {
public: true,
editors: [],
- sections
+ sections,
+ preview: {}
}
Promise.all([
floCloudAPI.updateObjectData('cc'),
@@ -1310,14 +1325,19 @@
submitButton.disabled = true
floCloudAPI.sendGeneralData(entry, `${floGlobals.currentArticle.id}_gd`)
.then((res) => {
- console.log(res)
+ let genDataVC
+ // Add result to general data
+ for (genDataVC in res) {
+ floGlobals.generalData[`${floGlobals.currentArticle.id}_gd|${floGlobals.adminID}|${floGlobals.application}`][genDataVC] = res[genDataVC]
+ }
+
+ console.log(genDataVC)
submitButton.classList.add('hide-completely')
notify('sent data', 'success')
- const iterationData = { ...entry, timestamp, editor: myFloID }
if (isUniqueEntry) {
contentArea.innerHTML = ''
floGlobals.currentArticle.sections[sectionID].uniqueEntries.push(entry.origin)
- floGlobals.currentArticle.uniqueEntries[entry.origin] = { iterations: [iterationData] }
+ floGlobals.currentArticle.uniqueEntries[entry.origin] = { iterations: [genDataVC] }
// Insert new content card based on set filter
const newCard = render.contentCard(entry.origin)
if (getRef('sort_content_list').value === 'time') {
@@ -1360,7 +1380,7 @@
if (noOfContributors < 2) {
contentCard.querySelector('.content__author').textContent = `2 Contributors`
}
- floGlobals.currentArticle.uniqueEntries[entry.origin].iterations.push(iterationData)
+ floGlobals.currentArticle.uniqueEntries[entry.origin].iterations.push(genDataVC)
}
})
.catch(err => console.log(err))
@@ -1373,7 +1393,7 @@
}
} else if (e.target.closest('.version-history-button')) {
const entryUid = e.target.closest('.content-card').dataset.uid
- if (versionHistory.isOpen && entryUid === versionHistory.entryUid)
+ if (floGlobals.versionHistory.isOpen && entryUid === floGlobals.versionHistory.entryUid)
hideVersionHistory()
else
showVersionHistory(entryUid)
@@ -1409,6 +1429,17 @@
})
floGlobals.currentArticle.sections[sectionID].expanded = true
}
+ } else if (e.target.closest('.score-button') && isSubAdmin) {
+ floGlobals.versionHistory.currentEntry = e.target.closest('.content-card').dataset.vectorClock
+ getRef('update_score_field').value = e.target.closest('.score-button').children[1].textContent
+ showPopup('scoring_popup')
+ }
+ })
+ getRef('version_timeline').addEventListener('click', e => {
+ if (e.target.closest('.score-button') && isSubAdmin) {
+ floGlobals.versionHistory.currentEntry = e.target.closest('.history-entry').dataset.vectorClock
+ getRef('update_score_field').value = e.target.closest('.score-button').children[1].textContent
+ showPopup('scoring_popup')
}
})
getRef('article_wrapper').addEventListener("paste", e => {
@@ -1606,7 +1637,7 @@
}
function sharePreview() {
if (isSubAdmin) {
- if (floGlobals.appObjects[pagesData.params.articleID].preview) {
+ if (floGlobals.appObjects[pagesData.params.articleID]?.preview?.id) {
floGlobals.appObjects[pagesData.params.articleID].preview.content = DOMPurify.sanitize(getRef('preview__body').innerHTML)
} else {
floGlobals.appObjects[pagesData.params.articleID].preview = {
@@ -1757,6 +1788,31 @@
function formatDoc(sCmd, sValue) {
document.execCommand(sCmd, false, sValue);
}
+ function incScore(value) {
+ let currentScore = parseFloat(getRef('update_score_field').value)
+ if (!currentScore) {
+ currentScore = 0
+ }
+ if (currentScore + value <= 100) {
+ currentScore += value;
+ getRef('update_score_field').value = parseFloat(currentScore.toFixed(1))
+ }
+ else {
+ notify(`You can't give score more than 100.`, 'error')
+ }
+ }
+ function updateScore() {
+ const newScore = parseFloat(getRef('update_score_field').value)
+ const mark = {
+ [floGlobals.versionHistory.currentEntry]: newScore
+ }
+ scores[floGlobals.versionHistory.currentEntry] = newScore
+ document.querySelectorAll(`[data-vector-clock="${floGlobals.versionHistory.currentEntry}"] .content__score`).forEach(scoreElem => scoreElem.textContent = newScore)
+ floCloudAPI.markApplicationData(mark).then(res => {
+ notify('Score updated', 'success')
+ hidePopup()
+ }).catch(err => notify(err, 'error'))
+ }