1
0
Fork 0
mirror of https://github.com/YunoHost-Apps/spip_ynh.git synced 2024-09-03 20:25:59 +02:00
spip_ynh/sources/plugins-dist/revisions/inc/revisions_autoriser.php
2015-04-28 17:10:23 +02:00

78 lines
2.6 KiB
PHP

<?php
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
* Copyright (c) 2001-2014 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
* Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
\***************************************************************************/
/**
* Autorisations du plugin révisions
*
* @package Revisions\Autorisations
**/
if (!defined('_ECRIRE_INC_VERSION')) return;
/** Chargement pour le pipeline d'autorisation */
function revisions_autoriser(){}
/**
* Autorisation de voir les revisions ?
*
* Il faut :
* - des revisions définies pour cet objet
* - que l'objet existe
* - que l'on soit autorisé à voir l'objet
*
* @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_voirrevisions_dist($faire, $type, $id, $qui, $opt) {
$table = table_objet_sql($type);
$id_table_objet = id_table_objet($type);
include_spip('inc/revisions');
if (!liste_champs_versionnes($table))
return false;
if (!$row = sql_fetsel("*", $table, "$id_table_objet=".intval($id)))
return false;
return
autoriser('voir', $type, $id, $qui, $opt);
}
/**
* Autorisation de voir le menu révisions
*
* Il faut des révisions activées et présentes.
*
* @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_revisions_menu_dist($faire, $type='', $id=0, $qui = NULL, $opt = NULL){
// SI pas de revisions sur un objet quelconque.
// ET pas de version... pas de bouton, c'est inutile...
include_spip('inc/config');
if (!lire_config('objets_versions/') AND !sql_countsel('spip_versions')) {
return false;
}
return true;
}
?>