API Articles

Un article de OviWiki.


Sommaire

Introduction

Cette API, disponible à partir de la version 6.7.0 d'Ovidentia, permet de créer des catégories, des thèmes, des brouillons d'articles et des articles. Son utilisation nécessite l'inclusion du fichier artapi.php comme ceci:

require_once $GLOBALS['babInstallPath'].'utilit/artapi.php';


bab_addTopicsCategory()

Cette fonction permet de créer une catégorie d'articles. Retourne l'ID de la catégorie créée. Sinon false.

function bab_addTopicsCategory($name, $description, $benabled, $template, $disptmpl, $topcatid, $dgowner=0)
  • $name :
    Libellé de la catégorie d'articles
  • $description :
    Description de la catégorie d'articles
  • $benabled :
    Active ou non ('Y'/'N')
  • $template :
    Nom du template de la section
  • $disptmpl :
    Nom du template d'affichage
  • $topcatid :
    ID de la catégorie d'articles parent
  • $dgowner :
    ID de la délégation. Par défaut O.



bab_updateTopicsCategory()

Image:warning.png Cette fonction est disponible à partir de Ovidentia 7.4.0

Cette fonction permet de modifier une catégorie d'articles. Retourne un booléen.

function bab_updateTopicsCategory($id_category, $name, $description, $benabled, $template, $disptmpl, $topcatid, $dgowner=0)
  • $name :
    Libellé de la catégorie d'articles
  • $description :
    Description de la catégorie d'articles
  • $benabled :
    Active ou non ('Y'/'N')
  • $template :
    Nom du template de la section
  • $disptmpl :
    Nom du template d'affichage
  • $topcatid :
    ID de la catégorie d'articles parent
  • $dgowner :
    ID de la délégation. Par défaut O.

Tout les paramètres sauf $id_category peuvent être remplacés par null si il ne faut pas effectuer de modification pour le paramètre

bab_addTopic()

Cette fonction permet de créer un thème d'articles. Retourne l'ID du thème créé. Sinon 0.

bab_addTopic($name, $description, $idCategory, &$error, $topicArr = array())
  • $name :
    Libellé du thème d'articles
  • $description :
    Description du thème d'articles
  • $idCategory :
    ID de la catégorie d'articles à laquelle sera attaché le thème
  • $error :
    Variable passée par référence et, en cas d'erreur, initialisée par le système avec un libellé d'erreur
  • $topicArr :
    Tableau associatif permettant de spécifier d'autres paramètres pour initialiser le thème
    • "idsaart" :
      ID du schéma d'approbation des articles. Si pas d'approbation 0. ( Par défaut 0 )
    • "idsacom" :
      ID du schéma d'approbation des commentaires. Si pas d'approbation 0. ( Par défaut 0 )
    • "idsa_update" :
      ID du schéma d'approbation de modification des articles. Si pas d'approbation 0. ( Par défaut 0 )
    • "notify" :
      'Y' si on souhaite la notification des membres. 'N' sinon. ( Par défaut 'N' )
    • "lang" :
      Langue de l'article. ( Par défaut la langue courante est utilisée )
    • "article_tmpl" :
      Template d'article. ( Par défaut aucun )
    • "display_tmpl" :
      Template d'affichage. ( Par défaut aucun )
    • "restrict_access" :
      'Y' si on souhaite activer la restriction d'articles. 'N' sinon. ( Par défaut 'N' )
    • "allow_hpages" :
      'Y' si on souhaite permettre aux auteurs de proposer leurs articles pour les pages d'accueil. 'N' sinon. ( Par défaut 'N' )
    • "allow_pubdates" :
      'Y' si on souhaite permettre aux auteurs de spécifier une date de publication. 'N' sinon. ( Par défaut 'N' )
    • "allow_attachments" :
      'Y' si on souhaite permettre aux auteurs de joindre des documents à leurs articles. 'N' sinon. ( Par défaut 'N' )
    • "allow_update" :
      'Y' si on souhaite permettre aux auteurs de modifier leurs articles. 'N' sinon. ( Par défaut 'N' )
    • "allow_manupdate" :
      'Y' si on souhaite permettre aux gestionnaires de modifier leurs articles. 'N' sinon. ( Par défaut 'N' )
    • "max_articles" :
      Nombre d'articles à afficher sur une page.( Par défaut 10 )
    • "auto_approbation" :
      'Y' si on souhaite que le système approuve automatiquement les auteurs s'ils font partie du schéma d'approbation. 'N' sinon. ( Par défaut 'N' )
    • "busetags" :
      'Y' si on souhaite l'utilisation des mots clés. 'N' sinon. ( Par défaut 'N' )




