/* 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":98792,"date":"2026-05-25T11:03:52","date_gmt":"2026-05-25T11:03:52","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=98792"},"modified":"2026-05-25T11:03:53","modified_gmt":"2026-05-25T11:03:53","slug":"but-not-scatters-don%ef%bf%bdt-arrive-through-the-free-revolves-therefore-the-bullet-cannot-be-retriggered","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/but-not-scatters-don%ef%bf%bdt-arrive-through-the-free-revolves-therefore-the-bullet-cannot-be-retriggered\/","title":{"rendered":"But not, scatters don\ufffdt arrive through the free revolves, therefore the bullet cannot be retriggered"},"content":{"rendered":"

So it auto mechanic as well as escalates the chance of carrying out large earnings. Gains mode when around three or higher coordinating signs house for the adjacent reels, ranging from the new leftmost reel. So it highly volatile position also offers a max profit of 10,000x the share, having an enthusiastic RTP off %.<\/p>\n

The brand new unpredictability of your own Megaways\ufffd program provides adventure and you may endless alternatives to have enormous earnings. Which dynamic game play have members on their feet while the amount out of symbols and you will paylines transform with every spin. The newest Come back to Athlete (RTP) commission is actually a vital factor to have people when selecting a position online game, since it implies the typical payout rate throughout the years. The fresh new Nuts Icon, searching to the reels 2, twenty-three, four, and you will 5, substitutes for everybody icons but the brand new Spread.Use these Wilds doing or boost effective combos. Click the Spin key first off to experience.For continued game play, use the Autoplay ability, that enables you to lay a particular quantity of spins and loss\/profit constraints having automated enjoy.<\/p>\n

Get a hold of the brand new game’s diet plan or position information when you’re rotating to the Pompeii Megareels Megaways when logged into your betting membership and you will gaming that have genuine loans. Let’s assume you’re gaming $1 per twist, while put $100 to your account for the an internet playing site. The fresh max earn of the Pompeii Megareels Megaways video game is actually 10,000x your stake, and therefore holds up really up against almost every other Pragmatic Enjoy slots. Although you won’t need to favor particular traces, victories is actually paid off off left so you can proper, that makes it possible for many you’ll be able to combos. The latest average volatility of your own games helps it be appealing to a great wide range of individuals, and 243 an effective way to earn make gameplay rewardingly easy. Downloads are not necessary for internet browser-depending features, that makes it less difficult for people to make use of.<\/p>\n

The latest image having Pompeii are historical and carefully in depth, as in possible from Aristocrat’s most other slot machines, plus they diligently replicate the fresh new situations of the time. If you are searching for a slot games that take you into the a wild travels back in time, Pompeii ‘s the game to you. Merely fall into line four power reels icons and you may open good totally new level of game play which have 243 paylines! The latest graphics and you may background outline transportation your back in time as the you listen to the fresh new thunderous roar away from Install Vesuvius and find out the fresh lava disperse. Below are a few our very own fascinating article on Pompeii Gold Rapid Connect position of the NetGame!<\/p>\n

You can select 9 so you can Adept as your playing casino poker card denomination<\/h2>\n

I must say that I really do enjoy the overall motif at the rear of Pompeii. And if about three, 4 or 5 of those can be found in have a look at in virtually any venue, you can turn on 10, fifteen or 20 freespins, correspondingly. The ways to help you earn regarding position are only for combinations shaped away from left in order to proper, and never one another suggests.<\/p>\n

Meanwhile, what number of symbols to the a specific reel increases. Pompeii Megareels Megaways by the Practical Play requires the fresh new far-treasured Megaways mechanic and you can dials one thing up a ver<\/a> notch, which have big image and you may an extraordinary Totally free Spins bullet. Based on how many scatters appear, players score between ten and you will 20 totally free spins, as well as will get a great deal more if they gamble again.<\/p>\n

This video game is definitely fun and you can fair, even though the biggest earn isn’t as large because the some higher-chance choice. Pompeii Position shall be starred for the each other desktop computers and you can mobile devices, in order to choose which program to use according to the user. You can enjoy Pompeii Slot at the most casinos on the internet that have games because of the Aristocrat.<\/p>\n

The online game offers constant successful combos and free spins round are going to be caused most of the time. All these symbols and award honours for two-of-a-type successful combinations. Therefore, because the game can get be unable to impress progressive harbors admirers, individuals who appreciated the first Pompeii pokie usually see that extremely little changed. The fresh new image remain a comparable plus the sound recording consists of merely a number of effects. Even if most internet poker machines are infused having 3d image and you may uniform soundtracks, Pompeii’s on line pokie video game is quite simply an area-founded casino poker host that was furnished to possess on the internet fool around with.<\/p>\n

It can option to another symbols but the fresh new Spread, doing profitable combos<\/h2>\n

Result in the fresh new bullet that have five or six scatters, and also you get 20 or twenty-five. They begins with four or maybe more scatters, where you discover 15 bonus spins. Because the a good Megaways slot, you are in to own an eternal move regarding effective spins. With a little fortune, you will observe reels filling out to your maximum amount of symbols, and that greatly advances the winning possible. The fresh slot’s sharp image create Mt. Vesuvius more menacing. Today you might be happy to play the slot which have a bona-fide finances.<\/p>\n

You can create a person membership indeed there in just moments and also have started immediately. I suggest that you select one of the finest gambling enterprises out of the range of attempt winners. Here you will find hence online game signs offer the greatest winnings, that have a few snakes as being the higher-using symbol. Rather, successful combos are going to be shaped when about three or even more similar symbols appear on surrounding reels. The fresh position enjoys a great 95% RTP and you will installing that have steady added bonus have, making it an excellent slot games to enhance the profits.<\/p>\n

You get yourself up to three partial-sticky wilds for every bonus round twist, as well as the maximum profit is actually ten,000x their risk. You’ll be able to purchase the enhanced style of the advantage round getting 300x the fresh stake, together with caused by 3 to 5 scatters. Qualified players should buy the standard incentive bullet to have 100x the newest stake, and therefore will give you three to five creating scatters. The new Pompeii Megareels Megaways maximum win are ten,000x the risk, plus the maximum victory struck frequency was 1 in 5,780,347 spins. Pompeii Megareels Megaways concerns existence from the added bonus bullet regardless if, with a new multiplier program which can deliver sizzling payouts up to help you ten,000x your own risk.<\/p>\n

Aristocrat is very large on the inclusion from able to enjoy brands because of their video game, which means Pompeii Slot shall be starred without any interest in bucks bet. On the gamble online game, punters try given a betting card with its face down, and they’ve got to choose be it reddish or black. Immediately after a combination are landed, its really worth are multiplied from the compared to the newest risk placed on the latest twist, and you can gains try highlighted for the credits. Ergo, the look of equivalent emails in the three or higher surrounding reels, which range from the brand new leftmost you to definitely, causes a commission. Whenever wilds are used into the the 2nd and you may last reel to do a similar combination, the brand new payouts gathered is actually multiplied from the fifteen.<\/p>\n

This on line slot possess a max earn maximum away from ten,000x the fresh new choice, notably outperforming a number of other free play ports hosts for fun. Such Pompeii Megareels Megaways incentive has are not numerous however, enjoyable and potentially effective. I’m hoping your enjoyed the fresh review of this video game which you’ll be able to read through this Pompeii Megareels Megaways position remark in order to the end. If you feel you will be willing to fool around with a real income, you should check our very own variety of required casinos on the internet featuring that it video game.<\/p>\n","protected":false},"excerpt":{"rendered":"

So it auto mechanic as well as escalates the chance of carrying out large earnings. Gains mode when around three or higher coordinating signs house for the adjacent reels, ranging from the new leftmost reel. So it highly volatile position also offers a max profit of 10,000x the share, having\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-98792","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/98792","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=98792"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/98792\/revisions"}],"predecessor-version":[{"id":98793,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/98792\/revisions\/98793"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=98792"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=98792"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=98792"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}