Documentation Sonify
Node JS

arcane

Arcane

Objet représentant l'arcane.

author [string]

Nom d'utilisateur du créateur de l'arcane.

fileName [string]

Nom du fichier sans extension. L'extension .WAV peut être utilisé pour le fichier son et .svg pour l'image.

formula [string]

Formule au format du synthétiseur.

schema [object]

Formule au format JSON.

cost [number]

Coût de l'arcane.

id [number]

Identifiant de l'arcane dans la base de données.

getArcane(field, data, callback)

Retourne l'arcane de la base de données correspondant aux paramètres field et data.

field [string]

Champs de la table arcane.

data [string]

Valeur du champ de l'arcane recherché.

callback(err [object], arcane [object])
  • chevron_right Message d'erreur (null si aucune erreur).
  • chevron_right Objet représentant l'arcane.
getArcanes(field, data, callback)

Retourne un tableau d'arcanes de la base de données correspondant aux paramètres field et data.

field [string]

Champs de la table arcane.

data [string]

Valeur du champ des arcanes recherchés.

callback(err [object], arcanes [array])
  • chevron_right Message d'erreur (null si aucune erreur).
  • chevron_right Tableau d'objets représentant les arcanes.
createArcane(arcane, callback)

Créer un arcane dans la base de données.

arcane [object]

Objet représentant l'arcane.

callback(err [object], id [number])
  • chevron_right Message d'erreur (null si aucune erreur).
  • chevron_right id de l'arcane créé.
getAllExceptList(exclusionList, callback)

Retourne tous les arcanes de la base de données à l'exception du tableau en paramètre.

exclusionList [array]

Tableau d'id des arcanes exclus de la recherche

callback(err [object], arcanes [array])
  • chevron_right Message d'erreur (null si aucune erreur).
  • chevron_right Tableau d'objets représentant les arcanes.

mem

createMem(arcaneId, pageId, value, callback)

Créé une relation d'appartenance dans la base de données.

arcaneId [number]

Id de l'arcane traité.

pageId [number]

Id de la page à laquelle l'arcane appartient.

value [number]

Valeur d'appartenance : 1 l'arcane appartient à la page et -1 la recommandation a été refusée pour cette page.

callback(err [object])
  • chevron_right Message d'erreur (null si aucune erreur).
deleteMem(arcaneId, pageId, callback)

Supprime la relation d'appartenance dans la base de données.

arcaneId [number]

Id de l'arcane traité.

pageId [number]

Id de la page à laquelle l'arcane appartient.

callback(err [object])
  • chevron_right Message d'erreur (null si aucune erreur).
deletePage(pageId, callback)

Supprime toutes les relations d'appartenances pour une page donnée.

pageId [number]

Id de la page.

callback(err [object])
  • chevron_right Message d'erreur (null si aucune erreur).
getMem(arcaneId, pageId, callback)

Retourne la valeur d'appartenance pour l'arcane et la page en paramètre.

arcaneId [number]

Id de l'arcane traité.

pageId [number]

Id de la page à laquelle l'arcane appartient.

callback(err [object], a [number])
  • chevron_right Message d'erreur (null si aucune erreur).
  • chevron_right Valeur d'appartenance.
getArcanesOfPage(pageId, callback)

Retourne un tableau d'objets contenant les id des arcanes de la page et les valeurs d'appartenances correpondantes.

pageId [number]

Id de la page à laquelle l'arcane appartient.

callback(err [object], mems [array])
  • chevron_right Message d'erreur (null si aucune erreur).
  • chevron_right Tableau d'objet {arcane: number, value: number}
updateValue(arcaneId, pageId, value, callback)

Met à jour la valeur d'appartenance.

arcaneId [number]

Id de l'arcane traité.

pageId [number]

Id de la page à laquelle l'arcane appartient.

value [number]

Valeur d'appartenance.

callback(err [object])
  • chevron_right Message d'erreur (null si aucune erreur).
getPagesWithArcane(id, callback)

Retourne toutes les pages ayant une valeur d'appartenance avec l'arcane en paramètre.

id [number]

Id de l'arcane traité.

callback(err [object], m [object])
  • chevron_right Message d'erreur (null si aucune erreur).
  • chevron_right Chaque propiétés de l'objet est un id de page associé à la valeur d'appartenance.
getCommendableMems(arcaneIds, pageIds, callback)

Retourne toutes les relations contenant arcaneIds et pageIds.

arcaneIds [number]

Tableau d'id d'arcane.

pageIds [number]

Tableau d'id de page.