bab_updateTopic()

Image:warning.png Cette fonction est disponible à partir de Ovidentia 7.4.0

Cette fonction permet de modifier un thème d'articles. Retourne l'ID du thème modifié. Sinon 0.

bab_updateTopic($id_topic, $name, $description, $idCategory, &$error, $topicArr = array())
  • $id_topic :
    ID du thème a modifier
  • $name :
    Libellé du thème d'articles
  • $description :
    Description du thème d'articles
  • $idCategory :
    ID de la catégorie d'articles à laquelle sera attaché le thème
  • $error :
    Variable passée par référence et, en cas d'erreur, initialisée par le système avec un libellé d'erreur
  • $topicArr :
    Tableau associatif permettant de spécifier d'autres paramètres pour initialiser le thème
    • "idsaart" :
      ID du schéma d'approbation des articles. Si pas d'approbation 0. ( Par défaut 0 )
    • "idsacom" :
      ID du schéma d'approbation des commentaires. Si pas d'approbation 0. ( Par défaut 0 )
    • "idsa_update" :
      ID du schéma d'approbation de modification des articles. Si pas d'approbation 0. ( Par défaut 0 )
    • "notify" :
      'Y' si on souhaite la notification des membres. 'N' sinon. ( Par défaut 'N' )
    • "lang" :
      Langue de l'article. ( Par défaut la langue courante est utilisée )
    • "article_tmpl" :
      Template d'article. ( Par défaut aucun )
    • "display_tmpl" :
      Template d'affichage. ( Par défaut aucun )
    • "restrict_access" :
      'Y' si on souhaite activer la restriction d'articles. 'N' sinon. ( Par défaut 'N' )
    • "allow_hpages" :
      'Y' si on souhaite permettre aux auteurs de proposer leurs articles pour les pages d'accueil. 'N' sinon. ( Par défaut 'N' )
    • "allow_pubdates" :
      'Y' si on souhaite permettre aux auteurs de spécifier une date de publication. 'N' sinon. ( Par défaut 'N' )
    • "allow_attachments" :
      'Y' si on souhaite permettre aux auteurs de joindre des documents à leurs articles. 'N' sinon. ( Par défaut 'N' )
    • "allow_update" :
      'Y' si on souhaite permettre aux auteurs de modifier leurs articles. 'N' sinon. ( Par défaut 'N' )
    • "allow_manupdate" :
      'Y' si on souhaite permettre aux gestionnaires de modifier leurs articles. 'N' sinon. ( Par défaut 'N' )
    • "max_articles" :
      Nombre d'articles à afficher sur une page.( Par défaut 10 )
    • "auto_approbation" :
      'Y' si on souhaite que le système approuve automatiquement les auteurs s'ils font partie du schéma d'approbation. 'N' sinon. ( Par défaut 'N' )
    • "busetags" :
      'Y' si on souhaite l'utilisation des mots clés. 'N' sinon. ( Par défaut 'N' )

bab_addArticleDraft()

Cette fonction permet de créer un brouillon d'un article. L'article n'est pas soumis. Pour le soumettre il afut appeler la fonction bab_submitArticleDraft() Retourne l'ID du brouillon. Sinon 0.

