/* 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":95252,"date":"2026-05-23T23:53:53","date_gmt":"2026-05-23T23:53:53","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=95252"},"modified":"2026-05-23T23:53:55","modified_gmt":"2026-05-23T23:53:55","slug":"cleopatra-together-with-video-slot-gamble-this-game-100percent-free-online","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/cleopatra-together-with-video-slot-gamble-this-game-100percent-free-online\/","title":{"rendered":"Cleopatra Together with Video slot Gamble this game 100percent free Online"},"content":{"rendered":"

These are generally casino poker, modern jackpots, and much more. However they produce harbors and you will online casino games getting house-based and online casinos. The fresh new gameplay is special in terms of mediocre RTP however, stand on account of large volatility.<\/p>\n

Cleopatra\u2019s wilds solution to some other feet signs regarding the clips online game, apart from scatters. The web gambling market is extremely aggressive \u2014 you will never know whenever a choice, exciting totally free ports Cleopatra extra will come right up. What can give you a better sense of just how their gameplay always unfold ‘s the online game\u2019s volatility. If the a player decides to have fun with the Cleopatra 2 on the internet position 100percent free.<\/p>\n

Which is other Egyptian themed slot machine off IGT you to definitely\u2019s likely to capture brand new brains of a lot slot some one. Then you assemble all currency viewpoints in addition to people jackpots, to your Huge honor well worth around 40,000 gold coins. Other features was incentive game Chicken Royal slot<\/a> brought about regarding the delivering step 3+ sphinx scatters, awarding 15 totally free spins having a 3x multiplier. The big difference between the conventional slots and that games are you to definitely instead of three reels, the video game provides five reels. Using a passionate RTP near 96.7%, Wonders out of Atlantis is largely ideal for somebody transitioning away of browse presentations and free harbors in order to a genuine earnings wagering.<\/p>\n

That would provides enhanced new image of online game while the participants drench by themselves inside the a position online game that is honouring things Egyptian. IGT possess provided an Egyptian build background, possibly and additionally a desert, pyramids otherwise hot sunshine \u2013 or anything given that wonderful because the those items. Brand new anybody was claim an impressive 360% sign-right up more, probably one of the most ample offers on the market. This will make it a powerful way to understand how enjoys a tendency to 100 percent free spins is actually brought about and additionally the way the the crazy symbol affects growth. For the disadvantage, the fresh Cleopatra demonstration condition lacks the new excitement out off genuine bet, and another profits you make is also\u2019t feel cashed aside. At the same time, all the Nuts gains gets their honor doubled, so you’re able to desired increased winnings.<\/p>\n

In the event that around three or maybe more sphinxes come anywhere to the reels throughout a no cost spin, 15 100 percent free spins is set in the conclusion the benefit. One to translates into a top rate regarding return on your own profits, enabling you to score an extremely satisfying gambling feel from the avoid of your gambling concept. This video game includes a number of points that makes it an effective slot machine an easy task to enjoy and savor. There are a variety regarding web based casinos where you can appreciate this great slot video game.<\/p>\n

Here are certain additonal titles that you need to have to test except that playing Cleopatra harbors. A knowledgeable ports by the IGT try chosen considering highly popular titles offering a premier RTP, high extra has actually, and you can substantial profits. Because the its discharge, on the web headings with huge jackpots and a lot more enjoys arrive at real money online casinos, while the Cleopatra slot stays excessively common. For example websites providing local apps, plus a special Android software otherwise new iphone ios software.<\/p>\n

The straightforward entryway out-of a promotional code although you put you are going to become really worth countless extra cash. You might be happier by exactly how IGT provides combined great graphics, awesome provides and you will swift play is that you might want for the a fascinating online game. Almost every other symbols that seem towards grid throughout game play range from the carved stone, the eye of Horus and antique casino poker icons.<\/p>\n

The outdated-college look indeed facilitate for individuals who\u2019re discovering antique auto mechanics, no explosions otherwise appreciate overlays to handle. I really like you to, no sleek methods, just brush symbol direction and you will larger, ambitious winnings animations that make it an easy task to destination for people who\u2019lso are to your a sexy move or just passageway time. No chance-centered gamble function right here, in order to\u2019t risk your gains to get more credits into the demo mode.<\/p>\n

An effective ten,100 gold coins jackpot try as a result of 5 Cleopatra symbols to the a beneficial payline. Secret signs are Cleopatra because the wild, doubling profits whenever section of a winning integration. When you look at the 2018, IGT revitalized it position that have Cleopatra II, boosting picture, including the fresh icons, and you may unveiling added bonus possess.<\/p>\n

Icon designs include wonderful to play card royals, and several Egyptian styled signs. Available bells and whistles were Nuts multipliers, Gold Spins and you may free revolves. Most of the game we advice are rated and have something for all, so be sure to glance at him or her off to look for your own personal favorite.<\/p>\n

To play any one of our very own totally free Cleopatra harbors like the amazing Cleopatra position demo, just make your PlayOJO membership, discover the game within online slots games section and select the brand new Go after 100 percent free option – no deposit needed. For people who\u2019re-up to possess trying which or some of PlayOJO\u2019s 5,000 online slots, you should buy 100 percent free revolves to the a high slot after you make your first put (terms implement). Enjoy similar Cleopatra online slot however with the added extra of the possibility to victory IGT\u2019s unbelievable modern jackpot.<\/p>\n

After you gamble ports during the demonstration function inside the Canada, your play for 100 percent free, which ensures that truth be told there\u2019s no likelihood of taking a loss. Nolimit Area online game should be popular with exposure-takers exactly who appreciate trying game free of charge just before wagering. There are many different high games to pick from when it comes in order to Practical Enjoy, but a very favourites should be Gates regarding Olympus. Gonzo\u2019s Trip also offers an immersive ambiance and you can a legendary thrill build, that Slotozilla people have adored given that their discharge the in the past in 2013. NetEnt differs from other designers employing reducing-boundary graphics and you may imaginative aspects. Certainly one of Playtech\u2019s most readily useful headings is actually Ages of the brand new Gods, owing to the enjoyable totally free revolves feature.<\/p>\n

This allows bettors to explore its auto mechanics before betting real money. A good 95,02% RTP and you can low to help you average variance bring regular smaller victories having chance to possess big payouts. The main benefit might be retriggered multiple times, doing a maximum of 50 free revolves per added bonus. Retriggering new Totally free Spins Bonus honors most totally free spins equivalent to the first level of totally free spins.<\/p>\n

That position motif can be characterized by dream graphics shared that have reasonable graphics, and therefore contributes adventure. It decorative mirrors the real-money video game accurately from inside the artwork and you may have, offering an exact symbol without some body monetary risk. In just three reels and you may one payline, it captures one dated-college getting once you\u2019re also yet not giving enjoyable earnings which make most of the twist value it.<\/p>\n","protected":false},"excerpt":{"rendered":"

These are generally casino poker, modern jackpots, and much more. However they produce harbors and you will online casino games getting house-based and online casinos. The fresh new gameplay is special in terms of mediocre RTP however, stand on account of large volatility. Cleopatra\u2019s wilds solution to some other feet\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-95252","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/95252","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=95252"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/95252\/revisions"}],"predecessor-version":[{"id":95253,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/95252\/revisions\/95253"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=95252"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=95252"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=95252"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}