Regroup LSimport & LSexport classes in one common LSio class

This commit is contained in:
Benjamin Renard 2021-02-05 18:37:07 +01:00
parent f36c989136
commit 1e284f098a
9 changed files with 339 additions and 389 deletions

View file

@ -1,28 +1,28 @@
h3.LSimport { h3.LSio {
margin-left: 1.5em; margin-left: 1.5em;
border-bottom: 1px solid; border-bottom: 1px solid;
} }
div.LSimport_error { div.LSio_error {
padding: 0 2em; padding: 0 2em;
} }
ul.LSimport_global_errors { ul.LSio_global_errors {
background-color: #F56A6A; background-color: #F56A6A;
list-style-type: none; list-style-type: none;
padding: 1em; padding: 1em;
text-align: center; text-align: center;
} }
ul.LSimport_data_errors { ul.LSio_data_errors {
font-style: italic; font-style: italic;
font-size: 0.8em; font-size: 0.8em;
} }
ul.LSimport_attr_errors { ul.LSio_attr_errors {
padding-left: 1.5em; padding-left: 1.5em;
} }
ul.LSimport_attr_errors li { ul.LSio_attr_errors li {
color: #f00; color: #f00;
} }

View file

@ -1,230 +0,0 @@
<?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.
******************************************************************************/
LSsession :: loadLSclass('LSlog_staticLoggerClass');
LSsession::loadLSclass('LSioFormat');
/**
* Manage export LSldapObject
*
* @author Benjamin Renard <brenard@easter-eggs.com>
*/
class LSexport extends LSlog_staticLoggerClass {
/**
* Export objects
*
* @param[in] $LSobject LSldapObject An instance of the object type
* @param[in] $ioFormat string The LSioFormat name
* @param[in] $stream resource|null The output stream (optional, default: STDOUT)
*
* @author Benjamin Renard <brenard@easter-eggs.com>
*
* @retval boolean True on success, False otherwise
*/
public static function export($object, $ioFormat, $stream=null) {
// Load LSobject
if (is_string($object)) {
if (!LSsession::loadLSobject($object, true)) { // Load with warning
return false;
}
$object = new $object();
}
// Validate ioFormat
if(!$object -> isValidIOformat($ioFormat)) {
LSerror :: addErrorCode('LSexport_01', $ioFormat);
return false;
}
// Create LSioFormat object
$ioFormat = new LSioFormat($object -> type, $ioFormat);
if (!$ioFormat -> ready()) {
LSerror :: addErrorCode('LSexport_02');
return false;
}
// Load LSsearch class (with warning)
if (!LSsession :: loadLSclass('LSsearch', null, true)) {
return false;
}
// Search objects
$search = new LSsearch($object -> type, 'LSexport');
$search -> run();
// Retreive objets
$objects = $search -> listObjects();
if (!is_array($objects)) {
LSerror :: addErrorCode('LSexport_03');
return false;
}
self :: log_debug(count($objects)." object(s) found to export");
// Export objects using LSioFormat object
if (!$ioFormat -> exportObjects($objects, $stream)) {
LSerror :: addErrorCode('LSexport_04');
return false;
}
self :: log_debug("export(): objects exported");
return true;
}
/**
* CLI export command
*
* @param[in] $command_args array Command arguments:
* - Positional arguments:
* - LSobject type
* - LSioFormat name
* - Optional arguments:
* - -o|--output: Output path ("-" == stdout, default: "-")
*
* @retval boolean True on succes, false otherwise
**/
public static function cli_export($command_args) {
$objType = null;
$ioFormat = null;
$output = '-';
for ($i=0; $i < count($command_args); $i++) {
switch ($command_args[$i]) {
case '-o':
case '--output':
$output = $command_args[++$i];
break;
default:
if (is_null($objType)) {
$objType = $command_args[$i];
}
elseif (is_null($ioFormat)) {
$ioFormat = $command_args[$i];
}
else
LScli :: usage("Invalid $arg parameter.");
}
}
if (is_null($objType) || is_null($ioFormat))
LScli :: usage('You must provide LSobject type, ioFormat.');
// Check output
if ($output != '-' && file_exists($output))
LScli :: usage("Output file '$output' already exists.");
// Open output stream
$stream = fopen(($output=='-'?'php://stdout':$output), "w");
if ($stream === false)
LSlog :: fatal("Fail to open output file '$output'.");
// Run export
return self :: export($objType, $ioFormat, $stream);
}
/**
* Args autocompleter for CLI export command
*
* @param[in] $command_args array List of already typed words of the command
* @param[in] $comp_word_num int The command word number to autocomplete
* @param[in] $comp_word string The command word to autocomplete
* @param[in] $opts array List of global available options
*
* @retval array List of available options for the word to autocomplete
**/
public static function cli_export_args_autocompleter($command_args, $comp_word_num, $comp_word, $opts) {
$opts = array_merge($opts, array ('-o', '--output'));
// Handle positional args
$objType = null;
$objType_arg_num = null;
$ioFormat = null;
$ioFormat_arg_num = null;
for ($i=0; $i < count($command_args); $i++) {
if (!in_array($command_args[$i], $opts)) {
// If object type not defined
if (is_null($objType)) {
// Defined it
$objType = $command_args[$i];
LScli :: unquote_word($objType);
$objType_arg_num = $i;
// Check object type exists
$objTypes = LScli :: autocomplete_LSobject_types($objType);
// Load it if exist and not trying to complete it
if (in_array($objType, $objTypes) && $i != $comp_word_num) {
LSsession :: loadLSobject($objType, false);
}
}
elseif (is_null($ioFormat)) {
$ioFormat = $command_args[$i];
LScli :: unquote_word($ioFormat);
$ioFormat_arg_num = $i;
}
}
}
// If objType not already choiced (or currently autocomplete), add LSobject types to available options
if (!$objType || $objType_arg_num == $comp_word_num)
$opts = array_merge($opts, LScli :: autocomplete_LSobject_types($comp_word));
// If dn not alreay choiced (or currently autocomplete), try autocomplete it
elseif (!$ioFormat || $ioFormat_arg_num == $comp_word_num)
$opts = array_merge($opts, LScli :: autocomplete_LSobject_ioFormat($objType, $comp_word));
return LScli :: autocomplete_opts($opts, $comp_word);
}
}
LSerror :: defineError('LSexport_01',
___("LSexport: input/output format %{format} invalid.")
);
LSerror :: defineError('LSexport_02',
___("LSexport: Fail to initialize input/output driver.")
);
LSerror :: defineError('LSexport_03',
___("LSexport: Fail to load objects's data to export from LDAP directory.")
);
LSerror :: defineError('LSexport_04',
___("LSexport: Fail to export objects's data.")
);
// Defined CLI commands functions only on CLI context
if (php_sapi_name() != 'cli')
return true; // Always return true to avoid some warning in log
// LScli
LScli :: add_command(
'export',
array('LSexport', 'cli_export'),
'Export LSobject',
'[object type] [ioFormat name] -o /path/to/output.file',
array(
' - Positional arguments :',
' - LSobject type',
' - LSioFormat name',
'',
' - Optional arguments :',
' - -o|--output: The output file path. Use "-" for STDOUT (optional, default: "-")',
),
true,
array('LSexport', 'cli_export_args_autocompleter')
);

