/** * Displays the Widget content on front-end. */ public static function display_widget($optin_id) { $optins_set = ET_Bloom::get_bloom_options(); $selected_optin = isset($optins_set[$optin_id]) ? $optins_set[$optin_id] : ''; $output = ''; if ('' !== $selected_optin && 'active' == $optins_set[$optin_id]['optin_status'] && empty($optins_set[$optin_id]['child_of'])) { $display_optin_id = ET_Bloom::choose_form_ab_test($optin_id, $optins_set); if ($display_optin_id != $optin_id) { $optin_id = $display_optin_id; $selected_optin = $optins_set[$optin_id]; } if (is_singular() || is_front_page()) { $page_id = is_front_page() ? -1 : get_the_ID(); } else { $page_id = 0; } $list_id = $selected_optin['email_provider'] . '_' . $selected_optin['email_list']; $custom_css = ET_Bloom::generate_custom_css('.et_bloom .et_bloom_' . $display_optin_id, $selected_optin); $custom_css_output = '' !== $custom_css ? sprintf('<style type="text/css">%1$s</style>', $custom_css) : ''; ET_Bloom::add_stats_record('imp', $optin_id, $page_id, $list_id); $output = sprintf('<div class="et_bloom_widget_content et_bloom_optin et_bloom_%7$s"> %8$s <div class="et_bloom_form_container %2$s%3$s%4$s%5$s%6$s"> %1$s </div> </div>', ET_Bloom::generate_form_content($optin_id, $page_id), 'basic_edge' == $selected_optin['edge_style'] || '' == $selected_optin['edge_style'] ? '' : sprintf(' with_edge %1$s', esc_attr($selected_optin['edge_style'])), 'no_border' !== $selected_optin['border_orientation'] ? sprintf(' et_bloom_border_%1$s%2$s', $selected_optin['border_style'], 'full' !== $selected_optin['border_orientation'] ? ' et_bloom_border_position_' . $selected_optin['border_orientation'] : '') : '', 'rounded' == $selected_optin['corner_style'] ? ' et_bloom_rounded_corners' : '', 'rounded' == $selected_optin['field_corner'] ? ' et_bloom_rounded' : '', 'light' == $selected_optin['text_color'] ? ' et_bloom_form_text_light' : ' et_bloom_form_text_dark', esc_attr($optin_id), $custom_css_output); } return $output; }