data['back_link'] = ''; $this->data['level_1_navigation_active'] = ''; $this->data['level_2_title'] = ''; $this->data['level_2_post_title'] = ''; $this->data['level_2_right_wrap_type'] = 'menu'; $this->data['level_2_right_side_navigation'] = array(); $this->data['level_2_navigation_pos'] = 'left'; $this->data['level_2_right_side_navigation_active'] = ''; $this->data['level_2_right_html'] = ''; } public static function level_2_navigation_single_automation( $automation_id ) { if ( ! bwfan_is_autonami_pro_active() ) { return array( array( 'workflow' => array( 'name' => __( 'Workflow', 'wp-marketing-automations' ), 'link' => admin_url( "admin.php?page=autonami-automations&edit=$automation_id" ), ) ) ); } $single_automation_data = array( 'workflow' => array( 'name' => __( 'Workflow', 'wp-marketing-automations' ), 'link' => admin_url( "admin.php?page=autonami-automations&edit=$automation_id" ), ), 'engagement' => array( 'name' => __( 'Engagements', 'wp-marketing-automations' ), 'link' => admin_url( "admin.php?page=autonami&path=/automation-v1/$automation_id/engagements" ), ), ); if ( bwfan_is_woocommerce_active() ) { $single_automation_data['orders'] = array( 'name' => __( 'Orders', 'wp-marketing-automations' ), 'link' => admin_url( "admin.php?page=autonami&path=/automation-v1/$automation_id/orders" ), ); } return $single_automation_data; } public function set_back_link( $enable = 0, $link = '' ) { if ( 0 === $enable || empty( $link ) ) { return; } $this->data['back_link'] = $link; } public function set_level_2_title( $title = '' ) { if ( empty( $title ) ) { return; } $this->data['level_2_title'] = $title; } public function set_level_2_post_title( $html = '' ) { if ( empty( $html ) ) { return; } $this->data['level_2_post_title'] = $html; } public function set_level_2_side_type( $type = 'menu' ) { if ( empty( $type ) ) { return; } $this->data['level_2_right_wrap_type'] = $type; } public function set_level_2_side_navigation( $navigation = array() ) { if ( empty( $navigation ) ) { return; } $this->data['level_2_right_side_navigation'] = $navigation; } public function set_level_2_navigation_pos( $positions = 'left' ) { if ( empty( $positions ) ) { return; } $this->data['level_2_navigation_pos'] = $positions; } public function set_level_1_navigation_active( $active = '' ) { if ( empty( $active ) ) { return; } $this->data['level_1_navigation_active'] = $active; } public function set_level_2_side_navigation_active( $active = '' ) { if ( empty( $active ) ) { return; } $this->data['level_2_right_side_navigation_active'] = $active; } public function set_level_2_right_html( $html = '' ) { if ( empty( $html ) ) { return; } $this->data['level_2_right_html'] = $html; } /** * For React Menu Render */ public function get_render_data() { return array( 'logo' => esc_url( plugin_dir_url( BWFAN_PLUGIN_FILE ) . 'woofunnels/assets/img/menu/funnelkit-logo.svg' ), 'logo_link' => admin_url( 'admin.php?page=autonami' ), 'left_nav' => self::left_navigation(), 'right_nav' => self::right_navigation(), 'contacts_nav' => self::level_2_navigation_contacts(), 'broadcasts_nav' => self::level_2_navigation_broadcasts(), 'reports_nav' => self::level_2_navigation_analytics(), 'carts_nav' => self::level_2_navigation_carts_react(), 'automation_nav' => self::level_2_navigation_automations(), 'automationv2_nav' => self::level_2_navigation_new_automation(), 'settings_nav' => self::level_2_navigation_settings_react(), 'connectors_nav' => self::level_2_navigation_connectors(), 'templates_nav' => self::level_2_navigation_templates(), 'links_triggers_nav' => self::level_2_navigation_links_triggers(), 'bulk_actions_nav' => self::level_2_navigation_bulk_actions(), 'forms_nav' => self::level_2_navigation_forms(), 'data' => $this->data, 'pluginDir' => BWFAN_PLUGIN_URL, ); } public static function left_navigation() { $menu_data = BWFAN_Common::get_user_menu_access(); $left_nav_data = array( 'dashboard' => array( 'name' => __( 'Dashboard', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami' ), ), 'contacts' => array( 'name' => __( 'Contacts', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/contacts' ), ), 'carts' => array( 'name' => __( 'Carts', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/carts/recoverable' ), ), 'automations-v2' => array( 'name' => __( 'Automations', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/automations' ), ), 'broadcasts' => array( 'name' => __( 'Broadcasts', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/broadcasts/email' ), ), 'templates' => array( 'name' => __( 'Emails', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/' . ( bwfan_is_woocommerce_active() ? 'transactional-emails' : 'templates' ) ), ), 'analytics' => array( 'name' => __( 'Analytics', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/analytics' ), ), 'tools' => array( 'name' => __( 'Tools', 'wp-marketing-automations' ), 'isExpandable' => true, 'items' => self::get_tools_menu( $menu_data ), ), ); if ( ! bwfan_is_woocommerce_active() ) { unset( $left_nav_data['carts'] ); } /** Remove the keys which are not present in menudata */ if ( ! empty( $menu_data ) && is_array( $menu_data ) ) { $left_nav_data = array_filter( $left_nav_data, function ( $key ) use ( $menu_data ) { return $key === 'tools' || in_array( $key, $menu_data ); }, ARRAY_FILTER_USE_KEY ); if ( isset( $left_nav_data['tools'] ) && empty( $left_nav_data['tools']['items'] ) ) { unset( $left_nav_data['tools'] ); } } return $left_nav_data; } /** * Returns tools menu * * @param array $menu_data * * @return array[] */ public static function get_tools_menu( $menu_data = [] ) { $tool_menu = array( 'forms' => array( 'name' => __( 'Forms', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/forms' ), ), 'link-triggers' => array( 'name' => __( 'Link Triggers', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/link-triggers' ), ), 'connectors' => array( 'name' => __( 'Connectors', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/connectors' ), ), ); if ( ! get_option( 'bwfan_smtp_recommend', false ) ) { $tool_menu['mail-setup'] = array( 'name' => __( 'Email Setup', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/mail-setup' ), ); } /** Remove the keys which are not present in menudata */ if ( ! empty( $menu_data ) && is_array( $menu_data ) ) { return array_filter( $tool_menu, function ( $key ) use ( $menu_data ) { return in_array( $key, $menu_data ); }, ARRAY_FILTER_USE_KEY ); } return $tool_menu; } /** * Returns filtered tabs * * @return array[] */ public static function get_analytics_items() { $items = []; if ( false !== BWFAN_Plugin_Dependency::woocommerce_active_check() ) { $items['analytics-carts'] = array( 'name' => __( 'Carts', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/analytics' ), ); } $items['analytics-contacts'] = array( 'name' => __( 'Contacts', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/analytics/contacts' ), ); $items['analytics-emails'] = array( 'name' => __( 'Emails', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/analytics/emails' ), ); if ( method_exists( 'BWFCRM_Common', 'get_sms_provider_slug' ) && ! empty( BWFCRM_Common::get_sms_provider_slug() ) ) { $items['analytics-sms'] = array( 'name' => __( 'SMS', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/analytics/sms' ), ); } $items['analytics-engagement'] = array( 'name' => __( 'Engagement', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/analytics/engagement' ), ); return apply_filters( 'bwfan_autonami_analytics_l1_tabs', $items ); } public static function right_navigation() { $urls = BWFAN_Common::get_fk_site_links(); $support_url = add_query_arg( array( 'utm_medium' => 'Help+Support' ), $urls['support'] ); $docs_url = add_query_arg( array( 'utm_medium' => 'Help+Docs' ), $urls['docs'] ); return array( 'community' => array( 'name' => __( 'Join our community', 'wp-marketing-automations' ), 'desc' => __( 'Meet the other users', 'wp-marketing-automations' ), 'icon' => 'community', 'link' => 'https://www.facebook.com/groups/233743063908243/', 'target' => '_blank', ), 'support' => array( 'name' => __( 'Get Help', 'wp-marketing-automations' ), 'desc' => __( 'Contact support team', 'wp-marketing-automations' ), 'icon' => 'support', 'link' => $support_url, 'target' => '_blank', ), 'help' => array( 'name' => __( 'Read Docs', 'wp-marketing-automations' ), 'desc' => __( 'Get help along the way', 'wp-marketing-automations' ), 'icon' => 'help', 'link' => $docs_url, 'target' => '_blank', ), ); } public static function level_2_navigation_contacts() { return array( 'contacts' => array( 'name' => __( 'All Contacts', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/contacts' ), ), 'manage_lists' => array( 'name' => __( 'Lists', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/manage/lists' ), ), 'manage_tags' => array( 'name' => __( 'Tags', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/manage/tags' ), ), 'manage_fields' => array( 'name' => __( 'Fields', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/manage/fields' ), ), 'manage_audiences' => array( 'name' => __( 'Audiences', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/manage/audiences' ), 'isPro' => true, ), 'bulk_actions' => array( 'name' => __( 'Bulk Actions', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/bulk-actions' ), 'isPro' => true, ), ); } public static function level_2_navigation_broadcasts() { $broadcast_nav = array( 'email' => array( 'name' => __( 'Email', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/broadcasts/email' ), ), 'sms' => array( 'name' => __( 'SMS', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/broadcasts/sms' ), ), ); if ( bwfan_is_autonami_pro_active() && BWFAN_Core()->conversation->is_whatsapp_service_available() && ! apply_filters( 'bwfan_disabled_whatsapp_broadcast', true ) ) { $broadcast_nav['whatsapp'] = array( 'name' => __( 'WhatsApp', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/broadcasts/whatsapp' ), ); } return $broadcast_nav; } public static function level_2_navigation_analytics() { $analytics_nav_data = $direct_mail_analytics_nav_data = $sms_analytics = array(); if ( bwfan_is_woocommerce_active() ) { $analytics_nav_data['carts-analytics'] = array( 'name' => __( 'Carts', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/analytics/carts' ), ); } if ( apply_filters( 'bwfan_show_direct_mail_analytics', false ) && bwfan_is_autonami_pro_active() ) { $direct_mail_analytics_nav_data = array( 'direct-emails-analytics' => array( 'name' => __( 'Direct Emails', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/analytics/direct-emails' ), 'isPro' => true, 'showOnClick' => true, ) ); } if ( method_exists( 'BWFCRM_Common', 'get_sms_provider_slug' ) && ! empty( BWFCRM_Common::get_sms_provider_slug() ) ) { $sms_analytics = array( 'sms-analytics' => array( 'name' => __( 'SMS', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/analytics/sms' ), 'isPro' => true, 'showOnClick' => true, ) ); } $analytics_nav_data = array_merge( $analytics_nav_data, array( 'contacts-analytics' => array( 'name' => __( 'Contacts', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/analytics/contacts' ), 'isPro' => true, 'showOnClick' => true, ), 'emails-analytics' => array( 'name' => __( 'Emails', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/analytics/emails' ), 'isPro' => true, 'showOnClick' => true, ), ), $sms_analytics, $direct_mail_analytics_nav_data, array( 'engagement-analytics' => array( 'name' => __( 'Engagement', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/analytics/engagement' ), 'isPro' => true, 'showOnClick' => true, ), ) ); return apply_filters( 'bwfan_autonami_analytics_l2_tabs', $analytics_nav_data ); } public static function level_2_navigation_carts_react() { if ( ! bwfan_is_woocommerce_active() ) { return array(); } return array( 'recoverable' => array( 'name' => __( 'Recoverable', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/carts/recoverable' ), ), 'recovered' => array( 'name' => __( 'Recovered', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/carts/recovered' ), ), 'lost' => array( 'name' => __( 'Lost', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/carts/lost' ), ), ); } public static function level_2_navigation_automations() { $automations_tabs = array( 'automations' => array( 'name' => __( 'Automations', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/automations-v1' ), ), 'task-history' => array( 'name' => __( 'Task History', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/automations-v1/task-history' ), ), ); return $automations_tabs; } public static function level_2_navigation_new_automation() { $tabs = array( 'automations-v2' => array( 'name' => __( 'Automations', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/automations' ), ), 'automation-contacts' => array( 'name' => __( 'Contact Activity', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/automation-contacts' ), ), ); if ( BWFAN_Common::is_automation_v1_active() ) { $tabs['automations-v1'] = array( 'name' => __( 'Automations Legacy', 'wp-marketing-automations' ), // 'tag' => 'Legacy', 'link' => admin_url( 'admin.php?page=autonami&path=/automations-v1' ), ); } return $tabs; } public static function level_2_navigation_settings_react() { return array( 'general' => array( 'name' => __( 'General', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/settings/general' ), ), 'unsubscribers' => array( 'name' => __( 'Unsubscribers', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/settings/unsubscribers' ), ), 'tools' => array( 'name' => __( 'Tools', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/settings/tools' ), ), 'logs' => array( 'name' => __( 'Logs', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/settings/logs' ), ), ); } public static function level_2_navigation_connectors() { return array( 'all' => array( 'name' => __( 'All', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/connectors' ), ), 'active' => array( 'name' => __( 'Active', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/connectors/active' ), ), 'inactive' => array( 'name' => __( 'Inactive', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/connectors/inactive' ), ), ); } public static function level_2_navigation_templates() { $template_menu = []; if ( bwfan_is_woocommerce_active() ) { $template_menu['transactional'] = array( 'name' => __( 'Transactional Emails', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/transactional-emails' ), ); } $template_menu = array_merge( $template_menu, [ 'templates' => array( 'name' => __( 'Templates', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/templates' ), ), 'global-style' => array( 'name' => __( 'Global Styles', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/global-style' ), ), 'history' => array( 'name' => __( 'Email History', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/history' ), ) ] ); return $template_menu; } public static function level_2_navigation_links_triggers() { return array( 'all' => array( 'name' => __( 'All', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/link-triggers/all' ), ), 'active' => array( 'name' => __( 'Active', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/link-triggers/active' ), ), 'inactive' => array( 'name' => __( 'Inactive', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/link-triggers/inactive' ), ), ); } public static function level_2_navigation_bulk_actions() { return array( 'all' => array( 'name' => __( 'All', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/bulk-actions' ), ), 'ongoing' => array( 'name' => __( 'Ongoing', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/bulk-actions/ongoing' ), ), 'completed' => array( 'name' => __( 'Completed', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/bulk-actions/completed' ), ), 'paused' => array( 'name' => __( 'Paused', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/bulk-actions/paused' ), ), ); } public static function level_2_navigation_forms() { return array( 'all' => array( 'name' => __( 'All', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/forms/all' ), ), 'active' => array( 'name' => __( 'Active', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/forms/active' ), ), 'inactive' => array( 'name' => __( 'Inactive', 'wp-marketing-automations' ), 'link' => admin_url( 'admin.php?page=autonami&path=/forms/inactive' ), ), ); } public function render( $automation_migrated = false ) { ob_start(); ?>