Browse Source

une page profil par auteur, où l'on peut contacter et modifier ses infos perso

svn/root/tags/v1.17.5
maieul@maieul.net 2 years ago
parent
commit
2f4667f976
10 changed files with 128 additions and 3 deletions
  1. +5
    -0
      .gitattributes
  2. +3
    -0
      auteur.html
  3. +26
    -0
      content/auteur.html
  4. +12
    -0
      extra/auteur.html
  5. +3
    -1
      footer/dist.html
  6. +1
    -0
      footer/profil.html
  7. +8
    -0
      inclure/ecrire-auteur.html
  8. +6
    -1
      lang/ressourcotheque_fr.php
  9. +3
    -1
      paquet.xml
  10. +61
    -0
      ressourcotheque_autoriser.php

+ 5
- 0
.gitattributes View File

@ -1,6 +1,7 @@
* text=auto !eol
aside/dist.html -text
aside/rubrique.html -text
/auteur.html -text
/backend.html -text
base/ressourcotheque.php -text
/comments-atom.html -text
@ -15,11 +16,14 @@ content/sommaire.html -text
content/sphinx.html -text
css/type.less -text
extra/article.html -text
extra/auteur.html -text
extra/rubrique.html -text
extra/sommaire.html -text
footer/dist.html -text
footer/profil.html -text
inclure/connexe.html -text
inclure/documents.html -text
inclure/ecrire-auteur.html -text
inclure/formulaire-demande-acces.html -text
inclure/head.html -text
inclure/liste_sphinx_rubrique_facette.html -text
@ -33,6 +37,7 @@ lang/ressourcotheque_fr.php -text
liste/rubriques-resume.html -text
/paquet.xml -text
/ressourcotheque_administrations.php -text
/ressourcotheque_autoriser.php -text
/ressourcotheque_fonctions.php -text
/ressourcotheque_options.php -text
/ressourcotheque_pipelines.php -text

+ 3
- 0
auteur.html View File

