Re: [interchange] Correct logic of DisplayErrors

David Christensen <[email protected]> Mon, 11 Sep 2017 08:34:37 -0500
Newsgroups gmane.comp.web.interchange.users
Message-ID <[email protected]>
Sure; in any case, we should rectify this in one way or the other.  Any strong feelings from anyone here to keep the original intent?

Best,

David

> On Sep 11, 2017, at 2:48 AM, M Heins <[email protected]> wrote:
> 
> I can tell you that the original intent was because of the multi-customer
> orientation of the original IC / Minivend. The messages that DisplayErrors
> give can give specific server information that you wouldn't want a random
> user to enable.
> 
> I know that End Point tends to think anyone that is in control of a catalog
> is a server admin, and that may even be mostly true these days. But it was
> far from true in Minivend's early days.
> 
> Quoting David Christensen ([email protected]):
>> Sure, glad to open a discussion here; I personally fail to see the usefulness of this division as documented, plus the code itself had been inconsistent when it came to how it applied the DisplayErrors criteria (some call sites checked either/or and some were both/and).  Whatever the decision ends up being should be made consistent, plus there are probably additional things that can/should be made to respect this directive as well.
>> 
>> Best,
>> 
>> David
>> 
>>> On Sep 8, 2017, at 6:00 PM, Jon Jensen <[email protected]> wrote:
>>> 
>>> David,
>>> 
>>> I don't mind the logic change personally, but the documentation shows clearly that the old behavior was intended.
>>> 
>>> Unlike many identical pairs of global & catalog directives, this one was designed so that the global one is a universal switch to allow or deny the *ability* to use DisplayErrors in all catalogs:
>>> 
>>> http://www.icdevgroup.org/interchange-doc-5.2.0/frames/icconfig_20.html
>>> http://www.icdevgroup.org/interchange-doc-5.2.0/frames/icconfig_98.html
>>> http://docs.icdevgroup.org/cgi-bin/online/confs/DisplayErrors.html
>>> 
>>> So this probably needs either wider discussion and buy-in along with documentation updates, or to be reverted to match the docs.
>>> 
>>> Jon
>>> 
>>> 
>>> 
>>> On Fri, 8 Sep 2017, David Christensen wrote:
>>> 
>>>> commit 096f9b97470c0106594573dda4114e5adf25e81c
>>>> Author: David Christensen <[email protected]>
>>>> Date:   Fri Sep 8 17:30:23 2017 -0500
>>>> 
>>>>  Correct logic of DisplayErrors
>>>> 
>>>>  Most directives (and other places with this specific directive) use 'or' logic to allow you to
>>>>  define directives in either `interchange.cfg` or `catalog.cfg` to enable a default-off behavior at
>>>>  either the Interchange server level or at the level of a specific catalog.
>>>> 
>>>>  As originally coded, the DisplayErrors directive would have only worked when *both*
>>>>  `interchange.cfg` and `catalog.cfg` had this enabled.
>>>> 
>>>>  Change this so it shows up when either the current catalog or the global config has this set.
>>>> 
>>>>  Since the old default was 'no', someone intended this information to be output, so this is the
>>>>  correct behavior, considering that I only fixed the output of this message in the previous commit.
>>>> 
>>>> lib/Vend/Dispatch.pm |    6 +++---
>>>> 1 files changed, 3 insertions(+), 3 deletions(-)
>>>> ---
>>>> diff --git a/lib/Vend/Dispatch.pm b/lib/Vend/Dispatch.pm
>>>> index eeb463e..cea6640 100644
>>>> --- a/lib/Vend/Dispatch.pm
>>>> +++ b/lib/Vend/Dispatch.pm
>>>> @@ -690,7 +690,7 @@ Sorry, there was an error in processing this form action. Please
>>>> report the error or try again later.
>>>> EOF
>>>> 		$template .= "\n\nError: %s\n"
>>>> -				if $Global::DisplayErrors && $Vend::Cfg->{DisplayErrors}
>>>> +				if $Global::DisplayErrors || $Vend::Cfg->{DisplayErrors}
>>>> 			;
>>>> 		$template = get_locale_message(500, $template, $err);
>>>> 		logError($err);
>>>> @@ -1680,7 +1680,7 @@ EOF
>>>> 			and not ($Vend::admin and ! $::Variable->{MV_TRACK_ADMIN});
>>>> # END TRACK
>>>> 
>>>> -	if($Vend::Cfg->{DisplayErrors} and $Global::DisplayErrors) {
>>>> +	if($Vend::Cfg->{DisplayErrors} or $Global::DisplayErrors) {
>>>> 		$SIG{"__DIE__"} = sub {
>>>> 							my $msg = shift;
>>>> 							put_session() if $Vend::HaveSession;
>>>> @@ -1889,7 +1889,7 @@ Sorry, there was an error in processing this form action. Please
>>>> report the error or try again later.
>>>> EOF
>>>> 		$template .= "\n\nError: %s\n"
>>>> -				if $Global::DisplayErrors && $Vend::Cfg->{DisplayErrors}
>>>> +				if $Global::DisplayErrors || $Vend::Cfg->{DisplayErrors}
>>>> 			;
>>>> 		$template = get_locale_message(500, $template, $err);
>>>> 		logError($err);
>>> 
>>> 
>>> --
>>> Jon Jensen
>>> End Point Corporation
>>> https://www.endpoint.com/
>>> 
>>> _______________________________________________
>>> interchange-users mailing list
>>> [email protected]
>>> http://www.icdevgroup.org/mailman/listinfo/interchange-users
>> 
>> --
>> David Christensen
>> End Point Corporation
>> [email protected]
>> 785-727-1171
>> 
>> 
>> 
> 
> 
> 
>> _______________________________________________
>> interchange-users mailing list
>> [email protected]
>> http://www.icdevgroup.org/mailman/listinfo/interchange-users
> 
> 
> --
> People who would hamper free speech always assume that they're designing
> a world in which only their enemies will have to shut up.
> --Nicholas Christakis
> 
> _______________________________________________
> interchange-users mailing list
> [email protected]
> http://www.icdevgroup.org/mailman/listinfo/interchange-users

--
David Christensen
End Point Corporation
[email protected]
785-727-1171

_______________________________________________
interchange-users mailing list
[email protected]
http://www.icdevgroup.org/mailman/listinfo/interchange-users
signature.asc (application/pgp-signature, 801 B)
-----BEGIN PGP SIGNATURE-----

iQIcBAEBCAAGBQJZtpDtAAoJEDdKI8nfm2W4EmQP/j7zpruWVvp9P48zMwPba5k/
80xB9p4+iZRCPx+SNR4E6GyFj7raMxyanqul01WWD5zksKRU5mjN14rTcfUiBK5K
pYHkXfZJrVBiGT1IYhnviOa0k/PWLeKlew+Vo9JG+bTRR6nQPJBI5u2d4RMhVvu1
jHdDefy8UP+ApFFsq0eToulN2c2iQ8PcIGTBTR0k3hh2JWojHLQ9E79ZnM9Si4qB
iZOhoJwNXnzADavuRkh5susl8Cz2ALcFfQoF1F63lztnB4LHwFif7xUVFfw0L5RJ
eg1N4oU7EYSl45s6ALXIBUjaGWoPW/fN8q6dGeMtF8puyvdpgAlwMWuS2DqMG/NC
DiROOxWnA+ScvLQYsCt0zXxqwMBfiyURZ53mfgVo0So+TRTbJXV1JRZTSikJnNr3
T9dR9vcjqvtbcs2pRo/t5F61hoKj4cw+dJmb6pbDHHzFuxTaprcwDbLZc7NZay9r
yR0Nkd/Hmnl5M5/CaF+2MYeR+RyB7P/hxUDGECpvwAY6exCAvo/BihwQmjnfYqSd
1NbOTueZnQpSW8/0GpQdMeQuAFiA6MYL0Q6RFnin22xt4DniaRHBboMrVzorGJtr
fH9zEdQxMtCRxsTZsrrTmAAODQJsLX4A7UzUaswhNl/VfzeO6gv8DkoyMO9NBCiy
b8lUdYVAOP7eV0Z6vSQn
=rjxx
-----END PGP SIGNATURE-----