libreavous/formulaires/editer_chapitre.php
chankalan db8a2ffede préparation pour l'import (pas encopre fonctionnel) : ajout des champs extras + objet chapitre
utilisation des compositions pour les différentes pages : émissions,
chroniques
2021-05-11 22:18:36 +02:00

138 lines
4.8 KiB
PHP

<?php
/**
* Gestion du formulaire de d'édition de chapitre
*
* @plugin chapitre
* @copyright 2021
* @author chankalan,vcalame
* @licence GNU/GPL
* @package SPIP\Chapitre\Formulaires
*/
if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
include_spip('inc/actions');
include_spip('inc/editer');
/**
* Identifier le formulaire en faisant abstraction des paramètres qui ne représentent pas l'objet edité
*
* @param int|string $id_chapitre
* Identifiant du chapitre. 'new' pour un nouveau chapitre.
* @param int $id_article
* Identifiant de l'objet parent (si connu)
* @param string $retour
* URL de redirection après le traitement
* @param int $lier_trad
* Identifiant éventuel d'un chapitre source d'une traduction
* @param string $config_fonc
* Nom de la fonction ajoutant des configurations particulières au formulaire
* @param array $row
* Valeurs de la ligne SQL du chapitre, si connu
* @param string $hidden
* Contenu HTML ajouté en même temps que les champs cachés du formulaire.
* @return string
* Hash du formulaire
*/
function formulaires_editer_chapitre_identifier_dist($id_chapitre = 'new', $id_article = 0, $retour = '', $lier_trad = 0, $config_fonc = '', $row = array(), $hidden = '') {
return serialize(array(intval($id_chapitre)));
}
/**
* Chargement du formulaire d'édition de chapitre
*
* Déclarer les champs postés et y intégrer les valeurs par défaut
*
* @uses formulaires_editer_objet_charger()
*
* @param int|string $id_chapitre
* Identifiant du chapitre. 'new' pour un nouveau chapitre.
* @param int $id_article
* Identifiant de l'objet parent (si connu)
* @param string $retour
* URL de redirection après le traitement
* @param int $lier_trad
* Identifiant éventuel d'un chapitre source d'une traduction
* @param string $config_fonc
* Nom de la fonction ajoutant des configurations particulières au formulaire
* @param array $row
* Valeurs de la ligne SQL du chapitre, si connu
* @param string $hidden
* Contenu HTML ajouté en même temps que les champs cachés du formulaire.
* @return array
* Environnement du formulaire
*/
function formulaires_editer_chapitre_charger_dist($id_chapitre = 'new', $id_article = 0, $retour = '', $lier_trad = 0, $config_fonc = '', $row = array(), $hidden = '') {
$valeurs = formulaires_editer_objet_charger('chapitre', $id_chapitre, $id_article, $lier_trad, $retour, $config_fonc, $row, $hidden);
if (!$valeurs['id_article']) {
$valeurs['id_article'] = $id_article;
}
return $valeurs;
}
/**
* Vérifications du formulaire d'édition de chapitre
*
* Vérifier les champs postés et signaler d'éventuelles erreurs
*
* @uses formulaires_editer_objet_verifier()
*
* @param int|string $id_chapitre
* Identifiant du chapitre. 'new' pour un nouveau chapitre.
* @param int $id_article
* Identifiant de l'objet parent (si connu)
* @param string $retour
* URL de redirection après le traitement
* @param int $lier_trad
* Identifiant éventuel d'un chapitre source d'une traduction
* @param string $config_fonc
* Nom de la fonction ajoutant des configurations particulières au formulaire
* @param array $row
* Valeurs de la ligne SQL du chapitre, si connu
* @param string $hidden
* Contenu HTML ajouté en même temps que les champs cachés du formulaire.
* @return array
* Tableau des erreurs
*/
function formulaires_editer_chapitre_verifier_dist($id_chapitre = 'new', $id_article = 0, $retour = '', $lier_trad = 0, $config_fonc = '', $row = array(), $hidden = '') {
$erreurs = formulaires_editer_objet_verifier('chapitre', $id_chapitre, array('titre', 'id_article'));
return $erreurs;
}
/**
* Traitement du formulaire d'édition de chapitre
*
* Traiter les champs postés
*
* @uses formulaires_editer_objet_traiter()
*
* @param int|string $id_chapitre
* Identifiant du chapitre. 'new' pour un nouveau chapitre.
* @param int $id_article
* Identifiant de l'objet parent (si connu)
* @param string $retour
* URL de redirection après le traitement
* @param int $lier_trad
* Identifiant éventuel d'un chapitre source d'une traduction
* @param string $config_fonc
* Nom de la fonction ajoutant des configurations particulières au formulaire
* @param array $row
* Valeurs de la ligne SQL du chapitre, si connu
* @param string $hidden
* Contenu HTML ajouté en même temps que les champs cachés du formulaire.
* @return array
* Retours des traitements
*/
function formulaires_editer_chapitre_traiter_dist($id_chapitre = 'new', $id_article = 0, $retour = '', $lier_trad = 0, $config_fonc = '', $row = array(), $hidden = '') {
$retours = formulaires_editer_objet_traiter('chapitre', $id_chapitre, $id_article, $lier_trad, $retour, $config_fonc, $row, $hidden);
return $retours;
}