Add LSaddon LSaccessRightsMatrixView

This commit is contained in:
Benjamin Renard 2019-10-10 18:28:58 +02:00
parent 2fa55a1332
commit c74f0cf4bd
10 changed files with 350 additions and 39 deletions

View file

@ -11,6 +11,7 @@
&conf-LSaddon_asterisk;
&conf-LSaddon_exportSearchResultAsCSV;
&conf-LSaddon_LSaccessRightsMatrixView;
&conf-LSaddon_mail;
&conf-LSaddon_maildir;
&conf-LSaddon_mailquota;

View file

@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!ENTITY conf-LSaddon_asterisk SYSTEM "LSaddon_asterisk.docbook">
<!ENTITY conf-LSaddon_exportSearchResultAsCSV SYSTEM "LSaddon_exportSearchResultAsCSV.docbook">
<!ENTITY conf-LSaddon_LSaccessRightsMatrixView SYSTEM "LSaddon_LSaccessRightsMatrixView.docbook">
<!ENTITY conf-LSaddon_mail SYSTEM "LSaddon_mail.docbook">
<!ENTITY conf-LSaddon_maildir SYSTEM "LSaddon_maildir.docbook">
<!ENTITY conf-LSaddon_mailquota SYSTEM "LSaddon_mailquota.docbook">

View file

@ -0,0 +1,11 @@
<sect2 id="config-LSaddon_LSaccessRightsMatrixView">
<title>LSaddon_LSaccessRightsMatrixView</title>
<para>Cet &LSaddon; offre une interface de visualisation des droits d'accès
des différents &LSprofiles; configurés. Pour chaque type d'objet, la matrice
des droits d'accès par attribut et par profil est affiché sous la forme d'un
tableau.</para>
<para>Le fichier de configuration permet de définir au travers la variable
<literal>$GLOBALS['LSaccessRightsMatrixView_allowed_LSprofiles']</literal>
la liste des &LSprofiles; autorisés à accéder à cette interface.</para>
</sect2>

View file

@ -0,0 +1,32 @@
<?php
/*******************************************************************************
* Copyright (C) 2007 Easter-eggs
* http://ldapsaisie.labs.libre-entreprise.org
*
* Author: See AUTHORS file in top-level directory.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License version 2
* as published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
******************************************************************************/
/*
***********************************************
* LSaccessRightsMatrixView configuration
***********************************************
*/
$GLOBALS['LSaccessRightsMatrixView_allowed_LSprofiles'] = array(
"admin",
);

View file

@ -0,0 +1,80 @@
/*
* Table
*/
#LSaccessRightsMatrixView table {
width: 100%;
border-collapse: collapse;
margin-top: 1em;
text-align: center;
}
#LSaccessRightsMatrixView table tr, #LSaccessRightsMatrixView table td {
transition: all 0.25s linear 0s;
}
#LSaccessRightsMatrixView table tr:hover {
background-color: #AAA;
}
#LSaccessRightsMatrixView table thead th:first-of-type, #LSaccessRightsMatrixView table tbody th {
text-align: left;
}
span.LSaccessRightsMatrixView_readable, span.LSaccessRightsMatrixView_writable {
color: #fff;
border: 1px solid;
border-radius: 0.3em;
display: inline-block;
padding: 0.1em;
}
span.LSaccessRightsMatrixView_readable {
background-color: #17a2b8;
border-color: #17a2b8;
}
span.LSaccessRightsMatrixView_writable {
background-color: #ffc107;
border-color: #ffc107;
}
/*
* Tabs
*/
ul.LSaccessRightsMatrixView_tabs {
list-style-type: none;
padding: 0;
margin: 1em;
margin-bottom: 0;
}
ul.LSaccessRightsMatrixView_tabs li a {
text-decoration: none;
color: #fff;
}
ul.LSaccessRightsMatrixView_tabs li {
text-decoration: none;
color: #fff;
background-color: #52BCE5;
border-radius: 3px 3px 0px 0px;
padding: 4px;
display: inline;
margin-right: 1px;
}
ul.LSaccessRightsMatrixView_tabs li.LSaccessRightsMatrixView_active_tab {
color: #fff;
background-color: #0072B8;
}
div.LSaccessRightsMatrixView_tab_content {
border: 1px solid #0072B8;
margin: 1em;
padding: 0.5em;
margin-top: 4px;
}
div.LSaccessRightsMatrixView_tab_content h2 {
margin: 0;
}

View file

