/* 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":172047,"date":"2026-06-22T13:37:32","date_gmt":"2026-06-22T13:37:32","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=172047"},"modified":"2026-06-22T13:37:33","modified_gmt":"2026-06-22T13:37:33","slug":"ein-guter-ausgangspunkt-ist-playcasino-%ef%bf%bd-ganz-unsere-moglich-casinos-man-sagt-sie-sind-auf-jeden-fall-und-gepruft-2","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/ein-guter-ausgangspunkt-ist-playcasino-%ef%bf%bd-ganz-unsere-moglich-casinos-man-sagt-sie-sind-auf-jeden-fall-und-gepruft-2\/","title":{"rendered":"Ein guter Ausgangspunkt ist Playcasino \ufffd ganz unsere Moglich-Casinos man sagt, sie sind auf jeden fall und gepruft"},"content":{"rendered":"

Der das wichtigsten Unklarheiten nach handen erfahrene und unerfahrene Gemeinsam-Casino Spieler ist das Frage Zahlungsarten<\/h2>\n

Curacao locowin Bonus ohne Einzahlung<\/a> – diese Curacao Gaming Strap Motherboard (GCB) ist eine Institut, diese the late 90s \u00fcber dem Abschluss gegrundet ist, diese nicht alltagliche Glucksspielindustrie nach regeln, diese in und von Curacao aus angeschaltet ist.<\/p>\n

Haufig gestellte fragen \ufffd Diese haufigsten und wichtigsten Fragen<\/h2>\n

Immer mehr Leute farbe bekennen sich nach handen Erreichbar-Glucksspiele wie passende Zusatzliche nach uberfullten Casinos und es verf\u00fcgt einen Prasenz, als produkt das zur neuen Norm geworden. Wenn Sie bisher noch gar kein Erreichbar-Casino ausprobiert haben, zwar neugierig darauf man sagt, sie sind, dann fragen Sie sich vielleicht, irgendwo Die \u00f6ffnen mussen und das Die in ein Wahl der Glucksspielseite merken mussen – ja geht es dar\u00fcber Ein Geld. Wir machen es Ihnen etwas einfacher. Es moglicherweise eingangig sein, vielleicht das Wichtigste in ein Wahl eines Umsetzbar-Casinos ist, so Die auf jeden fall sind, so das Casino nach 100000% serios ist. Wie k\u00f6nnen Sie sicher sein?<\/p>\n

Es ist nebensachlich ein Sache, beim es sich rechnet, ganz prazise hinzuschauen, ja das Angebot angeschaltet Optionen ist heute schon riesig & was fur einen einen Glucksspieler diese perfekte Auflosung sein kann, kann f\u00fcr einen anderen ein absolutes No-Get sind. Wir geben Ihnen detaillierte Erklarungen nach einen bekanntesten Zahlungsarten in M\u00f6glich-Casinos. Klicken Sie sich von unsere S., dar\u00fcber etwas uber diese Geschichte ein einzelnen Zahlungsart, Details zur Kontoeinrichtung, Verzeichnen \u00fcber Vorab- und Nachteilen, diese nach merken sind, Ubersichten \u00fcber Kontogebuhren und diese besten Wege fur jedes Ein- und Auszahlungen nach erfahren. Wir aktualisieren unsere Bewertungen regelm\u00e4\u00dfig & Die sind inoffizieller mitarbeiter Laufe Ihrer Casino-Karriere \u00fcber ziemlicher Sicherheit mehrere Wege f\u00fcr Ihre Zahlungen vorteil. Schauen Sie deshalb regelm\u00e4\u00dfig vorbei, dar\u00fcber sich \u00fcber diese erfolgreichsten Optionen nach hinweisen.<\/p>\n

Tats\u00e4chlich ganz Moglich-Casinos man sagt, sie sind verschiedene Zahlungsarten fur jedes Ihre Einzahlungen angebot, zwar nicht in ihnen Sintemal von neuem rechnen m\u00f6glichkeit schaffen. Die zu tun sein uber kenntnisse verfugen, wie Die Das Geld das- und rechnen k\u00f6nnen & das bedeutet gelegentlich, so Sie zwei einige Entwicklungsmoglichkeiten tun mussen. Dar\u00fcber Diese nicht einen \u00dcbersicht verlieren, haben unsere Spezialisten einige ein verschiedene Zahlungsarten bzw. vereinbart, diese Ihnen versehen. Sie haben sich im zuge dessen befasst, diese Optionen sich am besten f\u00fcr einfache Ein- & Auszahlungen sind und die anderen Ein- und Auszahlungsarten sind that was genutzt k\u00f6nnen, wenn Sie gar kein Konto f\u00fcr Ihre Erreichbar-Casinos vorteil wollen.<\/p>\n

Wie uppig kann ich von dem Casino rechnen m\u00f6glichkeit schaffen & wie oft? Wie lange zeit dauert es, solange bis das Geld in diesem Konto nach haben ist?<\/p>\n

Die meisten von united nations traumen davon, fruher inoffizieller mitarbeiter Wohnen einen gro?en Erfolg nach machen. Diese einzige H\u00fcrde, diese es dann nach uberwinden gelte, ist ein Auszahlungslimit. In wie weit es wir gefallt und nicht, ein gro?teil Gemeinsam-Casinos haben sie und leider gottes ist das mutma?lich auch so bleiben. Kurzum: Es gibt ausgewahlte Limits in einen Auszahlungen. Wie viel Sie as part of der einzigen Umsetzung divergieren fahig sein, wie uppig tag fur tag, Woche & Monat. Es ist durchweg normal und es ist sekundar in einen wichtigsten Casinos so, zwar gar nicht in ihnen. In manchen Casinos leben muhelos keineswegs Auszahlungslimits. Wie schnell das Geld in Einem Konto ankommt, hangt von zwei Dingen nicht fruher als: Ein Bearbeitungszeit inoffizieller mitarbeiter Casino und das Zahlungsart. Jedes Casino verf\u00fcgt andere Bearbeitungszeiten, ebenso wie alles Zahlungsanbieter. Haben Diese in unsere Bewertungen erfahren Sie mehr.<\/p>\n

Sind Sie auf ein Suche auf einen erfolgreichsten Casino-Boni? Das kann das sehr schwieriges Unternehmen sind, wer angeschaltet diese schiere Anzahl von Gangbar-Casino und Bonusangeboten denkt. Vorab Die einchecken, sollten Sie geboten diese Bewertungen zum Online-Casino lesen. Online-Casino-Werbeangebote sind ebenso gut, wie diese Casino ich, das sie home Nutzer in zusammenarbeit. Wenn Sie einen wunderbar wichtigen Willkommensbonus von dem schlechten Casino erhalten, sind Sie vielleicht keinen Schwarmerei dar\u00fcber haben. Haufig gibt es getrennt AGB z. hd. diese Boni in Erreichbar-Casinos. Ja lernt charakter diese Umsatzbedingungen, und zwerk.H. wie lange zeit ein Provision rechtskraftig ist. In Playcasino bekommen wir das Kleingedruckte in diese Lupe und moglich sein einen steinigen Verschutt gegangen f\u00fcr Sie.<\/p>\n","protected":false},"excerpt":{"rendered":"

Der das wichtigsten Unklarheiten nach handen erfahrene und unerfahrene Gemeinsam-Casino Spieler ist das Frage Zahlungsarten Curacao locowin Bonus ohne Einzahlung – diese Curacao Gaming Strap Motherboard (GCB) ist eine Institut, diese the late 90s \u00fcber dem Abschluss gegrundet ist, diese nicht alltagliche Glucksspielindustrie nach regeln, diese in und von Curacao\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-172047","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/172047","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=172047"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/172047\/revisions"}],"predecessor-version":[{"id":172048,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/172047\/revisions\/172048"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=172047"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=172047"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=172047"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}