def sendInvite(folderId): # 1 - OUVRIR LA BASE DE DONNEE jsondata = InviteUtils.loadJson() clientId = request.json["clientId"] folderId = folderId clientId = clientId if jsondata == None: return Error("Erreur lors de l'ouverture de la BD.") folders = jsondata["folder"] # 2 - VERIFIER SI LE DOSSIER EXISTE found, findex = InviteUtils.isExists(jsondata, folderId, "FOLDER") if not found: return Error("Erreur lors de la recherche du repertoire.") # 3 - VERIFIER SI LE CLIENT EXISTE found, cindex = InviteUtils.isExists(jsondata, clientId, "USER") if not found: return Error("Erreur lors de la recherche du client.") if not request.headers["Authorization"] in folders[findex]["administrator"]: return Error("Erreur le client n'a pas les droits.") #4 - ECRIRE DANS "INVITEDCLIENTS" SI PAS DEJA PRESENT if not clientId in folders[findex]["invitedClients"]: folders[findex]["invitedClients"].append(clientId) InviteUtils.unloadJson(jsondata) return Success("Invitation envoyée")
def replyInvite(userId, folderId): # 1 - OUVRIR LA BASE DE DONNEE jsondata = InviteUtils.loadJson() answer = int(flask.request.json["answer"]) # 0 : FALSE # TRUE clientId = int(userId) folderId = int(folderId) # 2 - VERIFIER SI LE CLIENT EXISTE found, cindex = InviteUtils.isExists(jsondata, clientId, "USER") if not found: return Error("Erreur lors de la recherche du client.") # 3 - VERIFIER SI LE DOSSIER EXISTE found, findex = InviteUtils.isExists(jsondata, folderId, "FOLDER") if not found: return Error("Erreur lors de la recherche du repertoire.") folder = jsondata["folder"][findex] isclient = clientId in folder["clients"] isinvite = clientId in folder["invitedClients"] # 4 - VERIFIER LES DEMANDES DACCESS if not isinvite and not isclient: return Error("Le client n'a pas eu l'access au dossier.") # 5 - AJOUTER L'ACCES needwrite = False if isinvite: folder["invitedClients"].remove(clientId) needwrite = True if answer != 0 and not isclient: folder["clients"].append(clientId) needwrite = True if needwrite: InviteUtils.unloadJson(jsondata) if answer == 0: return Success("Acces enleve.") return Success("Acces ajoute.")
def getInvites(userId): # 1 - OUVRIR LA BASE DE DONNEE jsondata = InviteUtils.loadJson() clientId = int(userId) if jsondata == None: return Error("Erreur lors de l'ouverture de la BD.") folders = jsondata["folder"] # 2 - VERIFIER SI LE CLIENT EXISTE found, cindex = InviteUtils.isExists(jsondata, clientId, "USER") if not found: return Error("Erreur lors de la recherche du client.") invitedFolders = [] for folder in folders: if clientId in folder["invitedClients"]: invitedFolders.append(folder) return Success(json.dumps(invitedFolders, indent = 4))