/* 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":118397,"date":"2026-05-25T13:03:30","date_gmt":"2026-05-25T13:03:30","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=118397"},"modified":"2026-05-25T13:03:31","modified_gmt":"2026-05-25T13:03:31","slug":"yet-not-scatters-do-not-arrive-while-in-the-totally-free-spins-and-so-the-round-cannot-be-retriggered","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/yet-not-scatters-do-not-arrive-while-in-the-totally-free-spins-and-so-the-round-cannot-be-retriggered\/","title":{"rendered":"Yet not, scatters do not arrive while in the totally free spins, and so the round cannot be retriggered"},"content":{"rendered":"

That it auto technician plus advances the likelihood of starting huge payouts. Victories mode whenever about three or higher coordinating symbols land on the adjacent reels, including the fresh new leftmost reel. It highly erratic slot also provides an optimum winnings away from 10,000x your own share, having an enthusiastic RTP of %.<\/p>\n

The brand new unpredictability of your Megaways\ufffd program brings thrill and you may limitless options having big profits. So it vibrant gameplay features participants on their leg as the amount away from signs and you may paylines changes with each spin. The newest Return to User (RTP) commission is actually a critical grounds for players whenever choosing a slot video game, because it ways the average payout price throughout the years. The fresh new Wild Symbol, looking towards reels 2, twenty-three, 4, and you can 5, alternatives for everybody symbols except the brand new Spread out.Use these Wilds accomplish or promote winning combos. Click on the Spin key to begin with to experience.To possess continuing gameplay, make use of the Autoplay feature, enabling you to definitely put a specific amount of revolves and you will loss\/victory limitations to possess automated play.<\/p>\n

Find the latest game’s menu otherwise position facts while you are spinning into the Pompeii Megareels Megaways whenever logged to your gaming account and gaming having actual money. Let’s assume you might be playing $one for every single spin, and you also place $100 in the account towards an online gaming webpages. The fresh max profit of one’s Pompeii Megareels Megaways video game are 10,000x their stake, which supports really facing other Practical Gamble harbors. When you won’t need to choose particular traces, wins is repaid of left so you can best, that makes it possible for many you can easily combos. The fresh new typical volatility of games causes it to be popular with a good amount of somebody, plus the 243 a way to profit make game play rewardingly effortless. Packages aren’t necessary for browser-established abilities, that makes it less difficult for all those to use.<\/p>\n

The new picture to own Pompeii was historical and you may very carefully detail by detail, as with the fact from Aristocrat’s other slot machines, as well as diligently replicate the brand new Spinybet no deposit bonus<\/a> occurrences of the time. If you’re looking to possess a position game that can elevates to the a wild travel back in time, Pompeii is the games to you personally. Just make five energy reels icons and you will discover an effective whole new amount of gameplay that have 243 paylines! The fresh new picture and record detail transportation you back in time since you hear the new thunderous roar away from Attach Vesuvius to check out the brand new lava move. Below are a few all of our pleasing post on Pompeii Gold Fast Hook position by the NetGame!<\/p>\n

You could select nine so you’re able to Ace since your to tackle poker cards denomination<\/h2>\n

I must declare that I do enjoy the total theme trailing Pompeii. Incase three, 4 or 5 of them can be found in consider in just about any area, you’ll be able to stimulate 10, 15 or 20 freespins, respectively. The methods in order to win on the position are just getting combinations shaped away from leftover to right, and not both means.<\/p>\n

Meanwhile, what number of icons to your a specific reel increases. Pompeii Megareels Megaways by Pragmatic Play requires the latest much-enjoyed Megaways auto technician and you may dials one thing right up a notch, having big image and you can a remarkable 100 % free Spins round. Depending on how of a lot scatters are available, people score between 10 and you will 20 totally free spins, as well as get a lot more when they enjoy once again.<\/p>\n

The game is always enjoyable and you can reasonable, although the most significant profit is not as larger because the certain highest-exposure options. Pompeii Slot will be played towards each other pcs and cellular devices, so you can decide which system to make use of with regards to the agent. You could potentially enjoy Pompeii Position at most web based casinos that have online game from the Aristocrat.<\/p>\n

The game offers up repeated successful combinations and also the free revolves bullet is going to be caused usually. All these icons as well as honor awards for a couple of-of-a-form successful combos. Very, since game will get struggle to attract progressive slots admirers, individuals who preferred the original Pompeii pokie have a tendency to enjoy you to very absolutely nothing has evolved. The fresh image remain a comparable plus the soundtrack includes only several outcomes. Although really internet poker hosts is actually infused with 3d graphics and you may consistent soundtracks, Pompeii’s online pokie games is quite just a land-depending poker host which was equipped getting on line explore.<\/p>\n

It does solution to any other icons but the brand new Spread out, to do successful combinations<\/h2>\n

Bring about the fresh new round that have four otherwise half dozen scatters, and you also score 20 or 25. It begins with five or even more scatters, for which you discovered 15 added bonus revolves. Since the good Megaways position, you’re in to have an eternal streak from winning revolves. With a bit of chance, you will see reels completing to the limitation amount of icons, and this considerably increases the winning prospective. The fresh slot’s sharp graphics create Mt. Vesuvius a great deal more menacing. Today you happen to be happy to play the slot with a bona-fide finances.<\/p>\n

You may make a player account truth be told there in a matter of mere seconds and possess become right away. I advise you to choose one of the best gambling enterprises out of all of our list of shot champions. Around you can see which game signs render the highest payouts, that have a couple snakes as the large-purchasing icon. Alternatively, winning combos might be shaped when about three or more identical signs appear on adjacent reels. The fresh new position provides an excellent 95% RTP and you can installing with steady extra possess, that makes it an effective position online game to grow their profits.<\/p>\n

You get yourself up to three partial-sticky wilds each extra round twist, while the maximum winnings try 10,000x their risk. It is possible to choose the increased kind of the bonus round getting 300x the new share, as well as due to three to five scatters. Qualified participants can find the regular added bonus bullet having 100x the latest risk, and therefore will give you less than six causing scatters. The fresh Pompeii Megareels Megaways maximum victory try ten,000x your own stake, while the max victory hit volume is actually 1 in 5,780,347 revolves. Pompeii Megareels Megaways concerns life on bonus round even though, having a different sort of multiplier system that can submit sizzling winnings up so you can ten,000x your share.<\/p>\n

Aristocrat is very large for the inclusion off absolve to gamble products for their games, which means Pompeii Position is going to be starred without having any interest in bucks limits. In the gamble games, punters was given a betting credit along with its face off, and they have to decide whether it’s yellow or black. Immediately after a combo is landed, its worthy of try multiplied from the that the latest stake placed on the brand new spin, and you will wins is showcased inside credits. Ergo, the look of similar letters for the around three or even more surrounding reels, which range from the fresh new leftmost one, causes a payout. Whenever wilds are used for the the next and you will last reel doing the same integration, the fresh new profits accumulated was increased of the ten.<\/p>\n

That it on line position possess a max win restriction regarding ten,000x the newest bet, significantly outperforming a number of other 100 % free play ports machines enjoyment. These types of Pompeii Megareels Megaways incentive features are not several but enjoyable and you will possibly effective. I’m hoping your appreciated the newest writeup on this game and this you’ll check this out Pompeii Megareels Megaways slot remark to help you their prevent. If you were to think you may be prepared to use real money, you should check all of our set of recommended online casinos featuring so it games.<\/p>\n","protected":false},"excerpt":{"rendered":"

That it auto technician plus advances the likelihood of starting huge payouts. Victories mode whenever about three or higher coordinating symbols land on the adjacent reels, including the fresh new leftmost reel. It highly erratic slot also provides an optimum winnings away from 10,000x your own share, having an enthusiastic\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-118397","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/118397","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=118397"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/118397\/revisions"}],"predecessor-version":[{"id":118398,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/118397\/revisions\/118398"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=118397"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=118397"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=118397"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}