Compare commits

...

No commits in common. 'master' and 'v1' have entirely different histories.
master ... v1

  1. 12
      .gitattributes
  2. 206
      diogene_gerer_auteurs_pipelines.php
  3. 52
      formulaires/diogene_ajouter_medias_gerer_auteurs.html
  4. 3
      images/diogene-xx.svg
  5. 19
      lang/diogene_gerer_auteurs.xml
  6. 20
      lang/diogene_gerer_auteurs_en.php
  7. 25
      lang/diogene_gerer_auteurs_es.php
  8. 20
      lang/diogene_gerer_auteurs_fr.php
  9. 25
      lang/diogene_gerer_auteurs_pt_br.php
  10. 20
      lang/paquet-diogene_gerer_auteurs.xml
  11. 16
      lang/paquet-diogene_gerer_auteurs_en.php
  12. 16
      lang/paquet-diogene_gerer_auteurs_es.php
  13. 14
      lang/paquet-diogene_gerer_auteurs_fr.php
  14. 16
      lang/paquet-diogene_gerer_auteurs_pt_br.php
  15. 25
      paquet.xml
  16. 47
      plugin.xml
  17. 49
      prive/diogene_gerer_auteurs_avant_formulaire.html
  18. 25
      selecteur_auteur.html

12
.gitattributes

@ -2,14 +2,8 @@
/diogene_gerer_auteurs_pipelines.php -text
formulaires/diogene_ajouter_medias_gerer_auteurs.html -text
images/diogene-128.png -text svneol=unset#image/png
lang/diogene_gerer_auteurs.xml -text
lang/diogene_gerer_auteurs_en.php -text
lang/diogene_gerer_auteurs_es.php -text
lang/diogene_gerer_auteurs_fr.php -text
lang/diogene_gerer_auteurs_pt_br.php -text
lang/paquet-diogene_gerer_auteurs.xml -text
lang/paquet-diogene_gerer_auteurs_en.php -text
lang/paquet-diogene_gerer_auteurs_es.php -text
lang/paquet-diogene_gerer_auteurs_fr.php -text
lang/paquet-diogene_gerer_auteurs_pt_br.php -text
/paquet.xml -text
/plugin.xml -text
prive/diogene_gerer_auteurs_avant_formulaire.html -text
/selecteur_auteur.html -text

206
diogene_gerer_auteurs_pipelines.php

