/* 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":130609,"date":"2026-05-25T13:32:39","date_gmt":"2026-05-25T13:32:39","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=130609"},"modified":"2026-05-25T13:32:44","modified_gmt":"2026-05-25T13:32:44","slug":"honey-hurry-100-was-a-dynamic-fast-moving-slot-laden-up-with-streaming-gains-multipliers-and-you-may-class-mechanics","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/honey-hurry-100-was-a-dynamic-fast-moving-slot-laden-up-with-streaming-gains-multipliers-and-you-may-class-mechanics\/","title":{"rendered":"Honey Hurry 100 was a dynamic, fast-moving slot laden up with streaming gains, multipliers, and you may class mechanics"},"content":{"rendered":"

Play’N Wade performed good job regarding making the stake at the lower than-center, which makes it easier to own players to possess their harmony around handle. To put your wager, click on the key \ufffdSubtraction\ufffd (-) to reduce your choice and click the newest key \ufffdAddition\ufffd (+) to increase the choice number. In front of like an amazing position online game with really-designed graphics and creative icons, do you want and find out this excellent playing trip? Browse upward to reach the top webpage and take pleasure in one of many cutest slot online game – on the trial variation.<\/p>\n

You can comment the latest paytable through the \ufffdI’ key, that explains icon values, cluster payouts, and info on cascades and you can multipliers. Whenever Honey Rush 100 plenty, anime bees hype within the hexagonal grid since flowers and you will coins drop to your lay.<\/p>\n

Sure, most of the greatest Play’n Wade-powered online casinos have the online game available in a real income and you can trial means. It is during the no extra prices to you personally and should not connect with the gambling liking to own a casino. Exclusive hexagon grid design enhances the motif, and features is party will pay, gooey wilds and.<\/p>\n

Continue stuff amusing with cascades, gluey wilds, an earn multiplier, and you may a rush Meter providing you with your a whole lot larger class will pay. UK-founded professionals will need to solution an easy years see before to try out any internet casino games 100% free. The latest nine,000x restrict win\ufffdsomewhat higher than the latest developer’s old-fashioned 5,000x limit\ufffdreflects the fresh game’s specific structure having high-volatility fans. This construction elegantly changes traditional free revolves with a quality-depending element development program. You can even consider Immortal Relationship or Guide off Tincture in the event your Scatter-based mechanic is the reason why the day for your requirements.<\/p>\n

After every successful team, icons cascade down and new ones complete the brand new empty room, potentially performing extra wins. It uses a cluster pays auto technician in which gains are shaped from the linking no less than 5 complimentary symbols horizontally otherwise vertically. After every winning people, signs fall aside and you will new ones cascade down to complete blank rooms, potentially undertaking extra successful combos. Low-worth signs become five flower patterns, while middle and you may higher-tier symbols progress as a result of tan, silver, and you will gold coins to help you expensive diamonds. Wins means when at the very least 5 coordinating signs hook up horizontally or vertically. Whenever a group wins, icons clear and you will the brand new symbols shed, possibly hooking up into the after that line or team strikes.<\/p>\n

Each time you peak upwards, you are going to trigger the fresh new Drone Colony feature, and this provides you with a cluster from a minimum of eight matching icons along with a sticky wild. ond icon is considered the most beneficial symbol to the a slot on the good beehive, but that is just the method it goes VegasWinner<\/a> right here. When you are someone who has characteristics-themed slots that have innovative have and you can big win potentials, Honey Rush deserves some time. They very well grabs the brand new essence out of nature-lush eco-friendly forests which have active bees operating its secret to your honeycombs. Since you spin the fresh reels, you are able to fill the fresh new Hurry Meter which have winning groups. A different sort of and you may fascinating position experience, prepare yourself to feel the newest hurry inside Honey Hurry!<\/p>\n

The newest come back to athlete of the online game is actually %, in excess of all of our measuring stick to own average regarding roughly 96%. Honey Hurry has many new features to save things interesting (these are intricate in full less than). Coupling it to the lovely sounds and you can fun sound effects, the entire style of this slot is actually hugely noble. The fresh new reels come with evident, smartly designed icons which can be going which have great slickness and you may sufficient flare to store stuff amusing. Honey Rush is a wonderful illustration of slot build. The new bees can be passing away all over the world, but right here online they are prospering.<\/p>\n

The overall game converts well so you’re able to reduced windows, with no distortion otherwise death of high quality<\/h2>\n

Whatever the form of experience you’re in the mood getting, you happen to be bound to come across additional ports that provides just what you’ll enjoy. The overall Score associated with the casino video game was calculated centered on the look and data compiled from the our gambling games remark cluster. Will they be enjoyable, enjoyable, along with great High definition high quality! Our company is committed to ensuring online gambling is enjoyed sensibly.<\/p>\n

Honey Hurry uses a cluster will pay program on the an effective hexagonal honeycomb grid-you happen to be matching icons around the adjacent structure rather than old-fashioned paylines. This will help pick whenever attract peaked \ufffd maybe coinciding that have major victories, marketing and advertising ways, otherwise tall payouts becoming shared online. The new Hurry Meter demanding 160 signs to have Queen Colony and you may gooey wilds multiplying so you can 27x do enough time droughts anywhere between have \ufffd that’s the trading-from to own 9000x possible. Which rating reflects the positioning away from a position based on the RTP (Return to Player) versus most other game for the platform.<\/p>\n

The game possess have for example Crazy multipliers, Rush meter, Party, and you will Nest perks<\/h2>\n

In this Honey Rush 100 slot feedback I can give you my truthful thoughts for the games, the added bonus has, build, plus. Having its huge payment potential, the average RTP, feature-stacked game play, and you may pro-favourite motif, Honey Rush 100 have all of the factors as elizabeth to is actually. Thus, here are some a few options the next in the gambling enterprises, and you’ll yes choose one that’s as much as your own standards so you can is actually the video game around. Analysis are based on status regarding the evaluation table otherwise particular formulas. Typically we now have accumulated relationships into the web’s best position game designers, therefore if another game is about to drop it is likely we are going to learn about it basic. Honey Hurry 100 also provides the typical RTP of 96.2%, that’s extremely unpredictable.<\/p>\n

The brand new Nest provides mentioned above the generally duplicate the brand new symbol you to is within the middle of grid, while making a group regarding complimentary signs to help you prize you a profit prize. To have an entire set of icons and their payout viewpoints mouse click the newest i button at the end kept of video game display screen. There are even five straight down-expenses symbols represented by the additional-coloured vegetation, which can be for each and every worthy of to 10x their bet having thirty five+ matching signs.<\/p>\n

The new Honeypot usually move at random within grid and you may setting successful groups which have 1x, 2x, or 3x multipliers. People are will be viewing this game to have a very lifetime! Along with, otherwise charges the new Hurry meter, their earnings was reduced, therefore risk shedding more effective. Yet not, if you decide to play online slots games for real money, i encourage your understand our very own article regarding how ports work basic, you understand what can be expected. For folks who lack loans, only restart the online game, and your gamble currency harmony could be topped right up.If you want that it gambling enterprise online game and wish to give it a try within the a bona fide currency form, click Enjoy inside the a gambling establishment.<\/p>\n

We need to set a spending budget earliest, following prefer lower wagers while they score a getting for how the brand new groups and meter build up through the a circular. After they bring multipliers, the largest clusters normally visited grand winnings. The newest game’s paytable reveals how for every single symbol jumps when you reach fifteen, 20, 25, if not thirty associations at once.<\/p>\n","protected":false},"excerpt":{"rendered":"

Play’N Wade performed good job regarding making the stake at the lower than-center, which makes it easier to own players to possess their harmony around handle. To put your wager, click on the key \ufffdSubtraction\ufffd (-) to reduce your choice and click the newest key \ufffdAddition\ufffd (+) to increase the\u2026<\/p>\n

Continue reading<\/span><\/i><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-130609","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/130609","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=130609"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/130609\/revisions"}],"predecessor-version":[{"id":130630,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/130609\/revisions\/130630"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=130609"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=130609"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=130609"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}