/* 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":99912,"date":"2026-05-25T11:19:21","date_gmt":"2026-05-25T11:19:21","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=99912"},"modified":"2026-05-25T11:19:21","modified_gmt":"2026-05-25T11:19:21","slug":"honey-rush-100-are-an-energetic-fast-paced-slot-laden-with-streaming-victories-multipliers-and-people-aspects","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/honey-rush-100-are-an-energetic-fast-paced-slot-laden-with-streaming-victories-multipliers-and-people-aspects\/","title":{"rendered":"Honey Rush 100 are an energetic, fast-paced slot laden with streaming victories, multipliers, and people aspects"},"content":{"rendered":"

Play’N Go did a good occupations off developing the entire stake during the below-middle, which makes it easier to possess members having the balance below handle. To put your bet, click on the key \ufffdSubtraction\ufffd (-) to minimize their bet and then click the brand new button \ufffdAddition\ufffd (+) to improve their choice count. In front of like an extraordinary position games having well-designed picture and inventive symbols, do you want to check out this excellent playing journey? Search up to the top page and luxuriate in one of many most adorable slot games – on trial variation.<\/p>\n

You could feedback the new paytable via the \ufffdI’ switch, which explains icon beliefs, cluster winnings, and you https:\/\/tombrichescasino-fi.com\/fi-fi\/<\/a> may details on cascades and you will multipliers. Whenever Honey Hurry 100 loads, comic strip bees buzz within the hexagonal grid because the plants and gold coins drop to your place.<\/p>\n

Sure, all top Play’n Go-powered casinos on the internet have the online game obtainable in a real income and you may demo function. This is at no extra cost for your requirements and cannot affect their betting liking having a gambling establishment. The initial hexagon grid concept increases the motif, and features is party will pay, gooey wilds plus.<\/p>\n

Continue things interesting which have cascades, gluey wilds, an earn multiplier, and you may a dash Meter providing you with your a great deal larger people pays. UK-based participants should citation an instant ages look at ahead of to play any online casino games for free. The new 9,000x maximum victory\ufffdsomewhat greater than the fresh developer’s traditional 5,000x limit\ufffdreflects the fresh game’s explicit construction for highest-volatility enthusiasts. It design elegantly substitute old-fashioned totally free revolves that have a merit-centered feature progression system. You’ll be able to see Immortal Romance or Publication away from Tincture if the Scatter-based mechanic is what makes the day to you.<\/p>\n

After every successful party, signs cascade down and you can new ones fill the latest empty spaces, probably creating even more victories. It uses a group will pay auto technician where gains is shaped by hooking up at the very least 5 coordinating icons horizontally otherwise vertically. After each successful party, symbols fall out and new ones cascade down to fill blank rooms, potentially performing a lot more profitable combos. Low-well worth symbols are four rose models, when you’re middle and you may highest-tier symbols advances as a result of bronze, silver, and you will coins in order to diamonds. Gains form whenever no less than 5 matching icons hook horizontally or vertically. When a group gains, signs clear and you may the latest icons miss, potentially hooking up to your further line or people attacks.<\/p>\n

Any time you level upwards, you will result in the fresh new Drone Nest element, hence provides you with a cluster from at least seven complimentary icons plus a gooey crazy. ond icon is among the most rewarding symbol on the a slot regarding the a great beehive, but that’s precisely the means it is here. If you are somebody who possess character-styled ports that have innovative provides and enormous victory potentials, Honey Rush may be worth time. They well catches the new essence from character-abundant environmentally friendly forest that have hectic bees operating their secret into the honeycombs. As you twist the fresh new reels, you can easily refill the newest Hurry Meter that have winning groups. A different and fascinating slot feel, prepare to feel the latest hurry inside Honey Rush!<\/p>\n

The newest return to user of game is actually %, well over the yardstick to own mediocre off about 96%. Honey Rush has many new features to keep things interesting (speaking of detailed in full lower than). Coupling which to the pleasant songs and you will fun sound files, all round form of that it slot was hugely commendable. The newest reels come with sharp, well designed symbols that will be mobile that have higher slickness and adequate flare to keep things interesting. Honey Hurry is a great exemplory instance of slot construction. The fresh new bees can be perishing around the globe, however, right here on line he or she is worthwhile.<\/p>\n

The overall game means better in order to smaller windowpanes, and no distortion or death of quality<\/h2>\n

No matter what type of sense you’re in the mood having, you may be bound to get a hold of other ports that provides just what you’ll relish. The overall Get of the gambling establishment game are calculated considering our lookup and you can investigation accumulated by the all of our casino games review party. Are they enjoyable, enjoyable, along with good High definition top quality! We’re purchased making sure gambling on line are liked responsibly.<\/p>\n

Honey Hurry spends a cluster will pay system on the a great hexagonal honeycomb grid-you happen to be complimentary symbols around the surrounding cells as opposed to traditional paylines. This will help to select whenever desire peaked \ufffd perhaps coinciding which have biggest wins, advertising and marketing techniques, or significant earnings are mutual on the internet. The newest Hurry Meter demanding 160 signs to have Queen Nest and you can sticky wilds multiplying so you can 27x carry out much time droughts anywhere between have \ufffd that is the trade-of having 9000x potential. This score reflects the position off a slot predicated on their RTP (Go back to Player) as compared to other video game into the program.<\/p>\n

The video game provides provides such Nuts multipliers, Rush meter, Party, and you may Colony advantages<\/h2>\n

Inside Honey Rush 100 position feedback I’m able to make you my personal sincere advice to the online game, its extra features, framework, and more. Having its grand payout possible, their mediocre RTP, feature-piled game play, and you can athlete-favourite theme, Honey Hurry 100 features all points as elizabeth so you can try. So, below are a few several options these at the gambling enterprises, and you may certainly find one that is as much as their conditions to is the game here. Analysis derive from reputation from the research dining table otherwise particular formulas. Typically we now have gathered relationships towards internet’s best position game developers, anytime an alternative online game is just about to lose it’s likely we are going to read about they very first. Honey Hurry 100 has the benefit of the typical RTP of 96.2%, that’s very unstable.<\/p>\n

The newest Colony enjoys in the list above the basically duplicate the new symbol you to is in the middle of your own grid, and then make a cluster from matching icons so you’re able to award your a profit honor. Having a complete list of signs and their commission viewpoints click the newest i option towards the bottom kept of one’s online game screen. There are even four straight down-investing icons depicted by the more-colored vegetation, which happen to be for every worthy of as much as 10x your own wager having thirty five+ matching symbols.<\/p>\n

The brand new Honeypot tend to move at random within grid and you can means profitable groups with 1x, 2x, or 3x multipliers. Men and women are probably going to be seeing this video game to possess an incredibly very long time! And, otherwise fees the brand new Hurry meter, the winnings was lower, and also you exposure losing over profitable. Although not, if you choose to enjoy online slots for real currency, we recommend you realize our very own blog post about how exactly ports performs earliest, you understand what can be expected. For many who use up all your credits, merely restart the game, and your gamble currency equilibrium could be topped upwards.If you need which gambling establishment games and wish to test it during the a genuine currency setting, click Enjoy inside the a casino.<\/p>\n

Many people wanna place a spending budget basic, after that choose all the way down wagers while they rating a feel based on how the fresh new clusters and meter build up during a circular. Once they hold multipliers, the biggest groups is come to grand profits. The brand new game’s paytable reveals how for every icon jumps once you visited 15, 20, twenty-five, if you don’t 30 relationships in one go.<\/p>\n","protected":false},"excerpt":{"rendered":"

Play’N Go did a good occupations off developing the entire stake during the below-middle, which makes it easier to possess members having the balance below handle. To put your bet, click on the key \ufffdSubtraction\ufffd (-) to minimize their bet and then click the brand new button \ufffdAddition\ufffd (+) to\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-99912","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/99912","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=99912"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/99912\/revisions"}],"predecessor-version":[{"id":99913,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/99912\/revisions\/99913"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=99912"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=99912"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=99912"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}