@ -0,0 +1,95 @@
<?php
/*******************************************************************************
* Copyright (C) 2007 Easter-eggs
* http://ldapsaisie.labs.libre-entreprise.org
*
* Author: See AUTHORS file in top-level directory.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License version 2
* as published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
******************************************************************************/
// Error messages
// Support
LSerror :: defineError('LSACCESSRIGHTSMATRIXVIEW_SUPPORT_01',
_("Access Right Matrix Support : The global array %{array} is not defined.")
);
/**
* Check support of LSaccessRightsMatrixView addon by LdapSaisie
*
* @author Benjamin Renard <brenard@easter-eggs.com>
*
* @retval boolean true if LSaccessRightsMatrixView addon is totally supported, false in other case
*/
function LSaddon_LSaccessRightsMatrixView_support() {
$retval = True;
$MUST_DEFINE_ARRAY= array(
'LSaccessRightsMatrixView_allowed_LSprofiles',
);
foreach($MUST_DEFINE_ARRAY as $array) {
if ( !isset($GLOBALS[$array]) || !is_array($GLOBALS[$array])) {
LSerror :: addErrorCode('LSACCESSRIGHTSMATRIXVIEW_SUPPORT_01',$array);
$retval=false;
}
}
if ($retval)
$retval = LSsession :: registerLSaddonView(
'LSaccessRightsMatrixView',
'accessRightsMatrix',
_('Access rights matrix'),
'LSaccessRightsMatrixView',
$GLOBALS['LSaccessRightsMatrixView_allowed_LSprofiles']
);
return $retval;
}
function LSaccessRightsMatrixView() {
$LSprofiles = LSsession :: $ldapServer["LSprofiles"];
$LSobjects = array();
foreach (LSsession :: $ldapServer["LSaccess"] as $LSobject) {
if (!LSsession :: loadLSobject($LSobject))
continue;
$attrs = array();
foreach(LSconfig :: get("LSobjects.$LSobject.attrs", array()) as $attr_name => $attr_config) {
$raw_attr_rights = LSconfig :: get('rights', array(), 'array', $attr_config);
$attr_rights = array();
foreach(array_keys($LSprofiles) as $LSprofile) {
$attr_rights[$LSprofile] = LSconfig :: get($LSprofile, False, null, $raw_attr_rights);
}
$attrs[$attr_name] = array (
'label' => __(LSconfig :: get('label', $attr_name, 'string', $attr_config)),
'rights' => $attr_rights,
);
}
$LSobjects[$LSobject] = array (
'label' => __(LSconfig :: get("LSobjects.$LSobject.label", $LSobject, 'string')),
'attrs' => $attrs,
);
}
// Determine current LSobject
reset($LSobjects);
$LSobject = (isset($_REQUEST['LSobject']) && array_key_exists($_REQUEST['LSobject'], $LSobjects)?$_REQUEST['LSobject']:key($LSobjects));
LStemplate :: assign('pagetitle', _('Access rights matrix'));
LStemplate :: assign('LSprofiles', $LSprofiles);
LStemplate :: assign('LSobjects', $LSobjects);
LStemplate :: assign('LSobject', $LSobject);
LSsession :: addCssFile('LSaccessRightsMatrixView.css');
LSsession :: setTemplate('LSaccessRightsMatrixView.tpl');
}

View file

