/* 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":126083,"date":"2026-05-25T13:27:53","date_gmt":"2026-05-25T13:27:53","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=126083"},"modified":"2026-05-25T13:27:54","modified_gmt":"2026-05-25T13:27:54","slug":"not-scatters-do-not-come-throughout-the-free-revolves-and-so-the-bullet-cannot-be-retriggered","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/not-scatters-do-not-come-throughout-the-free-revolves-and-so-the-bullet-cannot-be-retriggered\/","title":{"rendered":"not, scatters do not come throughout the free revolves, and so the bullet cannot be retriggered"},"content":{"rendered":"

That it mechanic together with increases the chance of creating large profits. Wins function whenever around three or maybe more coordinating signs house into the surrounding reels, ranging from the fresh leftmost reel. So it very unpredictable slot even offers a max winnings regarding 10,000x the stake, having a keen RTP regarding %.<\/p>\n

The fresh unpredictability of Megaways\ufffd program will bring thrill and you may unlimited options to possess substantial earnings. It dynamic game play features members on the feet since the number away from symbols and paylines transform with each twist. The brand new Go back to Member (RTP) percentage was an important grounds having members whenever choosing a position video game, as it implies the common payment rates over time. The fresh new Insane Icon, looking to your reels 2, twenty-three, 4, and you may 5, substitutes for everybody icons except the latest Spread.Make use of these Wilds to complete or enhance profitable combos. Click on the Twist option to begin with to relax and play.To possess continuous game play, make use of the Autoplay feature, which enables you to set a certain quantity of revolves and you may loss\/win limits getting automatic play.<\/p>\n

Come across the latest game’s eating plan or slot facts when you find yourself rotating for the Pompeii Megareels Megaways whenever logged into the betting account and playing that have real finance. Let`s say you’re gaming $one for each and every spin, therefore put $100 into your account for the an on-line gaming website. The fresh new max earn of your Pompeii Megareels Megaways video game is actually ten,000x their risk, vavada<\/a> hence holds up well facing almost every other Practical Enjoy slots. While you don’t have to favor certain contours, wins is actually paid down off leftover to help you best, making it possible for one particular it is possible to combos. The latest typical volatility of one’s games helps it be popular with an effective amount of anybody, plus the 243 ways to victory improve game play rewardingly simple. Downloads are not needed for browser-centered functionality, that makes it even easier for people to use.<\/p>\n

The fresh new graphics having Pompeii is historical and very carefully outlined, like in the fact from Aristocrat’s other slot machines, and so they vigilantly replicate the fresh incidents of the time. If you’re looking to own a position online game that elevates to the a crazy excursion back in time, Pompeii is the games for you. Only fall into line four fuel reels symbols and you’ll open a whole new quantity of gameplay that have 243 paylines! The brand new picture and you can records detail transport you back in its history because you hear the latest thunderous roar of Install Vesuvius to see the brand new lava circulate. Below are a few the pleasing post on Pompeii Silver Rapid Link slot of the NetGame!<\/p>\n

You could potentially pick from nine so you’re able to Expert as your playing poker credit denomination<\/h2>\n

I need to claim that I do enjoy the overall motif behind Pompeii. And in case around three, four or five of them come in take a look at in virtually any location, it is possible to stimulate ten, 15 or 20 freespins, respectively. The methods so you’re able to victory from the position are merely to have combos designed off left to best, and not each other means.<\/p>\n

Meanwhile, what amount of symbols into the a particular reel can increase. Pompeii Megareels Megaways from the Pragmatic Gamble takes the newest much-adored Megaways auto mechanic and you will dials some thing right up a level, which have great graphics and a remarkable 100 % free Spins round. Depending on how of many scatters are available, players get ranging from 10 and you may 20 free spins, and so they get even more once they gamble once more.<\/p>\n

The game is enjoyable and you may reasonable, although the greatest win is not as big since particular higher-chance possibilities. Pompeii Slot might be starred into the one another laptops or computers and you may mobile mobile phones, in order to choose which program to utilize according to agent. You might enjoy Pompeii Position at most online casinos with game from the Aristocrat.<\/p>\n

The online game offers up constant winning combos as well as the 100 % free revolves bullet are going to be brought about most of the time. A few of these signs together with honor awards for a couple of-of-a-kind winning combos. Thus, because the video game can get struggle to attract progressive slots admirers, those who preferred the original Pompeii pokie tend to see you to most little has evolved. The latest graphics are still an identical and sound recording include merely several consequences. Although most on-line poker servers is actually infused with three dimensional picture and you can consistent soundtracks, Pompeii’s on line pokie game is quite only a secure-dependent poker servers which had been provided to own online have fun with.<\/p>\n

It will choice to any other signs but the newest Scatter, to complete effective combinations<\/h2>\n

End in the latest round which have four otherwise six scatters, while rating 20 otherwise twenty five. They begins with five or more scatters, in which you discover fifteen extra spins. Because the a Megaways position, you’re in to possess an endless streak out of profitable spins. With some fortune, you will notice reels filling out towards limit level of symbols, and this greatly escalates the successful prospective. The newest slot’s clear graphics generate Mt. Vesuvius a great deal more threatening. Now you are happy to play the slot having a genuine funds.<\/p>\n

You may make a player account truth be told there in just moments and possess already been instantly. I suggest that you choose one of the best gambling enterprises from the variety of decide to try winners. Truth be told there you can see and this video game signs render the greatest winnings, having one or two snakes being the high-spending symbol. Rather, profitable combos is going to be molded when around three or even more identical symbols appear on adjoining reels. The fresh position provides good 95% RTP and you will fitted that have steady added bonus provides, rendering it an excellent slot online game to enhance your earnings.<\/p>\n

You get yourself up to 3 semi-gluey wilds per incentive bullet spin, while the max profit try ten,000x their stake. You can even choose the increased style of the main benefit bullet for 300x the brand new stake, along with triggered by three to five scatters. Qualified participants can buy the regular bonus bullet to own 100x the fresh stake, hence will provide you with 3 to 5 causing scatters. The fresh new Pompeii Megareels Megaways max earn is actually ten,000x your risk, as well as the max profit hit volume was 1 in 5,780,347 revolves. Pompeii Megareels Megaways involves lifestyle in the bonus round regardless if, with another type of multiplier system that may deliver sizzling winnings upwards to ten,000x your own risk.<\/p>\n

Aristocrat is very large into the inclusion of absolve to enjoy versions because of their video game, for example Pompeii Position might be played without any demand for bucks stakes. In the gamble video game, punters is actually given a gaming card featuring its face off, and they’ve got to decide whether it is reddish or black. Once a combo is actually landed, the well worth was increased of the that of the new share wear the new spin, and you will gains try showcased inside loans. Therefore, the look of similar emails for the around three or higher adjoining reels, ranging from the latest leftmost one, triggers a payout. Whenever wilds can be used towards both the second and you may next reel to do the same consolidation, the brand new winnings gathered is increased from the ten.<\/p>\n

That it on the web position enjoys a maximum profit maximum out of 10,000x the brand new bet, notably outperforming a great many other free gamble slots servers for fun. These Pompeii Megareels Megaways incentive features aren’t several however, enjoyable and potentially successful. I’m hoping you enjoyed the latest report on the game and therefore you are able to peruse this Pompeii Megareels Megaways slot opinion so you can its end. If you think you’re ready to fool around with real cash, you should check our very own variety of necessary casinos on the internet offering that it games.<\/p>\n","protected":false},"excerpt":{"rendered":"

That it mechanic together with increases the chance of creating large profits. Wins function whenever around three or maybe more coordinating signs house into the surrounding reels, ranging from the fresh leftmost reel. So it very unpredictable slot even offers a max winnings regarding 10,000x the stake, having a keen\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-126083","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/126083","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=126083"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/126083\/revisions"}],"predecessor-version":[{"id":126124,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/126083\/revisions\/126124"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=126083"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=126083"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=126083"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}