/* 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":237005,"date":"2026-06-23T11:55:12","date_gmt":"2026-06-23T11:55:12","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=237005"},"modified":"2026-06-23T11:55:12","modified_gmt":"2026-06-23T11:55:12","slug":"cliched-however-hey-these-are-the-really-prized-images-spot-in-the-egypt-oraz-concept-obtained-held-for-zas-few-millennia","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/cliched-however-hey-these-are-the-really-prized-images-spot-in-the-egypt-oraz-concept-obtained-held-for-zas-few-millennia\/","title":{"rendered":"Cliched, however, hey, these are the really prized images spot in the Egypt – oraz concept obtained held for za\u015b few millennia"},"content":{"rendered":"

Cleopatra 2<\/h2>\n

Next time you find yourself pan wasteland, grab some mud and you may carefully loosen up your own grip so you’re able owo discharge the newest cereals. For individuals who make sense each one of these floating of regarding the breeze, you’d developed a figure rather close to the amount off Egyptian styled harbors on the market. Ok, natomiast slight exaggeration, obuwie really there are numerous, tuz well tuz in between your dozens that will be create from year owe year, several do odwiedzenia something to make them be noticed. \u00d3w kredyty such try Cleopatra, oraz secure-situated antique owo possess IGT that afterwards generated oraz successful m\u0105\u017c the globalna sie\u0107 crossover into the 2012, and owe get greatly prominent. This may have chosen jest to take nearly natomiast your facility adopted up with alot more Egyptian queen inspired action thanks jest to natomiast follow up entitled Cleopatra 3.<\/p>\n

The brand new further you progress into Cleopatra dw\u00f3ch, the more change pa\u0144stwa bare, although overall spirits provides remained apparently oraz comparable. Aesthetically, there are natomiast number of subdued enhancements; the five-reel, 20-payline grid seems quicker such as for example Guide away from Ra mistrz compared owe brand spanking new, and IGT features swapped the latest columns of your own record design jest to possess a classic view of new Giza Pyramids. Brand new acid jazz sound recording of the new is gone, substituted for some thing nearly given that low-old-fashioned. You will find suits out of Ancient Egypt happening, the chanting and give guitar blend all types of cultures within too. Hold off before the added nadprogram sieciowy game produces and speed broadening owe the all the 100 % free spin is virtually hypnotic trance-causing towards the end \ufffd especially if you hit natomiast few retriggers.<\/p>\n

Destined jest to fill real gambling enterprises around the world, Cleopatra dw\u00f3ch is also available pan one unit off desktops to help you phones, offering https:\/\/mrpacho-casino-pl.com\/bonus-bez-depozytu\/<\/a> bet out of 20 p\/c for every spin. Including the past you to, Cleopatra dw\u00f3ch is pretty an explosive sojourn across the sands, generating za\u015b complicated RTP set of % in order owo %. While the w istocie more player type in or technique is expected apart from strike the play key, it is not clarified mistrz owo why the brand new RTP may differ such, and ambiguity is natomiast bit out of oraz turn-off.<\/p>\n

People whom preferred the brand new easy characteristics of one’s basic you jest to will appreciate the reality that there’s nothing advanced regarding Cleopatra 2 often. Victories przeb\u00f3j when about three or even more from oraz kind fall into line m\u0119\u017cczyzna the natomiast beneficial payline about legs game and you can throughout caused free revolves. IGT possess swapped new signs, not, the latest premium about, in which Bastet, Horus, and Anubis make up the three advanced symbols well worth tuz much mistrz twenty-five minutes new wager for five from a sort. Pan the reasonable front side, a comparable royal signs are available, with the exception of the brand new nine, this package might have been dropped.<\/p>\n

The brand new game’s icon icon occurs when things pocz\u0105tek getting actual, mistrz four of them owo the natomiast beneficial payline will get you natomiast beneficial trzech,500x payout. This Cleo II icon is also nuts, obtaining everywhere to exchange one normal shell out znak. When regularly complete an earn, Cleo II wilds in addition to double the well worth it can normally have become.<\/p>\n

Cleopatra dw\u00f3ch: Position Has actually<\/h2>\n

M\u0105\u017c heart regarding ease, really the only almost every other ability from inside the Cleopatra 2 is actually natomiast spherical regarding totally free revolves. Owo unlock the bounty, you will want at the very least 2 Sphinx scatters in view owe send you owo the benefit round. Informatyk\u0105 initiate \u017ceby shopping for one of twenty three boxes jest to choose how of several 100 % free revolves you find yourself having. The greater number of scatters triggered the brand new ability, the larger the number would be. Therefore, twenty three, 4, or pi\u0119\u0107 would award 5-kolejny, 8-osiemnastego, or nasz-dwadzie\u015bcia, and additionally natomiast payment from 3x, 10x, or 2,600x the brand new wager, correspondingly.<\/p>\n

During the totally free spins, the value of spread out wins reduces, in their lay, advanced signs today payout for oraz couple of regarding oraz type combinations. What makes stu % free revolves get noticed is that natomiast win multiplier is also lead, starting at x1. M\u0119\u017cczyzna each pursuing the twist, this new victory multiplier increases aby the +jeden \ufffd whether or not za\u015b victory happened or not. setka % free revolves can be retriggered doing fifty, therefore the multiplier grows even into retriggered 100 % free revolves. It indicates, at the most, an x50 multiplier might possibly be waiting would be jest to players get jest to the stop metali.<\/p>\n

Cleopatra trzech: Position Verdict<\/h2>\n

Tuz most know, we don’t opinion an abundance of IGT games right here, yet , Cleopatra 2 jumped up due jest to the pedigree and you can dominance of your fresh position. This can undoubtedly end up being the thinking of numerous members mistrz well. Cleopatra 2 could be fairly average once the a \u00f3w lampy-of games, though informatyk\u0105 does boast big victory amounts. Although not, the first is massively popular, thus discover destined owe become a hefty crowd regarding interested users exactly who you will getting attracted to fire up the sequel, if nothing else, just to select what exactly is the fresh new. Thereon side, maybe not much, really, that’s probably oraz good thing. It could pa\u0144stwa basically tantamount jest to the slots particular sacrilege if the IGT had decided owo render oraz vintage vintage an uber-modern change.<\/p>\n

Luckily for us enthusiasts, it have not, however, there are new stuff and watch in the natomiast beneficial internetowego game with za\u015b beneficial palpable actual getting. The biggest improvement is that Cleopatra pa\u0144stwa oraz higher stakes wideo game loading pi\u0119\u0107 times as much prospective as oraz key part one. Having a progressive multiplier certain jest to raise pan every twist try oraz vibrant offer. Informatyk\u0105 has been over just before, regardless of if not achieving the heights out of fifty,000x the newest wager for sale in Cleopatra dw\u00f3ch. Tuz stated, the songs into the free revolves is totally crazy, and when in addition jest to natomiast significant struck, informatyk\u0105 is an unusually thrilling second.<\/p>\n

Combining huge possible which have familiar looks and feels is almost an excellent guaranteed jad\u0142ospisu for achievement. IGT would be banking towards nostalgia owe get in some jego back punters and you will a great 50k profit number owe greatly help anybody else overlook the perplexing RTP value.<\/p>\n","protected":false},"excerpt":{"rendered":"

Cleopatra 2 Next time you find yourself pan wasteland, grab some mud and you may carefully loosen up your own grip so you’re able owo discharge the newest cereals. For individuals who make sense each one of these floating of regarding the breeze, you’d developed a figure rather close to\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-237005","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/237005","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=237005"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/237005\/revisions"}],"predecessor-version":[{"id":237006,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/237005\/revisions\/237006"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=237005"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=237005"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=237005"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}