[freeside-users] Bug report update: "User not found." error in selfservice.cgi, Was: Misconfiguration or bug? [...]
Erreu Gedmon
eg at keyway.net
Mon Nov 28 21:28:45 PST 2016
As I was getting ready to work on the "Change Payment Information" bug I decided to revisit the "User not found." bug. After further review, I'm changing my recommendation to deleting the problematic test entirely. I noticed that MyAccount::login already has a test for cust_contact.selfservice_access that seems fully functional making the non-functional test redundant.
Name: "User not found." error in selfservice.cgi
Description: Entering a "Self-Service access without service" email address in selfservice.cgi results in "User not found".
Expected: Successful login.
Reproduce: Login to selfservice with any valid contact email address.
Affects: Selfservice login in Freeside 4.1, 4.2~git-1
Cause: This worked in 4.0, a change was made in 4.1:
Workaround: Modify /usr/share/perl5/FS/contact.pm
Change the trailing . to a , in:
'extra_sql' => " AND ( contact.disabled IS NULL ) ",
Comment this line:
#" AND ( contact.selfservice_access = 'Y' )
Recommended fix:
Remove the non-functional test entirely. MyAccount::login already has a test for cust_contact.selfservice_access that seems fully functional making the non-functional newly added test redundant.
Notes: contact.selfservice_access is deprecated according to /usr/share/perl5/FS/Schema.pm
Pull request: https://github.com/freeside/Freeside/pull/59
Erreu Gedmon
--
"You see persons and things not as they are but as you are."
-- Anthony De Mello
On 11/04/2016 10:05 AM, Erreu Gedmon wrote:
> Bug report update:
>
> Name: "User not found." error in selfservice.cgi
> Description: Entering a "Self-Service access without service" email address in selfservice.cgi results in "User not found".
> Expected: Successful login.
> Reproduce: Login to selfservice with any valid contact email address.
> Affects: Selfservice login in Freeside 4.1, 4.2~git-1
> Cause: This worked in 4.0, a change was made in 4.1:
> Workaround: Modify /usr/share/perl5/FS/contact.pm
> Change the trailing . to a , in:
> 'extra_sql' => " AND ( contact.disabled IS NULL ) ",
> Comment this line:
> #" AND ( contact.selfservice_access = 'Y' )
> Recommended fix:
> In:
> /usr/share/perl5/FS/contact.pm
> Change:
> " AND ( contact.selfservice_access = 'Y' )",
> To:
> " AND ( cust_contact.selfservice_access = 'Y' )",
>
> Notes: contact.selfservice_access is deprecated according to /usr/share/perl5/FS/Schema.pm
>
> Erreu Gedmon
>
> --
> "You see persons and things not as they are but as you are."
> -- Anthony De Mello
>
> On 09/22/2016 08:11 PM, Erreu Gedmon wrote:
>> Long time fan, first time caller... ;) Great software guys, thank you!
>>
>> I just installed 4.1 and I was unable to get fs_selfservice or
>> ng_selfservice operational until I commented out this line in FS:contact
>> sub by_selfservice_email {
>> my($class, $email) = @_;
>>
>> my $contact_email = qsearchs({
>> 'table' => 'contact_email',
>> 'addl_from' => ' LEFT JOIN contact USING ( contactnum ) ',
>> 'hashref' => { 'emailaddress' => $email, },
>> 'extra_sql' => " AND ( contact.disabled IS NULL ) ",
>> # " AND ( contact.selfservice_access = 'Y' )",
>> }) or return '';
>>
>> $contact_email->contact;
>>
>> This line appears to be new on 4.1 as it did not exist on my 4.0 server.
>> The reason it's failing is because the contact.selfservice_access field
>> only contains NULL on my both my 4.0 and 4.1 systems while
>> cust_contact.selfservice_access holds "Y" values. I really tried to do
>> my homework, but couldn't decipher this one.
>>
>> So here are my questions:
>> Should there be data in contact.selfservice_access? (i.e. did I
>> misconfigure my installation?) or is this a bug and FS:contact should be
>> checking cust_contact.selfservice_access instead?
>>
>> Could someone point me to a schema* with a brief description of the two
>> tables contact and cust_contact? (Why are there two contact tables,
>> cust_contact seems to be a subset of contact, maybe a reseller thing?)
>>
>> Unrelated, could I have access to http://www.freeside.biz/mediawiki to
>> update it? I have some very minor updates to the 4.1 Installation
>> documentation.
>>
More information about the freeside-users
mailing list