/* 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":160536,"date":"2026-06-18T08:51:06","date_gmt":"2026-06-18T08:51:06","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=160536"},"modified":"2026-06-18T08:51:06","modified_gmt":"2026-06-18T08:51:06","slug":"mr-vegas-casino-play-anywhere-anytime-in-belgium","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/mr-vegas-casino-play-anywhere-anytime-in-belgium\/","title":{"rendered":"Mr Vegas Casino \u2013 Play Anywhere Anytime in Belgium"},"content":{"rendered":"
Als je regelmatig online casino’s bezoekt, valt het direct op dat Mr Vegas Casino de Belgische speler centraal stelt https:\/\/mrvegascasino.eu\/nl-be\/<\/a>. De vergunning van de Kansspelcommissie is meer dan een logo alleen; het is je garantie op een veilige en eerlijke speelplek. Wat meteen opvalt, is hoe naadloos de overgang van desktop naar smartphone verloopt. Onderweg of thuis op de sofa, de kwaliteit blijft behouden. Dit platform begrijpt dat gamen flexibel moet zijn, zonder dat je moet inboeten op keuze of bonussen. Het voelt als een compleet casino in je broekzak.<\/p>\n Met zoveel online goksites is legaliteit het hoogste goed. Mr Vegas Casino heeft een A+ licentie van de Belgische Kansspelcommissie. Elke draai aan het roulettewiel en elk gegeven kaartje valt onder strikte controles voor eerlijk spel. Jouw stortingen worden gewaarborgd met SSL-encryptie, en het geld van spelers staat apart van de operationele middelen. Voor een speler is dit het fundament. Het geeft niet alleen rust, maar biedt voor een gegarandeerd eerlijk spel. Je speelt binnen een raamwerk dat je rechten vrijwaart, iets wat bij illegale sites ontbreekt. Dit is de reden dat je hier met zekerheid kunt starten.<\/p>\n Goede hulp is belangrijk, vooral als er iets niet begrijpelijk is. Mr Vegas Casino verleent ondersteuning in het Nederlands, een aanzienlijk voordeel voor Belgische spelers. Ik probeerde de verschillende kanalen. De live chat is het meest direct voor dringende vragen, en de medewerkers kennen waar ze over praten. Voor complexere zaken kun je een e-mail verzenden. Verder is er een uitgebreide FAQ-sectie op de site, waar de meeste voorkomende vragen al zijn opgelost. De service is bereikbaar tijdens redelijke uren, wat aansloot bij de tijden waarop ik zelf speelde. Deze bereikbaarheid maakt de ervaring een stuk https:\/\/tracxn.com\/d\/companies\/use-me-leave-me\/__5x1Y2LwpC7aS_Xx0hTl_HwE0pvovep9vQgibCoEOq2M<\/a> aangename.<\/p>\n De belofte “play anywhere anytime” moet je geloven. Mr Vegas Casino maakt die waar met een mobiele website die perfect is geoptimaliseerd. Je hoeft geen app te binnenhalen; je browser op smartphone of tablet werkt. Ik merkte geen verschil in snelheid of graphics vergeleken met de computer. Het scherm past zich slim aan, met duidelijke menu’s en knoppen die goed te gebruiken zijn. Of je nu een snelle slotspin wilt doen in de pauze of een blackjack-sessie in de wachtkamer, alles loopt soepel. Deze aanpak laat zien dat het casino weet hoe mensen tegenwoordig gamen.<\/p>\n Een speelhal is afhankelijk met zijn spelcollectie. Mr Vegas Casino bezit een indrukwekkende bibliotheek die alle hoeken van de gokwereld bestrijkt. Opmerkelijk is het krachtige aanbod van providers die Belgen waarderen, zoals NetEnt, Play’n GO en Pragmatic Play. Je treft er talrijke slots, van basic fruitautomaten tot uitgebreide video slots met bonusrondes. Daarnaast is er een degelijke verzameling tafelspelen. Dit vormen een paar krenten die je ontmoet:\n<\/p>\n Weinig is zo vervelend als vertraging bij het deponeren of uitbetalen van winst. Tijdens mijn tests bij Mr Vegas Casino verliepen de geldzaken zonder problemen. Het casino opereert met alle populaire betaalmethoden in Belgi\u00eb. De snelheid is een pluspunt: e-wallets zorgen vaak voor directe opnames, en bankoverschrijvingen zijn binnen een paar werkdagen rond. Dit zijn de belangrijkste betaalopties die ik ben tegengekomen:\n<\/p>\n Bonussen maken een cruciaal onderdeel van de waarde. Mr Vegas Casino heeft een aantrekkelijk geheel voor startende gasten uit Belgi\u00eb. Bestudeer de regels telkens nauwkeurig, en die worden hier overzichtelijk beschreven. De startbonus verenigt geregeld kosteloze rondes met een matchpercentage op je eerste deposito. Wat uitstekend werkt, betreffen de acties voor trouwe spelers. Stel aan weekelijkse geldteruggave, oplaad extra’s op maandagen of extra rondes bij een verse game. Het klantenprogramma waardeert je voor het meedoen met credits die je voor bonusgeld ruilt. Het is een handige wijze om je sessie te rekken.<\/p>\n Inderdaad, dat is het. Mr Vegas Casino bezit een geldige licentie (A+ nummer) van de Belgische Kansspelcommissie. Het casino volgt alle strenge regels voor eerlijke spellen, spelersbescherming en verantwoord gokken. Je kunt hier met een rustig hart spelen, ervan overtuigd dat je rechten beveiligd zijn onder de Belgische wet.<\/p>\n Navigeer naar de website en klik op ‘Registreren’. Vul het formulier met je exacte gegevens (naam, adres, geboortedatum); deze worden nagekeken voor je veiligheid. Bevestig je e-mailadres via de link in de ontvangen mail. Daarna moet je je identiteit verifi\u00ebren met je identiteitskaart, een noodzakelijke stap voor opnames. Het proces is simpel en duurt maar een paar minuten.<\/p>\n Mr Vegas Casino functioneert met alle gangbare Belgische betaalmiddelen. Dat betekent Bancontact\/Mister Cash voor directe stortingen, Visa\/Mastercard, en e-wallets zoals Skrill en Neteller. Bankoverschrijvingen zijn ook mogelijk. Alle methoden zijn beschermd. Opnames naar e-wallets gaan https:\/\/www.crunchbase.com\/organization\/ab55<\/a> doorgaans het snelst, vaak binnen een dag.<\/p>\n Zeker, de licentie zorgt voor verplichte restricties. De meest bekende is dat je je moet registreren en identificeren om aan live casino tafels te spelen. Dat is een wettelijke verplichting. Verder biedt het casino tools voor veilig gokken, zoals stortlimieten, time-outs en zelfuitsluiting, die je zelf kunt aanpassen.<\/p>\n Absoluut. Mr Vegas Casino heeft een voor mobiel geoptimaliseerde website die perfect werkt op smartphones en tablets (iOS en Android). Een app is niet nodig; je speelt direct via je browser. De ervaring lijkt sterk met die op de computer, met het volledige spelaanbod en alle functies binnen handbereik.<\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":" Als je regelmatig online casino’s bezoekt, valt het direct op dat Mr Vegas Casino de Belgische speler centraal stelt https:\/\/mrvegascasino.eu\/nl-be\/. De vergunning van de Kansspelcommissie is meer dan een logo alleen; het is je garantie op een veilige en eerlijke speelplek. Wat meteen opvalt, is hoe naadloos de overgang van\u2026<\/p>\nEen Erkend en Betrouwbaar Casino voor Belgische Spelers<\/h2>\n
Klantendienst en Ondersteuning in het Nederlands<\/h2>\n
De Toppende Mobiele Gaming Ervaring<\/h2>\n
Omvangrijke Selectie Games van Beste Providers<\/h2>\n
\n
Makkelijkere Stortingen en Razendsnelle Opnames<\/h2>\n
\n
Introductiebonus en Doorlopende Promoties<\/h2>\n
FAQ<\/h2>\n
Is Mr Vegas Casino legaal in Belgi\u00eb?<\/h3>\n
Hoe maak ik een account aan bij Mr Vegas Casino?<\/h3>\n
Wat zijn de betaalmethoden worden geaccepteerd?<\/h3>\n
Bestaan er spelrestricties voor Belgische spelers?<\/h3>\n
Kan ik het casino ook op mijn smartphone gebruiken?<\/h3>\n