@ -1,141 +1,96 @@
<?php
if (!defined("_ECRIRE_INC_VERSION")) return;
/**
* Plugin Diogene Auteurs
*
* Auteurs :
* kent1 (http://www.kent1.info - kent1@arscenic.info)
*
* © 2010-2014 - Distribue sous licence GNU/GPL
*
* Utilisation des pipelines par Diogene Auteurs
* Insertion de contenu avant le formulaire
* Le js du sélecteur générique
*
* @package SPIP\Diogene Auteurs\Pipelines
**/
if (!defined('_ECRIRE_INC_VERSION')) {
return;
* @param array $flux Le contexte du pipeline
* @return array $flux le contexte modifié passé aux suivants
*/
function diogene_gerer_auteurs_diogene_avant_formulaire($flux){
if(is_array(unserialize($flux['args']['champs_ajoutes'])) && in_array('auteurs',unserialize($flux['args']['champs_ajoutes'])) && ($flux['args']['type'] != 'page')){
$flux['data'] .= recuperer_fond('prive/diogene_gerer_auteurs_avant_formulaire', $flux['args']);
}
return $flux;
}
/**
* Insertion dans le pipeline diogene_ajouter_saisies (Diogène)
* Insertion dans le formulaire diogene_ajouter_saisies
*
* On ajoute la partie du formulaire concernant les auteurs si nécessaire
*
* @param array $flux
* Le contexte du pipeline
* @return array $flux
* Le contexte modifié passé aux suivants
* @param array $flux Le contexte du pipeline
* @return array $flux le contexte modifié passé aux suivants
*/
function diogene_gerer_auteurs_diogene_ajouter_saisies($flux) {
if (is_array(unserialize($flux['args']['champs_ajoutes']))
and in_array('auteurs', unserialize($flux['args']['champs_ajoutes']))) {
$objet = $flux['args']['type'];
$id_table_objet = id_table_objet($flux['args']['type']);
$id_objet = $flux['args']['contexte'][$id_table_objet];
$auteur_uniques = array();
if (is_numeric($id_objet) && intval($id_objet) > 0) {
function diogene_gerer_auteurs_diogene_ajouter_saisies($flux){
if(is_array(unserialize($flux['args']['champs_ajoutes'])) && in_array('auteurs',unserialize($flux['args']['champs_ajoutes']))){
$id_article = $flux['args']['contexte']['id_article'];
if(is_numeric($id_article)){
include_spip('inc/autoriser');
if (!autoriser('associerauteurs', $objet, $id_objet)) {
return $flux;
if(!autoriser('modifier','article',$id_article,$visiteur_session,$opt)){
return $flux;
}
$nb_auteurs = sql_countsel('spip_auteurs', 'statut < 7');
if ($nb_auteurs > 1) {
$auteurs = sql_allfetsel('auteur.id_auteur', 'spip_auteurs as auteur LEFT join spip_auteurs_liens as auteur_lien ON auteur.id_auteur=auteur_lien.id_auteur', 'auteur_lien.objet='.sql_quote($objet).' AND auteur_lien.id_objet='.intval($id_objet));
if ($GLOBALS['visiteur_session']['statut'] == '0minirezo') {
$auteur = sql_fetsel('auteur.id_auteur', 'spip_auteurs as auteur LEFT join spip_auteurs_liens as auteur_lien ON auteur.id_auteur=auteur_lien.id_auteur', 'auteur.id_auteur='.intval($GLOBALS['visiteur_session']['id_auteur']).' AND auteur_lien.objet='.sql_quote($objet).' AND auteur_lien.id_objet='.intval($id_objet));
if (is_array($auteur)) {
$flux['args']['contexte']['auteurs'][] = $auteur['id_auteur'];
}
}
if (count($auteurs) > 0) {
foreach ($auteurs as $auteur) {
$flux['args']['contexte']['auteurs'][] = $auteur['id_auteur'];
}
$nb_auteurs = sql_countsel('spip_auteurs','statut < 7');
if($nb_auteurs > 1){
$auteurs = sql_select("auteur.nom, auteur.id_auteur,auteur.statut","spip_auteurs as auteur LEFT join spip_auteurs_articles as auteur_lien USING(id_auteur)","auteur.id_auteur!=".intval($visiteur_session['id_auteur'])." AND auteur_lien.id_article=".intval($id_article));
while($auteur = sql_fetch($auteurs)){
$auteur_uniques[$auteur['id_auteur']] = $auteur['nom'];
}
if (is_array(_request('diogene_gerer_auteurs'))) {
$flux['args']['contexte']['auteurs'] = _request('diogene_gerer_auteurs');
} elseif (_request('type_diogene')) {
$flux['args']['contexte']['auteurs'] = array();
if(is_array($auteur_uniques) AND (count($auteur_uniques) > 0)){
$flux['args']['contexte']['diogene_gerer_auteurs_remove'] = $auteur_uniques;
}
$flux['data'] .= recuperer_fond('formulaires/diogene_ajouter_medias_gerer_auteurs', $flux['args']['contexte']);
}
} else {
if ($GLOBALS['visiteur_session']['statut'] == '0minirezo') {
$auteur = sql_fetsel('nom, id_auteur,statut', 'spip_auteurs', 'id_auteur='.intval($GLOBALS['visiteur_session']['id_auteur']));
$auteur_uniques[] = $auteur['id_auteur'];
$flux['data'] .= recuperer_fond('formulaires/diogene_ajouter_medias_gerer_auteurs',$flux['args']['contexte']);
}
if (count($auteur_uniques) > 0) {
$flux['args']['contexte']['auteurs'] = $auteur_uniques;
}
$flux['data'] .= recuperer_fond('formulaires/diogene_ajouter_medias_gerer_auteurs', $flux['args']['contexte']);
}
}
return $flux;
return $flux;
}
/**
* Insertion dans le pipeline diogene_traiter (Diogène)
* Insertion dans le pipeline diogene_traiter
* Fonction s'exécutant au traitement du formulaire
*
* Fonction s'exécutant au traitement du formulaire
*
* @param array $flux
* Le contexte du pipeline
* @return array $flux
* Le contexte modifié passé aux suivants
* @param array $flux Le contexte du pipeline
* @return array $flux le contexte modifié passé aux suivants
*/
function diogene_gerer_auteurs_diogene_traiter($flux) {
function diogene_gerer_auteurs_diogene_traiter($flux){
global $visiteur_session;
$id_objet = $flux['args']['id_objet'];
$type = $flux['args']['type'];
$pipeline = pipeline('diogene_objets');
if (_request('id_diogene')
and in_array($type, array_keys($pipeline))
and isset($pipeline[$type]['champs_sup']['auteurs'])) {
$table = $flux['args']['table'];
$id_table_objet = id_table_objet($type);
if($type == 'article'){
include_spip('inc/autoriser');
if (!autoriser('associerauteurs', $type, $id_objet)) {
return $flux;
if(!autoriser('modifier','article',$id_objet,$visiteur_session,$opt)){
return $flux;
}
include_spip('inc/invalideur');
include_spip('action/editer_auteur');
if(_request('diogene_gerer_id_auteurs') OR is_array(_request('diogene_gerer_auteurs_remove'))){
include_spip('inc/invalideur');
$auteurs_liste = array();
$auteurs = sql_allfetsel('auteur.id_auteur', 'spip_auteurs as auteur LEFT join spip_auteurs_liens as auteur_lien ON auteur.id_auteur=auteur_lien.id_auteur', 'auteur_lien.objet='.sql_quote($type).' AND auteur_lien.id_objet='.intval($id_objet));
foreach ($auteurs as $auteur) {
$auteurs_liste[] = $auteur['id_auteur'];
}
$auteurs = _request('diogene_gerer_auteurs');
/**
* diogene_gerer_auteurs n'est pas un array, on supprime tous les auteurs sauf soi même si on n'est pas admin
*/
if (!is_array($auteurs)) {
foreach ($auteurs_liste as $auteur) {
if(_request('diogene_gerer_id_auteurs')){
/**
* On ne peut pas s'enlever soit même des auteurs si l'on n'est pas admin
* Insertion des auteurs
*/
if ($auteur != $GLOBALS['visiteur_session']['id_auteur']
or $GLOBALS['visiteur_session']['statut'] == '0minirezo') {
auteur_dissocier($auteur, array($type => $id_objet));
suivre_invalideur("id='id_auteur/$auteur'", true);
}
include_spip('action/editer_auteurs');
$ajout = ajouter_auteur_et_rediriger('article', $id_objet, _request('diogene_gerer_id_auteurs'), '');
suivre_invalideur("id='id_auteur/"._request('diogene_gerer_id_auteurs')."'",true);
}
} else {
foreach ($auteurs as $auteur) {
if (!in_array($auteur, $auteurs_liste)
and $id_auteur = sql_getfetsel('id_auteur', 'spip_auteurs', 'id_auteur='.intval($auteur))) {
auteur_associer($auteur, array($type => $id_objet));
suivre_invalideur("id='id_auteur/$auteur'", true);
}
}
foreach ($auteurs_liste as $id_auteur) {
if (!in_array($id_auteur, $auteurs)) {
if ($id_auteur != $GLOBALS['visiteur_session']['id_auteur']
or $GLOBALS['visiteur_session']['statut'] == '0minirezo') {
auteur_dissocier($id_auteur, array($type => $id_objet));
suivre_invalideur("id='id_auteur/$id_auteur'", true);
if(is_array(_request('diogene_gerer_auteurs_remove'))){
/**
* Suppression des auteurs si demandée
*/
include_spip('action/editer_auteurs');
foreach(_request('diogene_gerer_auteurs_remove') as $id_auteur){
if(($id_auteur == $visiteur_session['id_auteur']) && ($visiteur_session['statut'] != '0minirezo')){
/**
* On ne peut pas s'enlever soit même des auteurs si l'on n'est pas admin
*/
}else{
$suppr = supprimer_auteur_et_rediriger('article', $id_objet, $id_auteur, '');
suivre_invalideur("id='id_auteur/$id_auteur'",true);
}
}
}
@ -145,20 +100,25 @@ function diogene_gerer_auteurs_diogene_traiter($flux) {
}
/**
* Insertion dans le pipeline diogene_objets (Diogène)
*
* On ajoute la possibilité d'ajouter le champ auteur dans les articles
* dans la configuration d'un Diogène
*
* @param array $flux
* La liste des champs pour les diogenes
* @return array $flux
* La liste des champs modifiée
* Insertion dans le pipeline diogene_champs_sup
* On ajoute le champ auteur dans les articles
*
* @param array $flux La liste des champs pour les diogenes
*/
function diogene_gerer_auteurs_diogene_objets($flux) {
$flux['article']['champs_sup']['auteurs'] = _T('diogene_gerer_auteurs:label_cfg_ajout_auteurs');
if (defined('_DIR_PLUGIN_PAGES')) {
$flux['page']['champs_sup']['auteurs'] = _T('diogene_gerer_auteurs:label_cfg_ajout_auteurs');
}
function diogene_gerer_auteurs_diogene_champs_sup($flux){
$flux['article']['auteurs'] = $flux['page']['auteurs'] = _T('diogene_gerer_auteurs:label_cfg_ajout_auteurs');
return $flux;
}
/**
* Insertion dans le pipeline insert_head
* On insert les js du séleceteur générique si ils ne le sont pas déjà
*.
* @param string $flux
*/
function diogene_gerer_auteurs_insert_head($flux){
include_spip('selecteurgenerique_fonctions');
$flux .= selecteurgenerique_verifier_js($flux);
return $flux;
}
?>

52
formulaires/diogene_ajouter_medias_gerer_auteurs.html

@ -1,23 +1,37 @@
#CACHE{0}
[(#REM)
Plugin Diogène Auteurs v1.x
Morceau de formulaire ajouté si on a configuré le Diogène pour lui permettre d'ajouter des auteurs
]<[(#DIV|sinon{li})] class="fieldset" id="diogene_auteurs">
<li class="fieldset" id="diogene_auteurs">
<fieldset>
<h3 class="legend"><:diogene_gerer_auteurs:form_legend:></h3>
<[(#DIV|sinon{ul})] class="editer-groupe">
<[(#DIV|sinon{li})] class="editer editer_diogene_gerer_auteurs">
<label for="diogene_gerer_auteurs"><:diogene_gerer_auteurs:label_diogene_gerer_auteurs:></label>
<p class="explication"><:diogene_gerer_auteurs:explication_diogene_gerer_auteurs:></p>
<select name="diogene_gerer_auteurs[]" id="diogene_gerer_auteurs" multiple="multiple" class="chosen">
<BOUCLE_auteurs(AUTEURS){par nom}{tout}>
<option value="#ID_AUTEUR"[(#ENV{id_article}|non)[(#ID_AUTEUR|=={#SESSION{id_auteur}}|oui)selected="selected"]][(#ID_AUTEUR|in_array{#ENV{auteurs,#ARRAY}}|oui)selected="selected"]>#NOM</option>
</BOUCLE_auteurs>
</select>
</[(#DIV|sinon{li})]>
</[(#DIV|sinon{ul})]>
<ul>
[(#SAISIE{input,diogene_gerer_auteurs,
label=<:diogene_gerer_auteurs:label_diogene_gerer_auteurs:>,
explication=<:diogene_gerer_auteurs:explication_diogene_gerer_auteurs:>})]
<li style="display:none">
<input id="diogene_gerer_id_auteurs" class="hidden" type="hidden" name="diogene_gerer_id_auteurs"/>
</li>
<B_auteur_remove>
<li class="editer_gerer_auteurs_remove">
<label><:diogene_gerer_auteurs:label_gerer_auteurs_remove:></label>
<div class="explication"><p><:diogene_gerer_auteurs:explication_gerer_auteurs_remove:></p></div>
<BOUCLE_auteur_remove(POUR){tableau #ENV**{diogene_gerer_auteurs_remove}}>
<BOUCLE_si_autoriser(CONDITION){si #SESSION{id_auteur}|=={#CLE}|et{#AUTORISER{configurer}|non}|non}>
<div class="choix">
<input type="checkbox" name="diogene_gerer_auteurs_remove[]" class="checkbox" id='champ_diogene_gerer_auteurs_remove_#COMPTEUR_BOUCLE' value='#_auteur_remove:CLE' />
<label for="champ_diogene_gerer_auteurs_remove_#COMPTEUR_BOUCLE">[(#_auteur_remove:VALEUR|typo)]</label>
</div>
</BOUCLE_si_autoriser>
</B_si_autoriser>
<div class="choix">
<input type="checkbox" name="diogene_gerer_auteurs_remove[]" class="checkbox" id='champ_diogene_gerer_auteurs_remove_#COMPTEUR_BOUCLE' value='#_auteur_remove:CLE' disabled="disabled" />
<label for="champ_diogene_gerer_auteurs_remove_#COMPTEUR_BOUCLE">[(#_auteur_remove:VALEUR|typo)]</label>
<em class="important"><:diogene_gerer_auteurs:message_impossible_supprimer_auteur:></em>
</div>
<//B_si_autoriser>
</BOUCLE_auteur_remove>
</li>
</B_auteur_remove>
</ul>
</fieldset>
</[(#DIV|sinon{li})]>
</li>

3
images/diogene-xx.svg

@ -1,3 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" width="64" height="64">
<path fill="#666" d="M8.5 43.6c3.3-9.4 6.6-13.5 17.4-21.6-1.1-.5-2-.9-3-1.3 0-.3.1-.7.1-1 5 .5 5.3-3.2 6.3-6.2.7-2.1 1.3-4.3 2.2-6.4 2.5-5.2 7.3-6 11-1.6 1.6 1.9 2.4 4.4 3.5 6.7 3.8-2.2 5.2-4.4 5.2-8 3.4-.6 7.8 3.5 8.4 8-4.6-.9-6.2 2.8-8.5 5 2.6 1.5 5.5 2.6 7.5 4.5 3.6 3.5 2.7 7.7-1.8 9.9-2.9 1.4-6 2.2-9.1 3.2-2.4.8-4.4 1.9-3.6 5.2-.3.1-.7.3-1 .4-.4-1-.9-1.9-1.6-3.5-7 12.3-17.6 17.6-29.8 20.4-2.9.7-5.5 2.1-8.5 3.2m39.9-26.3c4.6-1.2 8.8-2 12.7-3.4 2.2-.8 3.9-2.6 3.4-5.3-.5-2.6-3.6-4.8-6.7-4.9-4.1-.1-6.1 1.1-7.1 4.4-.8 2.7-1.4 5.5-2.3 9.2zM29.5 20.5c3-.7 5.3-1.5 7.6-1.8 5.4-.8 6.6-4.3 5.5-9.2-.4-2-2.9-4.2-4.9-5-2.4-.9-4.4 1.4-5.1 3.6-1.3 3.9-2.1 7.9-3.1 12.4z" />
</svg>

19
lang/diogene_gerer_auteurs.xml

@ -1,19 +0,0 @@
<traduction
module="diogene_gerer_auteurs"
id="diogene_gerer_auteurs--diogene_gerer_auteurs-1f5d4"
gestionnaire="salvatore"
url="https://trad.spip.net"
source="https://git.spip.net/spip-contrib-extensions/diogene_gerer_auteurs.git"
reference="fr">
<langue code="en" url="https://trad.spip.net/tradlang_module/diogene_gerer_auteurs?lang_cible=en" total="6" traduits="6" relire="0" modifs="0" nouveaux="0" pourcent="100.00">
<traducteur nom="Gilles" lien="https://trad.spip.net/auteur/gilles" />
</langue>
<langue code="es" url="https://trad.spip.net/tradlang_module/diogene_gerer_auteurs?lang_cible=es" total="6" traduits="6" relire="0" modifs="0" nouveaux="0" pourcent="100.00">
<traducteur nom="Raquel S. Bujaldón" lien="https://trad.spip.net/auteur/raquel-s-bujaldon" />
<traducteur nom="severo" lien="https://trad.spip.net/auteur/severo" />
</langue>
<langue code="fr" url="https://trad.spip.net/tradlang_module/diogene_gerer_auteurs?lang_cible=fr" total="6" traduits="6" relire="0" modifs="0" nouveaux="0" pourcent="100.00" />
<langue code="pt_br" url="https://trad.spip.net/tradlang_module/diogene_gerer_auteurs?lang_cible=pt_br" total="6" traduits="6" relire="0" modifs="0" nouveaux="0" pourcent="100.00">
<traducteur nom="Ricardo Porto" lien="https://trad.spip.net/auteur/ricardo-porto" />
</langue>
</traduction>

20
lang/diogene_gerer_auteurs_en.php

@ -1,25 +1,27 @@
<?php
// This is a SPIP language file -- Ceci est un fichier langue de SPIP
// extrait automatiquement de https://trad.spip.net/tradlang_module/diogene_gerer_auteurs?lang_cible=en
// extrait automatiquement de http://trad.mediaspip.net/spip.php?page=tradlang
// ** ne pas modifier le fichier **
if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
if (!defined('_ECRIRE_INC_VERSION')) return;
$GLOBALS[$GLOBALS['idx_lang']] = array(
// E
'explication_cfg_ajout_auteurs' => 'Enables to add / remove authors on articles (use the plugin "diogene auteurs")',
'explication_diogene_gerer_auteurs' => 'To add another person as author, it has to be member of the website.',
'explication_cfg_ajout_auteurs' => 'Enable to add / delete authors on articles (use the plugin diogene_gerer_auteurs)',
'explication_diogene_gerer_auteurs' => 'To add another person as author, it has to be member of the website (You only can add one people each time you validate the form).',
'explication_gerer_auteurs_remove' => 'To delete one or more authors, select them and validate the form.',
// F
'form_legend' => 'The authors',
// L
'label_cfg_ajout_auteurs' => 'Add / Remove authors',
'label_diogene_gerer_auteurs' => 'Adding and removing author(s)',
'label_cfg_ajout_auteurs' => 'Add / Delete authors',
'label_diogene_gerer_auteurs' => 'Add an author',
'label_gerer_auteurs_remove' => 'Delete author(s)',
// M
'message_impossible_supprimer_auteur' => 'You cant remove yourself from the list of authors. You will lose your editing rights.'
'message_impossible_supprimer_auteur' => 'You can\'t remove yourself from the list of authors. You will lose your editing rights.'
);
?>

25
lang/diogene_gerer_auteurs_es.php

@ -1,25 +0,0 @@
<?php
// This is a SPIP language file -- Ceci est un fichier langue de SPIP
// extrait automatiquement de https://trad.spip.net/tradlang_module/diogene_gerer_auteurs?lang_cible=es
// ** ne pas modifier le fichier **
if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
$GLOBALS[$GLOBALS['idx_lang']] = array(
// E
'explication_cfg_ajout_auteurs' => 'Incluir la posibilidad de añadir / eliminar autores en los artículos creados (utilizará el plugin "Diogène - Autores")',
'explication_diogene_gerer_auteurs' => 'Para añadir otra persona como autor, ésta debe ser miembro del sitio.',
// F
'form_legend' => 'Autores',
// L
'label_cfg_ajout_auteurs' => 'Añadir / eliminar autores',
'label_diogene_gerer_auteurs' => 'Adición y supresión de autor(es)',
// M
'message_impossible_supprimer_auteur' => 'No puede eliminarse a sí mismo de la lista de autores. Perdería su derechos de edición.'
);

20
lang/diogene_gerer_auteurs_fr.php

@ -1,23 +1,25 @@
<?php
// This is a SPIP language file -- Ceci est un fichier langue de SPIP
// Fichier source, a modifier dans https://git.spip.net/spip-contrib-extensions/diogene_gerer_auteurs.git
if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
// Fichier source, a modifier dans http://svn.aires-de-confluxence.info/svn/plugins_spip/diogene_complements/diogene_gerer_auteurs/lang
if (!defined('_ECRIRE_INC_VERSION')) return;
$GLOBALS[$GLOBALS['idx_lang']] = array(
// E
'explication_cfg_ajout_auteurs' => 'Ajoute la possibilité d’ajouter / supprimer des auteurs sur les articles créés (Utilisera le plugin "Diogène - Auteurs")',
'explication_diogene_gerer_auteurs' => 'Pour ajouter une autre personne comme auteur, elle doit être membre du site.',
'explication_cfg_ajout_auteurs' => 'Ajoute la possibilité d\'ajouter / supprimer des auteurs sur les articles créés (Utilisera le plugin diogene_gerer_auteurs)',
'explication_diogene_gerer_auteurs' => 'Pour ajouter une autre personne comme auteur, elle doit être membre du site (Vous ne pouvez ajouter qu\'une personne à chaque validation du formulaire).',
'explication_gerer_auteurs_remove' => 'Pour supprimer un ou plusieurs auteurs, sélectionnez les et validez le formulaire.',
// F
'form_legend' => 'Les auteurs',
// L
'label_cfg_ajout_auteurs' => 'Ajouts / suppression d’auteurs',
'label_diogene_gerer_auteurs' => 'Ajout et suppression d’auteur(s)',
'label_cfg_ajout_auteurs' => 'Ajouts / suppression d\'auteurs',
'label_diogene_gerer_auteurs' => 'Ajout d\'un auteur',
'label_gerer_auteurs_remove' => 'Suppression d\'auteur(s)',
// M
'message_impossible_supprimer_auteur' => 'Vous ne pouvez vous supprimer vous-même de la liste des auteurs. Vous perdriez vos droits dédition.'
'message_impossible_supprimer_auteur' => 'Vous ne pouvez vous supprimer vous-même de la liste des auteurs. Vous perdriez vos droits d\'édition.'
);
?>

25
lang/diogene_gerer_auteurs_pt_br.php

@ -1,25 +0,0 @@
<?php
// This is a SPIP language file -- Ceci est un fichier langue de SPIP
// extrait automatiquement de https://trad.spip.net/tradlang_module/diogene_gerer_auteurs?lang_cible=pt_br
// ** ne pas modifier le fichier **
if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
$GLOBALS[$GLOBALS['idx_lang']] = array(
// E
'explication_cfg_ajout_auteurs' => 'Incluir a possibilidade de incluir / excluir os autores nas matérias criadas (usando o plugin "Diogenes - Autores")',
'explication_diogene_gerer_auteurs' => 'Para incluir uma outra pessoa como autor, ela deve ser membro do site.',
// F
'form_legend' => 'Os autores',
// L
'label_cfg_ajout_auteurs' => 'Inclusão/ exclusão de autores',
'label_diogene_gerer_auteurs' => 'Inclusão e exclusão de autor(es)',
// M
'message_impossible_supprimer_auteur' => 'Você não pode se excluir da lista de autores. Você perderia os seus direitos de edição.'
);

20
lang/paquet-diogene_gerer_auteurs.xml

@ -1,20 +0,0 @@
<traduction
module="paquet-diogene_gerer_auteurs"
id="paquet-diogene_gerer_auteurs--diogene_gerer_auteurs-1f5d4"
gestionnaire="salvatore"
url="https://trad.spip.net"
source="https://git.spip.net/spip-contrib-extensions/diogene_gerer_auteurs.git"
reference="fr">
<langue code="en" url="https://trad.spip.net/tradlang_module/paquet-diogene_gerer_auteurs?lang_cible=en" total="3" traduits="3" relire="0" modifs="0" nouveaux="0" pourcent="100.00">
<traducteur nom="Gilles" lien="https://trad.spip.net/auteur/gilles" />
<traducteur nom="kent1" lien="https://trad.spip.net/auteur/kent1" />
</langue>
<langue code="es" url="https://trad.spip.net/tradlang_module/paquet-diogene_gerer_auteurs?lang_cible=es" total="3" traduits="3" relire="0" modifs="0" nouveaux="0" pourcent="100.00">
<traducteur nom="Raquel S. Bujaldón" lien="https://trad.spip.net/auteur/raquel-s-bujaldon" />
<traducteur nom="severo" lien="https://trad.spip.net/auteur/severo" />
</langue>
<langue code="fr" url="https://trad.spip.net/tradlang_module/paquet-diogene_gerer_auteurs?lang_cible=fr" total="3" traduits="3" relire="0" modifs="0" nouveaux="0" pourcent="100.00" />
<langue code="pt_br" url="https://trad.spip.net/tradlang_module/paquet-diogene_gerer_auteurs?lang_cible=pt_br" total="3" traduits="3" relire="0" modifs="0" nouveaux="0" pourcent="100.00">
<traducteur nom="Ricardo Porto" lien="https://trad.spip.net/auteur/ricardo-porto" />
</langue>
</traduction>

16
lang/paquet-diogene_gerer_auteurs_en.php

@ -1,16 +0,0 @@
<?php
// This is a SPIP language file -- Ceci est un fichier langue de SPIP
// extrait automatiquement de https://trad.spip.net/tradlang_module/paquet-diogene_gerer_auteurs?lang_cible=en
// ** ne pas modifier le fichier **
if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
$GLOBALS[$GLOBALS['idx_lang']] = array(
// D
'diogene_gerer_auteurs_description' => 'Enable to add via Diogenes a field to link or unlink one or more authors on a object editing form.',
'diogene_gerer_auteurs_nom' => 'Diogene - Authors',
'diogene_gerer_auteurs_slogan' => '"Authors" add-on for "Diogene"'
);

16
lang/paquet-diogene_gerer_auteurs_es.php

@ -1,16 +0,0 @@
<?php
// This is a SPIP language file -- Ceci est un fichier langue de SPIP
// extrait automatiquement de https://trad.spip.net/tradlang_module/paquet-diogene_gerer_auteurs?lang_cible=es
// ** ne pas modifier le fichier **
if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
$GLOBALS[$GLOBALS['idx_lang']] = array(
// D
'diogene_gerer_auteurs_description' => 'Permite añadir a través de Diógenes un campo para asociar o disociar uno o varios autores a un formulario de edición de objeto. ',
'diogene_gerer_auteurs_nom' => 'Diógenes - Autores',
'diogene_gerer_auteurs_slogan' => 'Complemento "autores" para "Diógenes"'
);

14
lang/paquet-diogene_gerer_auteurs_fr.php

@ -1,14 +0,0 @@
<?php
// This is a SPIP language file -- Ceci est un fichier langue de SPIP
// Fichier source, a modifier dans https://git.spip.net/spip-contrib-extensions/diogene_gerer_auteurs.git
if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
$GLOBALS[$GLOBALS['idx_lang']] = array(
// D
'diogene_gerer_auteurs_description' => 'Permet d’ajouter via Diogene un champ afin d’associer ou dissocier un ou plusieurs auteurs sur un formulaire d’édition d’objet.',
'diogene_gerer_auteurs_nom' => 'Diogene - Auteurs',
'diogene_gerer_auteurs_slogan' => 'Complément "auteurs" pour "Diogene"'
);

16
lang/paquet-diogene_gerer_auteurs_pt_br.php

@ -1,16 +0,0 @@
<?php
// This is a SPIP language file -- Ceci est un fichier langue de SPIP
// extrait automatiquement de https://trad.spip.net/tradlang_module/paquet-diogene_gerer_auteurs?lang_cible=pt_br
// ** ne pas modifier le fichier **
if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
$GLOBALS[$GLOBALS['idx_lang']] = array(
// D
'diogene_gerer_auteurs_description' => 'Permite incluir via Diogenes um campo para associar ou dissociar um ou mais autores num formulário de edição de objeto.',
'diogene_gerer_auteurs_nom' => 'Diogenes - Autores',
'diogene_gerer_auteurs_slogan' => 'Complemento "autores" para o "Diogenes"'
);

25
paquet.xml

@ -1,25 +0,0 @@
<paquet
prefix="diogene_gerer_auteurs"
categorie="edition"
version="2.1.1"
etat="stable"
compatibilite="[3.0.0;3.0.*]"
logo="images/diogene-128.png"
>
<nom>Diogene - Auteurs</nom>
<auteur lien="http://www.kent1.info" mail="kent1@arscenic.info">kent1</auteur>
<copyright>2010-2017</copyright>
<licence lien="http://www.gnu.org/licenses/gpl-3.0.html">GPL 3</licence>
<pipeline nom="diogene_ajouter_saisies" inclure="diogene_gerer_auteurs_pipelines.php" />
<pipeline nom="diogene_traiter" inclure="diogene_gerer_auteurs_pipelines.php" />
<pipeline nom="diogene_objets" inclure="diogene_gerer_auteurs_pipelines.php" />
<necessite nom="diogene" compatibilite="[1.9.0;[" />
<necessite nom="saisies" compatibilite="[3.23.2;[" />
<utilise nom="chosen" />
</paquet>

47
plugin.xml

@ -0,0 +1,47 @@
<plugin>
<nom>
<multi>
[fr]Diogene - Auteurs
[en]Diogene - Authors
</multi>
</nom>
<auteur>[kent1->http://www.kent1.info]</auteur>
<version>0.2.1</version>
<etat>stable</etat>
<icon>images/diogene-128.png</icon>
<licence>&#64; 2010-2011 GNU/GPL v3</licence>
<prefix>diogene_gerer_auteurs</prefix>
<description>
<multi>
[fr]Compl&#233;ment "auteurs" pour "Diogene". Permet de rajouter un champs dans Diogene pour rajouter des auteurs.
[en]"Authors" add-on for "Diogene". Adds a field to add in authors in Diogene.
</multi>
</description>
<pipeline>
<nom>diogene_ajouter_saisies</nom>
<inclure>diogene_gerer_auteurs_pipelines.php</inclure>
</pipeline>
<pipeline>
<nom>diogene_traiter</nom>
<inclure>diogene_gerer_auteurs_pipelines.php</inclure>
</pipeline>
<pipeline>
<nom>diogene_avant_formulaire</nom>
<inclure>diogene_gerer_auteurs_pipelines.php</inclure>
</pipeline>
<pipeline>
<nom>diogene_champs_sup</nom>
<inclure>diogene_gerer_auteurs_pipelines.php</inclure>
</pipeline>
<pipeline>
<nom>insert_head</nom>
<inclure>diogene_gerer_auteurs_pipelines.php</inclure>
</pipeline>
<necessite id="SPIP" version="[2.1.2;2.1.99]" />
<necessite id="diogene" version="[0.4.2;]" />
<necessite id="SelecteurGenerique" version="[0.7.4;]" />
<necessite id="saisies" version="[1.42.11;]" />
<necessite id="spip_bonux" version="[2.3.6;]" />
<necessite id="cfg" version="[1.0.6;]" />
<categorie>edition</categorie>
</plugin>

49
prive/diogene_gerer_auteurs_avant_formulaire.html

@ -0,0 +1,49 @@
<script type="text/javascript"><!--
(function($) {
if (typeof($.fn.autocomplete) == "function") {
var diogene_gerer_auteurs_appliquer_selecteur = function(){
// chercher l'input de saisie
var diogene_gerer_auteurs = $('input[name=diogene_gerer_auteurs][autocomplete!=off]');
var id_objet = $("input[name=id_article]").val();
diogene_gerer_auteurs.autocomplete({
source:function( request, response ) {
$.ajax({
url: "#URL_PAGE{selecteur_auteur}",
data:{
id_article: id_objet,
q:extractLast( request.term )
},
success: function(data) {
datas = selecteur_format(data);
response( $.map( datas, function( item ) {
return item;
}));
}
});
},
delay: 200,
select: function( event, ui ) {
if (ui.item.result > 0) {
var id = ui.item.result;
$('#diogene_gerer_id_auteurs').val(id);
this.value = ui.item.value;
}
else {
$('#diogene_gerer_id_auteurs').val('');
this.value = ui.item.entry;
}
return false;
}
});
};
$(function(){
diogene_gerer_auteurs_appliquer_selecteur();
onAjaxLoad(diogene_gerer_auteurs_appliquer_selecteur);
});
}
})(jQuery);
// --></script>

25
selecteur_auteur.html

@ -0,0 +1,25 @@
#CACHE{0}
#HTTP_HEADER{Content-Type: text/plain; charset=#CHARSET}
[(#REM)
Menu de selection d'auteurs
La reponse est en text simple, elle sera exploitee par jquery.autocomplete.js
]
[(#REM)
Eliminer d'abord les auteurs deja lies a l'article
]
<BOUCLE_e(AUTEURS){tout}{id_article}{doublons} />
[(#REM) Chercher les auteurs correspondant a la requete ]
<BOUCLE_s(AUTEURS){tout}{nom LIKE %(#ENV{q})%}{0,20}{par nom}{doublons}>
#NOM[ - (#LOGIN)]|[(#NOM|textebrut)]|#ID_AUTEUR
</BOUCLE_s>
[(#REM) Si aucun, on recherche dans le login]
<BOUCLE_s1(AUTEURS){tout}{login LIKE (#ENV{q})%}{0,20}{par nom}{doublons}>
[(#STATUT|icone_statut_auteur) ][ - (##NOM)][ - (#BIO|textebrut|couper{20})][ ((#EMAIL))]|[(#NOM|textebrut)]|#ID_AUTEUR
</BOUCLE_s1>
[(#REM) Vraiment on n'a rien trouve ]
<:selecteurgenerique:pas_suggestion:>|[(#ENV*{q}|textebrut)]|0
<//B_s1>
<//B_s>
Loading…
Cancel
Save