View file

@ -28,17 +28,19 @@ LSsession::loadLSclass('LSioFormat');
* *
* @author Benjamin Renard <brenard@easter-eggs.com> * @author Benjamin Renard <brenard@easter-eggs.com>
*/ */
class LSimport extends LSlog_staticLoggerClass { class LSio extends LSlog_staticLoggerClass {
/** /**
* Check if the form was posted by check POST data * Check if the form was posted by check POST data
* *
* @param[in] $action string The action name used as POST validate flag value
*
* @author Benjamin Renard <brenard@easter-eggs.com> * @author Benjamin Renard <brenard@easter-eggs.com>
* *
* @retval boolean true if the form was posted, false otherwise * @retval boolean true if the form was posted, false otherwise
*/ */
public static function isSubmit() { public static function isSubmit($action) {
if (isset($_POST['validate']) && ($_POST['validate']=='LSimport')) if (isset($_POST['validate']) && ($_POST['validate']==$action))
return true; return true;
return; return;
} }
@ -111,7 +113,7 @@ class LSimport extends LSlog_staticLoggerClass {
// Get data from $_POST // Get data from $_POST
$data = self::getPostData(); $data = self::getPostData();
if (!is_array($data)) { if (!is_array($data)) {
LSerror :: addErrorCode('LSimport_01'); LSerror :: addErrorCode('LSio_01');
return array( return array(
'success' => false, 'success' => false,
'imported' => array(), 'imported' => array(),
@ -195,27 +197,27 @@ class LSimport extends LSlog_staticLoggerClass {
// Load LSobject // Load LSobject
if (!isset($LSobject) || !LSsession::loadLSobject($LSobject)) { if (!isset($LSobject) || !LSsession::loadLSobject($LSobject)) {
LSerror :: addErrorCode('LSimport_02'); LSerror :: addErrorCode('LSio_02');
return $return; return $return;
} }
// Validate ioFormat // Validate ioFormat
$object = new $LSobject(); $object = new $LSobject();
if(!$object -> isValidIOformat($ioFormat)) { if(!$object -> isValidIOformat($ioFormat)) {
LSerror :: addErrorCode('LSimport_03',$ioFormat); LSerror :: addErrorCode('LSio_03',$ioFormat);
return $return; return $return;
} }
// Create LSioFormat object // Create LSioFormat object
$ioFormat = new LSioFormat($LSobject,$ioFormat); $ioFormat = new LSioFormat($LSobject,$ioFormat);
if (!$ioFormat -> ready()) { if (!$ioFormat -> ready()) {
LSerror :: addErrorCode('LSimport_04'); LSerror :: addErrorCode('LSio_04');
return $return; return $return;
} }
// Load data in LSioFormat object // Load data in LSioFormat object
if (!$ioFormat -> loadFile($input_file)) { if (!$ioFormat -> loadFile($input_file)) {
LSerror :: addErrorCode('LSimport_05'); LSerror :: addErrorCode('LSio_05');
return $return; return $return;
} }
self :: log_debug("import(): file loaded"); self :: log_debug("import(): file loaded");
@ -327,6 +329,65 @@ class LSimport extends LSlog_staticLoggerClass {
return $return; return $return;
} }
/**
* Export objects
*
* @param[in] $LSobject LSldapObject An instance of the object type
* @param[in] $ioFormat string The LSioFormat name
* @param[in] $stream resource|null The output stream (optional, default: STDOUT)
*
* @author Benjamin Renard <brenard@easter-eggs.com>
*
* @retval boolean True on success, False otherwise
*/
public static function export($object, $ioFormat, $stream=null) {
// Load LSobject
if (is_string($object)) {
if (!LSsession::loadLSobject($object, true)) { // Load with warning
return false;
}
$object = new $object();
}
// Validate ioFormat
if(!$object -> isValidIOformat($ioFormat)) {
LSerror :: addErrorCode('LSio_03', $ioFormat);
return false;
}
// Create LSioFormat object
$ioFormat = new LSioFormat($object -> type, $ioFormat);
if (!$ioFormat -> ready()) {
LSerror :: addErrorCode('LSio_04');
return false;
}
// Load LSsearch class (with warning)
if (!LSsession :: loadLSclass('LSsearch', null, true)) {
return false;
}
// Search objects
$search = new LSsearch($object -> type, 'LSio');
$search -> run();
// Retreive objets
$objects = $search -> listObjects();
if (!is_array($objects)) {
LSerror :: addErrorCode('LSio_06');
return false;
}
self :: log_debug(count($objects)." object(s) found to export");
// Export objects using LSioFormat object
if (!$ioFormat -> exportObjects($objects, $stream)) {
LSerror :: addErrorCode('LSio_07');
return false;
}
self :: log_debug("export(): objects exported");
return true;
}
/** /**
* CLI import command * CLI import command
* *
@ -486,11 +547,115 @@ class LSimport extends LSlog_staticLoggerClass {
return LScli :: autocomplete_opts($opts, $comp_word); return LScli :: autocomplete_opts($opts, $comp_word);
} }
/**
* CLI export command
*
* @param[in] $command_args array Command arguments:
* - Positional arguments:
* - LSobject type
* - LSioFormat name
* - Optional arguments:
* - -o|--output: Output path ("-" == stdout, default: "-")
*
* @retval boolean True on succes, false otherwise
**/
public static function cli_export($command_args) {
$objType = null;
$ioFormat = null;
$output = '-';
for ($i=0; $i < count($command_args); $i++) {
switch ($command_args[$i]) {
case '-o':
case '--output':
$output = $command_args[++$i];
break;
default:
if (is_null($objType)) {
$objType = $command_args[$i];
}
elseif (is_null($ioFormat)) {
$ioFormat = $command_args[$i];
}
else
LScli :: usage("Invalid $arg parameter.");
}
}
if (is_null($objType) || is_null($ioFormat))
LScli :: usage('You must provide LSobject type, ioFormat.');
// Check output
if ($output != '-' && file_exists($output))
LScli :: usage("Output file '$output' already exists.");
// Open output stream
$stream = fopen(($output=='-'?'php://stdout':$output), "w");
if ($stream === false)
LSlog :: fatal("Fail to open output file '$output'.");
// Run export
return self :: export($objType, $ioFormat, $stream);
}
/**
* Args autocompleter for CLI export command
*
* @param[in] $command_args array List of already typed words of the command
* @param[in] $comp_word_num int The command word number to autocomplete
* @param[in] $comp_word string The command word to autocomplete
* @param[in] $opts array List of global available options
*
* @retval array List of available options for the word to autocomplete
**/
public static function cli_export_args_autocompleter($command_args, $comp_word_num, $comp_word, $opts) {
$opts = array_merge($opts, array ('-o', '--output'));
// Handle positional args
$objType = null;
$objType_arg_num = null;
$ioFormat = null;
$ioFormat_arg_num = null;
for ($i=0; $i < count($command_args); $i++) {
if (!in_array($command_args[$i], $opts)) {
// If object type not defined
if (is_null($objType)) {
// Defined it
$objType = $command_args[$i];
LScli :: unquote_word($objType);
$objType_arg_num = $i;
// Check object type exists
$objTypes = LScli :: autocomplete_LSobject_types($objType);
// Load it if exist and not trying to complete it
if (in_array($objType, $objTypes) && $i != $comp_word_num) {
LSsession :: loadLSobject($objType, false);
}
}
elseif (is_null($ioFormat)) {
$ioFormat = $command_args[$i];
LScli :: unquote_word($ioFormat);
$ioFormat_arg_num = $i;
}
}
}
// If objType not already choiced (or currently autocomplete), add LSobject types to available options
if (!$objType || $objType_arg_num == $comp_word_num)
$opts = array_merge($opts, LScli :: autocomplete_LSobject_types($comp_word));
// If dn not alreay choiced (or currently autocomplete), try autocomplete it
elseif (!$ioFormat || $ioFormat_arg_num == $comp_word_num)
$opts = array_merge($opts, LScli :: autocomplete_LSobject_ioFormat($objType, $comp_word));
return LScli :: autocomplete_opts($opts, $comp_word);
}
} }
/* /*
* LSimport_implodeValues template function * LSio_implodeValues template function
* *
* This function permit to implode field values during * This function permit to implode field values during
* template processing. This function take as parameters * template processing. This function take as parameters
@ -502,30 +667,36 @@ class LSimport extends LSlog_staticLoggerClass {
* *
* @retval void * @retval void
**/ **/
function LSimport_implodeValues($params, $template) { function LSio_implodeValues($params, $template) {
extract($params); extract($params);
if (isset($values) && is_array($values)) { if (isset($values) && is_array($values)) {
echo implode(',',$values); echo implode(',',$values);
} }
} }
LStemplate :: registerFunction('LSimport_implodeValues','LSimport_implodeValues'); LStemplate :: registerFunction('LSio_implodeValues','LSio_implodeValues');
LSerror :: defineError('LSimport_01', LSerror :: defineError('LSio_01',
___("LSimport: Post data not found or not completed.") ___("LSio: Post data not found or not completed.")
); );
LSerror :: defineError('LSimport_02', LSerror :: defineError('LSio_02',
___("LSimport: object type invalid.") ___("LSio: object type invalid.")
); );
LSerror :: defineError('LSimport_03', LSerror :: defineError('LSio_03',
___("LSimport: input/output format %{format} invalid.") ___("LSio: input/output format %{format} invalid.")
); );
LSerror :: defineError('LSimport_04', LSerror :: defineError('LSio_04',
___("LSimport: Fail to initialize input/output driver.") ___("LSio: Fail to initialize input/output driver.")
); );
LSerror :: defineError('LSimport_05', LSerror :: defineError('LSio_05',
___("LSimport: Fail to load objects's data from input file.") ___("LSio: Fail to load objects's data from input file.")
);
LSerror :: defineError('LSio_06',
___("LSio: Fail to load objects's data to export from LDAP directory.")
);
LSerror :: defineError('LSio_07',
___("LSio: Fail to export objects's data.")
); );
// Defined CLI commands functions only on CLI context // Defined CLI commands functions only on CLI context
@ -535,7 +706,7 @@ if (php_sapi_name() != 'cli')
// LScli // LScli
LScli :: add_command( LScli :: add_command(
'import', 'import',
array('LSimport', 'cli_import'), array('LSio', 'cli_import'),
'Import LSobject', 'Import LSobject',
'[object type] [ioFormat name] -i /path/to/input.file', '[object type] [ioFormat name] -i /path/to/input.file',
array( array(
@ -549,5 +720,23 @@ LScli :: add_command(
' - -j|--just-try Enable just-try mode', ' - -j|--just-try Enable just-try mode',
), ),
true, true,
array('LSimport', 'cli_import_args_autocompleter') array('LSio', 'cli_import_args_autocompleter')
);
// LScli
LScli :: add_command(
'export',
array('LSio', 'cli_export'),
'Export LSobject',
'[object type] [ioFormat name] -o /path/to/output.file',
array(
' - Positional arguments :',
' - LSobject type',
' - LSioFormat name',
'',
' - Optional arguments :',
' - -o|--output: The output file path. Use "-" for STDOUT (optional, default: "-")',
),
true,
array('LSio', 'cli_export_args_autocompleter')
); );

View file

@ -787,15 +787,15 @@ function handle_LSobject_import($request) {
$ioFormats = array(); $ioFormats = array();
$result = array(); $result = array();
if ( LSsession :: loadLSclass('LSimport', null, true)) { // import class with warning if ( LSsession :: loadLSclass('LSio', null, true)) { // import class with warning
$ioFormats = $object->listValidIOformats(); $ioFormats = $object->listValidIOformats();
if (!is_array($ioFormats) || empty($ioFormats)) { if (!is_array($ioFormats) || empty($ioFormats)) {
$ioFormats = array(); $ioFormats = array();
LSerror :: addErrorCode('LSsession_16'); LSerror :: addErrorCode('LSsession_16');
} }
else if (LSimport::isSubmit()) { else if (LSio::isSubmit('import')) {
$result = LSimport::importFromPostData(); $result = LSio::importFromPostData();
LSlog :: debug("LSimport::importFromPostData(): result = ".varDump($result)); LSlog :: debug("LSio::importFromPostData(): result = ".varDump($result));
} }
} }
@ -808,7 +808,7 @@ function handle_LSobject_import($request) {
// Set & display template // Set & display template
LSsession :: setTemplate('import.tpl'); LSsession :: setTemplate('import.tpl');
LStemplate :: addCssFile('LSform.css'); LStemplate :: addCssFile('LSform.css');
LStemplate :: addCssFile('LSimport.css'); LStemplate :: addCssFile('LSio.css');
LSsession :: displayTemplate(); LSsession :: displayTemplate();
} }
LSurl :: add_handler('#^object/(?P<LSobject>[^/]+)/import/?$#', 'handle_LSobject_import'); LSurl :: add_handler('#^object/(?P<LSobject>[^/]+)/import/?$#', 'handle_LSobject_import');
@ -855,14 +855,14 @@ function handle_LSobject_export($request) {
$ioFormats = array(); $ioFormats = array();
$result = null; $result = null;
if ( LSsession :: loadLSclass('LSexport', null, true)) { // Load class with warning if ( LSsession :: loadLSclass('LSio', null, true)) { // Load class with warning
$ioFormats = $object->listValidIOformats(); $ioFormats = $object->listValidIOformats();
if (!is_array($ioFormats) || empty($ioFormats)) { if (!is_array($ioFormats) || empty($ioFormats)) {
$ioFormats = array(); $ioFormats = array();
LSerror :: addErrorCode('LSsession_16'); LSerror :: addErrorCode('LSsession_16');
} }
else if (isset($_REQUEST['ioFormat'])) { else if (LSio::isSubmit('export') && isset($_REQUEST['ioFormat'])) {
if (!LSexport::export($object, $_REQUEST['ioFormat'])) if (!LSio::export($object, $_REQUEST['ioFormat']))
LSlog :: error("An error occurred exporting ".$object -> type); LSlog :: error("An error occurred exporting ".$object -> type);
} }
} }

View file

@ -8,7 +8,7 @@ msgstr ""
"Project-Id-Version: LdapSaisie\n" "Project-Id-Version: LdapSaisie\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: \n" "POT-Creation-Date: \n"
"PO-Revision-Date: 2021-02-05 10:32+0100\n" "PO-Revision-Date: 2021-02-05 18:27+0100\n"
"Last-Translator: Benjamin Renard <brenard@zionetrix.net>\n" "Last-Translator: Benjamin Renard <brenard@zionetrix.net>\n"
"Language-Team: LdapSaisie <ldapsaisie-users@lists.labs.libre-entreprise." "Language-Team: LdapSaisie <ldapsaisie-users@lists.labs.libre-entreprise."
"org>\n" "org>\n"
@ -437,72 +437,82 @@ msgstr "LSformRule_%{type} : Le paramètre %{param} n'est pas défini."
msgid "LSformRule: Unknown rule type %{type}." msgid "LSformRule: Unknown rule type %{type}."
msgstr "LSformRule : Type de règle %{type} inconnu." msgstr "LSformRule : Type de règle %{type} inconnu."
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSimport.php:208 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSio.php:240
msgid "Failed to set post data on creation form." msgid "Failed to set post data on creation form."
msgstr "Impossible de définir les données dans le formulaire de création." msgstr "Impossible de définir les données dans le formulaire de création."
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSimport.php:214 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSio.php:246
msgid "Error validating creation form." msgid "Error validating creation form."
msgstr "Une erreur est survenue en validant le formulaire de création." msgstr "Une erreur est survenue en validant le formulaire de création."
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSimport.php:219 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSio.php:251
msgid "Failed to validate object data." msgid "Failed to validate object data."
msgstr "Impossible de valider les données de l'objet." msgstr "Impossible de valider les données de l'objet."
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSimport.php:226 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSio.php:258
msgid "Failed to generate DN for this object." msgid "Failed to generate DN for this object."
msgstr "Impossible de générer le DN de cet objet." msgstr "Impossible de générer le DN de cet objet."
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSimport.php:240 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSio.php:272
msgid "Error creating object on LDAP server." msgid "Error creating object on LDAP server."
msgstr "Une erreur est survenue en création cet objet dans l'annuaire LDAP." msgstr "Une erreur est survenue en création cet objet dans l'annuaire LDAP."
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSimport.php:246 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSio.php:278
msgid "An object already exist on LDAP server with DN %{dn}." msgid "An object already exist on LDAP server with DN %{dn}."
msgstr "Un objet existe déjà dans l'annuaire LDAP avec le DN %{dn}." msgstr "Un objet existe déjà dans l'annuaire LDAP avec le DN %{dn}."
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSimport.php:257 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSio.php:289
msgid "" msgid ""
"Failed to load existing object %{dn} from LDAP server. Can't update object." "Failed to load existing object %{dn} from LDAP server. Can't update object."
msgstr "" msgstr ""
"Impossible de charger l'objet existant %{dn} depuis l'annuaire LDAP. " "Impossible de charger l'objet existant %{dn} depuis l'annuaire LDAP. "
"Impossible de mettre à jour cet objet." "Impossible de mettre à jour cet objet."
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSimport.php:265 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSio.php:297
msgid "Failed to set post data on update form." msgid "Failed to set post data on update form."
msgstr "Impossible de définir les données dans le formulaire de mise à jours." msgstr "Impossible de définir les données dans le formulaire de mise à jours."
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSimport.php:271 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSio.php:303
msgid "Error validating update form." msgid "Error validating update form."
msgstr "Une erreur est survenue en validant le formulaire de mise à jour." msgstr "Une erreur est survenue en validant le formulaire de mise à jour."
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSimport.php:281 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSio.php:313
msgid "Error updating object on LDAP server." msgid "Error updating object on LDAP server."
msgstr "" msgstr ""
"Une erreur est survenue en mettant à jour cet objet dans l'annuaire LDAP." "Une erreur est survenue en mettant à jour cet objet dans l'annuaire LDAP."
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSimport.php:327 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSio.php:681
msgid "LSimport: Post data not found or not completed." msgid "LSio: Post data not found or not completed."
msgstr "LSimport : les données transmises sont introuvables ou incomplètes." msgstr "LSio : les données transmises sont introuvables ou incomplètes."
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSimport.php:330 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSio.php:684
msgid "LSimport: object type invalid." msgid "LSio: object type invalid."
msgstr "LSimport : type d'objet invalide." msgstr "LSio : type d'objet invalide."
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSimport.php:333 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSio.php:687
msgid "LSimport: input/output format %{format} invalid." msgid "LSio: input/output format %{format} invalid."
msgstr "LSimport : Le format d'entrée/sortie %{format} est invalide." msgstr "LSio : Le format d'entrée/sortie %{format} est invalide."
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSimport.php:336 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSio.php:690
msgid "LSimport: Fail to initialize input/output driver." msgid "LSio: Fail to initialize input/output driver."
msgstr "LSimport : Impossible d'initialiser le pilote d'entrée/sortie." msgstr "LSio : Impossible d'initialiser le pilote d'entrée/sortie."
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSimport.php:339 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSio.php:693
msgid "LSimport: Fail to load objects's data from input file." msgid "LSio: Fail to load objects's data from input file."
msgstr "" msgstr ""
"LSimport: Impossible de charger les données des objets depuis le fichier " "LSio: Impossible de charger les données des objets depuis le fichier "
"d'import." "d'import."
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSio.php:696
msgid "LSio: Fail to load objects's data to export from LDAP directory."
msgstr ""
"LSio: Impossible de charger les données des objets à exporter depuis "
"l'annuaire LDAP."
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSio.php:699
msgid "LSio: Fail to export objects's data."
msgstr "LSio: Impossible d'exporter les données des objets."
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSattr_ldap_pwdHistory.php:76 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSattr_ldap_pwdHistory.php:76
msgid "Unknown (%{raw_value})" msgid "Unknown (%{raw_value})"
msgstr "Inconnue (%{raw_value})" msgstr "Inconnue (%{raw_value})"
@ -541,15 +551,15 @@ msgstr ""
msgid "Attribute" msgid "Attribute"
msgstr "Attribut" msgstr "Attribut"
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_mailQuota.php:98 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_mailQuota.php:101
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_valueWithUnit.php:108 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_valueWithUnit.php:126
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_quota.php:100 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_quota.php:102
#: templates/default/LSformElement_mailQuota_field.tpl:17 #: templates/default/LSformElement_mailQuota_field.tpl:17
msgid "Incorrect value" msgid "Incorrect value"
msgstr "Valeur incorrecte" msgstr "Valeur incorrecte"
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_mailQuota.php:168 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_mailQuota.php:171
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_labeledValue.php:135 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_labeledValue.php:138
msgid "Invalid value : \"%{value}\"." msgid "Invalid value : \"%{value}\"."
msgstr "Valeur invalide : \"%{value}\"." msgstr "Valeur invalide : \"%{value}\"."
@ -629,15 +639,15 @@ msgstr ""
"LSattr_ldap_sambaAcctFlags : drapeau '%{flag}' invalide. Impossible de " "LSattr_ldap_sambaAcctFlags : drapeau '%{flag}' invalide. Impossible de "
"formater la valeur de l'attribut LDAP." "formater la valeur de l'attribut LDAP."
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_ssh_key.php:57 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_ssh_key.php:83
msgid "Display the full key." msgid "Display the full key."
msgstr "Affichier la clé en entier." msgstr "Affichier la clé en entier."
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_ssh_key.php:79 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_ssh_key.php:94
msgid "Unknown type" msgid "Unknown type"
msgstr "Type inconnu" msgstr "Type inconnu"
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_valueWithUnit.php:230 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_valueWithUnit.php:234
msgid "" msgid ""
"LSformElement_valueWithUnit : Units configuration data are missing for the " "LSformElement_valueWithUnit : Units configuration data are missing for the "
"attribute %{attr}." "attribute %{attr}."
@ -846,24 +856,6 @@ msgstr ""
"LSattr_html_select_objet : l'objet sélectionné %{name} n'a pas de valeur " "LSattr_html_select_objet : l'objet sélectionné %{name} n'a pas de valeur "
"dans son attribut %{attr}, vous ne pouvez pas le sélectionner." "dans son attribut %{attr}, vous ne pouvez pas le sélectionner."
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSexport.php:93
msgid "LSexport: input/output format %{format} invalid."
msgstr "LSimport : Le format d'entrée/sortie %{format} est invalide."
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSexport.php:96
msgid "LSexport: Fail to initialize input/output driver."
msgstr "LSexport : Impossible d'initialiser le pilote d'entrée/sortie."
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSexport.php:99
msgid "LSexport: Fail to load objects's data to export from LDAP directory."
msgstr ""
"LSexport: Impossible de charger les données des objets à exporter depuis "
"l'annuaire LDAP."
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSexport.php:102
msgid "LSexport: Fail to export objects's data."
msgstr "LSexport: Impossible d'exporter les données des objets."
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformRule_differentPassword.php:90 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformRule_differentPassword.php:90
msgid "" msgid ""
"LSformRule_differentPassword : Other password attribute is not configured." "LSformRule_differentPassword : Other password attribute is not configured."
@ -2257,17 +2249,17 @@ msgstr ""
"Note: Les paramètres/arguments de la commande doivent être placés après " "Note: Les paramètres/arguments de la commande doivent être placés après "
"celle-ci." "celle-ci."
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LScli.php:779 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LScli.php:804
msgid "LScli : The CLI command '%{command}' already exists." msgid "LScli : The CLI command '%{command}' already exists."
msgstr "LScli : La commande CLI '%{command}' existe déjà." msgstr "LScli : La commande CLI '%{command}' existe déjà."
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LScli.php:782 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LScli.php:807
msgid "LScli : The CLI command '%{command}' handler is not callable." msgid "LScli : The CLI command '%{command}' handler is not callable."
msgstr "" msgstr ""
"LScli : La fonction de prise en charge de la commande CLI '%{command}' n'est " "LScli : La fonction de prise en charge de la commande CLI '%{command}' n'est "
"pas exécutable." "pas exécutable."
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSioFormatCSV.php:236 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSioFormatCSV.php:247
msgid "LSioFormatCSV: function fputcsv is not available." msgid "LSioFormatCSV: function fputcsv is not available."
msgstr "LSioFormatCSV : la fonction fputcsv n'est pas disponible." msgstr "LSioFormatCSV : la fonction fputcsv n'est pas disponible."
@ -2316,7 +2308,7 @@ msgstr ""
"LSsearchEntry : formaterFunction %{func} invalide utilisé pour " "LSsearchEntry : formaterFunction %{func} invalide utilisé pour "
"l'extraDisplayedColumns %{column}." "l'extraDisplayedColumns %{column}."
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSioFormat.php:144 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSioFormat.php:145
msgid "LSioFormat : IOformat driver %{driver} invalid or unavailable." msgid "LSioFormat : IOformat driver %{driver} invalid or unavailable."
msgstr "" msgstr ""
"LSioFormat : Le pilote d'IOformat %{driver} est invalide ou n'est pas " "LSioFormat : Le pilote d'IOformat %{driver} est invalide ou n'est pas "
@ -2380,17 +2372,17 @@ msgid "My account"
msgstr "Mon compte" msgstr "Mon compte"
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1149 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1149
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1755 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1756
msgid "The object has been partially modified." msgid "The object has been partially modified."
msgstr "L'objet a été partiellement modifié." msgstr "L'objet a été partiellement modifié."
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1152 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1152
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1758 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1759
msgid "The object has been modified successfully." msgid "The object has been modified successfully."
msgstr "L'objet a bien été modifié." msgstr "L'objet a bien été modifié."
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1267 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1267
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1799 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1800
msgid "%{objectname} has been successfully deleted." msgid "%{objectname} has been successfully deleted."
msgstr "%{objectname} a bien été supprimé." msgstr "%{objectname} a bien été supprimé."
@ -2693,6 +2685,12 @@ msgstr "non"
msgid "yes" msgid "yes"
msgstr "oui" msgstr "oui"
#~ msgid "LSexport: input/output format %{format} invalid."
#~ msgstr "LSimport : Le format d'entrée/sortie %{format} est invalide."
#~ msgid "LSexport: Fail to initialize input/output driver."
#~ msgstr "LSexport : Impossible d'initialiser le pilote d'entrée/sortie."
#~ msgid "" #~ msgid ""
#~ "LSsession : call function %{func} do not provided from LSaddon %{addon}." #~ "LSsession : call function %{func} do not provided from LSaddon %{addon}."
#~ msgstr "" #~ msgstr ""

View file

@ -360,65 +360,73 @@ msgstr ""
msgid "LSformRule: Unknown rule type %{type}." msgid "LSformRule: Unknown rule type %{type}."
msgstr "" msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSimport.php:208 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSio.php:240
msgid "Failed to set post data on creation form." msgid "Failed to set post data on creation form."
msgstr "" msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSimport.php:214 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSio.php:246
msgid "Error validating creation form." msgid "Error validating creation form."
msgstr "" msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSimport.php:219 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSio.php:251
msgid "Failed to validate object data." msgid "Failed to validate object data."
msgstr "" msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSimport.php:226 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSio.php:258
msgid "Failed to generate DN for this object." msgid "Failed to generate DN for this object."
msgstr "" msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSimport.php:240 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSio.php:272
msgid "Error creating object on LDAP server." msgid "Error creating object on LDAP server."
msgstr "" msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSimport.php:246 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSio.php:278
msgid "An object already exist on LDAP server with DN %{dn}." msgid "An object already exist on LDAP server with DN %{dn}."
msgstr "" msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSimport.php:257 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSio.php:289
msgid "" msgid ""
"Failed to load existing object %{dn} from LDAP server. Can't update object." "Failed to load existing object %{dn} from LDAP server. Can't update object."
msgstr "" msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSimport.php:265 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSio.php:297
msgid "Failed to set post data on update form." msgid "Failed to set post data on update form."
msgstr "" msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSimport.php:271 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSio.php:303
msgid "Error validating update form." msgid "Error validating update form."
msgstr "" msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSimport.php:281 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSio.php:313
msgid "Error updating object on LDAP server." msgid "Error updating object on LDAP server."
msgstr "" msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSimport.php:327 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSio.php:681
msgid "LSimport: Post data not found or not completed." msgid "LSio: Post data not found or not completed."
msgstr "" msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSimport.php:330 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSio.php:684
msgid "LSimport: object type invalid." msgid "LSio: object type invalid."
msgstr "" msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSimport.php:333 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSio.php:687
msgid "LSimport: input/output format %{format} invalid." msgid "LSio: input/output format %{format} invalid."
msgstr "" msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSimport.php:336 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSio.php:690
msgid "LSimport: Fail to initialize input/output driver." msgid "LSio: Fail to initialize input/output driver."
msgstr "" msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSimport.php:339 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSio.php:693
msgid "LSimport: Fail to load objects's data from input file." msgid "LSio: Fail to load objects's data from input file."
msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSio.php:696
msgid "LSio: Fail to load objects's data to export from LDAP directory."
msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSio.php:699
msgid "LSio: Fail to export objects's data."
msgstr "" msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSattr_ldap_pwdHistory.php:76 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSattr_ldap_pwdHistory.php:76
@ -457,15 +465,15 @@ msgstr ""
msgid "Attribute" msgid "Attribute"
msgstr "" msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_mailQuota.php:98 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_mailQuota.php:101
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_valueWithUnit.php:108 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_valueWithUnit.php:126
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_quota.php:100 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_quota.php:102
#: templates/default/LSformElement_mailQuota_field.tpl:17 #: templates/default/LSformElement_mailQuota_field.tpl:17
msgid "Incorrect value" msgid "Incorrect value"
msgstr "" msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_mailQuota.php:168 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_mailQuota.php:171
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_labeledValue.php:135 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_labeledValue.php:138
msgid "Invalid value : \"%{value}\"." msgid "Invalid value : \"%{value}\"."
msgstr "" msgstr ""
@ -539,15 +547,15 @@ msgid ""
"attribute value." "attribute value."
msgstr "" msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_ssh_key.php:57 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_ssh_key.php:83
msgid "Display the full key." msgid "Display the full key."
msgstr "" msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_ssh_key.php:79 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_ssh_key.php:94
msgid "Unknown type" msgid "Unknown type"
msgstr "" msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_valueWithUnit.php:230 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformElement_valueWithUnit.php:234
msgid "" msgid ""
"LSformElement_valueWithUnit : Units configuration data are missing for the " "LSformElement_valueWithUnit : Units configuration data are missing for the "
"attribute %{attr}." "attribute %{attr}."
@ -725,22 +733,6 @@ msgid ""
"value, you can't select it." "value, you can't select it."
msgstr "" msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSexport.php:93
msgid "LSexport: input/output format %{format} invalid."
msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSexport.php:96
msgid "LSexport: Fail to initialize input/output driver."
msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSexport.php:99
msgid "LSexport: Fail to load objects's data to export from LDAP directory."
msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSexport.php:102
msgid "LSexport: Fail to export objects's data."
msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformRule_differentPassword.php:90 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSformRule_differentPassword.php:90
msgid "" msgid ""
"LSformRule_differentPassword : Other password attribute is not configured." "LSformRule_differentPassword : Other password attribute is not configured."
@ -1914,15 +1906,15 @@ msgid ""
"Note: Command's parameter/argument must be place after the command." "Note: Command's parameter/argument must be place after the command."
msgstr "" msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LScli.php:779 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LScli.php:804
msgid "LScli : The CLI command '%{command}' already exists." msgid "LScli : The CLI command '%{command}' already exists."
msgstr "" msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LScli.php:782 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LScli.php:807
msgid "LScli : The CLI command '%{command}' handler is not callable." msgid "LScli : The CLI command '%{command}' handler is not callable."
msgstr "" msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSioFormatCSV.php:236 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSioFormatCSV.php:247
msgid "LSioFormatCSV: function fputcsv is not available." msgid "LSioFormatCSV: function fputcsv is not available."
msgstr "" msgstr ""
@ -1969,7 +1961,7 @@ msgid ""
"%{column}." "%{column}."
msgstr "" msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSioFormat.php:144 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/class/class.LSioFormat.php:145
msgid "LSioFormat : IOformat driver %{driver} invalid or unavailable." msgid "LSioFormat : IOformat driver %{driver} invalid or unavailable."
msgstr "" msgstr ""
@ -2029,17 +2021,17 @@ msgid "My account"
msgstr "" msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1149 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1149
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1755 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1756
msgid "The object has been partially modified." msgid "The object has been partially modified."
msgstr "" msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1152 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1152
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1758 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1759
msgid "The object has been modified successfully." msgid "The object has been modified successfully."
msgstr "" msgstr ""
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1267 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1267
#: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1799 #: /home/brenard/dev/ldapsaisie_clean3/src/includes/routes.php:1800
msgid "%{objectname} has been successfully deleted." msgid "%{objectname} has been successfully deleted."
msgstr "" msgstr ""

View file

@ -4,6 +4,7 @@
<div class='LSform'> <div class='LSform'>
<form action='object/{$LSobject|escape:"url"}/export' method='get'> <form action='object/{$LSobject|escape:"url"}/export' method='get'>
<input type='hidden' name='validate' value='export'/>
<dl class='LSform'> <dl class='LSform'>
<dt class='LSform'><label for='ioFormat'>{tr msg='Format'}</label></dt> <dt class='LSform'><label for='ioFormat'>{tr msg='Format'}</label></dt>
<dd class='LSform'> <dd class='LSform'>

View file

@ -5,7 +5,7 @@
<div class='LSform'> <div class='LSform'>
<form action='object/{$LSobject|escape:"url"}/import' method='post' enctype="multipart/form-data"> <form action='object/{$LSobject|escape:"url"}/import' method='post' enctype="multipart/form-data">
<input type='hidden' name='LSobject' value='{$LSobject}'/> <input type='hidden' name='LSobject' value='{$LSobject}'/>
<input type='hidden' name='validate' value='LSimport'/> <input type='hidden' name='validate' value='import'/>
<dl class='LSform'> <dl class='LSform'>
<dt class='LSform'><label for='importfile'>{tr msg='File'}</label></dt> <dt class='LSform'><label for='importfile'>{tr msg='File'}</label></dt>
<dd class='LSform'><input type='file' name='importfile'/></dd> <dd class='LSform'><input type='file' name='importfile'/></dd>
@ -42,22 +42,22 @@
{if !empty($result.errors)} {if !empty($result.errors)}
<h2>{tr msg='Errors'}</h2> <h2>{tr msg='Errors'}</h2>
{foreach $result.errors as $error} {foreach $result.errors as $error}
<h3 class='LSimport'>Object {$error@iteration}</h3> <h3 class='LSio'>Object {$error@iteration}</h3>
<div class='LSimport_error'> <div class='LSio_error'>
{if !empty($error.errors.globals)} {if !empty($error.errors.globals)}
<ul class='LSimport_global_errors'> <ul class='LSio_global_errors'>
{foreach $error.errors.globals as $e} {foreach $error.errors.globals as $e}
<li>{$e}</li> <li>{$e}</li>
{/foreach} {/foreach}
</ul> </ul>
{/if} {/if}
<ul class='LSimport_data_errors'> <ul class='LSio_data_errors'>
{foreach $error.data as $key => $val} {foreach $error.data as $key => $val}
<li> <li>
<strong>{$key|escape:"htmlall"} :</strong> <strong>{$key|escape:"htmlall"} :</strong>
{if empty($val)}{tr msg='No value'}{else}{LSimport_implodeValues values=$val}{/if} {if empty($val)}{tr msg='No value'}{else}{LSio_implodeValues values=$val}{/if}
{if isset($error.errors.attrs[$key])} {if isset($error.errors.attrs[$key])}
<ul class='LSimport_attr_errors'> <ul class='LSio_attr_errors'>
{foreach $error.errors.attrs.$key as $e} {foreach $error.errors.attrs.$key as $e}
<li>{$e|escape:"htmlall"}</li> <li>{$e|escape:"htmlall"}</li>
{/foreach} {/foreach}
@ -69,7 +69,7 @@
{if !in_array($a,$error.data)} {if !in_array($a,$error.data)}
<li> <li>
<strong>{$a|escape:"htmlall"} :</strong> <strong>{$a|escape:"htmlall"} :</strong>
<ul class='LSimport_attr_errors'> <ul class='LSio_attr_errors'>
{foreach $es as $e} {foreach $es as $e}
<li>{$e|escape:"htmlall"}</li> <li>{$e|escape:"htmlall"}</li>
{/foreach} {/foreach}
@ -82,8 +82,8 @@
{/foreach} {/foreach}
{/if} {/if}
<h2 class='LSimport_imported_objects'>{tr msg='Imported objects'} ({count($result.imported)})</h2> <h2 class='LSio_imported_objects'>{tr msg='Imported objects'} ({count($result.imported)})</h2>
<ul class='LSimport_imported_objects'> <ul class='LSio_imported_objects'>
{foreach $result.imported as $dn => $name} {foreach $result.imported as $dn => $name}
<li><a href='object/{$LSobject|escape:"url"}/{$dn|escape:"url"}'>{$name|escape:"htmlall"}</a></li> <li><a href='object/{$LSobject|escape:"url"}/{$dn|escape:"url"}'>{$name|escape:"htmlall"}</a></li>
{foreachelse} {foreachelse}
@ -92,8 +92,8 @@
</ul> </ul>
{if !empty($result.updated)} {if !empty($result.updated)}
<h2 class='LSimport_updated_objects'>{tr msg='Updated objects'} ({count($result.updated)})</h2> <h2 class='LSio_updated_objects'>{tr msg='Updated objects'} ({count($result.updated)})</h2>
<ul class='LSimport_updated_objects'> <ul class='LSio_updated_objects'>
{foreach $result.updated as $dn => $name} {foreach $result.updated as $dn => $name}
<li><a href='object/{$LSobject|escape:"url"}/{$dn|escape:"url"}'>{$name|escape:"htmlall"}</a></li> <li><a href='object/{$LSobject|escape:"url"}/{$dn|escape:"url"}'>{$name|escape:"htmlall"}</a></li>
{/foreach} {/foreach}