mirror of
https://gitlab.easter-eggs.com/ee/ldapsaisie.git
synced 2024-12-23 17:03:47 +01:00
LScli: add autocomplete_LSobject_attr_name() and autocomplete_LSform_name() helpers methods
This commit is contained in:
parent
b7a68f6a9e
commit
965efeeda5
2 changed files with 48 additions and 13 deletions
|
@ -55,26 +55,28 @@ Pour mettre en place une telle commande *CLI* personnalisée, il est nécessaire
|
|||
Pour vous aider dans l'écrire d'une telle méthode d'autocomplétion, des méthodes statiques
|
||||
sont fournies par la classe `LScli` pour les autocomplétions les plus courantes :
|
||||
|
||||
- `LScli :: autocomplete_class_name()`
|
||||
- `LScli :: autocomplete_class_name()` : Autocomplétion du nom d'une classe PHP.
|
||||
|
||||
Autocomplétion du nom d'une classe PHP.
|
||||
- `LScli :: autocomplete_addon_name()` : Autocomplétion du nom d'un
|
||||
[LSaddon](../../conf/index.md#configuration-des-lsaddons).
|
||||
|
||||
- `LScli :: autocomplete_addon_name()`
|
||||
- `LScli :: autocomplete_int()` : Autocomplétion d'un nombre entier.
|
||||
|
||||
Autocomplétion du nom d'un [LSaddon](../../conf/index.md#configuration-des-lsaddons).
|
||||
- `LScli :: autocomplete_LSobject_types()` : Autocomplétion du nom d'un type
|
||||
d'[LSobject](../../conf/index.md#configuration-lsobject).
|
||||
|
||||
- `LScli :: autocomplete_int()`
|
||||
- `LScli :: autocomplete_LSobject_dn()` : Autocomplétion du DN d'un type précis
|
||||
d'[LSobject](../../conf/index.md#configuration-lsobject) de l'annuaire.
|
||||
|
||||
Autocomplétion d'un nombre entier.
|
||||
- `LScli :: autocomplete_LSobject_attr_name()` : Autocomplétion du nom d'un attribut précis
|
||||
pour un type d'[LSobject](../../conf/index.md#configuration-lsobject) de l'annuaire.
|
||||
|
||||
- `LScli :: autocomplete_LSobject_types()`
|
||||
- `LScli :: autocomplete_LSobject_ioFormat()` : Autocomplétion du nom d'un
|
||||
[ioFormat](../../conf/LSobject/ioFormat.md#ioformat) pour un type
|
||||
d'[LSobject](../../conf/index.md#configuration-lsobject) de l'annuaire.
|
||||
|
||||
Autocomplétion du nom d'un type d'[LSobject](../../conf/index.md#configuration-lsobject).
|
||||
|
||||
- `LScli :: autocomplete_LSobject_dn()`
|
||||
|
||||
Autocomplétion du DN d'un type précis d'[LSobject](../../conf/index.md#configuration-lsobject) de
|
||||
l'annuaire.
|
||||
- `LScli :: autocomplete_LSform_name()` : Autocomplétion du nom d'un formulaire de
|
||||
l'application.
|
||||
|
||||
Par ailleurs, la méthode `LScli :: autocomplete_opts()` vous facilitera la construction de la
|
||||
liste des valeurs d'autocomplétion de l'argument courant en fonction de ce qui a déjà été
|
||||
|
|
|
@ -780,6 +780,28 @@ class LScli extends LSlog_staticLoggerClass {
|
|||
return array(LScli :: quote_word("$rdn_attr=", $quote_char));
|
||||
}
|
||||
|
||||
/**
|
||||
* Autocomplete LSobject attribute name
|
||||
*
|
||||
* @param string $objType LSobject type
|
||||
* @param string $prefix Option prefix (optional, default=empty string)
|
||||
* @param boolean $case_sensitive Set to false if options are case insensitive (optional, default=true)
|
||||
* @param string $quote_char Quote character (optional, if not set, $prefix will be unquoted and its
|
||||
* quote char (if detected) will be used to quote options)
|
||||
*
|
||||
* @return array List of available options
|
||||
**/
|
||||
public static function autocomplete_LSobject_attr_name($objType, $prefix='', $case_sensitive=true, $quote_char='') {
|
||||
if (!LSsession ::loadLSobject($objType, false))
|
||||
return array();
|
||||
return self :: autocomplete_opts(
|
||||
LSconfig :: keys("LSobjects.$objType.attrs"),
|
||||
$prefix,
|
||||
$case_sensitive,
|
||||
$quote_char
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Autocomplete LSobject ioFormat option
|
||||
*
|
||||
|
@ -805,6 +827,17 @@ class LScli extends LSlog_staticLoggerClass {
|
|||
return self :: autocomplete_opts($ioFormats, $prefix, $case_sensitive, $quote_char);
|
||||
}
|
||||
|
||||
/**
|
||||
* Autocomplete LSform name
|
||||
*
|
||||
* @param string $prefix LSform name prefix (optional, default=empty string)
|
||||
*
|
||||
* @return array List of matched LSform names
|
||||
**/
|
||||
public static function autocomplete_LSform_name($prefix='', $quote_char=null) {
|
||||
return self :: autocomplete_opts(["create", "modify", "lostPassword"], $prefix, true, $quote_char);
|
||||
}
|
||||
|
||||
/**
|
||||
* Autocomplete LSformRule name
|
||||
*
|
||||
|
|
Loading…
Reference in a new issue