Fichier ecrire/base/objets.php

Fonctions relatives aux objets éditoriaux et SQL

Source

Proposer une amélioration

Liste des fonctions

APIs

  • articles -> id_article
  • article -> id_article
  • spip_articles -> id_article
string id_table_objet( string $type , string $serveur = '' )

Paramètres

  1. string $type

    Nom de la table SQL ou de l'objet

  2. string $serveur = ''

    Nom du connecteur

Retour

  • string

    Nom de la clé primaire

API

Package

Proposer une amélioration
array lister_tables_auxiliaires( )

Retour

  • array

    Liste et descriptions des tables auxiliaires

API

Package

Proposer une amélioration

Si un argument est fourni, on ne renvoie que les infos de cette table. Elle est auto-declarée si inconnue jusqu'alors.

array | boolean lister_tables_objets_sql( string $table_sql = null , array $desc = array() )

Paramètres

  1. string $table_sql = null

    table_sql demandee explicitement

  2. array $desc = array()

    description connue de la table sql demandee

Retour

  • array | boolean

API

Package

Proposer une amélioration
array lister_tables_principales( )

Retour

  • array

    Liste et descriptions des tables principales

API

Package

Proposer une amélioration
  • articles -> article
  • spip_articles -> article
  • id_article -> article
string objet_type( string $table_objet , string $serveur = '' )

Paramètres

  1. string $table_objet

    Nom de l'objet ou de la table SQL

  2. string $serveur = ''

    Nom du connecteur

Retour

  • string

    Type de l'objet

API

Package

Proposer une amélioration
  • spip_articles -> articles
  • id_article -> articles
  • article -> articles
string table_objet( string $type , string $serveur = '' )

Paramètres

  1. string $type

    Nom de la table SQL (le plus souvent) Tolère un nom de clé primaire.

  2. string $serveur = ''

    Nom du connecteur

Retour

  • string

    Nom de l'objet

API

Package

Proposer une amélioration
  • articles -> spip_articles
  • article -> spip_articles
  • id_article -> spip_articles
string table_objet_sql( string $type , string $serveur = '' )

Paramètres

  1. string $type

    Nom ou type de l'objet Tolère un nom de clé primaire.

  2. string $serveur = ''

    Nom du connecteur

Retour

  • string

    Nom de la table SQL

API

Package

Proposer une amélioration

Internes

void array_set_merge( array & $table , string $index , array $valeur )

Paramètres

  1. array & $table

    Tableau dont on veut compléter une clé

  2. string $index

    Clé du tableau que l'on souhaite compléter

  3. array $valeur

    Sous tableau à merger dans la clé.

Retour

  • void

Package

Proposer une amélioration
void base_auxiliaires( array & $tables_auxiliaires )

Paramètres

  1. array & $tables_auxiliaires

    Description des tables auxiliaires déjà déclarées

Retour

  • void

Package

Proposer une amélioration

Tables principales, hors objets éditoriaux.

void base_serial( array & $tables_principales )

Paramètres

  1. array & $tables_principales

    Description des tables principales déjà déclarées

Retour

  • void

Package

Proposer une amélioration

Cette liste n'est calculée qu'une fois par serveur pour l'ensemble du hit

array lister_tables_spip( string $serveur = '' )

Paramètres

  1. string $serveur = ''

    Nom du fichier de connexion à la base de données

Retour

  • array

    Couples (nom de la table SQL => même nom, sans 'spip_' devant)

Package

Proposer une amélioration

Cette liste n'est calculée qu'une fois par serveur pour l'ensemble du hit

array lister_toutes_tables( string $serveur )

Paramètres

  1. string $serveur

    Nom du fichier de connexion à la base de données

Retour

  • array

    Couples (nom de la table SQL => même nom)

Package

Proposer une amélioration

On se base pour cela sur sa declaration de statut pour des cas particuliers non declarables, on permet de fournir une fonction base_xxxx_test_si_publie qui sera appele par la fonction

boolean objet_test_si_publie( string $objet , integer $id_objet , string $serveur = '' )

Paramètres

  1. string $objet
  2. integer $id_objet
  3. string $serveur = ''

Retour

  • boolean

Package

Proposer une amélioration

titre date statut tables_jointures

array renseigner_table_objet_interfaces( $table_sql , & $infos )

Paramètres

  1. $table_sql
  2. & $infos

Retour

  • array

Package

Proposer une amélioration
  • table_objet
  • table_objet_surnoms
  • type
  • type_surnoms
  • url_voir
  • url_edit
  • icone_objet

  • texte_retour
  • texte_modifier
  • texte_creer
  • texte_creer_associer
  • texte_ajouter
  • texte_objets
  • texte_objet

  • info_aucun_objet
  • info_1_objet
  • info_nb_objets

  • texte_logo_objet
  • texte_langue_objet
  • texte_definir_comme_traduction_objet

  • principale
  • champs_contenu : utlisé pour générer l'affichage par défaut du contenu
  • editable
  • champs_editables : utilisé pour prendre en compte le post lors de l'édition

  • champs_versionnes

L'objet doit définir de lui même ces champs pour gérer des statuts :

- statut
- statut_images
- statut_titres
- statut_textes_instituer
- texte_changer_statut
- aide_changer_statut
  • modeles : permet de declarer les modeles associes a cet objet

Les infos non renseignées sont auto-déduites par conventions ou laissées vides

array renseigner_table_objet_sql( string $table_sql , array & $infos )

Paramètres

  1. string $table_sql
  2. array & $infos

Retour

  • array

Package

Proposer une amélioration