@ -8,7 +8,7 @@ msgstr ""
"Project-Id-Version: LdapSaisie\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: \n"
"PO-Revision-Date: 2019-07-02 14:20+0200\n"
"PO-Revision-Date: 2019-10-10 18:16+0200\n"
"Last-Translator: Benjamin Renard <brenard@zionetrix.net>\n"
"Language-Team: LdapSaisie <ldapsaisie-users@lists.labs.libre-entreprise."
"org>\n"
@ -329,6 +329,17 @@ msgstr "Entité %{id} (non-reconnue)"
msgid "%{value} (unrecognized value)"
msgstr "%{value} (valeur non-reconnue)"
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/addons/LSaddons.LSaccessRightsMatrixView.php:26
msgid "Access Right Matrix Support : The global array %{array} is not defined."
msgstr ""
"Support Matrice des droits d'accès : Le tableau global %{array} n'est pas "
"défini."
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/addons/LSaddons.LSaccessRightsMatrixView.php:52
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/addons/LSaddons.LSaccessRightsMatrixView.php:88
msgid "Access rights matrix"
msgstr "Matrice des droits d'accès"
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/addons/LSaddons.ftp.php:27
msgid "FTP Support : Pear::Net_FTP is missing."
msgstr "Support FTP : Pear::Net_FTP n'est pas installé."
@ -1765,39 +1776,39 @@ msgstr "Étape"
msgid "Pedagogical element"
msgstr "Élement pédagogique"
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1055
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1087
msgid "Actions"
msgstr "Actions"
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1058
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1090
#: templates/default/global_search.tpl:25
msgid "This search didn't get any result."
msgstr "Cette recherche n'a retournée aucun résultat"
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1310
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1342
msgid "LSsearch : Invalid filter : %{filter}."
msgstr "LSsearch : Filtre invalide : %{filter}."
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1313
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1345
msgid "LSsearch : Invalid basedn : %{basedn}."
msgstr "LSsearch : Base DN invalide."
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1316
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1348
msgid "LSsearch : Invalid value for %{param} parameter."
msgstr "LSsearch : La valeur du paramètre %{param} est incorrecte."
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1319
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1351
msgid ""
"LSsearch : Invalid size limit. Must be an integer greater or equal to 0."
msgstr ""
"LSsearch : Limite de taille de recherche invalide. Elle doit être un entier "
"supérieur ou égal à 0."
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1322
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1354
msgid "LSsearch : Invalid parameter %{attr}. Must be an boolean."
msgstr "LSsearch : Paramètre %{param} invalide. Il doit être un booléen."
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1325
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1357
msgid ""
"LSsearch : Invalid parameter attributes. Must be an string or an array of "
"strings."
@ -1805,13 +1816,13 @@ msgstr ""
"LSsearch : Paramètre 'attributes' invalide. Il doit être une chaîne de "
"caractères ou un tableau de chaînes de caractères."
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1328
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1360
msgid "LSsearch : Can't build attributes list for make filter."
msgstr ""
"LSsearch : Impossible de construire la liste des attributs pour faire le "
"filtre."
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1331
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1363
msgid ""
"LSsearch : Error building filter with attribute '%{attr}' and pattern "
"'%{pattern}'"
@ -1819,34 +1830,34 @@ msgstr ""
"LSsearch : Problème en construisant le filtre avec l'attribut '%{attr}' et "
"le mot clé '%{pattern}'"
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1334
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1366
msgid "LSsearch : Error combining filters."
msgstr "LSsearch : Problème en combinant les filtres."
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1337
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1369
msgid "LSsearch : Invalid pattern."
msgstr "LSsearch : Mot clé invalide."
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1340
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1372
msgid "LSsearch : Invalid attribute %{attr} in parameters."
msgstr "LSsearch : Attribut %{attr} incorrect dans les paramètres."
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1343
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1375
msgid "LSsearch : Error during the search."
msgstr "LSsearch : Erreur pendant la recherche."
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1346
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1378
msgid "LSsearch : Error sorting the search."
msgstr "LSsearch : Erreur pendant le trie de la recherche."
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1349
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1381
msgid ""
"LSsearch : The function of the custum information %{name} is not callable."
msgstr ""
"LSsearch : La fonction de l'information personnalisée %{name} n'est pas "
"exécutable."
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1352
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1384
msgid ""
"LSsearch : Invalid predefinedFilter for LSobject type %{type} : %{label} "
"(filter : %{filter})."
@ -1854,13 +1865,13 @@ msgstr ""
"LSsearch : PredefinedFilter invalide pour le type d'LSobject %{type} : "
"%{label} (filtre : %{filter})."
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1355
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1387
msgid "LSsearch : Error during execution of the custom action %{customAction}."
msgstr ""
"LSldapObject : Erreur durant l'exécution de l'action personnalisée "
"%{customAction}."
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1358
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1390
msgid "LSsearch : Invalid search pattern."
msgstr "LSsearch : Mot clé de recherche invalide"
@ -2049,6 +2060,10 @@ msgstr ""
"Une erreur irrécupérable est survenue. Si le problème persiste, merci de "
"contacter le support."
#: templates/default/LSaccessRightsMatrixView.tpl:15
msgid "Attributes / Profiles"
msgstr "Attributs / Profils"
#: templates/default/fatal_error.tpl:23
msgid "Details"
msgstr "Détails"
@ -2070,6 +2085,10 @@ msgstr "Recherche globale"
msgid "Imported objects"
msgstr "Objets importés"
#: templates/default/viewSearch.tpl:120
msgid "Nb / page :"
msgstr "Nb / page :"
#: templates/default/import.tpl:74
msgid "No imported object"
msgstr "Aucun objet importé"
@ -2082,6 +2101,14 @@ msgstr "Aucune valeur"
msgid "Only validate data"
msgstr "Validation des données uniquement"
#: templates/default/LSaccessRightsMatrixView.tpl:27
msgid "Readable"
msgstr "Lecture"
#: templates/default/LSaccessRightsMatrixView.tpl:29
msgid "Readable / Writable"
msgstr "Lecture / Écriture"
#: templates/default/top.tpl:62
msgid "Refresh my access rights"
msgstr "Rafraîchir mes droits d'accès"

View file

