0 and [$objet, $id_objet] = explode('|', $associer_objet) and $id_objet > 0 ) { $valeurs['statut'] = 'publie'; include_spip('inc/config'); if (!empty(lire_config('albums/utiliser_titre_defaut'))) { $valeurs['titre'] = generer_info_entite($id_objet, $objet, 'titre', '*'); } } return $valeurs; } /** * Vérifications du formulaire d'édition d'un album * * Vérifier les champs postés et signaler d'éventuelles erreurs * * @uses formulaires_editer_objet_verifier() * * @param int|string $id_album * Identifiant de l'album. 'new' pour un nouvel album. * @param string $retour * URL de redirection après le traitement * @param string $associer_objet * Éventuel `objet|x` indiquant de lier le album créé à cet objet, * tel que `article|3` * @param int $lier_trad * Identifiant éventuel d'un album 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 de l'album, 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_album_verifier_dist($id_album = 'new', $retour = '', $associer_objet = '', $lier_trad = 0, $config_fonc = '', $row = [], $hidden = '') { return formulaires_editer_objet_verifier('album', $id_album, []); } /** * Traitement du formulaire d'édition d'un album * * Traiter les champs postés * * @uses formulaires_editer_objet_traiter() * * @param int|string $id_album * Identifiant de l'album. 'new' pour un nouvel album. * @param string $retour * URL de redirection après le traitement * @param string $associer_objet * Éventuel `objet|x` indiquant de lier le album créé à cet objet, * tel que `article|3` * @param int $lier_trad * Identifiant éventuel d'un album 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 de l'album, 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_album_traiter_dist($id_album = 'new', $retour = '', $associer_objet = '', $lier_trad = 0, $config_fonc = '', $row = [], $hidden = '') { // Traitements génériques $res = formulaires_editer_objet_traiter('album', $id_album, '', $lier_trad, $retour, $config_fonc, $row, $hidden); // S'il y a un objet à associer // Nb : il peut avoir un id négatif, c'est voulu if ( $id_album = (int) $res['id_album'] and $associer_objet and substr_count($associer_objet, '|') > 0 and [$objet, $id_objet] = explode('|', $associer_objet) ) { include_spip('action/editer_liens'); objet_associer(['album' => $id_album], [$objet => $id_objet]); if (isset($res['redirect'])) { $res['redirect'] = ancre_url(parametre_url($res['redirect'], 'id_album', '', '&'), 'album' . $res['id_album']); } } return $res; }