From 951b22a82931d772ffa6b68cf6f37c1710636419 Mon Sep 17 00:00:00 2001 From: moodler Date: Sat, 10 Jan 2004 16:41:29 +0000 Subject: [PATCH] Completely got rid of user/lib.php - print_user() went to weblib.php and got tidied up - The graphics functions went to lib/gdlib.php See Bug 922 --- lib/weblib.php | 77 ++++++++++++++++++ user/edit.php | 2 +- user/index.php | 67 +++++++-------- user/lib.php | 217 ------------------------------------------------- user/view.php | 7 +- 5 files changed, 109 insertions(+), 261 deletions(-) delete mode 100644 user/lib.php diff --git a/lib/weblib.php b/lib/weblib.php index beccbee144..414a144021 100644 --- a/lib/weblib.php +++ b/lib/weblib.php @@ -1106,6 +1106,83 @@ function print_user_picture($userid, $courseid, $picture, $large=false, $returns } } +function print_user($user, $course) { +/// Prints a summary of a user in a nice little box + + static $string; + static $datestring; + static $countries; + static $isteacher; + + if (empty($string)) { // Cache all the strings for the rest of the page + + $string->email = get_string("email"); + $string->location = get_string("location"); + $string->lastaccess = get_string("lastaccess"); + $string->activity = get_string("activity"); + $string->unenrol = get_string("unenrol"); + $string->loginas = get_string("loginas"); + $string->fullprofile = get_string("fullprofile"); + $string->role = get_string("role"); + $string->name = get_string("name"); + $string->never = get_string("never"); + + $datestring->day = get_string("day"); + $datestring->days = get_string("days"); + $datestring->hour = get_string("hour"); + $datestring->hours = get_string("hours"); + $datestring->min = get_string("min"); + $datestring->mins = get_string("mins"); + $datestring->sec = get_string("sec"); + $datestring->secs = get_string("secs"); + + $countries = get_list_of_countries(); + + $isteacher = isteacher($course->id); + } + + echo ''; + echo ''; + echo ''; + echo '
'; + print_user_picture($user->id, $course->id, $user->picture, true); + echo ''; + echo ''; + echo ''.fullname($user, $isteacher).''; + echo '

'; + if (!empty($user->role) and ($user->role <> $course->teacher)) { + echo "$string->role: $user->role
"; + } + if ($user->maildisplay == 1 or ($user->maildisplay == 2 and $course->category) or $isteacher) { + echo "$string->email: email\">$user->email
"; + } + if ($user->city or $user->country) { + echo "$string->location: $user->city, ".$countries["$user->country"]."
"; + } + if ($user->lastaccess) { + echo "$string->lastaccess: ".userdate($user->lastaccess); + echo "  (".format_time(time() - $user->lastaccess, $datestring).")"; + } else { + echo "$string->lastaccess: $string->never"; + } + echo '

'; + + echo ''; + if ($isteacher) { + $timemidnight = usergetmidnight(time()); + echo "id&user=$user->id\">$string->activity
"; + if (isstudent($course->id, $user->id) and !iscreator($user->id)) { // Includes admins + echo "id&user=$user->id\">$string->unenrol
"; + echo "id&user=$user->id\">$string->loginas
"; + } + } + echo "id&course=$course->id\">$string->fullprofile..."; + echo '
'; + + echo '
'; +} + + function recent_internet_explorer() { /// Returns true if the current browser is a recent version /// of Internet Explorer diff --git a/user/edit.php b/user/edit.php index c8e7ad4c2c..dca45a4474 100644 --- a/user/edit.php +++ b/user/edit.php @@ -1,7 +1,7 @@ libdir/gdlib.php"); require_variable($id); // user id require_variable($course); // course id diff --git a/user/index.php b/user/index.php index 85d5f08430..1649917cdb 100644 --- a/user/index.php +++ b/user/index.php @@ -3,7 +3,9 @@ // Lists all the users within a given course require_once("../config.php"); - require_once("lib.php"); + + define('USER_SMALL_CLASS', 20); // Below this is considered small + define('USER_LARGE_CLASS', 200); // Above this is considered large require_variable($id); //course optional_variable($sort, "lastaccess"); //how to sort students @@ -20,34 +22,9 @@ require_login($course->id); - $isteacher = isteacher($course->id); - add_to_log($course->id, "user", "view all", "index.php?id=$course->id", ""); - $string->email = get_string("email"); - $string->location = get_string("location"); - $string->lastaccess = get_string("lastaccess"); - $string->activity = get_string("activity"); - $string->unenrol = get_string("unenrol"); - $string->loginas = get_string("loginas"); - $string->fullprofile = get_string("fullprofile"); - $string->role = get_string("role"); - $string->never = get_string("never"); - $string->name = get_string("name"); - $string->day = get_string("day"); - $string->days = get_string("days"); - $string->hour = get_string("hour"); - $string->hours = get_string("hours"); - $string->min = get_string("min"); - $string->mins = get_string("mins"); - $string->sec = get_string("sec"); - $string->secs = get_string("secs"); - $string->all = get_string("all"); - - $countries = get_list_of_countries(); - - $loggedinas = "

".user_login_string($course, $USER)."

"; - + $isteacher = isteacher($course->id); $showteachers = ($page == 0 and $sort == "lastaccess" and $dir == "desc"); if ($showteachers) { @@ -59,19 +36,18 @@ if ($course->category) { print_header("$course->shortname: ".get_string("participants"), "$course->fullname", "id>$course->shortname -> ". - "$participantslink", "", "", true, " ", $loggedinas); + "$participantslink", "", "", true, " ", navmenu($course)); } else { print_header("$course->shortname: ".get_string("participants"), "$course->fullname", - "$participantslink", "", "", true, " ", $loggedinas); + "$participantslink", "", "", true, " ", navmenu($course)); } - if ($showteachers) { if ( $teachers = get_course_teachers($course->id)) { echo "

$course->teachers

"; foreach ($teachers as $teacher) { if ($teacher->authority > 0) { // Don't print teachers with no authority - print_user($teacher, $course, $string, $countries); + print_user($teacher, $course); } } } @@ -100,6 +76,8 @@ if ($totalcount > $perpage) { $alphabet = explode(',', get_string('alphabet')); + $strall = get_string("all"); + /// Bar of first initials @@ -107,9 +85,9 @@ echo get_string("firstname")." : "; if ($firstinitial) { echo " id&sort=firstname&dir=ASC&". - "perpage=$perpage&lastinitial=$lastinitial\">$string->all "; + "perpage=$perpage&lastinitial=$lastinitial\">$strall "; } else { - echo " $string->all "; + echo " $strall "; } foreach ($alphabet as $letter) { if ($letter == $firstinitial) { @@ -126,9 +104,9 @@ echo get_string("lastname")." : "; if ($lastinitial) { echo " id&sort=lastname&dir=ASC&". - "perpage=$perpage&firstinitial=$firstinitial\">$string->all "; + "perpage=$perpage&firstinitial=$firstinitial\">$strall "; } else { - echo " $string->all "; + echo " $strall "; } foreach ($alphabet as $letter) { if ($letter == $lastinitial) { @@ -153,7 +131,7 @@ } if (0 < $matchcount and $matchcount < USER_SMALL_CLASS) { // Print simple listing foreach ($students as $student) { - print_user($student, $course, $string, $countries); + print_user($student, $course); } } else if ($matchcount > 0) { @@ -161,6 +139,19 @@ // Print one big table with abbreviated info $columns = array("firstname", "lastname", "city", "country", "lastaccess"); + $countries = get_list_of_countries(); + + $strnever = get_string("never"); + + $datestring->day = get_string("day"); + $datestring->days = get_string("days"); + $datestring->hour = get_string("hour"); + $datestring->hours = get_string("hours"); + $datestring->min = get_string("min"); + $datestring->mins = get_string("mins"); + $datestring->sec = get_string("sec"); + $datestring->secs = get_string("secs"); + foreach ($columns as $column) { $colname[$column] = get_string($column); if ($sort != $column) { @@ -207,9 +198,9 @@ foreach ($students as $student) { if ($student->lastaccess) { - $lastaccess = format_time(time() - $student->lastaccess, $string); + $lastaccess = format_time(time() - $student->lastaccess, $datestring); } else { - $lastaccess = $string->never; + $lastaccess = $strnever; } if ($showall and $numstudents > USER_LARGE_CLASS) { // Don't show pictures diff --git a/user/lib.php b/user/lib.php deleted file mode 100644 index 9710e5a1f4..0000000000 --- a/user/lib.php +++ /dev/null @@ -1,217 +0,0 @@ -gdversion >= 2) { - return ImageCopyResampled($dst_img, $src_img, $dst_x, $dst_y, $src_x, $src_y, - $dst_w, $dst_h, $src_w, $src_h); - } - - $totalcolors = imagecolorstotal($src_img); - for ($i=0; $i<$totalcolors; $i++) { - if ($colors = ImageColorsForIndex($src_img, $i)) { - ImageColorAllocate($dst_img, $colors['red'], $colors['green'], $colors['blue']); - } - } - - $scaleX = ($src_w - 1) / $dst_w; - $scaleY = ($src_h - 1) / $dst_h; - - $scaleX2 = $scaleX / 2.0; - $scaleY2 = $scaleY / 2.0; - - for ($j = 0; $j < $dst_h; $j++) { - $sY = $j * $scaleY; - - for ($i = 0; $i < $dst_w; $i++) { - $sX = $i * $scaleX; - - $c1 = ImageColorsForIndex($src_img,ImageColorAt($src_img,(int)$sX,(int)$sY+$scaleY2)); - $c2 = ImageColorsForIndex($src_img,ImageColorAt($src_img,(int)$sX,(int)$sY)); - $c3 = ImageColorsForIndex($src_img,ImageColorAt($src_img,(int)$sX+$scaleX2,(int)$sY+$scaleY2)); - $c4 = ImageColorsForIndex($src_img,ImageColorAt($src_img,(int)$sX+$scaleX2,(int)$sY)); - - $red = (int) (($c1['red'] + $c2['red'] + $c3['red'] + $c4['red']) / 4); - $green = (int) (($c1['green'] + $c2['green'] + $c3['green'] + $c4['green']) / 4); - $blue = (int) (($c1['blue'] + $c2['blue'] + $c3['blue'] + $c4['blue']) / 4); - - $color = ImageColorClosest ($dst_img, $red, $green, $blue); - ImageSetPixel ($dst_img, $i + $dst_x, $j + $dst_y, $color); - } - } -} - - -function save_user_image($userid, $filename) { -// Given a filename to a known image, this function scales and crops -// it and saves it in the right place to be a user image. - - global $CFG; - - if (empty($CFG->gdversion)) { - return false; - } - - umask(0000); - - if (!file_exists("$CFG->dataroot/users")) { - if (! mkdir("$CFG->dataroot/users", $CFG->directorypermissions)) { - return false; - } - } - - if (!file_exists("$CFG->dataroot/users/$userid")) { - if (! mkdir("$CFG->dataroot/users/$userid", $CFG->directorypermissions)) { - return false; - } - } - - $originalfile = "$CFG->dataroot/users/$userid/original"; - - if (!move_uploaded_file($filename, $originalfile)) { - return false; - } - - chmod($originalfile, 0666); - - $imageinfo = GetImageSize($originalfile); - - if (empty($imageinfo)) { - unlink($originalfile); - return false; - } - - $image->width = $imageinfo[0]; - $image->height = $imageinfo[1]; - $image->type = $imageinfo[2]; - - switch ($image->type) { - case 1: - if (function_exists("ImageCreateFromGIF")) { - $im = ImageCreateFromGIF($originalfile); - } else { - notice("GIF not supported on this server"); - unlink($originalfile); - return false; - } - break; - case 2: - if (function_exists("ImageCreateFromJPEG")) { - $im = ImageCreateFromJPEG($originalfile); - } else { - notice("JPEG not supported on this server"); - unlink($originalfile); - return false; - } - break; - case 3: - if (function_exists("ImageCreateFromPNG")) { - $im = ImageCreateFromPNG($originalfile); - } else { - notice("PNG not supported on this server"); - unlink($originalfile); - return false; - } - break; - default: - unlink($originalfile); - return false; - } - - unlink($originalfile); - - if (function_exists("ImageCreateTrueColor") and $CFG->gdversion >= 2) { - $im1 = ImageCreateTrueColor(100,100); - $im2 = ImageCreateTrueColor(35,35); - } else { - $im1 = ImageCreate(100,100); - $im2 = ImageCreate(35,35); - } - - $cx = $image->width / 2; - $cy = $image->height / 2; - - if ($image->width < $image->height) { - $half = floor($image->width / 2.0); - } else { - $half = floor($image->height / 2.0); - } - - ImageCopyBicubic($im1, $im, 0, 0, $cx-$half, $cy-$half, 100, 100, $half*2, $half*2); - ImageCopyBicubic($im2, $im, 0, 0, $cx-$half, $cy-$half, 35, 35, $half*2, $half*2); - - // Draw borders over the top. - $black1 = ImageColorAllocate ($im1, 0, 0, 0); - $black2 = ImageColorAllocate ($im2, 0, 0, 0); - ImageLine ($im1, 0, 0, 0, 99, $black1); - ImageLine ($im1, 0, 99, 99, 99, $black1); - ImageLine ($im1, 99, 99, 99, 0, $black1); - ImageLine ($im1, 99, 0, 0, 0, $black1); - ImageLine ($im2, 0, 0, 0, 34, $black2); - ImageLine ($im2, 0, 34, 34, 34, $black2); - ImageLine ($im2, 34, 34, 34, 0, $black2); - ImageLine ($im2, 34, 0, 0, 0, $black2); - - if (ImageJpeg($im1, "$CFG->dataroot/users/$userid/f1.jpg", 90) and - ImageJpeg($im2, "$CFG->dataroot/users/$userid/f2.jpg", 95) ) { - chmod("$CFG->dataroot/users/$userid/f1.jpg", 0666); - chmod("$CFG->dataroot/users/$userid/f2.jpg", 0666); - return 1; - } else { - return 0; - } -} - - -function print_user($user, $course, $string, $countries) { -/// Prints a summary of a user in a nice little box - - echo ""; - echo ""; - echo "
"; - print_user_picture($user->id, $course->id, $user->picture, true); - echo ""; - echo ""; - echo ""; - echo "".fullname($user, isteacher($course->id)).""; - echo "

"; - if (!empty($user->role) and ($user->role <> $course->teacher)) { - echo "$string->role: $user->role
"; - } - if ($user->maildisplay == 1 or ($user->maildisplay == 2 and $course->category) or isteacher($course->id)) { - echo "$string->email: email\">$user->email
"; - } - if ($user->city or $user->country) { - echo "$string->location: $user->city, ".$countries["$user->country"]."
"; - } - if ($user->lastaccess) { - echo "$string->lastaccess: ".userdate($user->lastaccess); - echo "  (".format_time(time() - $user->lastaccess, $string).")"; - } else { - echo "$string->lastaccess: $string->never"; - } - echo "

"; - - echo ""; - if (isteacher($course->id)) { - $timemidnight = usergetmidnight(time()); - echo "id&user=$user->id\">$string->activity
"; - if (isstudent($course->id, $user->id) and !iscreator($user->id)) { // Includes admins - echo "id&user=$user->id\">$string->unenrol
"; - echo "id&user=$user->id\">$string->loginas
"; - } - } - echo "id&course=$course->id\">$string->fullprofile..."; - echo "
"; - - echo "
"; -} - -?> diff --git a/user/view.php b/user/view.php index bc624c9aae..15072fcaf0 100644 --- a/user/view.php +++ b/user/view.php @@ -4,7 +4,6 @@ require_once("../config.php"); require_once("../mod/forum/lib.php"); - require_once("lib.php"); require_variable($id); require_variable($course); @@ -34,16 +33,14 @@ $personalprofile = get_string("personalprofile"); $participants = get_string("participants"); - $loggedinas = "

".user_login_string($course, $USER)."

"; - if ($course->category) { print_header("$personalprofile: $fullname", "$personalprofile: $fullname", "id\">$course->shortname -> id\">$participants -> $fullname", - "", "", true, " ", $loggedinas); + "", "", true, " ", navmenu($course)); } else { print_header("$course->fullname: $personalprofile: $fullname", "$course->fullname", - "$fullname", "", "", true, " ", $loggedinas); + "$fullname", "", "", true, " ", navmenu($course)); } if ($course->category and ! isguest() ) { -- 2.39.5