/* 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":115560,"date":"2026-05-25T12:21:49","date_gmt":"2026-05-25T12:21:49","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=115560"},"modified":"2026-05-25T12:21:50","modified_gmt":"2026-05-25T12:21:50","slug":"maximum-earnings-100-date-while-the-added-bonus-finance-having-10x-betting-requisite-as-completed-inside-7-days","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/maximum-earnings-100-date-while-the-added-bonus-finance-having-10x-betting-requisite-as-completed-inside-7-days\/","title":{"rendered":"Maximum earnings ?100\/date while the added bonus finance having 10x betting requisite as completed inside 7 days"},"content":{"rendered":"

The fresh Pearl Heaven Map is another nuts bonus available in so it strange mermaid harbors game<\/h2>\n

The newest starfish yields 1,000x their choice for 5 signs, the latest anchor perks 400x your own wager, and also the benefits chest features 250 coins to own a mix of 5 icons. Zero \ufffd there’s nothing fishy regarding it mermaid, but their own end, and she embraces slot users of the many wide range and you may sense so you can signup their unique in her hunt for value. Video game such Mystical Sea Treasures provide highest-volatility feel into the probability of wins surpassing 5,000x your own risk through the bonus cycles. Capture Large Trout Bonanza 1000 Harbors, particularly-which fishing-themed video game offers up to 20 100 % free revolves, numerous added bonus features, and also the exact same interesting game play that makes the fresh paid down variation very common.<\/p>\n

When you compare slots sign-upwards promotions, work with how effortless it\ufffds to make use of and you can transfer the fresh new added bonus for the withdrawable profits. It is a platform enabling users to relax and play some other video game and you will get into tournaments so you’re able to victory awards and rewards. The newest Will get Pool Pass has grown to become live, and that time you could potentially… Today, we will see what Destiny can be, discuss the overall game, and possibly it is possible to actually profit some thing to the Controls away from Fortune. There are various of free video game to pick from, thus long lasting your preferred game are, there can be bound to getting a sensation that may help you stay captivated.<\/p>\n

Wilds, scatters, and broadening signs do exciting gameplay, if you are free spins and you may arbitrary multipliers raise benefits. You will find around three incentive series (a couple of which happen to be free spins) that you can turn on from the get together crazy planets. After you make a deposit, you can play the slot for real currency. By simply using the slot as opposed to paying a cent, you will understand tips play it and find out if you prefer what exactly is on offer. Which have three some other added bonus series, it will positively impress both the newest and you will seasoned participants.<\/p>\n

Stable harbors portray attempted-and-checked out classics, whilst unstable of them might possibly be fashionable but brief-lived<\/h2>\n

Let’s diving to your strange world of mermaids and discuss particular really well-known mermaid inspired online slots. Move as well as these marine beauties because you spin the new reels and determine undetectable gifts, extra series, and you may free spins. These types of beautiful half of-human, half-fish creatures features amused people for many years with their romantic attract and you can mysterious vitality. Mysterious Mermaid Queen Ports offers delightful picture and higher sound files, which can help you stay entertained all day from the comfort of your own family. Willing to trade spirits to have saltwater money?<\/p>\n

88 Dragon Sweet Bonanza Christmas Egyptian Fortunes Viking Runes The cost Is right Big Bamboo Dry or Real time Transformers Battle having Cybertron There are many other categories and you will position game layouts to experience including the wants off Ancient Egypt, explorer, Christmas, fresh fruit machine, Halloween, and Superhero and comical. Instead of having to challenge from feet game going to huge victories, you can do therefore in the 100 % free revolves added bonus round or go directly to the newest jackpot.<\/p>\n

All research popularity data is compiled month-to-month via KeywordTool API and you will stored in the faithful Clickhouse database. This will help select when focus peaked \ufffd perhaps coinciding with major victories, promotional campaigns, or high winnings becoming shared on the web.<\/p>\n

The newest wild features have inclusion to help you icon removals regarding bonus grade, all of the causing some really very good wins. You are free to unravel the newest treasures of your own mermaids Tigergaming online casino<\/a> and their household \ufffd the fresh new strong water. It position online game is actually created specifically having professionals that do perhaps not see incentive rounds and other possess, but prefer to simply twist the new reels and you will take a seat and you may observe the fresh new winnings roll during the. There isn’t any extra icon or bonus round inside video game, and there are not any totally free spins and other bonus enjoys.<\/p>\n

It position is made for people which want to speak about the fresh new mysteries of the sea and now have a chance to profit large. This is the new under water field of Happy Mermaid Position because of the Swintt, in which you might possibly be surrounded by stunning mermaids, precious seafood, and you will dear pearls. And you will let’s not forget regarding the fun and you may colourful signs like shells, starfish, as well as e’s concept is actually an effective twenty-three-3 grid which have twenty seven betways, enclosed by a beautiful underwater surroundings with seafood, octopus, whales, and other ocean animals. House about three or even more pearl scatters so you can end in totally free spins, where the wins was doubled.<\/p>\n

While doing so, attaching inside the gifts and you may big victories makes for a simple changeover on casino betting business. Prepare for pearls pearls pearls, fun and you may epic jackpot wins in the open Pearls mermaid games free online in the Gambino Slots! Nuts Pearls 2 includes a few wanted added bonus enjoys to have online slots admirers.<\/p>\n

Like other game back at my range of reasonable volatility ports, Mermaids Millions can also be honor repeated quick wins. Such victories pay 3x within the Free Spins, where every free revolves is going to be retriggered. We have been a modern and creative betting app merchant delivering as well as responsible skills for those more than 18. The fresh new Gold-fish is short for Wild, it can substitute all the symbols except Scatter and you will doubles the fresh profit whenever replacing.<\/p>\n

Appreciate insane symbols, spread symbols, and you may a bonus bullet to own encouraging advantages. The latest starfish pays 1,000x their wager for five symbols, the brand new point will pay 400x the wager for 5 symbols, and treasure breasts pays 250 gold coins for 5 symbols. This is certainly also the nuts icon regarding video game, so it stands set for all other symbols, except the advantage, to create even more potential victories. Adjust the \ufffdmoney value’, click on the as well as and minus cues for the starfish to decide the absolute minimum money off \ufffd0.05 and you may a max money off \ufffd1.00.<\/p>\n

One of several liquids you’ll find a variety of updates stones, buried strong regarding the sea and you will reputation satisfied to the exotic flooring. The water try dark blue and you’re a considerable ways regarding the surface but there is nonetheless an atmosphere out of mystical peace almost everywhere. The latest included reel icons include the red orb, the newest bluish orb, a great mermaid, shellfish, a wonderful bangle, a bluish jar, snails and you can poker symbols. However, it is in the water however, would they just swim doing for example average fish or at least, he has stone-founded house including individuals and you can waste time to your Tik Tok?<\/p>\n

When you’re bonus enjoys and simple gameplay are sweet enjoys, on the internet slot lovers commonly look out for the newest RTP and volatility of your position just in case you’ll find one jackpots available. Position incentive possess in the morning a great help slot partners that’s the reason he could be highly sought for. As with other IGT gambling enterprise titles, Mystical Mermaid online game has a basic design with several interesting features. The video game features ocean-themed icons like forgotten ships, value chests, attractive mermaids, seahorses, starfish, whales, and shells. Discover one or two free spins and you can five jackpot awards that will provide huge wins regardless if you’re empty for the playing steps. Such members enjoy bonus features at best-ranked internet casino internet sites particularly totally free spins and multipliers that boost their odds into the reels.<\/p>\n","protected":false},"excerpt":{"rendered":"

The fresh Pearl Heaven Map is another nuts bonus available in so it strange mermaid harbors game The newest starfish yields 1,000x their choice for 5 signs, the latest anchor perks 400x your own wager, and also the benefits chest features 250 coins to own a mix of 5 icons.\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-115560","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/115560","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=115560"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/115560\/revisions"}],"predecessor-version":[{"id":115561,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/115560\/revisions\/115561"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=115560"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=115560"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=115560"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}