39 lines
1.1 KiB
PHP
39 lines
1.1 KiB
PHP
<?php
|
|
|
|
class WPML_TM_AMS_User_Sync {
|
|
|
|
/**@var WPML_Translation_Manager_Records */
|
|
private $manager_records;
|
|
|
|
/** @var WPML_Translator_Records */
|
|
private $translator_records;
|
|
|
|
/** @var WPML_Translator_Admin_Records $translator_admin_records */
|
|
private $translator_admin_records;
|
|
|
|
public function __construct(
|
|
WPML_Translation_Manager_Records $manager_records,
|
|
WPML_Translator_Records $translator_records,
|
|
WPML_Translator_Admin_Records $translator_admin_records
|
|
) {
|
|
$this->manager_records = $manager_records;
|
|
$this->translator_records = $translator_records;
|
|
$this->translator_admin_records = $translator_admin_records;
|
|
}
|
|
|
|
public function get_translators() {
|
|
$translators = $this->translator_records->get_users_with_capability();
|
|
$translators = array_merge( $translators, $this->get_admins_that_are_not_translators() );
|
|
return $translators;
|
|
}
|
|
|
|
public function get_managers() {
|
|
return $this->manager_records->get_users_with_capability();
|
|
}
|
|
|
|
private function get_admins_that_are_not_translators() {
|
|
return $this->translator_admin_records->search_for_users_without_capability();
|
|
}
|
|
|
|
}
|