Chamilo is a learning management system focused on ease of use and accessibility
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
chamilo-lms/assets/vue/services/legalService.js

38 lines
1.0 KiB

10 months ago
import makeService from "./api"
import { ENTRYPOINT } from "../config/entrypoint"
const legalExtensions = {
async findAllByLanguage(languageId) {
const params = new URLSearchParams({
languageId: languageId,
10 months ago
"order[version]": "desc",
})
return fetch(`${ENTRYPOINT}legals?${params.toString()}`)
},
async saveOrUpdateLegal(payload) {
10 months ago
console.log("Saving or updating legal terms")
return fetch(`/legal/save`, {
10 months ago
method: "POST",
headers: {
10 months ago
"Content-Type": "application/json",
},
10 months ago
body: JSON.stringify(payload),
})
},
async fetchExtraFields(termId = null) {
try {
10 months ago
const url = termId ? `/legal/extra-fields?termId=${termId}` : `/legal/extra-fields`
const response = await fetch(url)
if (!response.ok) {
10 months ago
throw new Error("Network response was not ok")
}
10 months ago
return await response.json()
} catch (error) {
10 months ago
console.error("Error loading extra fields:", error)
throw error
}
},
10 months ago
}
10 months ago
export default makeService("legals", legalExtensions)