plugins – WordPress selectively doesn’t keep user logged in

I have a site, where some users try and login (site uses Memberium and InfusedWoo (Infusionsoft)), but any link, eg Nav menu -> Contact Us, logs that user out. Evidence was the login button appeared in Nav Menu (logged out view)

For instance, I have an elementor page, that uses Memberium shortcode to login restrict content. A user would try and login, but the refresh would just keep asking them to login again.

This issue occurs only for some users, that have no clear pattern between users besides obvious ones like being an email subscriber. The same issue occurs on Firefox and Chrome.

But, the issue gets resolved when someone deletes their cookies or uses private browsing.

Clearing all caches doesn’t help either, there’s still some users with this issue.

To top things off, I can’t replicate the issue, even when switching to those users, or even creating a new account.

Has anyone experienced a similar issue and have any clue how to resolve this?

WordPress: 5.8
Memberium: 2.185
InfusedWoo: 3.16.9

iphone – How is app using cellular data after selectively turned off?

One of the apps set to Disallow use of cellular data (Solitaire) uses the most cellular data of any app. This is despite the switch Always being set to Disallow use of cellular data.

Is there another way to block a specific app from using cellular data?
I don’t want to turn off cellular data altogether because my low budget provider doesn’t hold mms for redelivery(!).

I have turned it on (moved switch to Allow use of cellular data), restarted phone, turned it off (moved switch to Disallow use), and restarted phone again. And restarted many times since. It still uses cellular data.

(extra clarification notes)
iPhone 7, ios 14.4.2, WiFi Assist is always disabled.
On the Cellular page of Settings under the section heading Cellular Data is the list of apps that have attempted use of cellular data. For the user to allow or disallow use of cellular data on a per-app basis is a switch next to each app. I have set many apps to Disallow use of cellular data, including Solitaire, which continues to use cellular data anyway.

It’s not alone, others like Backgammon and Paper.io also used cellular data despite being switched off. But Solitaire uses the most data, hence the focus on Solitaire.

switch off but still top data user

Dataset: selectively map a function onto the nth column

I have this data, which I used the following to Import.

c=Import("data1.csv", "Dataset", HeaderLines -> 1);
d=c(All, {1 -> ToExpression});

enter image description here

I want to convert the 1st col to Minute and want to use the dataset(All,{n->f}) mentioned in MMA’s Dataset document. My idea to operate a function on the 1st col and return a two-col dataset. I tried the following. Some worked, while some did not. Could you please have a check and comment on why some methods did not return what I want. Thanks.

Those worked.

