/* 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":1796,"date":"2024-04-24T11:19:07","date_gmt":"2024-04-24T11:19:07","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=1796"},"modified":"2026-04-10T15:12:22","modified_gmt":"2026-04-10T15:12:22","slug":"66-game-casino-9","status":"publish","type":"post","link":"https:\/\/klecet.edu.in\/alumni\/66-game-casino-9\/","title":{"rendered":"66 game casino 9"},"content":{"rendered":"

FREE Casino Games Play for Fun 22,700+ Demo Games<\/p>\n

Welcome to Spade66 trusted online casino Malaysia, the place where nonstop excitement and endless winning opportunities are flowing your way! As the online gaming world evolves, 66win emerges as a pivotal platform in 2025, shaping trends and player dynamics across the globe. An exploration of 66win as a hub of https:\/\/ballonix-slot.net\/<\/a> online gaming, diving into its roles, recent trends, and global impact. 66win emerges as a standout platform in the online gaming industry, innovating how games are played and engaged with in 2025.<\/p>\n

It\u2019s got 3-reel slots with simple win lines and familiar symbols like sevens, bars, and fruit icons. You can pick up most of these bonuses by simply checking in, inviting friends, or spinning a wheel. There\u2019s a 100 SC minimum required for prize redemptions, and you\u2019ll need to complete a KYC check and make at least one GC bundle purchase to qualify. There\u2019s no Sixty6 Social Casino app right now, but honestly, it took nothing away from my gaming experience. FAQ aren’t listed as a separate clickable tab but can be found at the bottom of the homepage. A site\u2019s usability is always one of the first things I look at when checking out a new social casino, and Sixty6 hits the mark.<\/p>\n

IN Offers a Wide Game Selection For You to Choose From<\/h2>\n

Predict when to cash out before the multiplier crashes for massive wins! For those who love quick betting action, our crash games deliver high-intensity excitement. 66 RUMMY is your ultimate destination, offering high-stakes excitement, top-tier games, and exclusive rewards. Each provider is licensed and uses RNG certification to ensure random outcomes. 66zz collaborates with the best software vendors in the industry, giving you confidence in fairness and quality.<\/p>\n

Is Taxi66 Really a Trusted Online Casino?<\/h2>\n

When you\u2019re choosing online casino games, take a moment to explore the provider\u2019s reputation for quality and fairness. It\u2019s time to branch out from the same old table games and slot machines; join us as we take a closer look at bingo, keno, and scratch cards. Video poker takes the essence of traditional poker and fuses it with the excitement of electronic gaming. With American, European, and French versions to choose from, and a variety of betting options, online roulette offers players the perfect mix of excitement and suspense.<\/p>\n

    \n
  • The rules are simple\u2014try to beat the dealer\u2019s hand by getting as close to 21 as possible without going over.<\/li>\n
  • This online casino provides users with a fast and simple way to deposit funds using e-wallets, online banking, and even cryptocurrency.<\/li>\n
  • The casino optimistically ensures that the players will find easy ways and competent guides to aid them in registration, deposit, and even withdrawal.<\/li>\n
  • We’ve compiled a list of all of the social casinos available in the US where you can play popular online casino-style games like slots, jackpots, table games, and live dealer games.<\/li>\n
  • By checking the box labeled ‘I am at least 21 years old’, you solemnly swear to be at least 21 years old.<\/li>\n
  • Firstly, many players try their luck on them because of their simple gameplay and engaging visuals, with captivating flashing lights and loud sounds.<\/li>\n<\/ul>\n

    Easy-to-Use Interface \u2013 Seamless gaming experience across all devices<\/h2>\n

    We’ve compiled a list of all of the social casinos available in the US where you can play popular online casino-style games like slots, jackpots, table games, and live dealer games. Play online social casino and its free games with Gold Coins that keep the excitement alive. Claim your Gold Coins, choose your game, and have some quality time with no purchase necessary at our free casino platform! For more details, check our Terms and Conditions and Privacy Policy pages. Always check your local regulations before playing. Try classic or cascading reels, popular titles, and story-driven social casino games from top developers – all designed to make your gaming experience more fun.<\/p>\n

    Accepted Payment Methods:<\/h2>\n

    Enjoy generous welcome bonuses, daily rewards, and loyalty perks to keep the fun and excitement going strong! With our extensive game selection, reliable security, and top-notch player support, we\u2019re here to deliver an unparalleled gaming experience. With games for all tastes and cooperation with the best providers in the industry, we will bring you the very best of the most exciting gaming experiences.<\/p>\n

    Ideal for those seeking quality slots and unique arcade games, Pulsz is a solid pick for US players who value accessibility and variety in their social casino experience. With dedicated apps for both iOS and Android, it provides a smooth gaming experience for players who prefer to play on the go. From popular Megaways and jackpots to innovative Slingo and Hold-and-Win games, Pulsz\u2019s offerings ensure that every slot fan will find something to enjoy.<\/p>\n

    If you wish to find a reliable online casino with slots, head to our list of best online casinos. We advise you to check the rest and pick the one you prefer. This slot is a good option for players who want to keep things simple. If you’re a fan of the classic slot fruit theme and simple gameplay, Sizzling Hot Deluxe from Novomatic might be a good option for you. Firstly, many players try their luck on them because of their simple gameplay and engaging visuals, with captivating flashing lights and loud sounds. Thanks to the popularity of online gambling, there are hundreds of companies designing and developing slot machines for online casino players.<\/p>\n

    Discover the biggest real money games wins this April<\/h2>\n

    The platform has a slick, minimal layout that\u2019s easy to navigate in a browser, and its daily SC bonuses make it simple to log in, play, and steadily build your balance over time. Backed by a trusted sweepstakes casino operator, UTech Solutions LLC, JackpotRabbit stands out with a strong library of over 1,200 games, including slots, jackpots, instant wins, and scratch cards. For anyone seeking a legal, easy-to-use, and fast-evolving social casino, SpinBlitz is a great option with strong momentum and a clear player-first focus. Like many other social casinos, SpinBlitz operates under US sweepstakes laws, making it legal in most states for players 18 and older. Smart filtering options and a responsive layout ensure seamless browsing, helping users quickly locate their favorite games or discover new, exclusive content. Players can explore a wide range of high-quality slots from top providers like Hacksaw Gaming and Relax Gaming, alongside a curated selection of live dealer titles powered by ICONIC21 and Atmosphere.<\/p>\n

    Esports Betting \u2013 Bet on Your Favorite Games!<\/h2>\n

    With a user-friendly interface accessible via desktop, mobile browsers, and the newly launched iOS and Android apps, NoLimitCoins ensures a seamless gaming experience across all devices. Its sleek, intuitive interface ensures that players can easily navigate through its diverse selection, providing a premium gaming experience for all types of players. If you’re having trouble logging in, first ensure you\u2019re using the correct username and password. Explore our wide range of payment methods designed to enhance your gaming experience. Alternatively, you can try video poker or baccarat, which also have simple rules and can be a great way to ease into the world of online gambling.<\/p>\n

    Backed by 24\/7 live chat support, Crown Coins Casino ensures players always have assistance when they need it. New members kick off with a generous bundle of free coins upon joining, plus daily rewards, exclusive promotions, and tournaments that keep the excitement rolling. Tailored for players who seek excitement and bold style, PlayFame\u2019s striking visuals and dynamic gameplay offer an immersive experience that feels right on-trend. Offering over 700 free-to-play slots and popular casino games like roulette, poker, and blackjack, Stake.us provides a highly immersive experience that mirrors the excitement of real-money casinos. While it lacks a mobile app and live dealer games, Lucky Slots delivers a polished, legal sweepstakes experience in 40 US states.<\/p>\n

    Crash Games<\/h2>\n

    Share your wins on Pragmatic Play slots, get another chance for winning with Casino Guru! I am at least 21 years old and legally allowed to play in a casino At the time, many restrictions on gambling started to take effect, so until gambling was made legal again, manufacturers turned slots into chewing gum vending machines. This has its roots in the design of the first-ever mechanical versions of slot machines. One of the first and most memorable online slot machines, Cash Splash, was launched in 1998. The best thing to do is to head to our list of best slots sites and choose one of the top options.<\/p>\n

    Nostalgia-Inducing Classic Slots<\/h2>\n