version 1.73, 2006/02/08 17:11:46
|
version 1.77, 2006/05/11 17:53:22
|
Line 102 the database.
|
Line 102 the database.
|
use strict; |
use strict; |
|
|
use lib '/home/httpd/lib/perl/'; |
use lib '/home/httpd/lib/perl/'; |
|
use LONCAPA; |
use LONCAPA::Configuration; |
use LONCAPA::Configuration; |
use LONCAPA::lonmetadata(); |
use LONCAPA::lonmetadata(); |
|
|
Line 444 sub make_new_child {
|
Line 445 sub make_new_child {
|
$locresult = &localenroll::fetch_enrollment($dom,\%affiliates,\%replies); |
$locresult = &localenroll::fetch_enrollment($dom,\%affiliates,\%replies); |
} elsif ($query eq 'institutionalphotos') { |
} elsif ($query eq 'institutionalphotos') { |
my $crs = &unescape($arg2); |
my $crs = &unescape($arg2); |
$locresult = &localenroll::institutional_photos($dom,$crs,\%affiliates,\%replies,'update'); |
eval { |
|
local($SIG{__DIE__})='DEFAULT'; |
|
$locresult = &localenroll::institutional_photos($dom,$crs,\%affiliates,\%replies,'update'); |
|
}; |
|
if ($@) { |
|
$locresult = 'error'; |
|
} |
} |
} |
$result = &escape($locresult.':'); |
$result = &escape($locresult.':'); |
if ($locresult) { |
if ($locresult) { |
Line 466 sub make_new_child {
|
Line 473 sub make_new_child {
|
} |
} |
} else { |
} else { |
# Do an sql query |
# Do an sql query |
$result = &do_sql_query($query,$arg1,$arg2); |
$result = &do_sql_query($query,$arg1,$arg2,$searchdomain); |
} |
} |
# result does not need to be escaped because it has already been |
# result does not need to be escaped because it has already been |
# escaped. |
# escaped. |
Line 517 sub process_file {
|
Line 524 sub process_file {
|
} |
} |
|
|
sub do_sql_query { |
sub do_sql_query { |
my ($query,$custom,$customshow) = @_; |
my ($query,$custom,$customshow,$searchdomain) = @_; |
# &logthis('doing query '.$query); |
|
|
# |
|
# limit to searchdomain if given and table is metadata |
|
# |
|
if (($searchdomain) && ($query=~/FROM metadata/)) { |
|
$query.=' HAVING (domain="'.$searchdomain.'")'; |
|
} |
|
# &logthis('doing query ('.$searchdomain.')'.$query); |
|
|
|
|
|
|
$custom = &unescape($custom); |
$custom = &unescape($custom); |
$customshow = &unescape($customshow); |
$customshow = &unescape($customshow); |
# |
# |
Line 708 sub reply {
|
Line 725 sub reply {
|
} |
} |
|
|
######################################################## |
######################################################## |
######################################################## |
|
|
|
=pod |
|
|
|
=item &escape |
|
|
|
Escape special characters in a string. |
|
|
|
Inputs: string to escape |
|
|
|
Returns: The input string with special characters escaped. |
|
|
|
=cut |
|
|
|
######################################################## |
|
######################################################## |
|
sub escape { |
|
my $str=shift; |
|
$str =~ s/(\W)/"%".unpack('H2',$1)/eg; |
|
return $str; |
|
} |
|
|
|
######################################################## |
|
######################################################## |
|
|
|
=pod |
|
|
|
=item &unescape |
|
|
|
Unescape special characters in a string. |
|
|
|
Inputs: string to unescape |
|
|
|
Returns: The input string with special characters unescaped. |
|
|
|
=cut |
|
|
|
######################################################## |
|
######################################################## |
|
sub unescape { |
|
my $str=shift; |
|
$str =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C",hex($1))/eg; |
|
return $str; |
|
} |
|
|
|
######################################################## |
|
######################################################## |
######################################################## |
|
|
=pod |
=pod |