#include <jag_write.h>

uint8_t make_folder(char *path) {
 
  errno = 0;
  if (mkdir(path, 0755) && errno != EEXIST) {
    return 0;
  }

  return 1;
}


uint8_t create_xdg_folder(char folder_path[PATH_MAX]) {
  char *env;

  if ((env = getenv("XDG_DATA_HOME")) == NULL) {
    if ((env = getenv("HOME")) == NULL) {
      printf("are you ok?\n");
      return 0;
    }
    
    uint8_t error = 0;

    sprintf(folder_path, "%s%s", env, LOCAL);
    error += make_folder(folder_path);

    strcat(folder_path, SHARE);
    error += make_folder(folder_path);

    if (error <= 1) {
      printf("Failed to create Folder");
      return 0;
    } 
  } else {
    sprintf(folder_path, "%s", env);
  }

  return 1;
}

uint8_t create_folder(char *folder_name, char *folder_path, char output_path[PATH_MAX]) {
  
  sprintf(output_path, "%s/%s", folder_path, folder_name);
  if (!make_folder(output_path)) {
    printf("Failed to create Folder");
    return 0;
  }

  return 1;
}