callback(err [object], m [object])
  • chevron_right Message d'erreur (null si aucune erreur).
  • chevron_right Contient l'id de l'arcane et de la page ainsi que la valeur d'appartenance.

page

Page

Objet représentant une page du grimoire.

name [string]

Nom de la page.

author [string]

Nom d'utilisateur du créateur de l'arcane.

content [array]

Tableau des id des arcanes dans la page.

sim [object]

Valeurs de similarité avec les autres pages.

isStatic [bool]

Les pages statiques ne peuvent pas être renommées ou supprimées et ne prennent pas part à l'algorithme de recommandation.

id [number]

Identifiant de la page dans la base de données.

getPage(id, callback)

Retourne une page d'après son id.

id [number]

Id de la page recherchée.

callback(err [object], page [object])
  • chevron_right Message d'erreur (null si aucune erreur).
  • chevron_right Objet représentant une page.
getPageByName(name, author, callback)

Retourne une page d'après son nom et son auteur.

name [string]

Nom de la page recherchée.

author [string]

Nom d'utilisateur de l'auteur de la page recherchée.

callback(err [object], page [object])
  • chevron_right Message d'erreur (null si aucune erreur).
  • chevron_right Objet représentant une page.
getAllPageFrom(author, callback)

Retourne toutes les pages d'un utilisateur.

author [string]

Nom d'utilisateur de l'auteur des pages recherchées.

callback(err [object], pages [array])
  • chevron_right Message d'erreur (null si aucune erreur).
  • chevron_right Tableau d'objet représentant une page.
createPage(name, author, isStatic, callback)

Créé une nouvelle page dans la base de données.

name [string]

Nom de la page (duplication impossible pour un même utilisateur).

author [string]

Nom d'utilisateur de l'auteur des pages recherchées.

isStatic [bool]

(Voir objet Page)

callback(err [object], pages [object])
  • chevron_right Message d'erreur (null si aucune erreur).
  • chevron_right Objet représentant la page créée.
deletePage(id, callback)

Supprime une page de la base de données.

id [number]

Id de la page à supprimer.

callback(err [object])
  • chevron_right Message d'erreur (null si aucune erreur).
addArcane(pageId, arcaneId, callback)

Ajoute un arcane au contenu d'une page.

pageId [number]

Id de la page.

arcaneId [number]

Id de l'arcane.

callback(err [object])
  • chevron_right Message d'erreur (null si aucune erreur).
removeArcane(pageId, arcaneId, callback)

Supprime un arcane du contenu d'une page.

pageId [number]

Id de la page.

arcaneId [number]

Id de l'arcane.

callback(err [object])
  • chevron_right Message d'erreur (null si aucune erreur).
isInPage(pageId, arcaneId, callback)

Retourne un booléen pour savoir si l'arcane recherché est présent dans la page.

pageId [number]

Id de la page.

arcaneId [number]

Id de l'arcane.

callback(err [object], isIn [bool])
  • chevron_right Message d'erreur (null si aucune erreur).
  • chevron_right true: l'arcane est dans la page. Sinon false.
updatePage(field, data, id, callback)

Met à jour le champ "field" d'une page avec la valeur "data".

field [string]

Champ de la base de données à modifier.

data [any]

Nouvelle valeur du champ.

id [number]

Id de la page.

callback(err [object])
  • chevron_right Message d'erreur (null si aucune erreur).
updatePages(field, data, ids, callback)

Met à jour le champ "field" de plusieurs pages avec les valeurs "data".

field [string]

Champ de la base de données à modifier.

data [any]

Nouvelles valeurs du champ pour chaque page.

ids [number]

Id des pages.

callback(err [object])
  • chevron_right Message d'erreur (null si aucune erreur).
recommendation(id, user, callback)

Calcul les meilleurs recommandations pour une page d'un utilisateur.

id [number]

Id de la page.

user [object]

Objet représentant l'utilisateur.

callback(err [object], arcanes [array])
  • chevron_right Message d'erreur (null si aucune erreur).
  • chevron_right Tableau contenant les "MAX_RECOMMENDATION" meilleurs arcanes possibles pour cette page.
randomRecommendation(arcanes, n)

