elements.php
1 year ago
features.php
1 year ago
integration.php
1 year ago
popup-pro.php
1 year ago
sidebar.php
1 year ago
welcome.php
1 year ago
elements.php
137 lines
| 1 | <?php |
| 2 | if ( ! defined( 'ABSPATH' ) ) { |
| 3 | exit; // Exit if accessed directly |
| 4 | } |
| 5 | |
| 6 | use SPEL\includes\Admin\Module_Settings; |
| 7 | |
| 8 | $elements = Module_Settings::get_widget_settings(); |
| 9 | |
| 10 | // Global switcher |
| 11 | $element_opt = get_option( 'spe_widget_settings' ); |
| 12 | $checked_global = ( ! isset( $element_opt['element_global_switcher'] ) || $element_opt['element_global_switcher'] === 'on' ) ? ' checked' : ''; |
| 13 | $docy_widget_list = [ 'docly_cheatsheet', 'spel_videos_playlist', 'docy_tabs', 'docly_alerts_box' ]; |
| 14 | ?> |
| 15 | <div id="elements" class="tab-box"> |
| 16 | <div class="elements_tab_menu"> |
| 17 | <div class="tab_contents"> |
| 18 | <div class="icon"> |
| 19 | <i class="icon-element"></i> |
| 20 | </div> |
| 21 | <div class="content"> |
| 22 | <h3><?php esc_html_e( 'Elements', 'spider-elements' ); ?></h3> |
| 23 | </div> |
| 24 | </div> |
| 25 | <div class="menu_right_content"> |
| 26 | <div class="plugin_active_switcher"> |
| 27 | <label class="toggler" id="element_disabled"><?php esc_html_e( 'Disable All', 'spider-elements' ); ?></label> |
| 28 | <div class="toggle"> |
| 29 | <input type="checkbox" data-id="widget-list" id="element_switcher" name="element_global_switcher" |
| 30 | class="check element_global_switcher" <?php echo esc_attr( $checked_global ) ?>> |
| 31 | <label class="b switch" for="element_switcher"></label> |
| 32 | </div> |
| 33 | <label class="toggler" id="element_enabled"><?php esc_html_e( 'Enabled All', 'spider-elements' ); ?></label> |
| 34 | </div> |
| 35 | <button type="submit" name="elements-submit" id="elements-submit" class="dashboard_btn save_btn"> |
| 36 | <?php esc_html_e( 'Save Changes', 'spider-elements' ); ?> |
| 37 | </button> |
| 38 | </div> |
| 39 | </div> |
| 40 | |
| 41 | <div class="elements_tab" id="elements_filter"> |
| 42 | <div class="filter_data active" data-filter="*"> |
| 43 | <i class="icon-star"></i><?php esc_html_e( 'All', 'spider-elements' ); ?> |
| 44 | </div> |
| 45 | <div class="filter_data" data-filter=".free"> |
| 46 | <i class="icon-gift"></i><?php esc_html_e( 'Free', 'spider-elements' ); ?> |
| 47 | </div> |
| 48 | <div class="filter_data" data-filter=".pro"> |
| 49 | <i class="icon-premium"></i><?php esc_html_e( 'Pro', 'spider-elements' ); ?> |
| 50 | </div> |
| 51 | </div> |
| 52 | |
| 53 | <div class="filter_content ezd-d-flex" id="elements_list"> |
| 54 | <?php |
| 55 | if ( is_array( $elements['spider_elements_widgets'] ) ) { |
| 56 | foreach ( $elements['spider_elements_widgets'] as $item ) { |
| 57 | |
| 58 | $widget_type = $item['widget_type'] ?? ''; |
| 59 | $widget_name = $item['name'] ?? ''; |
| 60 | |
| 61 | $is_pro = $widget_type === 'pro'; |
| 62 | $is_locked = $is_pro && !spel_is_premium() && ! ( spel_unlock_docy_theme() && in_array( $widget_name, $docy_widget_list, true ) ); |
| 63 | $is_pro_widget_class = $is_locked ? ' pro_popup' : ''; |
| 64 | $is_pro_widget_attr = $is_locked ? ' disabled' : ''; |
| 65 | |
| 66 | // By default, all the switcher is checked |
| 67 | $widget_checked = (! isset( $element_opt[ $widget_name ] ) || $element_opt[ $widget_name ] === 'on' ) ? ' checked' : ''; |
| 68 | ?> |
| 69 | <div class="ezd-colum-space-4 <?php echo esc_attr( $item['widget_type'] ) ?>"> |
| 70 | <div class="element_box element_switch badge"> |
| 71 | <div class="element_content"> |
| 72 | <?php |
| 73 | if ( ! empty( $item['icon'] ) ) { ?> |
| 74 | <i class="<?php echo esc_attr( $item['icon'] ) ?>"></i> |
| 75 | <?php |
| 76 | } |
| 77 | if ( ! empty( $item['label'] ) ) { ?> |
| 78 | <label for="<?php echo esc_attr( $item['name'] ) ?>"><?php echo esc_html( $item['label'] ) ?></label> |
| 79 | <?php |
| 80 | } |
| 81 | ?> |
| 82 | </div> |
| 83 | <div class="element_right"> |
| 84 | <?php |
| 85 | if ( ! empty( $item['label'] ) ) { |
| 86 | ?> |
| 87 | <div class="link"> |
| 88 | <?php |
| 89 | if ( ! empty( $item['demo_url'] ) ) { |
| 90 | ?> |
| 91 | <a href="<?php echo esc_url( $item['demo_url'] ) ?>" class="tooltip-top" |
| 92 | data-tooltip="<?php echo sprintf( esc_attr__( 'View %s Widget Demo', 'spider-elements' ), $item['label'] ) ?>" |
| 93 | target="_blank"> |
| 94 | <img src="<?php echo esc_url( SPEL_IMG . '/dashboard/icon-demo.svg' ) ?>" |
| 95 | alt="<?php esc_attr_e( 'Widget Demo', 'spider-elements' ); ?>"> |
| 96 | </a> |
| 97 | <?php |
| 98 | } |
| 99 | if ( ! empty( $item['video_url'] ) ) { |
| 100 | ?> |
| 101 | <a href="<?php echo esc_url( $item['video_url'] ) ?>" class="tooltip-top" |
| 102 | data-tooltip="<?php echo sprintf( esc_attr__( 'View %s Video Tutorial', 'spider-elements' ), $item['label'] ) ?>" |
| 103 | target="_blank"> |
| 104 | <img src="<?php echo esc_url( SPEL_IMG . '/dashboard/icon-video.svg' ) ?>" |
| 105 | alt="<?php esc_attr_e( 'Video Tutorial', 'spider-elements' ); ?>"> |
| 106 | </a> |
| 107 | <?php |
| 108 | } |
| 109 | if ( ! empty( $item['docs_url'] ) ) { |
| 110 | ?> |
| 111 | <a href="<?php echo esc_url( $item['docs_url'] ) ?>" class="tooltip-top" |
| 112 | data-tooltip="<?php echo sprintf( esc_attr__( 'View %s Documentation', 'spider-elements' ), $item['label'] ) ?>" |
| 113 | target="_blank"> |
| 114 | <img src="<?php echo esc_url( SPEL_IMG . '/dashboard/icon-document.svg' ) ?>" |
| 115 | alt="<?php esc_attr_e( 'Documentation', 'spider-elements' ); ?>"> |
| 116 | </a> |
| 117 | <?php |
| 118 | } |
| 119 | ?> |
| 120 | </div> |
| 121 | <?php |
| 122 | } |
| 123 | ?> |
| 124 | <label for="<?php echo esc_attr( $item['name'] ) ?>" class="switch_label<?php echo esc_attr( $is_pro_widget_class ) ?>"> |
| 125 | <input type="checkbox" class="widget_checkbox widget-list" name="<?php echo esc_attr( $item['name'] ) ?>" |
| 126 | id="<?php echo esc_attr( $item['name'] ) ?>" <?php echo esc_attr( $widget_checked . $is_pro_widget_attr ); ?>> |
| 127 | <span class="widget_switcher"></span> |
| 128 | </label> |
| 129 | </div> |
| 130 | </div> |
| 131 | </div> |
| 132 | <?php |
| 133 | } |
| 134 | } |
| 135 | ?> |
| 136 | </div> |
| 137 | </div> |