podcast/formulaires/editer_chapitre.php

136 lines
4.8 KiB
PHP
Raw Normal View History

2021-02-11 09:42:41 +01:00
<?php
/**
* Gestion du formulaire de d'édition de chapitre
*
* @plugin podcast
* @copyright 2021
* @author chankalan,vcalame
* @licence GNU/GPL
* @package SPIP\Podcast\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_podcast
* 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_podcast = 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_podcast
* 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_podcast = 0, $retour = '', $lier_trad = 0, $config_fonc = '', $row = array(), $hidden = '') {
$valeurs = formulaires_editer_objet_charger('chapitre', $id_chapitre, $id_podcast, $lier_trad, $retour, $config_fonc, $row, $hidden);
if (!$valeurs['id_podcast']) {
$valeurs['id_podcast'] = $id_podcast;
}
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_podcast
* 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_podcast = 0, $retour = '', $lier_trad = 0, $config_fonc = '', $row = array(), $hidden = '') {
$erreurs = array();
$erreurs = formulaires_editer_objet_verifier('chapitre', $id_chapitre, array('titre', 'id_podcast'));
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_podcast
* 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_podcast = 0, $retour = '', $lier_trad = 0, $config_fonc = '', $row = array(), $hidden = '') {
$retours = formulaires_editer_objet_traiter('chapitre', $id_chapitre, $id_podcast, $lier_trad, $retour, $config_fonc, $row, $hidden);
return $retours;
}