@ -275,6 +275,15 @@ msgstr ""
msgid "%{value} (unrecognized value)"
msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/addons/LSaddons.LSaccessRightsMatrixView.php:26
msgid "Access Right Matrix Support : The global array %{array} is not defined."
msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/addons/LSaddons.LSaccessRightsMatrixView.php:52
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/addons/LSaddons.LSaccessRightsMatrixView.php:88
msgid "Access rights matrix"
msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/addons/LSaddons.ftp.php:27
msgid "FTP Support : Pear::Net_FTP is missing."
msgstr ""
@ -1498,88 +1507,88 @@ msgstr ""
msgid "Pedagogical element"
msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1055
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1087
msgid "Actions"
msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1058
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1090
#: templates/default/global_search.tpl:25
msgid "This search didn't get any result."
msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1310
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1342
msgid "LSsearch : Invalid filter : %{filter}."
msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1313
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1345
msgid "LSsearch : Invalid basedn : %{basedn}."
msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1316
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1348
msgid "LSsearch : Invalid value for %{param} parameter."
msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1319
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1351
msgid ""
"LSsearch : Invalid size limit. Must be an integer greater or equal to 0."
msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1322
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1354
msgid "LSsearch : Invalid parameter %{attr}. Must be an boolean."
msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1325
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1357
msgid ""
"LSsearch : Invalid parameter attributes. Must be an string or an array of "
"strings."
msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1328
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1360
msgid "LSsearch : Can't build attributes list for make filter."
msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1331
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1363
msgid ""
"LSsearch : Error building filter with attribute '%{attr}' and pattern "
"'%{pattern}'"
msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1334
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1366
msgid "LSsearch : Error combining filters."
msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1337
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1369
msgid "LSsearch : Invalid pattern."
msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1340
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1372
msgid "LSsearch : Invalid attribute %{attr} in parameters."
msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1343
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1375
msgid "LSsearch : Error during the search."
msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1346
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1378
msgid "LSsearch : Error sorting the search."
msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1349
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1381
msgid ""
"LSsearch : The function of the custum information %{name} is not callable."
msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1352
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1384
msgid ""
"LSsearch : Invalid predefinedFilter for LSobject type %{type} : %{label} "
"(filter : %{filter})."
msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1355
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1387
msgid "LSsearch : Error during execution of the custom action %{customAction}."
msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1358
#: /home/brenard/dev/ldapsaisie_clean3/public_html/includes/class/class.LSsearch.php:1390
msgid "LSsearch : Invalid search pattern."
msgstr ""
@ -1748,6 +1757,10 @@ msgstr ""
msgid "A fatal error occured. If problem persist, please contact support."
msgstr ""
#: templates/default/LSaccessRightsMatrixView.tpl:15
msgid "Attributes / Profiles"
msgstr ""
#: templates/default/fatal_error.tpl:23
msgid "Details"
msgstr ""
@ -1769,6 +1782,10 @@ msgstr ""
msgid "Imported objects"
msgstr ""
#: templates/default/viewSearch.tpl:120
msgid "Nb / page :"
msgstr ""
#: templates/default/import.tpl:74
msgid "No imported object"
msgstr ""
@ -1781,6 +1798,14 @@ msgstr ""
msgid "Only validate data"
msgstr ""
#: templates/default/LSaccessRightsMatrixView.tpl:27
msgid "Readable"
msgstr ""
#: templates/default/LSaccessRightsMatrixView.tpl:29
msgid "Readable / Writable"
msgstr ""
#: templates/default/top.tpl:62
msgid "Refresh my access rights"
msgstr ""

View file

@ -0,0 +1,39 @@
{include file='ls:top.tpl'}
<div id='LSaccessRightsMatrixView'>
<h1>{$pagetitle}</h1>
<ul class="LSaccessRightsMatrixView_tabs">
{foreach $LSobjects as $obj => $obj_conf}
<li{if $LSobject==$obj} class="LSaccessRightsMatrixView_active_tab"{/if}><a href="addon_view.php?LSaddon=LSaccessRightsMatrixView&view=accessRightsMatrix&LSobject={$obj}">{$obj_conf.label}</a></li>
{/foreach}
</ul>
<div class='LSaccessRightsMatrixView_tab_content'>
<h2>{$LSobjects[$LSobject]['label']}</h2>
<table>
<thead>
<th>{tr msg="Attributes / Profiles"}</th>
{foreach $LSprofiles as $name => $conf}
<th>{$name}</th>
{/foreach}
</thead>
<tbody>
{foreach $LSobjects[$LSobject]['attrs'] as $name => $conf}
<tr>
<th>{$conf.label}</th>
{foreach $LSprofiles as $profil => $profil_conf}
<td>
{if $conf.rights[$profil] == 'r'}
<span class='LSaccessRightsMatrixView_readable'>{tr msg="Readable"}</span>
{elseif $conf.rights[$profil] == 'w'}
<span class='LSaccessRightsMatrixView_writable'>{tr msg="Readable / Writable"}</span>
{/if}
</td>
{/foreach}
</tr>
{/foreach}
</tbody>
</table>
</div>
</div>
{include file='ls:bottom.tpl'}