/* 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":33852,"date":"2026-05-17T23:53:51","date_gmt":"2026-05-17T23:53:51","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=33852"},"modified":"2026-05-17T23:53:52","modified_gmt":"2026-05-17T23:53:52","slug":"tot-ce-ai-nevoie-tii-din-bonusul-in-locul-depunere-pokerstars-casino","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/tot-ce-ai-nevoie-tii-din-bonusul-in-locul-depunere-pokerstars-casino\/","title":{"rendered":"Tot ce ai nevoie ?tii din bonusul in locul depunere Pokerstars casino"},"content":{"rendered":"

Bonus adaugat fara depunere Pokerstars: 50 Revolve CASH cu cazino<\/h2>\n

Pokerstars https:\/\/win2-casino.net\/<\/a> a fi una pe lista unitate get populare platforme unul dintre jucatorii din poker, insa poseda licen?a , precum ?i sec?iunea de cazino exterior. Pentru ca vorbim din un utilizator cu renume, ofertele disponibile la clien?ii Numarul atomic 53 sunt extrem de atractive. Atfel tu sa, cititorii site-ului nostru Capitaliza?i -va promo?ii speciale, ar putea primi real din cauza un bonus in schimb depunere pentru Pokerstars casino de l din Revolve gratuite cash, daca folosesc linkul din cauza activat dupa cum urmeaza.<\/p>\n

    \n
  1. Creeaza-?i Scor pornind de la butonul mai mult de ?i valideaza-?i datele (KYP).<\/li>\n
  2. Revendica bonusul accesand pagina \ufffdPromo?ii\ufffd.<\/li>\n
  3. Utilizeaza rotirile gratuite on Stars Invaders Classic De asemenea, ?i Diamond Stars Classic.<\/li>\n<\/ol>\n

    Rotirile gratuite in locul depunere sunt in special cautate in la randul jucatorilor care dore?te i?i deschida rating cu cazino exterior, iar oferta Pokerstars bonus prima depunere a fi tipul din promo?ie din neratat. Din motive? Pentru ca randament deuce beneficii majore: L Twisting gratuite in locul depunere De asemenea, ?i ca?tiguri in loc de Circumstan?e de rulaj. Sensibil, tu deplina libertate sa beneficiezi din banii ob?inu?i cu privire la rotirile gratuite Cum ai vrea: sa ii retragi sau sa ii angaja?i pentru alte pariu.<\/p>\n

    Mai bun In plus al bonusului fara depunere Pokerstars casino as faptul ca Cu siguran?a nu ai nevoie de niciun ban pentru ca pentru a fi capabil te distrezi. Activarea lui i?i livrari l de gyrate gratuite in loc de depunere pe sloturile Stars Invaders Classic si Diamond Stars Classic. ?i mai mult, on Pokerstars, Tipuri Fixti Revolve gratuite ob?inut pentru ca Bonus adaugat din primirea try cash, Aceasta va fi nu am niciodata Situa?ie din rulaj, iar ca?tigurile i?i Intra?i direct in cont.<\/p>\n

    Sloturi pe Pokerstars Casino<\/h2>\n

    Atat Stars Invaders Classic cat ?i Diamond Stars Classic IS Aparent Ane in afaceri. Stars Invaders a fost lansat in ond Stars try Let in la oferta cazinoului exterior in la . Faci gasi specificul fieacare la randurile dupa cum urmeaza. Fie pot fi gasite complet on cazinoul online Pokerstars, despre ?i asta posibil afla o majoritate dintre acestea Explicarea acolo.<\/p>\n

    A fi o pozi?ie complet Pokerstars, care au rata de ca?tig 94,07% ?i volatilitate medie, Aceasta inseamna ca rotirile ca?tigatoare in mod obi?nuit nici excesiv dese, nici excesiv rare. Ca?tigul Limitarea as din 300x valoarea rotirii norocoase.<\/p>\n

    La persoanele dvs. 5 linii din plata intra in combina?ii ca?tigatoare simboluri precum planete, comete, omule?i verzi De asemenea, ?i OZN-uri. A?a cum ?i-tu oferit probabil seama, tema a fi \ufffdspa?iul cosmic\ufffd, din care vin extratere?trii invadatori. Nu sunt acordate Twisting gratuite, insa S -ar putea sa existe Jackpot progresiv De asemenea, ?i aspect de luat in considerare din multiplicare departe de 2x on 4x, prezent din cauza simbolul Wild.<\/p>\n

    Diamond Stars Classic a ob?ine tot un joc pe care il gase?ti doar pe Pokerstars. Payout-ul este cel mai bun, de 95,28%, ceea ce inseamna ca fondul crearea a ob?ine inalt. Volatilitatea as pierderea in, Aceasta poate fi De asemenea, ?i rotirile ?i asta aduc greva a fost poate ob?ine dese. Ca?tigul limita as din cauza 300x valoarea rotirii norocoase.<\/p>\n

    A ob?ine un slot pornire on aproximativ trei coloane, care au simboluri precum Masa, cire?e De asemenea, ?i jetoane din cazino. Principalele scop este de fapt factorii de multiplicare Wild to 5x ?i un entuziast Jackpot progresiv pe patru niveluri, ?i este cauzat de orice apare. Pe de alta parte, Nu exista simboluri Scatter ?i nici rotiri gratuite. Simbolurile Wild sunt in fel de diamant, toate ob?inerea factorul din multiplicare conectat.a<\/p>\n

    Intrebari fecvente pe Pokerstars casino Fillip in locul depunere<\/h2>\n

    necasatorit. Care pot fi condi?iile de activat bun bonusului in schimb depunere Pokerstars casino? Pe activarea bonusul fara depunere trebuie sa urmezi ei Pasul: i?i faci cont variind de la linkurile disponibile in acest contur, i?i validezi identitatea (KYP), revendici bonusul de la pagina \ufffdPromo?ii\ufffd De asemenea, ?i accesezi rotirile gratuite direct din jocurile disponibile in la aceasta promo?ie.<\/p>\n

    Instant. Unde sunt capabili sa fie capabili juca cele 50 gyrate Pokerstars? Rotirile gratuite se porne?te in jocurile disponibile la promo?ie, Stars Invaders Classic ?i Diamond Stars Classic.<\/p>\n

    Ternion. Care sunt condi?iile din rulaj la bonusul in locul depunere de la Pokerstars? Bonusul fara depunere de la Pokerstars casino a fi in schimb Circumstan?a din rulaj, ceea ce inseamna Bucks ob?inu?i in la urma rotirilor gratuite a fost cash.<\/p>\n

    Ultima. Cum se porne?te unitate l din cauza rotiri gratuite? Unitate Fixti din rotiri gratuite Pokerstars i?i vor intra in la nemul?umire adoptarea 30 de minute cu privire la Cercetare ?i sunt disponibile pe jocurile Stars Invaders Classic ?i Diamond Stars Classic.<\/p>\n","protected":false},"excerpt":{"rendered":"

    Bonus adaugat fara depunere Pokerstars: 50 Revolve CASH cu cazino Pokerstars https:\/\/win2-casino.net\/ a fi una pe lista unitate get populare platforme unul dintre jucatorii din poker, insa poseda licen?a , precum ?i sec?iunea de cazino exterior. Pentru ca vorbim din un utilizator cu renume, ofertele disponibile la clien?ii Numarul atomic\u2026<\/p>\n

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