version 1.822, 2007/01/11 21:09:10
|
version 1.826, 2007/01/18 15:58:29
|
Line 1701 sub removeuserfile {
|
Line 1701 sub removeuserfile {
|
if (($fname !~ /\.meta$/) && (&is_portfolio_file($fname))) { |
if (($fname !~ /\.meta$/) && (&is_portfolio_file($fname))) { |
my $metafile = $fname.'.meta'; |
my $metafile = $fname.'.meta'; |
my $metaresult = &removeuserfile($docuname,$docudom,$metafile); |
my $metaresult = &removeuserfile($docuname,$docudom,$metafile); |
my ($group,$file); |
my $url = "/uploaded/$docudom/$docuname/$fname"; |
if ($fname =~ /^groups\/(\w+)\/portfolio(\/.+)$/) { |
my ($file,$group) = (&parse_portfolio_url($url))[3,4]; |
$group = $1; |
|
$file = $2; |
|
} elsif ($fname =~ /^portfolio(\/.+)$/) { |
|
$file = $1; |
|
} |
|
my $sqlresult = |
my $sqlresult = |
&update_portfolio_table($docuname,$docudom,$group.$file, |
&update_portfolio_table($docuname,$docudom,$file, |
'portfolio_metadata',$group, |
'portfolio_metadata',$group, |
'delete'); |
'delete'); |
} |
} |
Line 1734 sub renameuserfile {
|
Line 1729 sub renameuserfile {
|
my $newmeta = $new.'.meta'; |
my $newmeta = $new.'.meta'; |
my $metaresult = |
my $metaresult = |
&renameuserfile($docuname,$docudom,$oldmeta,$newmeta); |
&renameuserfile($docuname,$docudom,$oldmeta,$newmeta); |
my ($group,$file); |
my $url = "/uploaded/$docudom/$docuname/$old"; |
if ($old =~ /^groups\/(\w+)\/portfolio(\/.+)$/) { |
my ($file,$group) = (&parse_portfolio_url($url))[3,4]; |
$group = $1; |
|
$file = $2; |
|
} elsif ($old =~ /^portfolio(\/.+)$/) { |
|
$file = $1; |
|
} |
|
my $sqlresult = |
my $sqlresult = |
&update_portfolio_table($docuname,$docudom,$group.$file, |
&update_portfolio_table($docuname,$docudom,$file, |
'portfolio_metadata',$group, |
'portfolio_metadata',$group, |
'delete'); |
'delete'); |
} |
} |
Line 3559 sub parse_portfolio_url {
|
Line 3549 sub parse_portfolio_url {
|
|
|
my ($type,$udom,$unum,$group,$file_name); |
my ($type,$udom,$unum,$group,$file_name); |
|
|
if ($url =~ m-^/*uploaded/($match_domain)/($match_username)/portfolio(/.+)$-) { |
if ($url =~ m-^/*(?:uploaded|editupload)/($match_domain)/($match_username)/portfolio(/.+)$-) { |
$type = 1; |
$type = 1; |
$udom = $1; |
$udom = $1; |
$unum = $2; |
$unum = $2; |
$file_name = $3; |
$file_name = $3; |
} elsif ($url =~ m-^/*uploaded/($match_domain)/($match_courseid)/groups/([^/]+)/portfolio/(.+)$-) { |
} elsif ($url =~ m-^/*(?:uploaded|editupload)/($match_domain)/($match_courseid)/groups/([^/]+)/portfolio/(.+)$-) { |
$type = 2; |
$type = 2; |
$udom = $1; |
$udom = $1; |
$unum = $2; |
$unum = $2; |
Line 7153 sub repcopy_userfile {
|
Line 7143 sub repcopy_userfile {
|
if ($lwpresp ne 'ok') { |
if ($lwpresp ne 'ok') { |
my $ua=new LWP::UserAgent; |
my $ua=new LWP::UserAgent; |
my $request=new HTTP::Request('GET',&tokenwrapper($uri)); |
my $request=new HTTP::Request('GET',&tokenwrapper($uri)); |
|
# FIXME, right reads everything into memory then writes it out |
|
# doing something like |
|
# my $response=$ua->request($request,$file); |
|
# would make this write directly to disk |
my $response=$ua->request($request); |
my $response=$ua->request($request); |
if ($response->is_success()) { |
if ($response->is_success()) { |
$info=$response->content; |
$info=$response->content; |
Line 7312 sub current_machine_ids {
|
Line 7306 sub current_machine_ids {
|
return @ids; |
return @ids; |
} |
} |
|
|
|
sub additional_machine_domains { |
|
my @domains; |
|
open(my $fh,"<$perlvar{'lonTabDir'}/expected_domains.tab"); |
|
while( my $line = <$fh>) { |
|
$line =~ s/\s//g; |
|
push(@domains,$line); |
|
} |
|
return @domains; |
|
} |
|
|
|
sub default_login_domain { |
|
my $domain = $perlvar{'lonDefDomain'}; |
|
my $testdomain=(split(/\./,$ENV{'HTTP_HOST'}))[0]; |
|
foreach my $posdom (¤t_machine_domains(), |
|
&additional_machine_domains()) { |
|
if (lc($posdom) eq lc($testdomain)) { |
|
$domain=$posdom; |
|
last; |
|
} |
|
} |
|
return $domain; |
|
} |
|
|
# ------------------------------------------------------------- Declutters URLs |
# ------------------------------------------------------------- Declutters URLs |
|
|
sub declutter { |
sub declutter { |
Line 7484 sub get_iphost {
|
Line 7501 sub get_iphost {
|
if (!exists($name_to_ip{$name})) { |
if (!exists($name_to_ip{$name})) { |
$ip = gethostbyname($name); |
$ip = gethostbyname($name); |
if (!$ip || length($ip) ne 4) { |
if (!$ip || length($ip) ne 4) { |
&logthis("Skipping host $id name $name no IP found\n"); |
&logthis("Skipping host $id name $name no IP found"); |
next; |
next; |
} |
} |
$ip=inet_ntoa($ip); |
$ip=inet_ntoa($ip); |