null, 'tablet_css' => null, 'mobile_css' => null, 'value' => null, 'selector' => '', 'on' => 'block', 'off' => 'none', 'variable' => 'visibility', // all_enabled | all_disabled 'skip_when' => 'all_enabled' ] ); blocksy_assert_args( $args, ['css', 'tablet_css', 'mobile_css', 'selector', 'value'] ); $all_enabled = ( isset($args['value']['mobile']) && $args['value']['mobile'] && isset($args['value']['tablet']) && $args['value']['tablet'] && isset($args['value']['desktop']) && $args['value']['desktop'] ); $all_disabled = ( isset($args['value']['mobile']) && !$args['value']['mobile'] && isset($args['value']['tablet']) && !$args['value']['tablet'] && isset($args['value']['desktop']) && !$args['value']['desktop'] ); if ($all_enabled && $args['skip_when'] === 'all_enabled') { return; } if ($all_disabled && $args['skip_when'] === 'all_disabled') { return; } blocksy_output_css_vars([ 'css' => $args['css'], 'tablet_css' => $args['tablet_css'], 'mobile_css' => $args['mobile_css'], 'selector' => $args['selector'], 'responsive' => true, 'variableName' => $args['variable'], 'value' => [ 'desktop' => ( isset($args['value']['desktop']) && !$args['value']['desktop'] ) ? $args['off'] : $args['on'], 'tablet' => ( isset($args['value']['tablet']) && !$args['value']['tablet'] ) ? $args['off'] : $args['on'], 'mobile' => ( isset($args['value']['mobile']) && !$args['value']['mobile'] ) ? $args['off'] : $args['on'], ] ]); } }