Retourne n recommandations aléatoires (quand aucune recommandation pertinante n'est disponible).

arcanes [array]

Tableau d'arcanes recommandables.

n [number]

Nombre maximum d'arcanes à retourner.

return [array]

Tableau d'objets représentant des arcanes.

getBetterRecommendation(prob)

Retourne les valeurs de recommandations triées en ordre décroissant.

prob [array]

Tableau de valeurs de recommandation.

return [array]

Tableau de valeurs de recommandation trié.

updateSimilarity(a, pageId, arcaneId, callback)

Met à jour les valeurs d'appartenance des arcanes aux pages et de similarité entre les pages après un ajout ou une suppression d'arcane.

a [number]

Modification de la valeur d'appartenance.

pageId [number]

Id de la page.

arcaneId [number]

Id de l'arcane.

callback(err [object])
  • chevron_right Message d'erreur (null si aucune erreur).
getPagesSim(pageId, callback)

Retourne les valeurs de similarité pour une page.

pageId [number]

Id de la page.

callback(err [object])
  • chevron_right Message d'erreur (null si aucune erreur).
removeSimilarity(pageId, callback)

Supprime les valeurs de similarité quand une page est supprimée.

pageId [number]

Id de la page supprimée.

callback(err [object])
  • chevron_right Message d'erreur (null si aucune erreur).

user

User

Objet représentant l'utilisateur.

username [string]

Nom d'utilisateur (unique).

email [string]

Adresse e-mail de l'utilisateur (unique).

password [string]

Mot de passe utilisé pour l'authentification.

id [number]

Identifiant de l'utilisateur dans la base de données.

addUser(newUser, callback)

Vérifie si les informations de l'utilisateur sont valides (username et email unique), chiffre le mot de passe et ajoute l'utilisateur à la base de données.

newUser [object]

Objet représentant l'utilisateur.

callback(err [object], result [object])
  • chevron_right Message d'erreur (null si aucune erreur).
  • chevron_right Objet confirmant la réussite de l'ajout.
getUser(field, data, callback)

Retourne un utilisateur selon le champ et la valeur renseignée.

field [string]

Nom du champ de la table "user".

data [any]

Valeur permettant d'identifier l'utilisateur.

callback(err [object], user [object])
  • chevron_right Message d'erreur (null si aucune erreur).
  • chevron_right Objet représentant l'utilisateur.
getUserPages(id, callback)

Retourne un tableau contenant les id des pages de l'utilisateur.

id [number]

Id de l'utilisateur.

callback(err [object], pages [array])
  • chevron_right Message d'erreur (null si aucune erreur).
  • chevron_right Tableau des id des pages.
getUserWorkspaces(id, callback)

Retourne un tableau contenant les id des espaces de travail de l'utilisateur.

id [number]

Id de l'utilisateur.

callback(err [object], workspaces [array])
  • chevron_right Message d'erreur (null si aucune erreur).
  • chevron_right Tableau des id des espaces de travail.
getUserElements(id, callback)

Retourne un tableau contenant les éléments de l'utilisateur.

id [number]

Id de l'utilisateur.

callback(err [object], elements [array])
  • chevron_right Message d'erreur (null si aucune erreur).
  • chevron_right Tableau des éléments.
getUserAura(id, callback)

Retourne le montant d'aura de l'utilisateur.

id [number]

Id de l'utilisateur.

callback(err [object], aura [number])
  • chevron_right Message d'erreur (null si aucune erreur).
  • chevron_right Montant d'aura de l'utilisateur.
updateAura(id, sumVal, callback)

Met à jour le montant d'aura de l'utilisateur.

id [number]

Id de l'utilisateur.

sumVal [number]

Montant d'aura supplémentaire (peut être négatif).

callback(err [object], aura [number])
  • chevron_right Message d'erreur (null si aucune erreur).
  • chevron_right nouveau montant d'aura de l'utilisateur.
updateUser(field, data, id, callback)

Met à jour un champ de l'utilisateur.

field [string]

Nom du champ de la table "user".

data [any]

Valeur du champ à modifier.

id [number]

Id de l'utilisateur.

callback(err [object])
  • chevron_right Message d'erreur (null si aucune erreur).
addWorkspace(idUser, newWorkspace, callback)

Ajoute un espace de travail pour un utilisateur.

idUser [number]

Id de l'utilisateur.

newWorkspace [object]

Id et nom de l'espace de travail.

callback(err [object])
  • chevron_right Message d'erreur (null si aucune erreur).
addPage(idUser, newPage, callback)

Ajoute une page pour un utilisateur.

idUser [number]

Id de l'utilisateur.

newPage [object]

Id et nom de la page.

callback(err [object])
  • chevron_right Message d'erreur (null si aucune erreur).
comparePassword(candidate, hash, callback)

Vérifie la validité du mot de passe au moment de l'authentification.

candidate [string]

Mot de passe entré par l'utilisateur.

hash [string]

Mot de passe chiffré dans la base de données.

callback(err [object], isMatch [bool])
  • chevron_right Message d'erreur (null si aucune erreur).
  • chevron_right true: le mot de passe concorde avec celui enregistré. Sinon false.
updateAllUsersAura(callback)

Appelé automatiquement toutes les 2h pour remonter le montant d'aura des utilisateurs.

callback(err [object])
  • chevron_right Message d'erreur (null si aucune erreur).

workspace

Workspace

Objet représentant un espace de travail.

name [string]

Nom de l'espace de travail.

author [string]

Nom d'utilisateur de l'auteur de cet espace de travail.

content [object]

Objet représentant une formule.

id [number]

Identifiant de l'espace de travail dans la base de données.

getWorkspace(id, callback)

Retourne un espace de travail d'après son id.

id [number]

Id de l'espace de travail.

callback(err [object], workspace [object])
  • chevron_right Message d'erreur (null si aucune erreur).
  • chevron_right Objet représentant un espace de travail.
createWorkspace(name, author, formula, callback)

Créé un nouvel espace de travail.

name [string]

Nom de l'espace de travail.

author [string]

Nom de l'utilisateur auteur de cet espace de travail.

formula [object]

Objet représentant une formule.

callback(err [object], workspace [object])
  • chevron_right Message d'erreur (null si aucune erreur).
  • chevron_right Objet représentant l'espace de travail créé.
deleteWorkspace(id, callback)

Supprime un espace de travail d'après son id.

id [number]

Id de l'espace de travail.

callback(err [object])
  • chevron_right Message d'erreur (null si aucune erreur).
updateWorkspace(field, data, id, callback)

Met à jour un champ de la table "workspace".

field [string]

Champ de la table.

data [any]

Nouvelle valeur du champ.

id [number]

Id de l'espace de travail.

callback(err [object])
  • chevron_right Message d'erreur (null si aucune erreur).
duplicateWorkspace(newName, id, callback)

Duplique un espace de travail.

newName [string]

Nom de la copie.

id [number]

Id de l'espace de travail d'origine.

callback(err [object], workspace [object])
  • chevron_right Message d'erreur (null si aucune erreur).
  • chevron_right Object représentant la copie.

formula

mass

Tableau listant les fonctions de masse du synthétiseur.

ton

Tableau listant les fonctions de timbre du synthétiseur.

mod

Tableau listant les modulateurs du synthétiseur.

base

Objet représentant la formule de base à la création d'un nouvel espace de travail.

baseElements

Tableau d'initialisation des éléments utilisé à la création d'un nouvel utilisateur.

generateFormula(content, callback)

Transforme un objet représentant une formule en une chaîne de caractère interprétable par le synthétiseur.

content [object]

Objet représentant une formule.

callback(formula [string])
  • chevron_right Formule sous forme d'une chaîne de caractère.

tools

routeError(err, res, callback)

Permet de rediriger l'utilisateur vers une page d'erreur en cas d'erreur sur le serveur.

err [object]

Message d'erreur (null si aucune erreur).

res [object]

Objet d'Express JS utilisé pour répondre à une requête.

callback(formula [string])
  • chevron_right Formule sous forme d'une chaîne de caractère.
randi(max)

Retourne un entier aléatoire entre 0 et max

addArcaneToPage(pageName, user, arcaneId, callback)

Ajoute un arcane à une page.

pageName [string]

Nom de la page.

user [object]

Objet représentant l'utilisateur.

arcaneId [number]

Id de l'arcane.

callback(err [object])
  • chevron_right Message d'erreur (null si aucune erreur).
getElementsOf(content)

Retourne un tableau des éléments contenu dans une formule.

content [object]

Objet représentant une formule.

return [array]

Tableau des éléments.

receiveAuraForRecommendation(arcaneId, currentUser, callback)

Met à jour la nouvelle valeur d'aura de l'utilisateur ayant créé l'arcane "arcaneId" et du "currentUser" après que celui-ci ai ajouté une recommandation.

arcaneId [number]

Id de l'arcane.

currentUser [object]

Objet représentant l'utilisateur ayant récupéré l'arcane.

callback(err [object], aura [number])
  • chevron_right Message d'erreur (null si aucune erreur).
  • chevron_right Nouveau montant d'aura de "currentUser".
computeElemQuantity(userElem, used, q)

Met à jour la propriété "quantity" des éléments de "userElem" en fonction de "used" et q

userElem [array]

Tableau des éléments d'un utilisateur.

used [array]

Tableau des éléments utilisés dans une formule.

q [number]

Valeur de modification de la quantité (1 ou -1).

elementsCost(elem)

Calcul le coût d'une formule en fonction des éléments utilisés

elem [array]

Tableau des éléments utilisés dans une formule.

return [number]

Coût de la formule.