upgraded to 4.14
This commit is contained in:
@ -25,7 +25,9 @@ trait PageVisitCondition {
|
||||
* @return boolean Condition output.
|
||||
*/
|
||||
protected function _process_page_visit_condition( $condition_settings ) {
|
||||
$display_rule = isset( $condition_settings['pageVisitDisplay'] ) ? $condition_settings['pageVisitDisplay'] : 'hasVisitedSpecificPage';
|
||||
// Checks for additional display rule for compatibility with Conditional Display older versions which didn't use `displayRule` key.
|
||||
$legacy_display_rule = isset( $condition_settings['pageVisitDisplay'] ) ? $condition_settings['pageVisitDisplay'] : 'hasVisitedSpecificPage';
|
||||
$display_rule = isset( $condition_settings['displayRule'] ) ? $condition_settings['displayRule'] : $legacy_display_rule;
|
||||
$pages_raw = isset( $condition_settings['pages'] ) ? $condition_settings['pages'] : [];
|
||||
$pages_ids = array_map(
|
||||
function( $item ) {
|
||||
@ -34,10 +36,13 @@ trait PageVisitCondition {
|
||||
$pages_raw
|
||||
);
|
||||
$has_visited_specific_page = false;
|
||||
$cookie = [];
|
||||
|
||||
if ( isset( $_COOKIE['divi_post_visit'] ) ) {
|
||||
// phpcs:ignore ET.Sniffs.ValidatedSanitizedInput, WordPress.PHP.DiscouragedPHPFunctions.obfuscation_base64_decode -- Cookie is not stored or displayed therefore XSS safe, base64_decode returned data is an array and necessary validation checks are performed.
|
||||
$cookie = json_decode( base64_decode( $_COOKIE['divi_post_visit'] ), true );
|
||||
$cookie = json_decode( base64_decode( $_COOKIE['divi_post_visit'] ), true );
|
||||
}
|
||||
if ( $cookie && is_array( $cookie ) ) {
|
||||
$col = array_column( $cookie, 'id' );
|
||||
$has_visited_specific_page = array_intersect( $pages_ids, $col ) ? true : false;
|
||||
}
|
||||
|
Reference in New Issue
Block a user