/* Widget Name: Button Description: Create a custom button with flexible styling, icon support, and click tracking functionality. Author: SiteOrigin Author URI: https://siteorigin.com Documentation: https://siteorigin.com/widgets-bundle/button-widget-documentation/ Keywords: event, icon, link */ class SiteOrigin_Widget_Button_Widget extends SiteOrigin_Widget { public function __construct() { parent::__construct( 'sow-button', __( 'SiteOrigin Button', 'so-widgets-bundle' ), array( 'description' => __( 'Create a custom button with flexible styling, icon support, and click tracking functionality.', 'so-widgets-bundle' ), 'help' => 'https://siteorigin.com/widgets-bundle/button-widget-documentation/', ), array( ), false, plugin_dir_path( __FILE__ ) ); } public function get_settings_form() { return array( 'responsive_breakpoint' => array( 'type' => 'measurement', 'label' => __( 'Responsive Breakpoint', 'so-widgets-bundle' ), 'default' => '780px', 'description' => __( 'This setting controls when the Mobile Align setting will be used. The default value is 780px.', 'so-widgets-bundle' ), ), ); } public function initialize() { $this->register_frontend_styles( array( array( 'sow-button-base', plugin_dir_url( __FILE__ ) . 'css/style.css', array(), SOW_BUNDLE_VERSION, ), ) ); } public function get_widget_form() { return array( 'text' => array( 'type' => 'text', 'label' => __( 'Button Text', 'so-widgets-bundle' ), ), 'url' => array( 'type' => 'link', 'label' => __( 'Destination URL', 'so-widgets-bundle' ), 'allow_shortcode' => true, ), 'new_window' => array( 'type' => 'checkbox', 'default' => false, 'label' => __( 'Open in a new window', 'so-widgets-bundle' ), ), 'download' => array( 'type' => 'checkbox', 'default' => false, 'label' => __( 'Download', 'so-widgets-bundle' ), 'description' => __( 'The Destination URL will be downloaded when a user clicks on the button.', 'so-widgets-bundle' ), ), 'button_icon' => array( 'type' => 'section', 'label' => __( 'Icon', 'so-widgets-bundle' ), 'fields' => array( 'icon_selected' => array( 'type' => 'icon', 'label' => __( 'Icon', 'so-widgets-bundle' ), ), 'icon_color' => array( 'type' => 'color', 'label' => __( 'Icon Color', 'so-widgets-bundle' ), ), 'icon' => array( 'type' => 'media', 'label' => __( 'Image Icon', 'so-widgets-bundle' ), 'description' => __( 'Replaces the icon with your own image icon.', 'so-widgets-bundle' ), ), 'icon_placement' => array( 'type' => 'select', 'label' => __( 'Icon Placement', 'so-widgets-bundle' ), 'default' => 'left', 'options' => array( 'top' => __( 'Top', 'so-widgets-bundle' ), 'right' => __( 'Right', 'so-widgets-bundle' ), 'bottom' => __( 'Bottom', 'so-widgets-bundle' ), 'left' => __( 'Left', 'so-widgets-bundle' ), ), ), ), ), 'design' => array( 'type' => 'section', 'label' => __( 'Design and Layout', 'so-widgets-bundle' ), 'hide' => true, 'fields' => array( 'width' => array( 'type' => 'measurement', 'label' => __( 'Width', 'so-widgets-bundle' ), 'description' => __( 'Leave blank to let the button resize according to content.', 'so-widgets-bundle' ), ), 'align' => array( 'type' => 'select', 'label' => __( 'Align', 'so-widgets-bundle' ), 'default' => 'center', 'options' => array( 'left' => __( 'Left', 'so-widgets-bundle' ), 'right' => __( 'Right', 'so-widgets-bundle' ), 'center' => __( 'Center', 'so-widgets-bundle' ), 'justify' => __( 'Full Width', 'so-widgets-bundle' ), ), ), 'mobile_align' => array( 'type' => 'select', 'label' => __( 'Mobile Align', 'so-widgets-bundle' ), 'default' => 'center', 'options' => array( 'left' => __( 'Left', 'so-widgets-bundle' ), 'right' => __( 'Right', 'so-widgets-bundle' ), 'center' => __( 'Center', 'so-widgets-bundle' ), 'justify' => __( 'Full Width', 'so-widgets-bundle' ), ), ), 'theme' => array( 'type' => 'select', 'label' => __( 'Button Theme', 'so-widgets-bundle' ), 'default' => 'flat', 'options' => array( 'atom' => __( 'Atom', 'so-widgets-bundle' ), 'flat' => __( 'Flat', 'so-widgets-bundle' ), 'wire' => __( 'Wire', 'so-widgets-bundle' ), ), ), 'button_color' => array( 'type' => 'color', 'label' => __( 'Button Color', 'so-widgets-bundle' ), ), 'text_color' => array( 'type' => 'color', 'label' => __( 'Text Color', 'so-widgets-bundle' ), ), 'hover' => array( 'type' => 'checkbox', 'default' => true, 'label' => __( 'Use hover effects', 'so-widgets-bundle' ), 'state_emitter' => array( 'callback' => 'conditional', 'args' => array( 'hover[show]: val', 'hover[hide]: ! val', ), ), ), 'hover_background_color' => array( 'type' => 'color', 'label' => __( 'Hover Background Color', 'so-widgets-bundle' ), 'state_handler' => array( 'hover[show]' => array( 'show' ), 'hover[hide]' => array( 'hide' ), ), ), 'hover_text_color' => array( 'type' => 'color', 'label' => __( 'Hover Text Color', 'so-widgets-bundle' ), 'state_handler' => array( 'hover[show]' => array( 'show' ), 'hover[hide]' => array( 'hide' ), ), ), 'font' => array( 'type' => 'font', 'label' => __( 'Font', 'so-widgets-bundle' ), 'default' => 'default', ), 'font_size' => array( 'type' => 'measurement', 'label' => __( 'Font Size', 'so-widgets-bundle' ), 'default' => '1em', ), 'icon_size' => array( 'type' => 'measurement', 'label' => __( 'Icon Size', 'so-widgets-bundle' ), 'default' => '1.3em', ), 'padding' => array( 'type' => 'measurement', 'label' => __( 'Padding', 'so-widgets-bundle' ), 'default' => '1em', ), 'rounding' => array( 'type' => 'multi-measurement', 'label' => __( 'Rounding', 'so-widgets-bundle' ), 'default' => '0.25em 0.25em 0.25em 0.25em', 'measurements' => array( 'top' => array( 'label' => __( 'Top', 'so-widgets-bundle' ), ), 'right' => array( 'label' => __( 'Right', 'so-widgets-bundle' ), ), 'bottom' => array( 'label' => __( 'Bottom', 'so-widgets-bundle' ), ), 'left' => array( 'label' => __( 'Left', 'so-widgets-bundle' ), ), ), ), ), ), 'attributes' => array( 'type' => 'section', 'label' => __( 'Other Attributes and SEO', 'so-widgets-bundle' ), 'hide' => true, 'fields' => array( 'id' => array( 'type' => 'text', 'label' => __( 'Button ID', 'so-widgets-bundle' ), 'description' => __( 'An ID attribute allows you to target this button in JavaScript.', 'so-widgets-bundle' ), ), 'classes' => array( 'type' => 'text', 'label' => __( 'Button Classes', 'so-widgets-bundle' ), 'description' => __( 'Additional CSS classes added to the button link.', 'so-widgets-bundle' ), ), 'title' => array( 'type' => 'text', 'label' => __( 'Title Attribute', 'so-widgets-bundle' ), 'description' => __( 'Adds a title attribute to the button link.', 'so-widgets-bundle' ), ), 'on_click' => array( 'type' => 'text', 'label' => __( 'Onclick', 'so-widgets-bundle' ), 'description' => __( 'Run this JavaScript when the button is clicked. Ideal for tracking.', 'so-widgets-bundle' ), 'onclick' => true, ), 'rel' => array( 'type' => 'text', 'label' => __( 'Rel Attribute', 'so-widgets-bundle' ), 'description' => __( 'Adds a rel attribute to the button link.', 'so-widgets-bundle' ), ), ), ), ); } public function get_style_name( $instance ) { if ( empty( $instance['design']['theme'] ) ) { return 'atom'; } return $instance['design']['theme']; } /** * Get the variables for the Button Widget. * * @return array */ public function get_template_variables( $instance, $args ) { $button_attributes = array(); $attributes = $instance['attributes']; $classes = ! empty( $attributes['classes'] ) ? $attributes['classes'] : ''; if ( ! empty( $classes ) ) { $classes .= ' '; } $classes .= 'sowb-button ow-icon-placement-' . $instance['button_icon']['icon_placement']; if ( ! empty( $instance['design']['hover'] ) ) { $classes .= ' ow-button-hover'; } $button_attributes['class'] = implode( ' ', array_map( 'sanitize_html_class', explode( ' ', $classes ) ) ); if ( ! empty( $instance['new_window'] ) ) { $button_attributes['target'] = '_blank'; $button_attributes['rel'] = 'noopener noreferrer'; } if ( ! empty( $instance['download'] ) ) { $button_attributes['download'] = null; } if ( ! empty( $attributes['id'] ) ) { $button_attributes['id'] = $attributes['id']; } if ( ! empty( $attributes['title'] ) ) { $button_attributes['title'] = $attributes['title']; } if ( ! empty( $attributes['rel'] ) ) { if ( isset( $button_attributes['rel'] ) ) { $button_attributes['rel'] .= " $attributes[rel]"; } else { $button_attributes['rel'] = $attributes['rel']; } } $icon_image_url = ''; if ( ! empty( $instance['button_icon']['icon'] ) ) { $attachment = wp_get_attachment_image_src( $instance['button_icon']['icon'] ); if ( ! empty( $attachment ) ) { $icon_image_url = $attachment[0]; } } return array( 'button_attributes' => apply_filters( 'siteorigin_widgets_button_attributes', $button_attributes, $instance ), 'href' => ! empty( $instance['url'] ) ? $instance['url'] : '', 'on_click' => ! empty( $attributes['on_click'] ) ? $attributes['on_click'] : '', 'align' => $instance['design']['align'], 'icon_image_url' => $icon_image_url, 'icon' => $instance['button_icon']['icon_selected'], 'icon_color' => $instance['button_icon']['icon_color'], 'text' => $instance['text'], ); } /** * Get the variables that we'll be injecting into the less stylesheet. * * @return array */ public function get_less_variables( $instance ) { if ( empty( $instance ) || empty( $instance['design'] ) ) { return array(); } $text_color = isset( $instance['design']['text_color'] ) ? $instance['design']['text_color'] : ''; $button_color = isset( $instance['design']['button_color'] ) ? $instance['design']['button_color'] : ''; $less_vars = array( 'button_width' => isset( $instance['design']['width'] ) ? $instance['design']['width'] : '', 'button_color' => $button_color, 'text_color' => $text_color, 'icon_size' => ! empty( $instance['design']['icon_size'] ) ? $instance['design']['icon_size'] : '1.3em', 'hover_text_color' => ! empty( $instance['design']['hover_text_color'] ) ? $instance['design']['hover_text_color'] : $text_color, 'hover_background_color' => ! empty( $instance['design']['hover_background_color'] ) ? $instance['design']['hover_background_color'] : $button_color, 'font_size' => isset( $instance['design']['font_size'] ) ? $instance['design']['font_size'] : '', 'rounding' => isset( $instance['design']['rounding'] ) ? $instance['design']['rounding'] : '', 'padding' => isset( $instance['design']['padding'] ) ? $instance['design']['padding'] : '', 'has_text' => empty( $instance['text'] ) ? 'false' : 'true', 'responsive_breakpoint' => $this->get_global_settings( 'responsive_breakpoint' ), 'align' => ! empty( $instance['design']['align'] ) ? $instance['design']['align'] : 'center', 'mobile_align' => ! empty( $instance['design']['mobile_align'] ) ? $instance['design']['mobile_align'] : 'center', 'has_button_icon' => empty( $instance['button_icon']['icon_selected'] ) ? 'false' : 'true', ); if ( ! empty( $instance['design']['font'] ) ) { $font = siteorigin_widget_get_font( $instance['design']['font'] ); $less_vars['button_font'] = $font['family']; if ( ! empty( $font['weight'] ) ) { $less_vars['button_font_weight'] = $font['weight_raw']; $less_vars['button_font_style'] = $font['style']; } } return $less_vars; } /** * Make sure the instance is the most up to date version. * * @return mixed */ public function modify_instance( $instance ) { if ( empty( $instance ) ) { return array(); } $migrate_props = array( 'button_icon' => array( 'icon_selected', 'icon_color', 'icon', ), 'design' => array( 'align', 'theme', 'button_color', 'text_color', 'hover', 'hover_text_color', 'hover_background_color', 'font_size', 'rounding', 'padding', ), 'attributes' => array( 'id', ), ); foreach ( $migrate_props as $prop => $sub_props ) { if ( empty( $instance[ $prop ] ) ) { $instance[ $prop ] = array(); foreach ( $sub_props as $sub_prop ) { if ( isset( $instance[ $sub_prop ] ) ) { $instance[ $prop ][ $sub_prop ] = $instance[ $sub_prop ]; unset( $instance[ $sub_prop ] ); } } } } // Migrate onclick setting to prevent Wordfence flag. if ( ! empty( $instance['attributes'] ) && ! empty( $instance['attributes']['onclick'] ) ) { $instance['attributes']['on_click'] = $instance['attributes']['onclick']; } // If the mobile_align setting isn't set, set it to the same value as the align value. if ( ! empty( $instance['design'] ) && ! empty( $instance['design']['align'] ) && empty( $instance['design']['mobile_align'] ) ) { $instance['design']['mobile_align'] = $instance['design']['align']; } // Migrate predefined settings to more customizable settings. if ( ! empty( $instance['design']['font_size'] ) && is_numeric( $instance['design']['font_size'] ) ) { $instance['design']['font_size'] .= 'em'; } if ( ! empty( $instance['design']['padding'] ) && is_numeric( $instance['design']['padding'] ) ) { $instance['design']['padding'] .= 'em'; } if ( ! empty( $instance['design']['rounding'] ) && is_numeric( $instance['design']['rounding'] ) ) { $instance['design']['rounding'] = $instance['design']['rounding'] . 'em ' . $instance['design']['rounding'] . 'em ' . $instance['design']['rounding'] . 'em ' . $instance['design']['rounding'] . 'em'; } if ( empty( $instance['design']['icon_size'] ) ) { $instance['design']['icon_size'] = '1.3em'; } return $instance; } public function get_form_teaser() { if ( class_exists( 'SiteOrigin_Premium' ) ) { return false; } return array( sprintf( __( 'Add a beautiful tooltip to the Button Widget with %sSiteOrigin Premium%s', 'so-widgets-bundle' ), '', '' ), ); } } siteorigin_widget_register( 'sow-button', __FILE__, 'SiteOrigin_Widget_Button_Widget' );{"id":192112,"date":"2026-06-22T17:52:52","date_gmt":"2026-06-22T17:52:52","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=192112"},"modified":"2026-06-22T17:52:53","modified_gmt":"2026-06-22T17:52:53","slug":"hallo-mehr-jackpot-meister-es-tut-diese-autor-so-not-so-wir-ihnen-kaum-gute-erfahrung-gebracht-haben","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/hallo-mehr-jackpot-meister-es-tut-diese-autor-so-not-so-wir-ihnen-kaum-gute-erfahrung-gebracht-haben\/","title":{"rendered":"Hallo, mehr Jackpot-Meister, es tut diese autor so not, so wir Ihnen kaum gute Erfahrung gebracht haben"},"content":{"rendered":"

Wir https:\/\/winspirit-germany.com\/bonus\/<\/a> freuen unnilseptium darauf, einige Vorschlage zur Verbesserung vos Spiels und unseres Service von Ihnen nach erhalten, was f\u00fcr united nations schon wichtig ist, um es besser nach machen. Danke etwas f\u00fcr Diese Sch\u00fctzenhilfe und Ausdauer. Wir sind diese Bestes geben, dar\u00fcber Ihnen eine bessere Erfahrung auf angebot!<\/p>\n

Diese App ist als diese namlich super gemacht, zwar es gibt mehr Zeug diese extrem behindern.1) sturzt in diesem iPad in 2018 regelm\u00e4\u00dfig nicht vor.2) in ihnen Abfahrt das Application von diese bank three – seven Werbungen diese zum Angliederung von Gold and gold coins motivieren mussen. Wer vielleicht diese Slot Roboter \u00f6fter spielt ist von diesem Kauf schnell denken. Am anfang gewinnt guy bekannterma?en noch, und es kommen sekundar mal hohere Gewinne. Machtigkeit man zwar hohere Einsatze ist es daruber vorbei. Immer jedoch noch gute Gewinne. Hier verstehe ich diese Entwickler ein Slot Roboter gar nicht. Wenn ich jedoch andauernd jedoch immer diese Mini Gewinne bekomme, wie kommt es, so… soll ich dann fur jedes mein stinkwutend verdientes Geld Gold and gold coins kaufen. Ich kann Namlich sowieso nichts erlangen. Immer jedoch Kleinkram. Somit wer hier kauft, kann sind Geld gleich gut in einen Schrott schmei?en, einen es ist reine betrug.3) Schade ist auch es adult male diese Mangeln nicht wirklich abbrechen kann. Das Licht hierzu geht allzu sp\u00e4t angeschaltet. 4) nicht augenfallig ist auch ein verdoppelungs Provision f\u00fcr meinen viertelstunde und einen 5 und 22 Stunden Vermittlungsgebuhr. In welchen Kriterien erhoht sich ein Verst\u00e4rker.?Ein 2 Schublade geht bekannterma?en noch, vielleicht ein four Schublade dauert immer, & charakter schafft ihn jedoch \u00fcber dem nachkaufen von Gold and gold coins.Fazit : Diese Application ist zum jetzigem Moment, und so wie diese leser inoffizieller mitarbeiter moment lauft, aus meiner Meinung nicht zu empfehlen.Intensiv sind diese aufgefuhrten Seltenheit sehr leicht durch die Entwickler nach in ordnung bringen.<\/p>\n

