Browse Source

Fix upgrade-child: could not update child unless guarantor was defined. Also, limit upgrade path to C -> A .

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
3.0.x
Ryan Higgins 15 years ago
committed by Joshua Ferraro
parent
commit
3675d88035
  1. 3
      C4/Members.pm
  2. 25
      members/moremember.pl
  3. 4
      members/update-child.pl

3
C4/Members.pm

@ -1322,13 +1322,14 @@ to category descriptions.
#'
sub GetborCatFromCatType {
my ( $category_type, $action ) = @_;
# FIXME - This API seems both limited and dangerous.
my $dbh = C4::Context->dbh;
my $request = qq| SELECT categorycode,description
FROM categories
$action
ORDER BY categorycode|;
my $sth = $dbh->prepare($request);
if ($action) {
if ($action) {
$sth->execute($category_type);
}
else {

25
members/moremember.pl

@ -131,19 +131,18 @@ $data->{'ethnicity'} = fixEthnicity( $data->{'ethnicity'} );
$data->{ "sex_".$data->{'sex'}."_p" } = 1;
my $catcode;
if ( $category_type eq 'C' and $data->{'guarantorid'} ne '0' ) {
my $data2 = GetMember( $data->{'guarantorid'} ,'borrowernumber');
foreach (qw(address city B_address B_city phone mobile zipcode)) {
$data->{$_} = $data2->{$_};
}
my ( $catcodes, $labels ) =
GetborCatFromCatType( 'A', 'WHERE category_type = ?' );
my $cnt = scalar(@$catcodes);
# $cnt = 1;
$template->param( 'CATCODE_MULTI' => 1) if $cnt > 1;
$template->param( 'catcode' => $catcodes->[0]) if $cnt == 1;
if ( $category_type eq 'C') {
if ($data->{'guarantorid'} ne '0' ) {
my $data2 = GetMember( $data->{'guarantorid'} ,'borrowernumber');
foreach (qw(address city B_address B_city phone mobile zipcode)) {
$data->{$_} = $data2->{$_};
}
}
my ( $catcodes, $labels ) = GetborCatFromCatType( 'A', 'WHERE category_type = ?' );
my $cnt = scalar(@$catcodes);
$template->param( 'CATCODE_MULTI' => 1) if $cnt > 1;
$template->param( 'catcode' => $catcodes->[0]) if $cnt == 1;
}

4
members/update-child.pl

@ -57,7 +57,9 @@ my $op = $input->param('op');
if ( $op eq 'multi' ) {
my ( $catcodes, $labels ) =
GetborCatFromCatType( 'C', 'WHERE category_type <> ?' );
# FIXME - what are the possible upgrade paths? C -> A , C -> S ...
# currently just allowing C -> A because of limitation of API.
GetborCatFromCatType( 'A', 'WHERE category_type = ?' );
my @rows;
foreach my $k ( keys %$labels ) {
my $row;

Loading…
Cancel
Save