%PDF- %PDF-
Direktori : /proc/self/root/home/infra/new-ong/bethemeold/muffin-options/fields/social/ |
Current File : //proc/self/root/home/infra/new-ong/bethemeold/muffin-options/fields/social/field_social.php |
<?php class MFN_Options_social extends Mfn_Options_field { /** * Render */ public function render( $meta = false, $vb = false, $js = false ) { // socials $socials = [ 'skype' => [ 'title' => 'Skype', 'desc' => __('Skype login. You can use callto: or skype: prefix', 'mfn-opts'), 'icon' => 'icon-skype', ], 'whatsapp' => [ 'title' => 'WhatsApp', 'desc' => __('WhatsApp URL. You can use whatsapp: prefix', 'mfn-opts'), 'icon' => 'icon-whatsapp', ], 'facebook' => [ 'title' => 'Facebook', 'icon' => 'icon-facebook', ], 'twitter' => [ 'title' => 'X (Twitter)', 'icon' => 'icon-x-twitter', ], 'vimeo' => [ 'title' => 'Vimeo', 'icon' => 'icon-vimeo', ], 'youtube' => [ 'title' => 'YouTube', 'icon' => 'icon-play', ], 'flickr' => [ 'title' => 'Flickr', 'icon' => 'icon-flickr', ], 'linkedin' => [ 'title' => 'LinkedIn', 'icon' => 'icon-linkedin', ], 'pinterest' => [ 'title' => 'Pinterest', 'icon' => 'icon-pinterest', ], 'dribbble' => [ 'title' => 'Dribbble', 'icon' => 'icon-dribbble', ], 'instagram' => [ 'title' => 'Instagram', 'icon' => 'icon-instagram', ], 'tiktok' => [ 'title' => 'TikTok', 'icon' => 'icon-tiktok', ], 'snapchat' => [ 'title' => 'Snapchat', 'icon' => 'icon-snapchat', ], 'behance' => [ 'title' => 'Behance', 'icon' => 'icon-behance', ], 'tumblr' => [ 'title' => 'Tumblr', 'icon' => 'icon-tumblr', ], 'tripadvisor' => [ 'title' => 'Tripadvisor', 'icon' => 'icon-tripadvisor', ], 'vkontakte' => [ 'title' => 'VKontakte', 'icon' => 'icon-vkontakte', ], 'viadeo' => [ 'title' => 'Viadeo', 'icon' => 'icon-viadeo', ], 'xing' => [ 'title' => 'Xing', 'icon' => 'icon-xing', ], 'custom' => true, 'rss' => true, ]; // order if( ! empty( $this->value['order'] ) ){ $order = $this->value['order']; $order = explode( ',', $order ); $order = array_unique( array_merge( $order, array_keys( $socials ) ) ); } else { $order = array_keys( $socials ); } // output ----- echo '<div class="form-group social-icons">'; echo '<ul class="social-wrapper">'; foreach( $order as $key ){ if( false !== strpos($key, 'custom') ){ if( 'custom' === $key ){ $option = 'social-custom-icon'; } else { $option = str_replace('custom-', '', $key); $option = 'social-custom-icon-'. $option; } if( ! empty( mfn_opts_get($option) ) ){ $icon = mfn_opts_get($option); } else { $icon = 'fas fa-question'; } echo '<li data-key="'. esc_attr($key) .'">'; echo '<div class="drag"><i class="icon-arrow-combo"></i></div>'; echo '<div class="label"><i class="'. esc_attr($icon) .'"></i>'. str_replace('-', ' ', ucfirst($key)) .'</div>'; echo '<div class="form-control">'; echo '<span>'. sprintf( __('Custom icon selected <a href="%s">below</a>', 'mfn-opts'), 'admin.php?page=be-options#social&'. esc_attr($key) ) .'</span>'; echo '</div>'; echo '</li>'; } elseif( 'rss' == $key ) { echo '<li data-key="rss">'; echo '<div class="drag"><i class="icon-arrow-combo"></i></div>'; echo '<div class="label"><i class="icon-rss"></i> RSS</div>'; echo '<div class="form-control">'; echo '<span>'. sprintf( __('Show the RSS icon if enabled <a href="%s">below</a>', 'mfn-opts'), 'admin.php?page=be-options#social&rss' ) .'<span>'; echo '</div>'; echo '</li>'; } else { $social = $socials[$key]; if( ! empty( $this->value[$key] ) ){ $value = $this->value[$key]; } else { $value = ''; } if( ! empty( $social['desc'] ) ){ $desc = $social['desc']; } else { $desc = __('Link to the profile page', 'mfn-opts'); } if( $js ){ echo '<li data-key="'. esc_attr($key) .'">'; echo '<div class="drag"><i class="icon-arrow-combo"></i></div>'; echo '<div class="label" data-tooltip="'. esc_attr($desc) .'"><i class="'. esc_attr( $social['icon'] ) .'"></i> '. esc_html( $social['title'] ) .'</div>'; echo '<div class="form-control">'; echo '<input class="mfn-form-control mfn-field-value mfn-form-input" type="text" '. $this->get_name( $meta, $key ) .' value="\'+('.$js.' && typeof '.$js.'[\''.$key.'\'] !== \'undefined\' && '.$js.'[\''.$key.'\'].length ? '.$js.'[\''.$key.'\'] : "")+\'"/>'; echo '</div>'; echo '</li>'; }else{ echo '<li data-key="'. esc_attr($key) .'">'; echo '<div class="drag"><i class="icon-arrow-combo"></i></div>'; echo '<div class="label" data-tooltip="'. esc_attr($desc) .'"><i class="'. esc_attr( $social['icon'] ) .'"></i> '. esc_html( $social['title'] ) .'</div>'; echo '<div class="form-control">'; echo '<input class="mfn-form-control mfn-field-value mfn-form-input" type="text" '. $this->get_name( $meta, $key ) .' value="'. esc_attr( $value ) .'"/>'; echo '</div>'; echo '</li>'; } } } echo '</ul>'; if( $js ){ echo '<input type="hidden" data-obj="order" class="social-order mfn-field-value" '. $this->get_name( $meta, 'order' ) .' value="\'+('.$js.' && typeof '.$js.'[\'order\'] !== \'undefined\' && '.$js.'[\'order\'].length ? '.$js.'[\'order\'] : "")+\'" />'; }else{ echo '<input type="hidden" data-obj="order" class="social-order mfn-field-value" '. $this->get_name( $meta, 'order' ) .' value="'. esc_attr( implode( ',', $order ) ) .'" />'; } echo '</div>'; echo $this->get_description(); // enqueue $this->enqueue(); } /** * Enqueue */ public function enqueue() { wp_enqueue_script( 'mfn-opts-field-social', MFN_OPTIONS_URI .'fields/social/field_social.js', array( 'jquery' ), MFN_THEME_VERSION, true ); } }