/** * Abstracted version of search_users() to work with Moodle 1.8 through 2.0 * * @param int $courseid The ID of the course * @param int $groupid The ID of the group * @param string $searchtext The text to search for * @param string $sort The column sort order * @param string $exceptions Comma separated list of users to exclude from the search * @return array */ function turnitintool_search_users($courseid, $groupid, $searchtext, $sort = '', $exceptions = '') { global $DB; if (is_callable(array($DB, 'count_records')) and !empty($exceptions)) { $explode = explode(",", $exceptions); } else { if (is_callable(array($DB, 'count_records'))) { $explode = array(); } else { $explode = $exceptions; } } return search_users($courseid, $groupid, $searchtext, $sort, $explode); }
} } $previoussearch = (!empty($frm->search) or !empty($frm->previoussearch) && $frm->previoussearch == 1); /// Get all existing subscribers for this forum. if (!($subscribers = forum_subscribed_users($course, $forum, $currentgroup))) { $subscribers = array(); } $subscriberarray = array(); foreach ($subscribers as $subscriber) { $subscriberarray[] = $subscriber->id; } $subscriberlist = implode(',', $subscriberarray); unset($subscriberarray); /// Get search results excluding any users already subscribed if (!empty($frm->searchtext) and $previoussearch) { $searchusers = search_users($course->id, $currentgroup, $frm->searchtext, 'firstname ASC, lastname ASC', $subscriberlist); } /// If no search results then get potential subscribers for this forum excluding users already subscribed if (empty($searchusers)) { if ($currentgroup) { $users = get_group_users($currentgroup, 'firstname ASC, lastname ASC', $subscriberlist); } else { $users = get_course_users($course->id, 'firstname ASC, lastname ASC', $subscriberlist); } if (!$users) { $users = array(); } } $searchtext = isset($frm->searchtext) ? $frm->searchtext : ""; $previoussearch = $previoussearch ? '1' : '0'; print_simple_box_start('center');
<div class="container"> <div class="rightSplit grid-1-1"> <div class="mainStream grid-2-3"> <section id="searchPageContent" class="pageContent"> <?php if ($_GET['scope'] && $_GET['scope'] == member) { ?> <div id="searchMemberWrapper"> <?php $keyword = $_GET['s']; if ($keyword) { $page = 1; if ($_GET['page']) { $page = $_GET['page']; } $result = search_users($keyword . '%', $page); $total = $result->total; $pageIndex = $result->pageIndex; $pageSize = $result->pageSize; $users = (array) $result->users; } ?> <?php if ($keyword && $result->total > 0) { ?> <div class="pagingBox"> Search Results: <strong><?php echo ($pageIndex - 1) * $pageSize + 1; ?> </strong> to
$search_mode = 1; $wanted = htmlspecialchars($_POST['q'], ENT_QUOTES, 'UTF-8'); // suck it, XSS } else { // otherwise, let's keep this off and we'll get the home view $search_mode = 0; } require_once "header.php"; // bootstrap header require_once "config.php"; // ldap server configuration require_once "ldaputils.php"; // ldap search utilities if ($search_mode == 1) { // if we are in search mode $results = search_users($server, $dn, $wanted); // query LDAP... $count = $results['count']; // ... and count the results (users that match) if ($count > 0) { for ($i = 0; $i < $count; $i++) { // for each user that matches... $result = $results[$i]; $user_info = get_user_info($result); // ... get his LDAP info (name, mail, etc) ... echo "<div class=\"panel panel-info center-block panel-large\">\n\t\t\t\t<div class=\"panel-heading\"><span class=\"glyphicon glyphicon glyphicon-user\" aria-hidden=\"true\"> </span> " . $user_info['Name'] . " (" . $user_info['Uid'] . ")</div>\n\t\t\t\t<div class=\"panel-body\"><table class=\"table table-condensed table-hover table-ldap-result\">"; foreach ($user_info as $key => $val) { // .. and show it! echo "<tr><td width=\"20%\"><b>{$key}</b></td><td>{$val}</td></tr>"; } echo "</table></div></div>";
archive_important_date(); break; case 'delete_important_date': delete_important_date(); break; case 'archive_user': archive_user(); break; case 'timeout_check': timeout_check(); break; case 'search_users': search_users(); break; case 'display_user_settings_form': display_user_settings_form(); break; case 'load_merchant_archive': load_merchant_archive(); break; case 'search_docs_filter': search_docs_filter(); break; case 'search_custs_filter': search_custs_filter(); break;
function export_get_attendee($id, $export) { global $login, $EMAIL_FALLBACK_FROM; $request = 'SELECT weu.cal_login, weu.cal_status, we.cal_create_by FROM webcal_entry_user weu LEFT JOIN webcal_entry we ON weu.cal_id = we.cal_id WHERE weu.cal_id = ? AND weu.cal_status <> \'D\''; $att_res = dbi_execute($request, array($id)); $count = 0; $attendee = array(); $entry_array = array(); while ($entry = dbi_fetch_row($att_res)) { $entry_array[$count++] = $entry; } dbi_free_result($att_res); $count = 0; $userlist = user_get_users(); while (list($key, $row) = each($entry_array)) { // $user[0] = cal_firstname, cal_lastname, cal_email, cal_login $userPos = search_users($userlist, $row[0]); if ($userPos == -1) { continue; } else { $user = $userlist[$userPos]; $attendee[$count] = 'ATTENDEE;ROLE='; if (strcmp($export, 'vcal') == 0) { $attendee[$count] .= $row[0] == $row[2] ? 'OWNER;' : 'ATTENDEE;'; } else { $attendee[$count] .= $row[0] == $row[2] ? 'CHAIR;' : 'REQ-PARTICIPANT;'; } if (strcmp($export, 'vcal') == 0) { $attendee[$count] .= 'STATUS='; } else { $attendee[$count] .= 'PARTSTAT='; } switch ($row[1]) { case 'A': $attendee[$count] .= 'ACCEPTED'; break; case 'R': $attendee[$count] .= 'DECLINED'; break; case 'W': $attendee[$count] .= 'NEEDS-ACTION'; break; default: continue; } //end switch if (strcmp($export, 'vcal') == 0) { $attendee[$count] .= ';ENCODING=QUOTED-PRINTABLE:'; if (empty($user['cal_firstname']) && empty($user['cal_lastname'])) { $attendee[$count] .= $user['cal_login'] . '"'; } else { $attendee[$count] .= $user['cal_firstname'] . ' ' . $user['cal_lastname']; } if (!empty($user['cal_email'])) { $attendee[$count] .= '<' . $user['cal_email'] . '>'; } else { $attendee[$count] .= '<' . $EMAIL_FALLBACK_FROM . '>'; } } else { // Use "Full Name <email>" if we have it, just "login" if that's all // we have. if (empty($user['cal_firstname']) && empty($user['cal_lastname'])) { $attendee[$count] .= ';CN="' . $user['cal_login'] . '"'; } else { $attendee[$count] .= ';CN="' . utf8_encode($user['cal_firstname']) . ' ' . utf8_encode($user['cal_lastname']) . '"'; } if (!empty($user['cal_email'])) { $attendee[$count] .= ':MAILTO:' . $user['cal_email']; } else { $attendee[$count] .= ':MAILTO:' . $EMAIL_FALLBACK_FROM; } } $count++; } //end if ( count ( $user ) > 0 ) } //end while return $attendee; }