Bugzilla – Attachment 53711 Details for
Bug 11879
Add a new field to patron record: main contact method
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 11879 - Add a new borrower field : main contact method. (Was: Rebased on current master for testing)
Bug-11879---Add-a-new-borrower-field--main-contact.patch (text/plain), 15.09 KB, created by
Mehdi Hamidi
on 2016-07-25 17:59:30 UTC
(
hide
)
Description:
Bug 11879 - Add a new borrower field : main contact method. (Was: Rebased on current master for testing)
Filename:
MIME Type:
Creator:
Mehdi Hamidi
Created:
2016-07-25 17:59:30 UTC
Size:
15.09 KB
patch
obsolete
>From c7bd7f12256294c9eebf96ce01a902b05fe4aee3 Mon Sep 17 00:00:00 2001 >From: simith <simith@inlibro.com> >Date: Tue, 2 Sep 2014 08:52:38 -0400 >Subject: [PATCH] Bug 11879 - Add a new borrower field : main contact method. > (Was: Rebased on current master for testing) > >http://bugs.koha-community.org/show_bug.cgi?id=11879 > >To test this patch: >Update database >Edit a borrower's informations. >The "Main Contact Method" selectbox appears in the form and its >value is correctly. > >Works as expected. >For handling of syspref BorrowerUnwantedField use second patch- > >Signed-off-by: Marc Veron <veron@veron.ch> > >Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> >Signed-off-by: Aleisha <aleishaamohia@hotmail.com> >--- > installer/data/mysql/kohastructure.sql | 89 ++++++++++++++++++++++ > installer/data/mysql/updatedatabase.pl | 6 ++ > .../prog/en/modules/members/memberentrygen.tt | 76 ++++++++---------- > 3 files changed, 126 insertions(+), 45 deletions(-) > >diff --git a/installer/data/mysql/kohastructure.sql b/installer/data/mysql/kohastructure.sql >index 5141cad..be0ab09 100644 >--- a/installer/data/mysql/kohastructure.sql >+++ b/installer/data/mysql/kohastructure.sql >@@ -194,6 +194,95 @@ CREATE TABLE `biblioitems` ( -- information related to bibliographic records in > ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; > > -- >+-- Table structure for table `borrowers` >+-- >+ >+DROP TABLE IF EXISTS `borrowers`; >+CREATE TABLE `borrowers` ( -- this table includes information about your patrons/borrowers/members >+ `borrowernumber` int(11) NOT NULL auto_increment, -- primary key, Koha assigned ID number for patrons/borrowers >+ `cardnumber` varchar(16) default NULL, -- unique key, library assigned ID number for patrons/borrowers >+ `surname` mediumtext NOT NULL, -- patron/borrower's last name (surname) >+ `firstname` text, -- patron/borrower's first name >+ `title` mediumtext, -- patron/borrower's title, for example: Mr. or Mrs. >+ `othernames` mediumtext, -- any other names associated with the patron/borrower >+ `initials` text, -- initials for your patron/borrower >+ `streetnumber` varchar(10) default NULL, -- the house number for your patron/borrower's primary address >+ `streettype` varchar(50) default NULL, -- the street type (Rd., Blvd, etc) for your patron/borrower's primary address >+ `address` mediumtext NOT NULL, -- the first address line for your patron/borrower's primary address >+ `address2` text, -- the second address line for your patron/borrower's primary address >+ `city` mediumtext NOT NULL, -- the city or town for your patron/borrower's primary address >+ `state` text default NULL, -- the state or province for your patron/borrower's primary address >+ `zipcode` varchar(25) default NULL, -- the zip or postal code for your patron/borrower's primary address >+ `country` text, -- the country for your patron/borrower's primary address >+ `email` mediumtext, -- the primary email address for your patron/borrower's primary address >+ `phone` text, -- the primary phone number for your patron/borrower's primary address >+ `mobile` varchar(50) default NULL, -- the other phone number for your patron/borrower's primary address >+ `fax` mediumtext, -- the fax number for your patron/borrower's primary address >+ `emailpro` text, -- the secondary email addres for your patron/borrower's primary address >+ `phonepro` text, -- the secondary phone number for your patron/borrower's primary address >+ `B_streetnumber` varchar(10) default NULL, -- the house number for your patron/borrower's alternate address >+ `B_streettype` varchar(50) default NULL, -- the street type (Rd., Blvd, etc) for your patron/borrower's alternate address >+ `B_address` varchar(100) default NULL, -- the first address line for your patron/borrower's alternate address >+ `B_address2` text default NULL, -- the second address line for your patron/borrower's alternate address >+ `B_city` mediumtext, -- the city or town for your patron/borrower's alternate address >+ `B_state` text default NULL, -- the state for your patron/borrower's alternate address >+ `B_zipcode` varchar(25) default NULL, -- the zip or postal code for your patron/borrower's alternate address >+ `B_country` text, -- the country for your patron/borrower's alternate address >+ `B_email` text, -- the patron/borrower's alternate email address >+ `B_phone` mediumtext, -- the patron/borrower's alternate phone number >+ `dateofbirth` date default NULL, -- the patron/borrower's date of birth (YYYY-MM-DD) >+ `branchcode` varchar(10) NOT NULL default '', -- foreign key from the branches table, includes the code of the patron/borrower's home branch >+ `categorycode` varchar(10) NOT NULL default '', -- foreign key from the categories table, includes the code of the patron category >+ `dateenrolled` date default NULL, -- date the patron was added to Koha (YYYY-MM-DD) >+ `dateexpiry` date default NULL, -- date the patron/borrower's card is set to expire (YYYY-MM-DD) >+ `gonenoaddress` tinyint(1) default NULL, -- set to 1 for yes and 0 for no, flag to note that library marked this patron/borrower as having an unconfirmed address >+ `lost` tinyint(1) default NULL, -- set to 1 for yes and 0 for no, flag to note that library marked this patron/borrower as having lost their card >+ `debarred` date default NULL, -- until this date the patron can only check-in (no loans, no holds, etc.), is a fine based on days instead of money (YYY-MM-DD) >+ `debarredcomment` VARCHAR(255) DEFAULT NULL, -- comment on the stop of the patron >+ `contactname` mediumtext, -- used for children and profesionals to include surname or last name of guarentor or organization name >+ `contactfirstname` text, -- used for children to include first name of guarentor >+ `contacttitle` text, -- used for children to include title (Mr., Mrs., etc) of guarentor >+ `guarantorid` int(11) default NULL, -- borrowernumber used for children or professionals to link them to guarentors or organizations >+ `borrowernotes` mediumtext, -- a note on the patron/borrower's account that is only visible in the staff client >+ `relationship` varchar(100) default NULL, -- used for children to include the relationship to their guarentor >+ `sex` varchar(1) default NULL, -- patron/borrower's gender >+ `password` varchar(60) default NULL, -- patron/borrower's encrypted password >+ `flags` int(11) default NULL, -- will include a number associated with the staff member's permissions >+ `userid` varchar(75) default NULL, -- patron/borrower's opac and/or staff client log in >+ `opacnote` mediumtext, -- a note on the patron/borrower's account that is visible in the OPAC and staff client >+ `contactnote` varchar(255) default NULL, -- a note related to the patron/borrower's alternate address >+ `sort1` varchar(80) default NULL, -- a field that can be used for any information unique to the library >+ `sort2` varchar(80) default NULL, -- a field that can be used for any information unique to the library >+ `altcontactfirstname` varchar(255) default NULL, -- first name of alternate contact for the patron/borrower >+ `altcontactsurname` varchar(255) default NULL, -- surname or last name of the alternate contact for the patron/borrower >+ `altcontactaddress1` varchar(255) default NULL, -- the first address line for the alternate contact for the patron/borrower >+ `altcontactaddress2` varchar(255) default NULL, -- the second address line for the alternate contact for the patron/borrower >+ `altcontactaddress3` varchar(255) default NULL, -- the city for the alternate contact for the patron/borrower >+ `altcontactstate` text default NULL, -- the state for the alternate contact for the patron/borrower >+ `altcontactzipcode` varchar(50) default NULL, -- the zipcode for the alternate contact for the patron/borrower >+ `altcontactcountry` text default NULL, -- the country for the alternate contact for the patron/borrower >+ `altcontactphone` varchar(50) default NULL, -- the phone number for the alternate contact for the patron/borrower >+ `smsalertnumber` varchar(50) default NULL, -- the mobile phone number where the patron/borrower would like to receive notices (if SNS turned on) >+ `sms_provider_id` int(11) DEFAULT NULL, -- the provider of the mobile phone number defined in smsalertnumber >+ `privacy` integer(11) DEFAULT '1' NOT NULL, -- patron/borrower's privacy settings related to their reading history >+ `privacy_guarantor_checkouts` tinyint(1) NOT NULL DEFAULT '0', -- controls if relatives can see this patron's checkouts >+ `primary_contact_method` varchar(45) DEFAULT NULL, -- useful for reporting purposes >+ UNIQUE KEY `cardnumber` (`cardnumber`), >+ PRIMARY KEY `borrowernumber` (`borrowernumber`), >+ KEY `categorycode` (`categorycode`), >+ KEY `branchcode` (`branchcode`), >+ UNIQUE KEY `userid` (`userid`), >+ KEY `guarantorid` (`guarantorid`), >+ KEY `surname_idx` (`surname`(255)), >+ KEY `firstname_idx` (`firstname`(255)), >+ KEY `othernames_idx` (`othernames`(255)), >+ KEY `sms_provider_id` (`sms_provider_id`), >+ CONSTRAINT `borrowers_ibfk_1` FOREIGN KEY (`categorycode`) REFERENCES `categories` (`categorycode`), >+ CONSTRAINT `borrowers_ibfk_2` FOREIGN KEY (`branchcode`) REFERENCES `branches` (`branchcode`), >+ CONSTRAINT `borrowers_ibfk_3` FOREIGN KEY (`sms_provider_id`) REFERENCES `sms_providers` (`id`) ON UPDATE CASCADE ON DELETE SET NULL >+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; >+ >+-- > -- Table structure for table `borrower_attribute_types` > -- > >diff --git a/installer/data/mysql/updatedatabase.pl b/installer/data/mysql/updatedatabase.pl >index 372d6e4..d3f8377 100755 >--- a/installer/data/mysql/updatedatabase.pl >+++ b/installer/data/mysql/updatedatabase.pl >@@ -8724,6 +8724,12 @@ if ( CheckVersion($DBversion) ) { > print "Upgrade to $DBversion done (Bug 10402: Move bookseller contacts to separate table)\n"; > SetVersion($DBversion); > } >+$DBversion = "XXX"; >+if ( CheckVersion($DBversion) ) { >+ $dbh->do("ALTER TABLE `borrowers` ADD COLUMN `primary_contact_method` VARCHAR(45) NULL DEFAULT NULL;"); >+ print "Upgrade to $DBversion done (Bug 11879: Add a new borrower field : main contact method)\n"; >+ SetVersion($DBversion); >+} > > $DBversion = "3.17.00.017"; > if ( CheckVersion($DBversion) ) { >diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/members/memberentrygen.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/members/memberentrygen.tt >index 2ce266c..0f24f38 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/modules/members/memberentrygen.tt >+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/members/memberentrygen.tt >@@ -150,8 +150,7 @@ $(document).ready(function() { > > <form name="form" action="/cgi-bin/koha/members/memberentry.pl" method="post" autocomplete="off"> > <input type="hidden" name="nodouble" value="1" /> >- <button type="submit" class="new"><i class="fa fa-plus"></i> Not a duplicate. >- Save as new record</button> >+ <input class="new" type="submit" value="Not a duplicate. Save as new record" /> > </div> > [% END %] > >@@ -491,7 +490,8 @@ $(document).ready(function() { > > [% UNLESS nophone && nophonepro && nomobile && noemail && noemailpro && nofax %] > <fieldset class="rows" id="memberentry_contact"> >- <legend id="contact_lgd">Contact</legend><ol> >+ <legend id="contact_lgd">Contact</legend> >+<ol> > [% UNLESS nophone %] > <li> > [% IF ( mandatoryphone ) %] >@@ -566,60 +566,46 @@ $(document).ready(function() { > [% IF ( mandatoryfax ) %]<span class="required">Required</span>[% END %] > </li> > >- >- > [% END %] >+ > <li> > <label for="primary_contact_method">Main Contact Method</label> > <select id="primary_contact_method" name="primary_contact_method"> >- <option value=""></option> >- [% FOREACH contactprincipalloo IN contactprincipalloop %] >- [% IF ( contactprincipalloo.currentis_phone ) %] >- [% IF ( primary_contact_method == 'phone' ) %] >- <option value="phone" selected="selected">Primary phone</option> >- [% ELSE %] >- <option value="phone">Primary phone</option> >- [% END %] >+ >+ [% IF ( primary_contact_method == 'phone' ) %] >+ <option value="phone" selected="selected">Primary phone</option> >+ [% ELSE %] >+ <option value="phone">Primary phone</option> > [% END %] >- [% IF ( contactprincipalloo.currentis_phonepro ) %] >- [% IF ( primary_contact_method == 'phonepro' ) %] >- <option value="phonepro" selected="selected">Secondary phone</option> >- [% ELSE %] >- <option value="phonepro">Secondary phone</option> >- [% END %] >+ [% IF ( primary_contact_method == 'phonepro' ) %] >+ <option value="phonepro" selected="selected">Secondary phone</option> >+ [% ELSE %] >+ <option value="phonepro">Secondary phone</option> > [% END %] >- [% IF ( contactprincipalloo.currentis_mobile ) %] >- [% IF ( primary_contact_method == 'mobile' ) %] >- <option value="mobile" selected="selected">Other phone</option> >- [% ELSE %] >- <option value="mobile">Other phone</option> >- [% END %] >+ [% IF ( primary_contact_method == 'mobile' ) %] >+ <option value="mobile" selected="selected">Other phone</option> >+ [% ELSE %] >+ <option value="mobile">Other phone</option> > [% END %] >- [% IF ( contactprincipalloo.currentis_email ) %] >- [% IF ( primary_contact_method == 'email' ) %] >- <option value="email" selected="selected">Primary email</option> >- [% ELSE %] >- <option value="email">Primary email</option> >- [% END %] >+ [% IF ( primary_contact_method == 'email' ) %] >+ <option value="email" selected="selected">Primary email</option> >+ [% ELSE %] >+ <option value="email">Primary email</option> > [% END %] >- [% IF ( contactprincipalloo.currentis_emailpro ) %] >- [% IF ( primary_contact_method == 'emailpro' ) %] >- <option value="emailpro" selected="selected">Secondary email</option> >- [% ELSE %] >- <option value="emailpro">Secondary email</option> >- [% END %] >+ [% IF ( primary_contact_method == 'emailpro' ) %] >+ <option value="emailpro" selected="selected">Secondary email</option> >+ [% ELSE %] >+ <option value="emailpro">Secondary email</option> > [% END %] >- [% IF ( contactprincipalloo.currentis_fax ) %] >- [% IF ( primary_contact_method == 'fax' ) %] >- <option value="fax" selected="selected">Fax</option> >- [% ELSE %] >- <option value="fax">Fax</option> >- [% END %] >+ [% IF ( primary_contact_method == 'fax' ) %] >+ <option value="fax" selected="selected">Fax</option> >+ [% ELSE %] >+ <option value="fax">Fax</option> > [% END %] >- [% END %] > </select> > </li> >- </ol> >+ >+</ol> > > </fieldset> > [%END # hide fieldset %] >-- >1.9.1
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 11879
:
25745
|
25922
|
25941
|
31300
|
31301
|
31320
|
34351
|
34482
|
34502
|
34503
|
34571
|
34572
|
34573
|
41209
|
41220
|
41221
|
41222
|
46101
|
46284
|
46285
|
46286
|
48073
|
48074
|
48075
|
48076
|
48077
|
48078
|
48079
|
48556
|
48557
|
48558
|
48559
|
50433
|
52607
|
52608
|
52614
|
52615
|
52616
|
52617
|
52618
|
52619
|
52620
|
53229
|
53688
|
53695
|
53705
|
53707
|
53708
|
53709
|
53710
|
53711
|
53712
|
53713
|
55946
|
56285
|
56286
|
58580
|
58591
|
58592
|
58593
|
63238
|
63239
|
65811
|
65812
|
69028
|
69029
|
69050
|
71955
|
71956
|
71957
|
71958
|
72632
|
72633
|
72634
|
72635
|
73987
|
73988
|
73989
|
73990
|
74123
|
74124
|
74125
|
74126
|
74818
|
75652
|
83757
|
83758
|
84017
|
84018
|
84019
|
84020
|
84021
|
84022
|
88358
|
88359
|
88360
|
88361
|
88362
|
88363
|
88394
|
88395
|
88396
|
88397
|
88398
|
88399
|
88400
|
93850
|
93851
|
93852
|
93853
|
93854
|
93855
|
93856
|
93900
|
93901
|
94456
|
94457
|
94458
|
94459
|
94460
|
94461
|
94463
|
94464
|
94465
|
94466
|
94467
|
94468
|
96432
|
100817
|
100843
|
112062
|
112063
|
112064
|
112557
|
112559
|
112560
|
118959
|
118960
|
118961
|
118962
|
118985
|
118986
|
118987
|
118988
|
120947
|
120948
|
120949
|
120950
|
122778