Macht angewiesen<\/h2>\n

Hallo, wenn eine Ausnahme in dem Runde aufgetreten ist, kontaktiere united nations bitte und melde diese Sache inoffizieller mitarbeiter Runde: EINSTELLUNGEN> Hilfe > KONTAKTIERE United nations. Wir mochten Ihnen auf diese arme greifen, diese Sache nach uberprufen und so schnell wie m\u00f6glich nach beantworten. Wir verzeihen diese autor z. hd. diese Unannehmlichkeiten. Einen schonen Tag!<\/p>\n

Runde von alleine super vielleicht immer wieder friert es Foto ein in dem apple iphone dreizehn F\u00fcr Max. Und das Kleinigkeiten zur Lauterung in einen Einstellungen w\u00fcrde mich freuen wenn ein beilaufig einen Knopf as part of einen Einstellungen einbaut ein noch diese nervige Musik ausmacht. Wenn es moglich produkt beim nachsten Update…<\/p>\n

Macht abhangig<\/h2>\n

Hallo, wenn eine Ausnahme in dem Runde aufgetreten ist, kontaktiere uns bitte und melde das Sache inoffizieller mitarbeiter Runde: EINSTELLUNGEN> Hilfe > KONTAKTIERE Uns. Wir mochten Ihnen helfen, diese Sache nach uberprufen und schon so schnell wie m\u00f6glich auf beantworten. Wir vergeben wir f\u00fcr diese Unannehmlichkeiten. Einen schonen Tag!<\/p>\n

