View | Details | Raw Unified | Return to bug 5670
Collapse All | Expand All

(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/members/memberentrygen.tt (+49 lines)
Lines 917-922 $(document).ready(function() { Link Here
917
		</ol>
917
		</ol>
918
		</fieldset>
918
		</fieldset>
919
        [% END # hide fieldset %][% END %]
919
        [% END # hide fieldset %][% END %]
920
        [% IF ( HouseboundModule ) %]
921
        <fieldset class="rows" id="memberentry_housebound_roles">
922
          <legend id="housebound_roles">Housebound roles</legend>
923
          <ol class="radio">
924
            <li>
925
              <label class="radio" for="housebound_chooser">
926
                Chooser:
927
              </label>
928
              [% IF ( housebound_role.housebound_chooser == 1 ) %]
929
              <label for="yes_housebound_chooser">Yes </label>
930
              <input type="radio" id="yes_housebound_chooser"
931
                     name="housebound_chooser" value="1"
932
                     checked="checked" />
933
              <label for="no_housebound_chooser">No </label>
934
              <input type="radio" id="no_housebound_chooser"
935
                     name="housebound_chooser" value="0" />
936
              [% ELSE %]
937
              <label for="yes_housebound_chooser">Yes </label>
938
              <input type="radio" id="yes_housebound_chooser"
939
                     name="housebound_chooser" value="1" />
940
              <label for="no_housebound_chooser">No </label>
941
              <input type="radio" id="no_housebound_chooser"
942
                     name="housebound_chooser" value="0"
943
                     checked="checked" />
944
              [% END %]
945
            </li>
946
            <li>
947
              <label class="radio" for="housebound_deliverer">Deliverer:</label>
948
              [% IF ( housebound_role.housebound_deliverer == 1 ) %]
949
              <label for="yes_housebound_deliverer">Yes </label>
950
              <input type="radio" id="yes_housebound_deliverer"
951
                     name="housebound_deliverer" value="1"
952
                     checked="checked" />
953
              <label for="no_housebound_deliverer">No </label>
954
              <input type="radio" id="no_housebound_deliverer"
955
                     name="housebound_deliverer" value="0" />
956
              [% ELSE %]
957
              <label for="yes_housebound_deliverer">Yes </label>
958
              <input type="radio" id="yes_housebound_deliverer"
959
                     name="housebound_deliverer" value="1" />
960
              <label for="no_housebound_deliverer">No </label>
961
              <input type="radio" id="no_housebound_deliverer"
962
                     name="housebound_deliverer" value="0"
963
                     checked="checked" />
964
              [% END %]
965
            </li>
966
          </ol>
967
        </fieldset>
968
        [% END # hide fieldset %]
920
		<!--this zones are not necessary in modif mode -->
969
		<!--this zones are not necessary in modif mode -->
921
        [% UNLESS ( opadd || opduplicate ) %]
970
        [% UNLESS ( opadd || opduplicate ) %]
922
        <fieldset class="rows" id="memberentry_account_flags">
971
        <fieldset class="rows" id="memberentry_account_flags">
(-)a/members/memberentry.pl (-6 / +55 lines)
Lines 43-48 use Koha::Cities; Link Here
43
use Koha::DateUtils;
43
use Koha::DateUtils;
44
use Koha::Libraries;
44
use Koha::Libraries;
45
use Koha::Patron::Categories;
45
use Koha::Patron::Categories;
46
use Koha::Patron::HouseboundRole;
47
use Koha::Patron::HouseboundRoles;
46
use Koha::Token;
48
use Koha::Token;
47
use Email::Valid;
49
use Email::Valid;
48
use Module::Load;
50
use Module::Load;
Lines 435-445 if ((!$nok) and $nodouble and ($op eq 'insert' or $op eq 'save')){ Link Here
435
        if ( exists $data{'borrowernumber'} && C4::Context->preference('NorwegianPatronDBEnable') && C4::Context->preference('NorwegianPatronDBEnable') == 1 ) {
437
        if ( exists $data{'borrowernumber'} && C4::Context->preference('NorwegianPatronDBEnable') && C4::Context->preference('NorwegianPatronDBEnable') == 1 ) {
436
            NLSync({ 'borrowernumber' => $borrowernumber });
438
            NLSync({ 'borrowernumber' => $borrowernumber });
437
        }
439
        }
438
	} elsif ($op eq 'save'){ 
440
439
		if ($NoUpdateLogin) {
441
        # Create HouseboundRole if necessary.
440
			delete $newdata{'password'};
442
        # Borrower did not exist, so HouseboundRole *cannot* yet exist.
441
			delete $newdata{'userid'};
443
        my ( $hsbnd_chooser, $hsbnd_deliverer ) = ( 0, 0 );
442
		}
444
        $hsbnd_chooser = 1 if $input->param('housebound_chooser');
445
        $hsbnd_deliverer = 1 if $input->param('housebound_deliverer');
446
        # Only create a HouseboundRole if patron has a role.
447
        if ( $hsbnd_chooser || $hsbnd_deliverer ) {
448
            Koha::Patron::HouseboundRole->new({
449
                borrowernumber_id    => $borrowernumber,
450
                housebound_chooser   => $hsbnd_chooser,
451
                housebound_deliverer => $hsbnd_deliverer,
452
            })->store;
453
        }
454
455
    } elsif ($op eq 'save') {
456
457
        # Update or create our HouseboundRole if necessary.
458
        my $housebound_role = Koha::Patron::HouseboundRoles->find($borrowernumber);
459
        my ( $hsbnd_chooser, $hsbnd_deliverer ) = ( 0, 0 );
460
        $hsbnd_chooser = 1 if $input->param('housebound_chooser');
461
        $hsbnd_deliverer = 1 if $input->param('housebound_deliverer');
462
        if ( $housebound_role ) {
463
            if ( $hsbnd_chooser || $hsbnd_deliverer ) {
464
                # Update our HouseboundRole.
465
                $housebound_role
466
                    ->housebound_chooser($hsbnd_chooser)
467
                    ->housebound_deliverer($hsbnd_deliverer)
468
                    ->store;
469
            } else {
470
                $housebound_role->delete; # No longer needed.
471
            }
472
        } else {
473
            # Only create a HouseboundRole if patron has a role.
474
            if ( $hsbnd_chooser || $hsbnd_deliverer ) {
475
                $housebound_role = Koha::Patron::HouseboundRole->new({
476
                    borrowernumber_id    => $borrowernumber,
477
                    housebound_chooser   => $hsbnd_chooser,
478
                    housebound_deliverer => $hsbnd_deliverer,
479
                })->store;
480
            }
481
        }
482
483
        if ($NoUpdateLogin) {
484
            delete $newdata{'password'};
485
            delete $newdata{'userid'};
486
        }
443
        &ModMember(%newdata) unless scalar(keys %newdata) <= 1; # bug 4508 - avoid crash if we're not
487
        &ModMember(%newdata) unless scalar(keys %newdata) <= 1; # bug 4508 - avoid crash if we're not
444
                                                                # updating any columns in the borrowers table,
488
                                                                # updating any columns in the borrowers table,
445
                                                                # which can happen if we're only editing the
489
                                                                # which can happen if we're only editing the
Lines 703-708 $template->param( Link Here
703
    ),
747
    ),
704
);
748
);
705
749
750
# HouseboundModule data
751
$template->param(
752
    HouseboundModule => C4::Context->preference("HouseboundModule"),
753
    housebound_role  => Koha::Patron::HouseboundRoles->find($borrowernumber),
754
);
755
706
if(defined($data{'flags'})){
756
if(defined($data{'flags'})){
707
  $template->param(flags=>$data{'flags'});
757
  $template->param(flags=>$data{'flags'});
708
}
758
}
709
- 

Return to bug 5670