mirror of
https://gitlab.easter-eggs.com/ee/ldapsaisie.git
synced 2024-11-23 18:39:07 +01:00
Compare commits
No commits in common. "7c48b8062b8603def119f1dcff49d52840fa8b84" and "c98e31b7c61e259e67ac2441997daa9f6b7f6606" have entirely different histories.
7c48b8062b
...
c98e31b7c6
9 changed files with 448 additions and 692 deletions
|
@ -3,33 +3,17 @@ h3.LSio {
|
|||
border-bottom: 1px solid;
|
||||
}
|
||||
|
||||
div.LSio_error, div.LSio_hook {
|
||||
div.LSio_error {
|
||||
padding: 0 2em;
|
||||
}
|
||||
|
||||
ul.LSio_imported_objects h3, ul.LSio_updated_objects h3, div.LSio_hook h3 {
|
||||
margin: 0;
|
||||
font-size: 1em;
|
||||
}
|
||||
|
||||
ul.LSio_global_errors, ul.LSio_global_messages, ul.LSio_object_errors, ul.LSio_object_messages, ul.LSio_hook_errors, ul.LSio_hook_messages {
|
||||
ul.LSio_global_errors {
|
||||
background-color: #F56A6A;
|
||||
list-style-type: none;
|
||||
padding: 1em;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
ul.LSio_global_errors, ul.LSio_global_messages {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
ul.LSio_global_errors, ul.LSio_object_errors, ul.LSio_hook_errors {
|
||||
background-color: #F56A6A;
|
||||
}
|
||||
|
||||
ul.LSio_global_messages, ul.LSio_object_messages, ul.LSio_hook_messages {
|
||||
background-color: #d6edf6;
|
||||
}
|
||||
|
||||
ul.LSio_data_errors {
|
||||
font-style: italic;
|
||||
font-size: 0.8em;
|
||||
|
|
|
@ -100,20 +100,17 @@ class LSerror {
|
|||
/**
|
||||
* Format current errors message
|
||||
*
|
||||
* @param bool $reset Reset errors (optional, default: true)
|
||||
*
|
||||
* @author Benjamin Renard <brenard@easter-eggs.com>
|
||||
*
|
||||
* @return array Array of formated error messages
|
||||
*/
|
||||
public static function getErrors($reset=true) {
|
||||
public static function getErrors() {
|
||||
$return = (
|
||||
self :: errorsDefined()?
|
||||
$_SESSION['LSerror']:
|
||||
array()
|
||||
);
|
||||
if ($reset)
|
||||
self :: resetError();
|
||||
self :: resetError();
|
||||
return $return;
|
||||
}
|
||||
|
||||
|
|
|
@ -193,7 +193,6 @@ class LSio extends LSlog_staticLoggerClass {
|
|||
'imported' => array(),
|
||||
'updated' => array(),
|
||||
'errors' => array(),
|
||||
'hooks' => array(),
|
||||
);
|
||||
|
||||
// Load LSobject
|
||||
|
@ -229,23 +228,18 @@ class LSio extends LSlog_staticLoggerClass {
|
|||
self :: log_trace("import(): objects data=".varDump($objectsData));
|
||||
|
||||
// Trigger before_import event
|
||||
$success = $ioFormat -> fireEvent(
|
||||
'before_import',
|
||||
array(
|
||||
'input_file' => $input_file,
|
||||
'updateIfExists' => $updateIfExists,
|
||||
'justTry' => $justTry,
|
||||
'objectsData' => &$objectsData,
|
||||
'return' => &$return,
|
||||
if (
|
||||
!$ioFormat -> fireEvent(
|
||||
'before_import',
|
||||
array(
|
||||
'input_file' => $input_file,
|
||||
'updateIfExists' => $updateIfExists,
|
||||
'justTry' => $justTry,
|
||||
'objectsData' => &$objectsData,
|
||||
'return' => &$return,
|
||||
)
|
||||
)
|
||||
);
|
||||
$return['hooks']['before_import'] = array(
|
||||
'messages' => $_SESSION['LSsession_infos'],
|
||||
'errors' => LSerror :: getErrors(),
|
||||
);
|
||||
$_SESSION['LSsession_infos'] = array();
|
||||
|
||||
if (!$success) {
|
||||
) {
|
||||
LSerror :: addErrorCode('LSio_08');
|
||||
return $return;
|
||||
}
|
||||
|
@ -358,12 +352,7 @@ class LSio extends LSlog_staticLoggerClass {
|
|||
self :: log_debug('import(): New object, perform creation');
|
||||
if ($justTry || $object -> updateData('create')) {
|
||||
self :: log_info('Object '.$object -> getDn().' imported');
|
||||
$return['imported'][$object -> getDn()] = array(
|
||||
'name' => $object -> getDisplayName(),
|
||||
'messages' => $_SESSION['LSsession_infos'],
|
||||
'errors' => LSerror :: getErrors(),
|
||||
);
|
||||
$_SESSION['LSsession_infos'] = array();
|
||||
$return['imported'][$object -> getDn()] = $object -> getDisplayName();
|
||||
continue;
|
||||
}
|
||||
else {
|
||||
|
@ -406,12 +395,7 @@ class LSio extends LSlog_staticLoggerClass {
|
|||
// Update data on LDAP server
|
||||
else if ($justTry || $object -> updateData('modify')) {
|
||||
self :: log_info('Object '.$object -> getDn().' updated');
|
||||
$return['updated'][$object -> getDn()] = array(
|
||||
'name' => $object -> getDisplayName(),
|
||||
'infos' => $_SESSION['LSsession_infos'],
|
||||
'errors' => LSerror :: getErrors(),
|
||||
);
|
||||
$_SESSION['LSsession_infos'] = array();
|
||||
$return['updated'][$object -> getDn()] = $object -> getDisplayName();
|
||||
continue;
|
||||
}
|
||||
else {
|
||||
|
@ -422,16 +406,13 @@ class LSio extends LSlog_staticLoggerClass {
|
|||
}
|
||||
}
|
||||
}
|
||||
$globalErrors = array_merge(LSerror :: getErrors(), $globalErrors);
|
||||
$objectsInError[] = array(
|
||||
'data' => $objData,
|
||||
'errors' => array (
|
||||
'globals' => $globalErrors,
|
||||
'attrs' => $form->getErrors(),
|
||||
),
|
||||
'messages' => $_SESSION['LSsession_infos'],
|
||||
'attrs' => $form->getErrors()
|
||||
)
|
||||
);
|
||||
$_SESSION['LSsession_infos'] = array();
|
||||
}
|
||||
$return['errors'] = $objectsInError;
|
||||
$return['success'] = empty($objectsInError);
|
||||
|
@ -448,22 +429,18 @@ class LSio extends LSlog_staticLoggerClass {
|
|||
);
|
||||
|
||||
// Trigger after_import event
|
||||
$success = $ioFormat -> fireEvent(
|
||||
'after_import',
|
||||
array(
|
||||
'input_file' => $input_file,
|
||||
'updateIfExists' => $updateIfExists,
|
||||
'justTry' => $justTry,
|
||||
'objectsData' => &$objectsData,
|
||||
'return' => &$return,
|
||||
if (
|
||||
!$ioFormat -> fireEvent(
|
||||
'after_import',
|
||||
array(
|
||||
'input_file' => $input_file,
|
||||
'updateIfExists' => $updateIfExists,
|
||||
'justTry' => $justTry,
|
||||
'objectsData' => &$objectsData,
|
||||
'return' => &$return,
|
||||
)
|
||||
)
|
||||
);
|
||||
$return['hooks']['after_import'] = array(
|
||||
'messages' => $_SESSION['LSsession_infos'],
|
||||
'errors' => LSerror :: getErrors(),
|
||||
);
|
||||
$_SESSION['LSsession_infos'] = array();
|
||||
if (!$success)
|
||||
)
|
||||
LSerror :: addErrorCode('LSio_09');
|
||||
|
||||
return $return;
|
||||
|
|
|
@ -499,13 +499,14 @@ function _cli_add_possible_values_from_LSconfig($context, $withouts, $level=0) {
|
|||
function _cli_parse_template_file($file) {
|
||||
global $LSlang_cli_logger;
|
||||
$LSlang_cli_logger -> debug("Looking for string to translate in '$file' template file");
|
||||
foreach(file($file) as $line_count => $line) {
|
||||
$line_count ++;
|
||||
if (preg_match_all('/\{ *tr +.*msg=(["\'])(?P<msg>[^"}]+)\1.*\}/', $line, $matches)) {
|
||||
foreach($matches["msg"] as $t) {
|
||||
$count = 0;
|
||||
foreach(file($file) as $line) {
|
||||
$count ++;
|
||||
if (preg_match_all('/\{ *tr +msg=["\']([^\}]+)["\'] *\}/',$line,$matches)) {
|
||||
foreach($matches[1] as $t) {
|
||||
$t = preg_replace('/[\'"]\|escape\:.*$/', '', $t);
|
||||
$LSlang_cli_logger -> trace(" - \"$t\" # Line $line_count");
|
||||
_cli_add_str_to_translate($t, _cli_absolute2relative_path($file).":$line_count");
|
||||
$LSlang_cli_logger -> trace(" - \"$t\" # Line $count");
|
||||
_cli_add_str_to_translate($t, _cli_absolute2relative_path($file).":$count");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -519,17 +520,15 @@ function _cli_parse_template_file($file) {
|
|||
* @return void
|
||||
*/
|
||||
function _cli_find_and_parse_template_file($dir) {
|
||||
global $LSlang_cli_logger;
|
||||
if (is_dir($dir)) {
|
||||
$LSlang_cli_logger -> debug("Looking for string to translate in template directory '$dir'");
|
||||
if ($dh = opendir($dir)) {
|
||||
while (($file = readdir($dh)) !== false) {
|
||||
if ($file=='.' || $file=='..') continue;
|
||||
if (is_dir("$dir/$file")) {
|
||||
_cli_find_and_parse_template_file("$dir/$file");
|
||||
if (is_dir($dir.'/'.$file)) {
|
||||
_cli_find_and_parse_template_file($dir.'/'.$file);
|
||||
}
|
||||
elseif (is_file($dir."/".$file) && preg_match('/\.tpl$/',$file)) {
|
||||
_cli_parse_template_file("$dir/$file");
|
||||
_cli_parse_template_file($dir.'/'.$file);
|
||||
}
|
||||
}
|
||||
closedir($dh);
|
||||
|
@ -545,185 +544,59 @@ function _cli_find_and_parse_template_file($dir) {
|
|||
function _cli_parse_php_file($file) {
|
||||
global $LSlang_cli_logger;
|
||||
$LSlang_cli_logger -> debug("Looking for string to translate in '$file' PHP file");
|
||||
$quote = '';
|
||||
$res = '';
|
||||
$comment = null;
|
||||
$line_break_continue = false;
|
||||
$inside_keyword = false;
|
||||
$inside_comment = false;
|
||||
$end_comment_pos = false;
|
||||
$keyword = null;
|
||||
foreach(file($file) as $line_count => $line) {
|
||||
$line = preg_replace("/\n$/", "", $line);
|
||||
$line_count++;
|
||||
$LSlang_cli_logger -> trace("Handle line #$line_count of '$file' PHP file : '$line'");
|
||||
$offset = 0;
|
||||
while (
|
||||
$line_break_continue
|
||||
|| (!$inside_comment && preg_match('#^([ \t])*(//|/\*)#', substr($line, $offset), $comment))
|
||||
|| ($inside_comment && $end_comment_pos = strpos(substr($line, $offset), '*/'))
|
||||
|| preg_match('/[^a-zA-Z0-9\'\"]_{1,3}\(/', substr($line, $offset), $keyword, PREG_OFFSET_CAPTURE)
|
||||
) {
|
||||
if ($line_break_continue) {
|
||||
$LSlang_cli_logger -> trace("$file:$line_count: continue from previous line after a line break");
|
||||
$line_break_continue = false;
|
||||
$offset = 0;
|
||||
$inside_keyword = true;
|
||||
}
|
||||
elseif ($comment) {
|
||||
$pos = $offset + strlen($comment[1]);
|
||||
if ($comment[2] == '//') {
|
||||
$LSlang_cli_logger -> trace(
|
||||
"$file:$line_count: entering comment detected '".$comment[2]."' at position #$pos, ".
|
||||
"ignore the line ('$line', offset=$offset)");
|
||||
break;
|
||||
}
|
||||
$LSlang_cli_logger -> trace(
|
||||
"$file:$line_count: entering comment detected '".$comment[2]."' at position #$pos ".
|
||||
"('$line', offset=$offset)");
|
||||
$inside_comment = true;
|
||||
$offset = $pos + strlen($comment[2]);
|
||||
$comment = null;
|
||||
}
|
||||
elseif ($inside_comment) {
|
||||
if ($end_comment_pos) {
|
||||
$pos = $offset + $end_comment_pos;
|
||||
$LSlang_cli_logger -> trace(
|
||||
"$file:$line_count: end of comment detected at position #$pos, continue ".
|
||||
"('$line', offset=$offset)");
|
||||
$offset = $pos;
|
||||
$end_comment_pos = null;
|
||||
$inside_comment = false;
|
||||
continue;
|
||||
}
|
||||
if ($keyword) {
|
||||
$pos = $offset + $keyword[0][1];
|
||||
$LSlang_cli_logger -> trace(
|
||||
"$file:$line_count: detect keyword '".substr($keyword[0][0], 1).")' at position #$pos,".
|
||||
" but inside comment => ignore it ('$line', offset=$offset)");
|
||||
$offset += strlen($keyword[0][0]) + $keyword[0][1];
|
||||
}
|
||||
else {
|
||||
$LSlang_cli_logger -> fatal(
|
||||
"$file:$line_count: not supported case (inside comment & !keyword), stop");
|
||||
return;
|
||||
}
|
||||
}
|
||||
else if ($keyword) {
|
||||
$pos = $offset + $keyword[0][1];
|
||||
$LSlang_cli_logger -> trace(
|
||||
"$file:$line_count: detect keyword '".substr($keyword[0][0], 1).")' at position #$pos ".
|
||||
"('$line', offset=$offset)");
|
||||
$offset += strlen($keyword[0][0]) + $keyword[0][1];
|
||||
$closed = false;
|
||||
$inside_keyword = true;
|
||||
}
|
||||
else {
|
||||
$LSlang_cli_logger -> fatal(
|
||||
"$file:$line_count: not supported case, stop");
|
||||
return;
|
||||
}
|
||||
$ignore = false;
|
||||
$concatenation_need = false;
|
||||
for ($i=$offset; $i<strlen($line); $i++) {
|
||||
$offset = $i; // Always increase offset to avoid infinity-loop
|
||||
if ($inside_comment) {
|
||||
if (substr($line, $i, 2) == '*/') {
|
||||
$LSlang_cli_logger -> trace(
|
||||
"$file:$line_count: End of comment detected at position #$i ('$line')");
|
||||
$inside_comment = false;
|
||||
}
|
||||
$i++;
|
||||
}
|
||||
elseif (empty($quote)) {
|
||||
$count = 0;
|
||||
$quote='';
|
||||
$res='';
|
||||
foreach(file($file) as $line) {
|
||||
$count++;
|
||||
$LSlang_cli_logger -> trace("Handle line #$count of '$file' PHP file");
|
||||
$offset=0;
|
||||
while ($pos = strpos($line,'__(',$offset)) {
|
||||
$LSlang_cli_logger -> trace("$file:$count: detect keyword at position #$pos ('$line')");
|
||||
for ($i=$pos+3;$i<strlen($line);$i++) {
|
||||
$offset=$i; // Always increase offset to avoid infinity-loop
|
||||
if (empty($quote)) {
|
||||
// Quote char not detected : try to detect it
|
||||
if ($line[$i]=='\\' || $line[$i]==" " || $line[$i]=="\t") {
|
||||
// Space or escape char : pass
|
||||
$i++;
|
||||
}
|
||||
elseif (in_array($line[$i], array('"', "'")) && !$concatenation_need) {
|
||||
elseif ($line[$i]=='"' || $line[$i]=="'") {
|
||||
// Quote detected
|
||||
$LSlang_cli_logger -> trace(
|
||||
"$file:$line_count: Quote (".$line[$i].") detected at position #$i ('$line')");
|
||||
$quote=$line[$i];
|
||||
}
|
||||
elseif ($line[$i]=='$') {
|
||||
elseif ($line[$i]=='$' || $line[$i]==')') {
|
||||
// Variable translation not possible or end function call detected
|
||||
$LSlang_cli_logger -> trace(
|
||||
"$file:$line_count: Variable translation detected at position #$i, ignore it ".
|
||||
"('$line')");
|
||||
$ignore = true;
|
||||
break;
|
||||
}
|
||||
elseif ($line[$i]==')' && $inside_keyword) {
|
||||
// End function call detected
|
||||
$LSlang_cli_logger -> trace(
|
||||
"$file:$line_count: End function call detected at position #$i ('$line')");
|
||||
$inside_keyword = false;
|
||||
break;
|
||||
}
|
||||
elseif ($line[$i] == '.' && $concatenation_need) {
|
||||
// Concatenation char detected
|
||||
$LSlang_cli_logger -> trace(
|
||||
"$file:$line_count: Concatenation char detected at position #$i ('$line')");
|
||||
$concatenation_need = false;
|
||||
}
|
||||
elseif (preg_match('/[A-Za-z]/', $line[$i])) {
|
||||
// Constant or function call detected
|
||||
$LSlang_cli_logger -> trace(
|
||||
"$file:$line_count: Constant or function call detected at position #$i, ignore it ('$line')");
|
||||
$ignore = true;
|
||||
break;
|
||||
}
|
||||
else {
|
||||
// Unknown case : continue
|
||||
$LSlang_cli_logger -> trace(
|
||||
"$file:$line_count: Unknown case before quote at position #$i ('".$line[$i]."'), ".
|
||||
"ignore it and continue ('$line')");
|
||||
$i++;
|
||||
}
|
||||
}
|
||||
elseif ($quote) {
|
||||
// Quote char already detected : try to detect end quote char
|
||||
if ($line[$i] == '\\') {
|
||||
// Escape char detected : keep it and the following one
|
||||
$LSlang_cli_logger -> trace(
|
||||
"$file:$line_count: Escape char detected inside quote at position #$i, keep it and ".
|
||||
"the following one ('$line')");
|
||||
$res .= $line[$i];
|
||||
if ($line[$i]=='\\') {
|
||||
// Escape char detected : pass this char and the following one
|
||||
$res.=$line[$i];
|
||||
$i++;
|
||||
$res .= $line[$i];
|
||||
$res.=$line[$i];
|
||||
}
|
||||
elseif ($line[$i] == $quote) {
|
||||
// End quote char detected : reset quote and set concatenation as need
|
||||
$LSlang_cli_logger -> trace(
|
||||
"$file:$line_count: End quote char detected at position #$i, reset quote and set ".
|
||||
"concatenation as need ('$line')");
|
||||
$quote = '';
|
||||
$concatenation_need = true;
|
||||
elseif ($line[$i]==$quote) {
|
||||
// End quote char detected : reset quote char detection and break detection
|
||||
$quote='';
|
||||
break;
|
||||
}
|
||||
else {
|
||||
// End quote char not detected : append current char to result
|
||||
$res .= $line[$i];
|
||||
$res.=$line[$i];
|
||||
}
|
||||
}
|
||||
}
|
||||
// Include detected string if not empty and quote char was detected and reseted
|
||||
if ($inside_comment) {
|
||||
$LSlang_cli_logger -> trace(
|
||||
"$file:$line_count: line break detected inside comment ('$line')");
|
||||
}
|
||||
elseif (!empty($res) && empty($quote) && !$inside_keyword) {
|
||||
_cli_add_str_to_translate($res, _cli_absolute2relative_path($file).":$line_count");
|
||||
$res = '';
|
||||
}
|
||||
else if (!$ignore) {
|
||||
$LSlang_cli_logger -> trace(
|
||||
"$file:$line_count: line break detected inside keyword, continue on next line ('$line')");
|
||||
$line_break_continue = true;
|
||||
if ($quote)
|
||||
$res .= "\n";
|
||||
break;
|
||||
if (!empty($res) && empty($quote)) {
|
||||
_cli_add_str_to_translate($res, _cli_absolute2relative_path($file).":$count");
|
||||
$res='';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -735,24 +608,12 @@ function _cli_parse_php_file($file) {
|
|||
* @param string $dir The directory path
|
||||
* @return void
|
||||
*/
|
||||
function _cli_find_and_parse_php_file($dir, $filename_regex=null, $recursive=false, $ignore_dirs=null) {
|
||||
global $LSlang_cli_logger;
|
||||
$filename_regex = $filename_regex?$filename_regex:'/^(.+)\.php$/';
|
||||
function _cli_find_and_parse_php_file($dir, $filename_regex) {
|
||||
if (is_dir($dir)) {
|
||||
$LSlang_cli_logger -> debug("Looking for string to translate in PHP files of directory '$dir'");
|
||||
if ($dh = opendir($dir)) {
|
||||
while (($file = readdir($dh)) !== false) {
|
||||
if ($file == '.' || $file == '..') continue;
|
||||
if (is_link("$dir/$file")) continue;
|
||||
if (
|
||||
is_dir("$dir/$file")
|
||||
&& $recursive
|
||||
&& (!is_array($ignore_dirs) || !in_array("$dir/$file", $ignore_dirs))
|
||||
) {
|
||||
_cli_find_and_parse_php_file("$dir/$file", $filename_regex, true, $ignore_dirs);
|
||||
}
|
||||
elseif (is_file($dir."/".$file) && preg_match($filename_regex, $file)) {
|
||||
_cli_parse_php_file("$dir/$file");
|
||||
if (preg_match($filename_regex, $file)) {
|
||||
_cli_parse_php_file($dir.'/'.$file);
|
||||
}
|
||||
}
|
||||
closedir($dh);
|
||||
|
@ -822,8 +683,8 @@ function _cli_output_php($fd) {
|
|||
* @return string The cleaned string
|
||||
*/
|
||||
function _cli_clean_for_pot_file($val) {
|
||||
$val = preg_replace('/([^\\\\])"/', '$1\"', $val);
|
||||
return str_replace("\n", '\n', $val);
|
||||
$val = str_replace('"', '\\"', $val);
|
||||
return str_replace("\n", "\\n", $val);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -847,7 +708,7 @@ function _cli_output_pot($fd) {
|
|||
}
|
||||
}
|
||||
|
||||
$available_onlys = array("config", "templates", "addons", "auth_methods", "includes", "php");
|
||||
$available_onlys = array("config", "templates", "addons", "auth_methods", "includes");
|
||||
$available_withouts = array_merge($available_onlys, array("select-list"));
|
||||
|
||||
|
||||
|
@ -916,7 +777,7 @@ function cli_generate_lang_file($command_args) {
|
|||
LScli :: usage(_("You could specify only one -O/--only parameter."));
|
||||
$only = strtolower($command_args[$i]);
|
||||
if (!in_array($only, $available_onlys))
|
||||
LScli :: usage(_("Invalid -O/--only parameter. Must be one of the following values: '%s'."), implode("', '", $available_onlys));
|
||||
LScli :: usage(_("Invalid -O/--only parameter. Must be one of the following values: %s.'"), implode("','", $available_onlys));
|
||||
elseif ($withouts)
|
||||
LScli :: usage(_("You could not use -W/--without parameter combined with -O/--only parameter."));
|
||||
break;
|
||||
|
@ -1156,8 +1017,8 @@ function cli_generate_lang_file($command_args) {
|
|||
// Manage includes files
|
||||
if (!in_array('includes', $withouts) && (!$only || $only == 'includes')) {
|
||||
// Note: Upstream code most only use gettext translation, do not handle it here
|
||||
if ($include_upstream) _cli_find_and_parse_php_file(LS_ROOT_DIR.'/'.LS_INCLUDE_DIR);
|
||||
_cli_find_and_parse_php_file(LS_ROOT_DIR.'/'.LS_LOCAL_DIR.LS_INCLUDE_DIR);
|
||||
if ($include_upstream) _cli_find_and_parse_php_file(LS_ROOT_DIR.'/'.LS_INCLUDE_DIR, '/^(.+)\.php$/');
|
||||
_cli_find_and_parse_php_file(LS_ROOT_DIR.'/'.LS_LOCAL_DIR.LS_INCLUDE_DIR, '/^(.+)\.php$/');
|
||||
if ($include_upstream) _cli_find_and_parse_php_file(LS_ROOT_DIR.'/'.LS_CLASS_DIR, '/^class\.(.+)\.php$/');
|
||||
_cli_find_and_parse_php_file(LS_ROOT_DIR.'/'.LS_LOCAL_DIR.LS_CLASS_DIR, '/^class\.(.+)\.php$/');
|
||||
}
|
||||
|
@ -1179,12 +1040,6 @@ function cli_generate_lang_file($command_args) {
|
|||
_cli_find_and_parse_php_file(LS_ROOT_DIR.'/'.LS_LOCAL_DIR.LS_CONF_DIR.'/LSauth', '/^config\.(.+)\.php$$/');
|
||||
}
|
||||
|
||||
// Manage all PHP files
|
||||
if ($only == 'php') {
|
||||
$LSlang_cli_logger -> info("Looking for string to translate in PHP files");
|
||||
_cli_find_and_parse_php_file(LS_ROOT_DIR, null, true, array(LS_ROOT_DIR.'/'.LS_LOCAL_DIR));
|
||||
}
|
||||
|
||||
// Sort resulting strings
|
||||
ksort($data);
|
||||
|
||||
|
@ -1330,22 +1185,6 @@ ___(
|
|||
**/
|
||||
function cli_generate_ldapsaisie_pot($command_args) {
|
||||
global $LSlang_cli_logger;
|
||||
|
||||
// Parameters
|
||||
$use_internal_parser = false;
|
||||
|
||||
for ($i=0; $i < count($command_args); $i++) {
|
||||
switch ($command_args[$i]) {
|
||||
case '--internal':
|
||||
case '-I':
|
||||
$use_internal_parser = true;
|
||||
break;
|
||||
|
||||
default:
|
||||
LScli :: usage(_("%s: Invalid parameter."), $command_args[$i]);
|
||||
}
|
||||
}
|
||||
|
||||
// Initialize logger (if not already initialized by another CLI command)
|
||||
if (!isset($LSlang_cli_logger))
|
||||
$LSlang_cli_logger = LSlog :: get_logger('generate_ldapsaisie_pot');
|
||||
|
@ -1373,41 +1212,25 @@ function cli_generate_ldapsaisie_pot($command_args) {
|
|||
return false;
|
||||
}
|
||||
|
||||
// Extract messages from LdapSaisie PHP files
|
||||
if ($use_internal_parser) {
|
||||
// Using internal parser
|
||||
$result = LScli :: run_command(
|
||||
'generate_lang_file',
|
||||
array (
|
||||
"-o", LS_I18N_DIR_PATH."/ldapsaisie-main.pot",
|
||||
"-f", "pot",
|
||||
"--only", "php",
|
||||
),
|
||||
false // do not exit
|
||||
);
|
||||
if (!$result)
|
||||
$LSlang_cli_logger -> fatal("Fail to extract messages from PHP files using generate_lang_file command.");
|
||||
}
|
||||
else {
|
||||
// Using xgettext
|
||||
$result = LScli :: run_external_command(
|
||||
array(
|
||||
"xgettext",
|
||||
"--from-code utf-8",
|
||||
"--language=PHP",
|
||||
"-o", LS_I18N_DIR_PATH."/ldapsaisie-main.pot", // Output
|
||||
"--omit-header", // No POT header
|
||||
"--keyword=__", // Handle custom __() translation function
|
||||
"--keyword=___", // Handle custom ___() translation function
|
||||
"--files=-" // Read files to parse from STDIN
|
||||
),
|
||||
$php_files[1], // Pass PHP files list via STDIN
|
||||
true, // Escape parameters
|
||||
LS_ROOT_DIR // Run in LdapSaisie root directory
|
||||
);
|
||||
if (!is_array($result) || $result[0] != 0)
|
||||
$LSlang_cli_logger -> fatal("Fail to extract messages from PHP files using xgettext.");
|
||||
}
|
||||
// Extract messages from LdapSaisie PHP files using xgettext
|
||||
$result = LScli :: run_external_command(
|
||||
array(
|
||||
"xgettext",
|
||||
"--from-code utf-8",
|
||||
"--language=PHP",
|
||||
"-o", LS_I18N_DIR_PATH."/ldapsaisie-main.pot", // Output
|
||||
"--omit-header", // No POT header
|
||||
"--keyword=__", // Handle custom __() translation function
|
||||
"--keyword=___", // Handle custom ___() translation function
|
||||
"--files=-" // Read files to parse from STDIN
|
||||
),
|
||||
$php_files[1], // Pass PHP files list via STDIN
|
||||
true, // Escape parameters
|
||||
LS_ROOT_DIR // Run in LdapSaisie root directory
|
||||
);
|
||||
if (!is_array($result) || $result[0] != 0)
|
||||
$LSlang_cli_logger -> fatal("Fail to extract messages from PHP files using xgettext.");
|
||||
|
||||
|
||||
// Extract other messages from LdapSaisie templates files
|
||||
$result = LScli :: run_command(
|
||||
|
@ -1448,10 +1271,6 @@ LScli :: add_command(
|
|||
___(" => contains messages from templates files"),
|
||||
" - ".LS_I18N_DIR_PATH."/ldapsaisie.pot",
|
||||
___(" => contains all messages"),
|
||||
null,
|
||||
___(
|
||||
"Note: Use -I / --internal parameter to use internal parser instead of
|
||||
xgettext for PHP files."),
|
||||
),
|
||||
false // This command does not need LDAP connection
|
||||
);
|
||||
|
|
|
@ -705,9 +705,7 @@ function LStemplate_smarty_getFData($params) {
|
|||
}
|
||||
|
||||
function LStemplate_smarty_tr($params) {
|
||||
$msg = __($params['msg']);
|
||||
unset($params['msg']);
|
||||
echo $params?getFData($msg, $params):$msg;
|
||||
echo __($params['msg']);
|
||||
}
|
||||
|
||||
function LStemplate_smarty_img($params) {
|
||||
|
|
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: 2023-05-26 11:30+0200\n"
|
||||
"PO-Revision-Date: 2023-05-17 11:36+0200\n"
|
||||
"Last-Translator: Benjamin Renard <brenard@easter-eggs.com>\n"
|
||||
"Language-Team: LdapSaisie <ldapsaisie-users@lists.labs.libre-entreprise."
|
||||
"org>\n"
|
||||
|
@ -17,7 +17,7 @@ msgstr ""
|
|||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Poedit-SourceCharset: utf-8\n"
|
||||
"X-Poedit-Basepath: .\n"
|
||||
"X-Poedit-Basepath: /var/www/ldapsaisie/trunk\n"
|
||||
"X-Generator: Poedit 2.4.2\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||
|
||||
|
@ -385,8 +385,8 @@ msgstr "Comparer"
|
|||
#: includes/class/class.LSrelation.php:679 includes/class/class.LSform.php:346
|
||||
#: includes/class/class.LSformElement_select_object.php:75
|
||||
#: includes/class/class.LSformElement_select_object.php:91
|
||||
#: includes/class/class.LSsearchEntry.php:237 includes/routes.php:1068
|
||||
#: includes/routes.php:1212
|
||||
#: includes/class/class.LSsearchEntry.php:237 includes/routes.php:1064
|
||||
#: includes/routes.php:1208
|
||||
msgid "Delete"
|
||||
msgstr "Supprimer"
|
||||
|
||||
|
@ -399,8 +399,8 @@ msgstr "Étendue"
|
|||
#: includes/class/class.LSrelation.php:736
|
||||
#: includes/class/class.LSformElement_select_object.php:74
|
||||
#: includes/class/class.LSformElement_supannLabeledValue.php:90
|
||||
#: includes/class/class.LSsearchEntry.php:221 includes/routes.php:1052
|
||||
#: includes/routes.php:1220 includes/routes.php:1305 includes/routes.php:1451
|
||||
#: includes/class/class.LSsearchEntry.php:221 includes/routes.php:1048
|
||||
#: includes/routes.php:1216 includes/routes.php:1301 includes/routes.php:1447
|
||||
msgid "Modify"
|
||||
msgstr "Modifier"
|
||||
|
||||
|
@ -408,7 +408,7 @@ msgstr "Modifier"
|
|||
msgid "Modify RDN"
|
||||
msgstr "Modifier le RDN"
|
||||
|
||||
#: includes/addons/LSaddons.accesslog.php:35 includes/routes.php:517
|
||||
#: includes/addons/LSaddons.accesslog.php:35 includes/routes.php:513
|
||||
#: templates/default/select.tpl:28 templates/default/global_search.tpl:6
|
||||
msgid "Search"
|
||||
msgstr "Rechercher"
|
||||
|
@ -436,7 +436,7 @@ msgstr "Voir les modifications d'LdapSaisie"
|
|||
|
||||
#: includes/addons/LSaddons.accesslog.php:244
|
||||
#: includes/class/class.LSsession.php:1870 includes/routes.php:157
|
||||
#: includes/routes.php:474 templates/default/select.tpl:29
|
||||
#: includes/routes.php:470 templates/default/select.tpl:29
|
||||
msgid "Refresh"
|
||||
msgstr "Rafraîchir"
|
||||
|
||||
|
@ -752,90 +752,89 @@ msgstr "Valeur invalide"
|
|||
msgid "LSformRule_%{type}: Parameter %{param} is not found."
|
||||
msgstr "LSformRule_%{type} : Le paramètre %{param} n'est pas défini."
|
||||
|
||||
#: includes/class/class.LSio.php:334
|
||||
#: includes/class/class.LSio.php:261
|
||||
msgid "Failed to set post data on creation form."
|
||||
msgstr "Impossible de définir les données dans le formulaire de création."
|
||||
|
||||
#: includes/class/class.LSio.php:340
|
||||
#: includes/class/class.LSio.php:267
|
||||
msgid "Error validating creation form."
|
||||
msgstr "Une erreur est survenue en validant le formulaire de création."
|
||||
|
||||
#: includes/class/class.LSio.php:345
|
||||
#: includes/class/class.LSio.php:272
|
||||
msgid "Failed to validate object data."
|
||||
msgstr "Impossible de valider les données de l'objet."
|
||||
|
||||
#: includes/class/class.LSio.php:352
|
||||
#: includes/class/class.LSio.php:279
|
||||
msgid "Failed to generate DN for this object."
|
||||
msgstr "Impossible de générer le DN de cet objet."
|
||||
|
||||
#: includes/class/class.LSio.php:371
|
||||
#: includes/class/class.LSio.php:293
|
||||
msgid "Error creating object on LDAP server."
|
||||
msgstr ""
|
||||
"Une erreur est survenue durant la création de cet objet dans l'annuaire LDAP."
|
||||
msgstr "Une erreur est survenue en création cet objet dans l'annuaire LDAP."
|
||||
|
||||
#: includes/class/class.LSio.php:377
|
||||
#: includes/class/class.LSio.php:299
|
||||
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}."
|
||||
|
||||
#: includes/class/class.LSio.php:389
|
||||
#: includes/class/class.LSio.php:311
|
||||
msgid ""
|
||||
"Failed to load existing object %{dn} from LDAP server. Can't update object."
|
||||
msgstr ""
|
||||
"Impossible de charger l'objet existant %{dn} depuis l'annuaire LDAP. "
|
||||
"Impossible de mettre à jour cet objet."
|
||||
|
||||
#: includes/class/class.LSio.php:398
|
||||
#: includes/class/class.LSio.php:320
|
||||
msgid "Failed to set post data on update form."
|
||||
msgstr "Impossible de définir les données dans le formulaire de mise à jour."
|
||||
|
||||
#: includes/class/class.LSio.php:404
|
||||
#: includes/class/class.LSio.php:326
|
||||
msgid "Error validating update form."
|
||||
msgstr "Une erreur est survenue en validant le formulaire de mise à jour."
|
||||
|
||||
#: includes/class/class.LSio.php:419
|
||||
#: includes/class/class.LSio.php:336
|
||||
msgid "Error updating object on LDAP server."
|
||||
msgstr ""
|
||||
"Une erreur est survenue en mettant à jour cet objet dans l'annuaire LDAP."
|
||||
|
||||
#: includes/class/class.LSio.php:825
|
||||
#: includes/class/class.LSio.php:724
|
||||
msgid "LSio: Post data not found or not completed."
|
||||
msgstr "LSio : les données transmises sont introuvables ou incomplètes."
|
||||
|
||||
#: includes/class/class.LSio.php:828
|
||||
#: includes/class/class.LSio.php:727
|
||||
msgid "LSio: object type invalid."
|
||||
msgstr "LSio : type d'objet invalide."
|
||||
|
||||
#: includes/class/class.LSio.php:831
|
||||
#: includes/class/class.LSio.php:730
|
||||
msgid "LSio: input/output format %{format} invalid."
|
||||
msgstr "LSio : Le format d'entrée/sortie %{format} est invalide."
|
||||
|
||||
#: includes/class/class.LSio.php:834
|
||||
#: includes/class/class.LSio.php:733
|
||||
msgid "LSio: Fail to initialize input/output driver."
|
||||
msgstr "LSio : Impossible d'initialiser le pilote d'entrée/sortie."
|
||||
|
||||
#: includes/class/class.LSio.php:837
|
||||
#: includes/class/class.LSio.php:736
|
||||
msgid "LSio: Fail to load objects's data from input file."
|
||||
msgstr ""
|
||||
"LSio: Impossible de charger les données des objets depuis le fichier "
|
||||
"d'import."
|
||||
|
||||
#: includes/class/class.LSio.php:840
|
||||
#: includes/class/class.LSio.php:739
|
||||
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."
|
||||
|
||||
#: includes/class/class.LSio.php:843
|
||||
#: includes/class/class.LSio.php:742
|
||||
msgid "LSio: Fail to export objects's data."
|
||||
msgstr "LSio: Impossible d'exporter les données des objets."
|
||||
|
||||
#: includes/class/class.LSio.php:846
|
||||
#: includes/class/class.LSio.php:745
|
||||
msgid "LSio: An error occured running before import hooks. Stop the import."
|
||||
msgstr ""
|
||||
"LSio : Une erreur est survenue durant l'exécution des déclencheurs d'avant "
|
||||
"import. Arrêt de l'import."
|
||||
|
||||
#: includes/class/class.LSio.php:849
|
||||
#: includes/class/class.LSio.php:748
|
||||
msgid "LSio: An error occured running after import hooks."
|
||||
msgstr ""
|
||||
"LSio : Une erreur est survenue durant l'exécution des déclencheurs d'après "
|
||||
|
@ -866,7 +865,7 @@ msgstr "Confirmez-vous votre choix ?"
|
|||
|
||||
#: includes/class/class.LSconfirmBox.php:37
|
||||
#: includes/class/class.LSsmoothbox.php:39 includes/class/class.LSform.php:175
|
||||
#: includes/routes.php:638 includes/routes.php:1292 includes/routes.php:1438
|
||||
#: includes/routes.php:634 includes/routes.php:1288 includes/routes.php:1434
|
||||
#: templates/default/recoverpassword.tpl:21
|
||||
msgid "Validate"
|
||||
msgstr "Valider"
|
||||
|
@ -1039,7 +1038,7 @@ msgid "Unparsable value for component %{c}."
|
|||
msgstr "Valeur du composant %{c} non-analysable."
|
||||
|
||||
#: includes/class/class.LSformElement_supannCompositeAttribute.php:479
|
||||
#: includes/class/class.LSformElement_jsonCompositeAttribute.php:413
|
||||
#: includes/class/class.LSformElement_jsonCompositeAttribute.php:408
|
||||
msgid "%{label}: %{error}"
|
||||
msgstr "%{label} : %{error}"
|
||||
|
||||
|
@ -1128,53 +1127,53 @@ msgstr "Ou laisser vide pour copier le message original?\n"
|
|||
msgid "Or leave empty to pass.\n"
|
||||
msgstr "Or leave empty to pass.\n"
|
||||
|
||||
#: includes/class/class.LSlang.php:906
|
||||
#: includes/class/class.LSlang.php:758
|
||||
#, php-format
|
||||
msgid ""
|
||||
"Invalid -W/--without parameter. Must be one of the following values: %s.'"
|
||||
msgstr ""
|
||||
"Paramètre -W/--without invalide. Doit-être une des valeurs suivantes : %s."
|
||||
|
||||
#: includes/class/class.LSlang.php:908 includes/class/class.LSlang.php:921
|
||||
#: includes/class/class.LSlang.php:760 includes/class/class.LSlang.php:773
|
||||
msgid ""
|
||||
"You could not use -W/--without parameter combined with -O/--only parameter."
|
||||
msgstr ""
|
||||
"Vous ne pouvez pas utiliser les paramètres -W/--without et -O/--only "
|
||||
"ensemble."
|
||||
|
||||
#: includes/class/class.LSlang.php:916
|
||||
#: includes/class/class.LSlang.php:768
|
||||
msgid "You could specify only one -O/--only parameter."
|
||||
msgstr "Vous ne pouvez spécifier qu'un seul paramètre -O/--only."
|
||||
|
||||
#: includes/class/class.LSlang.php:919
|
||||
#: includes/class/class.LSlang.php:771
|
||||
#, php-format
|
||||
msgid "Invalid -O/--only parameter. Must be one of the following values: '%s'."
|
||||
msgid "Invalid -O/--only parameter. Must be one of the following values: %s.'"
|
||||
msgstr ""
|
||||
"Paramètre -O/--only invalide. Doit-être une des valeurs suivantes : '%s'."
|
||||
"Paramètre -O/--only invalide. Doit-être une des valeurs suivantes : %s."
|
||||
|
||||
#: includes/class/class.LSlang.php:953
|
||||
#: includes/class/class.LSlang.php:805
|
||||
msgid ""
|
||||
"Invalid -l/--lang parameter. Must be compose in format : [lang].[encoding]"
|
||||
msgstr ""
|
||||
"Paramètre -l/--lang invalide. Doit-être composé au format : [lang].[encoding]"
|
||||
|
||||
#: includes/class/class.LSlang.php:968
|
||||
#: includes/class/class.LSlang.php:820
|
||||
#, php-format
|
||||
msgid ""
|
||||
"Invalid -f/--format parameter. Must be one of the following values: %s.'"
|
||||
msgstr ""
|
||||
"Paramètre -f/--format invalide. Doit-être une des valeurs suivantes : %s."
|
||||
|
||||
#: includes/class/class.LSlang.php:992
|
||||
#: includes/class/class.LSlang.php:844
|
||||
#, php-format
|
||||
msgid "%s: Invalid parameter or lang file to load."
|
||||
msgstr "%s : Paramètre ou fichier de traductions à charger invalide."
|
||||
|
||||
#: includes/class/class.LSlang.php:1293
|
||||
#: includes/class/class.LSlang.php:1136
|
||||
msgid "Generate lang.php file"
|
||||
msgstr "Générer le fichier lang.php"
|
||||
|
||||
#: includes/class/class.LSlang.php:1297
|
||||
#: includes/class/class.LSlang.php:1140
|
||||
msgid ""
|
||||
" -W/--without Disable specified messages. Must be one of\n"
|
||||
" the following values:"
|
||||
|
@ -1182,7 +1181,7 @@ msgstr ""
|
|||
" -W/--without Désactiver les messages spécifiés. Doit\n"
|
||||
" être une des valeurs suivants :"
|
||||
|
||||
#: includes/class/class.LSlang.php:1301
|
||||
#: includes/class/class.LSlang.php:1144
|
||||
msgid ""
|
||||
" -O/--only Only handle specified messages. Must be one\n"
|
||||
" of the following values :"
|
||||
|
@ -1190,7 +1189,7 @@ msgstr ""
|
|||
" -O/--only Gérer uniquement les messages spécifiés.\n"
|
||||
" Doit-être une des valeurs suivantes :"
|
||||
|
||||
#: includes/class/class.LSlang.php:1305
|
||||
#: includes/class/class.LSlang.php:1148
|
||||
msgid ""
|
||||
" -I/--include-upstream Include upstream code to message lookup\n"
|
||||
" -c/--copy-original-value Copy original value as translated value when\n"
|
||||
|
@ -1225,39 +1224,26 @@ msgstr ""
|
|||
" caractères UTF-8 invalides dans les fichiers\n"
|
||||
" de traductions existants."
|
||||
|
||||
#: includes/class/class.LSlang.php:1345
|
||||
#, php-format
|
||||
msgid "%s: Invalid parameter."
|
||||
msgstr "%s : Paramètre invalide."
|
||||
|
||||
#: includes/class/class.LSlang.php:1441
|
||||
#: includes/class/class.LSlang.php:1252
|
||||
msgid "Generate POT files:"
|
||||
msgstr "Générer les fichiers POT:"
|
||||
|
||||
#: includes/class/class.LSlang.php:1444
|
||||
#: includes/class/class.LSlang.php:1255
|
||||
msgid "This command generate 3 POT files:"
|
||||
msgstr "Cette commande génère 3 fichiers POT :"
|
||||
|
||||
#: includes/class/class.LSlang.php:1446
|
||||
#: includes/class/class.LSlang.php:1257
|
||||
msgid " => contains messages from PHP files"
|
||||
msgstr " => contient les messages issues des fichiers PHP"
|
||||
|
||||
#: includes/class/class.LSlang.php:1448
|
||||
#: includes/class/class.LSlang.php:1259
|
||||
msgid " => contains messages from templates files"
|
||||
msgstr " => contient les messages issues des fichiers de templates"
|
||||
|
||||
#: includes/class/class.LSlang.php:1450
|
||||
#: includes/class/class.LSlang.php:1261
|
||||
msgid " => contains all messages"
|
||||
msgstr " => contient tous -W/--withoutles messages"
|
||||
|
||||
#: includes/class/class.LSlang.php:1453
|
||||
msgid ""
|
||||
"Note: Use -I / --internal parameter to use internal parser instead of\n"
|
||||
"xgettext for PHP files."
|
||||
msgstr ""
|
||||
"Note : Utiliser le paramètre -I / --internal pour utiliser l'extracteur de\n"
|
||||
"messages interne au lieu de xgettext pour les fichier PHP."
|
||||
|
||||
#: includes/class/class.LStemplate.php:160
|
||||
msgid "LStemplate : compile directory is not writable (dir : %{dir})"
|
||||
msgstr ""
|
||||
|
@ -1322,11 +1308,11 @@ msgstr ""
|
|||
msgid "A fatal error occured."
|
||||
msgstr "Une erreur fatale est survenue."
|
||||
|
||||
#: includes/class/class.LStemplate.php:733
|
||||
#: includes/class/class.LStemplate.php:731
|
||||
msgid "LStemplate : Template %{file} not found."
|
||||
msgstr "LStemplate : le template %{file} est introuvable."
|
||||
|
||||
#: includes/class/class.LStemplate.php:736
|
||||
#: includes/class/class.LStemplate.php:734
|
||||
msgid ""
|
||||
"LStemplate : Fail to execute trigger %{callable} on event %{event} : is not "
|
||||
"callable."
|
||||
|
@ -1334,7 +1320,7 @@ msgstr ""
|
|||
"LStemplate : Échec d'exécution du déclencheur %{callable} lors de événement "
|
||||
"%{event} : il n'est pas un callable."
|
||||
|
||||
#: includes/class/class.LStemplate.php:739
|
||||
#: includes/class/class.LStemplate.php:737
|
||||
msgid ""
|
||||
"LStemplate : Error during the execution of the trigger %{callable} on event "
|
||||
"%{event}."
|
||||
|
@ -2207,8 +2193,8 @@ msgstr "Attention"
|
|||
msgid "No object."
|
||||
msgstr "Aucun objet."
|
||||
|
||||
#: includes/class/class.LSrelation.php:747 includes/routes.php:456
|
||||
#: includes/routes.php:997
|
||||
#: includes/class/class.LSrelation.php:747 includes/routes.php:452
|
||||
#: includes/routes.php:993
|
||||
msgid "New"
|
||||
msgstr "Nouveau"
|
||||
|
||||
|
@ -2445,13 +2431,13 @@ msgstr ""
|
|||
"Une erreur est survenue en soumettant ce formulaire. Merci de ré-essayer ou "
|
||||
"de contacter le support."
|
||||
|
||||
#: includes/class/class.LSform.php:327 includes/routes.php:634
|
||||
#: includes/class/class.LSform.php:327 includes/routes.php:630
|
||||
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 ?"
|
||||
|
||||
#: includes/class/class.LSform.php:333 includes/routes.php:1432
|
||||
#: includes/class/class.LSform.php:333 includes/routes.php:1428
|
||||
msgid ""
|
||||
"Do you really want to execute custom action %{customAction} on "
|
||||
"%{objectname} ?"
|
||||
|
@ -2659,8 +2645,8 @@ msgstr "Réinitialiser le choix."
|
|||
msgid "Display RSS stack."
|
||||
msgstr "Afficher la file RSS."
|
||||
|
||||
#: includes/class/class.LSattr_ldap_password.php:108 includes/routes.php:587
|
||||
#: includes/routes.php:1379
|
||||
#: includes/class/class.LSattr_ldap_password.php:108 includes/routes.php:583
|
||||
#: includes/routes.php:1375
|
||||
msgid "undefined"
|
||||
msgstr "non-définie"
|
||||
|
||||
|
@ -2762,39 +2748,39 @@ msgstr "Étape"
|
|||
msgid "Pedagogical element"
|
||||
msgstr "Élement pédagogique"
|
||||
|
||||
#: includes/class/class.LSsearch.php:1318
|
||||
#: includes/class/class.LSsearch.php:1253
|
||||
msgid "Actions"
|
||||
msgstr "Actions"
|
||||
|
||||
#: includes/class/class.LSsearch.php:1321
|
||||
#: includes/class/class.LSsearch.php:1256
|
||||
#: templates/default/global_search.tpl:16
|
||||
msgid "This search didn't get any result."
|
||||
msgstr "Cette recherche n'a retournée aucun résultat."
|
||||
|
||||
#: includes/class/class.LSsearch.php:1963
|
||||
#: includes/class/class.LSsearch.php:1898
|
||||
msgid "LSsearch : Invalid filter : %{filter}."
|
||||
msgstr "LSsearch : Filtre invalide : %{filter}."
|
||||
|
||||
#: includes/class/class.LSsearch.php:1966
|
||||
#: includes/class/class.LSsearch.php:1901
|
||||
msgid "LSsearch : Invalid basedn : %{basedn}."
|
||||
msgstr "LSsearch : Base DN invalide."
|
||||
|
||||
#: includes/class/class.LSsearch.php:1969
|
||||
#: includes/class/class.LSsearch.php:1904
|
||||
msgid "LSsearch : Invalid value for %{param} parameter."
|
||||
msgstr "LSsearch : La valeur du paramètre %{param} est incorrecte."
|
||||
|
||||
#: includes/class/class.LSsearch.php:1972
|
||||
#: includes/class/class.LSsearch.php:1907
|
||||
msgid ""
|
||||
"LSsearch : Invalid size limit. Must be an integer greater or equal to 0."
|
||||
msgstr ""
|
||||
"LSsearch : Limite de taille de recherche invalide. Elle doit être un entier "
|
||||
"supérieur ou égal à 0."
|
||||
|
||||
#: includes/class/class.LSsearch.php:1975
|
||||
#: includes/class/class.LSsearch.php:1910
|
||||
msgid "LSsearch : Invalid parameter %{attr}. Must be an boolean."
|
||||
msgstr "LSsearch : Paramètre %{param} invalide. Il doit être un booléen."
|
||||
|
||||
#: includes/class/class.LSsearch.php:1978
|
||||
#: includes/class/class.LSsearch.php:1913
|
||||
msgid ""
|
||||
"LSsearch : Invalid parameter attributes. Must be an string or an array of "
|
||||
"strings."
|
||||
|
@ -2802,13 +2788,13 @@ msgstr ""
|
|||
"LSsearch : Paramètre 'attributes' invalide. Il doit être une chaîne de "
|
||||
"caractères ou un tableau de chaînes de caractères."
|
||||
|
||||
#: includes/class/class.LSsearch.php:1981
|
||||
#: includes/class/class.LSsearch.php:1916
|
||||
msgid "LSsearch : Can't build attributes list for make filter."
|
||||
msgstr ""
|
||||
"LSsearch : Impossible de construire la liste des attributs pour faire le "
|
||||
"filtre."
|
||||
|
||||
#: includes/class/class.LSsearch.php:1984
|
||||
#: includes/class/class.LSsearch.php:1919
|
||||
msgid ""
|
||||
"LSsearch : Error building filter with attribute '%{attr}' and pattern "
|
||||
"'%{pattern}'"
|
||||
|
@ -2816,34 +2802,34 @@ msgstr ""
|
|||
"LSsearch : Problème en construisant le filtre avec l'attribut '%{attr}' et "
|
||||
"le mot clé '%{pattern}'"
|
||||
|
||||
#: includes/class/class.LSsearch.php:1987
|
||||
#: includes/class/class.LSsearch.php:1922
|
||||
msgid "LSsearch : Error combining filters."
|
||||
msgstr "LSsearch : Problème en combinant les filtres."
|
||||
|
||||
#: includes/class/class.LSsearch.php:1990
|
||||
#: includes/class/class.LSsearch.php:1925
|
||||
msgid "LSsearch : Invalid pattern."
|
||||
msgstr "LSsearch : Mot clé invalide."
|
||||
|
||||
#: includes/class/class.LSsearch.php:1993
|
||||
#: includes/class/class.LSsearch.php:1928
|
||||
msgid "LSsearch : Invalid attribute %{attr} in parameters."
|
||||
msgstr "LSsearch : Attribut %{attr} incorrect dans les paramètres."
|
||||
|
||||
#: includes/class/class.LSsearch.php:1996
|
||||
#: includes/class/class.LSsearch.php:1931
|
||||
msgid "LSsearch : Error during the search."
|
||||
msgstr "LSsearch : Erreur pendant la recherche."
|
||||
|
||||
#: includes/class/class.LSsearch.php:1999
|
||||
#: includes/class/class.LSsearch.php:1934
|
||||
msgid "LSsearch : Error sorting the search."
|
||||
msgstr "LSsearch : Erreur pendant le trie de la recherche."
|
||||
|
||||
#: includes/class/class.LSsearch.php:2002
|
||||
#: includes/class/class.LSsearch.php:1937
|
||||
msgid ""
|
||||
"LSsearch : The function of the custum information %{name} is not callable."
|
||||
msgstr ""
|
||||
"LSsearch : La fonction de l'information personnalisée %{name} n'est pas "
|
||||
"exécutable."
|
||||
|
||||
#: includes/class/class.LSsearch.php:2005
|
||||
#: includes/class/class.LSsearch.php:1940
|
||||
msgid ""
|
||||
"LSsearch : Invalid predefinedFilter for LSobject type %{type} : %{label} "
|
||||
"(filter : %{filter})."
|
||||
|
@ -2851,13 +2837,13 @@ msgstr ""
|
|||
"LSsearch : PredefinedFilter invalide pour le type d'LSobject %{type} : "
|
||||
"%{label} (filtre : %{filter})."
|
||||
|
||||
#: includes/class/class.LSsearch.php:2008
|
||||
#: includes/class/class.LSsearch.php:1943
|
||||
msgid "LSsearch : Error during execution of the custom action %{customAction}."
|
||||
msgstr ""
|
||||
"LSldapObject : Erreur durant l'exécution de l'action personnalisée "
|
||||
"%{customAction}."
|
||||
|
||||
#: includes/class/class.LSsearch.php:2011
|
||||
#: includes/class/class.LSsearch.php:1946
|
||||
msgid "LSsearch : Invalid search pattern."
|
||||
msgstr "LSsearch : Mot clé de recherche invalide."
|
||||
|
||||
|
@ -2992,7 +2978,7 @@ msgstr "Impossible de décoder la valeur JSON #%{idx}."
|
|||
msgid "JSON value #%{idx} is invalid (or empty)."
|
||||
msgstr "La valeur JSON #%{idx} est invalide (ou vide)."
|
||||
|
||||
#: includes/class/class.LSformElement_jsonCompositeAttribute.php:438
|
||||
#: includes/class/class.LSformElement_jsonCompositeAttribute.php:433
|
||||
msgid "Invalid value \"%{value}\" for component %{component}."
|
||||
msgstr "Valeur invalide pour le composant %{component} : \"%{value}\"."
|
||||
|
||||
|
@ -3160,20 +3146,20 @@ msgstr "LSioFormatCSV : la fonction fputcsv n'est pas disponible."
|
|||
msgid "LSlog : Fail to load logging handler %{handler}."
|
||||
msgstr "LSlog : Impossible de charger l'handler %{handler}."
|
||||
|
||||
#: includes/class/class.LSerror.php:141
|
||||
#: includes/class/class.LSerror.php:138
|
||||
msgid "Unknown error"
|
||||
msgstr "Erreur inconnue"
|
||||
|
||||
#: includes/class/class.LSerror.php:201
|
||||
#: includes/class/class.LSerror.php:198
|
||||
msgid "Unknown error : %{error}"
|
||||
msgstr "Erreur inconnue : %{error}"
|
||||
|
||||
#: includes/class/class.LSsearchEntry.php:213 includes/routes.php:1204
|
||||
#: includes/routes.php:1297 includes/routes.php:1443
|
||||
#: includes/class/class.LSsearchEntry.php:213 includes/routes.php:1200
|
||||
#: includes/routes.php:1293 includes/routes.php:1439
|
||||
msgid "View"
|
||||
msgstr "Voir"
|
||||
|
||||
#: includes/class/class.LSsearchEntry.php:229 includes/routes.php:1060
|
||||
#: includes/class/class.LSsearchEntry.php:229 includes/routes.php:1056
|
||||
msgid "Copy"
|
||||
msgstr "Copier"
|
||||
|
||||
|
@ -3203,66 +3189,66 @@ msgstr "Accueil"
|
|||
msgid "You must provide pattern for global search."
|
||||
msgstr "Vous devez fournir un mot clé pour les recherches globales."
|
||||
|
||||
#: includes/routes.php:462 includes/routes.php:818
|
||||
#: includes/routes.php:458 includes/routes.php:814
|
||||
msgid "Import"
|
||||
msgstr "Importer"
|
||||
|
||||
#: includes/routes.php:467 includes/routes.php:884
|
||||
#: includes/routes.php:463 includes/routes.php:880
|
||||
msgid "Export"
|
||||
msgstr "Exporter"
|
||||
|
||||
#: includes/routes.php:479
|
||||
#: includes/routes.php:475
|
||||
msgid "Reset"
|
||||
msgstr "Réinitialiser"
|
||||
|
||||
#: includes/routes.php:518 templates/default/select.tpl:31
|
||||
#: includes/routes.php:514 templates/default/select.tpl:31
|
||||
msgid "Approximative search"
|
||||
msgstr "Recherche approximative"
|
||||
|
||||
#: includes/routes.php:519 templates/default/select.tpl:32
|
||||
#: includes/routes.php:515 templates/default/select.tpl:32
|
||||
msgid "Recursive search"
|
||||
msgstr "Recherche récursive"
|
||||
|
||||
#: includes/routes.php:608
|
||||
#: includes/routes.php:604
|
||||
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."
|
||||
|
||||
#: includes/routes.php:956
|
||||
#: includes/routes.php:952
|
||||
msgid "Data entry form"
|
||||
msgstr "Masque de saisie"
|
||||
|
||||
#: includes/routes.php:962 includes/routes.php:1736
|
||||
#: includes/routes.php:958 includes/routes.php:1732
|
||||
msgid "Object has been added."
|
||||
msgstr "L'objet a été ajouté."
|
||||
|
||||
#: includes/routes.php:1099
|
||||
#: includes/routes.php:1095
|
||||
msgid "My account"
|
||||
msgstr "Mon compte"
|
||||
|
||||
#: includes/routes.php:1162 includes/routes.php:1908
|
||||
#: includes/routes.php:1158 includes/routes.php:1904
|
||||
msgid "The object has been partially modified."
|
||||
msgstr "L'objet a été partiellement modifié."
|
||||
|
||||
#: includes/routes.php:1165 includes/routes.php:1911
|
||||
#: includes/routes.php:1161 includes/routes.php:1907
|
||||
msgid "The object has been modified successfully."
|
||||
msgstr "L'objet a bien été modifié."
|
||||
|
||||
#: includes/routes.php:1280 includes/routes.php:1951
|
||||
#: includes/routes.php:1276 includes/routes.php:1947
|
||||
msgid "%{objectname} has been successfully deleted."
|
||||
msgstr "%{objectname} a bien été supprimé."
|
||||
|
||||
#: includes/routes.php:1289
|
||||
#: includes/routes.php:1285
|
||||
msgid "Deleting : %{objectname}"
|
||||
msgstr "Suppression : %{objectname}"
|
||||
|
||||
#: includes/routes.php:1290
|
||||
#: includes/routes.php:1286
|
||||
msgid "Do you really want to delete <strong>%{displayName}</strong> ?"
|
||||
msgstr "Voulez-vous vraiment supprimer <strong>%{displayName}</strong> ?"
|
||||
|
||||
#: includes/routes.php:1400
|
||||
#: includes/routes.php:1396
|
||||
msgid ""
|
||||
"The custom action %{customAction} have been successfully execute on "
|
||||
"%{objectname}."
|
||||
|
@ -3270,39 +3256,19 @@ msgstr ""
|
|||
"L'action personnalisée %{customAction} a été correctement exécutée sur "
|
||||
"%{objectname}."
|
||||
|
||||
#: includes/functions.php:123
|
||||
#: includes/functions.php:115
|
||||
msgid ""
|
||||
"Function 'getFData' : The method %{meth} of the object %{obj} doesn't exist."
|
||||
msgstr "Fonction getFData : La méthode %{meth} de l'objet %{obj} n'existe pas."
|
||||
|
||||
#: includes/functions.php:211
|
||||
#: includes/functions.php:208
|
||||
msgid "[not string value]"
|
||||
msgstr "[pas une chaîne de caractères]"
|
||||
|
||||
#: includes/functions.php:259
|
||||
#: includes/functions.php:254
|
||||
msgid "Folder not found"
|
||||
msgstr "Dossier introuvable"
|
||||
|
||||
#: includes/functions.php:863
|
||||
msgid "TB"
|
||||
msgstr "To"
|
||||
|
||||
#: includes/functions.php:864
|
||||
msgid "GB"
|
||||
msgstr "Go"
|
||||
|
||||
#: includes/functions.php:865
|
||||
msgid "MB"
|
||||
msgstr "Mo"
|
||||
|
||||
#: includes/functions.php:866
|
||||
msgid "KB"
|
||||
msgstr "Ko"
|
||||
|
||||
#: includes/functions.php:867
|
||||
msgid "B"
|
||||
msgstr "O"
|
||||
|
||||
#: conf/LSaddons/config.LSaddons.supann.php:97
|
||||
msgid "Mrs."
|
||||
msgstr "Mme."
|
||||
|
@ -3516,8 +3482,7 @@ msgstr "Détails"
|
|||
msgid "Email"
|
||||
msgstr "E-mail"
|
||||
|
||||
#: templates/default/import.tpl:43 templates/default/import.tpl:98
|
||||
#: templates/default/import.tpl:126 templates/default/import.tpl:151
|
||||
#: templates/default/import.tpl:43
|
||||
msgid "Errors"
|
||||
msgstr "Erreurs"
|
||||
|
||||
|
@ -3539,15 +3504,11 @@ msgstr "Format"
|
|||
msgid "Global search"
|
||||
msgstr "Recherche globale"
|
||||
|
||||
#: templates/default/import.tpl:148
|
||||
msgid "Hook: %(name)"
|
||||
msgstr "Déclencheur : %(name)"
|
||||
|
||||
#: templates/default/recoverpassword.tpl:19 templates/default/login.tpl:18
|
||||
msgid "Identifier"
|
||||
msgstr "Identifiant"
|
||||
|
||||
#: templates/default/import.tpl:92
|
||||
#: templates/default/import.tpl:85
|
||||
msgid "Imported objects"
|
||||
msgstr "Objets importés"
|
||||
|
||||
|
@ -3575,11 +3536,6 @@ msgstr "Déconnexion"
|
|||
msgid "Message"
|
||||
msgstr "Message"
|
||||
|
||||
#: templates/default/import.tpl:106 templates/default/import.tpl:134
|
||||
#: templates/default/import.tpl:159
|
||||
msgid "Messages"
|
||||
msgstr "Messages"
|
||||
|
||||
#: templates/default/viewSearch.tpl:113
|
||||
msgid "Nb / page :"
|
||||
msgstr "Nb / page :"
|
||||
|
@ -3592,18 +3548,14 @@ msgstr "Aucun log d'accès trouvé pour cet objet."
|
|||
msgid "No field."
|
||||
msgstr "Aucun champ."
|
||||
|
||||
#: templates/default/import.tpl:115
|
||||
#: templates/default/import.tpl:90
|
||||
msgid "No imported object"
|
||||
msgstr "Aucun objet importé"
|
||||
|
||||
#: templates/default/import.tpl:65
|
||||
#: templates/default/import.tpl:58
|
||||
msgid "No value"
|
||||
msgstr "Aucune valeur"
|
||||
|
||||
#: templates/default/import.tpl:45
|
||||
msgid "Object %(idx)"
|
||||
msgstr "Objet %(idx)"
|
||||
|
||||
#: templates/default/showTechInfo.tpl:11
|
||||
msgid "Object classes"
|
||||
msgstr "Classes d'objet"
|
||||
|
@ -3633,7 +3585,9 @@ msgstr "Mot de passe"
|
|||
msgid "Please confirm new password:"
|
||||
msgstr "Merci de confirmer le nouveau mot de passe :"
|
||||
|
||||
#: templates/default/LSaccessRightsMatrixView.tpl:22
|
||||
#: templates/default/LSaccessRightsMatrixView.tpl:27
|
||||
#: templates/default/LSaccessRightsMatrixView.tpl:67
|
||||
#: templates/default/LSaccessRightsMatrixView.tpl:72
|
||||
#: templates/default/LSaccessRightsMatrixView.tpl:93
|
||||
#: templates/default/LSaccessRightsMatrixView.tpl:95
|
||||
|
@ -3642,7 +3596,9 @@ msgstr "Merci de confirmer le nouveau mot de passe :"
|
|||
msgid "R"
|
||||
msgstr "L"
|
||||
|
||||
#: templates/default/LSaccessRightsMatrixView.tpl:24
|
||||
#: templates/default/LSaccessRightsMatrixView.tpl:28
|
||||
#: templates/default/LSaccessRightsMatrixView.tpl:69
|
||||
#: templates/default/LSaccessRightsMatrixView.tpl:73
|
||||
#: templates/default/LSaccessRightsMatrixView.tpl:89
|
||||
#: templates/default/LSaccessRightsMatrixView.tpl:91
|
||||
|
@ -3711,7 +3667,7 @@ msgstr "Ce type d'objet n'a aucune relation de configurée."
|
|||
msgid "Update objects if exists"
|
||||
msgstr "Mise à jour des objets existants"
|
||||
|
||||
#: templates/default/import.tpl:120
|
||||
#: templates/default/import.tpl:95
|
||||
msgid "Updated objects"
|
||||
msgstr "Objets mis à jour"
|
||||
|
||||
|
@ -3730,3 +3686,136 @@ msgstr "événement(s) trouvé(s) pour cet objet."
|
|||
#: templates/default/import.tpl:27 templates/default/import.tpl:33
|
||||
msgid "no"
|
||||
msgstr "non"
|
||||
|
||||
#~ msgid "Generate ldapsaisie.pot files:"
|
||||
#~ msgstr "Générer les fichiers POT :"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "SAMBA Support: The attribute %{dependency} is missing. Unable to forge "
|
||||
#~ "the attribute %{attr}."
|
||||
#~ msgstr ""
|
||||
#~ "Support SAMBA : L'attribut %{dependency} est manquant. Impossible de "
|
||||
#~ "générer l'attribut %{attr}."
|
||||
|
||||
#~ msgid "Stop"
|
||||
#~ msgstr "Stop"
|
||||
|
||||
#~ msgid "Invalid LDAP URI format"
|
||||
#~ msgstr "Format d'URI LDAP invalide"
|
||||
|
||||
#~ msgid "The value of field %{label} is invalid."
|
||||
#~ msgstr "La valeur du champ %{label} est incorrecte."
|
||||
|
||||
#~ msgid "LSformRule: Unknown rule type %{type}."
|
||||
#~ msgstr "LSformRule : Type de règle %{type} inconnu."
|
||||
|
||||
#~ msgid "Can't validate value of component %{c}."
|
||||
#~ msgstr "Impossible de valider la valeur du composant %{c}."
|
||||
|
||||
#~ msgid "Affiliate"
|
||||
#~ msgstr "Affilié"
|
||||
|
||||
#~ msgid "Alumnus"
|
||||
#~ msgstr "Ancien apprenant"
|
||||
|
||||
#~ msgid "Employee"
|
||||
#~ msgstr "Employé"
|
||||
|
||||
#~ msgid "Faculty"
|
||||
#~ msgstr "Faculté"
|
||||
|
||||
#~ msgid "Member"
|
||||
#~ msgstr "Membre"
|
||||
|
||||
#~ msgid "Student"
|
||||
#~ msgstr "Étudiant"
|
||||
|
||||
#~ msgid "Retired"
|
||||
#~ msgstr "Retraité"
|
||||
|
||||
#~ msgid "Teacher"
|
||||
#~ msgstr "Enseignant"
|
||||
|
||||
#~ msgid "Staff"
|
||||
#~ msgstr "Staff"
|
||||
|
||||
#~ msgid "Researcher"
|
||||
#~ msgstr "Chercheur"
|
||||
|
||||
#~ msgid "Emeritus teacher"
|
||||
#~ msgstr "Professeur émérite"
|
||||
|
||||
#~ msgid "Library - walk-in"
|
||||
#~ msgstr "Bibliothèque - Accès libre"
|
||||
|
||||
#~ msgid "Library - registered"
|
||||
#~ msgstr "Bibliothèque - Inscrit"
|
||||
|
||||
#~ 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 ""
|
||||
#~ "LSsession : call function %{func} do not provided from LSaddon %{addon}."
|
||||
#~ msgstr ""
|
||||
#~ "LSsession : la fonction %{func} n'est pas fournie par le LSaddon %{addon}."
|
||||
|
||||
#~ msgid "LSsession : problem during initialisation."
|
||||
#~ msgstr "LSsession : Problème durant l'initialisation."
|
||||
|
||||
#~ msgid ""
|
||||
#~ "LSformElement_password : Contact mail invalid (%{mail}). Can't send "
|
||||
#~ "password."
|
||||
#~ msgstr ""
|
||||
#~ "LSformElement_password : Mail de contact invalide (%{mail}). Impossible "
|
||||
#~ "d'envoyer le mot de passe."
|
||||
|
||||
#~ msgid "Only one command could be executed !"
|
||||
#~ msgstr "Une seule commande peut-être exécutée !"
|
||||
|
||||
#~ msgid "Title"
|
||||
#~ msgstr "Titre"
|
||||
|
||||
#~ msgid "deleting"
|
||||
#~ msgstr "suppression"
|
||||
|
||||
#~ msgid "renaming"
|
||||
#~ msgstr "renommage"
|
||||
|
||||
#~ msgid "updating"
|
||||
#~ msgstr "mise à jour"
|
||||
|
||||
#~ msgid "Deleting"
|
||||
#~ msgstr "Suppression"
|
||||
|
||||
#~ msgid "has been deleted successfully"
|
||||
#~ msgstr "a bien été supprimé"
|
||||
|
||||
#~ msgid "Missing parameter"
|
||||
#~ msgstr "Paramètre manquant"
|
||||
|
||||
#~ msgid "PHP error : %{error}"
|
||||
#~ msgstr "Erreur PHP : %{error}"
|
||||
|
||||
#~ msgid "SSH Support : Unable to connect to SSH Server (%{host}:%{port})."
|
||||
#~ msgstr ""
|
||||
#~ "Support SSH : Impossible de se connecter au serveur SSH (%{host}:%{port})."
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "delete"
|
||||
#~ msgstr "Supprimer"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "LSrelation : The update function of the relation %{relation} is unknow."
|
||||
#~ msgstr ""
|
||||
#~ "LSsession : La fonction de mise à jour de la relation %{relation} est "
|
||||
#~ "inconnue."
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "Administration"
|
||||
#~ msgstr "Confirmation"
|
||||
|
||||
#~ msgid "Select in a calendar."
|
||||
#~ msgstr "Choisir dans un calendrier."
|
||||
|
|
|
@ -309,8 +309,8 @@ msgstr ""
|
|||
#: includes/class/class.LSrelation.php:679 includes/class/class.LSform.php:346
|
||||
#: includes/class/class.LSformElement_select_object.php:75
|
||||
#: includes/class/class.LSformElement_select_object.php:91
|
||||
#: includes/class/class.LSsearchEntry.php:237 includes/routes.php:1068
|
||||
#: includes/routes.php:1212
|
||||
#: includes/class/class.LSsearchEntry.php:237 includes/routes.php:1064
|
||||
#: includes/routes.php:1208
|
||||
msgid "Delete"
|
||||
msgstr ""
|
||||
|
||||
|
@ -323,8 +323,8 @@ msgstr ""
|
|||
#: includes/class/class.LSrelation.php:736
|
||||
#: includes/class/class.LSformElement_select_object.php:74
|
||||
#: includes/class/class.LSformElement_supannLabeledValue.php:90
|
||||
#: includes/class/class.LSsearchEntry.php:221 includes/routes.php:1052
|
||||
#: includes/routes.php:1220 includes/routes.php:1305 includes/routes.php:1451
|
||||
#: includes/class/class.LSsearchEntry.php:221 includes/routes.php:1048
|
||||
#: includes/routes.php:1216 includes/routes.php:1301 includes/routes.php:1447
|
||||
msgid "Modify"
|
||||
msgstr ""
|
||||
|
||||
|
@ -332,7 +332,7 @@ msgstr ""
|
|||
msgid "Modify RDN"
|
||||
msgstr ""
|
||||
|
||||
#: includes/addons/LSaddons.accesslog.php:35 includes/routes.php:517
|
||||
#: includes/addons/LSaddons.accesslog.php:35 includes/routes.php:513
|
||||
#: templates/default/select.tpl:28 templates/default/global_search.tpl:6
|
||||
msgid "Search"
|
||||
msgstr ""
|
||||
|
@ -360,7 +360,7 @@ msgstr ""
|
|||
|
||||
#: includes/addons/LSaddons.accesslog.php:244
|
||||
#: includes/class/class.LSsession.php:1870 includes/routes.php:157
|
||||
#: includes/routes.php:474 templates/default/select.tpl:29
|
||||
#: includes/routes.php:470 templates/default/select.tpl:29
|
||||
msgid "Refresh"
|
||||
msgstr ""
|
||||
|
||||
|
@ -638,80 +638,80 @@ msgstr ""
|
|||
msgid "LSformRule_%{type}: Parameter %{param} is not found."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSio.php:334
|
||||
#: includes/class/class.LSio.php:261
|
||||
msgid "Failed to set post data on creation form."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSio.php:340
|
||||
#: includes/class/class.LSio.php:267
|
||||
msgid "Error validating creation form."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSio.php:345
|
||||
#: includes/class/class.LSio.php:272
|
||||
msgid "Failed to validate object data."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSio.php:352
|
||||
#: includes/class/class.LSio.php:279
|
||||
msgid "Failed to generate DN for this object."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSio.php:371
|
||||
#: includes/class/class.LSio.php:293
|
||||
msgid "Error creating object on LDAP server."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSio.php:377
|
||||
#: includes/class/class.LSio.php:299
|
||||
msgid "An object already exist on LDAP server with DN %{dn}."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSio.php:389
|
||||
#: includes/class/class.LSio.php:311
|
||||
msgid ""
|
||||
"Failed to load existing object %{dn} from LDAP server. Can't update object."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSio.php:398
|
||||
#: includes/class/class.LSio.php:320
|
||||
msgid "Failed to set post data on update form."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSio.php:404
|
||||
#: includes/class/class.LSio.php:326
|
||||
msgid "Error validating update form."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSio.php:419
|
||||
#: includes/class/class.LSio.php:336
|
||||
msgid "Error updating object on LDAP server."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSio.php:825
|
||||
#: includes/class/class.LSio.php:724
|
||||
msgid "LSio: Post data not found or not completed."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSio.php:828
|
||||
#: includes/class/class.LSio.php:727
|
||||
msgid "LSio: object type invalid."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSio.php:831
|
||||
#: includes/class/class.LSio.php:730
|
||||
msgid "LSio: input/output format %{format} invalid."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSio.php:834
|
||||
#: includes/class/class.LSio.php:733
|
||||
msgid "LSio: Fail to initialize input/output driver."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSio.php:837
|
||||
#: includes/class/class.LSio.php:736
|
||||
msgid "LSio: Fail to load objects's data from input file."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSio.php:840
|
||||
#: includes/class/class.LSio.php:739
|
||||
msgid "LSio: Fail to load objects's data to export from LDAP directory."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSio.php:843
|
||||
#: includes/class/class.LSio.php:742
|
||||
msgid "LSio: Fail to export objects's data."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSio.php:846
|
||||
#: includes/class/class.LSio.php:745
|
||||
msgid "LSio: An error occured running before import hooks. Stop the import."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSio.php:849
|
||||
#: includes/class/class.LSio.php:748
|
||||
msgid "LSio: An error occured running after import hooks."
|
||||
msgstr ""
|
||||
|
||||
|
@ -740,7 +740,7 @@ msgstr ""
|
|||
|
||||
#: includes/class/class.LSconfirmBox.php:37
|
||||
#: includes/class/class.LSsmoothbox.php:39 includes/class/class.LSform.php:175
|
||||
#: includes/routes.php:638 includes/routes.php:1292 includes/routes.php:1438
|
||||
#: includes/routes.php:634 includes/routes.php:1288 includes/routes.php:1434
|
||||
#: templates/default/recoverpassword.tpl:21
|
||||
msgid "Validate"
|
||||
msgstr ""
|
||||
|
@ -900,7 +900,7 @@ msgid "Unparsable value for component %{c}."
|
|||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSformElement_supannCompositeAttribute.php:479
|
||||
#: includes/class/class.LSformElement_jsonCompositeAttribute.php:413
|
||||
#: includes/class/class.LSformElement_jsonCompositeAttribute.php:408
|
||||
msgid "%{label}: %{error}"
|
||||
msgstr ""
|
||||
|
||||
|
@ -987,59 +987,59 @@ msgstr ""
|
|||
msgid "Or leave empty to pass.\n"
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSlang.php:906
|
||||
#: includes/class/class.LSlang.php:758
|
||||
#, php-format
|
||||
msgid ""
|
||||
"Invalid -W/--without parameter. Must be one of the following values: %s.'"
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSlang.php:908 includes/class/class.LSlang.php:921
|
||||
#: includes/class/class.LSlang.php:760 includes/class/class.LSlang.php:773
|
||||
msgid ""
|
||||
"You could not use -W/--without parameter combined with -O/--only parameter."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSlang.php:916
|
||||
#: includes/class/class.LSlang.php:768
|
||||
msgid "You could specify only one -O/--only parameter."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSlang.php:919
|
||||
#: includes/class/class.LSlang.php:771
|
||||
#, php-format
|
||||
msgid "Invalid -O/--only parameter. Must be one of the following values: '%s'."
|
||||
msgid "Invalid -O/--only parameter. Must be one of the following values: %s.'"
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSlang.php:953
|
||||
#: includes/class/class.LSlang.php:805
|
||||
msgid ""
|
||||
"Invalid -l/--lang parameter. Must be compose in format : [lang].[encoding]"
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSlang.php:968
|
||||
#: includes/class/class.LSlang.php:820
|
||||
#, php-format
|
||||
msgid ""
|
||||
"Invalid -f/--format parameter. Must be one of the following values: %s.'"
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSlang.php:992
|
||||
#: includes/class/class.LSlang.php:844
|
||||
#, php-format
|
||||
msgid "%s: Invalid parameter or lang file to load."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSlang.php:1293
|
||||
#: includes/class/class.LSlang.php:1136
|
||||
msgid "Generate lang.php file"
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSlang.php:1297
|
||||
#: includes/class/class.LSlang.php:1140
|
||||
msgid ""
|
||||
" -W/--without Disable specified messages. Must be one of\n"
|
||||
" the following values:"
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSlang.php:1301
|
||||
#: includes/class/class.LSlang.php:1144
|
||||
msgid ""
|
||||
" -O/--only Only handle specified messages. Must be one\n"
|
||||
" of the following values :"
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSlang.php:1305
|
||||
#: includes/class/class.LSlang.php:1148
|
||||
msgid ""
|
||||
" -I/--include-upstream Include upstream code to message lookup\n"
|
||||
" -c/--copy-original-value Copy original value as translated value when\n"
|
||||
|
@ -1057,37 +1057,26 @@ msgid ""
|
|||
" in existing lang files."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSlang.php:1345
|
||||
#, php-format
|
||||
msgid "%s: Invalid parameter."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSlang.php:1441
|
||||
#: includes/class/class.LSlang.php:1252
|
||||
msgid "Generate POT files:"
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSlang.php:1444
|
||||
#: includes/class/class.LSlang.php:1255
|
||||
msgid "This command generate 3 POT files:"
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSlang.php:1446
|
||||
#: includes/class/class.LSlang.php:1257
|
||||
msgid " => contains messages from PHP files"
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSlang.php:1448
|
||||
#: includes/class/class.LSlang.php:1259
|
||||
msgid " => contains messages from templates files"
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSlang.php:1450
|
||||
#: includes/class/class.LSlang.php:1261
|
||||
msgid " => contains all messages"
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSlang.php:1453
|
||||
msgid ""
|
||||
"Note: Use -I / --internal parameter to use internal parser instead of\n"
|
||||
"xgettext for PHP files."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LStemplate.php:160
|
||||
msgid "LStemplate : compile directory is not writable (dir : %{dir})"
|
||||
msgstr ""
|
||||
|
@ -1143,17 +1132,17 @@ msgstr ""
|
|||
msgid "A fatal error occured."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LStemplate.php:733
|
||||
#: includes/class/class.LStemplate.php:731
|
||||
msgid "LStemplate : Template %{file} not found."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LStemplate.php:736
|
||||
#: includes/class/class.LStemplate.php:734
|
||||
msgid ""
|
||||
"LStemplate : Fail to execute trigger %{callable} on event %{event} : is not "
|
||||
"callable."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LStemplate.php:739
|
||||
#: includes/class/class.LStemplate.php:737
|
||||
msgid ""
|
||||
"LStemplate : Error during the execution of the trigger %{callable} on event "
|
||||
"%{event}."
|
||||
|
@ -1870,8 +1859,8 @@ msgstr ""
|
|||
msgid "No object."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSrelation.php:747 includes/routes.php:456
|
||||
#: includes/routes.php:997
|
||||
#: includes/class/class.LSrelation.php:747 includes/routes.php:452
|
||||
#: includes/routes.php:993
|
||||
msgid "New"
|
||||
msgstr ""
|
||||
|
||||
|
@ -2068,11 +2057,11 @@ msgid ""
|
|||
"support."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSform.php:327 includes/routes.php:634
|
||||
#: includes/class/class.LSform.php:327 includes/routes.php:630
|
||||
msgid "Do you really want to execute custom action %{title} on this search ?"
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSform.php:333 includes/routes.php:1432
|
||||
#: includes/class/class.LSform.php:333 includes/routes.php:1428
|
||||
msgid ""
|
||||
"Do you really want to execute custom action %{customAction} on "
|
||||
"%{objectname} ?"
|
||||
|
@ -2262,8 +2251,8 @@ msgstr ""
|
|||
msgid "Display RSS stack."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSattr_ldap_password.php:108 includes/routes.php:587
|
||||
#: includes/routes.php:1379
|
||||
#: includes/class/class.LSattr_ldap_password.php:108 includes/routes.php:583
|
||||
#: includes/routes.php:1375
|
||||
msgid "undefined"
|
||||
msgstr ""
|
||||
|
||||
|
@ -2356,88 +2345,88 @@ msgstr ""
|
|||
msgid "Pedagogical element"
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSsearch.php:1318
|
||||
#: includes/class/class.LSsearch.php:1253
|
||||
msgid "Actions"
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSsearch.php:1321
|
||||
#: includes/class/class.LSsearch.php:1256
|
||||
#: templates/default/global_search.tpl:16
|
||||
msgid "This search didn't get any result."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSsearch.php:1963
|
||||
#: includes/class/class.LSsearch.php:1898
|
||||
msgid "LSsearch : Invalid filter : %{filter}."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSsearch.php:1966
|
||||
#: includes/class/class.LSsearch.php:1901
|
||||
msgid "LSsearch : Invalid basedn : %{basedn}."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSsearch.php:1969
|
||||
#: includes/class/class.LSsearch.php:1904
|
||||
msgid "LSsearch : Invalid value for %{param} parameter."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSsearch.php:1972
|
||||
#: includes/class/class.LSsearch.php:1907
|
||||
msgid ""
|
||||
"LSsearch : Invalid size limit. Must be an integer greater or equal to 0."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSsearch.php:1975
|
||||
#: includes/class/class.LSsearch.php:1910
|
||||
msgid "LSsearch : Invalid parameter %{attr}. Must be an boolean."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSsearch.php:1978
|
||||
#: includes/class/class.LSsearch.php:1913
|
||||
msgid ""
|
||||
"LSsearch : Invalid parameter attributes. Must be an string or an array of "
|
||||
"strings."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSsearch.php:1981
|
||||
#: includes/class/class.LSsearch.php:1916
|
||||
msgid "LSsearch : Can't build attributes list for make filter."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSsearch.php:1984
|
||||
#: includes/class/class.LSsearch.php:1919
|
||||
msgid ""
|
||||
"LSsearch : Error building filter with attribute '%{attr}' and pattern "
|
||||
"'%{pattern}'"
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSsearch.php:1987
|
||||
#: includes/class/class.LSsearch.php:1922
|
||||
msgid "LSsearch : Error combining filters."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSsearch.php:1990
|
||||
#: includes/class/class.LSsearch.php:1925
|
||||
msgid "LSsearch : Invalid pattern."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSsearch.php:1993
|
||||
#: includes/class/class.LSsearch.php:1928
|
||||
msgid "LSsearch : Invalid attribute %{attr} in parameters."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSsearch.php:1996
|
||||
#: includes/class/class.LSsearch.php:1931
|
||||
msgid "LSsearch : Error during the search."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSsearch.php:1999
|
||||
#: includes/class/class.LSsearch.php:1934
|
||||
msgid "LSsearch : Error sorting the search."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSsearch.php:2002
|
||||
#: includes/class/class.LSsearch.php:1937
|
||||
msgid ""
|
||||
"LSsearch : The function of the custum information %{name} is not callable."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSsearch.php:2005
|
||||
#: includes/class/class.LSsearch.php:1940
|
||||
msgid ""
|
||||
"LSsearch : Invalid predefinedFilter for LSobject type %{type} : %{label} "
|
||||
"(filter : %{filter})."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSsearch.php:2008
|
||||
#: includes/class/class.LSsearch.php:1943
|
||||
msgid "LSsearch : Error during execution of the custom action %{customAction}."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSsearch.php:2011
|
||||
#: includes/class/class.LSsearch.php:1946
|
||||
msgid "LSsearch : Invalid search pattern."
|
||||
msgstr ""
|
||||
|
||||
|
@ -2553,7 +2542,7 @@ msgstr ""
|
|||
msgid "JSON value #%{idx} is invalid (or empty)."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSformElement_jsonCompositeAttribute.php:438
|
||||
#: includes/class/class.LSformElement_jsonCompositeAttribute.php:433
|
||||
msgid "Invalid value \"%{value}\" for component %{component}."
|
||||
msgstr ""
|
||||
|
||||
|
@ -2687,20 +2676,20 @@ msgstr ""
|
|||
msgid "LSlog : Fail to load logging handler %{handler}."
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSerror.php:141
|
||||
#: includes/class/class.LSerror.php:138
|
||||
msgid "Unknown error"
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSerror.php:201
|
||||
#: includes/class/class.LSerror.php:198
|
||||
msgid "Unknown error : %{error}"
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSsearchEntry.php:213 includes/routes.php:1204
|
||||
#: includes/routes.php:1297 includes/routes.php:1443
|
||||
#: includes/class/class.LSsearchEntry.php:213 includes/routes.php:1200
|
||||
#: includes/routes.php:1293 includes/routes.php:1439
|
||||
msgid "View"
|
||||
msgstr ""
|
||||
|
||||
#: includes/class/class.LSsearchEntry.php:229 includes/routes.php:1060
|
||||
#: includes/class/class.LSsearchEntry.php:229 includes/routes.php:1056
|
||||
msgid "Copy"
|
||||
msgstr ""
|
||||
|
||||
|
@ -2726,102 +2715,82 @@ msgstr ""
|
|||
msgid "You must provide pattern for global search."
|
||||
msgstr ""
|
||||
|
||||
#: includes/routes.php:462 includes/routes.php:818
|
||||
#: includes/routes.php:458 includes/routes.php:814
|
||||
msgid "Import"
|
||||
msgstr ""
|
||||
|
||||
#: includes/routes.php:467 includes/routes.php:884
|
||||
#: includes/routes.php:463 includes/routes.php:880
|
||||
msgid "Export"
|
||||
msgstr ""
|
||||
|
||||
#: includes/routes.php:479
|
||||
#: includes/routes.php:475
|
||||
msgid "Reset"
|
||||
msgstr ""
|
||||
|
||||
#: includes/routes.php:518 templates/default/select.tpl:31
|
||||
#: includes/routes.php:514 templates/default/select.tpl:31
|
||||
msgid "Approximative search"
|
||||
msgstr ""
|
||||
|
||||
#: includes/routes.php:519 templates/default/select.tpl:32
|
||||
#: includes/routes.php:515 templates/default/select.tpl:32
|
||||
msgid "Recursive search"
|
||||
msgstr ""
|
||||
|
||||
#: includes/routes.php:608
|
||||
#: includes/routes.php:604
|
||||
msgid ""
|
||||
"The custom action %{title} have been successfully execute on this search."
|
||||
msgstr ""
|
||||
|
||||
#: includes/routes.php:956
|
||||
#: includes/routes.php:952
|
||||
msgid "Data entry form"
|
||||
msgstr ""
|
||||
|
||||
#: includes/routes.php:962 includes/routes.php:1736
|
||||
#: includes/routes.php:958 includes/routes.php:1732
|
||||
msgid "Object has been added."
|
||||
msgstr ""
|
||||
|
||||
#: includes/routes.php:1099
|
||||
#: includes/routes.php:1095
|
||||
msgid "My account"
|
||||
msgstr ""
|
||||
|
||||
#: includes/routes.php:1162 includes/routes.php:1908
|
||||
#: includes/routes.php:1158 includes/routes.php:1904
|
||||
msgid "The object has been partially modified."
|
||||
msgstr ""
|
||||
|
||||
#: includes/routes.php:1165 includes/routes.php:1911
|
||||
#: includes/routes.php:1161 includes/routes.php:1907
|
||||
msgid "The object has been modified successfully."
|
||||
msgstr ""
|
||||
|
||||
#: includes/routes.php:1280 includes/routes.php:1951
|
||||
#: includes/routes.php:1276 includes/routes.php:1947
|
||||
msgid "%{objectname} has been successfully deleted."
|
||||
msgstr ""
|
||||
|
||||
#: includes/routes.php:1289
|
||||
#: includes/routes.php:1285
|
||||
msgid "Deleting : %{objectname}"
|
||||
msgstr ""
|
||||
|
||||
#: includes/routes.php:1290
|
||||
#: includes/routes.php:1286
|
||||
msgid "Do you really want to delete <strong>%{displayName}</strong> ?"
|
||||
msgstr ""
|
||||
|
||||
#: includes/routes.php:1400
|
||||
#: includes/routes.php:1396
|
||||
msgid ""
|
||||
"The custom action %{customAction} have been successfully execute on "
|
||||
"%{objectname}."
|
||||
msgstr ""
|
||||
|
||||
#: includes/functions.php:123
|
||||
#: includes/functions.php:115
|
||||
msgid ""
|
||||
"Function 'getFData' : The method %{meth} of the object %{obj} doesn't exist."
|
||||
msgstr ""
|
||||
|
||||
#: includes/functions.php:211
|
||||
#: includes/functions.php:208
|
||||
msgid "[not string value]"
|
||||
msgstr ""
|
||||
|
||||
#: includes/functions.php:259
|
||||
#: includes/functions.php:254
|
||||
msgid "Folder not found"
|
||||
msgstr ""
|
||||
|
||||
#: includes/functions.php:863
|
||||
msgid "TB"
|
||||
msgstr ""
|
||||
|
||||
#: includes/functions.php:864
|
||||
msgid "GB"
|
||||
msgstr ""
|
||||
|
||||
#: includes/functions.php:865
|
||||
msgid "MB"
|
||||
msgstr ""
|
||||
|
||||
#: includes/functions.php:866
|
||||
msgid "KB"
|
||||
msgstr ""
|
||||
|
||||
#: includes/functions.php:867
|
||||
msgid "B"
|
||||
msgstr ""
|
||||
|
||||
#: conf/LSaddons/config.LSaddons.supann.php:97
|
||||
msgid "Mrs."
|
||||
msgstr ""
|
||||
|
@ -3021,8 +2990,7 @@ msgstr ""
|
|||
msgid "Email"
|
||||
msgstr ""
|
||||
|
||||
#: templates/default/import.tpl:43 templates/default/import.tpl:98
|
||||
#: templates/default/import.tpl:126 templates/default/import.tpl:151
|
||||
#: templates/default/import.tpl:43
|
||||
msgid "Errors"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3044,15 +3012,11 @@ msgstr ""
|
|||
msgid "Global search"
|
||||
msgstr ""
|
||||
|
||||
#: templates/default/import.tpl:148
|
||||
msgid "Hook: %(name)"
|
||||
msgstr ""
|
||||
|
||||
#: templates/default/recoverpassword.tpl:19 templates/default/login.tpl:18
|
||||
msgid "Identifier"
|
||||
msgstr ""
|
||||
|
||||
#: templates/default/import.tpl:92
|
||||
#: templates/default/import.tpl:85
|
||||
msgid "Imported objects"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3080,11 +3044,6 @@ msgstr ""
|
|||
msgid "Message"
|
||||
msgstr ""
|
||||
|
||||
#: templates/default/import.tpl:106 templates/default/import.tpl:134
|
||||
#: templates/default/import.tpl:159
|
||||
msgid "Messages"
|
||||
msgstr ""
|
||||
|
||||
#: templates/default/viewSearch.tpl:113
|
||||
msgid "Nb / page :"
|
||||
msgstr ""
|
||||
|
@ -3097,18 +3056,14 @@ msgstr ""
|
|||
msgid "No field."
|
||||
msgstr ""
|
||||
|
||||
#: templates/default/import.tpl:115
|
||||
#: templates/default/import.tpl:90
|
||||
msgid "No imported object"
|
||||
msgstr ""
|
||||
|
||||
#: templates/default/import.tpl:65
|
||||
#: templates/default/import.tpl:58
|
||||
msgid "No value"
|
||||
msgstr ""
|
||||
|
||||
#: templates/default/import.tpl:45
|
||||
msgid "Object %(idx)"
|
||||
msgstr ""
|
||||
|
||||
#: templates/default/showTechInfo.tpl:11
|
||||
msgid "Object classes"
|
||||
msgstr ""
|
||||
|
@ -3138,7 +3093,9 @@ msgstr ""
|
|||
msgid "Please confirm new password:"
|
||||
msgstr ""
|
||||
|
||||
#: templates/default/LSaccessRightsMatrixView.tpl:22
|
||||
#: templates/default/LSaccessRightsMatrixView.tpl:27
|
||||
#: templates/default/LSaccessRightsMatrixView.tpl:67
|
||||
#: templates/default/LSaccessRightsMatrixView.tpl:72
|
||||
#: templates/default/LSaccessRightsMatrixView.tpl:93
|
||||
#: templates/default/LSaccessRightsMatrixView.tpl:95
|
||||
|
@ -3147,7 +3104,9 @@ msgstr ""
|
|||
msgid "R"
|
||||
msgstr ""
|
||||
|
||||
#: templates/default/LSaccessRightsMatrixView.tpl:24
|
||||
#: templates/default/LSaccessRightsMatrixView.tpl:28
|
||||
#: templates/default/LSaccessRightsMatrixView.tpl:69
|
||||
#: templates/default/LSaccessRightsMatrixView.tpl:73
|
||||
#: templates/default/LSaccessRightsMatrixView.tpl:89
|
||||
#: templates/default/LSaccessRightsMatrixView.tpl:91
|
||||
|
@ -3214,7 +3173,7 @@ msgstr ""
|
|||
msgid "Update objects if exists"
|
||||
msgstr ""
|
||||
|
||||
#: templates/default/import.tpl:120
|
||||
#: templates/default/import.tpl:95
|
||||
msgid "Updated objects"
|
||||
msgstr ""
|
||||
|
||||
|
|
|
@ -42,7 +42,7 @@
|
|||
{if !empty($result.errors)}
|
||||
<h2>{tr msg='Errors'}</h2>
|
||||
{foreach $result.errors as $error}
|
||||
<h3 class='LSio'>{tr msg="Object %(idx)" idx=$error@iteration}</h3>
|
||||
<h3 class='LSio'>Object {$error@iteration}</h3>
|
||||
<div class='LSio_error'>
|
||||
{if !empty($error.errors.globals)}
|
||||
<ul class='LSio_global_errors'>
|
||||
|
@ -51,13 +51,6 @@
|
|||
{/foreach}
|
||||
</ul>
|
||||
{/if}
|
||||
{if $error.messages}
|
||||
<ul class="LSio_global_messages">
|
||||
{foreach $error.messages as $m}
|
||||
<li>{$m}</li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
{/if}
|
||||
<ul class='LSio_data_errors'>
|
||||
{foreach $error.data as $key => $val}
|
||||
<li>
|
||||
|
@ -91,26 +84,8 @@
|
|||
|
||||
<h2 class='LSio_imported_objects'>{tr msg='Imported objects'} ({count($result.imported)})</h2>
|
||||
<ul class='LSio_imported_objects'>
|
||||
{foreach $result.imported as $dn => $obj}
|
||||
<li>
|
||||
<a href='object/{$LSobject|escape:"url"}/{$dn|escape:"url"}'>{$obj.name|escape:"htmlall"}</a>
|
||||
{if $obj.errors}
|
||||
<h3>{tr msg="Errors"}</h3>
|
||||
<ul class="LSio_object_errors">
|
||||
{foreach $obj.errors as $e}
|
||||
<li>{$e|escape:"htmlall"}</li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
{/if}
|
||||
{if $obj.messages}
|
||||
<h3>{tr msg="Messages"}</h3>
|
||||
<ul class="LSio_object_messages">
|
||||
{foreach $obj.messages as $e}
|
||||
<li>{$e|escape:"htmlall"}</li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
{/if}
|
||||
</li>
|
||||
{foreach $result.imported as $dn => $name}
|
||||
<li><a href='object/{$LSobject|escape:"url"}/{$dn|escape:"url"}'>{$name|escape:"htmlall"}</a></li>
|
||||
{foreachelse}
|
||||
<li>{tr msg='No imported object'}</li>
|
||||
{/foreach}
|
||||
|
@ -119,53 +94,11 @@
|
|||
{if !empty($result.updated)}
|
||||
<h2 class='LSio_updated_objects'>{tr msg='Updated objects'} ({count($result.updated)})</h2>
|
||||
<ul class='LSio_updated_objects'>
|
||||
{foreach $result.updated as $dn => $obj}
|
||||
<li>
|
||||
<a href='object/{$LSobject|escape:"url"}/{$dn|escape:"url"}'>{$obj.name|escape:"htmlall"}</a>
|
||||
{if $obj.errors}
|
||||
<h3>{tr msg="Errors"}</h3>
|
||||
<ul class="LSio_object_errors">
|
||||
{foreach $obj.errors as $e}
|
||||
<li>{$e|escape:"htmlall"}</li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
{/if}
|
||||
{if $obj.messages}
|
||||
<h3>{tr msg="Messages"}</h3>
|
||||
<ul class="LSio_object_messages">
|
||||
{foreach $obj.messages as $e}
|
||||
<li>{$e|escape:"htmlall"}</li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
{/if}
|
||||
</li>
|
||||
{foreach $result.updated as $dn => $name}
|
||||
<li><a href='object/{$LSobject|escape:"url"}/{$dn|escape:"url"}'>{$name|escape:"htmlall"}</a></li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
{/if}
|
||||
|
||||
{foreach $result.hooks as $hook => $info}
|
||||
{if $info.errors || $info.messages}
|
||||
<h2>{tr msg="Hook: %(name)" name=$hook}</h2>
|
||||
<div class="LSio_hook">
|
||||
{if $info.errors}
|
||||
<h3>{tr msg="Errors"}</h3>
|
||||
<ul class="LSio_hook_errors">
|
||||
{foreach $info.errors as $e}
|
||||
<li>{$e|escape:"htmlall"}</li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
{/if}
|
||||
{if $info.messages}
|
||||
<h3>{tr msg="Messages"}</h3>
|
||||
<ul class="LSio_hook_messages">
|
||||
{foreach $info.messages as $e}
|
||||
<li>{$e}</li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
{/if}
|
||||
</div>
|
||||
{/if}
|
||||
{/foreach}
|
||||
|
||||
{/if}
|
||||
{/block}
|
||||
|
|
Loading…
Reference in a new issue