version 1.61, 2021/06/15 20:52:27
|
version 1.64, 2022/02/27 01:43:14
|
Line 731 sub check_instclasses {
|
Line 731 sub check_instclasses {
|
=cut |
=cut |
|
|
sub instsec_reformat { |
sub instsec_reformat { |
my ($dom,$action,$instsecref) = @; |
my ($dom,$action,$instsecref) = @_; |
if ((ref($instsecref) eq 'HASH') && |
if ((ref($instsecref) eq 'HASH') && |
(($action eq 'clutter') || ($action eq 'declutter'))) { |
(($action eq 'clutter') || ($action eq 'declutter'))) { |
foreach my $key (keys(%{$instsecref})) { |
foreach my $key (keys(%{$instsecref})) { |
Line 1072 sub instcode_defaults {
|
Line 1072 sub instcode_defaults {
|
(d) $lc_users - reference to hash containing LON-CAPA usernames in |
(d) $lc_users - reference to hash containing LON-CAPA usernames in |
in domain $dom, as keys. Needed if institutional |
in domain $dom, as keys. Needed if institutional |
data source only allows query by username. |
data source only allows query by username. |
|
(e) $counts - reference to hash (optional), for use when called |
|
from Autoupdate.pl which can contain counts for |
|
user-specified items retrieved in allusers_info() |
|
or in custom subroutines which it calls. Key in |
|
hashref, and count value will be printed to |
|
autoupdate.log by Autoupdate.pl. |
|
|
returns 1 parameter - 'ok' if no processing error, or other value |
returns 1 parameter - 'ok' if no processing error, or other value |
if an error occurred. |
if an error occurred. |
side effects - populates the $instusers and $instids refs to hashes. |
side effects - populates the $instusers and $instids refs to hashes. |
Line 1082 sub instcode_defaults {
|
Line 1089 sub instcode_defaults {
|
=cut |
=cut |
|
|
sub allusers_info { |
sub allusers_info { |
my ($dom,$instusers,$instids,$lc_users) = @_; |
my ($dom,$instusers,$instids,$lc_users,$counts) = @_; |
my $outcome = 'ok'; |
my $outcome = 'ok'; |
return $outcome; |
return $outcome; |
} |
} |
Line 1150 sub get_userinfo {
|
Line 1157 sub get_userinfo {
|
|
|
=pod |
=pod |
|
|
=item get_multusersinfo |
=item get_multusersinfo() |
|
|
(a) $dom - domain |
(a) $dom - domain |
(b) $type - username or id |
(b) $type - username or id |
Line 1243 sub inst_usertypes {
|
Line 1250 sub inst_usertypes {
|
keys of top level hash are short names |
keys of top level hash are short names |
(e.g., netid, noncredit) |
(e.g., netid, noncredit) |
for each key, value is a hash |
for each key, value is a hash |
desc => long name for rule |
name => long name for rule |
rule => description of rule |
desc => description of rule |
authtype => (krb5,krb4,int, or loc) |
authtype => (krb5,krb4,int, or loc) |
authentication type for rule |
authentication type for rule |
authparm => authentication parameter for rule |
authparm => authentication parameter for rule |
Line 1278 sub username_rules {
|
Line 1285 sub username_rules {
|
keys of top level hash are short names |
keys of top level hash are short names |
(e.g., netid, noncredit) |
(e.g., netid, noncredit) |
for each key, value is a hash |
for each key, value is a hash |
desc => long name for rule |
name => long name for rule |
rule => description of rule |
desc => description of rule |
|
|
(c) $rulesorder - reference to array containing rule names |
(c) $rulesorder - reference to array containing rule names |
in order to be displayed |
in order to be displayed |
Line 1305 sub id_rules {
|
Line 1312 sub id_rules {
|
keys of top level hash are short names |
keys of top level hash are short names |
(e.g., netid) |
(e.g., netid) |
for each key, value is a hash |
for each key, value is a hash |
desc => long name for rule |
name => long name for rule |
rule => description of rule |
desc => description of rule |
|
|
(c) $rulesorder - reference to array containing rule names |
(c) $rulesorder - reference to array containing rule names |
in order to be displayed |
in order to be displayed |
Line 1324 sub selfcreate_rules {
|
Line 1331 sub selfcreate_rules {
|
|
|
=pod |
=pod |
|
|
|
=item unamemap_rules() |
|
|
|
Incoming data: three arguments |
|
(a) $dom - domain |
|
(b) $ruleshash - reference to hash containing rules |
|
(a hash of a hash) |
|
keys of top level hash are short names |
|
(e.g., netid) |
|
for each key, value is a hash |
|
name => long name for rule |
|
desc => description of rule |
|
|
|
For example: |
|
|
|
%{$ruleshash} = ( |
|
emailaddress => { |
|
name => 'Email address to UserID', |
|
desc => 'Extract userID from userID@example.tld', |
|
}, |
|
); |
|
would enable display of a checkbox for: 'Email address to UserID' in the |
|
"Available conversions" item in the "Mapping for missing usernames via standard log-in" |
|
panel available to a Domain Coordinator via: |
|
Main Menu > Set domain configuration > Display ("Default authentication/language/timezone/portal/types" checked) |
|
|
|
(c) $rulesorder - reference to array containing rule names |
|
in order to be displayed |
|
|
|
returns 'ok' if no processing error. |
|
|
|
=cut |
|
|
|
sub unamemap_rules { |
|
my ($dom,$ruleshash,$rulesorder) = @_; |
|
my $outcome; |
|
return $outcome; |
|
} |
|
|
|
=pod |
|
|
=item username_check() |
=item username_check() |
|
|
Incoming data: four arguments |
Incoming data: four arguments |
Line 1331 sub selfcreate_rules {
|
Line 1378 sub selfcreate_rules {
|
(b) $uname - username to compare against rules (scalar) |
(b) $uname - username to compare against rules (scalar) |
(c) $to_check (reference to array of rule names to check) |
(c) $to_check (reference to array of rule names to check) |
(d) $resultshash (reference to hash of results) |
(d) $resultshash (reference to hash of results) |
hash of results for rule checked |
hash of results for rules checked |
- keys are rule names |
- keys are rule names |
- values are: 1 or 0 (for matched or unmatched) |
- values are: 1 or 0 (for matched or unmatched) |
|
|
Line 1355 sub username_check {
|
Line 1402 sub username_check {
|
(b) $id - ID to compare against rules (scalar) |
(b) $id - ID to compare against rules (scalar) |
(c) $to_check (reference to array of rule names to check) |
(c) $to_check (reference to array of rule names to check) |
(d) $resultshash (reference to hash of results) |
(d) $resultshash (reference to hash of results) |
hash of results for rule checked |
hash of results for rules checked |
- keys are rule names |
- keys are rule names |
- values are: 1 or 0 (for matched or unmatched) |
- values are: 1 or 0 (for matched or unmatched) |
|
|
Line 1379 sub id_check {
|
Line 1426 sub id_check {
|
(b) $selfcreatename - e-mail proposed as username (compare against rules - scalar) |
(b) $selfcreatename - e-mail proposed as username (compare against rules - scalar) |
(c) $to_check (reference to array of rule names to check) |
(c) $to_check (reference to array of rule names to check) |
(d) $resultshash (reference to hash of results) |
(d) $resultshash (reference to hash of results) |
hash of results for rule checked |
hash of results for rules checked |
- keys are rule names |
- keys are rule names |
- values are: 1 or 0 (for matched or unmatched) |
- values are: 1 or 0 (for matched or unmatched) |
|
|
Line 1393 sub selfcreate_check {
|
Line 1440 sub selfcreate_check {
|
my $outcome; |
my $outcome; |
return $outcome; |
return $outcome; |
} |
} |
|
|
|
=pod |
|
|
|
=item unamemap_check() |
|
|
|
Incoming data: four arguments |
|
(a) $dom - domain (scalar) |
|
(b) $uname - username entered on log-in page (compare against rules - scalar) |
|
(c) $to_check (reference to array of rule names to check) |
|
(d) $resultshash (reference to hash of results) |
|
hash of results for rules checked |
|
- keys are rule names |
|
- values are derived username from substitution operation |
|
applied to $uname. |
|
|
|
For example, in the msu domain the rule "msuemail" will replace an MSU |
|
email address submitted as a username, with the part before the @msu.edu, |
|
(known as the MSUNetID), which is what is used in LON-CAPA as a username. |
|
|
|
if ($dom eq 'msu') { |
|
foreach my $item (@{$to_check}) { |
|
if ($item eq 'msuemail') { |
|
if ($uname =~ /^(\w{2,8})\@msu\.edu$/) { |
|
$resultshash->{$item} = $1; |
|
} |
|
} |
|
} |
|
} |
|
|
|
returns 'ok' if no processing error. |
|
|
|
=cut |
|
|
|
sub unamemap_check { |
|
my ($dom,$uname,$to_check,$resultshash) = @_; |
|
my $outcome; |
|
return $outcome; |
|
} |
|
|
=pod |
=pod |
|
|