function bab_addArticleDraft( $title, $head, $body, $idTopic, &$error, $articleArr=array())
  • $title :
    Titre de l'article
  • $head :
    Introduction de l'article
  • $body :
    Sujet de l'article
  • $idTopic :
    ID du thème d'articles auquel appartiendra le brouillon d'article
  • $error :
    Variable passée par référence et, en cas d'erreur, initialisée par le système avec un libellé d'erreur
  • $articleArr :
    Tableau associatif permettant de spécifier d'autres paramètres pour initialiser le brouillon
    • "id_author" :
      ID de l'auteur. ( Par défaut ID de l'utilisateur courant )
    • "lang" :
      Langue de l'article. ( Par défaut la langue courante est utilisée )
    • "date_submission" :
      Date de soumission au format YYYY-MM-DD HH:MM:SS.( Par défaut pas de date )
    • "date_archiving" :
      Date d'archivage au format YYYY-MM-DD HH:MM:SS.( Par défaut pas de date )
    • "date_publication" :
      Date de publication au format YYYY-MM-DD HH:MM:SS.( Par défaut pas de date )
    • "hpage_private" :
      'Y' si on souhaite que l'article sera proposé en page d'accueil privée une fois soumis. 'N' sinon. ( Par défaut 'N' )
    • "hpage_public" :
      'Y' si on souhaite que l'article sera proposé en page d'accueil public une fois soumis. 'N' sinon. ( Par défaut 'N' )
    • "notify_members" :
      'Y' si on souhaite que les membres soient notifiés une fois l'article publié. 'N' sinon. ( Par défaut 'N' )
    • "update_datemodif" :
      'Y' si on souhaite que la date de modification de l'article soit mise à jour. 'N' sinon. ( Par défaut 'N' )

bab_addArticle()

Cette fonction permet de créer un article et de le soumettre. Retourne true en cas de succès. Sinon false.

function bab_addArticle( $title, $head, $body, $idTopic, &$error, $articleArr=array())
  • $title :
    Titre de l'article
  • $head :
    Introduction de l'article
  • $body :
    Sujet de l'article
  • $idTopic :
    ID du thème d'articles auquel appartiendra l'article
  • $error :
    Variable passée par référence et, en cas d'erreur, initialisée par le système avec un libellé d'erreur
  • $articleArr :
    Tableau associatif permettant de spécifier d'autres paramètres pour initialiser l'article
    • "id_author" :
      ID de l'auteur. ( Par défaut ID de l'utilisateur courant )
    • "lang" :
      Langue de l'article. ( Par défaut la langue courante est utilisée )
    • "date_submission" :
      Date de soumission au format YYYY-MM-DD HH:MM:SS.( Par défaut pas de date )
    • "date_archiving" :
      Date d'archivage au format YYYY-MM-DD HH:MM:SS.( Par défaut pas de date )
    • "date_publication" :
      Date de publication au format YYYY-MM-DD HH:MM:SS.( Par défaut pas de date )
    • "hpage_private" :
      'Y' si on souhaite que l'article sera proposé en page d'accueil privée une fois soumis. 'N' sinon. ( Par défaut 'N' )
    • "hpage_public" :
      'Y' si on souhaite que l'article sera proposé en page d'accueil public une fois soumis. 'N' sinon. ( Par défaut 'N' )
    • "notify_members" :
      'Y' si on souhaite que les membres soient notifiés une fois l'article publié. 'N' sinon. ( Par défaut 'N' )
    • "update_datemodif" :
      'Y' si on souhaite que la date de modification de l'article soit mise à jour. 'N' sinon. ( Par défaut 'N' )

bab_submitArticleDraft()

Cette fonction permet de soumettre un article brouillon. Retourne true en cas de succès. Sinon false.

function bab_submitArticleDraft($idDraft)
  • $idDraft :
    ID du brouillon d'article

bab_getTopicCategoryTitle()

Retourne le nom d'une catégorie de thèmes d'articles. Si la catégorie n'existe pas, la fonction retourne une chaîne vide

function bab_getTopicCategoryTitle($id)
  • $id :
    ID de la catégorie d'articles

bab_getTopicCategoryDescription()

Retourne la description d'une catégorie de thèmes d'articles. Si la catégorie n'existe pas, la fonction retourne une chaîne vide

function bab_getTopicCategoryDescription($id)
  • $id :
    ID de la catégorie d'articles

