mirror of
https://gitlab.easter-eggs.com/ee/ldapsaisie.git
synced 2024-12-18 14:33:49 +01:00
Add LSaddon orgchart
A first implementation of this addon which deserves some improvements.
This commit is contained in:
parent
bbf40090a9
commit
ad38812859
12 changed files with 598 additions and 93 deletions
72
src/conf/LSaddons/config.LSaddons.orgchart.php
Normal file
72
src/conf/LSaddons/config.LSaddons.orgchart.php
Normal file
|
@ -0,0 +1,72 @@
|
|||
<?php
|
||||
/*******************************************************************************
|
||||
* Copyright (C) 2007 Easter-eggs
|
||||
* https://ldapsaisie.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.
|
||||
|
||||
******************************************************************************/
|
||||
|
||||
/*
|
||||
***********************************************
|
||||
* OrgChart configuration
|
||||
***********************************************
|
||||
*/
|
||||
|
||||
// OrgChart entity object types
|
||||
$GLOBALS['ORGCHART_ENTITY_OBJECT_TYPES'] = array(
|
||||
// Object type included in chart and its parameters
|
||||
'LSpeople' => array(
|
||||
// Attribute name that contening parent object reference (optional)
|
||||
'parent_id_attr' => 'lsGodfatherDn',
|
||||
|
||||
// Value of the parent attribute : could be 'dn' or another attribute of this type of object.
|
||||
// Optional, default: 'dn'
|
||||
// Note: in the chart, all entities are known by their DN. If you specify here an attribute,
|
||||
// the first object matching with the value of the parent ID attribute will be keeped.
|
||||
//'parent_id_attr_value' => 'dn',
|
||||
|
||||
// Parent object types
|
||||
// Optional, default: all object types included in the chart
|
||||
//'parent_object_types' => array('LSpeople', ...),
|
||||
|
||||
// Other attributes to load from LDAP : map here keys to attribute. These attributes values
|
||||
// will be available in chart node template (as array).
|
||||
'other_attrs' => array(
|
||||
'name' => 'cn',
|
||||
),
|
||||
),
|
||||
);
|
||||
|
||||
// Optional chart root entity
|
||||
// If defined, all objects found without parent entity will be linked to this root entity. It's
|
||||
// could be usefull when you have multiple root entities (no support by the d3-org-chart lib used).
|
||||
// You could define here all information of the root entity and they will be available in the chart
|
||||
// node template.
|
||||
$GLOBALS['ORGCHART_ROOT_ENTITY'] = array(
|
||||
'id' => 'root',
|
||||
'name' => array('LSexample'),
|
||||
);
|
||||
|
||||
// Chart node template
|
||||
// The Mustache templating system is used here:
|
||||
// https://github.com/janl/mustache.js
|
||||
$GLOBALS['ORGCHART_TEMPLATE'] = <<<EOF
|
||||
<div class="chart-node"><a href="{{url}}">{{name.0}}</a></div>
|
||||
EOF;
|
||||
|
||||
// Additional CSS files to load on chart page
|
||||
$GLOBALS['ORGCHART_ADDITIONAL_CSS_FILES'] = array();
|
16
src/css/default/organizationalChart.css
Normal file
16
src/css/default/organizationalChart.css
Normal file
|
@ -0,0 +1,16 @@
|
|||
div.chart-container {
|
||||
width: 100vw;
|
||||
height: 100vh;
|
||||
}
|
||||
|
||||
div.chart-node {
|
||||
width: 300px;
|
||||
height: 70px;
|
||||
border-radius: 10px;
|
||||
border: 1px solid #E4E2E9;
|
||||
display: flex;
|
||||
text-align: center;
|
||||
justify-content: center;
|
||||
align-content: center;
|
||||
flex-direction: column;
|
||||
}
|
285
src/includes/addons/LSaddons.orgchart.php
Normal file
285
src/includes/addons/LSaddons.orgchart.php
Normal file
|
@ -0,0 +1,285 @@
|
|||
<?php
|
||||
/*******************************************************************************
|
||||
* Copyright (C) 2007 Easter-eggs
|
||||
* https://ldapsaisie.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('LSORGCHART_SUPPORT_01',
|
||||
___("Organizational Chart Support : The global array %{array} is not defined.")
|
||||
);
|
||||
LSerror :: defineError('LSORGCHART_SUPPORT_02',
|
||||
___("Organizational Chart Support : The global variable %{var} is not defined.")
|
||||
);
|
||||
|
||||
/**
|
||||
* Check support of orgchart addon by LdapSaisie
|
||||
*
|
||||
* @author Benjamin Renard <brenard@easter-eggs.com>
|
||||
*
|
||||
* @retval boolean true if orgchart addon is totally supported, false in other case
|
||||
*/
|
||||
function LSaddon_orgchart_support() {
|
||||
$retval = True;
|
||||
$MUST_DEFINE_ARRAY = array(
|
||||
'ORGCHART_ENTITY_OBJECT_TYPES',
|
||||
'ORGCHART_ADDITIONAL_CSS_FILES',
|
||||
);
|
||||
foreach($MUST_DEFINE_ARRAY as $array) {
|
||||
if (!isset($GLOBALS[$array]) || !is_array($GLOBALS[$array])) {
|
||||
LSerror :: addErrorCode('LSORGCHART_SUPPORT_01', $array);
|
||||
$retval = false;
|
||||
}
|
||||
}
|
||||
$MUST_DEFINE_VAR = array(
|
||||
'ORGCHART_TEMPLATE',
|
||||
);
|
||||
foreach($MUST_DEFINE_VAR as $var) {
|
||||
if (!isset($GLOBALS[$var])) {
|
||||
LSerror :: addErrorCode('LSORGCHART_SUPPORT_02', $var);
|
||||
$retval = false;
|
||||
}
|
||||
}
|
||||
|
||||
if ($retval) {
|
||||
$retval = (
|
||||
LSsession :: registerLSaddonView(
|
||||
'orgchart',
|
||||
'orgchart',
|
||||
_('Organizational chart'),
|
||||
'organizationalChartPage',
|
||||
null, // No access crontol
|
||||
true // Show in menu
|
||||
) &&
|
||||
LSsession :: registerLSaddonView(
|
||||
'orgchart',
|
||||
'orgchartdata',
|
||||
_('Organizational chart data'),
|
||||
'organizationalChartData',
|
||||
null, // No access crontol
|
||||
false // Show in menu
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
return $retval;
|
||||
}
|
||||
|
||||
function organizationalChartPage() {
|
||||
LStemplate :: assign('template', $GLOBALS['ORGCHART_TEMPLATE']);
|
||||
LStemplate :: assign('additional_css_files', $GLOBALS['ORGCHART_ADDITIONAL_CSS_FILES']);
|
||||
LSsession :: setTemplate('organizationalChart.tpl');
|
||||
}
|
||||
|
||||
function organizationalChartData() {
|
||||
$root_entity = (isset($GLOBALS['ORGCHART_ROOT_ENTITY'])?$GLOBALS['ORGCHART_ROOT_ENTITY']:null);
|
||||
|
||||
$objects = array();
|
||||
$objects_conf = array();
|
||||
$objects_attr2dn = array();
|
||||
$objects_attr2dn_need = array();
|
||||
$requested_attrs = array();
|
||||
|
||||
|
||||
// Load all object types
|
||||
foreach($GLOBALS['ORGCHART_ENTITY_OBJECT_TYPES'] as $obj_type => $conf) {
|
||||
if (!LSsession :: loadLSobject($obj_type))
|
||||
LStemplate :: fatal_error("Fail to load object type '$obj_type'.");
|
||||
$objects[$obj_type] = array();
|
||||
$requested_attrs[$obj_type] = array();
|
||||
$objects_attr2dn[$obj_type] = array();
|
||||
$objects_attr2dn_need[$obj_type] = array();
|
||||
$objects_conf[$obj_type] = array();
|
||||
}
|
||||
|
||||
// Load configuration and attributes to request for each object types
|
||||
foreach($GLOBALS['ORGCHART_ENTITY_OBJECT_TYPES'] as $obj_type => $conf) {
|
||||
$parent_id_attr = LSconfig :: get('parent_id_attr', '', 'string', $conf);
|
||||
if ($parent_id_attr) {
|
||||
if (!$obj_type :: hasAttr($parent_id_attr))
|
||||
LStemplate :: fatal_error("Object '$obj_type' does not have attribute '$id_attr'.");
|
||||
$requested_attrs[$obj_type][] = $parent_id_attr;
|
||||
}
|
||||
$objects_conf[$obj_type]['parent_id_attr'] = $parent_id_attr;
|
||||
|
||||
$objects_conf[$obj_type]['other_attrs'] = LSconfig :: get('other_attrs', array(), 'array', $conf);
|
||||
foreach($objects_conf[$obj_type]['other_attrs'] as $attr) {
|
||||
if ($obj_type :: hasAttr($attr)) {
|
||||
if (!in_array($attr, $requested_attrs))
|
||||
$requested_attrs[$obj_type][] = $attr;
|
||||
}
|
||||
|
||||
foreach(getFieldInFormat($attr) as $a) {
|
||||
if (!$obj_type :: hasAttr($a))
|
||||
LStemplate :: fatal_error("Object '$obj_type' does not have attribute '$a'.");
|
||||
if (!in_array($a, $attrs))
|
||||
$requested_attrs[$obj_type][] = $a;
|
||||
}
|
||||
}
|
||||
|
||||
$parent_id_attr_value = LSconfig :: get('parent_id_attr_value', 'dn', 'string', $conf);
|
||||
$objects_conf[$obj_type]['parent_id_attr_value'] = $parent_id_attr_value;
|
||||
|
||||
$objects_conf[$obj_type]['parent_object_types'] = LSconfig :: get(
|
||||
'parent_object_types',
|
||||
array_keys($GLOBALS['ORGCHART_ENTITY_OBJECT_TYPES']),
|
||||
'array', $conf);
|
||||
foreach($objects_conf[$obj_type]['parent_object_types'] as $parent_object_type) {
|
||||
if (!array_key_exists($parent_object_type, $objects))
|
||||
LStemplate :: fatal_error("Object type '$parent_object_type' not configured for the organizational chart.");
|
||||
|
||||
if ($parent_id_attr_value == 'dn') continue;
|
||||
|
||||
if (!$parent_object_type :: hasAttr($parent_id_attr_value))
|
||||
LStemplate :: fatal_error("Object '$parent_object_type' does not have attribute '$parent_id_attr_value'.");
|
||||
|
||||
if (!in_array($parent_id_attr_value, $requested_attrs[$parent_object_type]))
|
||||
$requested_attrs[$parent_object_type][] = $parent_id_attr_value;
|
||||
|
||||
if (!in_array($parent_id_attr_value, $objects_attr2dn_need[$parent_object_type])) {
|
||||
$objects_attr2dn_need[$parent_object_type][] = $parent_id_attr_value;
|
||||
$objects_attr2dn[$parent_object_type][$parent_id_attr_value] = array();
|
||||
}
|
||||
}
|
||||
|
||||
// Load optional filter
|
||||
$objects_conf[$obj_type]['filter'] = LSconfig :: get('filter', '', 'string', $conf);
|
||||
}
|
||||
|
||||
// Load all objects
|
||||
if (!LSsession :: loadLSclass('LSsearch'))
|
||||
LStemplate :: fatal_error("Error loading LSsearch class");
|
||||
foreach($objects_conf as $obj_type => $conf) {
|
||||
// Compute search parameters
|
||||
$search_params = array(
|
||||
'attributes' => $requested_attrs[$obj_type],
|
||||
);
|
||||
if ($conf['filter']) {
|
||||
$search_params['filter'] = $conf['filter'];
|
||||
}
|
||||
|
||||
// Run search
|
||||
$search = new LSsearch($obj_type, 'orgchart', $search_params);
|
||||
$search -> run();
|
||||
|
||||
// Iter on found entries and store object data in $objects[$obj_type]
|
||||
foreach($search -> listEntries() as $dn => $entry) {
|
||||
$data = array(
|
||||
'type' => $obj_type,
|
||||
'url' => "object/$obj_type/".urlencode($dn),
|
||||
'parent_id' => null,
|
||||
);
|
||||
|
||||
// Load parent ID
|
||||
if ($conf['parent_id_attr']) {
|
||||
$parent_ids = ensureIsArray($entry->get($conf['parent_id_attr']));
|
||||
if ($parent_ids) $data['parent_id'] = $parent_ids[0];
|
||||
}
|
||||
|
||||
// Load other attributes values
|
||||
foreach ($conf['other_attrs'] as $key => $attr)
|
||||
$data[$key] = ensureIsArray($entry->get($attr));
|
||||
$objects[$obj_type][$dn] = $data;
|
||||
|
||||
// If some object types refer to this one using attribute values,
|
||||
// store attribute values to DN in $objects_attr2dn[$obj_type][$attr]
|
||||
foreach($objects_attr2dn_need[$obj_type] as $attr)
|
||||
foreach(ensureIsArray($entry->get($attr)) as $value)
|
||||
$objects_attr2dn[$obj_type][$attr][$value] = $dn;
|
||||
}
|
||||
}
|
||||
|
||||
// Compute list of org chart entities
|
||||
$entities = array();
|
||||
$root_entities = array();
|
||||
foreach($objects_conf as $obj_type => $conf) {
|
||||
foreach($objects[$obj_type] as $dn => $data) {
|
||||
// Check parent exist
|
||||
$data['parentId'] = null;
|
||||
if ($conf['parent_id_attr'] && $data['parent_id']) {
|
||||
// Object have a parent
|
||||
$parent_id = $data['parent_id'];
|
||||
|
||||
if ($conf['parent_id_attr_value'] == 'dn') {
|
||||
// Parent is refer by DN
|
||||
foreach($conf['parent_object_types'] as $parent_object_type) {
|
||||
if (array_key_exists($parent_id, $objects[$parent_object_type])) {
|
||||
$data['parentId'] = $parent_id;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
else {
|
||||
// Parent is refer by one of its attribute value
|
||||
foreach($conf['parent_object_types'] as $parent_object_type) {
|
||||
if (array_key_exists($parent_id, $objects_attr2dn[$parent_object_type][$conf['parent_id_attr_value']])) {
|
||||
$data['parentId'] = $objects_attr2dn[$parent_object_type][$conf['parent_id_attr_value']][$parent_id];
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (is_null($data['parentId'])) {
|
||||
// Parent not found: use root entity if defined or ignored object
|
||||
if ($root_entity)
|
||||
$data['parentId'] = $root_entity['id'];
|
||||
else
|
||||
// No root entity: do not add this object from chart
|
||||
continue;
|
||||
}
|
||||
}
|
||||
elseif ($root_entity && !$data['parent_id']) {
|
||||
// Object have no parent, but root entity configured : add it
|
||||
$data['parentId'] = $root_entity['id'];
|
||||
}
|
||||
elseif (!$root_entity && !$data['parent_id']) {
|
||||
// Object have no parent and no root entity configured : store it as root entities
|
||||
$root_entities[] = $dn;
|
||||
}
|
||||
// Remove parent_id and keep only parentId key
|
||||
unset($data['parent_id']);
|
||||
|
||||
// Store DN as chart entity ID
|
||||
$data['id'] = $dn;
|
||||
$entities[] = $data;
|
||||
}
|
||||
}
|
||||
|
||||
if ($root_entity) {
|
||||
// Root entity configured : add it to chart entities
|
||||
$entities[] = $root_entity;
|
||||
}
|
||||
elseif(count($root_entities) != 1) {
|
||||
LStemplate :: fatal_error('More than one root entities found : '.implode(' / ', $root_entities));
|
||||
}
|
||||
|
||||
// Adjust content-type and dump entities data as JSON
|
||||
header('Content-Type: application/json');
|
||||
echo json_encode(
|
||||
$entities,
|
||||
(
|
||||
$pretty || isset($_REQUEST['pretty'])?
|
||||
JSON_PRETTY_PRINT:
|
||||
0
|
||||
)
|
||||
);
|
||||
exit();
|
||||
}
|
2
src/includes/js/d3-flextree_2.1.2.min.js
vendored
Normal file
2
src/includes/js/d3-flextree_2.1.2.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
43
src/includes/js/d3-org-chart_2.6.0.min.js
vendored
Normal file
43
src/includes/js/d3-org-chart_2.6.0.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
2
src/includes/js/d3_7.3.0.min.js
vendored
Normal file
2
src/includes/js/d3_7.3.0.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
src/includes/js/mustache_4.2.0.min.js
vendored
Normal file
1
src/includes/js/mustache_4.2.0.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
21
src/includes/js/organizationalChart.js
Normal file
21
src/includes/js/organizationalChart.js
Normal file
|
@ -0,0 +1,21 @@
|
|||
renderChart = function () {
|
||||
var chart;
|
||||
d3.json(
|
||||
'addon/orgchart/orgchartdata'
|
||||
).then(data => {
|
||||
chart = new d3.OrgChart()
|
||||
.container('.chart-container')
|
||||
.nodeWidth((d) => 300)
|
||||
.initialZoom(0.7)
|
||||
.nodeHeight((d) => 70)
|
||||
.childrenMargin((d) => 40)
|
||||
.compactMarginBetween((d) => 15)
|
||||
.compactMarginPair((d) => 80)
|
||||
.data(data)
|
||||
.nodeContent(function (d, i, arr, state) {
|
||||
var template = document.getElementById('nodeTemplate').innerHTML;
|
||||
return Mustache.render(template, d.data);
|
||||
})
|
||||
.render();
|
||||
});
|
||||
};
|
Binary file not shown.
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: LdapSaisie\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: \n"
|
||||
"PO-Revision-Date: 2021-12-15 15:34+0100\n"
|
||||
"PO-Revision-Date: 2022-02-22 18:24+0100\n"
|
||||
"Last-Translator: Benjamin Renard <brenard@zionetrix.net>\n"
|
||||
"Language-Team: LdapSaisie <ldapsaisie-users@lists.labs.libre-entreprise."
|
||||
"org>\n"
|
||||
|
@ -223,6 +223,24 @@ msgstr ""
|
|||
"Support POSIX : L'attribut %{dependency} est manquant. Impossible de générer "
|
||||
"l'attribut %{attr}."
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/addons/LSaddons.orgchart.php:27
|
||||
msgid ""
|
||||
"Organizational Chart Support : The global array %{array} is not defined."
|
||||
msgstr "Support Organigramme : Le tableau global %{array} n'est pas définie."
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/addons/LSaddons.orgchart.php:30
|
||||
msgid ""
|
||||
"Organizational Chart Support : The global variable %{var} is not defined."
|
||||
msgstr "Support Organigramme : La variable globale %{var} n'est pas définie."
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/addons/LSaddons.orgchart.php:67
|
||||
msgid "Organizational chart"
|
||||
msgstr "Organigramme"
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/addons/LSaddons.orgchart.php:75
|
||||
msgid "Organizational chart data"
|
||||
msgstr "Données de l'organigramme"
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/addons/LSaddons.supann.php:27
|
||||
msgid "SUPANN Support : The constant %{const} is not defined."
|
||||
msgstr "Support SUPPAN : La constante %{const} n'est pas définie."
|
||||
|
@ -630,9 +648,9 @@ msgstr "Confirmez-vous votre choix ?"
|
|||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSconfirmBox.php:37
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSsmoothbox.php:39
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSform.php:74
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:631
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1285
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1431
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:632
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1286
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1432
|
||||
#: templates/default/recoverpassword.tpl:21
|
||||
msgid "Validate"
|
||||
msgstr "Valider"
|
||||
|
@ -774,10 +792,10 @@ msgstr ""
|
|||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_select_object.php:68
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_supannLabeledValue.php:79
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSsearchEntry.php:177
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1045
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1213
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1298
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1444
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1046
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1214
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1299
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1445
|
||||
msgid "Modify"
|
||||
msgstr "Modifier"
|
||||
|
||||
|
@ -1091,7 +1109,7 @@ msgstr ""
|
|||
"LSformElement_postaladdress : La fonction de génération de l'URL de la carte "
|
||||
"n'est pas exécutable (%{function})."
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformRule_zxcvbn.php:82
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformRule_zxcvbn.php:88
|
||||
msgid "The security of this password is too weak."
|
||||
msgstr "La sécurité de ce mot de passe est trop faible."
|
||||
|
||||
|
@ -1142,8 +1160,8 @@ msgid "Your new password has been sent to %{mail}."
|
|||
msgstr "Votre nouveau mot de passe vous a été envoyé à l'adresse %{mail}."
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSsession.php:1745
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:156
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:467
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:157
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:468
|
||||
#: templates/default/select.tpl:29
|
||||
msgid "Refresh"
|
||||
msgstr "Rafraîchir"
|
||||
|
@ -1743,8 +1761,8 @@ msgstr "Attention"
|
|||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_select_object.php:69
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_select_object.php:85
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSsearchEntry.php:193
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1061
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1205
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1062
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1206
|
||||
msgid "Delete"
|
||||
msgstr "Supprimer"
|
||||
|
||||
|
@ -1754,8 +1772,8 @@ msgid "No object."
|
|||
msgstr "Aucun objet."
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSrelation.php:712
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:449
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:990
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:450
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:991
|
||||
msgid "New"
|
||||
msgstr "Nouveau"
|
||||
|
||||
|
@ -1993,14 +2011,14 @@ msgstr ""
|
|||
"de contacter le support."
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSform.php:230
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:627
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:628
|
||||
msgid "Do you really want to execute custom action %{title} on this search ?"
|
||||
msgstr ""
|
||||
"Êtes-vous vraiment sûre de vouloir exécuter l'action personnalisée %{title} "
|
||||
"sur cette recherche ?"
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSform.php:236
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1425
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1426
|
||||
msgid ""
|
||||
"Do you really want to execute custom action %{customAction} on "
|
||||
"%{objectname} ?"
|
||||
|
@ -2201,8 +2219,8 @@ msgid "Display RSS stack."
|
|||
msgstr "Afficher la file RSS."
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSattr_ldap_password.php:100
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:580
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1372
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:581
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1373
|
||||
msgid "undefined"
|
||||
msgstr "non-définie"
|
||||
|
||||
|
@ -2518,7 +2536,7 @@ msgstr ""
|
|||
"LSattr_html_select_list : Impossible de récupérer les valeurs possibles de "
|
||||
"l'attribut %{attr} en utilisant la fonction configurée %{callable}."
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformRule_inarray.php:62
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformRule_inarray.php:66
|
||||
msgid ""
|
||||
"LSformRule_inarray : Possible values has not been configured to validate "
|
||||
"data."
|
||||
|
@ -2607,14 +2625,14 @@ msgid "Unknown error : %{error}"
|
|||
msgstr "Erreur inconnu : %{error}"
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSsearchEntry.php:169
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1197
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1290
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1436
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1198
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1291
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1437
|
||||
msgid "View"
|
||||
msgstr "Voir"
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSsearchEntry.php:185
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1053
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1054
|
||||
msgid "Copy"
|
||||
msgstr "Copier"
|
||||
|
||||
|
@ -2640,83 +2658,83 @@ msgstr ""
|
|||
msgid "Home"
|
||||
msgstr "Accueil"
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:150
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:151
|
||||
msgid "You must provide pattern for global search."
|
||||
msgstr "Vous devez fournir un mot clé pour les recherches globales."
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:455
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:811
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:456
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:812
|
||||
msgid "Import"
|
||||
msgstr "Importer"
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:460
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:877
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:461
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:878
|
||||
msgid "Export"
|
||||
msgstr "Exporter"
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:472
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:473
|
||||
msgid "Reset"
|
||||
msgstr "Réinitialiser"
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:510
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:511
|
||||
#: templates/default/select.tpl:28 templates/default/global_search.tpl:6
|
||||
msgid "Search"
|
||||
msgstr "Rechercher"
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:511
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:512
|
||||
#: templates/default/select.tpl:31
|
||||
msgid "Approximative search"
|
||||
msgstr "Recherche approximative"
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:512
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:513
|
||||
#: templates/default/select.tpl:32
|
||||
msgid "Recursive search"
|
||||
msgstr "Recherche récursive"
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:601
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:602
|
||||
msgid ""
|
||||
"The custom action %{title} have been successfully execute on this search."
|
||||
msgstr ""
|
||||
"L'action personnalisée %{title} a été correctement exécutée sur cette "
|
||||
"recherche."
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:949
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:950
|
||||
msgid "Data entry form"
|
||||
msgstr "Masque de saisie"
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:955
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1729
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:956
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1730
|
||||
msgid "Object has been added."
|
||||
msgstr "L'objet a été ajouté."
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1092
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1093
|
||||
msgid "My account"
|
||||
msgstr "Mon compte"
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1155
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1901
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1156
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1902
|
||||
msgid "The object has been partially modified."
|
||||
msgstr "L'objet a été partiellement modifié."
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1158
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1904
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1159
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1905
|
||||
msgid "The object has been modified successfully."
|
||||
msgstr "L'objet a bien été modifié."
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1273
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1944
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1274
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1945
|
||||
msgid "%{objectname} has been successfully deleted."
|
||||
msgstr "%{objectname} a bien été supprimé."
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1282
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1283
|
||||
msgid "Deleting : %{objectname}"
|
||||
msgstr "Suppression : %{objectname}"
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1283
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1284
|
||||
msgid "Do you really want to delete <strong>%{displayName}</strong> ?"
|
||||
msgstr "Voulez-vous vraiment supprimer <strong>%{displayName}</strong> ?"
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1393
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1394
|
||||
msgid ""
|
||||
"The custom action %{customAction} have been successfully execute on "
|
||||
"%{objectname}."
|
||||
|
|
|
@ -164,6 +164,24 @@ msgid ""
|
|||
"attribute %{attr}."
|
||||
msgstr ""
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/addons/LSaddons.orgchart.php:27
|
||||
msgid ""
|
||||
"Organizational Chart Support : The global array %{array} is not defined."
|
||||
msgstr ""
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/addons/LSaddons.orgchart.php:30
|
||||
msgid ""
|
||||
"Organizational Chart Support : The global variable %{var} is not defined."
|
||||
msgstr ""
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/addons/LSaddons.orgchart.php:67
|
||||
msgid "Organizational chart"
|
||||
msgstr ""
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/addons/LSaddons.orgchart.php:75
|
||||
msgid "Organizational chart data"
|
||||
msgstr ""
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/addons/LSaddons.supann.php:27
|
||||
msgid "SUPANN Support : The constant %{const} is not defined."
|
||||
msgstr ""
|
||||
|
@ -528,9 +546,9 @@ msgstr ""
|
|||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSconfirmBox.php:37
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSsmoothbox.php:39
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSform.php:74
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:631
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1285
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1431
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:632
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1286
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1432
|
||||
#: templates/default/recoverpassword.tpl:21
|
||||
msgid "Validate"
|
||||
msgstr ""
|
||||
|
@ -659,10 +677,10 @@ msgstr ""
|
|||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_select_object.php:68
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_supannLabeledValue.php:79
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSsearchEntry.php:177
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1045
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1213
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1298
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1444
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1046
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1214
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1299
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1445
|
||||
msgid "Modify"
|
||||
msgstr ""
|
||||
|
||||
|
@ -924,7 +942,7 @@ msgid ""
|
|||
"callabled (%{function})."
|
||||
msgstr ""
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformRule_zxcvbn.php:82
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformRule_zxcvbn.php:88
|
||||
msgid "The security of this password is too weak."
|
||||
msgstr ""
|
||||
|
||||
|
@ -970,8 +988,8 @@ msgid "Your new password has been sent to %{mail}."
|
|||
msgstr ""
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSsession.php:1745
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:156
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:467
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:157
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:468
|
||||
#: templates/default/select.tpl:29
|
||||
msgid "Refresh"
|
||||
msgstr ""
|
||||
|
@ -1469,8 +1487,8 @@ msgstr ""
|
|||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_select_object.php:69
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_select_object.php:85
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSsearchEntry.php:193
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1061
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1205
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1062
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1206
|
||||
msgid "Delete"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1480,8 +1498,8 @@ msgid "No object."
|
|||
msgstr ""
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSrelation.php:712
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:449
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:990
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:450
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:991
|
||||
msgid "New"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1679,12 +1697,12 @@ msgid ""
|
|||
msgstr ""
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSform.php:230
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:627
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:628
|
||||
msgid "Do you really want to execute custom action %{title} on this search ?"
|
||||
msgstr ""
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSform.php:236
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1425
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1426
|
||||
msgid ""
|
||||
"Do you really want to execute custom action %{customAction} on "
|
||||
"%{objectname} ?"
|
||||
|
@ -1869,8 +1887,8 @@ msgid "Display RSS stack."
|
|||
msgstr ""
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSattr_ldap_password.php:100
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:580
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1372
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:581
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1373
|
||||
msgid "undefined"
|
||||
msgstr ""
|
||||
|
||||
|
@ -2146,7 +2164,7 @@ msgid ""
|
|||
"%{attr} using configured function %{callable}."
|
||||
msgstr ""
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformRule_inarray.php:62
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformRule_inarray.php:66
|
||||
msgid ""
|
||||
"LSformRule_inarray : Possible values has not been configured to validate "
|
||||
"data."
|
||||
|
@ -2228,14 +2246,14 @@ msgid "Unknown error : %{error}"
|
|||
msgstr ""
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSsearchEntry.php:169
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1197
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1290
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1436
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1198
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1291
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1437
|
||||
msgid "View"
|
||||
msgstr ""
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSsearchEntry.php:185
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1053
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1054
|
||||
msgid "Copy"
|
||||
msgstr ""
|
||||
|
||||
|
@ -2257,81 +2275,81 @@ msgstr ""
|
|||
msgid "Home"
|
||||
msgstr ""
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:150
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:151
|
||||
msgid "You must provide pattern for global search."
|
||||
msgstr ""
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:455
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:811
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:456
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:812
|
||||
msgid "Import"
|
||||
msgstr ""
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:460
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:877
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:461
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:878
|
||||
msgid "Export"
|
||||
msgstr ""
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:472
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:473
|
||||
msgid "Reset"
|
||||
msgstr ""
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:510
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:511
|
||||
#: templates/default/select.tpl:28 templates/default/global_search.tpl:6
|
||||
msgid "Search"
|
||||
msgstr ""
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:511
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:512
|
||||
#: templates/default/select.tpl:31
|
||||
msgid "Approximative search"
|
||||
msgstr ""
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:512
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:513
|
||||
#: templates/default/select.tpl:32
|
||||
msgid "Recursive search"
|
||||
msgstr ""
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:601
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:602
|
||||
msgid ""
|
||||
"The custom action %{title} have been successfully execute on this search."
|
||||
msgstr ""
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:949
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:950
|
||||
msgid "Data entry form"
|
||||
msgstr ""
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:955
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1729
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:956
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1730
|
||||
msgid "Object has been added."
|
||||
msgstr ""
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1092
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1093
|
||||
msgid "My account"
|
||||
msgstr ""
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1155
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1901
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1156
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1902
|
||||
msgid "The object has been partially modified."
|
||||
msgstr ""
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1158
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1904
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1159
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1905
|
||||
msgid "The object has been modified successfully."
|
||||
msgstr ""
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1273
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1944
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1274
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1945
|
||||
msgid "%{objectname} has been successfully deleted."
|
||||
msgstr ""
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1282
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1283
|
||||
msgid "Deleting : %{objectname}"
|
||||
msgstr ""
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1283
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1284
|
||||
msgid "Do you really want to delete <strong>%{displayName}</strong> ?"
|
||||
msgstr ""
|
||||
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1393
|
||||
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1394
|
||||
msgid ""
|
||||
"The custom action %{customAction} have been successfully execute on "
|
||||
"%{objectname}."
|
||||
|
|
27
src/templates/default/organizationalChart.tpl
Normal file
27
src/templates/default/organizationalChart.tpl
Normal file
|
@ -0,0 +1,27 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset={$LSencoding}">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||
<title>LdapSaisie{if isset($pagetitle) && $pagetitle} - {$pagetitle|escape:"htmlall"}{/if}</title>
|
||||
<base href="{$public_root_url}/"/>
|
||||
<link rel="icon" href="image/favicon" />
|
||||
|
||||
<script src="js/d3_7.3.0.min.js" type="text/javascript"></script>
|
||||
<script src="js/d3-org-chart_2.6.0.min.js" type="text/javascript"></script>
|
||||
<script src="js/d3-flextree_2.1.2.min.js" type="text/javascript"></script>
|
||||
<script src="js/mustache_4.2.0.min.js" type="text/javascript"></script>
|
||||
<script src="js/organizationalChart.js" type="text/javascript"></script>
|
||||
<script id="nodeTemplate" type="x-tmpl-mustache">{$template}</script>
|
||||
|
||||
<link rel="stylesheet" type="text/css" href="{css name='organizationalChart.css'}" title="Normal" />
|
||||
{foreach $additional_css_files as $file}
|
||||
<link rel="stylesheet" type="text/css" href="{css name=$file}" title="Normal" />
|
||||
{/foreach}
|
||||
</head>
|
||||
<body onload="renderChart()">
|
||||
<div class="chart-container"></div>
|
||||
</body>
|
||||
</html>
|
Loading…
Reference in a new issue