flagging unflagging cards

This commit is contained in:
2020-11-24 14:07:10 +01:00
parent ffc4a88094
commit a38653f7ce
14 changed files with 476 additions and 81 deletions

View File

@@ -103,6 +103,7 @@ export default {
getItems({ dispatch, commit, state }, uuids) {
let params = {
// include: 'images', // no needs to include thanks to consumers_image_styles module
// include: 'drupal_internal__nid',
'filter[uuids-groupe][group][conjunction]': 'OR'
};
for (var i = 0; i < uuids.length; i++) {
@@ -153,7 +154,7 @@ export default {
// get images included values
let img_src = relations.images.data
console.log('img_src', img_src);
// console.log('img_src', img_src);
// this is a temporary deactivation of images
// img_src = [];
item.images = []

View File

@@ -11,15 +11,14 @@ export default {
uid: null,
// username: '',
mail: "",
token: null,
csrftoken: null,
csrf_token: null,
logout_token: null,
isloggedin: false,
isAdmin: false,
isAdherent: false,
canSearch: false,
roles: [],
flags: false
flagcolls: false
},
// getters
@@ -28,13 +27,14 @@ export default {
// mutations
mutations: {
SetCsrftoken(state, token) {
state.csrftoken = token;
console.log('SetCsrftoken', token);
state.csrf_token = token;
},
setToken(state, data) {
state.uid = data.current_user.uid;
// state.username = data.username;
state.mail = data.current_user.mail;
state.token = data.csrf_token;
state.csrf_token = data.csrf_token;
state.isloggedin = true;
state.logout_token = data.logout_token;
},
@@ -71,7 +71,7 @@ export default {
console.log("setLoggedOut state", state);
state.uid = null;
state.mail = "";
state.token = null;
state.csrf_token = null;
state.isloggedin = false;
state.logout_token = null;
if (state.isAdmin) {
@@ -81,9 +81,9 @@ export default {
state.asAdmin = false;
state.canSearch = false;
},
setFlags(state, flags) {
console.log("User setFlags", flags);
state.flags = flags;
setFlagColls(state, flagcolls) {
console.log("User setFlagColls", flagcolls);
state.flagcolls = flagcolls;
}
},
@@ -134,25 +134,33 @@ export default {
});
},
getUser({ dispatch, commit, state }) {
const params = {
token: state.token
};
return REST.get(`/user/${state.uid}?_format=json`, params)
.then(({ data }) => {
console.log("user REST getUser data", data);
console.log("roles", data.roles);
commit("setUser", data);
if (data.roles) {
commit("setRoles", data.roles);
}
dispatch("getUserFlags");
})
.catch(error => {
console.warn("Issue with getUser", error);
Promise.reject(error);
return new Promise((resolve, reject) => {
REST.get("/session/token").then(({ data }) => {
console.log('csrftoken', data);
commit("SetCsrftoken", data);
console.log('state.csrf_token', state.csrf_token);
const params = {
token: state.csrf_token
};
REST.get(`/user/${state.uid}?_format=json`, params)
.then(({ data }) => {
console.log("user REST getUser data", data);
console.log("roles", data.roles);
commit("setUser", data);
if (data.roles) {
commit("setRoles", data.roles);
}
dispatch("getUserFlagColls");
resolve();
})
.catch(error => {
console.warn("Issue with getUser", error);
Promise.reject(error);
});
});
});
},
getUserFlags({ dispatch, commit, state }) {
getUserFlagColls({ dispatch, commit, state }) {
// flags
// REST.get('/flagging_collection/1?_format=json')
// .then(( data ) => {
@@ -162,10 +170,11 @@ export default {
// console.warn('Issue USER TEST FLAG REST', error)
// Promise.reject(error)
// })
return MA.get("materio_flag/user_flagging_collections")
.then(({ data }) => {
console.log("user MA getFlags data", data);
commit("setFlags", data);
commit("setFlagColls", data);
})
.catch(error => {
console.warn("Issue USER MA getFlags", error);
@@ -173,17 +182,17 @@ export default {
});
},
// https://drupal.stackexchange.com/questions/248539/cant-get-flagging-api-to-accept-post-request
createFlag({ dispatch, commit, state }, new_flag_name) {
console.log("user createFlag", new_flag_name);
createFlagColl({ dispatch, commit, state }, new_collection_name) {
console.log("user createFlagColl", new_collection_name);
return new Promise((resolve, reject) => {
const params = {
name: new_flag_name
name: new_collection_name
};
MA.post("materio_flag/create_user_flagging_collection", params)
.then(({ data }) => {
console.log("user MA createFlag data", data);
console.log("user MA createFlagColl data", data);
if (data.status) {
dispatch('getUserFlags').then(() => {
dispatch('getUserFlagColls').then(() => {
resolve();
})
}
@@ -194,16 +203,16 @@ export default {
});
});
},
deleteFlag({ dispatch, commit, state }, flagid) {
console.log("user deleteFlag", flagid);
deleteFlagColl({ dispatch, commit, state }, flagcollid) {
console.log("user deleteFlagColl", flagcollid);
return new Promise((resolve, reject) => {
const params = {
flagid: flagid
flagcollid: flagcollid
};
MA.post("materio_flag/delete_user_flagging_collection", params)
.then(({ data }) => {
console.log("user MA deleteFlag data", data);
dispatch('getUserFlags').then(() =>{
console.log("user MA deleteFlagColl data", data);
dispatch('getUserFlagColls').then(() =>{
resolve();
});
})
@@ -213,9 +222,43 @@ export default {
});
});
},
flag({ dispatch, commit, state }, args) {
console.log("user flag", args.uuid, args.collid);
const params = {
flagid: state.flagcolls[args.collid].flag_id,
uuid: args.uuid,
flagcollid: args.collid
};
return MA.post(`materio_flag/flag`, params)
.then(({ data }) => {
console.log("user MA flag", data);
dispatch('getUserFlagColls')
})
.catch(error => {
console.warn("Issue USER MA flag", error);
});
},
unFlag({ dispatch, commit, state }, args) {
console.log("user unFlag", args.uuid, args.collid);
const params = {
flagid: state.flagcolls[args.collid].flag_id,
uuid: args.uuid,
flagcollid: args.collid
};
return MA.post(`materio_flag/unflag`, params)
.then(({ data }) => {
console.log("user MA unFlag", data);
dispatch('getUserFlagColls')
})
.catch(error => {
console.warn("Issue USER MA unFlag", error);
});
},
userLogout({ commit, state }) {
const credentials = qs.stringify({
token: state.token
token: state.csrf_token
});
REST.post("/user/logout", credentials)
.then(resp => {