Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
lib
unicaen
ldap
Commits
d8deca10
Commit
d8deca10
authored
Jun 29, 2020
by
David Surville
Browse files
[Evolution] Développement UnicaenLdap WIP
parent
fdd3d01d
Changes
21
Hide whitespace changes
Inline
Side-by-side
config/module.config.php
View file @
d8deca10
...
...
@@ -14,14 +14,14 @@ use UnicaenLdap\Service\Group as LdapGroupService;
use
UnicaenLdap\Service\GroupFactory
as
GroupServiceFactory
;
use
UnicaenLdap\Service\People
as
LdapPeopleService
;
use
UnicaenLdap\Service\PeopleFactory
as
PeopleServiceFactory
;
use
UnicaenLdap\Service\Root
as
LdapRootService
;
use
UnicaenLdap\Service\RootFactory
as
RootServiceFactory
;
use
UnicaenLdap\Service\Structure
as
LdapStructureService
;
use
UnicaenLdap\Service\StructureFactory
as
StructureServiceFactory
;
use
UnicaenLdap\Service\System
as
LdapSystemService
;
use
UnicaenLdap\Service\SystemFactory
as
SystemServiceFactory
;
use
Zend\ServiceManager\Proxy\LazyServiceFactory
;
;;
return
array
(
'unicaen-ldap'
=>
[
...
...
@@ -33,6 +33,7 @@ return array(
'LdapServiceGeneric'
=>
GenericServiceFactory
::
class
,
'LdapServiceGroup'
=>
GroupServiceFactory
::
class
,
'LdapServicePeople'
=>
PeopleServiceFactory
::
class
,
'LdapServiceRoot'
=>
RootServiceFactory
::
class
,
'LdapServiceStructure'
=>
StructureServiceFactory
::
class
,
'LdapServiceSystem'
=>
SystemServiceFactory
::
class
,
],
...
...
@@ -42,11 +43,13 @@ return array(
'ldapServiceGeneric'
=>
'LdapServiceGeneric'
,
'ldapServiceGroup'
=>
'LdapServiceGroup'
,
'ldapServicePeople'
=>
'LdapServicePeople'
,
'ldapServiceRoot'
=>
'LdapServiceRoot'
,
'ldapServiceStructure'
=>
'LdapServiceStructure'
,
'ldapServiceSystem'
=>
'LdapServiceSystem'
,
LdapGenericService
::
class
=>
'LdapServiceGeneric'
,
LdapPeopleService
::
class
=>
'LdapServicePeople'
,
LdapGroupService
::
class
=>
'LdapServiceGroup'
,
LdapPeopleService
::
class
=>
'LdapServicePeople'
,
LdapRootService
::
class
=>
'LdapServiceRoot'
,
LdapStructureService
::
class
=>
'LdapServiceStructure'
,
LdapSystemService
::
class
=>
'LdapServiceSystem'
,
],
...
...
@@ -56,6 +59,7 @@ return array(
'LdapServicePeople'
=>
LdapPeopleService
::
class
,
'LdapServiceGeneric'
=>
LdapGenericService
::
class
,
'LdapServiceGroup'
=>
LdapGroupService
::
class
,
'LdapServiceRoot'
=>
LdapRootService
::
class
,
'LdapServiceStructure'
=>
LdapStructureService
::
class
,
'LdapServiceSystem'
=>
LdapSystemService
::
class
,
],
...
...
@@ -70,6 +74,9 @@ return array(
'LdapServiceGroup'
=>
[
LazyServiceFactory
::
class
,
],
'LdapServiceRoot'
=>
[
LazyServiceFactory
::
class
,
],
'LdapServiceStructure'
=>
[
LazyServiceFactory
::
class
,
],
...
...
src/UnicaenLdap/Entity/Base/People.php
View file @
d8deca10
...
...
@@ -730,12 +730,12 @@ class People extends Entity
:
sprintf
(
'%s%s'
,
$supannLabel
,
$matches
[
$part
]);
}
$prefixe
=
$this
->
getService
()
->
getCodeStructurePrefixe
();
$prefixe
=
$this
->
getService
()
->
getLdapStructureService
()
->
getCodeStructurePrefixe
();
$affect
=
(
0
!==
strpos
(
$matches
[
'affect'
],
$prefixe
))
?
sprintf
(
'%s%s'
,
$structure_prefixe
,
$matches
[
'affect'
])
:
$matches
[
'affect'
];
$prefixe
=
$this
->
getService
()
->
getCodeModuleEnseignementPrefixe
();
$prefixe
=
$this
->
getService
()
->
getLdapStructureService
()
->
getCodeModuleEnseignementPrefixe
();
preg_match
(
'/^(?<etiquette>\{[\w\-:]+\})(?<identifiant>.+)$/'
,
$matches
[
'etape'
],
$parts
);
$val
=
(
0
!==
strpos
(
$parts
[
'identifiant'
],
$prefixe
))
?
$prefixe
.
$parts
[
'identifiant'
]
...
...
@@ -852,7 +852,7 @@ class People extends Entity
if
(
is_string
(
$val
))
{
return
preg_match
(
self
::
$structure_pattern
,
$val
)
?
$val
:
null
;
}
elseif
(
$val
instanceof
StructureEntity
)
{
$val
=
sprintf
(
'%s;%s'
,
strtr
(
$val
->
get
(
'supannCodeEntite'
),
$this
->
getService
()
->
getCodeStructurePrefixe
(),
''
),
$val
->
get
(
'description'
));
$val
=
sprintf
(
'%s;%s'
,
strtr
(
$val
->
get
(
'supannCodeEntite'
),
$this
->
getService
()
->
getLdapStructureService
()
->
getCodeStructurePrefixe
(),
''
),
$val
->
get
(
'description'
));
return
preg_match
(
self
::
$structure_pattern
,
$val
)
?
$val
:
null
;
}
else
{
return
null
;
...
...
@@ -878,8 +878,8 @@ class People extends Entity
$value
=
$this
->
preFormat
(
$value
);
$value
=
array_map
(
function
(
$val
)
{
if
(
is_string
(
$val
))
{
if
(
0
!==
strpos
(
$val
,
$this
->
getService
()
->
getCodeStructurePrefixe
()))
{
$val
=
$this
->
getService
()
->
getCodeStructurePrefixe
()
.
$val
;
if
(
0
!==
strpos
(
$val
,
$this
->
getService
()
->
getLdapStructureService
()
->
getCodeStructurePrefixe
()))
{
$val
=
$this
->
getService
()
->
getLdapStructureService
()
->
getCodeStructurePrefixe
()
.
$val
;
}
return
$val
;
}
elseif
(
$val
instanceof
StructureEntity
)
{
...
...
@@ -908,8 +908,8 @@ class People extends Entity
$value
=
$this
->
preFormat
(
$value
);
$value
=
array_map
(
function
(
$val
)
{
if
(
is_string
(
$val
))
{
if
(
0
!==
strpos
(
$val
,
$this
->
getService
()
->
getCodeStructurePrefixe
()))
{
$val
=
$this
->
getService
()
->
getCodeStructurePrefixe
()
.
$val
;
if
(
0
!==
strpos
(
$val
,
$this
->
getService
()
->
getLdapStructureService
()
->
getCodeStructurePrefixe
()))
{
$val
=
$this
->
getService
()
->
getLdapStructureService
()
->
getCodeStructurePrefixe
()
.
$val
;
}
return
$val
;
}
elseif
(
$val
instanceof
StructureEntity
)
{
...
...
@@ -990,7 +990,7 @@ class People extends Entity
if
(
is_string
(
$val
))
{
return
preg_match
(
self
::
$structure_pattern
,
$val
)
?
$val
:
null
;
}
elseif
(
$val
instanceof
StructureEntity
)
{
$val
=
sprintf
(
'%s;%s'
,
strtr
(
$val
->
get
(
'supannCodeEntite'
),
$this
->
getService
()
->
getCodeStructurePrefixe
(),
''
),
$val
->
get
(
'description'
));
$val
=
sprintf
(
'%s;%s'
,
strtr
(
$val
->
get
(
'supannCodeEntite'
),
$this
->
getService
()
->
getLdapStructureService
()
->
getCodeStructurePrefixe
(),
''
),
$val
->
get
(
'description'
));
return
preg_match
(
self
::
$structure_pattern
,
$val
)
?
$val
:
null
;
}
else
{
return
null
;
...
...
@@ -1018,7 +1018,7 @@ class People extends Entity
if
(
is_string
(
$val
))
{
return
preg_match
(
self
::
$structure_pattern
,
$val
)
?
$val
:
null
;
}
elseif
(
$val
instanceof
StructureEntity
)
{
$val
=
sprintf
(
'%s;%s'
,
strtr
(
$val
->
get
(
'supannCodeEntite'
),
$this
->
getService
()
->
getCodeStructurePrefixe
(),
''
),
$val
->
get
(
'description'
));
$val
=
sprintf
(
'%s;%s'
,
strtr
(
$val
->
get
(
'supannCodeEntite'
),
$this
->
getService
()
->
getLdapStructureService
()
->
getCodeStructurePrefixe
(),
''
),
$val
->
get
(
'description'
));
return
preg_match
(
self
::
$structure_pattern
,
$val
)
?
$val
:
null
;
}
else
{
return
null
;
...
...
@@ -1041,16 +1041,17 @@ class People extends Entity
*/
public
function
setEduPersonPrincipalName
(
$value
=
null
,
$append
=
false
)
{
$universiteDomaine
=
$this
->
getService
()
->
getLdapRootService
()
->
getEtablissementDomain
();
$value
=
$this
->
preFormat
(
$value
);
$value
=
array_map
(
function
(
$v
)
{
list
(
$identifiant
,
$domaine
)
=
array_pad
(
explode
(
'@'
,
strtolower
(
$v
)),
2
,
null
);
if
(
$domaine
!=
self
::
$etablissement_d
omaine
)
{
$v
=
sprintf
(
'%s@%s'
,
$v
,
self
::
$etablissement_d
omaine
);
if
(
$domaine
!=
$universiteD
omaine
)
{
$v
=
sprintf
(
'%s@%s'
,
$v
,
$universiteD
omaine
);
}
return
$v
;
},
$value
);
$value
=
array_filter
(
$value
,
function
(
$v
)
{
return
preg_match
(
'/^[0-9a-z\-]+@'
.
self
::
$etablissement_d
omaine
.
'$/'
,
$v
);
return
preg_match
(
'/^[0-9a-z\-]+@'
.
$universiteD
omaine
.
'$/'
,
$v
);
});
$this
->
appendOrNot
(
'eduPersonPrincipalName'
,
$value
,
$append
);
...
...
@@ -1201,7 +1202,7 @@ class People extends Entity
:
sprintf
(
'%s%s'
,
$supannLabel
,
$matches
[
$part
]);
}
$prefixe
=
$this
->
getService
()
->
getCodeStructurePrefixe
();
$prefixe
=
$this
->
getService
()
->
getLdapStructureService
()
->
getCodeStructurePrefixe
();
$code
=
(
0
!==
strpos
(
$matches
[
'code'
],
$prefixe
))
?
sprintf
(
'%s%s'
,
$prefixe
,
$matches
[
'code'
])
:
$matches
[
'code'
];
...
...
@@ -1280,7 +1281,7 @@ class People extends Entity
* @var string $etape
* @var string $adistance
*/
$prefixe
=
$this
->
getService
()
->
getCodeModuleEnseignementPrefixe
();
$prefixe
=
$this
->
getService
()
->
getLdapStructureService
()
->
getCodeModuleEnseignementPrefixe
();
preg_match
(
'/^(?<etiquette>\{[\w\-:]+\})(?<identifiant>.+)$/'
,
$matches
[
'etape'
],
$parts
);
$val
=
(
0
!==
strpos
(
$parts
[
'identifiant'
],
$prefixe
))
?
$prefixe
.
$parts
[
'identifiant'
]
...
...
@@ -1652,7 +1653,7 @@ class People extends Entity
$value
=
array_map
(
function
(
$val
)
{
if
(
is_string
(
$val
))
{
if
(
preg_match
(
self
::
$attribute_with_label_pattern
,
$val
,
$matches
))
{
$prefixe
=
$this
->
getService
()
->
getCodeModuleEnseignementPrefixe
();
$prefixe
=
$this
->
getService
()
->
getLdapStructureService
()
->
getCodeModuleEnseignementPrefixe
();
$val
=
(
0
!==
strpos
(
$matches
[
'identifiant'
],
$prefixe
))
?
$prefixe
.
$matches
[
'identifiant'
]
:
$matches
[
'identifiant'
];
...
...
@@ -1683,7 +1684,7 @@ class People extends Entity
$value
=
array_map
(
function
(
$val
)
{
if
(
is_string
(
$val
))
{
if
(
preg_match
(
self
::
$attribute_with_label_pattern
,
$val
,
$matches
))
{
$prefixe
=
$this
->
getService
()
->
getCodeModuleEnseignementPrefixe
();
$prefixe
=
$this
->
getService
()
->
getLdapStructureService
()
->
getCodeModuleEnseignementPrefixe
();
$val
=
(
0
!==
strpos
(
$matches
[
'identifiant'
],
$prefixe
))
?
$prefixe
.
$matches
[
'identifiant'
]
:
$matches
[
'identifiant'
];
...
...
src/UnicaenLdap/Entity/Base/Root.php
0 → 100644
View file @
d8deca10
<?php
namespace
UnicaenLdap\Entity\Base
;
use
UnicaenLdap\Entity\Entity
;
use
UnicaenLdap\Entity\Structure
as
StructureEntity
;
use
UnicaenLdap\Exception
;
use
Zend\Ldap\Exception\LdapException
;
/**
* Classe mère de l'entité racine de l'annuaire LDAP.
*
* @author David Surville <david.surville@unicaen.fr>
*/
class
Root
extends
Entity
{
protected
$type
=
'Root'
;
/**
* Liste des classes d'objet nécessaires à la création d'une structure
*
* @var string[]
*/
protected
$objectClass
=
[
'top'
,
'dcObject'
,
'organization'
,
'eduOrg'
,
'supannOrg'
,
];
/**
* Liste des attributs autorisés pour l'entité "Root"
*
* @var array
*/
protected
$authorizedAttributes
=
[
// Attributes classes
'objectClass'
,
// Attributes
'description'
,
'eduOrgHomePageURI'
,
'eduOrgLegalName'
,
'eduOrgSuperiorURI'
,
'eduOrgWhitePagesURI'
,
'facsimileTelephoneNumber'
,
'l'
,
'o'
,
'postalAddress'
,
'supannEtablissement'
,
'telephoneNumber'
,
];
/**
* Liste des attributs contenant des dates
*
* @var array
*/
protected
$dateTimeAttributes
=
[];
/**
* Liste des attributs monovalués
*
* @var array
*/
protected
$monoValuedAttributes
=
[
'eduOrgLegalName'
,
];
/**
* Attribut Ldap "description"
*
* @param array|string|null $value
* @param bool $append
* @return self
* @throws Exception
* @throws LdapException
*/
public
function
setDescription
(
$value
=
null
,
$append
=
false
)
{
$value
=
$this
->
preFormat
(
$value
);
$this
->
appendOrNot
(
'description'
,
$value
,
$append
);
return
$this
;
}
/**
* Attribut Ldap "eduOrgHomePageURI"
*
* @param array|string|null $value
* @param bool $append
* @return self
* @throws Exception
* @throws LdapException
*/
public
function
setEduOrgHomePageURI
(
$value
=
null
,
$append
=
false
)
{
$value
=
$this
->
preFormat
(
$value
);
$value
=
filter_var_array
(
$value
,
FILTER_VALIDATE_URL
);
$this
->
appendOrNot
(
'eduOrgHomePageURI'
,
$value
,
$append
);
return
$this
;
}
/**
* Attribut Ldap "eduOrgLegalName"
*
* @param array|string|null $value
* @param bool $append
* @return self
* @throws Exception
* @throws LdapException
*/
public
function
setEduOrgLegalName
(
$value
=
null
,
$append
=
false
)
{
$value
=
$this
->
preFormat
(
$value
);
$this
->
appendOrNot
(
'eduOrgLegalName'
,
$value
,
$append
);
return
$this
;
}
/**
* Attribut Ldap "eduOrgSuperiorURI"
*
* @param array|string|null $value
* @param bool $append
* @return self
* @throws Exception
* @throws LdapException
*/
public
function
setEduOrgSuperiorURI
(
$value
=
null
,
$append
=
false
)
{
$value
=
$this
->
preFormat
(
$value
);
$value
=
filter_var_array
(
$value
,
FILTER_VALIDATE_URL
);
$this
->
appendOrNot
(
'eduOrgSuperiorURI'
,
$value
,
$append
);
return
$this
;
}
/**
* Attribut Ldap "eduOrgWhitePagesURI"
*
* @param array|string|null $value
* @param bool $append
* @return self
* @throws Exception
* @throws LdapException
*/
public
function
setEduOrgWhitePagesURI
(
$value
=
null
,
$append
=
false
)
{
$value
=
$this
->
preFormat
(
$value
);
$value
=
filter_var_array
(
$value
,
FILTER_VALIDATE_URL
);
$this
->
appendOrNot
(
'eduOrgWhitePagesURI'
,
$value
,
$append
);
return
$this
;
}
/**
* Attribut Ldap "facsimileTelephoneNumber"
*
* @param array|string|null $value
* @param bool $append
* @return self
* @throws Exception
* @throws LdapException
*/
public
function
setFacsimileTelephoneNumber
(
$value
=
null
,
$append
=
false
)
{
$value
=
$this
->
preFormat
(
$value
);
$value
=
array_map
([
$this
,
'formatTel'
],
$value
);
$this
->
appendOrNot
(
'facsimileTelephoneNumber'
,
$value
,
$append
);
return
$this
;
}
/**
* Attribut Ldap "l"
*
* @param array|string|null $value
* @param bool $append
* @return self
* @throws Exception
* @throws LdapException
*/
public
function
setL
(
$value
=
null
,
$append
=
false
)
{
$value
=
$this
->
preFormat
(
$value
);
$this
->
appendOrNot
(
'l'
,
$value
,
$append
);
return
$this
;
}
/**
* Attribut Ldap "o"
*
* @param array|string|null $value
* @param bool $append
* @return self
* @throws Exception
* @throws LdapException
*/
public
function
setO
(
$value
=
null
,
$append
=
false
)
{
$value
=
$this
->
preFormat
(
$value
);
$this
->
appendOrNot
(
'o'
,
$value
,
$append
);
return
$this
;
}
/**
* Attribut Ldap "postalAddress"
*
* @param array|string|null $value
* @param bool $append
* @return self
* @throws Exception
* @throws LdapException
*/
public
function
setPostalAddress
(
$value
=
null
,
$append
=
false
)
{
$value
=
$this
->
preFormat
(
$value
);
$value
=
array_filter
(
$value
,
function
(
$v
)
{
return
preg_match
(
self
::
$postal_address_pattern
,
$v
);
});
$this
->
appendOrNot
(
'postalAddress'
,
$value
,
$append
);
return
$this
;
}
/**
* Attribut Ldap "supannEtablissement"
*
* @param array|string|null $value
* @param bool $append
* @return $this
* @throws Exception
* @throws LdapException
*/
public
function
setSupannEtablissement
(
$value
=
null
,
$append
=
false
)
{
$value
=
$this
->
preFormat
(
$value
);
$value
=
array_filter
(
$value
,
function
(
$v
)
{
return
preg_match
(
self
::
$attribute_with_label_pattern
,
$v
);
});
$this
->
appendOrNot
(
'supannEtablissement'
,
$value
,
$append
);
return
$this
;
}
/**
* Attribut Ldap "telephoneNumber"
*
* @param array|string|null $value
* @param bool $append
* @return self
* @throws Exception
* @throws LdapException
*/
public
function
setTelephoneNumber
(
$value
=
null
,
$append
=
false
)
{
$value
=
$this
->
preFormat
(
$value
);
$value
=
array_map
([
$this
,
'formatTel'
],
$value
);
$this
->
appendOrNot
(
'telephoneNumber'
,
$value
,
$append
);
return
$this
;
}
}
\ No newline at end of file
src/UnicaenLdap/Entity/Entity.php
View file @
d8deca10
...
...
@@ -16,8 +16,6 @@ use Zend\Ldap\Exception\LdapException;
*/
abstract
class
Entity
{
static
protected
$etablissement_domaine
=
'unicaen.fr'
;
/**
* Type d'entité
*
...
...
@@ -95,6 +93,7 @@ abstract class Entity
'Generic'
=>
[
'uid'
,
'UnicaenLdap\\Entity\\Generic'
],
'Group'
=>
[
'cn'
,
'UnicaenLdap\\Entity\\Group'
],
'People'
=>
[
'uid'
,
'UnicaenLdap\\Entity\\People'
],
'Root'
=>
[
'dc'
,
'UnicaenLdap\\Entity\\Root'
],
'Structure'
=>
[
'supannCodeEntite'
,
'UnicaenLdap\\Entity\\Structure'
],
'System'
=>
[
'uid'
,
'UnicaenLdap\\Entity\\System'
],
];
...
...
src/UnicaenLdap/Entity/People.php
View file @
d8deca10
...
...
@@ -115,6 +115,8 @@ class People extends BasePeople
}
/**
* Test si une valeur est renseignée pour le champ "eduPersonAffiliation"
*
* @param string $status
* @return bool
*/
...
...
@@ -242,6 +244,15 @@ class People extends BasePeople
return
$this
->
whichStatus
(
parent
::
STATUS_TEACHER
);
}
public
function
getEduPersonOrg
()
{
$structureService
=
$this
->
getService
()
->
getLdapStructureService
();
$dn
=
$this
->
eduPersonOrgDN
;
if
(
empty
(
$dn
))
return
null
;
return
$structureService
->
getAllBy
(
$dn
,
'dn'
);
}
/**
* Retourne l'identifiant Octopus de l'individu
*
...
...
src/UnicaenLdap/Entity/Root.php
0 → 100644
View file @
d8deca10
<?php
namespace
UnicaenLdap\Entity
;
use
UnicaenLdap\Entity\Base\Root
as
BaseRoot
;
use
UnicaenLdap\Filter\Filter
;
use
Zend\Ldap\Exception\LdapException
;
/**
* Classe de gestion de l'entité racine de l'annuaire LDAP.
*
* @author David SURVILLE <david.surville@unicaen.fr>
*/
class
Root
extends
BaseRoot
{}
\ No newline at end of file
src/UnicaenLdap/Service/AbstractService.php
View file @
d8deca10
...
...
@@ -18,17 +18,19 @@ use Zend\Stdlib\ErrorHandler;
* @author Laurent Lécluse <laurent.lecluse at unicaen.fr>
*/
abstract
class
AbstractService
implements
LdapGenericServiceAwareInterface
,
LdapGroupServiceAwareInterface
,
LdapPeopleServiceAwareInterface
,
LdapRootServiceAwareInterface
,
LdapStructureServiceAwareInterface
,
LdapGroupServiceAwareInterface
,
LdapSystemServiceAwareInterface
,
LdapGenericServiceAwareInterface
LdapSystemServiceAwareInterface
{
use
LdapGenericServiceAwareTrait
;
use
LdapGroupServiceAwareTrait
;
use
LdapPeopleServiceAwareTrait
;
use
LdapRootServiceAwareTrait
;
use
LdapStructureServiceAwareTrait
;
use
LdapGroupServiceAwareTrait
;
use
LdapSystemServiceAwareTrait
;
use
LdapGenericServiceAwareTrait
;
/**
* Limite de recherche par défaut
...
...
@@ -59,21 +61,6 @@ abstract class AbstractService implements
*/
protected
$ou
=
[];
/**
* Préfixe utilisé pour le code des structures
*
* @var string
*/
protected
$code_structure_prefixe
=
'HS_'
;
/**
* Préfixe utilisé pour le code des modules d'enseignement
*
* @var string
*/
protected
$code_module_enseignement_prefixe
=
'AE_'
;
/**
* Compteur utilisé dans la recherche
*
...
...
@@ -96,11 +83,12 @@ abstract class AbstractService implements
* Spécifie l'objet d'accès à l'annuaire LDAP.
*
* @param Ldap $ldap
* @return
AbstractService
* @return
self
*/
public
function
setLdap
(
Ldap
$ldap
=
null
)
{
$this
->
ldap
=
$ldap
;
return
$this
;
}
...
...
@@ -136,26 +124,6 @@ abstract class AbstractService implements
},
$this
->
ou
);
}
/**
* Retourne le préfixe utilisé pour les codes des structures
*
* @return string
*/
public
function
getCodeStructurePrefixe
()
{
return
$this
->
code_structure_prefixe
;
}
/**
* Retourne le préfixe utilisé pour les codes des modules d'enseignement
*
* @return string
*/
public
function
getCodeModuleEnseignementPrefixe
()
{
return
$this
->
code_module_enseignement_prefixe
;
}
/**
* Retourne la liste de toutes les entités correspondantes
*
...
...
@@ -316,7 +284,10 @@ abstract class AbstractService implements
if
(
is_string
(
$ou
))
$ou
=
array
(
$ou
);
elseif
(
null
===
$ou
)
$ou
=
$this
->
ou
;
if
(
1
==
count
(
$ou
))
{
if
(
0
===
count
(
$ou
))
{
$basedn
=
$this
->
getLdap
()
->
getBaseDn
();
}
elseif
(
1
===
count
(
$ou
))
{
$basedn
=
"ou="
.
$ou
[
0
]
.
","
.
$this
->
getLdap
()
->
getBaseDn
();
}
else
{
$basedn
=
$this
->
getLdap
()
->
getBaseDn
();
...
...
src/UnicaenLdap/Service/Generic.php
View file @
d8deca10
...
...
@@ -9,7 +9,19 @@ namespace UnicaenLdap\Service;
*/
class
Generic
extends
AbstractService
{