bab_getChildrenArticleCategoriesInformation()

Retourne la liste des catégories sous une catégorie parente. Les catégories retournées sont les premiers enfants de la parente. La fonction gère les différents droits d'accès appliqués aux thèmes.

function bab_getChildrenArticleCategoriesInformation($parentid, $delegationid, $rightaccesstable)
  • $parentid :
    ID de la catégorie d'articles parente, 0 pour lister les catégories de premier niveau
  • $delegationid :
    ID de la délégation si on veut voir uniquement les catégories d'une délégation, false si on veut toutes les catégories toutes délégations confondues

valeur false par défaut

  • $rightaccesstable :
    nom de la table d'accès sur les thèmes d'articles, false pour les droits administrateur

Valeurs :
false : droit administrateur
BAB_TOPICSCOM_GROUPS_TBL : droit de soumission de commentaires
BAB_TOPICSMAN_GROUPS_TBL : droit de gestion des thèmes
BAB_TOPICSMOD_GROUPS_TBL : droit de modification des articles
BAB_TOPICSSUB_GROUPS_TBL : droit de soumission des articles
BAB_TOPICSVIEW_GROUPS_TBL : droit de visualisation des articles (valeur par défaut)


La valeur retournée est un tableau indexé par les identifiants de catégories. Chaque ligne du tableau contient un tableau indexé contenant les champs id, title, description

bab_getParentsArticleCategory()

Retourne la liste des catégories parentes d'une catégorie dans l'ordre désiré.

function bab_getParentsArticleCategory($categoryid, $reverse=false)
  • $categoryid :
    ID de la catégorie d'articles
  • $reverse :
    valeur booléenne : true pour inverser l'ordre des résultats

valeur false par défaut


La valeur retournée est un tableau indexé par les identifiants de catégories. Chaque ligne du tableau contient un tableau indexé contenant les champs id, title, description

bab_getTopicTitle()

Retourne le nom d'un thème d'articles. Si le thème n'existe pas, la fonction retourne une chaîne vide

function bab_getTopicTitle($id)
  • $id :
    ID du thème

bab_getTopicDescription()

Retourne la description d'un thème d'articles. Si la catégorie n'existe pas, la fonction retourne une chaîne vide

  • $id :
function bab_getTopicDescription($id)
  • ID du thème

bab_getChildrenArticleTopicsInformation()

Retourne la liste des thèmes sous une catégorie parente. Les thèmes retournés sont les premiers enfants de la catégorie parente. La fonction gère les différents droits d'accès appliqués aux thèmes.

function bab_getChildrenArticleTopicsInformation($parentid, $delegationid, $rightaccesstable)
  • $parentid :
    ID de la catégorie d'articles parente
  • $delegationid :
    ID de la délégation si on veut voir uniquement les thèmes d'une délégation, false si on veut tous les thèmes toutes délégations confondues

valeur false par défaut

  • $rightaccesstable :
    nom de la table d'accès sur les thèmes d'articles, false pour les droits administrateur

Valeurs :
false : droit administrateur
BAB_TOPICSCOM_GROUPS_TBL : droit de soumission de commentaires
BAB_TOPICSMAN_GROUPS_TBL : droit de gestion des thèmes
BAB_TOPICSMOD_GROUPS_TBL : droit de modification des articles
BAB_TOPICSSUB_GROUPS_TBL : droit de soumission des articles
BAB_TOPICSVIEW_GROUPS_TBL : droit de visualisation des articles (valeur par défaut)


La valeur retournée est un tableau indexé par les identifiants de thèmes. Chaque ligne du tableau contient un tableau indexé contenant les champs id, title, description

bab_getArticleTitle()

Retourne le titre d'un article. Si l'article n'existe pas, la fonction retourne une chaîne vide

function bab_getArticleTitle($id)
  • $id :
    ID de l'article

bab_getArticleDate()

Retourne la date d'un article. Si l'article n'existe pas, la fonction retourne une chaîne vide

function bab_getArticleDate($id)
  • $id :
    ID de l'article

