31
32
Bug Reports / Re: Error when sending PMs to multiple people?
Last post by Burke Knight -An Error Has Occurred
array_combine(): Both parameters should have an equal number of elements
Bug confirmed.
33
Bug Reports / Error when sending PMs to multiple people?
Last post by Steeley -The messages went through, but I get a cryptic response error message
"array_combine(): Both parameters should have an equal number of elements"
I don't know if it's because I was sending to myself also, or if it's any multiple recipients.. but there you have it..
34
Feature Discussion / Re: EA versions and supported PHP versions
Last post by Steeley -Over time, hopefully we get input as sysops report things like "We upgraded to php X.y and now my EA v {whatever} looses {some significant functionality}. There's a lot of that kind of info all over the forum here in "bug reports", etc. that really aren't "bugs" in the code, but compatibility issues with the environment they're running in, which requires an upgrade to a later (or for a new potential EA admin with an older server set up, an earlier) EA version to work right.
(2.0 may not work well for someone stuck with a server running PHP 5.6, where v1.1.7 and earlier does? How does (s)he find that out besides posting up somewhere asking if anyone knows ... ? )
PHP isn't the only factor of course, DB type and its version are significant factors too (any EA versions compatible with HIVE? Or NOT compatible with Azure SQL?)
When we do discover an issue is indeed an environmental incompatibility, maybe recording that in this thread when we figured that out will build a quick reference as we go along. Perhaps this topic should be changed to "Environmental (In?)compatibilities by EA Version" or something like that. At the risk of mission creep -maybe a Board with topics or sub-boards by version number where this compatibility stuff is captured for reference (after issues reported elsewhere - bug reports, support, etc. - are isolated in those boards , not for suspected issues to be reported and worked on in this reference board), would build a valuable resource . That discussion is above my paygrade however, although I wouldn't mind being part of that discussion - or the solution to make it work.. I'll post this idea up on the Site Feedback board .
35
Feature Discussion / Re: EA versions and supported PHP versions
Last post by Spuds -1.1.6 is going back to far for me to remember ... I think this was for PHP 7.3 issues and all other etc. issues as reported
1.1.7 was aimed at php 7.4 .. should still run on 5.6. This was a LARGE update
1.1.8 was aimed at php 8.0 .. should still run < php 7 Minor updates to address issues in 1.1.7
1.1.9 was aimed at php 8.1 .. will not run on < php 7 This was a LARGE update
1.1.10 ... pending to fix issues found with 1.1.9 and ones missed over time
Although PHP 7.4 is depreciated, I still run that on several sites. TBH 7.x has been well tested, so 7.4 is really solid, especially when its your own server. So I know 1.1.9 runs fine on 7.4, as will 1.1.10
There were changes in 1.1.7 and 1.1.9 for PBE and some SMTP tweaks. I use SMTP on my server to send email and that has been fine as long as you have all of the other email hoops set up ... DMARC, DKIM, SPF, RDNS and a clean IP address. Email requirements continue to get more difficult for the average SYSOP to achieve, but its still do-able.
36
Feature Discussion / Re: Board Permissions: [X} = Ignore
Last post by Steeley -Assume a user is assigned to member group A
If you set the access permissions for the board this way..
Group A --- A X [D]
Group B --- [A] X D
...that user is denied access because the user is in group A
If the user is assigned instead to group B, (instead of group A) then that user has access to that board.
But, what if the user is assigned to both group A and group B?
Answer: By virtue of membership in group A set to "D", the user still can not access that board.
BUT, if the board permissions are set THIS way..
Group A --- A [X] D
Group B --- [A] X D
Then a user with membership in group A is still denied, but if a member of both groups the member IS allowed access to that board because of membership also in group B.
"D" means any/every member of that group is explicitly denied permission (regardless of any other group memberships).
'X" means (conditional) denied permission, denied unless the user is also a member of a group that has permission [A].
"A" means (conditional) granted permission, granted unless the user is also a member of a group that is explicitly denied [D] permission.
Another example (this applies to all permission logic - member or board permissions - in EA permission settings):
Group A --- A X [D]
Group B --- A [X] D
Group C --- [A] X D
A member of group A is denied permission regardless of any other group membership
A member of group B is denied permission unless also a member of group C
A member of group C is granted permission unless also a member of group A
If you set group A to X above, then anyone with group C membership has the permission, now including group A members if they are also a member of group C.
Hope this helps explain the permission logic (regardless of what the help text says or seems to imply)
37
Feature Discussion / EA versions and supported PHP versions
Last post by Steeley -The suggestion went along the lines of it being quite helpful to know the php versions that each EA version works with.. not just the earliest minimum, but the latest limit..
I recognize that it's hard to know before hand if a version will work with a php version that hasn't been released yet, that requires a very special kind of crystal ball.. but perhaps this thread can capture knowledge from EA admins when they discover that their version of EA no longer works with some new version of PHP.. which brings me to my question to start it off..
Does anyone know what version of PHP "breaks" EA v. 1.1.6? 8.0? 8.1? None yet?
The reason I ask is that my site uses the php mail() function for a 'feature' that (I originally believed) had nothing to do with the EA Forum.. That function in my servers php does not use an SMTP account, and lately, with SMTP verification protocols being required by most email servers, emails sent using the mail() function fail to go through, I presume at the moment it's because of the lack of the SMTP account verification.
I'm in the middle of the resolution process (first I need to understand what exactly is going on, so I can evaluate options to resolve it), but the solution may well be that the mail server/system PHP version needs to be greater than the current 5.6 running on my host's system. My own hosted server is running 7.2, with 7.4 being the latest option available, all of which are supposedly "depreciated" as well.
Once I accurately understand the current problem, one solution may be to go to a newer version of PHP (8.1?). And.... then the question becomes: "What does that break?" If my current version of EA would be one of the victims, I may very well decide to go another route than using the native PHP mail() function instead.
In other words, if a later version of PHP has an updated mail() function (and I don't know this either at the moment) that allows using an account login (or some other scheme) to comply with the newest SMTP validation protocols (if that is indeed the problem), then I would want to know if switching to it requires upgrading EA as well (in addition to lots of other stuff I have running on the server), hopefully without having to set up a test server and resort to trial and error to find out., or just upgrading stuff until I "unbreak my 'production server" in order to resolve this issue
Note: Let's not use this thread to deal with the mail() problem itself.. that's an entirely different topic and (hopefully) outside the scope of EA. It's just the latest issue I've encountered that has again raised this version-compatibility question. I'll resolve the mail() issue separately.
Anyway, knowing what versions of EA are compatible (or incompatible) with changes in the environment would be a handy thing to know, ya know?
If anyone has (or gets) that sort of knowledge, let's capture it here in this thread..
38
Exterminated Bugs / Re: Nested quoting depth ignored on 1.1.9
Last post by Spuds -Quote from: radu81 – TBH, I don't remember how this was set up, I didn't touch that option for years.
Basically if you had the option checked in 1.1.8, then the option was "on", and quotes were removed. A checkbox "on" value is stored in the DB as a 1. So in 1.1.9 it sees the value as 1 and then allows one nested quote.
During the upgrade I should have checked if the value was "on" and then set it 0, and if it was "off" (0) set it to 1 or 2 allowed .... To late to close the fence now
39
Exterminated Bugs / Re: Nested quoting depth ignored on 1.1.9
Last post by radu81 -Quote from: Spuds –
- In 1.1.8 you either allowed or not, nested quotes. It was simply yes or no.
Quote from: Spuds –
- In 1.1.9 this changed to a value. 0 is intended to not allow any nested quotes (same as checking "Remove nested quotes when quoting" in 1.1.
and any positive number will allow that many nested quotes inside of your quote.
Switching to "0" solves the problem, thanks for your explanation @Spuds and thanks @Ruth for doing those tests.
40
Exterminated Bugs / Re: Nested quoting depth ignored on 1.1.9
Last post by Spuds -- In 1.1.8 you either allowed or not, nested quotes. It was simply yes or no.
- In 1.1.9 this changed to a value. 0 is intended to not allow any nested quotes (same as checking "Remove nested quotes when quoting" in 1.1.8) and any positive number will allow that many nested quotes inside of your quote.
Ruth, the issue you reported is working as expected. You had a message that was only a quote, nothing more. Quoting that but not allowing nested quotes means the quote is stripped and there is nothing left to quote. (my "fix" made that worse)
Lets try some examples, here is a topic thread.
Code: (pseudo) [Select]
1) message
2) <quote>message</quote>
first response
3) <quote><quote>message</quote>first response</quote>
second response
4) <quote><quote><quote>message</quote>first response</quote>second response</quote>
third response
Setting Allowed nested quoting depth to zero means all quotes are removed and only the text added by the quoted message will be used. You are quoting just the text of the reply.
Examples
quoting number 4 above would give:
Code: [Select]
<quote>third response</quote>
your response here
quote number 2 would give
Code: [Select]
<quote>first response</quote>
your response here
Setting Allowed nested quoting depth to 1, a single quote nested inside of your quote (the outer most) will remain
Examples
quoting number 4 above would give:
Code: [Select]
<quote>
<quote=1st nested quote>second response</quote>
third response
</quote>
your response here
quoting number 2 would give
Code: [Select]
<quote>
<quote=1st nested quote>message</quote>
first response
</quote>
your response here
Setting Allowed nested quoting depth to 2, two nested quotes inside of your quote, are allowed
Example
quoting number 4 above would give:
Code: [Select]
<quote>
<quote=1st nested quote>
<quote=2nd nested quote>first response</quote>
second response
</quote>
third response
</quote>
Your response here
In working on this there is an inherited issue when removing nested quotes on a message that had nested quotes. An example is a message with several quotes like this <quote><quote>message</quote>first quote</quote>second quote would become <quote>message first quote second quote</quote> So indeed it strips all the quotes, but jumbles the text of the various quotes into one.
One primary reasons for changing to a depth level was to allow for a quote in a post, so for example a message like
Code: [Select]
I would like to quote someone who said <quote>spuds is mental</quote> and agree with them... if you do not allow nested quotes, this becomes
Code: [Select]
<quote>I would like to quote someone who said and agree with them</quote>when quoted and that breaks the flow. In 2.0 I've considered adding some indicator that the text was quoted using the quote button vs the editor quote button so the system could be more intelligent about what its removing. That said it is already rather confusing.