Skip to content
Snippets Groups Projects
project-api.js 1014 B
Newer Older
import axios from 'axios';
import store from '../store'

leandro's avatar
leandro committed

axios.defaults.headers.common['X-CSRFToken'] = (name => {
  var re = new RegExp(name + "=([^;]+)");
  var value = re.exec(document.cookie);
Timothee P's avatar
Timothee P committed
  return (value !== null) ? unescape(value[1]) : null;
leandro's avatar
leandro committed
})('csrftoken');


const baseUrl = store.state.configuration.VUE_APP_DJANGO_API_BASE;

const projectAPI = {
  async getProjectSubscription({ projectSlug }) {
    const response = await axios.get(
      `${baseUrl}projects/${projectSlug}/subscription/`
    );
    if (
      response.status === 200 &&
      response.data
    ) {
      return response.data;
    } else {
      return null;
    }
  },

  async subscribeProject({ projectSlug, suscribe }) {
    const response = await axios.put(
      `${baseUrl}projects/${projectSlug}/subscription/`,
      { is_suscriber: suscribe }
    );
    if (
      response.status === 200 &&
      response.data
    ) {
      return response.data;
    } else {
      return null;
    }
  },
}

export default projectAPI;