Ich gef\u00e4\u00df von einen slots, das Grafik und einen ganzen Boni extrem uberzeugt und begeistert. Jedoch ein Hilfe ist gar nicht Hilfeich, ich w\u00fcrde ich sagen verspottend! Ich hatte in dem von ein offiziellen Instagram Page veranstalteten present on \u00fcber gemacht und selbst gewonnen, ich ist super glucklich namlich ich hatte einen Gegenwert in jeweils 000$ Pr\u00e4gen und Juwelen gewonnen! Jedoch von einen Fehler seitens des Personnel, hatte ich jeweils noch einen Aquivalenz jeweils in 4$ erhalten. Ich hatte \u00fcber einen Instagram Post , \u00fcber einen Hilfe selbst \u00fcber diese Facebook Page da die ja sekundar beantworten versucht , verzweifelt, 2 Wochen lang angeschaltet meinen Erfolg nach kommen, jedoch auf diesem nur \ufffdmunzgewinn\ufffd von four$ reihe inoffizieller mitarbeiter Postfach wird ich nur jedoch noch verspottet ich hatte bekannterma?en noch paar nur Munzen erhalten ich solle mich noch begn\u00fcgen, ist ich reibungslos auf ihnen Kanalen unber\u00fccksichtigt. Schade das ein Hilfe einen Spielspa? so auseinander macht.Ps auch diese Bewertung hatte meine wenigkeit \u00e4hnlich etwas vorab 3 Konferieren gepostet, ist offenbar zwar sekundar weggelassen, was durchweg aufdringlich ist es beilaufig noch so verheimlichen nach wollen !!<\/p>\n","protected":false},"excerpt":{"rendered":"

Wir https:\/\/winspirit-germany.com\/bonus\/ freuen unnilseptium darauf, einige Vorschlage zur Verbesserung vos Spiels und unseres Service von Ihnen nach erhalten, was f\u00fcr united nations schon wichtig ist, um es besser nach machen. Danke etwas f\u00fcr Diese Sch\u00fctzenhilfe und Ausdauer. Wir sind diese Bestes geben, dar\u00fcber Ihnen eine bessere Erfahrung auf angebot! Diese\u2026<\/p>\n

Continue reading<\/span><\/i><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-192112","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/192112","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/comments?post=192112"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/192112\/revisions"}],"predecessor-version":[{"id":192114,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/192112\/revisions\/192114"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=192112"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=192112"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=192112"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}