I replied your message. Did some tests, but noticed something else in the logic for your conditions…
It may not work for you that it checks the the last time the user got access to level0 (i.e. when he registered, instead of when he lost the higher access). s2Drip doesn’t check role changes, it checks access capability changes. The user never loses level0 access.
You’d have to do some custom code…
You’ll need some PHP conditions using the access capability times of the user (the times when he got or lost an s2 access capability)
// Testing
<?php
echo 'Time 180 days ago: ', strtotime('180 days ago'), "\n";
echo 'Current user´s access capability times:', "\n";
$ac_times = get_user_option('s2member_access_cap_times', $user_id);
print_r($ac_times);
?>
You’ll notice if you add a ccap and then remove it from your profile, that the name is prefixed with a dash. So you can look for the times when the user lost the higher level access they had, instead of the time when they got level0.
// Testing
Time 180 days ago: 1553378923
Current user´s access capability times:
Array
(
[1568919357.0001] => level0
[1568919357.0002] => level1
[1568919357.0003] => level2
[1568919357.0004] => level3
[1568919357.0005] => level4
[1568930888.0001] => ccap_testing
[1568930915.0001] => -ccap_testing
)
That’s an admin account, so it doesn’t show loss of level access, but if it were a regular account that had Level 1 and then got demoted to Subscriber (i.e. Level 0), it’d show a -level1 entry. The keys in the array are the timestamp.