f = UnitConvert(#, "Minutes") &;
d(All, {1 -> f})
d(All, {"t" -> f})

d(All, {"t" -> Function({x}, UnitConvert(x, "Minutes"))})

Those did not.

d(All, {1 -> UnitConvert(#, "Minutes") &}) (*I understand why this one did not work.*)
d(All, {1 -> UnitConvert(#((1)), "Minutes") &})
d(All, {"t" -> UnitConvert(#((1)), "Minutes") &})

This simply blowed my mind. I wanted to return the 1st col itself. However, 1 seems to work as #((1)) and 2 as #((2)). It seems to me anything appears on the right hand left is treated as a Function (Here, as Part)?

d(All, {"t" -> 1})
d(All, {"t" -> 2})

mysql – Selectively ignoring tuples from a table

The problem that we are tackling with a data mining application is best described with an illustrative example.

There is a sample table myTable, which is defined as follows:

CREATE TABLE myTable
(
  id        INT UNSIGNED AUTO_INCREMENT,
  colA      VARCHAR(8),
  colB      VARCHAR(12),
  revFlag   CHAR(8), -- 'REVISED' or any other value, including NULL

  PRIMARY KEY(id)
);  

Any tuple with a revFlag value of REVISED takes precedence over any other tuple with the same value for colA, as long as the revFlag value of the latter tuple is not REVISED. In other words when we select rows from the table we skip all rows for which the revFlag value is not REVISED and there exists a row with the same value for colA for which the revFlag value is REVISED.

We populate the table as follows:

INSERT INTO myTable(colA, colB) VALUES ('XSR0KA3V', 'OLD-O7RAR81X'),
('4F2JG71O', 'OLD-E71BE63L'), ('MML3HN48', 'OLD-B02PFB63'),
('5H0MWVSB', 'OLD-V70XLGHT'), ('JW73ZX0J', 'OLD-KME1GXQF'),
('XZV0EY0G', 'OLD-N06BURDF'), ('9HBQZ88V', 'OLD-76HSPUAL'),
('YI5AT6G4', 'OLD-X8KAWD7Z');


INSERT INTO myTable(colA, colB, revFlag) VALUES
('XSR0KA3V', 'NEW-O7RAR81X', 'REVISED'),
('MML3HN48', 'NEW-B02PFB63', 'REVISED'),
('9HBQZ88V', 'NEW-76HSPUAL', 'REVISED'),
('YI5AT6G4', 'NEW-X8KAWD7Z', 'XYZ'),
('Z8H2B5KY', '3RINJV0K', 'REVISED');

Naturally SELECT * FROM myTable yields the following:

+----+----------+--------------+---------+
| id | colA     | colB         | revFlag |
+----+----------+--------------+---------+
|  1 | XSR0KA3V | OLD-O7RAR81X | NULL    |
|  2 | 4F2JG71O | OLD-E71BE63L | NULL    |
|  3 | MML3HN48 | OLD-B02PFB63 | NULL    |
|  4 | 5H0MWVSB | OLD-V70XLGHT | NULL    |
|  5 | JW73ZX0J | OLD-KME1GXQF | NULL    |
|  6 | XZV0EY0G | OLD-N06BURDF | NULL    |
|  7 | 9HBQZ88V | OLD-76HSPUAL | NULL    |
|  8 | YI5AT6G4 | OLD-X8KAWD7Z | NULL    |
|  9 | XSR0KA3V | NEW-O7RAR81X | REVISED |
| 10 | MML3HN48 | NEW-B02PFB63 | REVISED |
| 11 | 9HBQZ88V | NEW-76HSPUAL | REVISED |
| 12 | YI5AT6G4 | NEW-X8KAWD7Z | XYZ     |
| 13 | Z8H2B5KY | 3RINJV0K     | REVISED |
+----+----------+--------------+---------+

We would like to design a query that does not return any tuples that are REVISED by other tuples. In our case the output should look like this:

+----+----------+--------------+---------+
| id | colA     | colB         | revFlag |
+----+----------+--------------+---------+
|  2 | 4F2JG71O | OLD-E71BE63L | NULL    |
|  4 | 5H0MWVSB | OLD-V70XLGHT | NULL    |
|  5 | JW73ZX0J | OLD-KME1GXQF | NULL    |
|  6 | XZV0EY0G | OLD-N06BURDF | NULL    |
|  8 | YI5AT6G4 | OLD-X8KAWD7Z | NULL    |
|  9 | XSR0KA3V | NEW-O7RAR81X | REVISED |
| 10 | MML3HN48 | NEW-B02PFB63 | REVISED |
| 11 | 9HBQZ88V | NEW-76HSPUAL | REVISED |
| 12 | YI5AT6G4 | NEW-X8KAWD7Z | XYZ     |
| 13 | Z8H2B5KY | 3RINJV0K     | REVISED |
+----+----------+--------------+---------+

tls – Can ISPs selectively block a page URL on a HTTPS website leaving its other page URLs alone?

No, the ISP cannot block specific HTTPS protected pages because it cannot determine which page is being accessed.

HTTPS does not hide the server that is being accessed, because it needs the SNI (Server Name Indication) to be on the clear, so the server can know which certificate to use on the connection. Once the handshake is established, everything else is encrypted, including which page you are requesting.

So the ISP have two non-optimal ways to answer: don’t block anything, or block the entire server.

javascript – Selectively printing elements on web page using a bookmarklet

There is a web page I visit which I would like to print. However, I only want to print a couple of things on it, not everything.

So, I am making a bookmarklet that I can use whenever I visit the page to hide everything from the printer except what I want to print.

The site already has a class, ‘d-print-none’, to hide an element from the printer.

The following code is the javascript I made to base my bookmarklet on.

My idea is to first apply the ‘d-print-none’ class to everything. Then selectively remove it.

I remove the class from the element that contains what I would like to print as well as any of its children.

Then I recursively remove it from the parents until I reach the document element.

function removeClass(t_selector, t_class){
    document.querySelectorAll(t_selector + ' *').forEach(x=>x.classList.remove(t_class))
   
    node = document.querySelector(t_selector)
    while (node && node.nodeType != Node.DOCUMENT_NODE) {
        node.classList.remove.(t_class);
        node = node.parentNode;
    }
}

document.querySelectorAll( '*' ).forEach(x=>x.classList.add('d-print-none'))
removeClass('app-flex-chart', 'd-print-none')
removeClass('app-flex-grid', 'd-print-none')

Adding the class to all elements was pretty straightforward and succinct as was removing it from all of the target element’s children.

Climbing the tree to apply it to the element itself and any of its parents was more verbose and error prone. Sadly, there appears to be no css selector to find all parents of an element.

I paired the loop down to be as succinct and readable as I could.

I am looking for ideas on how to make it more robust, succinct, or readable. Open to any and all suggestions and criticisms.

For that while loop, I had to check if the node I was on existed and check to make sure it wasn’t the document node, either case would cause a crash.

How can I selectively delete hundreds of SMS conversations?

I work in IT and I’m part of an on-call rotation. Normally we use a dedicated on-call phone, but that’s not available since covid, so I’m using my own device right now. We had a major networking outage tonight which resulted in roughly 600 SMS notifications from our monitoring service to my phone.

The problem is that each one of these notifications comes from a different address (I don’t know why/how that works). So rather than 600 new messages in a single conversation, I now have ~600 new conversations in my Messaging app with a single message each. I would like to delete them so I don’t have to scroll through 600 conversations to find my conversations with friends.

Is there any way to bulk delete conversations based on some kind of search filter? I did see this question, but the answers only address how to delete all SMS messages. I would only like to delete the conversations which were generated by this incident.

I’m on a OnePlus 3T with LineageOS 17.1 (based on Android 10). My phone is rooted so I can run adb commands on it from my Linux desktop.

9.0 pie – Selectively deactivates battery saving mode for a specific app

I like to use battery saver mode on my Android phone because it extends the battery considerably. However, there is an app that I use that I want to exempt from two things that the Batter Saver disables – vibration and location services. I only agree to the battery usage for this one app, but I want to prevent all other apps from using the battery.

How can I achieve this?