diff --git a/workflow/engine/classes/AuthSources.php b/workflow/engine/classes/AuthSources.php
index edb07e990..efb4a62c2 100644
--- a/workflow/engine/classes/AuthSources.php
+++ b/workflow/engine/classes/AuthSources.php
@@ -3,6 +3,10 @@
use ProcessMaker\Model\RbacAuthenticationSource;
use ProcessMaker\Model\RbacUsers;
use ProcessMaker\Model\Configuration;
+use ProcessMaker\Model\GroupUser;
+use ProcessMaker\Model\Groupwf;
+use ProcessMaker\Model\User;
+use ProcessMaker\Model\Department;
use Illuminate\Support\Facades\Log;
use Illuminate\Support\Facades\Cache;
@@ -92,7 +96,7 @@ class AuthSources
return ['success' => false, 'message' => $exception->getMessage()];
}
}
-
+
public function verifyAuthSourceName($authSourceName) {
try {
$row = false;
@@ -116,12 +120,12 @@ class AuthSources
//get suggest name
$pieces = explode( ' ', $name);
$last = array_pop($pieces);
- $number = trim($last, "()");
+ $number = trim($last, '()');
if ("({$number})" === $last) {
$number = intval($number) + 1;
$suggestName = implode('', $pieces) . " ({$number})";
} else {
- $suggestName = $name . " (1)";
+ $suggestName = $name . ' (1)';
}
}
}
@@ -138,7 +142,7 @@ class AuthSources
$response = ['success' => true, 'status' => 'OK'];
if ($authSourceConnectionData['startTLS'] === false) {
- $response["message"] = G::LoadTranslation("ID_TLS_CERTIFICATE_IS_NOT_INSTALLED_IN_THE_SERVER");
+ $response['message'] = G::LoadTranslation('ID_TLS_CERTIFICATE_IS_NOT_INSTALLED_IN_THE_SERVER');
}
return $response;
} catch (Exception $exception) {
@@ -158,7 +162,7 @@ class AuthSources
);
$rbacAuthenticationSource = new RbacAuthenticationSource();
- $authSourceData['AUTH_SOURCE_ID'] = $authSourceData['AUTH_SOURCE_ID'] ?? 'vacio';
+ $authSourceData['AUTH_SOURCE_UID'] = $authSourceData['AUTH_SOURCE_UID'] ?? '';
$authSourceData['AUTH_SOURCE_DATA'] = json_encode($authSourceData['AUTH_SOURCE_DATA']);
$saveDataResponse = $rbacAuthenticationSource->saveData($authSourceData);
return ['success' => true, 'saveData' => $saveDataResponse];
@@ -173,7 +177,7 @@ class AuthSources
$usersAuthSources = $rbacUsers->listUsersAuthSources();
foreach ($usersAuthSources['data'] as $row) {
- $listUsers[strtolower($row["USR_USERNAME"])] = $row['UID_AUTH_SOURCE'];
+ $listUsers[strtolower($row['USR_USERNAME'])] = $row['UID_AUTH_SOURCE'];
}
$ldapSource = new LdapSource();
@@ -223,14 +227,14 @@ class AuthSources
$aUser = (array) $sUser;
$matches = array();
$aData = array();
- $aData['USR_USERNAME'] = str_replace("*", "'", $aUser['sUsername']);
- $aData["USR_PASSWORD"] = "00000000000000000000000000000000";
+ $aData['USR_USERNAME'] = str_replace('*', "'", $aUser['sUsername']);
+ $aData['USR_PASSWORD'] = '00000000000000000000000000000000';
// note added by gustavo gustavo-at-colosa.com
// asign the FirstName and LastName variables
// add replace to change D*Souza to D'Souza by krlos
- $aData['USR_FIRSTNAME'] = str_replace("*", "'", $aUser['sFirstname']);
+ $aData['USR_FIRSTNAME'] = str_replace('*', "'", $aUser['sFirstname']);
$aData['USR_FIRSTNAME'] = ($aData['USR_FIRSTNAME'] == '') ? $aData['USR_USERNAME'] : $aData['USR_FIRSTNAME'];
- $aData['USR_LASTNAME'] = str_replace("*", "'", $aUser['sLastname']);
+ $aData['USR_LASTNAME'] = str_replace('*', "'", $aUser['sLastname']);
$aData['USR_EMAIL'] = $aUser['sEmail'];
$aData['USR_DUE_DATE'] = date('Y-m-d', mktime(0, 0, 0, date('m'), date('d'), date('Y') + 2));
$aData['USR_CREATE_DATE'] = date('Y-m-d H:i:s');
@@ -249,10 +253,10 @@ class AuthSources
$aUser['sDN'] = str_replace($match, $newMatch, $aUser['sDN']);
}
$aData['USR_AUTH_USER_DN'] = $aUser['sDN'];
-
+
$usrRole = 'LURANA_OPERATOR';
if (!empty($authSourceReturn['AUTH_SOURCE_DATA']['USR_ROLE'])) {
- //$usrRole = $authSourceReturn['AUTH_SOURCE_DATA']['USR_ROLE'];
+ $usrRole = $authSourceReturn['AUTH_SOURCE_DATA']['USR_ROLE'];
}
$sUserUID = $RBAC->createUser($aData, $usrRole, $authSourceReturn['AUTH_SOURCE_NAME']);
@@ -269,7 +273,7 @@ class AuthSources
if (count($aAttributes)) {
foreach ($aAttributes as $value) {
if (isset($aUser[$value['attributeUser']])) {
- $aData[$value['attributeUser']] = str_replace("*", "'", $aUser[$value['attributeUser']]);
+ $aData[$value['attributeUser']] = str_replace('*', "'", $aUser[$value['attributeUser']]);
if ($value['attributeUser'] == 'USR_STATUS') {
$evalValue = $aData[$value['attributeUser']];
$statusValue = $aData['USR_STATUS'];
@@ -287,6 +291,408 @@ class AuthSources
}
}
+ public function searchGroups($authSourceUid) {
+ try {
+ $ldapSource = new LdapSource();
+ $ldapSource->authSourceUid = $authSourceUid;
+ $groupsLdap = $ldapSource->searchGroups();
+
+ $allGroupsLdap = [];
+ foreach ($groupsLdap as $group) {
+ $node = array();
+ $node['GRP_UID'] = $group['cn'];
+ $node['GRP_TITLE'] = $group['cn'];
+ $node['GRP_USERS'] = $group['users'];
+ $node['GRP_DN'] = $group['dn'];
+ $allGroupsLdap[] = $node;
+ }
+
+ $groupUser = new GroupUser();
+ $groupsNumberUsers = $groupUser->getNumberOfUsersByGroups();
+ $listGroupsNumberUsers = [];
+ foreach ($groupsNumberUsers['data'] as $group) {
+ $listGroupsNumberUsers[$group['GRP_UID']] = $group['NUM_REC'];
+ }
+
+ $groupwf = new Groupwf();
+ $groupsObjects = [];
+ foreach ($allGroupsLdap as $group) {
+ $groupObject = new TreeNodeAuthSource();
+ $groupObject->text = htmlentities($group['GRP_TITLE'], ENT_QUOTES, 'UTF-8');
+ $groupUid = $groupwf->getGroupWithDN($group['GRP_DN']);
+ if (!empty($groupUid[0]['GRP_UID'])) {
+ $groupUid = $groupUid[0]['GRP_UID'];
+ $groupObject->text .= ' (' . ($listGroupsNumberUsers[$groupUid] ?? 0) . ')';
+ $groupObject->checked = true;
+ } else {
+ $groupObject->checked = false;
+ }
+ $groupObject->id = urlencode($group['GRP_DN']);
+ $groupsObjects[] = $groupObject;
+ }
+
+ return $groupsObjects;
+ } catch (Exception $exception) {
+ return ['success' => false, 'message' => $exception->getMessage()];
+ }
+ }
+
+ public function searchDepartaments($authSourceUid) {
+ try {
+ $ldapSource = new LdapSource();
+ $ldapSource->authSourceUid = $authSourceUid;
+ $departments = $ldapSource->searchDepartments();
+
+ $departmentsObjects = array();
+ $user = new User();
+ $departmentsNumberUsers = $user->getNumberOfUsersByDepartments();
+ $listDepartmentsNumberUsers = [];
+ foreach ($departmentsNumberUsers['data'] as $group) {
+ $listDepartmentsNumberUsers[$group['DEP_UID']] = $group['NUM_REC'];
+ }
+
+ $departmentsObject = $this->getChildrenDepartments($departments, '', $listDepartmentsNumberUsers, $ldapSource->terminatedOu);
+ return $departmentsObject;
+ } catch (Exception $exception) {
+ return ['success' => false, 'message' => $exception->getMessage()];
+ }
+ }
+
+ public function saveGroups($groupsDN, $authSourceUid) {
+ $groupsToCheck = explode('|', $groupsDN);
+ $groupsToCheck = array_map('urldecode', $groupsToCheck);
+ $groupsToUncheck = $this->getGroupsToUncheck($groupsToCheck);
+
+ $filters = ['conditions' => ['AUTH_SOURCE_UID'=> $authSourceUid]];
+ $rbacAuthenticationSource = new RbacAuthenticationSource();
+ $authSourceReturn = $rbacAuthenticationSource->show($filters);
+ $authenticationSourceData = $authSourceReturn['data'][0];
+ $authenticationSourceData['AUTH_SOURCE_DATA'] = json_decode($authenticationSourceData['AUTH_SOURCE_DATA'], true);
+
+ $ldapSource = new LdapSource();
+ $ldapSource->authSourceUid = $authSourceUid;
+
+ $groupwf = new Groupwf();
+ foreach ($groupsToCheck as $groupDN) {
+ $ous = $ldapSource->custom_ldap_explode_dn($groupDN);
+ $currentGroup = array_shift($ous);
+ $groupAux = explode('=', $currentGroup);
+ $groupTitle = isset($groupAux[1]) ? trim($groupAux[1]) : '';
+ $groupTitle = stripslashes($groupTitle);
+ if (empty($groupTitle)) {
+ continue;
+ }
+
+ $filters = array(
+ 'fields' => ['GRP_UID'],
+ 'conditions' => ['GRP_TITLE' => $groupTitle, 'GRP_STATUS' => 'ACTIVE']
+ );
+ $allGroups = $groupwf->show($filters);
+ $groupUid = $allGroups['data'][0]['GRP_UID'] ?? '';
+
+ if ($groupUid === '') {
+ $group = [
+ 'GRP_TITLE' => $groupTitle,
+ 'GRP_LDAP_DN' => $groupDN
+ ];
+ } else {
+ $group = $allGroups['data'][0];
+ $group['GRP_LDAP_DN'] = $groupDN;
+ }
+
+ $groupwf->saveData($group);
+ }
+
+ if (count($groupsToUncheck) > 0) {
+ foreach ($groupsToUncheck as $groupDN) {
+ $ous = $ldapSource->custom_ldap_explode_dn($groupDN);
+ $currentGroup = array_shift($ous);
+ $groupAux = explode('=', $currentGroup);
+ $groupTitle = isset($groupAux[1]) ? trim($groupAux[1]) : '';
+ $groupTitle = stripslashes($groupTitle);
+ if (empty($groupTitle)) {
+ continue;
+ }
+
+ $filters = array(
+ 'fields' => ['GRP_UID'],
+ 'conditions' => ['GRP_TITLE' => $groupTitle, 'GRP_STATUS' => 'ACTIVE']
+ );
+ $allGroups = $groupwf->show($filters);
+ $groupUid = $allGroups['data'][0]['GRP_UID'] ?? '';
+
+ if ($groupUid != '') {
+ $group = $allGroups['data'][0];
+ $group['GRP_LDAP_DN'] = '';
+ $groupwf->saveData($group);
+ if (!isset($authenticationSourceData['AUTH_SOURCE_DATA']['GROUPS_TO_UNASSIGN'])) {
+ $authenticationSourceData['AUTH_SOURCE_DATA']['GROUPS_TO_UNASSIGN'] = [];
+ }
+ if (!in_array($groupUid, $authenticationSourceData['AUTH_SOURCE_DATA']['GROUPS_TO_UNASSIGN'])) {
+ $authenticationSourceData['AUTH_SOURCE_DATA']['GROUPS_TO_UNASSIGN'][] = $groupUid;
+ }
+ }
+ }
+ $authenticationSourceData['AUTH_SOURCE_DATA'] = json_encode($authenticationSourceData['AUTH_SOURCE_DATA']);
+ $rbacAuthenticationSource->saveData($authenticationSourceData);
+ }
+
+ $responseSaveGroups = [
+ 'status' => 'OK',
+ 'success' => true
+ ];
+ return $responseSaveGroups;
+
+ if ($ldapSource->checkDuplicateTitles()) {
+ $response->warning = G::LoadTranslation('ID_IT_WAS_IDENTIFIED_DUPLICATED_GROUPS_PLEASE_REMOVE_THESE_GROUPS');
+ }
+ }
+
+ public function saveDepartments($departmentsDN, $authSourceUid) {
+ $depsToCheck = ($departmentsDN != '') ? explode('|', $departmentsDN) : [];
+ $depsToCheck = array_map('urldecode', $depsToCheck);
+
+ $depsToUncheck = $this->getDepartmentsToUncheck($depsToCheck);
+
+ $filters = ['conditions' => ['AUTH_SOURCE_UID'=> $authSourceUid]];
+ $rbacAuthenticationSource = new RbacAuthenticationSource();
+ $authSourceReturn = $rbacAuthenticationSource->show($filters);
+ $authenticationSourceData = $authSourceReturn['data'][0];
+ $authenticationSourceData['AUTH_SOURCE_DATA'] = json_decode($authenticationSourceData['AUTH_SOURCE_DATA'], true);
+
+ $ldapSource = new LdapSource();
+ $ldapSource->authSourceUid = $authSourceUid;
+
+ $department = new Department();
+ foreach ($depsToCheck as $departmentDn) {
+ $departmentUid = $department->getDepUidIfExistsDN($departmentDn);
+ $departmentUid = $departmentUid['data'][0]['DEP_UID'] ?? '';
+
+ if ($departmentUid == '') {
+ if (strcasecmp($departmentDn, $authenticationSourceData['AUTH_SOURCE_BASE_DN']) == 0) {
+ $departmentTitle = 'ROOT (' . $authenticationSourceData['AUTH_SOURCE_BASE_DN'] . ')';
+ $parentUid = '';
+ } else {
+ $ous = $ldapSource->custom_ldap_explode_dn($departmentDn);
+ $departmentCurrent = array_shift($ous);
+ $parentDn = implode(',', $ous);
+ $ous = explode('=', $departmentCurrent);
+ $departmentTitle = trim($ous[1]);
+ $parentUid = $department->getDepUidIfExistsDN($parentDn);
+ $parentUid = $parentUid['data'][0]['DEP_UID'] ?? '';
+ if (str_ireplace($authenticationSourceData['AUTH_SOURCE_BASE_DN'], '', $parentDn) != '' && $parentUid == '') {
+ $response = new stdClass();
+ $response->status = 'ERROR';
+ $response->message = G::LoadTranslation(
+ 'ID_DEPARTMENT_CHECK_PARENT_DEPARTMENT',
+ [$parentDn, $departmentTitle]
+ );
+ echo json_encode($response);
+ exit(0);
+ }
+ }
+
+ $filters = array(
+ 'conditions' => ['DEP_STATUS' => 'ACTIVE', 'DEP_TITLE' => $departmentTitle]
+ );
+ $allDepartments = $department->show($filters);
+ $departmentUid = $allDepartments['data'][0]['DEP_UID'] ?? '';
+
+ if (empty($departmentUid)) {
+ $data = [
+ 'DEP_TITLE' => stripslashes($departmentTitle),
+ 'DEP_PARENT' => $parentUid,
+ 'DEP_LDAP_DN' => $departmentDn,
+ 'DEP_REF_CODE' => ''
+ ];
+ $saveDerpartment = $department->saveData($data);
+
+ if (empty($saveDerpartment)) {
+ $response = new stdClass();
+ $response->status = 'ERROR';
+ $response->message = G::LoadTranslation('ID_DEPARTMENT_ERROR_CREATE');
+ echo json_encode($response);
+ exit(0);
+ }
+ } else {
+
+ $data = $allDepartments['data'][0];
+ $data['DEP_LDAP_DN'] = $departmentDn;
+ $department->saveData($data);
+ }
+ }
+ }
+
+ if (count($depsToUncheck) > 0) {
+ $baseDnLength = strlen($authenticationSourceData['AUTH_SOURCE_BASE_DN']);
+ foreach ($depsToUncheck as $departmentDn) {
+ $departmentUid = $department->getDepUidIfExistsDN($departmentDn);
+ $departmentUid = $departmentUid['data'][0]['DEP_UID'] ?? '';
+ if ($departmentUid != '' &&
+ strcasecmp(
+ substr($departmentDn, strlen($departmentDn) - $baseDnLength),
+ $authenticationSourceData['AUTH_SOURCE_BASE_DN']
+ ) == 0
+ ) {
+ $filters = array(
+ 'conditions' => ['DEP_UID' => $departmentUid]
+ );
+ $allDepartments = $department->show($filters);
+ $data = $allDepartments['data'][0] ?? [];
+ $data['DEP_LDAP_DN'] = '';
+ $department->saveData($data);
+ if (!isset($authenticationSourceData['AUTH_SOURCE_DATA']['DEPARTMENTS_TO_UNASSIGN'])) {
+ $authenticationSourceData['AUTH_SOURCE_DATA']['DEPARTMENTS_TO_UNASSIGN'] = [];
+ }
+ if (!in_array($departmentUid, $authenticationSourceData['AUTH_SOURCE_DATA']['DEPARTMENTS_TO_UNASSIGN'])) {
+ $authenticationSourceData['AUTH_SOURCE_DATA']['DEPARTMENTS_TO_UNASSIGN'][] = $departmentUid;
+ }
+ }
+ }
+ $authenticationSourceData['AUTH_SOURCE_DATA'] = json_encode($authenticationSourceData['AUTH_SOURCE_DATA']);
+ $rbacAuthenticationSource->saveData($authenticationSourceData);
+ }
+
+ $responseSaveGroups = [
+ 'status' => 'OK',
+ 'success' => true
+ ];
+ return $responseSaveGroups;
+
+ if ($ldapAdvanced->checkDuplicateDepartmentTitles()) {
+ $response->warning = G::LoadTranslation('ID_IT_WAS_IDENTIFIED_DUPLICATED_DEPARTMENTS_PLEASE_REMOVE_THESE_DEPARTMENTS');
+ }
+ }
+
+ private function getDepartments($departments, $parent, $terminatedOu)
+ {
+ $parentDepartments = $departments;
+ $childDepartments = $departments;
+ $currentDepartments = array();
+
+ foreach ($parentDepartments as $key => $val) {
+ if (strtolower($val['dn']) != strtolower($parent)) {
+ if ((strtolower($val['parent']) == strtolower($parent)) && (strtolower($val['ou']) != strtolower($terminatedOu))) {
+ $node = array();
+ $node['DEP_UID'] = $val['ou'];
+ $node['DEP_TITLE'] = $val['ou'];
+ $node['DEP_USERS'] = $val['users'];
+ $node['DEP_DN'] = $val['dn'];
+ $node['HAS_CHILDREN'] = false;
+ $departments[$key]['hasChildren'] = false;
+
+ foreach ($childDepartments as $key2 => $val2) {
+ if (strtolower($val2['parent']) == strtolower($val['dn'])) {
+ $node['HAS_CHILDREN'] = true;
+ $departments[$key]['hasChildren'] = true;
+ break;
+ }
+ }
+
+ $node['DEP_LAST'] = false;
+ $currentDepartments[] = $node;
+ }
+ }
+ }
+
+ if (isset($currentDepartments[count($currentDepartments) - 1])) {
+ $currentDepartments[count($currentDepartments) - 1]['DEP_LAST'] = true;
+ }
+
+ return $currentDepartments;
+ }
+
+ private function getChildrenDepartments($departments, $parent, $listDepartmentsNumberUsers, $terminatedOu) {
+ $allDepartments = $this->getDepartments($departments, $parent, $terminatedOu);
+
+ $department = new Department();
+ foreach ($allDepartments as $departmentData) {
+ $departmentObject = new TreeNodeAuthSource();
+ $departmentObject->text = htmlentities($departmentData['DEP_TITLE'], ENT_QUOTES, 'UTF-8');
+
+ $departmentDNData = $department->getDepUidIfExistsDN($departmentData['DEP_DN']);
+ $departmentUid = $departmentDNData['data'][0]['DEP_UID'] ?? '';
+
+ if ($departmentUid != '') {
+ $departmentObject->text .= ' (' . ($listDepartmentsNumberUsers[$departmentUid] ?? '') . ')';
+ $departmentObject->checked = true;
+ } else {
+ $departmentObject->checked = false;
+ }
+
+ if ($departmentData['HAS_CHILDREN'] == 1) {
+ $departmentObject->children = $this->getChildrenDepartments($departments, $departmentData['DEP_DN'], $listDepartmentsNumberUsers, $terminatedOu);
+ }
+
+ $departmentObject->id = urlencode($departmentData['DEP_DN']);
+ $departmentsObjects[] = $departmentObject;
+ }
+ return $departmentsObjects;
+ }
+
+ private function getDepartmentsToUncheck($depsToCheck)
+ {
+ $departament = new Department();
+ $departmentsWithDN = $departament->getDepartmentsWithDN();
+ $departmentsWithDN = $departmentsWithDN['data'];
+
+ $depsToUncheck = [];
+ foreach ($departmentsWithDN as $departmentWithDN) {
+ $found = false;
+
+ foreach ($depsToCheck as $depToCheck) {
+ if ($departmentWithDN['DEP_LDAP_DN'] == $depToCheck) {
+ $found = true;
+ }
+ }
+
+ if (!$found) {
+ $depsToUncheck[] = $departmentWithDN['DEP_LDAP_DN'];
+ }
+ }
+
+ return $depsToUncheck;
+ }
+
+ private function getGroupsToUncheck($groupsToCheck)
+ {
+ $groupsWithDN = $this->getGroupsWithDN();
+ $groupsToUncheck = array();
+
+ foreach ($groupsWithDN as $groupWithDN) {
+ $found = false;
+
+ foreach ($groupsToCheck as $groupToCheck) {
+ if ($groupWithDN['GRP_LDAP_DN'] == $groupToCheck) {
+ $found = true;
+ }
+ }
+
+ if (!$found) {
+ $groupsToUncheck[] = $groupWithDN['GRP_LDAP_DN'];
+ }
+ }
+
+ return $groupsToUncheck;
+ }
+
+ private function getGroupsWithDN()
+ {
+ $groupwf = new Groupwf();
+ $filters = array('start' => 0, 'limit' => 1000);
+ $allGroups = $groupwf->show($filters);
+ $allGroups = $allGroups['data'];
+ $groupsWithDN = array();
+
+ foreach ($allGroups as $group) {
+ if ($group['GRP_LDAP_DN'] != '') {
+ $groupsWithDN[] = $group;
+ }
+ }
+
+ return $groupsWithDN;
+ }
+
private static function encrypt($plaintext, $key) {
$cipher = 'AES-256-CBC';
$ivlen = openssl_cipher_iv_length($cipher);
@@ -299,7 +705,7 @@ class AuthSources
}
private static function decrypt($ciphertext_b64, $key) {
- $cipher = "AES-256-CBC";
+ $cipher = 'AES-256-CBC';
$ivlen = openssl_cipher_iv_length($cipher);
$ciphertext = base64_decode($ciphertext_b64);
@@ -310,3 +716,14 @@ class AuthSources
return $plaintext;
}
}
+
+
+class TreeNodeAuthSource extends stdclass
+{
+ public $text = '';
+ public $cls = '';
+ public $leaf = false;
+ public $checked = false;
+ public $children = array();
+ public $id = '';
+}
\ No newline at end of file
diff --git a/workflow/engine/classes/LdapSource.php b/workflow/engine/classes/LdapSource.php
index 8eb9c5226..f1f15ebd5 100644
--- a/workflow/engine/classes/LdapSource.php
+++ b/workflow/engine/classes/LdapSource.php
@@ -1,6 +1,6 @@
"|(objectclass=inetorgperson)(objectclass=organizationalperson)(objectclass=person)(objectclass=user)",
@@ -76,6 +78,225 @@ class LdapSource
return ['connection' =>$ldapcnn, 'startTLS' => $resultLDAPStartTLS];
}
+ public function searchGroups() {
+ try {
+ $arrayGroup = [];
+
+ $rbac = RBAC::getSingleton();
+
+ if (is_null($rbac->authSourcesObj)) {
+ $rbac->authSourcesObj = new AuthenticationSource();
+ }
+
+ $arrayAuthenticationSourceData = $rbac->authSourcesObj->load($this->authSourceUid);
+
+ if (is_null($this->ldapcnn)) {
+ $ldapcnn = $this->ldapConnection($arrayAuthenticationSourceData);
+ $this->ldapcnn = $ldapcnn['connection'];
+ }
+
+ $ldapcnn = $this->ldapcnn;
+ // Get Groups
+ $limit = $this->getPageSizeLimitByData($arrayAuthenticationSourceData);
+ $flagError = false;
+ $filter = '(' . $this->arrayObjectClassFilter['group'] . ')';
+ $this->log($ldapcnn, 'search groups with Filter: ' . $filter);
+
+ $cookie = '';
+ do {
+ $searchResult = @ldap_search(
+ $ldapcnn,
+ $arrayAuthenticationSourceData['AUTH_SOURCE_BASE_DN'],
+ $filter,
+ ['dn', 'cn'],
+ 0,
+ -1,
+ -1,
+ LDAP_DEREF_NEVER,
+ [['oid' => LDAP_CONTROL_PAGEDRESULTS, 'value' => ['size' => $limit, 'cookie' => $cookie]]]
+ );
+ ldap_parse_result($ldapcnn, $searchResult, $errcode, $matcheddn, $errmsg, $referrals, $controls);
+ $this->stdLog($ldapcnn, "ldap_search", ["filter" => $filter, "attributes" => ['dn', 'cn']]);
+
+ $context = [
+ "baseDN" => $arrayAuthenticationSourceData['AUTH_SOURCE_BASE_DN'],
+ "filter" => $filter,
+ "attributes" => ['dn', 'cn']
+ ];
+ $this->stdLog($ldapcnn, "ldap_search", $context);
+
+ if ($error = ldap_errno($ldapcnn)) {
+ $this->log($ldapcnn, 'Error in Search');
+
+ $flagError = true;
+ } else {
+ if ($searchResult) {
+ //Get groups from the ldap entries
+ $countEntries = ldap_count_entries($ldapcnn, $searchResult);
+ $this->stdLog($ldapcnn, "ldap_count_entries");
+
+ if ($countEntries > 0) {
+ $entry = ldap_first_entry($ldapcnn, $searchResult);
+ $this->stdLog($ldapcnn, "ldap_first_entry");
+
+ do {
+ $arrayEntryData = $this->ldapGetAttributes($ldapcnn, $entry);
+
+ if (isset($arrayEntryData['cn']) && !is_array($arrayEntryData['cn'])) {
+ $arrayGroup[] = [
+ 'dn' => $arrayEntryData['dn'],
+ 'cn' => trim($arrayEntryData['cn']),
+ 'users' => 0,
+ ];
+ }
+ } while ($entry = ldap_next_entry($ldapcnn, $entry));
+ }
+ }
+ }
+
+ if (!$flagError) {
+ if (isset($controls[LDAP_CONTROL_PAGEDRESULTS]['value']['cookie'])) {
+ // You need to pass the cookie from the last call to the next one
+ $cookie = $controls[LDAP_CONTROL_PAGEDRESULTS]['value']['cookie'];
+ } else {
+ $cookie = '';
+ }
+ }
+ // Empty cookie means last page
+ } while (!empty($cookie) && !$flagError);
+
+ $str = '';
+
+ foreach ($arrayGroup as $group) {
+ $str .= ' ' . $group['cn'];
+ }
+
+ $this->log($ldapcnn, 'found ' . count($arrayGroup) . ' groups: ' . $str);
+
+ return $arrayGroup;
+ } catch (Exception $e) {
+ throw $e;
+ }
+ }
+
+ public function searchDepartments() {
+ try {
+ $arrayDepartment = [];
+
+ $filters = ['conditions' => ['AUTH_SOURCE_UID'=> $this->authSourceUid]];
+ $rbacAuthenticationSource = new RbacAuthenticationSource();
+ $authSourceReturn = $rbacAuthenticationSource->show($filters);
+ $authenticationSourceData = $authSourceReturn['data'][0];
+
+ if (is_null($this->ldapcnn)) {
+ $ldapcnn = $this->ldapConnection($authenticationSourceData);
+ $this->ldapcnn = $ldapcnn['connection'];
+ }
+ $this->terminatedOu = $attributes['AUTH_SOURCE_RETIRED_OU'] ?? '';
+ $ldapcnn = $this->ldapcnn;
+
+ //Get Departments
+ $limit = $this->getPageSizeLimitByData($authenticationSourceData);
+ $flagError = false;
+ $filter = '(' . $this->arrayObjectClassFilter['department'] . ')';
+ $this->log($ldapcnn, 'search Departments with Filter: ' . $filter);
+ $unitsBase = $this->custom_ldap_explode_dn($authenticationSourceData['AUTH_SOURCE_BASE_DN']);
+
+ $cookie = '';
+ do {
+ $searchResult = @ldap_search(
+ $ldapcnn,
+ $authenticationSourceData['AUTH_SOURCE_BASE_DN'],
+ $filter,
+ ['dn', 'ou'],
+ 0,
+ -1,
+ -1,
+ LDAP_DEREF_NEVER,
+ [['oid' => LDAP_CONTROL_PAGEDRESULTS, 'value' => ['size' => $limit, 'cookie' => $cookie]]]
+ );
+ ldap_parse_result($ldapcnn, $searchResult, $errcode, $matcheddn, $errmsg, $referrals, $controls);
+ $this->stdLog($ldapcnn, "ldap_search", ["filter" => $filter, "attributes" => ['dn', 'ou']]);
+
+ $context = [
+ "baseDN" => $authenticationSourceData['AUTH_SOURCE_BASE_DN'],
+ "filter" => $filter,
+ "attributes" => ['dn', 'ou']
+ ];
+ $this->stdLog($ldapcnn, "ldap_search", $context);
+
+ if ($error = ldap_errno($ldapcnn)) {
+ $this->log($ldapcnn, 'Error in Search');
+
+ $flagError = true;
+ } else {
+ if ($searchResult) {
+ //The first node is root
+ if (empty($arrayDepartment)) {
+ $arrayDepartment[] = [
+ 'dn' => $authenticationSourceData['AUTH_SOURCE_BASE_DN'],
+ 'parent' => '',
+ 'ou' => 'ROOT',
+ 'users' => 0
+ ];
+ }
+
+ //Get departments from the ldap entries
+ if (ldap_count_entries($ldapcnn, $searchResult) > 0) {
+ $this->stdLog($ldapcnn, "ldap_count_entries");
+ $entry = ldap_first_entry($ldapcnn, $searchResult);
+ $this->stdLog($ldapcnn, "ldap_first_entry", $context);
+
+ do {
+ $arrayEntryData = $this->ldapGetAttributes($ldapcnn, $entry);
+ $unitsEqual = $this->custom_ldap_explode_dn($arrayEntryData['dn']);
+
+ if (count($unitsEqual) == 1 && $unitsEqual[0] == '') {
+ continue;
+ }
+
+ if (count($unitsEqual) > count($unitsBase)) {
+ unset($unitsEqual[0]);
+ }
+
+ if (isset($arrayEntryData['ou']) && !is_array($arrayEntryData['ou'])) {
+ $arrayDepartment[] = [
+ 'dn' => $arrayEntryData['dn'],
+ 'parent' => (isset($unitsEqual[1])) ? implode(',', $unitsEqual) : '',
+ 'ou' => trim($arrayEntryData['ou']),
+ 'users' => 0
+ ];
+ }
+ } while ($entry = ldap_next_entry($ldapcnn, $entry));
+ }
+ }
+ }
+
+ if (!$flagError) {
+ if (isset($controls[LDAP_CONTROL_PAGEDRESULTS]['value']['cookie'])) {
+ // You need to pass the cookie from the last call to the next one
+ $cookie = $controls[LDAP_CONTROL_PAGEDRESULTS]['value']['cookie'];
+ } else {
+ $cookie = '';
+ }
+ }
+ // Empty cookie means last page
+ } while (!empty($cookie) && !$flagError);
+
+ $str = '';
+
+ foreach ($arrayDepartment as $dep) {
+ $str .= ' ' . $dep['ou'];
+ }
+
+ $this->log($ldapcnn, 'found ' . count($arrayDepartment) . ' departments: ' . $str);
+
+ return $arrayDepartment;
+ } catch (Exception $e) {
+ throw $e;
+ }
+ }
+
public function getPageSizeLimit($ldapcnn, $baseDn = '')
{
try {
@@ -231,13 +452,14 @@ class LdapSource
$paged = !is_null($start) && !is_null($limit);
- $rbac = RBAC::getSingleton();
+ $filters = [
+ 'conditions' => ['AUTH_SOURCE_UID' => $this->authSourceUid],
+ ];
+ $rbacAuthenticationSource = new RbacAuthenticationSource();
+ $authSourceReturn = $rbacAuthenticationSource->show($filters);
+ $arrayAuthenticationSourceData = $authSourceReturn['data'][0];
+ $arrayAuthenticationSourceData['AUTH_SOURCE_DATA'] = json_decode($arrayAuthenticationSourceData['AUTH_SOURCE_DATA'], true);
- if (is_null($rbac->authSourcesObj)) {
- $rbac->authSourcesObj = new AuthenticationSource();
- }
-
- $arrayAuthenticationSourceData = $rbac->authSourcesObj->load($this->authSourceUid);
$attributeUserSet = [];
$attributeSetAdd = [];
@@ -400,6 +622,15 @@ class LdapSource
}
}
+ private function getPageSizeLimitByData(array $arrayAuthSourceData)
+ {
+ if (isset($arrayAuthSourceData['AUTH_SOURCE_DATA']['LDAP_PAGE_SIZE_LIMIT'])) {
+ return $arrayAuthSourceData['AUTH_SOURCE_DATA']['LDAP_PAGE_SIZE_LIMIT'];
+ } else {
+ return $this->getPageSizeLimit(false);
+ }
+ }
+
private function ldapGetAttributes($ldapcnn, $entry)
{
try {
@@ -438,4 +669,23 @@ class LdapSource
throw $e;
}
}
+
+ public function custom_ldap_explode_dn($dn)
+ {
+ $dn = trim($dn, ',');
+ $result = ldap_explode_dn($dn, 0);
+ $this->stdLog(null, "ldap_explode_dn", ["dn" => $dn]);
+
+ if (is_array($result)) {
+ unset($result['count']);
+
+ foreach ($result as $key => $value) {
+ $result[$key] = addcslashes(preg_replace_callback("/\\\([0-9A-Fa-f]{2})/", function ($m) {
+ return chr(hexdec($m[1]));
+ }, $value), '<>,"');
+ }
+ }
+
+ return $result;
+ }
}
\ No newline at end of file
diff --git a/workflow/engine/methods/authSources/authSourcesProxy.php b/workflow/engine/methods/authSources/authSourcesProxy.php
index 3bec5b3b9..14797c3b0 100644
--- a/workflow/engine/methods/authSources/authSourcesProxy.php
+++ b/workflow/engine/methods/authSources/authSourcesProxy.php
@@ -1,7 +1,5 @@
$_POST['start'] ?? 0,
- 'limit'=> $_POST['limit'] ?? ($_POST["pageSize"] ?? 10),
+ 'limit'=> $_POST['limit'] ?? ($_POST['pageSize'] ?? 10),
'text'=> $_POST['sKeyword'] ?? ''
];
@@ -136,16 +134,34 @@ try {
$responseProxy = $authSources->importUsers($authSourceUid, $usersImport);
break;
case 'authSourcesImportLoadDepartment':
- $responseProxy['success'] = true;
+ if (!isset($_REQUEST['authUid'])) {
+ throw new Exception('No auth source UID was sent');
+ }
+
+ $authSourceUid = $_REQUEST['authUid'];
+ $authSources = new AuthSources();
+ $responseProxy = $authSources->searchDepartaments($authSourceUid);
break;
case 'authSourcesImportSaveDepartment':
- $responseProxy['success'] = true;
+ $authSources = new AuthSources();
+ $departmentsDN = $_REQUEST['departmentsDN'];
+ $authSourceUid = $_REQUEST['authUid'];
+ $responseProxy = $authSources->saveDepartments($departmentsDN, $authSourceUid);
break;
case 'authSourcesImportLoadGroup':
- $responseProxy['success'] = true;
+ if (!isset($_REQUEST['authUid'])) {
+ throw new Exception('No auth source UID was sent');
+ }
+
+ $authSourceUid = $_REQUEST['authUid'];
+ $authSources = new AuthSources();
+ $responseProxy = $authSources->searchGroups($authSourceUid);
break;
case 'authSourcesImportSaveGroup':
- $responseProxy['success'] = true;
+ $authSources = new AuthSources();
+ $groupsDN = $_REQUEST['groupsDN'];
+ $authSourceUid = $_REQUEST['authUid'];
+ $responseProxy = $authSources->saveGroups($groupsDN, $authSourceUid);
break;
default:
throw new Exception('The action "' . $action . '" is not allowed');
@@ -156,7 +172,7 @@ try {
echo json_encode($responseProxy, JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE);
} catch (Exception $exception) {
$responseProxy['success'] = false;
- $responseProxy['message'] = $exception->getMessage();
+ $responseProxy['message'] = htmlentities($exception->getMessage(), ENT_QUOTES, 'UTF-8');
header('Content-Type: application/json');
echo json_encode($responseProxy, JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE);
diff --git a/workflow/engine/methods/authenticationSources/src/components/formAuthenticationSources.vue b/workflow/engine/methods/authenticationSources/src/components/formAuthenticationSources.vue
index 911231aa2..693eadc9b 100644
--- a/workflow/engine/methods/authenticationSources/src/components/formAuthenticationSources.vue
+++ b/workflow/engine/methods/authenticationSources/src/components/formAuthenticationSources.vue
@@ -306,7 +306,7 @@
gridText: "[]",
signInPolicyForLDAP: "1",
inactiveUsers: "",
- role: "PROCESSMAKER_OPERATOR",
+ role: "LURANA_OPERATOR",
groupIdentifier: "member",
userClassIdentifier: "",
groupClassIdentifier: "(objectclass=posixgroup)(objectclass=group)(objectclass=groupofuniquenames)",
@@ -356,7 +356,7 @@
gridText: "[]",
signInPolicyForLDAP: "1",
inactiveUsers: "",
- role: "PROCESSMAKER_OPERATOR",
+ role: "LURANA_OPERATOR",
groupIdentifier: "member",
userClassIdentifier: "",
groupClassIdentifier: "(objectclass=posixgroup)(objectclass=group)(objectclass=groupofuniquenames)",
@@ -381,7 +381,7 @@
let formDataForName = new FormData();
formDataForName.append("AUTH_SOURCE_NAME", form.name);
//axios.post(this.$root.baseUrl() + "authSources/ldapAdvancedProxy.php?functionAccion=ldapVerifyName", formDataForName)
- axios.post(this.$root.baseUrl() + "authSources/authSourcesProxy.php?action=authSourcesVerifyName", formDataForName)
+ axios.post(this.$root.baseUrl() + "authSources/authSourcesProxy?action=authSourcesVerifyName", formDataForName)
.then(response => {
//the name is valid
if (response.data.row === false || (this.form.uid !== "" && typeof this.form.uid === "string")) {
diff --git a/workflow/engine/methods/authenticationSources/src/components/formUploadSource.vue b/workflow/engine/methods/authenticationSources/src/components/formUploadSource.vue
index 85f559d56..abc7ae885 100644
--- a/workflow/engine/methods/authenticationSources/src/components/formUploadSource.vue
+++ b/workflow/engine/methods/authenticationSources/src/components/formUploadSource.vue
@@ -142,7 +142,7 @@
let formData = new FormData();
formData.append("AUTH_SOURCE_NAME", this.fileContent.AUTH_SOURCE_NAME);
//axios.post(this.$root.baseUrl() + "authSources/ldapAdvancedProxy.php?functionAccion=ldapVerifyName", formData)
- axios.post(this.$root.baseUrl() + "authSources/authSourcesProxy.php?action=authSourcesVerifyName", formData)
+ axios.post(this.$root.baseUrl() + "authSources/authSourcesProxy?action=authSourcesVerifyName", formData)
.then(response => {
this.newName = response.data.row === false;
this.validationResult = response.data;
diff --git a/workflow/engine/src/ProcessMaker/Model/Department.php b/workflow/engine/src/ProcessMaker/Model/Department.php
index 5ba819b13..931023f9e 100644
--- a/workflow/engine/src/ProcessMaker/Model/Department.php
+++ b/workflow/engine/src/ProcessMaker/Model/Department.php
@@ -4,6 +4,8 @@ namespace ProcessMaker\Model;
use App\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
+use \Exception;
+use \G;
/**
* Class Department
@@ -15,6 +17,100 @@ class Department extends Model
// Set our table name
protected $table = 'DEPARTMENT';
- // We do not store timestamps
+ protected $fillable = [
+ 'DEP_UID',
+ 'DEP_TITLE',
+ 'DEP_PARENT',
+ 'DEP_MANAGER',
+ 'DEP_LOCATION',
+ 'DEP_STATUS',
+ 'DEP_REF_CODE',
+ 'DEP_LDAP_DN'
+ ];
+
public $timestamps = false;
+
+ public function show($filters = array())
+ {
+ try {
+ $query = static::query();
+
+ if (is_array($filters['fields'])) {
+ $query->select($filters['fields']);
+ }
+
+ if (is_array($filters['conditions'])) {
+ if (!empty($filters['conditions']['text'])) {
+ $query->where('DEP_TITLE', 'like', '%' . $filters['conditions']['text'] . '%');
+ unset($filters['conditions']['text']);
+ }
+ $query->where($filters['conditions']);
+ }
+
+ $total = $query->count();
+
+ if (is_array($filters['start']) || is_array($filters['limit'])) {
+ $start = $filters['start'] ?? 0;
+ $limit = $filters['limit'] ?? 25;
+ $query->offset($start)->limit($limit);
+ }
+
+ if (is_array($filters['orderBy'])) {
+ $query->orderBy($filters['orderBy'][0], $filters['orderBy'][1] ?? 'asc');
+ }
+
+ $data = $query->get()->toArray();
+ $result = [
+ 'total' => $total,
+ 'data' => $data
+ ];
+ return $result;
+ } catch (Exception $exception) {
+ return $exception->getMessage();
+ }
+ }
+
+ public static function saveData($departmentData)
+ {
+ try {
+ if (empty($departmentData['DEP_UID'])) {
+ $departmentData['DEP_UID'] = G::generateUniqueID();
+ $responseSave = self::create($departmentData);
+ } else {
+ $responseSave = self::where('DEP_UID', $departmentData['DEP_UID'])
+ ->update($departmentData);
+ }
+ return $responseSave;
+ } catch (Exception $exception) {
+ return $exception->getMessage();
+ }
+ }
+
+ public static function getDepUidIfExistsDN($currentDN)
+ {
+ $query = Department::select(['DEP_UID'])
+ ->where('DEP_STATUS', '=', 'ACTIVE')
+ ->where('DEP_LDAP_DN', $currentDN);
+
+ $data =$query->get()->toArray();
+ $result = [
+ 'total' => count($data),
+ 'data' => $data
+ ];
+ return $result;
+ }
+
+ public static function getDepartmentsWithDN()
+ {
+ $query = Department::select(['DEP_LDAP_DN'])
+ ->where('DEP_LDAP_DN', '!=', '')
+ ->whereNotNull('DEP_LDAP_DN');
+
+ $data =$query->get()->toArray();
+ $result = [
+ 'total' => count($data),
+ 'data' => $data
+ ];
+ return $result;
+ }
}
diff --git a/workflow/engine/src/ProcessMaker/Model/GroupUser.php b/workflow/engine/src/ProcessMaker/Model/GroupUser.php
index 8dec9855f..83c2d668b 100644
--- a/workflow/engine/src/ProcessMaker/Model/GroupUser.php
+++ b/workflow/engine/src/ProcessMaker/Model/GroupUser.php
@@ -8,6 +8,7 @@ use G;
use Illuminate\Database\Eloquent\Model;
use ProcessMaker\Model\Groupwf;
use ProcessMaker\Model\RbacUsers;
+use Illuminate\Support\Facades\DB;
class GroupUser extends Model
{
@@ -117,4 +118,19 @@ class GroupUser extends Model
throw new Exception("Error: {$e->getMessage()}.");
}
}
+
+ public static function getNumberOfUsersByGroups()
+ {
+ $query = GroupUser::select(['GROUP_USER.GRP_UID', DB::raw('COUNT(GROUP_USER.GRP_UID) AS NUM_REC')])
+ ->leftJoin('USERS','USERS.USR_UID','=','GROUP_USER.USR_UID')
+ ->where('USERS.USR_STATUS', '!=', 'CLOSED')
+ ->groupBy('GROUP_USER.GRP_UID');
+
+ $data =$query->get()->toArray();
+ $result = [
+ 'total' => count($data),
+ 'data' => $data
+ ];
+ return $result;
+ }
}
diff --git a/workflow/engine/src/ProcessMaker/Model/Groupwf.php b/workflow/engine/src/ProcessMaker/Model/Groupwf.php
index 76e0050a3..a2df2b4df 100644
--- a/workflow/engine/src/ProcessMaker/Model/Groupwf.php
+++ b/workflow/engine/src/ProcessMaker/Model/Groupwf.php
@@ -4,6 +4,8 @@ namespace ProcessMaker\Model;
use App\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
+use \Exception;
+use \G;
class Groupwf extends Model
{
@@ -11,9 +13,74 @@ class Groupwf extends Model
protected $table = 'GROUPWF';
protected $primaryKey = 'GRP_ID';
+ protected $fillable = [
+ 'GRP_UID',
+ 'GRP_ID',
+ 'GRP_TITLE',
+ 'GRP_STATUS',
+ 'GRP_STATUS_ID',
+ 'GRP_LDAP_DN',
+ 'GRP_UX'
+ ];
// We do not have create/update timestamps for this table
public $timestamps = false;
+ public function show($filters = array())
+ {
+ try {
+ $query = static::query();
+
+ if (is_array($filters['fields'])) {
+ $query->select($filters['fields']);
+ }
+
+ if (is_array($filters['conditions'])) {
+ if (!empty($filters['conditions']['text'])) {
+ $query->where('GRP_TITLE', 'like', '%' . $filters['conditions']['text'] . '%');
+ unset($filters['conditions']['text']);
+ }
+ $query->where($filters['conditions']);
+ }
+
+ $total = $query->count();
+
+ if (is_array($filters['start']) || is_array($filters['limit'])) {
+ $start = $filters['start'] ?? 0;
+ $limit = $filters['limit'] ?? 25;
+ $query->offset($start)->limit($limit);
+ }
+
+ if (is_array($filters['orderBy'])) {
+ $query->orderBy($filters['orderBy'][0], $filters['orderBy'][1] ?? 'asc');
+ }
+
+ $data =$query->get()->toArray();
+ $result = [
+ 'total' => $total,
+ 'data' => $data
+ ];
+ return $result;
+ } catch (Exception $exception) {
+ return $exception->getMessage();
+ }
+ }
+
+ public static function saveData($groupwfData)
+ {
+ try {
+ if (empty($groupwfData['GRP_UID'])) {
+ $groupwfData['GRP_UID'] = G::generateUniqueID();
+ $responseSave = self::create($groupwfData);
+ } else {
+ $responseSave = self::where('GRP_UID', $groupwfData['GRP_UID'])
+ ->update($groupwfData);
+ }
+ return $responseSave;
+ } catch (Exception $exception) {
+ return $exception->getMessage();
+ }
+ }
+
/**
* Scope a query to active groups
*
@@ -72,4 +139,17 @@ class Groupwf extends Model
$query = Groupwf::select('GRP_ID')->where('GRP_UID', $grpUid);
return $query->first()->toArray();
}
+
+ public static function getGroupWithDN($dn)
+ {
+ try {
+ $query = Groupwf::select('GRP_UID')
+ ->where('GRP_STATUS', 'ACTIVE')
+ ->where('GRP_LDAP_DN', $dn);
+ $response = $query->get()->toArray();
+ return $response;
+ } catch (\Exception $e) {
+ return false;
+ }
+ }
}
diff --git a/workflow/engine/src/ProcessMaker/Model/User.php b/workflow/engine/src/ProcessMaker/Model/User.php
index a83b6a6ef..122038d6e 100644
--- a/workflow/engine/src/ProcessMaker/Model/User.php
+++ b/workflow/engine/src/ProcessMaker/Model/User.php
@@ -5,6 +5,7 @@ namespace ProcessMaker\Model;
use App\Factories\HasFactory;
use Configurations;
use Illuminate\Database\Eloquent\Model;
+use Illuminate\Support\Facades\DB;
use Exception;
use RBAC;
@@ -300,4 +301,20 @@ class User extends Model
return $result;
}
+
+ public static function getNumberOfUsersByDepartments()
+ {
+ $query = User::select(['DEP_UID', DB::raw('COUNT(DEP_UID) AS NUM_REC')])
+ ->where('USR_STATUS', '!=', 'CLOSED')
+ ->where('DEP_UID', '!=', '')
+ ->whereNotNull('DEP_UID')
+ ->groupBy('DEP_UID');
+
+ $data =$query->get()->toArray();
+ $result = [
+ 'total' => count($data),
+ 'data' => $data
+ ];
+ return $result;
+ }
}
diff --git a/workflow/engine/templates/authSources/authSourcesSynchronize.js b/workflow/engine/templates/authSources/authSourcesSynchronize.js
index 1001b5779..a226e82a6 100644
--- a/workflow/engine/templates/authSources/authSourcesSynchronize.js
+++ b/workflow/engine/templates/authSources/authSourcesSynchronize.js
@@ -62,7 +62,7 @@ Ext.onReady(function() {
nodeType: 'async'
},
maskDisabled: false,
- dataUrl: 'authSourcesSynchronizeAjax?m=loadDepartments&authUid=' + AUTHENTICATION_SOURCE.AUTH_SOURCE_UID,
+ dataUrl: 'authSourcesProxy?action=authSourcesImportLoadDepartment&authUid=' + AUTHENTICATION_SOURCE.AUTH_SOURCE_UID,
requestMethod: 'POST',
buttons: [{
text: 'Save Changes',
@@ -75,8 +75,8 @@ Ext.onReady(function() {
departments.push(node.id);
});
Ext.Ajax.request({
- url: 'authSourcesSynchronizeAjax',
- params: {m: 'saveDepartments', authUid: AUTHENTICATION_SOURCE.AUTH_SOURCE_UID, departmentsDN: departments.join('|')},
+ url: 'authSourcesProxy',
+ params: {action: 'authSourcesImportSaveDepartment', authUid: AUTHENTICATION_SOURCE.AUTH_SOURCE_UID, departmentsDN: departments.join('|')},
success: function(r) {
var response = Ext.util.JSON.decode(r.responseText);
if (response.status == 'OK') {
@@ -123,7 +123,7 @@ Ext.onReady(function() {
root: {
nodeType: 'async'
},
- dataUrl: 'authSourcesSynchronizeAjax?m=loadGroups&authUid=' + AUTHENTICATION_SOURCE.AUTH_SOURCE_UID,
+ dataUrl: "authSourcesProxy?action=authSourcesImportLoadGroup&authUid=" + AUTHENTICATION_SOURCE.AUTH_SOURCE_UID,
requestMethod: 'POST',
buttons: [{
text: 'Save Changes',
@@ -137,8 +137,8 @@ Ext.onReady(function() {
Groups.push(node.id);
});
Ext.Ajax.request({
- url: 'authSourcesSynchronizeAjax',
- params: {m: 'saveGroups', authUid: AUTHENTICATION_SOURCE.AUTH_SOURCE_UID, groupsDN: Groups.join('|')},
+ url: 'authSourcesProxy',
+ params: {action: 'authSourcesImportSaveGroup', authUid: AUTHENTICATION_SOURCE.AUTH_SOURCE_UID, groupsDN: Groups.join('|')},
success: function(r) {
var response = Ext.util.JSON.decode(r.responseText);
if (response.status == 'OK') {
diff --git a/workflow/public_html/lib/authenticationSources/index.html b/workflow/public_html/lib/authenticationSources/index.html
index 943522093..5f14c8945 100644
--- a/workflow/public_html/lib/authenticationSources/index.html
+++ b/workflow/public_html/lib/authenticationSources/index.html
@@ -1 +1 @@
-
authenticationSources We're sorry but authenticationSources doesn't work properly without JavaScript enabled. Please enable it to continue.
\ No newline at end of file
+authenticationSources We're sorry but authenticationSources doesn't work properly without JavaScript enabled. Please enable it to continue.
\ No newline at end of file
diff --git a/workflow/public_html/lib/authenticationSources/js/app.09d204f4.js b/workflow/public_html/lib/authenticationSources/js/app.09d204f4.js
new file mode 100644
index 000000000..8b2ef07c1
--- /dev/null
+++ b/workflow/public_html/lib/authenticationSources/js/app.09d204f4.js
@@ -0,0 +1,2 @@
+(function(t){function e(e){for(var r,n,s=e[0],l=e[1],u=e[2],d=0,_=[];d{if(this.fileContent=JSON.parse(t.target.result),!("AUTH_SOURCE_NAME"in this.fileContent))return this.$bvModal.show("messageForInvalidFileFormat"),this.reset(),void(this.isDisabled=!0);if(!0===this.skipNameValidation)return void(this.isDisabled=!1);let e=new FormData;e.append("AUTH_SOURCE_NAME",this.fileContent.AUTH_SOURCE_NAME),U.a.post(this.$root.baseUrl()+"authSources/authSourcesProxy?action=authSourcesVerifyName",e).then(t=>{this.newName=!1===t.data.row,this.validationResult=t.data,this.isDisabled=!1}).catch(t=>{this.isDisabled=!0}).finally(()=>{})},r.onerror=()=>{}}}},v=A,C=Object(b["a"])(v,S,E,!1,null,"13b8a89c",null),O=C.exports,D={components:{titleSection:m,formUploadSource:O},data(){return{baseUrl:this.$root.baseUrl()+"authSources/authSourcesProxy?action=authSourcesList",columns:["AUTH_SOURCE_NAME","AUTH_SOURCE_PROVIDER","AUTH_SOURCE_SERVER_NAME","AUTH_SOURCE_PORT","AUTH_SOURCE_ENABLED_TLS_LABEL","CURRENT_USERS","icons"],options:{headings:{AUTH_SOURCE_NAME:this.$root.translation("ID_NAME"),AUTH_SOURCE_PROVIDER:this.$root.translation("ID_PROVIDER"),AUTH_SOURCE_SERVER_NAME:this.$root.translation("ID_SERVER_NAME"),AUTH_SOURCE_PORT:this.$root.translation("ID_PORT"),AUTH_SOURCE_ENABLED_TLS_LABEL:this.$root.translation("ID_ENABLED_TLS"),CURRENT_USERS:this.$root.translation("ID_ACTIVE_USERS"),icons:""},sortable:["AUTH_SOURCE_NAME","AUTH_SOURCE_PROVIDER","AUTH_SOURCE_SERVER_NAME","AUTH_SOURCE_PORT","AUTH_SOURCE_ENABLED_TLS_LABEL","CURRENT_USERS"],filterable:["AUTH_SOURCE_NAME","AUTH_SOURCE_PROVIDER","AUTH_SOURCE_SERVER_NAME","AUTH_SOURCE_PORT","AUTH_SOURCE_ENABLED_TLS_LABEL","CURRENT_USERS"],texts:{filter:"",filterPlaceholder:this.$root.translation("ID_EMPTY_SEARCH"),count:this.$root.translation("ID_SHOWING_FROM_RECORDS_COUNT"),noResults:this.$root.translation("ID_NO_MATCHING_RECORDS"),loading:this.$root.translation("ID_LOADING_GRID")},perPage:"pageSize"in window?window.pageSize:5,perPageValues:[],sortIcon:{is:"glyphicon-sort",base:"glyphicon",up:"glyphicon-chevron-up",down:"glyphicon-chevron-down"},requestKeys:{query:"textFilter"},requestFunction(t){return t.start=(t.page-1)*t.limit,U.a.get(this.url,{params:t},{}).catch((function(t){this.dispatch("error",t)}))},responseAdapter(t){return"sources"in t.data||(t.data.sources=[]),"total_sources"in t.data||(t.data.total_sources=0),{data:t.data.sources,count:t.data.total_sources}}},tableData:[]}},methods:{refresh(){this.$refs.vServerTable1.refresh()},deleteRow(t){this.$root.$emit("bv::hide::tooltip"),this.$bvModal.msgBoxConfirm(this.$root.translation("ID_ARE_YOU_SURE_TO_DELETE_CONNECTION_PLEASE_CONFIRM",[t.AUTH_SOURCE_NAME]),{title:" ",hideHeaderClose:!1,okTitle:this.$root.translation("ID_YES"),okVariant:"success",cancelTitle:this.$root.translation("ID_NO"),cancelVariant:"danger"}).then(e=>{if(!1===e)return;let o=new FormData;o.append("action","authSourcesDelete"),o.append("auth_uid",t.AUTH_SOURCE_UID),U.a.post(this.$root.baseUrl()+"authSources/authSourcesProxy",o).then(t=>{this.refresh()}).catch(t=>{}).finally(()=>{})}).catch(t=>{})},downloadRow(t){this.$root.$emit("bv::hide::tooltip");let e=JSON.parse(JSON.stringify(t));if(e.AUTH_SOURCE_UID="",delete e.AUTH_SOURCE_PASSWORD,delete e.CURRENT_USERS,delete e["UPPER(RBAC_AUTHENTICATION_SOURCE.AUTH_SOURCE_NAME)"],delete e.AUTH_SOURCE_VERSION,delete e.AUTH_SOURCE_ATTRIBUTES,delete e.AUTH_SOURCE_OBJECT_CLASSES,delete e.AUTH_SOURCE_DATA,delete e.AUTH_SOURCE_ENABLED_TLS_LABEL,delete e.LDAP_PAGE_SIZE_LIMIT,"AUTH_SOURCE_GRID_ATTRIBUTE"in e){let t=[];for(let o in e.AUTH_SOURCE_GRID_ATTRIBUTE){let r=e.AUTH_SOURCE_GRID_ATTRIBUTE[o]||{};t.push({attributeLdap:r.attributeLdap||"",attributeUser:r.attributeUser||"",attributeRole:r.attributeRole||""})}e.AUTH_SOURCE_GRID_ATTRIBUTE=t}let o=e.AUTH_SOURCE_NAME+".json";if(window.navigator.msSaveBlob)return void window.navigator.msSaveBlob(new Blob([JSON.stringify(e)],{type:"application/octet-stream"}),o);let r=document.createElement("a");document.body.appendChild(r),r.href=window.URL.createObjectURL(new Blob([JSON.stringify(e)],{type:"application/octet-stream"})),r.download=o,r.click(),document.body.removeChild(r)},importUsers(t){location.href=this.$root.baseUrl()+"authSources/authSources_SearchUsers?sUID="+t.AUTH_SOURCE_UID},syncGroups(t){location.href=this.$root.baseUrl()+"authSources/authSourcesSynchronize?authUid="+t.AUTH_SOURCE_UID+"&tab=synchronizeGroups"},syncDepartments(t){location.href=this.$root.baseUrl()+"authSources/authSourcesSynchronize?authUid="+t.AUTH_SOURCE_UID+"&tab=synchronizeDepartments"},optionSaveButton(t){this.$refs["as-b-modal-upload-file"].hide(),this.$emit("optionSaveButton",t)},optionUpdateButton(t,e){this.$refs["as-b-modal-upload-file"].hide(),this.$emit("optionUpdateButton",t,e)},optionNewButton(t){this.$refs["as-b-modal-upload-file"].hide(),this.$emit("optionNewButton",t)}}},w=D,g=Object(b["a"])(w,u,c,!1,null,"3dc7fda5",null),N=g.exports,$=function(){var t=this,e=t._self._c;return e("div",[e("titleSection",{attrs:{title:t.title}}),e("formAuthenticationSources",{ref:"formAuthenticationSources",on:{matchAttributesToSync:function(e){return t.$emit("matchAttributesToSync",e)},cancel:t.cancel,save:function(e){return t.$emit("save",e)}}})],1)},L=[],y=function(){var t=this,e=t._self._c;return e("div",[e("b-form",{on:{submit:function(e){return e.stopPropagation(),e.preventDefault(),t.onSave.apply(null,arguments)}}},[e("b-container",{attrs:{fluid:""}},[e("b-row",[e("b-col",[e("b-form-group",{directives:[{name:"show",rawName:"v-show",value:!1,expression:"false"}],attrs:{label:t.$root.translation("ID_AVAILABLE_AUTHENTICATION_SOURCES"),description:""}},[e("b-form-select",{directives:[{name:"show",rawName:"v-show",value:!1,expression:"false"}],attrs:{options:t.availableAuthenticationSources},model:{value:t.form.availableAuthenticationSource,callback:function(e){t.$set(t.form,"availableAuthenticationSource",e)},expression:"form.availableAuthenticationSource"}})],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_NAME")}},[e("b-form-input",{attrs:{state:t.validateState("name"),autocomplete:"off"},model:{value:t.form.name,callback:function(e){t.$set(t.form,"name",e)},expression:"form.name"}}),e("b-form-invalid-feedback",[t._v(t._s(t.$root.translation("ID_IS_REQUIRED")))])],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_TYPE")}},[e("b-form-select",{attrs:{options:t.types},on:{change:t.changeTypeForm},model:{value:t.form.type,callback:function(e){t.$set(t.form,"type",e)},expression:"form.type"}})],1),"ad"===t.form.type?e("b-form-group",{attrs:{label:t.$root.translation("ID_REQUIRE_SIGN_IN_POLICY_FOR_LDAP")}},[e("b-form-checkbox",{attrs:{value:"1","unchecked-value":"0"},model:{value:t.form.signInPolicyForLDAP,callback:function(e){t.$set(t.form,"signInPolicyForLDAP",e)},expression:"form.signInPolicyForLDAP"}})],1):t._e(),e("b-form-group",{attrs:{label:t.$root.translation("ID_SERVER_ADDRESS")}},[e("b-form-input",{attrs:{state:t.validateState("serverAddress"),autocomplete:"off"},model:{value:t.form.serverAddress,callback:function(e){t.$set(t.form,"serverAddress",e)},expression:"form.serverAddress"}}),e("b-form-invalid-feedback",[t._v(t._s(t.$root.translation("ID_IS_REQUIRED")))])],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_PORT")}},[e("b-input-group",{scopedSlots:t._u([{key:"append",fn:function(){return[e("b-input-group-text",{staticClass:"p-0"},[e("b-button",{staticClass:"border-0",attrs:{size:"md",variant:"outline-light"},on:{click:function(e){t.disabledField.port=!t.disabledField.port}}},[e("b-icon",{attrs:{icon:"pencil-fill","aria-hidden":"true",variant:"primary"}})],1)],1)]},proxy:!0}])},[e("b-form-input",{attrs:{state:t.validateState("port"),disabled:t.disabledField.port,autocomplete:"off"},model:{value:t.form.port,callback:function(e){t.$set(t.form,"port",e)},expression:"form.port"}}),e("b-form-invalid-feedback",[t._v(t._s(t.$root.translation("ID_IS_REQUIRED")))])],1)],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_ENABLE_AUTOMATIC_REGISTER"),"label-cols-lg":"8"}},[e("b-form-checkbox",{attrs:{value:"1","unchecked-value":"0",switch:""},model:{value:t.form.enableAutomaticRegister,callback:function(e){t.$set(t.form,"enableAutomaticRegister",e)},expression:"form.enableAutomaticRegister"}})],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_ANONYMOUS"),"label-cols-lg":"8"}},[e("b-form-checkbox",{attrs:{value:"1","unchecked-value":"0",switch:""},model:{value:t.form.anonymous,callback:function(e){t.$set(t.form,"anonymous",e)},expression:"form.anonymous"}})],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_ENABLED_TLS"),"label-cols-lg":"8"}},[e("b-form-checkbox",{attrs:{value:"1","unchecked-value":"0",switch:""},model:{value:t.form.enableTLS,callback:function(e){t.$set(t.form,"enableTLS",e)},expression:"form.enableTLS"}})],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_BASE_DN")}},[e("b-form-input",{attrs:{placeholder:"dc=business,dc=net",autocomplete:"off"},model:{value:t.form.baseDN,callback:function(e){t.$set(t.form,"baseDN",e)},expression:"form.baseDN"}})],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_INACTIVE_USERS")}},[e("b-form-input",{attrs:{autocomplete:"off"},model:{value:t.form.inactiveUsers,callback:function(e){t.$set(t.form,"inactiveUsers",e)},expression:"form.inactiveUsers"}})],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_ROLE")}},[e("b-form-select",{attrs:{options:t.roles},model:{value:t.form.role,callback:function(e){t.$set(t.form,"role",e)},expression:"form.role"}})],1)],1),e("b-col",[e("b-form-group",{staticClass:"text-right"},[e("b-button",{attrs:{variant:"success"},on:{click:function(e){return t.$refs["fas-b-modal-upload-file"].show()}}},[t._v(t._s(t.$root.translation("ID_IMPORT_SETTINGS")))])],1),e("b-form-group",{staticClass:"text-right"},[e("b-link",{directives:[{name:"show",rawName:"v-show",value:t.showMathAttributes||t.testStatus,expression:"showMathAttributes || testStatus"}],attrs:{href:"#"},on:{click:t.matchAttributesToSync}},[t._v(t._s(t.$root.translation("ID_MATCH_ATTRIBUTES_TO_SYNC"))+" >>")])],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_USERNAME")}},[e("b-form-input",{attrs:{state:t.validateState("userName"),autocomplete:"off"},model:{value:t.form.userName,callback:function(e){t.$set(t.form,"userName",e)},expression:"form.userName"}}),e("b-form-invalid-feedback",[t._v(t._s(t.$root.translation("ID_IS_REQUIRED")))])],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_PASSWORD")}},[e("b-form-input",{attrs:{state:t.validateState("password"),type:"password",autocomplete:"off"},model:{value:t.form.password,callback:function(e){t.$set(t.form,"password",e)},expression:"form.password"}}),e("b-form-invalid-feedback",[t._v(t._s(t.$root.translation("ID_IS_REQUIRED")))])],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_USER_IDENTIFIER")}},[e("b-input-group",{scopedSlots:t._u([{key:"append",fn:function(){return[e("b-input-group-text",{staticClass:"p-0"},[e("b-button",{staticClass:"border-0",attrs:{size:"md",variant:"outline-light"},on:{click:function(e){t.disabledField.userIdentifier=!t.disabledField.userIdentifier}}},[e("b-icon",{attrs:{icon:"pencil-fill","aria-hidden":"true",variant:"primary"}})],1)],1)]},proxy:!0}])},[e("b-form-input",{attrs:{autocomplete:"off",disabled:t.disabledField.userIdentifier},model:{value:t.form.userIdentifier,callback:function(e){t.$set(t.form,"userIdentifier",e)},expression:"form.userIdentifier"}})],1)],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_GROUP_IDENTIFIER")}},[e("b-input-group",{scopedSlots:t._u([{key:"append",fn:function(){return[e("b-input-group-text",{staticClass:"p-0"},[e("b-button",{staticClass:"border-0",attrs:{size:"md",variant:"outline-light"},on:{click:function(e){t.disabledField.groupIdentifier=!t.disabledField.groupIdentifier}}},[e("b-icon",{attrs:{icon:"pencil-fill","aria-hidden":"true",variant:"primary"}})],1)],1)]},proxy:!0}])},[e("b-form-input",{attrs:{autocomplete:"off",disabled:t.disabledField.groupIdentifier},model:{value:t.form.groupIdentifier,callback:function(e){t.$set(t.form,"groupIdentifier",e)},expression:"form.groupIdentifier"}})],1)],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_FILTER_TO_SEARCH_USERS")}},[e("b-form-input",{attrs:{autocomplete:"off"},model:{value:t.form.filterToSearchUsers,callback:function(e){t.$set(t.form,"filterToSearchUsers",e)},expression:"form.filterToSearchUsers"}})],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_USER_CLASS_IDENTIFIER")}},[e("b-input-group",{scopedSlots:t._u([{key:"append",fn:function(){return[e("b-input-group-text",{staticClass:"p-0"},[e("b-button",{staticClass:"border-0",attrs:{size:"md",variant:"outline-light"},on:{click:function(e){t.disabledField.userClassIdentifier=!t.disabledField.userClassIdentifier}}},[e("b-icon",{attrs:{icon:"pencil-fill","aria-hidden":"true",variant:"primary"}})],1)],1)]},proxy:!0}])},[e("b-form-input",{attrs:{disabled:t.disabledField.userClassIdentifier,autocomplete:"off"},model:{value:t.form.userClassIdentifier,callback:function(e){t.$set(t.form,"userClassIdentifier",e)},expression:"form.userClassIdentifier"}})],1)],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_GROUP_CLASS_IDENTIFIER")}},[e("b-input-group",{scopedSlots:t._u([{key:"append",fn:function(){return[e("b-input-group-text",{staticClass:"p-0"},[e("b-button",{staticClass:"border-0",attrs:{size:"md",variant:"outline-light"},on:{click:function(e){t.disabledField.groupClassIdentifier=!t.disabledField.groupClassIdentifier}}},[e("b-icon",{attrs:{icon:"pencil-fill","aria-hidden":"true",variant:"primary"}})],1)],1)]},proxy:!0}])},[e("b-form-input",{attrs:{disabled:t.disabledField.groupClassIdentifier,autocomplete:"off"},model:{value:t.form.groupClassIdentifier,callback:function(e){t.$set(t.form,"groupClassIdentifier",e)},expression:"form.groupClassIdentifier"}})],1)],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_DEPARTMENT_CLASS_IDENTIFIER")}},[e("b-input-group",{scopedSlots:t._u([{key:"append",fn:function(){return[e("b-input-group-text",{staticClass:"p-0"},[e("b-button",{staticClass:"border-0",attrs:{size:"md",variant:"outline-light"},on:{click:function(e){t.disabledField.departmentClassIdentifier=!t.disabledField.departmentClassIdentifier}}},[e("b-icon",{attrs:{icon:"pencil-fill","aria-hidden":"true",variant:"primary"}})],1)],1)]},proxy:!0}])},[e("b-form-input",{attrs:{disabled:t.disabledField.departmentClassIdentifier,autocomplete:"off"},model:{value:t.form.departmentClassIdentifier,callback:function(e){t.$set(t.form,"departmentClassIdentifier",e)},expression:"form.departmentClassIdentifier"}})],1)],1)],1)],1),e("b-row",{staticClass:"text-right"},[e("b-col",[e("b-form-group",[e("b-button",{attrs:{variant:"danger"},on:{click:function(e){return t.$emit("cancel")}}},[t._v(t._s(t.$root.translation("ID_CANCEL")))]),t._v(" "),e("b-button",{attrs:{type:"submit",variant:"success"}},[t._v(t._s(t.buttonLabel))])],1)],1)],1)],1)],1),e("b-modal",{attrs:{id:"messageForFailedTest","ok-variant":"success","ok-only":""}},[t._v(" "+t._s(t.testMessage)+" ")]),e("b-modal",{ref:"fas-b-modal-upload-file",attrs:{title:t.$root.translation("ID_IMPORT_SETTINGS"),"hide-footer":"",size:"lg"}},[e("formUploadSource",{ref:"formUploadSource",attrs:{skipNameValidation:""},on:{cancel:function(e){t.$refs["fas-b-modal-upload-file"].hide(),t.$refs.formUploadSource.reset()},optionSaveButton:t.optionSaveButton}})],1)],1)},x=[],H={mixins:[R["validationMixin"]],components:{formUploadSource:O},validations(){let t={form:{name:{required:I["required"]},serverAddress:{required:I["required"]},port:{required:I["required"]}}};return"1"===this.form.anonymous&&(t.form.userName={},t.form.password={}),"0"===this.form.anonymous&&(t.form.userName={required:I["required"]},t.form.password={required:I["required"]}),t},data(){return{buttonLabel:this.$root.translation("ID_TEST"),testStatus:!1,testMessage:"",showMathAttributes:!1,form:{uid:"",availableAuthenticationSource:"ldapAdvanced",name:"",type:"ad",serverAddress:"",port:"389",enableAutomaticRegister:"0",anonymous:"0",enableTLS:"0",baseDN:"",userName:"",password:"",userIdentifier:"samaccountname",filterToSearchUsers:"",gridText:"[]",signInPolicyForLDAP:"1",inactiveUsers:"",role:"LURANA_OPERATOR",groupIdentifier:"member",userClassIdentifier:"",groupClassIdentifier:"(objectclass=posixgroup)(objectclass=group)(objectclass=groupofuniquenames)",departmentClassIdentifier:"(objectclass=organizationalunit)"},availableAuthenticationSources:[{value:"ldapAdvanced",text:"LDAP Advanced"},{value:"ldap",text:"LDAP"}],types:[{value:"ad",text:"Active Directory"},{value:"ldap",text:"Open LDAP"},{value:"ds",text:"389 DS"}],roles:[],disabledField:{port:!0,userIdentifier:!0,groupIdentifier:!0,userClassIdentifier:!0,groupClassIdentifier:!0,departmentClassIdentifier:!0}}},methods:{validateState(t){const{$dirty:e,$error:o}=this.$v.form[t];return e?!o:null},reset(){this.form={uid:"",availableAuthenticationSource:"ldapAdvanced",name:"",type:"ad",serverAddress:"",port:"389",enableAutomaticRegister:"0",anonymous:"0",enableTLS:"0",baseDN:"",userName:"",password:"",userIdentifier:"samaccountname",filterToSearchUsers:"",gridText:"[]",signInPolicyForLDAP:"1",inactiveUsers:"",role:"LURANA_OPERATOR",groupIdentifier:"member",userClassIdentifier:"",groupClassIdentifier:"(objectclass=posixgroup)(objectclass=group)(objectclass=groupofuniquenames)",departmentClassIdentifier:"(objectclass=organizationalunit)"}},onSave(){this.$v.form.$touch(),this.$v.form.$anyError||(this.testStatus?this.$emit("save",this.form):this.test(this.form))},load(t){this.form=t},test(t){let e=new FormData;e.append("AUTH_SOURCE_NAME",t.name),U.a.post(this.$root.baseUrl()+"authSources/authSourcesProxy?action=authSourcesVerifyName",e).then(e=>{if(!1===e.data.row||""!==this.form.uid&&"string"===typeof this.form.uid){let e=this.formToFormData(t);U.a.post(this.$root.baseUrl()+"authSources/authSourcesProxy?action=authSourcesTestConnection",e).then(t=>{if("OK"===t.data.status)return this.testStatus=!0,this.buttonLabel=this.$root.translation("ID_SAVE"),"message"in t.data&&this.$bvModal.msgBoxOk(t.data.message,{title:" ",hideHeaderClose:!1,okTitle:this.$root.translation("ID_OK"),okVariant:"success",okOnly:!0}),void this.$bvModal.msgBoxOk(this.$root.translation("ID_SUCCESSFUL_TEST_CONNECTION"),{title:" ",hideHeaderClose:!1,okTitle:this.$root.translation("ID_OK"),okVariant:"success",okOnly:!0});this.testMessage=t.data.message,this.testStatus=!1,this.buttonLabel=this.$root.translation("ID_TEST"),this.$bvModal.show("messageForFailedTest")}).catch(t=>{}).finally(()=>{})}else this.$bvModal.msgBoxOk(this.$root.translation("ID_NAME_EXISTS"),{title:" ",hideHeaderClose:!1,okTitle:this.$root.translation("ID_OK"),okVariant:"success",okOnly:!0}).then(t=>{}).catch(t=>{})}).catch(t=>{}).finally(()=>{})},matchAttributesToSync(){this.$emit("matchAttributesToSync")},setGridText(t){this.form.gridText=t},getGridText(){return this.form.gridText},optionSaveButton(t){this.$refs["fas-b-modal-upload-file"].hide(),t.AUTH_SOURCE_UID=this.form.uid;let e=this.rowToForm(t);this.load(e)},rowToForm(t){let e=[];if("AUTH_SOURCE_GRID_ATTRIBUTE"in t)for(let r in t.AUTH_SOURCE_GRID_ATTRIBUTE){let o=t.AUTH_SOURCE_GRID_ATTRIBUTE[r]||{};e.push({attributeRole:o.attributeRole||"",attributeUser:o.attributeUser||"",attributeLdap:o.attributeLdap||""})}var o={uid:t.AUTH_SOURCE_UID,availableAuthenticationSource:t.AUTH_SOURCE_PROVIDER,name:t.AUTH_SOURCE_NAME,type:t.LDAP_TYPE,serverAddress:t.AUTH_SOURCE_SERVER_NAME,port:t.AUTH_SOURCE_PORT,enableAutomaticRegister:t.AUTH_SOURCE_AUTO_REGISTER,anonymous:t.AUTH_ANONYMOUS,enableTLS:t.AUTH_SOURCE_ENABLED_TLS,baseDN:t.AUTH_SOURCE_BASE_DN,userName:t.AUTH_SOURCE_SEARCH_USER,password:t.AUTH_SOURCE_PASSWORD,userIdentifier:t.AUTH_SOURCE_IDENTIFIER_FOR_USER,filterToSearchUsers:t.AUTH_SOURCE_USERS_FILTER,gridText:JSON.stringify(e),signInPolicyForLDAP:t.AUTH_SOURCE_SIGNIN_POLICY_FOR_LDAP,inactiveUsers:t.AUTH_SOURCE_RETIRED_OU,role:t.USR_ROLE||"",groupIdentifier:t.AUTH_SOURCE_IDENTIFIER_FOR_USER_GROUP||"",userClassIdentifier:t.AUTH_SOURCE_IDENTIFIER_FOR_USER_CLASS||"",groupClassIdentifier:t.GROUP_CLASS_IDENTIFIER||"",departmentClassIdentifier:t.DEPARTMENT_CLASS_IDENTIFIER||""};return o},formToFormData(t){let e=new FormData;return e.append("AUTH_SOURCE_UID",t.uid),e.append("AUTH_SOURCE_NAME",t.name),e.append("AUTH_SOURCE_PROVIDER",t.availableAuthenticationSource),e.append("LDAP_TYPE",t.type),e.append("AUTH_SOURCE_AUTO_REGISTER",t.enableAutomaticRegister),e.append("AUTH_SOURCE_SERVER_NAME",t.serverAddress),e.append("AUTH_SOURCE_PORT",t.port),e.append("AUTH_SOURCE_ENABLED_TLS",t.enableTLS),e.append("AUTH_SOURCE_BASE_DN",t.baseDN),e.append("AUTH_ANONYMOUS",t.anonymous),e.append("AUTH_SOURCE_SEARCH_USER",t.userName),e.append("AUTH_SOURCE_PASSWORD",t.password),e.append("AUTH_SOURCE_IDENTIFIER_FOR_USER",t.userIdentifier),e.append("AUTH_SOURCE_USERS_FILTER",t.filterToSearchUsers),e.append("AUTH_SOURCE_RETIRED_OU",t.inactiveUsers),e.append("AUTH_SOURCE_ATTRIBUTE_IDS","USR_FIRSTNAME|USR_LASTNAME|USR_EMAIL|USR_DUE_DATE|USR_STATUS|USR_STATUS_ID|USR_ADDRESS|USR_PHONE|USR_FAX|USR_CELLULAR|USR_ZIP_CODE|USR_POSITION|USR_BIRTHDAY|USR_COST_BY_HOUR|USR_UNIT_COST|USR_PMDRIVE_FOLDER_UID|USR_BOOKMARK_START_CASES|USR_TIME_ZONE|USR_DEFAULT_LANG|USR_LAST_LOGIN|"),e.append("AUTH_SOURCE_SHOWGRID",""),e.append("AUTH_SOURCE_GRID_TEXT",t.gridText),e.append("AUTH_SOURCE_SHOWGRID-checkbox","on"),e.append("AUTH_SOURCE_SIGNIN_POLICY_FOR_LDAP",t.signInPolicyForLDAP),e.append("USR_ROLE",t.role),e.append("AUTH_SOURCE_IDENTIFIER_FOR_USER_GROUP",t.groupIdentifier),e.append("AUTH_SOURCE_IDENTIFIER_FOR_USER_CLASS",t.userClassIdentifier),e.append("GROUP_CLASS_IDENTIFIER",t.groupClassIdentifier),e.append("DEPARTMENT_CLASS_IDENTIFIER",t.departmentClassIdentifier),e.append("CUSTOM_CHECK_AUTH_SOURCE_IDENTIFIER_FOR_USER",0),e.append("CUSTOM_CHECK_AUTH_SOURCE_IDENTIFIER_FOR_USER_GROUP",0),e.append("CUSTOM_CHECK_DEPARTMENT_CLASS_IDENTIFIER",0),e.append("CUSTOM_CHECK_GROUP_CLASS_IDENTIFIER",0),e.append("CUSTOM_AUTH_SOURCE_IDENTIFIER_FOR_USER",""),e.append("CUSTOM_AUTH_SOURCE_IDENTIFIER_FOR_USER_GROUP",""),e.append("CUSTOM_DEPARTMENT_CLASS_IDENTIFIER",""),e.append("CUSTOM_GROUP_CLASS_IDENTIFIER",""),e},changeTypeForm(t){"ad"===t&&(this.form.userIdentifier="samaccountname",this.form.groupIdentifier="member",this.form.signInPolicyForLDAP="1"),"ldap"===t&&(this.form.userIdentifier="uid",this.form.groupIdentifier="memberuid",this.form.signInPolicyForLDAP="0"),"ds"===t&&(this.form.userIdentifier="uid",this.form.groupIdentifier="uniquemember",this.form.signInPolicyForLDAP="0")},getRolesList(){let t=new FormData;return t.append("action","rolesList"),U.a.post(this.$root.baseUrl()+"users/usersAjax",t).then(t=>{let e=[];for(let o in t.data)e.push({value:t.data[o].ROL_UID,text:t.data[o].ROL_CODE});this.roles=e}).catch(t=>{}).finally(()=>{})}},watch:{form:{handler(){this.testStatus=!1,this.buttonLabel=this.$root.translation("ID_TEST"),this.showMathAttributes=!(""===this.form.uid)},deep:!0}},mounted(){this.$nextTick((function(){this.getRolesList()}))}},F=H,P=Object(b["a"])(F,y,x,!1,null,"df6c5fe8",null),M=P.exports,k={data(){return{title:"#"}},components:{titleSection:m,formAuthenticationSources:M},methods:{setTitle(t){this.title=t},reset(){this.$refs.formAuthenticationSources.reset()},load(t){this.$refs.formAuthenticationSources.load(t)},cancel(){this.reset(),this.$emit("cancel")},rowToForm(t){return this.$refs.formAuthenticationSources.rowToForm(t)},formToFormData(t){return this.$refs.formAuthenticationSources.formToFormData(t)},setGridText(t){this.$refs.formAuthenticationSources.setGridText(t)},getGridText(){return this.$refs.formAuthenticationSources.getGridText()}}},B=k,G=Object(b["a"])(B,$,L,!1,null,"7473988f",null),V=G.exports,j=function(){var t=this,e=t._self._c;return e("div",[e("titleSection",{attrs:{title:t.$root.translation("ID_MATCH_ATTRIBUTES")}}),e("b-form-group",{staticClass:"text-right"},[e("b-link",{attrs:{href:"#"},on:{click:t.connectionSettings}},[t._v(" << "+t._s(t.$root.translation("ID_CONNECTION_SETTINGS")))])],1),e("b-form-group",{staticClass:"float-right"},[e("b-button",{attrs:{variant:"success"},on:{click:t.addAttribute}},[t._v(t._s(t.$root.translation("ID_ADD_ATTRIBUTE")))])],1),e("v-client-table",{attrs:{columns:t.columns,options:t.options,data:t.rows},scopedSlots:t._u([{key:"icons",fn:function(o){return e("div",{},[e("b-button-group",[e("b-button",{directives:[{name:"b-tooltip",rawName:"v-b-tooltip.hover",modifiers:{hover:!0}}],attrs:{title:t.$root.translation("ID_EDIT_ATTRIBUTE"),variant:"light"},on:{click:function(e){return t.editAttribute(o.row,o.index)}}},[e("b-icon",{attrs:{icon:"pencil-fill","aria-hidden":"true",variant:"info"}})],1),e("b-button",{directives:[{name:"b-tooltip",rawName:"v-b-tooltip.hover",modifiers:{hover:!0}}],attrs:{title:t.$root.translation("ID_DELETE_ATTRIBUTE"),variant:"light"},on:{click:function(e){return t.deleteAttribute(o.index,o.row)}}},[e("b-icon",{attrs:{icon:"trash","aria-hidden":"true",variant:"danger"}})],1)],1)],1)}}])}),e("b-modal",{attrs:{id:"messageForDeleteAttribute","ok-title":t.$root.translation("ID_YES"),"ok-variant":"success","cancel-title":t.$root.translation("ID_NO"),"cancel-variant":"danger"},on:{ok:t.deleteAttributeProcess}},[t._v(" "+t._s(t.$root.translation("ID_ARE_YOU_SURE_TO_DELETE_ATTRIBUTE_PLEASE_CONFIRM",[t.selectedRowName]))+" ")])],1)},q=[],Y={components:{titleSection:m},data(){return{selectedRowIndex:0,selectedRowName:"",columns:["attributeRole","attributeUser","attributeLdap","icons"],options:{headings:{attributeRole:this.$root.translation("ID_ROLE"),attributeUser:this.$root.translation("ID_USER_FIELD"),attributeLdap:this.$root.translation("ID_LDAP_FIELD"),icons:""},sortable:["attributeLdap","attributeRole","attributeUser"],filterable:["attributeLdap","attributeRole","attributeUser"],texts:{filter:"",filterPlaceholder:this.$root.translation("ID_EMPTY_SEARCH"),count:this.$root.translation("ID_SHOWING_FROM_RECORDS_COUNT"),noResults:this.$root.translation("ID_NO_MATCHING_RECORDS"),loading:this.$root.translation("ID_LOADING_GRID")},perPage:5,perPageValues:[],sortIcon:{is:"glyphicon-sort",base:"glyphicon",up:"glyphicon-chevron-up",down:"glyphicon-chevron-down"}},rows:[]}},methods:{setRows(t){this.rows=t},addAttribute(){this.$emit("addAttribute")},editAttribute(t,e){this.$emit("editAttribute",t,e)},deleteAttribute(t,e){this.selectedRowName=e.attributeLdap,this.selectedRowIndex=t,this.$bvModal.show("messageForDeleteAttribute")},deleteAttributeProcess(){this.rows.splice(this.selectedRowIndex-1,1)},saveRow(t){let e=Object.assign({},t);if(null===e.index)delete e.index,this.rows.push(e);else{let t=e.index;delete e.index,Object.assign(this.rows[t-1],e)}},connectionSettings(){this.$emit("connectionSettings",this.rows)}}},z=Y,W=Object(b["a"])(z,j,q,!1,null,"179fc62b",null),K=W.exports,J=function(){var t=this,e=t._self._c;return e("div",[e("titleSection",{attrs:{title:t.$root.translation("ID_NEW_MATCHED_ATTRIBUTE")}}),e("b-form",{on:{submit:function(e){return e.stopPropagation(),e.preventDefault(),t.onSave.apply(null,arguments)}}},[e("b-container",{attrs:{fluid:""}},[e("b-row",[e("b-col",[e("b-form-group",{attrs:{label:t.$root.translation("ID_ROLE")}},[e("b-form-select",{attrs:{options:t.roles},on:{change:t.changeRoles},model:{value:t.form.attributeRole,callback:function(e){t.$set(t.form,"attributeRole",e)},expression:"form.attributeRole"}})],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_PROCESSMAKER_USER_FIELD"),description:""}},[e("b-form-select",{attrs:{options:t.userAttributes},model:{value:t.form.attributeUser,callback:function(e){t.$set(t.form,"attributeUser",e)},expression:"form.attributeUser"}})],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_LDAP_ATTRIBUTE")}},[e("b-form-input",{attrs:{state:!0,autocomplete:"off"},model:{value:t.form.attributeLdap,callback:function(e){t.$set(t.form,"attributeLdap",e)},expression:"form.attributeLdap"}}),e("b-form-invalid-feedback",[t._v(t._s(t.$root.translation("ID_IS_REQUIRED")))])],1)],1)],1),e("b-row",{staticClass:"text-right"},[e("b-col",[e("b-form-group",[e("b-button",{attrs:{variant:"danger"},on:{click:function(e){return t.$emit("cancel")}}},[t._v(t._s(t.$root.translation("ID_CANCEL")))]),t._v(" "),e("b-button",{attrs:{type:"submit",variant:"success"}},[t._v(t._s(t.$root.translation("ID_SAVE")))])],1)],1)],1)],1)],1)],1)},Q=[],Z={mixins:[R["validationMixin"]],components:{titleSection:m},validations:{form:{attributeLdap:{required:I["required"]}}},data(){return{form:{index:null,attributeLdap:"",attributeRole:"",attributeUser:""},roles:[{value:"",text:"All"}],userAttributes:[]}},mounted(){let t=this.getRolesList();t.then(t=>{this.changeRoles()})},methods:{validateState(t){const{$dirty:e,$error:o}=this.$v.form[t];return e?!o:null},onSave(){this.$v.form.$touch(),this.$v.form.$anyError||this.$emit("save",this.form)},load(t,e){this.form.index=e,this.form.attributeLdap=t.attributeLdap,this.form.attributeRole=t.attributeRole,this.form.attributeUser=t.attributeUser},reset(){this.form={index:null,attributeLdap:"",attributeRole:"",attributeUser:""}},changeRoles(){let t=new FormData;return t.append("option","listByRol"),t.append("rolCode",this.form.attributeRole),U.a.post(this.$root.baseUrl()+"userExtendedAttributes/index",t).then(t=>{let e=[{value:"",text:this.$root.translation("ID_SELECTED_FIELD")}];for(let o in t.data.data)e.push({value:t.data.data[o].value,text:t.data.data[o].text});this.userAttributes=e}).catch(t=>{}).finally(()=>{})},getRolesList(){let t=new FormData;return t.append("request","allRoles"),U.a.post(this.$root.baseUrl()+"roles/roles_Ajax",t).then(t=>{let e=[{value:"",text:this.$root.translation("ID_ALL")}];for(let o in t.data)e.push({value:t.data[o].ROL_CODE,text:t.data[o].ROL_NAME});this.roles=e}).catch(t=>{}).finally(()=>{})}}},X=Z,tt=Object(b["a"])(X,J,Q,!1,null,"6d14953e",null),et=tt.exports,ot={name:"app",components:{authenticationSources:N,newConnection:V,matchAttributes:K,newMatchedAttribute:et},data(){return{views:{authenticationSources:!0,newConnection:!1,matchAttributes:!1,newMatchedAttribute:!1},selectedRow:null}},methods:{showView(t){for(let e in this.views)this.views[e]=!1;this.views[t]=!0},newConnection(){this.$refs.newConnection.reset(),this.$refs.newConnection.setTitle(this.$root.translation("ID_NEW_AUTHENTICATION_SOURCES")),this.showView("newConnection")},editSettings(t){this.selectedRow=t;let e=this.$refs.newConnection.rowToForm(t);this.$refs.newConnection.setTitle(this.$root.translation("ID_EDIT_AUTHENTICATION_SOURCES")),this.$refs.newConnection.reset(),this.$refs.newConnection.load(e),this.showView("newConnection")},optionSaveButton(t){t.AUTH_SOURCE_UID="";let e=this.$refs.newConnection.rowToForm(t);this.$refs.newConnection.setTitle(this.$root.translation("ID_NEW_AUTHENTICATION_SOURCES")),this.$refs.newConnection.reset(),this.$refs.newConnection.load(e),this.showView("newConnection")},optionUpdateButton(t,e){t.AUTH_SOURCE_UID=e.AUTH_SOURCE_UID,this.selectedRow=t;let o=this.$refs.newConnection.rowToForm(t);this.$refs.newConnection.setTitle(this.$root.translation("ID_EDIT_AUTHENTICATION_SOURCES")),this.$refs.newConnection.reset(),this.$refs.newConnection.load(o),this.showView("newConnection")},optionNewButton(t){t.AUTH_SOURCE_UID="";let e=this.$refs.newConnection.rowToForm(t);this.$refs.newConnection.setTitle(this.$root.translation("ID_NEW_AUTHENTICATION_SOURCES")),this.$refs.newConnection.reset(),this.$refs.newConnection.load(e),this.showView("newConnection")},saveNewConnection(t){let e=this.$refs.newConnection.formToFormData(t);U.a.post(this.$root.baseUrl()+"authSources/authSourcesProxy?action=authSourcesSave",e).then(t=>{this.$refs.authenticationSources.refresh()}).catch(t=>{}).finally(()=>{}),this.showView("authenticationSources")},matchAttributesToSync(){let t=this.$refs.newConnection.getGridText(),e=JSON.parse(t);this.showView("matchAttributes"),this.$refs.matchAttributes.setRows(e)},addAttribute(){this.$refs.newMatchedAttribute.reset(),this.showView("newMatchedAttribute")},editAttribute(t,e){this.$refs.newMatchedAttribute.load(t,e),this.showView("newMatchedAttribute")},saveNewMatchedAttribute(t){this.$refs.matchAttributes.saveRow(t),this.showView("matchAttributes")},cancelNewMatchedAttribute(){this.showView("matchAttributes")},connectionSettings(t){let e=JSON.stringify(t);this.$refs.newConnection.setGridText(e),this.showView("newConnection")}}},rt=ot,it=(o("bb66"),Object(b["a"])(rt,s,l,!1,null,null,null)),at=it.exports;r["default"].config.productionTip=!1,r["default"].use(i["a"]),r["default"].use(a["a"]),r["default"].use(n["ClientTable"],{},!1,"bootstrap4",{}),r["default"].use(n["ServerTable"],{},!1,"bootstrap4",{}),new r["default"]({render:t=>t(at),methods:{translation(t,e){if("TRANSLATIONS"in window&&t in window.TRANSLATIONS&&(t=window.TRANSLATIONS[t],void 0!=e&&"length"in e))for(let o=0;o\n \n
\n {{title}}\n \n \n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./titleSection.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./titleSection.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./titleSection.vue?vue&type=template&id=4605384b&scoped=true\"\nimport script from \"./titleSection.vue?vue&type=script&lang=js\"\nexport * from \"./titleSection.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4605384b\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('b-form',{on:{\"submit\":function($event){$event.stopPropagation();$event.preventDefault();return _vm.onSave.apply(null, arguments)}}},[_c('b-container',{attrs:{\"fluid\":\"\"}},[_c('b-row',[_c('b-col',[(_vm.newName==true)?_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_PLEASE_ADD_THE_FILE_SETTINGS_TO_BE_UPLOADED')}},[_c('b-form-file',{attrs:{\"state\":_vm.validateState('connectionSettings'),\"placeholder\":_vm.$root.translation('ID_CHOOSE_A_FILE_OR_DROP_IT_HERE'),\"drop-placeholder\":_vm.$root.translation('ID_DROP_FILE_HERE')},on:{\"change\":_vm.change},model:{value:(_vm.form.connectionSettings),callback:function ($$v) {_vm.$set(_vm.form, \"connectionSettings\", $$v)},expression:\"form.connectionSettings\"}}),_c('b-form-invalid-feedback',[_vm._v(_vm._s(_vm.$root.translation('ID_IS_REQUIRED')))])],1):_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_CONNECTION_WITH_THE_SAME_NAME_PLEASE_SELECT_AN_OPTION',[_vm.fileContent.AUTH_SOURCE_NAME])}},[_c('b-form-file',{attrs:{\"state\":_vm.validateState('connectionSettings'),\"placeholder\":_vm.$root.translation('ID_CHOOSE_A_FILE_OR_DROP_IT_HERE'),\"drop-placeholder\":_vm.$root.translation('ID_DROP_FILE_HERE')},on:{\"change\":_vm.change},model:{value:(_vm.form.connectionSettings),callback:function ($$v) {_vm.$set(_vm.form, \"connectionSettings\", $$v)},expression:\"form.connectionSettings\"}}),_c('b-form-invalid-feedback',[_vm._v(_vm._s(_vm.$root.translation('ID_IS_REQUIRED')))])],1)],1)],1),_c('b-row',{staticClass:\"text-center\"},[_c('b-col',[(_vm.newName==true)?_c('b-form-group',[_c('b-button',{attrs:{\"variant\":\"danger\"},on:{\"click\":function($event){return _vm.$emit('cancel')}}},[_vm._v(_vm._s(_vm.$root.translation('ID_CANCEL')))]),_vm._v(\" \"),_c('b-button',{attrs:{\"type\":\"submit\",\"variant\":\"success\",\"disabled\":_vm.isDisabled,\"id\":\"save\"}},[_vm._v(_vm._s(_vm.$root.translation('ID_SAVE')))])],1):_c('b-form-group',[_c('b-button',{attrs:{\"variant\":\"danger\"},on:{\"click\":function($event){return _vm.$emit('cancel')}}},[_vm._v(_vm._s(_vm.$root.translation('ID_CANCEL')))]),_vm._v(\" \"),_c('b-button',{attrs:{\"type\":\"submit\",\"variant\":\"primary\",\"disabled\":_vm.isDisabled,\"id\":\"update\"}},[_vm._v(_vm._s(_vm.$root.translation('ID_UPDATE_SETTINGS')))]),_vm._v(\" \"),_c('b-button',{attrs:{\"type\":\"submit\",\"variant\":\"success\",\"disabled\":_vm.isDisabled,\"id\":\"new\"}},[_vm._v(_vm._s(_vm.$root.translation('ID_NEW_CONNECTION')))])],1)],1)],1)],1)],1),_c('b-modal',{attrs:{\"id\":\"messageForInvalidFileExtension\",\"ok-only\":\"\",\"static\":\"\"}},[_vm._v(_vm._s(_vm.$root.translation('ID_PMG_SELECT_FILE')))]),_c('b-modal',{attrs:{\"id\":\"messageForInvalidFileFormat\",\"ok-only\":\"\",\"static\":\"\"}},[_vm._v(_vm._s(_vm.$root.translation('ID_INVALID_DATA')))])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n \n \n \n \n \n \n \n {{$root.translation('ID_IS_REQUIRED')}} \n \n \n \n \n {{$root.translation('ID_IS_REQUIRED')}} \n \n \n \n \n \n \n {{$root.translation('ID_CANCEL')}} \n {{$root.translation('ID_SAVE')}} \n \n \n {{$root.translation('ID_CANCEL')}} \n {{$root.translation('ID_UPDATE_SETTINGS')}} \n {{$root.translation('ID_NEW_CONNECTION')}} \n \n \n \n \n \n {{$root.translation('ID_PMG_SELECT_FILE')}} \n {{$root.translation('ID_INVALID_DATA')}} \n
\n \n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./formUploadSource.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./formUploadSource.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./formUploadSource.vue?vue&type=template&id=13b8a89c&scoped=true\"\nimport script from \"./formUploadSource.vue?vue&type=script&lang=js\"\nexport * from \"./formUploadSource.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"13b8a89c\",\n null\n \n)\n\nexport default component.exports","\n \n
\n
\n \n {{$root.translation('ID_IMPORT_CONNECTION')}}\n \n \n {{$root.translation('ID_NEW_CONNECTION')}}\n \n \n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n
\n \n \n \n
\n \n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./authenticationSources.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./authenticationSources.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./authenticationSources.vue?vue&type=template&id=3dc7fda5&scoped=true\"\nimport script from \"./authenticationSources.vue?vue&type=script&lang=js\"\nexport * from \"./authenticationSources.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3dc7fda5\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('titleSection',{attrs:{\"title\":_vm.title}}),_c('formAuthenticationSources',{ref:\"formAuthenticationSources\",on:{\"matchAttributesToSync\":function($event){return _vm.$emit('matchAttributesToSync',$event)},\"cancel\":_vm.cancel,\"save\":function($event){return _vm.$emit('save',$event)}}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('b-form',{on:{\"submit\":function($event){$event.stopPropagation();$event.preventDefault();return _vm.onSave.apply(null, arguments)}}},[_c('b-container',{attrs:{\"fluid\":\"\"}},[_c('b-row',[_c('b-col',[_c('b-form-group',{directives:[{name:\"show\",rawName:\"v-show\",value:(false),expression:\"false\"}],attrs:{\"label\":_vm.$root.translation('ID_AVAILABLE_AUTHENTICATION_SOURCES'),\"description\":\"\"}},[_c('b-form-select',{directives:[{name:\"show\",rawName:\"v-show\",value:(false),expression:\"false\"}],attrs:{\"options\":_vm.availableAuthenticationSources},model:{value:(_vm.form.availableAuthenticationSource),callback:function ($$v) {_vm.$set(_vm.form, \"availableAuthenticationSource\", $$v)},expression:\"form.availableAuthenticationSource\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_NAME')}},[_c('b-form-input',{attrs:{\"state\":_vm.validateState('name'),\"autocomplete\":\"off\"},model:{value:(_vm.form.name),callback:function ($$v) {_vm.$set(_vm.form, \"name\", $$v)},expression:\"form.name\"}}),_c('b-form-invalid-feedback',[_vm._v(_vm._s(_vm.$root.translation('ID_IS_REQUIRED')))])],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_TYPE')}},[_c('b-form-select',{attrs:{\"options\":_vm.types},on:{\"change\":_vm.changeTypeForm},model:{value:(_vm.form.type),callback:function ($$v) {_vm.$set(_vm.form, \"type\", $$v)},expression:\"form.type\"}})],1),(_vm.form.type==='ad')?_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_REQUIRE_SIGN_IN_POLICY_FOR_LDAP')}},[_c('b-form-checkbox',{attrs:{\"value\":\"1\",\"unchecked-value\":\"0\"},model:{value:(_vm.form.signInPolicyForLDAP),callback:function ($$v) {_vm.$set(_vm.form, \"signInPolicyForLDAP\", $$v)},expression:\"form.signInPolicyForLDAP\"}})],1):_vm._e(),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_SERVER_ADDRESS')}},[_c('b-form-input',{attrs:{\"state\":_vm.validateState('serverAddress'),\"autocomplete\":\"off\"},model:{value:(_vm.form.serverAddress),callback:function ($$v) {_vm.$set(_vm.form, \"serverAddress\", $$v)},expression:\"form.serverAddress\"}}),_c('b-form-invalid-feedback',[_vm._v(_vm._s(_vm.$root.translation('ID_IS_REQUIRED')))])],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_PORT')}},[_c('b-input-group',{scopedSlots:_vm._u([{key:\"append\",fn:function(){return [_c('b-input-group-text',{staticClass:\"p-0\"},[_c('b-button',{staticClass:\"border-0\",attrs:{\"size\":\"md\",\"variant\":\"outline-light\"},on:{\"click\":function($event){_vm.disabledField.port=!_vm.disabledField.port;}}},[_c('b-icon',{attrs:{\"icon\":\"pencil-fill\",\"aria-hidden\":\"true\",\"variant\":\"primary\"}})],1)],1)]},proxy:true}])},[_c('b-form-input',{attrs:{\"state\":_vm.validateState('port'),\"disabled\":_vm.disabledField.port,\"autocomplete\":\"off\"},model:{value:(_vm.form.port),callback:function ($$v) {_vm.$set(_vm.form, \"port\", $$v)},expression:\"form.port\"}}),_c('b-form-invalid-feedback',[_vm._v(_vm._s(_vm.$root.translation('ID_IS_REQUIRED')))])],1)],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_ENABLE_AUTOMATIC_REGISTER'),\"label-cols-lg\":\"8\"}},[_c('b-form-checkbox',{attrs:{\"value\":\"1\",\"unchecked-value\":\"0\",\"switch\":\"\"},model:{value:(_vm.form.enableAutomaticRegister),callback:function ($$v) {_vm.$set(_vm.form, \"enableAutomaticRegister\", $$v)},expression:\"form.enableAutomaticRegister\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_ANONYMOUS'),\"label-cols-lg\":\"8\"}},[_c('b-form-checkbox',{attrs:{\"value\":\"1\",\"unchecked-value\":\"0\",\"switch\":\"\"},model:{value:(_vm.form.anonymous),callback:function ($$v) {_vm.$set(_vm.form, \"anonymous\", $$v)},expression:\"form.anonymous\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_ENABLED_TLS'),\"label-cols-lg\":\"8\"}},[_c('b-form-checkbox',{attrs:{\"value\":\"1\",\"unchecked-value\":\"0\",\"switch\":\"\"},model:{value:(_vm.form.enableTLS),callback:function ($$v) {_vm.$set(_vm.form, \"enableTLS\", $$v)},expression:\"form.enableTLS\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_BASE_DN')}},[_c('b-form-input',{attrs:{\"placeholder\":\"dc=business,dc=net\",\"autocomplete\":\"off\"},model:{value:(_vm.form.baseDN),callback:function ($$v) {_vm.$set(_vm.form, \"baseDN\", $$v)},expression:\"form.baseDN\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_INACTIVE_USERS')}},[_c('b-form-input',{attrs:{\"autocomplete\":\"off\"},model:{value:(_vm.form.inactiveUsers),callback:function ($$v) {_vm.$set(_vm.form, \"inactiveUsers\", $$v)},expression:\"form.inactiveUsers\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_ROLE')}},[_c('b-form-select',{attrs:{\"options\":_vm.roles},model:{value:(_vm.form.role),callback:function ($$v) {_vm.$set(_vm.form, \"role\", $$v)},expression:\"form.role\"}})],1)],1),_c('b-col',[_c('b-form-group',{staticClass:\"text-right\"},[_c('b-button',{attrs:{\"variant\":\"success\"},on:{\"click\":function($event){return _vm.$refs['fas-b-modal-upload-file'].show();}}},[_vm._v(_vm._s(_vm.$root.translation('ID_IMPORT_SETTINGS')))])],1),_c('b-form-group',{staticClass:\"text-right\"},[_c('b-link',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showMathAttributes || _vm.testStatus),expression:\"showMathAttributes || testStatus\"}],attrs:{\"href\":\"#\"},on:{\"click\":_vm.matchAttributesToSync}},[_vm._v(_vm._s(_vm.$root.translation('ID_MATCH_ATTRIBUTES_TO_SYNC'))+\" >>\")])],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_USERNAME')}},[_c('b-form-input',{attrs:{\"state\":_vm.validateState('userName'),\"autocomplete\":\"off\"},model:{value:(_vm.form.userName),callback:function ($$v) {_vm.$set(_vm.form, \"userName\", $$v)},expression:\"form.userName\"}}),_c('b-form-invalid-feedback',[_vm._v(_vm._s(_vm.$root.translation('ID_IS_REQUIRED')))])],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_PASSWORD')}},[_c('b-form-input',{attrs:{\"state\":_vm.validateState('password'),\"type\":\"password\",\"autocomplete\":\"off\"},model:{value:(_vm.form.password),callback:function ($$v) {_vm.$set(_vm.form, \"password\", $$v)},expression:\"form.password\"}}),_c('b-form-invalid-feedback',[_vm._v(_vm._s(_vm.$root.translation('ID_IS_REQUIRED')))])],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_USER_IDENTIFIER')}},[_c('b-input-group',{scopedSlots:_vm._u([{key:\"append\",fn:function(){return [_c('b-input-group-text',{staticClass:\"p-0\"},[_c('b-button',{staticClass:\"border-0\",attrs:{\"size\":\"md\",\"variant\":\"outline-light\"},on:{\"click\":function($event){_vm.disabledField.userIdentifier=!_vm.disabledField.userIdentifier;}}},[_c('b-icon',{attrs:{\"icon\":\"pencil-fill\",\"aria-hidden\":\"true\",\"variant\":\"primary\"}})],1)],1)]},proxy:true}])},[_c('b-form-input',{attrs:{\"autocomplete\":\"off\",\"disabled\":_vm.disabledField.userIdentifier},model:{value:(_vm.form.userIdentifier),callback:function ($$v) {_vm.$set(_vm.form, \"userIdentifier\", $$v)},expression:\"form.userIdentifier\"}})],1)],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_GROUP_IDENTIFIER')}},[_c('b-input-group',{scopedSlots:_vm._u([{key:\"append\",fn:function(){return [_c('b-input-group-text',{staticClass:\"p-0\"},[_c('b-button',{staticClass:\"border-0\",attrs:{\"size\":\"md\",\"variant\":\"outline-light\"},on:{\"click\":function($event){_vm.disabledField.groupIdentifier=!_vm.disabledField.groupIdentifier;}}},[_c('b-icon',{attrs:{\"icon\":\"pencil-fill\",\"aria-hidden\":\"true\",\"variant\":\"primary\"}})],1)],1)]},proxy:true}])},[_c('b-form-input',{attrs:{\"autocomplete\":\"off\",\"disabled\":_vm.disabledField.groupIdentifier},model:{value:(_vm.form.groupIdentifier),callback:function ($$v) {_vm.$set(_vm.form, \"groupIdentifier\", $$v)},expression:\"form.groupIdentifier\"}})],1)],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_FILTER_TO_SEARCH_USERS')}},[_c('b-form-input',{attrs:{\"autocomplete\":\"off\"},model:{value:(_vm.form.filterToSearchUsers),callback:function ($$v) {_vm.$set(_vm.form, \"filterToSearchUsers\", $$v)},expression:\"form.filterToSearchUsers\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_USER_CLASS_IDENTIFIER')}},[_c('b-input-group',{scopedSlots:_vm._u([{key:\"append\",fn:function(){return [_c('b-input-group-text',{staticClass:\"p-0\"},[_c('b-button',{staticClass:\"border-0\",attrs:{\"size\":\"md\",\"variant\":\"outline-light\"},on:{\"click\":function($event){_vm.disabledField.userClassIdentifier=!_vm.disabledField.userClassIdentifier;}}},[_c('b-icon',{attrs:{\"icon\":\"pencil-fill\",\"aria-hidden\":\"true\",\"variant\":\"primary\"}})],1)],1)]},proxy:true}])},[_c('b-form-input',{attrs:{\"disabled\":_vm.disabledField.userClassIdentifier,\"autocomplete\":\"off\"},model:{value:(_vm.form.userClassIdentifier),callback:function ($$v) {_vm.$set(_vm.form, \"userClassIdentifier\", $$v)},expression:\"form.userClassIdentifier\"}})],1)],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_GROUP_CLASS_IDENTIFIER')}},[_c('b-input-group',{scopedSlots:_vm._u([{key:\"append\",fn:function(){return [_c('b-input-group-text',{staticClass:\"p-0\"},[_c('b-button',{staticClass:\"border-0\",attrs:{\"size\":\"md\",\"variant\":\"outline-light\"},on:{\"click\":function($event){_vm.disabledField.groupClassIdentifier=!_vm.disabledField.groupClassIdentifier;}}},[_c('b-icon',{attrs:{\"icon\":\"pencil-fill\",\"aria-hidden\":\"true\",\"variant\":\"primary\"}})],1)],1)]},proxy:true}])},[_c('b-form-input',{attrs:{\"disabled\":_vm.disabledField.groupClassIdentifier,\"autocomplete\":\"off\"},model:{value:(_vm.form.groupClassIdentifier),callback:function ($$v) {_vm.$set(_vm.form, \"groupClassIdentifier\", $$v)},expression:\"form.groupClassIdentifier\"}})],1)],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_DEPARTMENT_CLASS_IDENTIFIER')}},[_c('b-input-group',{scopedSlots:_vm._u([{key:\"append\",fn:function(){return [_c('b-input-group-text',{staticClass:\"p-0\"},[_c('b-button',{staticClass:\"border-0\",attrs:{\"size\":\"md\",\"variant\":\"outline-light\"},on:{\"click\":function($event){_vm.disabledField.departmentClassIdentifier=!_vm.disabledField.departmentClassIdentifier;}}},[_c('b-icon',{attrs:{\"icon\":\"pencil-fill\",\"aria-hidden\":\"true\",\"variant\":\"primary\"}})],1)],1)]},proxy:true}])},[_c('b-form-input',{attrs:{\"disabled\":_vm.disabledField.departmentClassIdentifier,\"autocomplete\":\"off\"},model:{value:(_vm.form.departmentClassIdentifier),callback:function ($$v) {_vm.$set(_vm.form, \"departmentClassIdentifier\", $$v)},expression:\"form.departmentClassIdentifier\"}})],1)],1)],1)],1),_c('b-row',{staticClass:\"text-right\"},[_c('b-col',[_c('b-form-group',[_c('b-button',{attrs:{\"variant\":\"danger\"},on:{\"click\":function($event){return _vm.$emit('cancel')}}},[_vm._v(_vm._s(_vm.$root.translation('ID_CANCEL')))]),_vm._v(\" \"),_c('b-button',{attrs:{\"type\":\"submit\",\"variant\":\"success\"}},[_vm._v(_vm._s(_vm.buttonLabel))])],1)],1)],1)],1)],1),_c('b-modal',{attrs:{\"id\":\"messageForFailedTest\",\"ok-variant\":\"success\",\"ok-only\":\"\"}},[_vm._v(\" \"+_vm._s(_vm.testMessage)+\" \")]),_c('b-modal',{ref:\"fas-b-modal-upload-file\",attrs:{\"title\":_vm.$root.translation('ID_IMPORT_SETTINGS'),\"hide-footer\":\"\",\"size\":\"lg\"}},[_c('formUploadSource',{ref:\"formUploadSource\",attrs:{\"skipNameValidation\":\"\"},on:{\"cancel\":function($event){_vm.$refs['fas-b-modal-upload-file'].hide();_vm.$refs.formUploadSource.reset();},\"optionSaveButton\":_vm.optionSaveButton}})],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n \n \n \n \n \n \n \n \n \n {{$root.translation('ID_IS_REQUIRED')}} \n \n \n \n \n \n \n \n \n \n {{$root.translation('ID_IS_REQUIRED')}} \n \n \n \n \n \n \n \n \n \n \n \n \n {{$root.translation('ID_IS_REQUIRED')}} \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {{$root.translation('ID_IMPORT_SETTINGS')}} \n \n \n {{$root.translation('ID_MATCH_ATTRIBUTES_TO_SYNC')}} >> \n \n \n \n {{$root.translation('ID_IS_REQUIRED')}} \n \n \n \n {{$root.translation('ID_IS_REQUIRED')}} \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {{$root.translation('ID_CANCEL')}} \n {{buttonLabel}} \n \n \n \n \n \n \n {{testMessage}}\n \n \n \n \n \n
\n \n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./formAuthenticationSources.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./formAuthenticationSources.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./formAuthenticationSources.vue?vue&type=template&id=df6c5fe8&scoped=true\"\nimport script from \"./formAuthenticationSources.vue?vue&type=script&lang=js\"\nexport * from \"./formAuthenticationSources.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"df6c5fe8\",\n null\n \n)\n\nexport default component.exports","\n \n \n \n
\n \n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./newConnection.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./newConnection.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./newConnection.vue?vue&type=template&id=7473988f&scoped=true\"\nimport script from \"./newConnection.vue?vue&type=script&lang=js\"\nexport * from \"./newConnection.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7473988f\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('titleSection',{attrs:{\"title\":_vm.$root.translation('ID_MATCH_ATTRIBUTES')}}),_c('b-form-group',{staticClass:\"text-right\"},[_c('b-link',{attrs:{\"href\":\"#\"},on:{\"click\":_vm.connectionSettings}},[_vm._v(\" << \"+_vm._s(_vm.$root.translation('ID_CONNECTION_SETTINGS')))])],1),_c('b-form-group',{staticClass:\"float-right\"},[_c('b-button',{attrs:{\"variant\":\"success\"},on:{\"click\":_vm.addAttribute}},[_vm._v(_vm._s(_vm.$root.translation('ID_ADD_ATTRIBUTE')))])],1),_c('v-client-table',{attrs:{\"columns\":_vm.columns,\"options\":_vm.options,\"data\":_vm.rows},scopedSlots:_vm._u([{key:\"icons\",fn:function(props){return _c('div',{},[_c('b-button-group',[_c('b-button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],attrs:{\"title\":_vm.$root.translation('ID_EDIT_ATTRIBUTE'),\"variant\":\"light\"},on:{\"click\":function($event){return _vm.editAttribute(props.row,props.index)}}},[_c('b-icon',{attrs:{\"icon\":\"pencil-fill\",\"aria-hidden\":\"true\",\"variant\":\"info\"}})],1),_c('b-button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],attrs:{\"title\":_vm.$root.translation('ID_DELETE_ATTRIBUTE'),\"variant\":\"light\"},on:{\"click\":function($event){return _vm.deleteAttribute(props.index,props.row)}}},[_c('b-icon',{attrs:{\"icon\":\"trash\",\"aria-hidden\":\"true\",\"variant\":\"danger\"}})],1)],1)],1)}}])}),_c('b-modal',{attrs:{\"id\":\"messageForDeleteAttribute\",\"ok-title\":_vm.$root.translation('ID_YES'),\"ok-variant\":\"success\",\"cancel-title\":_vm.$root.translation('ID_NO'),\"cancel-variant\":\"danger\"},on:{\"ok\":_vm.deleteAttributeProcess}},[_vm._v(\" \"+_vm._s(_vm.$root.translation('ID_ARE_YOU_SURE_TO_DELETE_ATTRIBUTE_PLEASE_CONFIRM',[_vm.selectedRowName]))+\" \")])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n
\n
\n << {{$root.translation('ID_CONNECTION_SETTINGS')}} \n \n
\n {{$root.translation('ID_ADD_ATTRIBUTE')}} \n \n
\n \n \n \n \n \n \n \n \n \n
\n \n
\n {{$root.translation('ID_ARE_YOU_SURE_TO_DELETE_ATTRIBUTE_PLEASE_CONFIRM',[selectedRowName])}}\n \n
\n \n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./matchAttributes.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./matchAttributes.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./matchAttributes.vue?vue&type=template&id=179fc62b&scoped=true\"\nimport script from \"./matchAttributes.vue?vue&type=script&lang=js\"\nexport * from \"./matchAttributes.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"179fc62b\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('titleSection',{attrs:{\"title\":_vm.$root.translation('ID_NEW_MATCHED_ATTRIBUTE')}}),_c('b-form',{on:{\"submit\":function($event){$event.stopPropagation();$event.preventDefault();return _vm.onSave.apply(null, arguments)}}},[_c('b-container',{attrs:{\"fluid\":\"\"}},[_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_ROLE')}},[_c('b-form-select',{attrs:{\"options\":_vm.roles},on:{\"change\":_vm.changeRoles},model:{value:(_vm.form.attributeRole),callback:function ($$v) {_vm.$set(_vm.form, \"attributeRole\", $$v)},expression:\"form.attributeRole\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_PROCESSMAKER_USER_FIELD'),\"description\":\"\"}},[_c('b-form-select',{attrs:{\"options\":_vm.userAttributes},model:{value:(_vm.form.attributeUser),callback:function ($$v) {_vm.$set(_vm.form, \"attributeUser\", $$v)},expression:\"form.attributeUser\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_LDAP_ATTRIBUTE')}},[_c('b-form-input',{attrs:{\"state\":true,\"autocomplete\":\"off\"},model:{value:(_vm.form.attributeLdap),callback:function ($$v) {_vm.$set(_vm.form, \"attributeLdap\", $$v)},expression:\"form.attributeLdap\"}}),_c('b-form-invalid-feedback',[_vm._v(_vm._s(_vm.$root.translation('ID_IS_REQUIRED')))])],1)],1)],1),_c('b-row',{staticClass:\"text-right\"},[_c('b-col',[_c('b-form-group',[_c('b-button',{attrs:{\"variant\":\"danger\"},on:{\"click\":function($event){return _vm.$emit('cancel')}}},[_vm._v(_vm._s(_vm.$root.translation('ID_CANCEL')))]),_vm._v(\" \"),_c('b-button',{attrs:{\"type\":\"submit\",\"variant\":\"success\"}},[_vm._v(_vm._s(_vm.$root.translation('ID_SAVE')))])],1)],1)],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {{$root.translation('ID_IS_REQUIRED')}} \n \n \n \n \n \n \n {{$root.translation('ID_CANCEL')}} \n {{$root.translation('ID_SAVE')}} \n \n \n \n \n \n
\n \n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./newMatchedAttribute.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./newMatchedAttribute.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./newMatchedAttribute.vue?vue&type=template&id=6d14953e&scoped=true\"\nimport script from \"./newMatchedAttribute.vue?vue&type=script&lang=js\"\nexport * from \"./newMatchedAttribute.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6d14953e\",\n null\n \n)\n\nexport default component.exports","\n \n \n\n\n\n\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--13-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../node_modules/cache-loader/dist/cjs.js??ref--13-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=451061cc\"\nimport script from \"./App.vue?vue&type=script&lang=js\"\nexport * from \"./App.vue?vue&type=script&lang=js\"\nimport style0 from \"./App.vue?vue&type=style&index=0&id=451061cc&prod&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import Vue from 'vue'\nimport {BootstrapVue, IconsPlugin} from 'bootstrap-vue'\nimport 'bootstrap/dist/css/bootstrap.css'\nimport 'bootstrap-vue/dist/bootstrap-vue.css'\nimport {ClientTable} from 'vue-tables-2'\nimport {ServerTable} from 'vue-tables-2'\nimport App from './App.vue';\n\nVue.config.productionTip = false\nVue.use(BootstrapVue)\nVue.use(IconsPlugin)\nVue.use(ClientTable, {}, false, 'bootstrap4', {});\nVue.use(ServerTable, {}, false, 'bootstrap4', {});\n\nnew Vue({\n render: h => h(App),\n methods: {\n translation(text, params) {\n if (\"TRANSLATIONS\" in window && text in window.TRANSLATIONS) {\n text = window.TRANSLATIONS[text];\n if (params != undefined && \"length\" in params) {\n for (let i = 0; i < params.length; i++) {\n text = text.replace(\"{\" + i + \"}\", params[i]);\n }\n }\n }\n return text;\n },\n baseUrl() {\n return \"../\";\n }\n }\n}).$mount('#app');\n","export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&id=451061cc&prod&lang=css\""],"sourceRoot":""}
\ No newline at end of file
diff --git a/workflow/public_html/lib/authenticationSources/js/app.4050fbb5.js b/workflow/public_html/lib/authenticationSources/js/app.4050fbb5.js
deleted file mode 100644
index a87452a9e..000000000
--- a/workflow/public_html/lib/authenticationSources/js/app.4050fbb5.js
+++ /dev/null
@@ -1,2 +0,0 @@
-(function(t){function e(e){for(var r,n,s=e[0],l=e[1],u=e[2],d=0,_=[];d{if(this.fileContent=JSON.parse(t.target.result),!("AUTH_SOURCE_NAME"in this.fileContent))return this.$bvModal.show("messageForInvalidFileFormat"),this.reset(),void(this.isDisabled=!0);if(!0===this.skipNameValidation)return void(this.isDisabled=!1);let e=new FormData;e.append("AUTH_SOURCE_NAME",this.fileContent.AUTH_SOURCE_NAME),U.a.post(this.$root.baseUrl()+"authSources/authSourcesProxy.php?action=authSourcesVerifyName",e).then(t=>{this.newName=!1===t.data.row,this.validationResult=t.data,this.isDisabled=!1}).catch(t=>{this.isDisabled=!0}).finally(()=>{})},r.onerror=()=>{}}}},v=A,C=Object(b["a"])(v,S,E,!1,null,"d2fa09b4",null),O=C.exports,D={components:{titleSection:m,formUploadSource:O},data(){return{baseUrl:this.$root.baseUrl()+"authSources/authSourcesProxy?action=authSourcesList",columns:["AUTH_SOURCE_NAME","AUTH_SOURCE_PROVIDER","AUTH_SOURCE_SERVER_NAME","AUTH_SOURCE_PORT","AUTH_SOURCE_ENABLED_TLS_LABEL","CURRENT_USERS","icons"],options:{headings:{AUTH_SOURCE_NAME:this.$root.translation("ID_NAME"),AUTH_SOURCE_PROVIDER:this.$root.translation("ID_PROVIDER"),AUTH_SOURCE_SERVER_NAME:this.$root.translation("ID_SERVER_NAME"),AUTH_SOURCE_PORT:this.$root.translation("ID_PORT"),AUTH_SOURCE_ENABLED_TLS_LABEL:this.$root.translation("ID_ENABLED_TLS"),CURRENT_USERS:this.$root.translation("ID_ACTIVE_USERS"),icons:""},sortable:["AUTH_SOURCE_NAME","AUTH_SOURCE_PROVIDER","AUTH_SOURCE_SERVER_NAME","AUTH_SOURCE_PORT","AUTH_SOURCE_ENABLED_TLS_LABEL","CURRENT_USERS"],filterable:["AUTH_SOURCE_NAME","AUTH_SOURCE_PROVIDER","AUTH_SOURCE_SERVER_NAME","AUTH_SOURCE_PORT","AUTH_SOURCE_ENABLED_TLS_LABEL","CURRENT_USERS"],texts:{filter:"",filterPlaceholder:this.$root.translation("ID_EMPTY_SEARCH"),count:this.$root.translation("ID_SHOWING_FROM_RECORDS_COUNT"),noResults:this.$root.translation("ID_NO_MATCHING_RECORDS"),loading:this.$root.translation("ID_LOADING_GRID")},perPage:"pageSize"in window?window.pageSize:5,perPageValues:[],sortIcon:{is:"glyphicon-sort",base:"glyphicon",up:"glyphicon-chevron-up",down:"glyphicon-chevron-down"},requestKeys:{query:"textFilter"},requestFunction(t){return t.start=(t.page-1)*t.limit,U.a.get(this.url,{params:t},{}).catch((function(t){this.dispatch("error",t)}))},responseAdapter(t){return"sources"in t.data||(t.data.sources=[]),"total_sources"in t.data||(t.data.total_sources=0),{data:t.data.sources,count:t.data.total_sources}}},tableData:[]}},methods:{refresh(){this.$refs.vServerTable1.refresh()},deleteRow(t){this.$root.$emit("bv::hide::tooltip"),this.$bvModal.msgBoxConfirm(this.$root.translation("ID_ARE_YOU_SURE_TO_DELETE_CONNECTION_PLEASE_CONFIRM",[t.AUTH_SOURCE_NAME]),{title:" ",hideHeaderClose:!1,okTitle:this.$root.translation("ID_YES"),okVariant:"success",cancelTitle:this.$root.translation("ID_NO"),cancelVariant:"danger"}).then(e=>{if(!1===e)return;let o=new FormData;o.append("action","authSourcesDelete"),o.append("auth_uid",t.AUTH_SOURCE_UID),U.a.post(this.$root.baseUrl()+"authSources/authSourcesProxy",o).then(t=>{this.refresh()}).catch(t=>{}).finally(()=>{})}).catch(t=>{})},downloadRow(t){this.$root.$emit("bv::hide::tooltip");let e=JSON.parse(JSON.stringify(t));if(e.AUTH_SOURCE_UID="",delete e.AUTH_SOURCE_PASSWORD,delete e.CURRENT_USERS,delete e["UPPER(RBAC_AUTHENTICATION_SOURCE.AUTH_SOURCE_NAME)"],delete e.AUTH_SOURCE_VERSION,delete e.AUTH_SOURCE_ATTRIBUTES,delete e.AUTH_SOURCE_OBJECT_CLASSES,delete e.AUTH_SOURCE_DATA,delete e.AUTH_SOURCE_ENABLED_TLS_LABEL,delete e.LDAP_PAGE_SIZE_LIMIT,"AUTH_SOURCE_GRID_ATTRIBUTE"in e){let t=[];for(let o in e.AUTH_SOURCE_GRID_ATTRIBUTE){let r=e.AUTH_SOURCE_GRID_ATTRIBUTE[o]||{};t.push({attributeLdap:r.attributeLdap||"",attributeUser:r.attributeUser||"",attributeRole:r.attributeRole||""})}e.AUTH_SOURCE_GRID_ATTRIBUTE=t}let o=e.AUTH_SOURCE_NAME+".json";if(window.navigator.msSaveBlob)return void window.navigator.msSaveBlob(new Blob([JSON.stringify(e)],{type:"application/octet-stream"}),o);let r=document.createElement("a");document.body.appendChild(r),r.href=window.URL.createObjectURL(new Blob([JSON.stringify(e)],{type:"application/octet-stream"})),r.download=o,r.click(),document.body.removeChild(r)},importUsers(t){location.href=this.$root.baseUrl()+"authSources/authSources_SearchUsers?sUID="+t.AUTH_SOURCE_UID},syncGroups(t){location.href=this.$root.baseUrl()+"authSources/authSourcesSynchronize?authUid="+t.AUTH_SOURCE_UID+"&tab=synchronizeGroups"},syncDepartments(t){location.href=this.$root.baseUrl()+"authSources/authSourcesSynchronize?authUid="+t.AUTH_SOURCE_UID+"&tab=synchronizeDepartments"},optionSaveButton(t){this.$refs["as-b-modal-upload-file"].hide(),this.$emit("optionSaveButton",t)},optionUpdateButton(t,e){this.$refs["as-b-modal-upload-file"].hide(),this.$emit("optionUpdateButton",t,e)},optionNewButton(t){this.$refs["as-b-modal-upload-file"].hide(),this.$emit("optionNewButton",t)}}},w=D,g=Object(b["a"])(w,u,c,!1,null,"3dc7fda5",null),N=g.exports,$=function(){var t=this,e=t._self._c;return e("div",[e("titleSection",{attrs:{title:t.title}}),e("formAuthenticationSources",{ref:"formAuthenticationSources",on:{matchAttributesToSync:function(e){return t.$emit("matchAttributesToSync",e)},cancel:t.cancel,save:function(e){return t.$emit("save",e)}}})],1)},L=[],y=function(){var t=this,e=t._self._c;return e("div",[e("b-form",{on:{submit:function(e){return e.stopPropagation(),e.preventDefault(),t.onSave.apply(null,arguments)}}},[e("b-container",{attrs:{fluid:""}},[e("b-row",[e("b-col",[e("b-form-group",{directives:[{name:"show",rawName:"v-show",value:!1,expression:"false"}],attrs:{label:t.$root.translation("ID_AVAILABLE_AUTHENTICATION_SOURCES"),description:""}},[e("b-form-select",{directives:[{name:"show",rawName:"v-show",value:!1,expression:"false"}],attrs:{options:t.availableAuthenticationSources},model:{value:t.form.availableAuthenticationSource,callback:function(e){t.$set(t.form,"availableAuthenticationSource",e)},expression:"form.availableAuthenticationSource"}})],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_NAME")}},[e("b-form-input",{attrs:{state:t.validateState("name"),autocomplete:"off"},model:{value:t.form.name,callback:function(e){t.$set(t.form,"name",e)},expression:"form.name"}}),e("b-form-invalid-feedback",[t._v(t._s(t.$root.translation("ID_IS_REQUIRED")))])],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_TYPE")}},[e("b-form-select",{attrs:{options:t.types},on:{change:t.changeTypeForm},model:{value:t.form.type,callback:function(e){t.$set(t.form,"type",e)},expression:"form.type"}})],1),"ad"===t.form.type?e("b-form-group",{attrs:{label:t.$root.translation("ID_REQUIRE_SIGN_IN_POLICY_FOR_LDAP")}},[e("b-form-checkbox",{attrs:{value:"1","unchecked-value":"0"},model:{value:t.form.signInPolicyForLDAP,callback:function(e){t.$set(t.form,"signInPolicyForLDAP",e)},expression:"form.signInPolicyForLDAP"}})],1):t._e(),e("b-form-group",{attrs:{label:t.$root.translation("ID_SERVER_ADDRESS")}},[e("b-form-input",{attrs:{state:t.validateState("serverAddress"),autocomplete:"off"},model:{value:t.form.serverAddress,callback:function(e){t.$set(t.form,"serverAddress",e)},expression:"form.serverAddress"}}),e("b-form-invalid-feedback",[t._v(t._s(t.$root.translation("ID_IS_REQUIRED")))])],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_PORT")}},[e("b-input-group",{scopedSlots:t._u([{key:"append",fn:function(){return[e("b-input-group-text",{staticClass:"p-0"},[e("b-button",{staticClass:"border-0",attrs:{size:"md",variant:"outline-light"},on:{click:function(e){t.disabledField.port=!t.disabledField.port}}},[e("b-icon",{attrs:{icon:"pencil-fill","aria-hidden":"true",variant:"primary"}})],1)],1)]},proxy:!0}])},[e("b-form-input",{attrs:{state:t.validateState("port"),disabled:t.disabledField.port,autocomplete:"off"},model:{value:t.form.port,callback:function(e){t.$set(t.form,"port",e)},expression:"form.port"}}),e("b-form-invalid-feedback",[t._v(t._s(t.$root.translation("ID_IS_REQUIRED")))])],1)],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_ENABLE_AUTOMATIC_REGISTER"),"label-cols-lg":"8"}},[e("b-form-checkbox",{attrs:{value:"1","unchecked-value":"0",switch:""},model:{value:t.form.enableAutomaticRegister,callback:function(e){t.$set(t.form,"enableAutomaticRegister",e)},expression:"form.enableAutomaticRegister"}})],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_ANONYMOUS"),"label-cols-lg":"8"}},[e("b-form-checkbox",{attrs:{value:"1","unchecked-value":"0",switch:""},model:{value:t.form.anonymous,callback:function(e){t.$set(t.form,"anonymous",e)},expression:"form.anonymous"}})],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_ENABLED_TLS"),"label-cols-lg":"8"}},[e("b-form-checkbox",{attrs:{value:"1","unchecked-value":"0",switch:""},model:{value:t.form.enableTLS,callback:function(e){t.$set(t.form,"enableTLS",e)},expression:"form.enableTLS"}})],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_BASE_DN")}},[e("b-form-input",{attrs:{placeholder:"dc=business,dc=net",autocomplete:"off"},model:{value:t.form.baseDN,callback:function(e){t.$set(t.form,"baseDN",e)},expression:"form.baseDN"}})],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_INACTIVE_USERS")}},[e("b-form-input",{attrs:{autocomplete:"off"},model:{value:t.form.inactiveUsers,callback:function(e){t.$set(t.form,"inactiveUsers",e)},expression:"form.inactiveUsers"}})],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_ROLE")}},[e("b-form-select",{attrs:{options:t.roles},model:{value:t.form.role,callback:function(e){t.$set(t.form,"role",e)},expression:"form.role"}})],1)],1),e("b-col",[e("b-form-group",{staticClass:"text-right"},[e("b-button",{attrs:{variant:"success"},on:{click:function(e){return t.$refs["fas-b-modal-upload-file"].show()}}},[t._v(t._s(t.$root.translation("ID_IMPORT_SETTINGS")))])],1),e("b-form-group",{staticClass:"text-right"},[e("b-link",{directives:[{name:"show",rawName:"v-show",value:t.showMathAttributes||t.testStatus,expression:"showMathAttributes || testStatus"}],attrs:{href:"#"},on:{click:t.matchAttributesToSync}},[t._v(t._s(t.$root.translation("ID_MATCH_ATTRIBUTES_TO_SYNC"))+" >>")])],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_USERNAME")}},[e("b-form-input",{attrs:{state:t.validateState("userName"),autocomplete:"off"},model:{value:t.form.userName,callback:function(e){t.$set(t.form,"userName",e)},expression:"form.userName"}}),e("b-form-invalid-feedback",[t._v(t._s(t.$root.translation("ID_IS_REQUIRED")))])],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_PASSWORD")}},[e("b-form-input",{attrs:{state:t.validateState("password"),type:"password",autocomplete:"off"},model:{value:t.form.password,callback:function(e){t.$set(t.form,"password",e)},expression:"form.password"}}),e("b-form-invalid-feedback",[t._v(t._s(t.$root.translation("ID_IS_REQUIRED")))])],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_USER_IDENTIFIER")}},[e("b-input-group",{scopedSlots:t._u([{key:"append",fn:function(){return[e("b-input-group-text",{staticClass:"p-0"},[e("b-button",{staticClass:"border-0",attrs:{size:"md",variant:"outline-light"},on:{click:function(e){t.disabledField.userIdentifier=!t.disabledField.userIdentifier}}},[e("b-icon",{attrs:{icon:"pencil-fill","aria-hidden":"true",variant:"primary"}})],1)],1)]},proxy:!0}])},[e("b-form-input",{attrs:{autocomplete:"off",disabled:t.disabledField.userIdentifier},model:{value:t.form.userIdentifier,callback:function(e){t.$set(t.form,"userIdentifier",e)},expression:"form.userIdentifier"}})],1)],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_GROUP_IDENTIFIER")}},[e("b-input-group",{scopedSlots:t._u([{key:"append",fn:function(){return[e("b-input-group-text",{staticClass:"p-0"},[e("b-button",{staticClass:"border-0",attrs:{size:"md",variant:"outline-light"},on:{click:function(e){t.disabledField.groupIdentifier=!t.disabledField.groupIdentifier}}},[e("b-icon",{attrs:{icon:"pencil-fill","aria-hidden":"true",variant:"primary"}})],1)],1)]},proxy:!0}])},[e("b-form-input",{attrs:{autocomplete:"off",disabled:t.disabledField.groupIdentifier},model:{value:t.form.groupIdentifier,callback:function(e){t.$set(t.form,"groupIdentifier",e)},expression:"form.groupIdentifier"}})],1)],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_FILTER_TO_SEARCH_USERS")}},[e("b-form-input",{attrs:{autocomplete:"off"},model:{value:t.form.filterToSearchUsers,callback:function(e){t.$set(t.form,"filterToSearchUsers",e)},expression:"form.filterToSearchUsers"}})],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_USER_CLASS_IDENTIFIER")}},[e("b-input-group",{scopedSlots:t._u([{key:"append",fn:function(){return[e("b-input-group-text",{staticClass:"p-0"},[e("b-button",{staticClass:"border-0",attrs:{size:"md",variant:"outline-light"},on:{click:function(e){t.disabledField.userClassIdentifier=!t.disabledField.userClassIdentifier}}},[e("b-icon",{attrs:{icon:"pencil-fill","aria-hidden":"true",variant:"primary"}})],1)],1)]},proxy:!0}])},[e("b-form-input",{attrs:{disabled:t.disabledField.userClassIdentifier,autocomplete:"off"},model:{value:t.form.userClassIdentifier,callback:function(e){t.$set(t.form,"userClassIdentifier",e)},expression:"form.userClassIdentifier"}})],1)],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_GROUP_CLASS_IDENTIFIER")}},[e("b-input-group",{scopedSlots:t._u([{key:"append",fn:function(){return[e("b-input-group-text",{staticClass:"p-0"},[e("b-button",{staticClass:"border-0",attrs:{size:"md",variant:"outline-light"},on:{click:function(e){t.disabledField.groupClassIdentifier=!t.disabledField.groupClassIdentifier}}},[e("b-icon",{attrs:{icon:"pencil-fill","aria-hidden":"true",variant:"primary"}})],1)],1)]},proxy:!0}])},[e("b-form-input",{attrs:{disabled:t.disabledField.groupClassIdentifier,autocomplete:"off"},model:{value:t.form.groupClassIdentifier,callback:function(e){t.$set(t.form,"groupClassIdentifier",e)},expression:"form.groupClassIdentifier"}})],1)],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_DEPARTMENT_CLASS_IDENTIFIER")}},[e("b-input-group",{scopedSlots:t._u([{key:"append",fn:function(){return[e("b-input-group-text",{staticClass:"p-0"},[e("b-button",{staticClass:"border-0",attrs:{size:"md",variant:"outline-light"},on:{click:function(e){t.disabledField.departmentClassIdentifier=!t.disabledField.departmentClassIdentifier}}},[e("b-icon",{attrs:{icon:"pencil-fill","aria-hidden":"true",variant:"primary"}})],1)],1)]},proxy:!0}])},[e("b-form-input",{attrs:{disabled:t.disabledField.departmentClassIdentifier,autocomplete:"off"},model:{value:t.form.departmentClassIdentifier,callback:function(e){t.$set(t.form,"departmentClassIdentifier",e)},expression:"form.departmentClassIdentifier"}})],1)],1)],1)],1),e("b-row",{staticClass:"text-right"},[e("b-col",[e("b-form-group",[e("b-button",{attrs:{variant:"danger"},on:{click:function(e){return t.$emit("cancel")}}},[t._v(t._s(t.$root.translation("ID_CANCEL")))]),t._v(" "),e("b-button",{attrs:{type:"submit",variant:"success"}},[t._v(t._s(t.buttonLabel))])],1)],1)],1)],1)],1),e("b-modal",{attrs:{id:"messageForFailedTest","ok-variant":"success","ok-only":""}},[t._v(" "+t._s(t.testMessage)+" ")]),e("b-modal",{ref:"fas-b-modal-upload-file",attrs:{title:t.$root.translation("ID_IMPORT_SETTINGS"),"hide-footer":"",size:"lg"}},[e("formUploadSource",{ref:"formUploadSource",attrs:{skipNameValidation:""},on:{cancel:function(e){t.$refs["fas-b-modal-upload-file"].hide(),t.$refs.formUploadSource.reset()},optionSaveButton:t.optionSaveButton}})],1)],1)},x=[],H={mixins:[R["validationMixin"]],components:{formUploadSource:O},validations(){let t={form:{name:{required:I["required"]},serverAddress:{required:I["required"]},port:{required:I["required"]}}};return"1"===this.form.anonymous&&(t.form.userName={},t.form.password={}),"0"===this.form.anonymous&&(t.form.userName={required:I["required"]},t.form.password={required:I["required"]}),t},data(){return{buttonLabel:this.$root.translation("ID_TEST"),testStatus:!1,testMessage:"",showMathAttributes:!1,form:{uid:"",availableAuthenticationSource:"ldapAdvanced",name:"",type:"ad",serverAddress:"",port:"389",enableAutomaticRegister:"0",anonymous:"0",enableTLS:"0",baseDN:"",userName:"",password:"",userIdentifier:"samaccountname",filterToSearchUsers:"",gridText:"[]",signInPolicyForLDAP:"1",inactiveUsers:"",role:"PROCESSMAKER_OPERATOR",groupIdentifier:"member",userClassIdentifier:"",groupClassIdentifier:"(objectclass=posixgroup)(objectclass=group)(objectclass=groupofuniquenames)",departmentClassIdentifier:"(objectclass=organizationalunit)"},availableAuthenticationSources:[{value:"ldapAdvanced",text:"LDAP Advanced"},{value:"ldap",text:"LDAP"}],types:[{value:"ad",text:"Active Directory"},{value:"ldap",text:"Open LDAP"},{value:"ds",text:"389 DS"}],roles:[],disabledField:{port:!0,userIdentifier:!0,groupIdentifier:!0,userClassIdentifier:!0,groupClassIdentifier:!0,departmentClassIdentifier:!0}}},methods:{validateState(t){const{$dirty:e,$error:o}=this.$v.form[t];return e?!o:null},reset(){this.form={uid:"",availableAuthenticationSource:"ldapAdvanced",name:"",type:"ad",serverAddress:"",port:"389",enableAutomaticRegister:"0",anonymous:"0",enableTLS:"0",baseDN:"",userName:"",password:"",userIdentifier:"samaccountname",filterToSearchUsers:"",gridText:"[]",signInPolicyForLDAP:"1",inactiveUsers:"",role:"PROCESSMAKER_OPERATOR",groupIdentifier:"member",userClassIdentifier:"",groupClassIdentifier:"(objectclass=posixgroup)(objectclass=group)(objectclass=groupofuniquenames)",departmentClassIdentifier:"(objectclass=organizationalunit)"}},onSave(){this.$v.form.$touch(),this.$v.form.$anyError||(this.testStatus?this.$emit("save",this.form):this.test(this.form))},load(t){this.form=t},test(t){let e=new FormData;e.append("AUTH_SOURCE_NAME",t.name),U.a.post(this.$root.baseUrl()+"authSources/authSourcesProxy.php?action=authSourcesVerifyName",e).then(e=>{if(!1===e.data.row||""!==this.form.uid&&"string"===typeof this.form.uid){let e=this.formToFormData(t);U.a.post(this.$root.baseUrl()+"authSources/authSourcesProxy?action=authSourcesTestConnection",e).then(t=>{if("OK"===t.data.status)return this.testStatus=!0,this.buttonLabel=this.$root.translation("ID_SAVE"),"message"in t.data&&this.$bvModal.msgBoxOk(t.data.message,{title:" ",hideHeaderClose:!1,okTitle:this.$root.translation("ID_OK"),okVariant:"success",okOnly:!0}),void this.$bvModal.msgBoxOk(this.$root.translation("ID_SUCCESSFUL_TEST_CONNECTION"),{title:" ",hideHeaderClose:!1,okTitle:this.$root.translation("ID_OK"),okVariant:"success",okOnly:!0});this.testMessage=t.data.message,this.testStatus=!1,this.buttonLabel=this.$root.translation("ID_TEST"),this.$bvModal.show("messageForFailedTest")}).catch(t=>{}).finally(()=>{})}else this.$bvModal.msgBoxOk(this.$root.translation("ID_NAME_EXISTS"),{title:" ",hideHeaderClose:!1,okTitle:this.$root.translation("ID_OK"),okVariant:"success",okOnly:!0}).then(t=>{}).catch(t=>{})}).catch(t=>{}).finally(()=>{})},matchAttributesToSync(){this.$emit("matchAttributesToSync")},setGridText(t){this.form.gridText=t},getGridText(){return this.form.gridText},optionSaveButton(t){this.$refs["fas-b-modal-upload-file"].hide(),t.AUTH_SOURCE_UID=this.form.uid;let e=this.rowToForm(t);this.load(e)},rowToForm(t){let e=[];if("AUTH_SOURCE_GRID_ATTRIBUTE"in t)for(let r in t.AUTH_SOURCE_GRID_ATTRIBUTE){let o=t.AUTH_SOURCE_GRID_ATTRIBUTE[r]||{};e.push({attributeRole:o.attributeRole||"",attributeUser:o.attributeUser||"",attributeLdap:o.attributeLdap||""})}var o={uid:t.AUTH_SOURCE_UID,availableAuthenticationSource:t.AUTH_SOURCE_PROVIDER,name:t.AUTH_SOURCE_NAME,type:t.LDAP_TYPE,serverAddress:t.AUTH_SOURCE_SERVER_NAME,port:t.AUTH_SOURCE_PORT,enableAutomaticRegister:t.AUTH_SOURCE_AUTO_REGISTER,anonymous:t.AUTH_ANONYMOUS,enableTLS:t.AUTH_SOURCE_ENABLED_TLS,baseDN:t.AUTH_SOURCE_BASE_DN,userName:t.AUTH_SOURCE_SEARCH_USER,password:t.AUTH_SOURCE_PASSWORD,userIdentifier:t.AUTH_SOURCE_IDENTIFIER_FOR_USER,filterToSearchUsers:t.AUTH_SOURCE_USERS_FILTER,gridText:JSON.stringify(e),signInPolicyForLDAP:t.AUTH_SOURCE_SIGNIN_POLICY_FOR_LDAP,inactiveUsers:t.AUTH_SOURCE_RETIRED_OU,role:t.USR_ROLE||"",groupIdentifier:t.AUTH_SOURCE_IDENTIFIER_FOR_USER_GROUP||"",userClassIdentifier:t.AUTH_SOURCE_IDENTIFIER_FOR_USER_CLASS||"",groupClassIdentifier:t.GROUP_CLASS_IDENTIFIER||"",departmentClassIdentifier:t.DEPARTMENT_CLASS_IDENTIFIER||""};return o},formToFormData(t){let e=new FormData;return e.append("AUTH_SOURCE_UID",t.uid),e.append("AUTH_SOURCE_NAME",t.name),e.append("AUTH_SOURCE_PROVIDER",t.availableAuthenticationSource),e.append("LDAP_TYPE",t.type),e.append("AUTH_SOURCE_AUTO_REGISTER",t.enableAutomaticRegister),e.append("AUTH_SOURCE_SERVER_NAME",t.serverAddress),e.append("AUTH_SOURCE_PORT",t.port),e.append("AUTH_SOURCE_ENABLED_TLS",t.enableTLS),e.append("AUTH_SOURCE_BASE_DN",t.baseDN),e.append("AUTH_ANONYMOUS",t.anonymous),e.append("AUTH_SOURCE_SEARCH_USER",t.userName),e.append("AUTH_SOURCE_PASSWORD",t.password),e.append("AUTH_SOURCE_IDENTIFIER_FOR_USER",t.userIdentifier),e.append("AUTH_SOURCE_USERS_FILTER",t.filterToSearchUsers),e.append("AUTH_SOURCE_RETIRED_OU",t.inactiveUsers),e.append("AUTH_SOURCE_ATTRIBUTE_IDS","USR_FIRSTNAME|USR_LASTNAME|USR_EMAIL|USR_DUE_DATE|USR_STATUS|USR_STATUS_ID|USR_ADDRESS|USR_PHONE|USR_FAX|USR_CELLULAR|USR_ZIP_CODE|USR_POSITION|USR_BIRTHDAY|USR_COST_BY_HOUR|USR_UNIT_COST|USR_PMDRIVE_FOLDER_UID|USR_BOOKMARK_START_CASES|USR_TIME_ZONE|USR_DEFAULT_LANG|USR_LAST_LOGIN|"),e.append("AUTH_SOURCE_SHOWGRID",""),e.append("AUTH_SOURCE_GRID_TEXT",t.gridText),e.append("AUTH_SOURCE_SHOWGRID-checkbox","on"),e.append("AUTH_SOURCE_SIGNIN_POLICY_FOR_LDAP",t.signInPolicyForLDAP),e.append("USR_ROLE",t.role),e.append("AUTH_SOURCE_IDENTIFIER_FOR_USER_GROUP",t.groupIdentifier),e.append("AUTH_SOURCE_IDENTIFIER_FOR_USER_CLASS",t.userClassIdentifier),e.append("GROUP_CLASS_IDENTIFIER",t.groupClassIdentifier),e.append("DEPARTMENT_CLASS_IDENTIFIER",t.departmentClassIdentifier),e.append("CUSTOM_CHECK_AUTH_SOURCE_IDENTIFIER_FOR_USER",0),e.append("CUSTOM_CHECK_AUTH_SOURCE_IDENTIFIER_FOR_USER_GROUP",0),e.append("CUSTOM_CHECK_DEPARTMENT_CLASS_IDENTIFIER",0),e.append("CUSTOM_CHECK_GROUP_CLASS_IDENTIFIER",0),e.append("CUSTOM_AUTH_SOURCE_IDENTIFIER_FOR_USER",""),e.append("CUSTOM_AUTH_SOURCE_IDENTIFIER_FOR_USER_GROUP",""),e.append("CUSTOM_DEPARTMENT_CLASS_IDENTIFIER",""),e.append("CUSTOM_GROUP_CLASS_IDENTIFIER",""),e},changeTypeForm(t){"ad"===t&&(this.form.userIdentifier="samaccountname",this.form.groupIdentifier="member",this.form.signInPolicyForLDAP="1"),"ldap"===t&&(this.form.userIdentifier="uid",this.form.groupIdentifier="memberuid",this.form.signInPolicyForLDAP="0"),"ds"===t&&(this.form.userIdentifier="uid",this.form.groupIdentifier="uniquemember",this.form.signInPolicyForLDAP="0")},getRolesList(){let t=new FormData;return t.append("action","rolesList"),U.a.post(this.$root.baseUrl()+"users/usersAjax",t).then(t=>{let e=[];for(let o in t.data)e.push({value:t.data[o].ROL_UID,text:t.data[o].ROL_CODE});this.roles=e}).catch(t=>{}).finally(()=>{})}},watch:{form:{handler(){this.testStatus=!1,this.buttonLabel=this.$root.translation("ID_TEST"),this.showMathAttributes=!(""===this.form.uid)},deep:!0}},mounted(){this.$nextTick((function(){this.getRolesList()}))}},F=H,P=Object(b["a"])(F,y,x,!1,null,"9a7f3924",null),M=P.exports,k={data(){return{title:"#"}},components:{titleSection:m,formAuthenticationSources:M},methods:{setTitle(t){this.title=t},reset(){this.$refs.formAuthenticationSources.reset()},load(t){this.$refs.formAuthenticationSources.load(t)},cancel(){this.reset(),this.$emit("cancel")},rowToForm(t){return this.$refs.formAuthenticationSources.rowToForm(t)},formToFormData(t){return this.$refs.formAuthenticationSources.formToFormData(t)},setGridText(t){this.$refs.formAuthenticationSources.setGridText(t)},getGridText(){return this.$refs.formAuthenticationSources.getGridText()}}},B=k,G=Object(b["a"])(B,$,L,!1,null,"7473988f",null),V=G.exports,j=function(){var t=this,e=t._self._c;return e("div",[e("titleSection",{attrs:{title:t.$root.translation("ID_MATCH_ATTRIBUTES")}}),e("b-form-group",{staticClass:"text-right"},[e("b-link",{attrs:{href:"#"},on:{click:t.connectionSettings}},[t._v(" << "+t._s(t.$root.translation("ID_CONNECTION_SETTINGS")))])],1),e("b-form-group",{staticClass:"float-right"},[e("b-button",{attrs:{variant:"success"},on:{click:t.addAttribute}},[t._v(t._s(t.$root.translation("ID_ADD_ATTRIBUTE")))])],1),e("v-client-table",{attrs:{columns:t.columns,options:t.options,data:t.rows},scopedSlots:t._u([{key:"icons",fn:function(o){return e("div",{},[e("b-button-group",[e("b-button",{directives:[{name:"b-tooltip",rawName:"v-b-tooltip.hover",modifiers:{hover:!0}}],attrs:{title:t.$root.translation("ID_EDIT_ATTRIBUTE"),variant:"light"},on:{click:function(e){return t.editAttribute(o.row,o.index)}}},[e("b-icon",{attrs:{icon:"pencil-fill","aria-hidden":"true",variant:"info"}})],1),e("b-button",{directives:[{name:"b-tooltip",rawName:"v-b-tooltip.hover",modifiers:{hover:!0}}],attrs:{title:t.$root.translation("ID_DELETE_ATTRIBUTE"),variant:"light"},on:{click:function(e){return t.deleteAttribute(o.index,o.row)}}},[e("b-icon",{attrs:{icon:"trash","aria-hidden":"true",variant:"danger"}})],1)],1)],1)}}])}),e("b-modal",{attrs:{id:"messageForDeleteAttribute","ok-title":t.$root.translation("ID_YES"),"ok-variant":"success","cancel-title":t.$root.translation("ID_NO"),"cancel-variant":"danger"},on:{ok:t.deleteAttributeProcess}},[t._v(" "+t._s(t.$root.translation("ID_ARE_YOU_SURE_TO_DELETE_ATTRIBUTE_PLEASE_CONFIRM",[t.selectedRowName]))+" ")])],1)},q=[],Y={components:{titleSection:m},data(){return{selectedRowIndex:0,selectedRowName:"",columns:["attributeRole","attributeUser","attributeLdap","icons"],options:{headings:{attributeRole:this.$root.translation("ID_ROLE"),attributeUser:this.$root.translation("ID_USER_FIELD"),attributeLdap:this.$root.translation("ID_LDAP_FIELD"),icons:""},sortable:["attributeLdap","attributeRole","attributeUser"],filterable:["attributeLdap","attributeRole","attributeUser"],texts:{filter:"",filterPlaceholder:this.$root.translation("ID_EMPTY_SEARCH"),count:this.$root.translation("ID_SHOWING_FROM_RECORDS_COUNT"),noResults:this.$root.translation("ID_NO_MATCHING_RECORDS"),loading:this.$root.translation("ID_LOADING_GRID")},perPage:5,perPageValues:[],sortIcon:{is:"glyphicon-sort",base:"glyphicon",up:"glyphicon-chevron-up",down:"glyphicon-chevron-down"}},rows:[]}},methods:{setRows(t){this.rows=t},addAttribute(){this.$emit("addAttribute")},editAttribute(t,e){this.$emit("editAttribute",t,e)},deleteAttribute(t,e){this.selectedRowName=e.attributeLdap,this.selectedRowIndex=t,this.$bvModal.show("messageForDeleteAttribute")},deleteAttributeProcess(){this.rows.splice(this.selectedRowIndex-1,1)},saveRow(t){let e=Object.assign({},t);if(null===e.index)delete e.index,this.rows.push(e);else{let t=e.index;delete e.index,Object.assign(this.rows[t-1],e)}},connectionSettings(){this.$emit("connectionSettings",this.rows)}}},z=Y,W=Object(b["a"])(z,j,q,!1,null,"179fc62b",null),K=W.exports,J=function(){var t=this,e=t._self._c;return e("div",[e("titleSection",{attrs:{title:t.$root.translation("ID_NEW_MATCHED_ATTRIBUTE")}}),e("b-form",{on:{submit:function(e){return e.stopPropagation(),e.preventDefault(),t.onSave.apply(null,arguments)}}},[e("b-container",{attrs:{fluid:""}},[e("b-row",[e("b-col",[e("b-form-group",{attrs:{label:t.$root.translation("ID_ROLE")}},[e("b-form-select",{attrs:{options:t.roles},on:{change:t.changeRoles},model:{value:t.form.attributeRole,callback:function(e){t.$set(t.form,"attributeRole",e)},expression:"form.attributeRole"}})],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_PROCESSMAKER_USER_FIELD"),description:""}},[e("b-form-select",{attrs:{options:t.userAttributes},model:{value:t.form.attributeUser,callback:function(e){t.$set(t.form,"attributeUser",e)},expression:"form.attributeUser"}})],1),e("b-form-group",{attrs:{label:t.$root.translation("ID_LDAP_ATTRIBUTE")}},[e("b-form-input",{attrs:{state:!0,autocomplete:"off"},model:{value:t.form.attributeLdap,callback:function(e){t.$set(t.form,"attributeLdap",e)},expression:"form.attributeLdap"}}),e("b-form-invalid-feedback",[t._v(t._s(t.$root.translation("ID_IS_REQUIRED")))])],1)],1)],1),e("b-row",{staticClass:"text-right"},[e("b-col",[e("b-form-group",[e("b-button",{attrs:{variant:"danger"},on:{click:function(e){return t.$emit("cancel")}}},[t._v(t._s(t.$root.translation("ID_CANCEL")))]),t._v(" "),e("b-button",{attrs:{type:"submit",variant:"success"}},[t._v(t._s(t.$root.translation("ID_SAVE")))])],1)],1)],1)],1)],1)],1)},Q=[],Z={mixins:[R["validationMixin"]],components:{titleSection:m},validations:{form:{attributeLdap:{required:I["required"]}}},data(){return{form:{index:null,attributeLdap:"",attributeRole:"",attributeUser:""},roles:[{value:"",text:"All"}],userAttributes:[]}},mounted(){let t=this.getRolesList();t.then(t=>{this.changeRoles()})},methods:{validateState(t){const{$dirty:e,$error:o}=this.$v.form[t];return e?!o:null},onSave(){this.$v.form.$touch(),this.$v.form.$anyError||this.$emit("save",this.form)},load(t,e){this.form.index=e,this.form.attributeLdap=t.attributeLdap,this.form.attributeRole=t.attributeRole,this.form.attributeUser=t.attributeUser},reset(){this.form={index:null,attributeLdap:"",attributeRole:"",attributeUser:""}},changeRoles(){let t=new FormData;return t.append("option","listByRol"),t.append("rolCode",this.form.attributeRole),U.a.post(this.$root.baseUrl()+"userExtendedAttributes/index",t).then(t=>{let e=[{value:"",text:this.$root.translation("ID_SELECTED_FIELD")}];for(let o in t.data.data)e.push({value:t.data.data[o].value,text:t.data.data[o].text});this.userAttributes=e}).catch(t=>{}).finally(()=>{})},getRolesList(){let t=new FormData;return t.append("request","allRoles"),U.a.post(this.$root.baseUrl()+"roles/roles_Ajax",t).then(t=>{let e=[{value:"",text:this.$root.translation("ID_ALL")}];for(let o in t.data)e.push({value:t.data[o].ROL_CODE,text:t.data[o].ROL_NAME});this.roles=e}).catch(t=>{}).finally(()=>{})}}},X=Z,tt=Object(b["a"])(X,J,Q,!1,null,"6d14953e",null),et=tt.exports,ot={name:"app",components:{authenticationSources:N,newConnection:V,matchAttributes:K,newMatchedAttribute:et},data(){return{views:{authenticationSources:!0,newConnection:!1,matchAttributes:!1,newMatchedAttribute:!1},selectedRow:null}},methods:{showView(t){for(let e in this.views)this.views[e]=!1;this.views[t]=!0},newConnection(){this.$refs.newConnection.reset(),this.$refs.newConnection.setTitle(this.$root.translation("ID_NEW_AUTHENTICATION_SOURCES")),this.showView("newConnection")},editSettings(t){this.selectedRow=t;let e=this.$refs.newConnection.rowToForm(t);this.$refs.newConnection.setTitle(this.$root.translation("ID_EDIT_AUTHENTICATION_SOURCES")),this.$refs.newConnection.reset(),this.$refs.newConnection.load(e),this.showView("newConnection")},optionSaveButton(t){t.AUTH_SOURCE_UID="";let e=this.$refs.newConnection.rowToForm(t);this.$refs.newConnection.setTitle(this.$root.translation("ID_NEW_AUTHENTICATION_SOURCES")),this.$refs.newConnection.reset(),this.$refs.newConnection.load(e),this.showView("newConnection")},optionUpdateButton(t,e){t.AUTH_SOURCE_UID=e.AUTH_SOURCE_UID,this.selectedRow=t;let o=this.$refs.newConnection.rowToForm(t);this.$refs.newConnection.setTitle(this.$root.translation("ID_EDIT_AUTHENTICATION_SOURCES")),this.$refs.newConnection.reset(),this.$refs.newConnection.load(o),this.showView("newConnection")},optionNewButton(t){t.AUTH_SOURCE_UID="";let e=this.$refs.newConnection.rowToForm(t);this.$refs.newConnection.setTitle(this.$root.translation("ID_NEW_AUTHENTICATION_SOURCES")),this.$refs.newConnection.reset(),this.$refs.newConnection.load(e),this.showView("newConnection")},saveNewConnection(t){let e=this.$refs.newConnection.formToFormData(t);U.a.post(this.$root.baseUrl()+"authSources/authSourcesProxy?action=authSourcesSave",e).then(t=>{this.$refs.authenticationSources.refresh()}).catch(t=>{}).finally(()=>{}),this.showView("authenticationSources")},matchAttributesToSync(){let t=this.$refs.newConnection.getGridText(),e=JSON.parse(t);this.showView("matchAttributes"),this.$refs.matchAttributes.setRows(e)},addAttribute(){this.$refs.newMatchedAttribute.reset(),this.showView("newMatchedAttribute")},editAttribute(t,e){this.$refs.newMatchedAttribute.load(t,e),this.showView("newMatchedAttribute")},saveNewMatchedAttribute(t){this.$refs.matchAttributes.saveRow(t),this.showView("matchAttributes")},cancelNewMatchedAttribute(){this.showView("matchAttributes")},connectionSettings(t){let e=JSON.stringify(t);this.$refs.newConnection.setGridText(e),this.showView("newConnection")}}},rt=ot,it=(o("bb66"),Object(b["a"])(rt,s,l,!1,null,null,null)),at=it.exports;r["default"].config.productionTip=!1,r["default"].use(i["a"]),r["default"].use(a["a"]),r["default"].use(n["ClientTable"],{},!1,"bootstrap4",{}),r["default"].use(n["ServerTable"],{},!1,"bootstrap4",{}),new r["default"]({render:t=>t(at),methods:{translation(t,e){if("TRANSLATIONS"in window&&t in window.TRANSLATIONS&&(t=window.TRANSLATIONS[t],void 0!=e&&"length"in e))for(let o=0;o\n \n
\n {{title}}\n \n \n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./titleSection.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./titleSection.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./titleSection.vue?vue&type=template&id=4605384b&scoped=true\"\nimport script from \"./titleSection.vue?vue&type=script&lang=js\"\nexport * from \"./titleSection.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4605384b\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('b-form',{on:{\"submit\":function($event){$event.stopPropagation();$event.preventDefault();return _vm.onSave.apply(null, arguments)}}},[_c('b-container',{attrs:{\"fluid\":\"\"}},[_c('b-row',[_c('b-col',[(_vm.newName==true)?_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_PLEASE_ADD_THE_FILE_SETTINGS_TO_BE_UPLOADED')}},[_c('b-form-file',{attrs:{\"state\":_vm.validateState('connectionSettings'),\"placeholder\":_vm.$root.translation('ID_CHOOSE_A_FILE_OR_DROP_IT_HERE'),\"drop-placeholder\":_vm.$root.translation('ID_DROP_FILE_HERE')},on:{\"change\":_vm.change},model:{value:(_vm.form.connectionSettings),callback:function ($$v) {_vm.$set(_vm.form, \"connectionSettings\", $$v)},expression:\"form.connectionSettings\"}}),_c('b-form-invalid-feedback',[_vm._v(_vm._s(_vm.$root.translation('ID_IS_REQUIRED')))])],1):_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_CONNECTION_WITH_THE_SAME_NAME_PLEASE_SELECT_AN_OPTION',[_vm.fileContent.AUTH_SOURCE_NAME])}},[_c('b-form-file',{attrs:{\"state\":_vm.validateState('connectionSettings'),\"placeholder\":_vm.$root.translation('ID_CHOOSE_A_FILE_OR_DROP_IT_HERE'),\"drop-placeholder\":_vm.$root.translation('ID_DROP_FILE_HERE')},on:{\"change\":_vm.change},model:{value:(_vm.form.connectionSettings),callback:function ($$v) {_vm.$set(_vm.form, \"connectionSettings\", $$v)},expression:\"form.connectionSettings\"}}),_c('b-form-invalid-feedback',[_vm._v(_vm._s(_vm.$root.translation('ID_IS_REQUIRED')))])],1)],1)],1),_c('b-row',{staticClass:\"text-center\"},[_c('b-col',[(_vm.newName==true)?_c('b-form-group',[_c('b-button',{attrs:{\"variant\":\"danger\"},on:{\"click\":function($event){return _vm.$emit('cancel')}}},[_vm._v(_vm._s(_vm.$root.translation('ID_CANCEL')))]),_vm._v(\" \"),_c('b-button',{attrs:{\"type\":\"submit\",\"variant\":\"success\",\"disabled\":_vm.isDisabled,\"id\":\"save\"}},[_vm._v(_vm._s(_vm.$root.translation('ID_SAVE')))])],1):_c('b-form-group',[_c('b-button',{attrs:{\"variant\":\"danger\"},on:{\"click\":function($event){return _vm.$emit('cancel')}}},[_vm._v(_vm._s(_vm.$root.translation('ID_CANCEL')))]),_vm._v(\" \"),_c('b-button',{attrs:{\"type\":\"submit\",\"variant\":\"primary\",\"disabled\":_vm.isDisabled,\"id\":\"update\"}},[_vm._v(_vm._s(_vm.$root.translation('ID_UPDATE_SETTINGS')))]),_vm._v(\" \"),_c('b-button',{attrs:{\"type\":\"submit\",\"variant\":\"success\",\"disabled\":_vm.isDisabled,\"id\":\"new\"}},[_vm._v(_vm._s(_vm.$root.translation('ID_NEW_CONNECTION')))])],1)],1)],1)],1)],1),_c('b-modal',{attrs:{\"id\":\"messageForInvalidFileExtension\",\"ok-only\":\"\",\"static\":\"\"}},[_vm._v(_vm._s(_vm.$root.translation('ID_PMG_SELECT_FILE')))]),_c('b-modal',{attrs:{\"id\":\"messageForInvalidFileFormat\",\"ok-only\":\"\",\"static\":\"\"}},[_vm._v(_vm._s(_vm.$root.translation('ID_INVALID_DATA')))])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n \n \n \n \n \n \n \n {{$root.translation('ID_IS_REQUIRED')}} \n \n \n \n \n {{$root.translation('ID_IS_REQUIRED')}} \n \n \n \n \n \n \n {{$root.translation('ID_CANCEL')}} \n {{$root.translation('ID_SAVE')}} \n \n \n {{$root.translation('ID_CANCEL')}} \n {{$root.translation('ID_UPDATE_SETTINGS')}} \n {{$root.translation('ID_NEW_CONNECTION')}} \n \n \n \n \n \n {{$root.translation('ID_PMG_SELECT_FILE')}} \n {{$root.translation('ID_INVALID_DATA')}} \n
\n \n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./formUploadSource.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./formUploadSource.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./formUploadSource.vue?vue&type=template&id=d2fa09b4&scoped=true\"\nimport script from \"./formUploadSource.vue?vue&type=script&lang=js\"\nexport * from \"./formUploadSource.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"d2fa09b4\",\n null\n \n)\n\nexport default component.exports","\n \n
\n
\n \n {{$root.translation('ID_IMPORT_CONNECTION')}}\n \n \n {{$root.translation('ID_NEW_CONNECTION')}}\n \n \n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n
\n \n \n \n
\n \n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./authenticationSources.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./authenticationSources.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./authenticationSources.vue?vue&type=template&id=3dc7fda5&scoped=true\"\nimport script from \"./authenticationSources.vue?vue&type=script&lang=js\"\nexport * from \"./authenticationSources.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3dc7fda5\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('titleSection',{attrs:{\"title\":_vm.title}}),_c('formAuthenticationSources',{ref:\"formAuthenticationSources\",on:{\"matchAttributesToSync\":function($event){return _vm.$emit('matchAttributesToSync',$event)},\"cancel\":_vm.cancel,\"save\":function($event){return _vm.$emit('save',$event)}}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('b-form',{on:{\"submit\":function($event){$event.stopPropagation();$event.preventDefault();return _vm.onSave.apply(null, arguments)}}},[_c('b-container',{attrs:{\"fluid\":\"\"}},[_c('b-row',[_c('b-col',[_c('b-form-group',{directives:[{name:\"show\",rawName:\"v-show\",value:(false),expression:\"false\"}],attrs:{\"label\":_vm.$root.translation('ID_AVAILABLE_AUTHENTICATION_SOURCES'),\"description\":\"\"}},[_c('b-form-select',{directives:[{name:\"show\",rawName:\"v-show\",value:(false),expression:\"false\"}],attrs:{\"options\":_vm.availableAuthenticationSources},model:{value:(_vm.form.availableAuthenticationSource),callback:function ($$v) {_vm.$set(_vm.form, \"availableAuthenticationSource\", $$v)},expression:\"form.availableAuthenticationSource\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_NAME')}},[_c('b-form-input',{attrs:{\"state\":_vm.validateState('name'),\"autocomplete\":\"off\"},model:{value:(_vm.form.name),callback:function ($$v) {_vm.$set(_vm.form, \"name\", $$v)},expression:\"form.name\"}}),_c('b-form-invalid-feedback',[_vm._v(_vm._s(_vm.$root.translation('ID_IS_REQUIRED')))])],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_TYPE')}},[_c('b-form-select',{attrs:{\"options\":_vm.types},on:{\"change\":_vm.changeTypeForm},model:{value:(_vm.form.type),callback:function ($$v) {_vm.$set(_vm.form, \"type\", $$v)},expression:\"form.type\"}})],1),(_vm.form.type==='ad')?_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_REQUIRE_SIGN_IN_POLICY_FOR_LDAP')}},[_c('b-form-checkbox',{attrs:{\"value\":\"1\",\"unchecked-value\":\"0\"},model:{value:(_vm.form.signInPolicyForLDAP),callback:function ($$v) {_vm.$set(_vm.form, \"signInPolicyForLDAP\", $$v)},expression:\"form.signInPolicyForLDAP\"}})],1):_vm._e(),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_SERVER_ADDRESS')}},[_c('b-form-input',{attrs:{\"state\":_vm.validateState('serverAddress'),\"autocomplete\":\"off\"},model:{value:(_vm.form.serverAddress),callback:function ($$v) {_vm.$set(_vm.form, \"serverAddress\", $$v)},expression:\"form.serverAddress\"}}),_c('b-form-invalid-feedback',[_vm._v(_vm._s(_vm.$root.translation('ID_IS_REQUIRED')))])],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_PORT')}},[_c('b-input-group',{scopedSlots:_vm._u([{key:\"append\",fn:function(){return [_c('b-input-group-text',{staticClass:\"p-0\"},[_c('b-button',{staticClass:\"border-0\",attrs:{\"size\":\"md\",\"variant\":\"outline-light\"},on:{\"click\":function($event){_vm.disabledField.port=!_vm.disabledField.port;}}},[_c('b-icon',{attrs:{\"icon\":\"pencil-fill\",\"aria-hidden\":\"true\",\"variant\":\"primary\"}})],1)],1)]},proxy:true}])},[_c('b-form-input',{attrs:{\"state\":_vm.validateState('port'),\"disabled\":_vm.disabledField.port,\"autocomplete\":\"off\"},model:{value:(_vm.form.port),callback:function ($$v) {_vm.$set(_vm.form, \"port\", $$v)},expression:\"form.port\"}}),_c('b-form-invalid-feedback',[_vm._v(_vm._s(_vm.$root.translation('ID_IS_REQUIRED')))])],1)],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_ENABLE_AUTOMATIC_REGISTER'),\"label-cols-lg\":\"8\"}},[_c('b-form-checkbox',{attrs:{\"value\":\"1\",\"unchecked-value\":\"0\",\"switch\":\"\"},model:{value:(_vm.form.enableAutomaticRegister),callback:function ($$v) {_vm.$set(_vm.form, \"enableAutomaticRegister\", $$v)},expression:\"form.enableAutomaticRegister\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_ANONYMOUS'),\"label-cols-lg\":\"8\"}},[_c('b-form-checkbox',{attrs:{\"value\":\"1\",\"unchecked-value\":\"0\",\"switch\":\"\"},model:{value:(_vm.form.anonymous),callback:function ($$v) {_vm.$set(_vm.form, \"anonymous\", $$v)},expression:\"form.anonymous\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_ENABLED_TLS'),\"label-cols-lg\":\"8\"}},[_c('b-form-checkbox',{attrs:{\"value\":\"1\",\"unchecked-value\":\"0\",\"switch\":\"\"},model:{value:(_vm.form.enableTLS),callback:function ($$v) {_vm.$set(_vm.form, \"enableTLS\", $$v)},expression:\"form.enableTLS\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_BASE_DN')}},[_c('b-form-input',{attrs:{\"placeholder\":\"dc=business,dc=net\",\"autocomplete\":\"off\"},model:{value:(_vm.form.baseDN),callback:function ($$v) {_vm.$set(_vm.form, \"baseDN\", $$v)},expression:\"form.baseDN\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_INACTIVE_USERS')}},[_c('b-form-input',{attrs:{\"autocomplete\":\"off\"},model:{value:(_vm.form.inactiveUsers),callback:function ($$v) {_vm.$set(_vm.form, \"inactiveUsers\", $$v)},expression:\"form.inactiveUsers\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_ROLE')}},[_c('b-form-select',{attrs:{\"options\":_vm.roles},model:{value:(_vm.form.role),callback:function ($$v) {_vm.$set(_vm.form, \"role\", $$v)},expression:\"form.role\"}})],1)],1),_c('b-col',[_c('b-form-group',{staticClass:\"text-right\"},[_c('b-button',{attrs:{\"variant\":\"success\"},on:{\"click\":function($event){return _vm.$refs['fas-b-modal-upload-file'].show();}}},[_vm._v(_vm._s(_vm.$root.translation('ID_IMPORT_SETTINGS')))])],1),_c('b-form-group',{staticClass:\"text-right\"},[_c('b-link',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showMathAttributes || _vm.testStatus),expression:\"showMathAttributes || testStatus\"}],attrs:{\"href\":\"#\"},on:{\"click\":_vm.matchAttributesToSync}},[_vm._v(_vm._s(_vm.$root.translation('ID_MATCH_ATTRIBUTES_TO_SYNC'))+\" >>\")])],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_USERNAME')}},[_c('b-form-input',{attrs:{\"state\":_vm.validateState('userName'),\"autocomplete\":\"off\"},model:{value:(_vm.form.userName),callback:function ($$v) {_vm.$set(_vm.form, \"userName\", $$v)},expression:\"form.userName\"}}),_c('b-form-invalid-feedback',[_vm._v(_vm._s(_vm.$root.translation('ID_IS_REQUIRED')))])],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_PASSWORD')}},[_c('b-form-input',{attrs:{\"state\":_vm.validateState('password'),\"type\":\"password\",\"autocomplete\":\"off\"},model:{value:(_vm.form.password),callback:function ($$v) {_vm.$set(_vm.form, \"password\", $$v)},expression:\"form.password\"}}),_c('b-form-invalid-feedback',[_vm._v(_vm._s(_vm.$root.translation('ID_IS_REQUIRED')))])],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_USER_IDENTIFIER')}},[_c('b-input-group',{scopedSlots:_vm._u([{key:\"append\",fn:function(){return [_c('b-input-group-text',{staticClass:\"p-0\"},[_c('b-button',{staticClass:\"border-0\",attrs:{\"size\":\"md\",\"variant\":\"outline-light\"},on:{\"click\":function($event){_vm.disabledField.userIdentifier=!_vm.disabledField.userIdentifier;}}},[_c('b-icon',{attrs:{\"icon\":\"pencil-fill\",\"aria-hidden\":\"true\",\"variant\":\"primary\"}})],1)],1)]},proxy:true}])},[_c('b-form-input',{attrs:{\"autocomplete\":\"off\",\"disabled\":_vm.disabledField.userIdentifier},model:{value:(_vm.form.userIdentifier),callback:function ($$v) {_vm.$set(_vm.form, \"userIdentifier\", $$v)},expression:\"form.userIdentifier\"}})],1)],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_GROUP_IDENTIFIER')}},[_c('b-input-group',{scopedSlots:_vm._u([{key:\"append\",fn:function(){return [_c('b-input-group-text',{staticClass:\"p-0\"},[_c('b-button',{staticClass:\"border-0\",attrs:{\"size\":\"md\",\"variant\":\"outline-light\"},on:{\"click\":function($event){_vm.disabledField.groupIdentifier=!_vm.disabledField.groupIdentifier;}}},[_c('b-icon',{attrs:{\"icon\":\"pencil-fill\",\"aria-hidden\":\"true\",\"variant\":\"primary\"}})],1)],1)]},proxy:true}])},[_c('b-form-input',{attrs:{\"autocomplete\":\"off\",\"disabled\":_vm.disabledField.groupIdentifier},model:{value:(_vm.form.groupIdentifier),callback:function ($$v) {_vm.$set(_vm.form, \"groupIdentifier\", $$v)},expression:\"form.groupIdentifier\"}})],1)],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_FILTER_TO_SEARCH_USERS')}},[_c('b-form-input',{attrs:{\"autocomplete\":\"off\"},model:{value:(_vm.form.filterToSearchUsers),callback:function ($$v) {_vm.$set(_vm.form, \"filterToSearchUsers\", $$v)},expression:\"form.filterToSearchUsers\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_USER_CLASS_IDENTIFIER')}},[_c('b-input-group',{scopedSlots:_vm._u([{key:\"append\",fn:function(){return [_c('b-input-group-text',{staticClass:\"p-0\"},[_c('b-button',{staticClass:\"border-0\",attrs:{\"size\":\"md\",\"variant\":\"outline-light\"},on:{\"click\":function($event){_vm.disabledField.userClassIdentifier=!_vm.disabledField.userClassIdentifier;}}},[_c('b-icon',{attrs:{\"icon\":\"pencil-fill\",\"aria-hidden\":\"true\",\"variant\":\"primary\"}})],1)],1)]},proxy:true}])},[_c('b-form-input',{attrs:{\"disabled\":_vm.disabledField.userClassIdentifier,\"autocomplete\":\"off\"},model:{value:(_vm.form.userClassIdentifier),callback:function ($$v) {_vm.$set(_vm.form, \"userClassIdentifier\", $$v)},expression:\"form.userClassIdentifier\"}})],1)],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_GROUP_CLASS_IDENTIFIER')}},[_c('b-input-group',{scopedSlots:_vm._u([{key:\"append\",fn:function(){return [_c('b-input-group-text',{staticClass:\"p-0\"},[_c('b-button',{staticClass:\"border-0\",attrs:{\"size\":\"md\",\"variant\":\"outline-light\"},on:{\"click\":function($event){_vm.disabledField.groupClassIdentifier=!_vm.disabledField.groupClassIdentifier;}}},[_c('b-icon',{attrs:{\"icon\":\"pencil-fill\",\"aria-hidden\":\"true\",\"variant\":\"primary\"}})],1)],1)]},proxy:true}])},[_c('b-form-input',{attrs:{\"disabled\":_vm.disabledField.groupClassIdentifier,\"autocomplete\":\"off\"},model:{value:(_vm.form.groupClassIdentifier),callback:function ($$v) {_vm.$set(_vm.form, \"groupClassIdentifier\", $$v)},expression:\"form.groupClassIdentifier\"}})],1)],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_DEPARTMENT_CLASS_IDENTIFIER')}},[_c('b-input-group',{scopedSlots:_vm._u([{key:\"append\",fn:function(){return [_c('b-input-group-text',{staticClass:\"p-0\"},[_c('b-button',{staticClass:\"border-0\",attrs:{\"size\":\"md\",\"variant\":\"outline-light\"},on:{\"click\":function($event){_vm.disabledField.departmentClassIdentifier=!_vm.disabledField.departmentClassIdentifier;}}},[_c('b-icon',{attrs:{\"icon\":\"pencil-fill\",\"aria-hidden\":\"true\",\"variant\":\"primary\"}})],1)],1)]},proxy:true}])},[_c('b-form-input',{attrs:{\"disabled\":_vm.disabledField.departmentClassIdentifier,\"autocomplete\":\"off\"},model:{value:(_vm.form.departmentClassIdentifier),callback:function ($$v) {_vm.$set(_vm.form, \"departmentClassIdentifier\", $$v)},expression:\"form.departmentClassIdentifier\"}})],1)],1)],1)],1),_c('b-row',{staticClass:\"text-right\"},[_c('b-col',[_c('b-form-group',[_c('b-button',{attrs:{\"variant\":\"danger\"},on:{\"click\":function($event){return _vm.$emit('cancel')}}},[_vm._v(_vm._s(_vm.$root.translation('ID_CANCEL')))]),_vm._v(\" \"),_c('b-button',{attrs:{\"type\":\"submit\",\"variant\":\"success\"}},[_vm._v(_vm._s(_vm.buttonLabel))])],1)],1)],1)],1)],1),_c('b-modal',{attrs:{\"id\":\"messageForFailedTest\",\"ok-variant\":\"success\",\"ok-only\":\"\"}},[_vm._v(\" \"+_vm._s(_vm.testMessage)+\" \")]),_c('b-modal',{ref:\"fas-b-modal-upload-file\",attrs:{\"title\":_vm.$root.translation('ID_IMPORT_SETTINGS'),\"hide-footer\":\"\",\"size\":\"lg\"}},[_c('formUploadSource',{ref:\"formUploadSource\",attrs:{\"skipNameValidation\":\"\"},on:{\"cancel\":function($event){_vm.$refs['fas-b-modal-upload-file'].hide();_vm.$refs.formUploadSource.reset();},\"optionSaveButton\":_vm.optionSaveButton}})],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n \n \n \n \n \n \n \n \n \n {{$root.translation('ID_IS_REQUIRED')}} \n \n \n \n \n \n \n \n \n \n {{$root.translation('ID_IS_REQUIRED')}} \n \n \n \n \n \n \n \n \n \n \n \n \n {{$root.translation('ID_IS_REQUIRED')}} \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {{$root.translation('ID_IMPORT_SETTINGS')}} \n \n \n {{$root.translation('ID_MATCH_ATTRIBUTES_TO_SYNC')}} >> \n \n \n \n {{$root.translation('ID_IS_REQUIRED')}} \n \n \n \n {{$root.translation('ID_IS_REQUIRED')}} \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {{$root.translation('ID_CANCEL')}} \n {{buttonLabel}} \n \n \n \n \n \n \n {{testMessage}}\n \n \n \n \n \n
\n \n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./formAuthenticationSources.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./formAuthenticationSources.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./formAuthenticationSources.vue?vue&type=template&id=9a7f3924&scoped=true\"\nimport script from \"./formAuthenticationSources.vue?vue&type=script&lang=js\"\nexport * from \"./formAuthenticationSources.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"9a7f3924\",\n null\n \n)\n\nexport default component.exports","\n \n \n \n
\n \n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./newConnection.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./newConnection.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./newConnection.vue?vue&type=template&id=7473988f&scoped=true\"\nimport script from \"./newConnection.vue?vue&type=script&lang=js\"\nexport * from \"./newConnection.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7473988f\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('titleSection',{attrs:{\"title\":_vm.$root.translation('ID_MATCH_ATTRIBUTES')}}),_c('b-form-group',{staticClass:\"text-right\"},[_c('b-link',{attrs:{\"href\":\"#\"},on:{\"click\":_vm.connectionSettings}},[_vm._v(\" << \"+_vm._s(_vm.$root.translation('ID_CONNECTION_SETTINGS')))])],1),_c('b-form-group',{staticClass:\"float-right\"},[_c('b-button',{attrs:{\"variant\":\"success\"},on:{\"click\":_vm.addAttribute}},[_vm._v(_vm._s(_vm.$root.translation('ID_ADD_ATTRIBUTE')))])],1),_c('v-client-table',{attrs:{\"columns\":_vm.columns,\"options\":_vm.options,\"data\":_vm.rows},scopedSlots:_vm._u([{key:\"icons\",fn:function(props){return _c('div',{},[_c('b-button-group',[_c('b-button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],attrs:{\"title\":_vm.$root.translation('ID_EDIT_ATTRIBUTE'),\"variant\":\"light\"},on:{\"click\":function($event){return _vm.editAttribute(props.row,props.index)}}},[_c('b-icon',{attrs:{\"icon\":\"pencil-fill\",\"aria-hidden\":\"true\",\"variant\":\"info\"}})],1),_c('b-button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],attrs:{\"title\":_vm.$root.translation('ID_DELETE_ATTRIBUTE'),\"variant\":\"light\"},on:{\"click\":function($event){return _vm.deleteAttribute(props.index,props.row)}}},[_c('b-icon',{attrs:{\"icon\":\"trash\",\"aria-hidden\":\"true\",\"variant\":\"danger\"}})],1)],1)],1)}}])}),_c('b-modal',{attrs:{\"id\":\"messageForDeleteAttribute\",\"ok-title\":_vm.$root.translation('ID_YES'),\"ok-variant\":\"success\",\"cancel-title\":_vm.$root.translation('ID_NO'),\"cancel-variant\":\"danger\"},on:{\"ok\":_vm.deleteAttributeProcess}},[_vm._v(\" \"+_vm._s(_vm.$root.translation('ID_ARE_YOU_SURE_TO_DELETE_ATTRIBUTE_PLEASE_CONFIRM',[_vm.selectedRowName]))+\" \")])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n
\n
\n << {{$root.translation('ID_CONNECTION_SETTINGS')}} \n \n
\n {{$root.translation('ID_ADD_ATTRIBUTE')}} \n \n
\n \n \n \n \n \n \n \n \n \n
\n \n
\n {{$root.translation('ID_ARE_YOU_SURE_TO_DELETE_ATTRIBUTE_PLEASE_CONFIRM',[selectedRowName])}}\n \n
\n \n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./matchAttributes.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./matchAttributes.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./matchAttributes.vue?vue&type=template&id=179fc62b&scoped=true\"\nimport script from \"./matchAttributes.vue?vue&type=script&lang=js\"\nexport * from \"./matchAttributes.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"179fc62b\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('titleSection',{attrs:{\"title\":_vm.$root.translation('ID_NEW_MATCHED_ATTRIBUTE')}}),_c('b-form',{on:{\"submit\":function($event){$event.stopPropagation();$event.preventDefault();return _vm.onSave.apply(null, arguments)}}},[_c('b-container',{attrs:{\"fluid\":\"\"}},[_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_ROLE')}},[_c('b-form-select',{attrs:{\"options\":_vm.roles},on:{\"change\":_vm.changeRoles},model:{value:(_vm.form.attributeRole),callback:function ($$v) {_vm.$set(_vm.form, \"attributeRole\", $$v)},expression:\"form.attributeRole\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_PROCESSMAKER_USER_FIELD'),\"description\":\"\"}},[_c('b-form-select',{attrs:{\"options\":_vm.userAttributes},model:{value:(_vm.form.attributeUser),callback:function ($$v) {_vm.$set(_vm.form, \"attributeUser\", $$v)},expression:\"form.attributeUser\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$root.translation('ID_LDAP_ATTRIBUTE')}},[_c('b-form-input',{attrs:{\"state\":true,\"autocomplete\":\"off\"},model:{value:(_vm.form.attributeLdap),callback:function ($$v) {_vm.$set(_vm.form, \"attributeLdap\", $$v)},expression:\"form.attributeLdap\"}}),_c('b-form-invalid-feedback',[_vm._v(_vm._s(_vm.$root.translation('ID_IS_REQUIRED')))])],1)],1)],1),_c('b-row',{staticClass:\"text-right\"},[_c('b-col',[_c('b-form-group',[_c('b-button',{attrs:{\"variant\":\"danger\"},on:{\"click\":function($event){return _vm.$emit('cancel')}}},[_vm._v(_vm._s(_vm.$root.translation('ID_CANCEL')))]),_vm._v(\" \"),_c('b-button',{attrs:{\"type\":\"submit\",\"variant\":\"success\"}},[_vm._v(_vm._s(_vm.$root.translation('ID_SAVE')))])],1)],1)],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {{$root.translation('ID_IS_REQUIRED')}} \n \n \n \n \n \n \n {{$root.translation('ID_CANCEL')}} \n {{$root.translation('ID_SAVE')}} \n \n \n \n \n \n
\n \n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./newMatchedAttribute.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./newMatchedAttribute.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./newMatchedAttribute.vue?vue&type=template&id=6d14953e&scoped=true\"\nimport script from \"./newMatchedAttribute.vue?vue&type=script&lang=js\"\nexport * from \"./newMatchedAttribute.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6d14953e\",\n null\n \n)\n\nexport default component.exports","\n \n \n\n\n\n\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--13-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../node_modules/cache-loader/dist/cjs.js??ref--13-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=451061cc\"\nimport script from \"./App.vue?vue&type=script&lang=js\"\nexport * from \"./App.vue?vue&type=script&lang=js\"\nimport style0 from \"./App.vue?vue&type=style&index=0&id=451061cc&prod&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import Vue from 'vue'\nimport {BootstrapVue, IconsPlugin} from 'bootstrap-vue'\nimport 'bootstrap/dist/css/bootstrap.css'\nimport 'bootstrap-vue/dist/bootstrap-vue.css'\nimport {ClientTable} from 'vue-tables-2'\nimport {ServerTable} from 'vue-tables-2'\nimport App from './App.vue';\n\nVue.config.productionTip = false\nVue.use(BootstrapVue)\nVue.use(IconsPlugin)\nVue.use(ClientTable, {}, false, 'bootstrap4', {});\nVue.use(ServerTable, {}, false, 'bootstrap4', {});\n\nnew Vue({\n render: h => h(App),\n methods: {\n translation(text, params) {\n if (\"TRANSLATIONS\" in window && text in window.TRANSLATIONS) {\n text = window.TRANSLATIONS[text];\n if (params != undefined && \"length\" in params) {\n for (let i = 0; i < params.length; i++) {\n text = text.replace(\"{\" + i + \"}\", params[i]);\n }\n }\n }\n return text;\n },\n baseUrl() {\n return \"../\";\n }\n }\n}).$mount('#app');\n","export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&id=451061cc&prod&lang=css\""],"sourceRoot":""}
\ No newline at end of file