@ -0,0 +1,3 @@
<BOUCLE_principale_auteur(AUTEURS){id_auteur}{tout}>
<INCLURE{fond=structure,env,type-page=auteur,composition=#COMPOSITION} />
</BOUCLE_principale_auteur>

+ 26
- 0
content/auteur.html View File

@ -0,0 +1,26 @@
<BOUCLE_content(AUTEURS){id_auteur}{tout}>
<article>
<header class="cartouche">
[(#LOGO_AUTEUR|image_reduire{200,200})]
<h1><span class="#EDIT{NOM}">#NOM</span>
</h1>
</header>
<div class="main">
[<div class="#EDIT{bio} bio surlignable">(#BIO|adaptive_images)</div>]
[<div class="#EDIT{pgp} pgp">(#PGP)</div>]
[<p class="#EDIT{hyperlien} hyperlien"><:voir_en_ligne:> : <a href="(#URL_SITE)" class="spip_out">[(#NOM_SITE|sinon{[(#URL_SITE|couper{80})]})]</a></p>]
<INCLURE{fond=inclure/ecrire-auteur,id_auteur} />
</div>
#_AUTORISER_SI{modifier,auteur,env}
<footer>
<h2><:ressourcotheque:modifier_profil:></h2>
#FORMULAIRE_EDITER_AUTEUR{#ID_AUTEUR}
</footer>
#_AUTORISER_FIN
</article>
</BOUCLE_content>

+ 12
- 0
extra/auteur.html View File

@ -0,0 +1,12 @@
<B_auteurs>
<div class="liste auteurs">
#ANCRE_PAGINATION
<h2 class="h2"><:info_auteurs:></h2>
<ul class="liste-items">
<BOUCLE_auteurs(AUTEURS) {par nom} {pagination 20}>
<li class="item"><a href="#URL_AUTEUR"[ class="(#EXPOSE)"]>[(#NOM|couper{80})]</a></li>
</BOUCLE_auteurs>
</ul>
[<div class="pagination">(#PAGINATION)</div>]
</div>
</B_auteurs>

+ 3
- 1
footer/dist.html View File

@ -2,7 +2,9 @@
<BOUCLE_annee(ARTICLES){par date}{0,1}>[(#DATE|annee|!={#VAL{Y}|date}|oui)[(#DATE|annee)]]</BOUCLE_annee>-</B_annee>[(#DATE|annee) ] &mdash; #NOM_SITE_SPIP<br />
<a rel="contents" href="#URL_PAGE{plan}"><:plan_site:></a><?php
if (isset($GLOBALS['visiteur_session']['id_auteur']) AND $GLOBALS['visiteur_session']['id_auteur']) {
?><span class="sep"> | </span><a href="#URL_LOGOUT" rel="nofollow"><:icone_deconnecter:></a><?php
?>
<INCLURE{fond=footer/profil} />
<span class="sep"> | </span><a href="#URL_LOGOUT" rel="nofollow"><:icone_deconnecter:></a><?php
if (include_spip('inc/autoriser') AND autoriser('ecrire')){
?><span class="sep"> | </span><a href="#EVAL{_DIR_RESTREINT_ABS}"><:espace_prive:></a><?php
}


+ 1
- 0
footer/profil.html View File

@ -0,0 +1 @@
<span class="sep"> | </span><a href="#URL_AUTEUR{#SESSION{id_auteur}}"><:ressourcotheque:modifier_mon_profil:></a>

+ 8
- 0
inclure/ecrire-auteur.html View File

@ -0,0 +1,8 @@
<BOUCLE_auteur(AUTEURS){tout}{id_auteur}>
[(#SESSION{id_auteur}|=={#ID_AUTEUR}|non)
[<h2><:ressourcotheque:contacter:></h2>
(#FORMULAIRE_ECRIRE_AUTEUR)
]
]
</BOUCLE_auteur>

+ 6
- 1
lang/ressourcotheque_fr.php View File

@ -39,5 +39,10 @@ $GLOBALS[$GLOBALS['idx_lang']] = array(
'types_ressources' => 'Types de ressources disponibles',
// Z
'zip' => 'Zip de l’ensemble des documents joints'
'zip' => 'Zip de l’ensemble des documents joints',
//
'modifier_profil' => 'Modifier le profil',
'modifier_mon_profil' => 'Modifier mon profil',
'contacter' => 'Contacter'
);

+ 3
- 1
paquet.xml View File

@ -1,7 +1,7 @@
<paquet
prefix="ressourcotheque"
categorie="squelette"
version="1.16.0"
version="1.17.0"
etat="stable"
compatibilite="[3.1.0;3.2.*]"
schema="0.5.0"
@ -25,6 +25,7 @@
<necessite nom="zippeur" compatibilite="[4.1.5;[" />
<necessite nom="notation" compatibilite="[2.1.0;[" />
<necessite nom="cextras" compatibilite="[3.8.0;[" />
<necessite nom="macrosession" compatibilite="[0.9.1;[" />
<utilise nom="indexerdoc" compatibilite="[2.0.0;[" />
<utilise nom="extrairedoc" compatibilite="[1.2.2;[" />
@ -33,4 +34,5 @@
<pipeline nom="declarer_champs_extras" inclure="base/ressourcotheque.php" />
<pipeline nom="linkcheck_champs_a_traiter" inclure="ressourcotheque_pipelines.php" />
<pipeline nom="autoriser" inclure="ressourcotheque_autoriser.php" />
</paquet>

+ 61
- 0
ressourcotheque_autoriser.php View File

@ -0,0 +1,61 @@
<?php
if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
function ressourcotheque_autoriser() {
}
//Pouvoir modifier son profil
/**
* Autorisation de modifier un auteur
*
* Attention tout depend de ce qu'on veut modifier. Il faut être au moins
* rédacteur, mais on ne peut pas promouvoir (changer le statut) un auteur
* avec des droits supérieurs au sien.
*
* @param string $faire Action demandée
* @param string $type Type d'objet sur lequel appliquer l'action
* @param int $id Identifiant de l'objet
* @param array $qui Description de l'auteur demandant l'autorisation
* @param array $opt Options de cette autorisation
* @return bool true s'il a le droit, false sinon
**/
function autoriser_auteur_modifier($faire, $type, $id, $qui, $opt) {
// Un redacteur, un admin restreint ou un visiteur peut modifier ses propres donnees mais ni son login/email
if ($qui['statut'] == '1comite'
or $qui['statut'] == '6forum'
or (isset($qui['restreint']) and $qui['restreint'])) {
if (!empty($opt['webmestre'])) {
return false;
} elseif (
!empty($opt['statut'])
or !empty($opt['restreintes'])
or !empty($opt['email'])
) {
return false;
} elseif ($id == $qui['id_auteur']) {
return true;
} else {
return false;
}
}
// Un admin complet fait ce qu'il veut
// sauf se degrader
if ($id == $qui['id_auteur'] && (isset($opt['statut']) and $opt['statut'])) {
return false;
} elseif (isset($opt['webmestre'])
and $opt['webmestre']
and (defined('_ID_WEBMESTRES')
or !autoriser('webmestre'))) {
// et toucher au statut webmestre si il ne l'est pas lui meme
// ou si les webmestres sont fixes par constante (securite)
return false;
} // et modifier un webmestre si il ne l'est pas lui meme
elseif (intval($id) and autoriser('webmestre', '', 0, $id) and !autoriser('webmestre')) {
return false;
} else {
return true;
}
}

Loading…
Cancel
Save