/* 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":116950,"date":"2026-05-25T12:54:11","date_gmt":"2026-05-25T12:54:11","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=116950"},"modified":"2026-05-25T12:54:12","modified_gmt":"2026-05-25T12:54:12","slug":"honey-rush-100-is-an-energetic-fast-paced-slot-loaded-with-cascading-gains-multipliers-and-you-will-party-aspects","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/honey-rush-100-is-an-energetic-fast-paced-slot-loaded-with-cascading-gains-multipliers-and-you-will-party-aspects\/","title":{"rendered":"Honey Rush 100 is an energetic, fast-paced slot loaded with cascading gains, multipliers, and you will party aspects"},"content":{"rendered":"

Play’N Wade did a work from creating the share during the less than-middle, which makes it easier to own players to own the harmony lower than manage. To place your bet, click on the switch \ufffdSubtraction\ufffd (-) to attenuate your own wager and https:\/\/uk-slots-casino-uk.com\/en-gb\/<\/a> then click the fresh new button \ufffdAddition\ufffd (+) to improve your choice amount. In front of for example an extraordinary position games that have well-customized picture and inventive signs, isn’t it time to see this excellent gambling travel? Scroll up to reach the top page and take pleasure in one of several most adorable position video game – on trial type.<\/p>\n

You could review the new paytable via the \ufffdI’ button, which explains icon opinions, people winnings, and you will information on cascades and you can multipliers. Whenever Honey Rush 100 loads, comic strip bees buzz within hexagonal grid since vegetation and you can coins get rid of on the set.<\/p>\n

Yes, most of the top Play’n Wade-driven casinos on the internet feel the game found in a real income and you may demonstration setting. It is in the no additional pricing to you and cannot connect with your playing preference for a casino. The initial hexagon grid concept enhances the theme, and features become group will pay, gluey wilds and a lot more.<\/p>\n

Continue stuff amusing which have cascades, sticky wilds, a winnings multiplier, and you may a rush Meter that provides your a great deal larger team will pay. UK-founded members will have to ticket an easy age see ahead of to experience one on-line casino games 100% free. The latest nine,000x restriction earn\ufffdsomewhat more than the fresh new developer’s old-fashioned 5,000x limit\ufffdshows the fresh new game’s specific build having highest-volatility fans. This framework elegantly substitute conventional totally free revolves that have a quality-depending ability development program. You could view Immortal Love or Publication away from Shadows if your Scatter-based auto technician is the reason why the day to you personally.<\/p>\n

After every successful group, symbols cascade down and new ones complete the fresh blank spaces, probably doing most wins. It spends a group pays mechanic in which victories was shaped from the connecting no less than 5 matching signs horizontally or vertically. After every effective people, symbols fall aside and you can new ones cascade down to complete blank places, potentially doing even more successful combinations. Low-really worth symbols become five rose activities, when you find yourself middle and you can high-level icons improvements because of bronze, gold, and you will coins so you can diamonds. Gains means when at the least 5 coordinating icons connect horizontally or vertically. Whenever a cluster gains, icons clear and you may the latest signs lose, potentially linking into the after that range otherwise people strikes.<\/p>\n

Every time you top upwards, you’ll end in the fresh new Drone Colony element, and therefore will provide you with a cluster regarding at least 7 complimentary signs plus a gooey wild. ond icon is among the most worthwhile icon to your a slot on an excellent beehive, but that’s only the method it goes here. When you find yourself a person who enjoys nature-styled harbors that have imaginative enjoys and you may substantial win potentials, Honey Hurry is worth time. They perfectly captures the fresh new substance out of nature-rich eco-friendly forest having busy bees performing its magic on the honeycombs. Since you spin the newest reels, you can easily fill the fresh new Rush Meter that have winning groups. A different and you may pleasing slot sense, prepare yourself to feel the brand new rush in the Honey Hurry!<\/p>\n

The new go back to player of video game is %, above our very own measuring stick to have mediocre of around 96%. Honey Rush has many new features to store things interesting (these are detailed completely below). Coupling this towards lovely audio and you can enjoyable sounds, the overall design of so it position is massively good. The brand new reels come with sharp, properly designed symbols that are animated with great slickness and you can adequate flare to keep things interesting. Honey Hurry is a fantastic exemplory instance of position build. The newest bees may be passing away around the globe, however, right here on line he is successful.<\/p>\n

The video game converts really in order to reduced windows, without distortion or loss of quality<\/h2>\n

No matter what sort of experience you are in the mood for, you’re bound to discover different ports giving just what you’ll enjoy. The general Rating associated with local casino video game are computed based on the look and you can data gathered by the all of our casino games comment cluster. Are they enjoyable, entertaining, in accordance with excellent High definition quality! We are dedicated to making sure gambling on line is actually appreciated sensibly.<\/p>\n

Honey Hurry uses a group will pay program towards an excellent hexagonal honeycomb grid-you are coordinating signs across the adjoining structure as opposed to conventional paylines. This helps select when focus peaked \ufffd maybe coinciding which have major gains, promotion ways, or extreme profits are common on the web. The latest Rush Meter demanding 160 signs getting Queen Nest and you will sticky wilds multiplying to help you 27x do much time droughts between have \ufffd this is the trading-out of to possess 9000x possible. That it get shows the positioning away from a position centered on its RTP (Return to Athlete) than the almost every other game into the program.<\/p>\n

The overall game has have such Wild multipliers, Hurry meter, Group, and Colony rewards<\/h2>\n

Within Honey Hurry 100 position comment I could make you my personal truthful viewpoint to your video game, its added bonus possess, build, and more. With its huge payment prospective, their average RTP, feature-piled game play, and you can member-favourite motif, Honey Hurry 100 provides every facets as elizabeth so you’re able to was. So, check out a few options the next from the gambling enterprises, and you might yes choose one which is as much as the requirements in order to is the overall game indeed there. Analysis are based on standing regarding the assessment dining table otherwise specific algorithms. Typically we now have gathered matchmaking to the internet’s leading position game developers, anytime a new video game is just about to lose it is likely we’ll hear about it very first. Honey Hurry 100 even offers the average RTP of 96.2%, which is very volatile.<\/p>\n

The brand new Colony have listed above the generally clone the brand new icon one is within the center of the grid, and work out a group of matching signs so you’re able to honor you a profit prize. For the full directory of signs as well as their commission values simply click the new i switch in the bottom remaining of the game screen. There are even five lower-expenses icons portrayed because of the other-colored flowers, that are for each worthy of doing 10x their bet having thirty-five+ matching symbols.<\/p>\n

The fresh new Honeypot tend to move at random within the grid and means profitable groups which have 1x, 2x, or 3x multipliers. People are gonna be seeing this video game to own an incredibly lifetime! And, if you don’t costs the fresh Hurry meter, your own earnings would be low, and also you exposure losing more winning. Although not, if you gamble online slots the real deal currency, we advice you comprehend our very own post about how precisely slots works first, so you understand what to expect. If you run out of credit, merely resume the overall game, plus play money harmony could be topped upwards.If you prefer which gambling establishment game and would like to try it within the a bona fide money means, click Enjoy inside the a casino.<\/p>\n

A lot of people like to place a resources basic, after that favor straight down bets while they score a feel based on how the new clusters while the meter develop while in the a circular. When they carry multipliers, the largest groups can also be reach huge payouts. The brand new game’s paytable shows how each symbol jumps when you visited 15, 20, 25, if you don’t 30 connections at once.<\/p>\n","protected":false},"excerpt":{"rendered":"

Play’N Wade did a work from creating the share during the less than-middle, which makes it easier to own players to own the harmony lower than manage. To place your bet, click on the switch \ufffdSubtraction\ufffd (-) to attenuate your own wager and https:\/\/uk-slots-casino-uk.com\/en-gb\/ then click the fresh new button\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-116950","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/116950","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=116950"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/116950\/revisions"}],"predecessor-version":[{"id":116951,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/116950\/revisions\/116951"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=116950"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=116950"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=116950"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}