bab_getArticleAuthor()

Retourne le nom complet de l'auteur de l'article. Si l'article n'existe pas, la fonction retourne une chaîne vide. Si l'auteur est un utilisateur anonyme, la fonction retourne Anonymous traduit dans la langue courante.

function bab_getArticleAuthor($id)
  • $id :
    ID de l'article

bab_getChildrenArticlesInformation()

Retourne la liste des articles sous un thème parent. La fonction gère les différents droits d'accès appliqués au thème.

function bab_getChildrenArticlesInformation($topicid, $fullpath, $articletype, $rightaccesstable)
  • $topicid :
    ID du thème d'articles parent
  • $fullpath :
    booléen : ajoute le chemin de l'article (CategoriesHierarchy) dans les résultats
  • $articletype :
    Type des articles désirés (si 1 : articles & articles archivés, si 2 : uniquement les articles, si 3 : seuls les articles archivés)
  • $rightaccesstable :
    nom de la table d'accès sur le thème d'articles, false pour les droits administrateur

Valeurs :
false : droit administrateur
BAB_TOPICSCOM_GROUPS_TBL : droit de soumission de commentaires
BAB_TOPICSMAN_GROUPS_TBL : droit de gestion des thèmes
BAB_TOPICSMOD_GROUPS_TBL : droit de modification des articles
BAB_TOPICSSUB_GROUPS_TBL : droit de soumission des articles
BAB_TOPICSVIEW_GROUPS_TBL : droit de visualisation des articles (valeur par défaut)


La valeur retournée est un tableau indexé par les identifiants d'articles. Chaque ligne du tableau contient un tableau indexé contenant les champs id, idtopic, title, head, body, idauthor, author, sqldate, date, archive (booléen)


bab_getCommentTitle()

Retourne le titre d'un commentaire. Si le commentaire n'existe pas, la fonction retourne une chaîne vide.

function bab_getCommentTitle($id)
  • $id :
    ID du commentaire


bab_addImageToCategory()

Associe une image à une catégorie.

function bab_addImageToCategory($iIdCategory, $sName, $sRelativePath)


bab_updateImageCategory()

Met à jour l'image associée d'une catégorie.

function bab_updateImageCategory($iIdImage, $iIdCategory, $sName, $sRelativePath)


bab_getImageCategory()

Récupère l'image associée d'une catégorie.

function bab_getImageCategory($iIdCategory)


bab_deleteImageCategory()

Supprime l'image associée d'une catégorie.

function bab_deleteImageCategory($iIdCategory)


bab_addImageToTopic()

Ajoute une image à un thème.

function bab_addImageToTopic($iIdTopic, $sName, $sRelativePath)


bab_updateImageTopic()

Met à jour l'image associée d'un thème.

function bab_updateImageTopic($iIdImage, $iIdTopic, $sName, $sRelativePath)


bab_getImageTopic()

Récupère l'image associée d'un thème.

function bab_getImageTopic($iIdTopic)


bab_deleteImageTopic()

Supprime l'image associée d'un thème.

function bab_deleteImageTopic($iIdTopic)


bab_addImageToDraftArticle()

Ajoute une image à un article brouillon.

function bab_addImageToDraftArticle($iIdDraft, $sName, $sRelativePath)


bab_getImageDraftArticle()

Met à jour l'image associée d'un article brouillon.

function bab_getImageDraftArticle($iIdDraft)


bab_deleteImageDraftArticle()

Supprime l'image associée d'un article brouillon.

function bab_deleteImageDraftArticle($iIdDraft)


bab_addImageToArticle()

Ajoute une image à un article.

function bab_addImageToArticle($iIdArticle, $sName, $sRelativePath)


bab_updateImageArticle()

Met à jour l'image d'un article.

function bab_updateImageArticle($iIdImage, $iIdArticle, $sName, $sRelativePath)


bab_getImageArticle()

Récupère l'image associée d'un article.

function bab_getImageArticle($iIdArticle)


bab_deleteImageArticle()

Supprime l'image d'un article.

function bab_deleteImageArticle($iIdArticle)