$org = findOrgByName($_POST["orgName"]); if (!isset($org)) { $group = findGroupByName($_POST["orgName"]); if (!isset($group)) { $pageInfo = "Group/Organization does not exist"; } } $landingPage = "edituser.php?id={$id}"; } if (isset($_GET["groupid"])) { // adds an account to a group $id = $_GET["groupid"]; $pageInfo = "Group does not exist"; $group = findGroupByID($id); if (isset($_POST['userName'])) { $user = findUserByName($_POST["userName"]); } if (!isset($user)) { if (isset($_POST['orgName'])) { $org = findOrgByName($_POST["orgName"]); } if (!isset($org)) { $pageInfo = "User/Org does not exist"; } } $landingPage = "editgroup.php?id={$id}"; } if (isset($user) && isset($org)) { // user in org membership $acct["type"] = "user"; $acct["userid"] = $user["id"];
} else { $response = "<failed>Script failed: Return value: {$result}</failed>"; } $xml = new SimpleXMLElement($response); $success = $xml->getName(); if ($success == 'ok') { echo "<table><tr>"; echo "<th>Login Name</th>"; echo "<th>Email Address</th>"; echo "<th>First Name</th>"; echo "<th>Last Name</th>"; echo "</tr>"; foreach ($xml->children() as $node) { if ($node->getName() == "user") { $form = array("name" => (string) $node->loginName, "password" => "", "status" => "ActiveUser", "email" => (string) $node->email, "firstName" => (string) $node->firstName, "lastName" => (string) $node->lastName, "fullName" => (string) $node->displayName, "company" => (string) $node->company, "comment" => "Imported from Active Directory"); $user = findUserByName($form['name']); if (!isset($user)) { // Create the user in OpenQwaq $uid = createUser($form); $user = $form; } else { $uid = $user['id']; } $acct = findAccountByUserAndOrg($uid, $orgid); if (isset($acct)) { // skip it var_dump($acct); } else { $acct["userid"] = $user["id"]; $acct["userName"] = $user["name"]; $acct["orgid"] = $org["id"];
function importUsersToCompanies($anArray) { global $lastError; $results = array(); //remove comments added to the import file - they start with # $noCommentArray = array(); foreach ($anArray as $record) { if ($record[0][0] != '#') { $noCommentArray[] = $record; } } $companies = getCompanyInformation($noCommentArray); foreach ($noCommentArray as $record) { $values = array(); $values['name'] = $record[1]; $password = $record[2]; if ($password == "") { $password = randomPassword(); } $values['password'] = $password; $values['email'] = $record[1]; $values['status'] = 'ActiveUser'; $values['firstName'] = $record[3]; $values['lastName'] = $record[4]; $values['company'] = $record[0]; $values['companyInfo'] = $companies[$values['company']]; $values['comment'] = $record[6]; $values['sendEmail'] = strtolower($record[7]) == 'true'; $values['role'] = $record[5]; if ($values['role'] == 'member' or strtolower($values['role']) == 'regular user') { $values['role'] = 'user'; } $values['id'] = createUser($values); if (!isset($values['id'])) { $values['createUserError'] = $lastError; $values['id'] = findUserByName($record[1]); $values['id'] = $values['id']['id']; } else { $rs = updateUser($values['id'], $values); if (!$rs) { $values['createUserError'] = 'Could not create password'; } } $result[$record[1]] = $values; } foreach ($result as $user => $values) { global $lastError; $accountValues = array(); $accountValues['userid'] = $values['id']; $accountValues['orgid'] = $values['companyInfo']['id']; $accountValues['userName'] = $user; $accountValues['orgName'] = $values['company']; $accountValues['status'] = 'Invited'; $accountValues['role'] = $values['role']; $accountValues['type'] = 'user'; if (isset($accountValues['orgid']) and isset($accountValues['userid'])) { $accountValues['id'] = createAccount($accountValues); } else { $lastError = '<b>Error: </b>Cannot add ' . $user . ' to ' . $values['company'] . ' because the company does not exist. Please create the company first'; } if (isset($accountValues['id'])) { if ($values['sendEmail']) { sendActivationRequest('', $values); } } else { $accountValues['createAccountError'] = $lastError; } $result[$user]['accounts'][$accountValues['orgName']] = $accountValues; } return $result; }