/* 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":99792,"date":"2026-05-25T11:18:17","date_gmt":"2026-05-25T11:18:17","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=99792"},"modified":"2026-05-25T11:18:17","modified_gmt":"2026-05-25T11:18:17","slug":"listed-below-are-some-the-enjoyable-writeup-on-pompeii-megareels-megaways-slot-because-of-the-pragmatic-enjoy","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/listed-below-are-some-the-enjoyable-writeup-on-pompeii-megareels-megaways-slot-because-of-the-pragmatic-enjoy\/","title":{"rendered":"Listed below are some the enjoyable writeup on Pompeii Megareels Megaways slot because of the Pragmatic Enjoy!"},"content":{"rendered":"

Admirers away from marine-styled slots would like Larger Bass Bonanza, which offers the chance to reel in the big wins with its enjoyable angling motif. Each other games render an enjoyable and you can light-hearted gaming experience that is ideal for users of all sorts. If you’d prefer harbors with a little humor, Piggy Commission will certainly glee.<\/p>\n

As the video game is available in the multiple https:\/\/run4wincasino-ca.com\/<\/a> web based casinos, the chances regarding successful would be smaller. Shortly after determining one to phrase you’ll end up given the brand new RTP because the 96% or the RTP set during the %. The highest RTP mode regarding 96% are always screen when you are maybe not logged during the or if you might be using trial means. To begin, log on to your playing account and make certain you’re to experience the true currency options and next, start Pompeii Megareels Megaways, the latest position game.<\/p>\n

Exactly what distinguishes Stake in comparison to other online casinos is that the founders try transparent and you can myself accessible to their audience. They have a wide selection of video game with additional RTP, providing you a much better likelihood of winning at this site in the place of almost every other casinos on the internet.<\/p>\n

Pompeii position game enjoys highest-investing icons including armour, head protection, and you will chariot, medium-investing symbols such gold money plus blade, and you will reasonable-investing icons Good, J, K, ten, and you will Q. Such symbols through the Roman Kingdom, head protection, armor, gold money, chariot, amulet, sword, Jack, King, Adept, Queen while the Fatal Volcano. With good 96% RTP, it discharge enjoys several signs one to lead to other victories.<\/p>\n

To your a far more serious note, Practical Play is laden up with slots centered on a highly equivalent gameplay. Getting 100x the fresh new stake, purchase the antique means, and also for 300x the fresh stake, purchase the choice for the doubled win multiplier. After each and every winning spin, the fresh winning combos are paid as well as signs eliminated. 10x and you may 1x the brand new stake, because the Roman Emperor, armor, chariot, shield and you will silver money pays anywhere between 0.25x and you can 5x the brand new share.<\/p>\n

Spreaders don’t have to show up near to one another otherwise inside a specific buy from left so you’re able to best like many icons would. For all other signs except scatters, that it icon could only show up on reels 2 and you will four. They are wilds, scatters, multipliers you to last up, and you will a no cost revolves bullet which might be really effective. The fresh new post on Pompeii Slot discusses an abundance of entertaining possess which might be designed to generate for every game more pleasurable. For both the new and you can knowledgeable slot people, the latest mixture of styled reports and you may attempted-and-genuine position qualities would be a treat. Which game’s appearance and you can normal winnings and you may added bonus rounds wade together, providing members both graphic and real perks.<\/p>\n

Predicated on the variety of ideal online casinos ranking them within the the big ranks<\/h2>\n

With regards to the quantity of scatters that have caused the new 100 % free spins you could be rotating ten, fifteen or 20 times at no cost. Yes, once you sign in in the gambling establishment, your bank account is rejuvenated, you could potentially play for a real income, and you might discover actual profits. To follow tall winnings, users need perform a free account, deposit finance, and you may use their real harmony. In spite of this, the fresh attributes this club deal are very well-defined to make the procedure of risk possibilities as easy while the that game play.<\/p>\n

RTP (Go back to Pro) reveals simply how much a casino slot games pays out over day compared to all bets which were made. The fresh new quantity of bets suits one another informal users and big spenders, while the cellular-amicable framework makes it easier for more visitors to access. It is clear that many people trust this game because it is rather popular inside managed gambling enterprises. Society buffs and those who must play slots that have tons regarding provides commonly both including the ways it is made.<\/p>\n

The newest nuts symbol inside the Pompeii legs online game is the erupting volcano symbol, and it can choice to all other icon except the fresh new nuts icon in order to create profitable combos. Most of the legs game profits listed above was increased inside the form once you increase the amount of credits becoming gambled per spin. Aristocrat ingrained Pompeii with many different of the organization’s best gameplay has, including the exposure off wild symbols, spread signs, totally free revolves, bonus game, and multipliers. This is just a keen ante bet, also known as the advantage Shell out feature on the of numerous Aristocrat position headings, and that entitles participants in order to a complete complement of added bonus video game and you may a lot more payouts.<\/p>\n

Particular web based casinos render private honors to have betting to the cent harbors for the a smart device, in addition to free revolves. Create an on-line local casino, establishing monetary pointers to create a merchant account. Minimal limitation is actually 0.01, making it possible for users to love various technicians, storylines, and additional features.<\/p>\n

No matter system, the game fits any monitor quality when you find yourself bringing clean picture since really as simple control. Free online Pompeii position video game pulls Canadian local casino admirers due to the versatile\/book game play. Pompeii’s Reel Power increases gameplay freedom, delivering a substitute for antique payline patterns. It is ideal for beginners and you will experienced users exactly who look for evaluation steps otherwise enjoy this choices limited by recreation.<\/p>\n

The brand new Good, K, Q, J and you may ten symbols will pay between 0<\/h2>\n

The fresh new RTP functions as an effective metric showing the amount of money people is greeting winning back from the game over time. Symbols portraying natures miracle show up on reels 2 so you can 6 position set for every but the new Scatter symbol to help make winning combinations. Using a Megaways system it offers up to 117,649 a method to victory bequeath round the 6 reels delivering options having successful combos. They offer a glimpse to the minutes in which method, chance and you will video game provides including 100 % free revolves and flowing reels come together to transmit epic payouts. It isn’t a haphazard number; they shows big gains to possess users that happen to be shortly after exciting gains showcasing the fresh new online game high-risk while the thrilling suspicion out of Pompeiis final days. They look the exact same, in the fresh bad adaptation you’re going to get faster bonus have and you can reduced multipliers the brand new gambling enterprise eliminates their greatest victories.<\/p>\n

Penny slots allow people to choice at the very least 1 cent for each and every choice line in the casinos on the internet. She closely observe launches out of best video game studios, assessing exactly how modern has and framework trend impact game play. Draw is a gambling establishment and slots expert having a powerful attract for the gameplay auto mechanics and gratification analysis. The latest Megareels expansion element and you may tumble auto technician create mode exactly as designed, and members particularly trying to Megaways actions, one another have would wonderfully.<\/p>\n","protected":false},"excerpt":{"rendered":"

Admirers away from marine-styled slots would like Larger Bass Bonanza, which offers the chance to reel in the big wins with its enjoyable angling motif. Each other games render an enjoyable and you can light-hearted gaming experience that is ideal for users of all sorts. If you’d prefer harbors with\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-99792","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/99792","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=99792"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/99792\/revisions"}],"predecessor-version":[{"id":99793,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/99792\/revisions\/99793"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=99792"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=99792"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=99792"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}