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/store/platformConfig.js

51 lines
1.0 KiB

import { defineStore } from "pinia";
import axios from "axios";
import { ref } from "vue";
export const usePlatformConfig = defineStore("platformConfig", () => {
const isLoading = ref(false);
const settings = ref(null);
const studentView = ref('teacherview');
function getSetting(variable) {
if (settings.value && settings.value[variable]) {
return settings.value[variable];
}
return null;
}
async function findSettingsRequest() {
isLoading.value = true;
try {
const { data } = await axios.get("/platform-config/list")
settings.value = data.settings
studentView.value = data.studentview
} catch (e) {
console.log(e)
} finally {
isLoading.value = false
}
}
async function initialize() {
await findSettingsRequest();
}
function isStudentViewActive() {
return 'studentview' === studentView.value
}
return {
isLoading,
settings,
studentView,
initialize,
getSetting,
isStudentViewActive,
};
});