/* 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":15634,"date":"2026-05-09T02:19:31","date_gmt":"2026-05-09T02:19:31","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=15634"},"modified":"2026-05-09T02:19:33","modified_gmt":"2026-05-09T02:19:33","slug":"bonanza-demonstration-position-by-big-style-playing-free-play","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/bonanza-demonstration-position-by-big-style-playing-free-play\/","title":{"rendered":"Bonanza Demonstration Position by Big style Playing Free Play"},"content":{"rendered":"

Practical Play has given the online game a graphics revise regarding new, into slot’s colors most swallowing out of both pc and you can mobile windowpanes. For those who have starred the original Nice Bonanza, you will be aware what to expect from this position off good artwork angle. Nevertheless, that doesn’t necessarily mean that it’s bad, so try it to discover for your self, otherwise look well-known online casino games.To experience 100percent free into the demonstration function, simply stream the online game and you will push the latest ‘Spin’ option. Sweet Bonanza one thousand improves through to the first video game having an elevated limitation winnings off twenty-five,000x your own stake, a number of construction updates, and you can a superb RTP. Should you want to accessibility this particular aspect immediately, it could be bought in person at a high price out of 100x their stake.<\/p>\n

Nice Bonanza is an on-line position created by Practical Gamble and you may so it Sweets-determined video game offers mega winnings-prospective of greater than 5,000X your share. As a result, the greater number of moments your strike a winning consolidation the greater the brand new multiplier making on the great growth of winnings while in the incentive series. You can speak about him or her from the in search of ‘Megaways’ into the Casino Master or by the probably our very own database of most readily useful online casino games. Give it a try for free observe as to the reasons slot machine professionals like it plenty.To play for free within the demonstration setting, simply load the overall game and you will drive the fresh new ‘Spin’ button. You can earn doing 240x the share inside medium volatility pokie, together with Pick Function increases the likelihood of triggering the latest 100 percent free revolves<\/p>\n

\u2022 Let us know what you\u2019d want to see in the future sizes \u2022 For support, excite contact us directly from the overall game\u2019s ‘Support’ switch or at the once we do not address evaluations. \u2022 Behavior or victory at the public casino gaming doesn’t mean coming success during the “real money gaming.” Follow all of us for the Myspace to help you victory large with original also provides, incentives and you may income! With so many local casino rewards, you can gamble totally free slot machines for fun for hours on end and you can all night! Gamble Las vegas layout free online gambling establishment harbors away from Slot Bonanza Take pleasure in all enjoyable away from free gambling games on line once you gamble Position BONANZA Vegas local casino slots!<\/p>\n

Restricted play applies; distributions prior to betting gap extra and you can payouts. Luna Casino app<\/a> Betting 40x (put + bonus); Incentive Revolves winnings betting 25x. The utmost payout in the Bonanza can also be are as long as ten,000x your first choice, attainable through the video game\u2019s added bonus provides and you can profitable combinations. The game\u2019s high volatility makes it right for participants exactly who see an excellent high-exposure, high-reward approach to betting, offering the prospect of significant profits.<\/p>\n

Return to the clouds for the next phenomenal excitement in which Extremely Spread out signs is give honors of up to fifty,000x The fresh in love puppies are located in to have an untamed excitement that have multiplier icons and two some other added bonus game The multi-award winning harbors profile includes unique during the-house stuff comprising more than 500 online game, available in most of the biggest currencies, languages and you will certified avenues. The result is a subject one directly mirrors the predecessors when you look at the physical appearance and you can construction but brings up high bet and more varied means to interact along with its incentive have.<\/p>\n

Big spenders normally lean towards the highest maximum risk, when you find yourself diligent participants commonly take pleasure in the fresh new much time-work on possible. The new insane replacements to have regular symbols to help over gains, while spread icons spell out G-O-L-D to help you discover 100 percent free spins. Discover the fresh new selection (bottom left) to access new paytable and you can solutions, then place your stake on Share control.<\/p>\n

The most basic option is in order to click on the plus and you can without keys unless you get to the desired wager. It is vital to optimize extent you bet getting the finest winnings! Gambling incentives available in which casino video game are wager multipliers and the capability to spin an excellent reel resulted in successive gains. There are even candies in almost any molds and colors and you may together with red-colored, blue, eco-friendly, and you will purple candy. Quantity of repeated signs into the screen after every spin have a tendency to dictate this round\u2019s commission value.<\/p>\n

Have fun with the finest totally free gambling enterprise slot machine with Slot Bonanza Appreciate all the fun of free local casino slot machine games on the internet when you enjoy 777 Slot BONANZA Vegas local casino slot machines! Be sure to work on the fresh video slot at the very least during the demo form, besides, which sorts of the online game can be found on all of our webpages without registration and places. It is recommended that your wait for Bonanza gambling enterprise slot added bonus round in order to discharge, although it does maybe not happen will, however it brings great payouts. But consider \u2013 you are playing with digital currency and also the earnings might getting virtual. On convenience of gamblers, new Bonanza slot machine game has actually an autoplay means.<\/p>\n

The fresh new Slotomania™ Harbors Gambling games software has a wide variety of gambling games, as well as ports, black-jack, roulette, video poker, and a lot more. Building long-term connections from inside the app people results in an atmosphere out-of companionship and you can fun, having users supporting each other and you can remembering triumph together with her. For these investigating Slotomania™ Slots Online casino games, preferred issues rotate doing getting 100 percent free gold coins, claiming incentives, engaging in occurrences, reading themes, and you will enjoyable with members of the family in software.<\/p>\n

The fresh extremely added bonus purchase choice is a gamble, but at least participants have the odds of a top-limits wager. The advantage bullet is the main appeal undoubtedly, and today you\u2019ll make use of multiplier symbols as much as x1,100 as opposed to \u201cjust\u201d x500. Granted, the fresh advertised max earn of the brand new try 21,000x, that’s very near the twenty-five,000x victory limit you have made contained in this adaptation. You get a random multiplier anywhere between x1 and you will x500 for each and every spin and you will tumble, and x2 so you can x500 about free spins element. Enjoy the exact same exciting enjoys, away from streaming reels into the chance of successful up to twenty-five,000x your own risk, no matter where you\u2019re.<\/p>\n

Players have access to the same features, for instance the special incentive rounds and you may large-investing symbols, on the extra capability of to experience on the road. The screen on smart phones try associate-friendly, with basic regulation one to enhance playability as opposed to decreasing the online game\u2019s features or aesthetic attention. The online game was designed to adjust effortlessly to various screen products, ensuring that the stunning pictures and you may dynamic game play are kept for the faster house windows. The overall artwork presentation is not just aesthetically pleasing also functionally clear, ensuring professionals can merely discern other symbols in addition to their importance. New RTP regarding 96.0% will bring a good come back over the years, as online game\u2019s large volatility assures the opportunity of high gains.<\/p>\n

Enables various feature modes one increase centered-in the capability or create additional auto mechanics. The actual only real “disappointing” area would be the fact zero middle ground could have been reached when it comes of one’s 5,000x maximum win, and this somewhat pales in comparison to the 20,000x+ finest award out of Sweet Bonanza. Nonetheless, you will find some effort to alter the surroundings with more polished points in some places, and additionally discover a sense of a somewhat richer record. Combining the brand new indisputable you will out of Multiplier Spots to your liberty out of undertaking gains everywhere into grid regarding spread-will pay program feels as though a fit produced in eden. Towards its semi-transparent lining, participants can develop using combos from the getting at the very least 8 complimentary symbols everywhere towards the grid. Everything stands out invitingly, causing you to must extend inside display screen and you can take a handful of goodies.<\/p>\n","protected":false},"excerpt":{"rendered":"

Practical Play has given the online game a graphics revise regarding new, into slot’s colors most swallowing out of both pc and you can mobile windowpanes. For those who have starred the original Nice Bonanza, you will be aware what to expect from this position off good artwork angle. Nevertheless,\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-15634","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/15634","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=15634"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/15634\/revisions"}],"predecessor-version":[{"id":15635,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/15634\/revisions\/15635"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=15634"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=15634"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=15634"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}