/* 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":41019,"date":"2026-05-20T10:25:41","date_gmt":"2026-05-20T10:25:41","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=41019"},"modified":"2026-05-20T10:25:42","modified_gmt":"2026-05-20T10:25:42","slug":"legendz-gambling-enterprise-comment-2026","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/legendz-gambling-enterprise-comment-2026\/","title":{"rendered":"Legendz Gambling enterprise Comment 2026"},"content":{"rendered":"

Within this Legendz gambling enterprise remark, I\u2019ll talk about the many video game, the initial extra program, the games and you can sports betting attributes and just how Legendz rises in terms of functionality and member feel. Legendz is one of the most widely used sweepstakes brands hitting the newest business, giving a new deal with social gambling that have possibilities to get actual rewards. The brand new 100 percent free Spins Added bonus leads to once you land 3 extra icons, awarding a collection of free revolves the spot where the multiple-value Da Vinci icons can seem more often. The fresh new Free Revolves Extra are triggered by step 3 or even more wonderful egg scatters, awarding some free revolves in which fox wilds gather eggs opinions getting immediate prizes. It\u2019s a simple options, however the loaded wilds give the foot video game some genuine pickup once they result in the best ranking.<\/p>\n

To own British members who want crash playing not on GamStop which have verifiable equity, ZizoBet\u2019s provably reasonable settings is considered the most transparent on this subject listing. Practical Gamble Real time\u2019s PowerUP Roulette and you can Mega Sic Bo \u2014 unavailable at the DonBet\u2019s exclusive Progression options \u2014 work at together with the full Progression game inform you package. New 200 100 percent free spins on the basic being qualified put ‘s the joint-large greet totally free twist allowance on this low-GamStop record, paired just by the sites offering equivalent formations. Their most other popular video game tend to be Dr. Lovemore ports, that’s a highly cheeky, yet fun-filled video game, that have plenty to seem toward; additionally the Silver Rally, that is bound to make it easier to experience enormous rewards. Per night Aside is additionally one of the better and the extremely fun video game to try out with memorable layouts, expert local casino incentives, and you will a great deal to seem toward. This game was launched when you look at the November, 2006 that’s a popular certainly position members in the gambling enterprises international, like the casinos on the internet that undertake Bitcoin searched right here.<\/p>\n

Straight wins treat coordinating icons and you can remove new ones to the lay, when you’re haphazard duck has can also be lead to at any time, adding wilds, multipliers, or cleaning low-really worth symbols. You are able to access individuals promotions, as well as free spins making use of your portable otherwise pill. Like many searched new ports internet in great britain, PubCasino brings a cellular-amicable program suitable for Ios and android products. Highbet Local casino requires the excitement of brand new slot launches to a different peak through providing 60 100 percent free revolves each week into Online game out-of the brand new Few days. Simultaneously, that it platform possess one of many fastest signal-right up techniques among new position websites, allowing you to start playing in a matter of times.<\/p>\n

When several pigs trigger meanwhile, their effects overlap, carrying out extra rounds one create rapidly toward larger win setups. And, there\u2019s a no cost revolves added bonus caused when you homes about three otherwise a lot more totally free spin signs. The fresh new pacing try smooth, the new graphic theme is warm and you may celebratory, therefore the incentive leads to end up being within reach. IT\u2019s easy and sleek, yes, but it\u2019s plus electric within its gameplay and you may sound framework.<\/p>\n

Studying the entire variety of choices away from Playtech, there are lots of games that excel certainly one of online slots to have real cash. Playtech is also one https:\/\/stoiximan-casino.com.gr\/<\/a> of the greatest progressive slot online game designers on the on-line casino business. The fresh insane and you can spread out icons are very common when you look at the Playtech game and most games even are free revolves and you may second monitor bonus has actually.<\/p>\n

I along with desired position game that have pretty good RTPs on the web, funny incentive auto mechanics, and you may a large started to all over both homes-based an internet-based networks. Navigating the brand new judge landscape away from to relax and play online slots in the usa will be advanced, however it\u2019s very important to a safe and fun experience. About quick attractiveness of antique harbors on the immersive narratives from movies ports therefore the jackpot potential out of progressive ports, there\u2019s a game title per pro\u2019s preference. Such four harbors show the present day height out-of RTG’s position invention, combining shown analytical patterns which have engaging layouts and incentive enjoys that continue members going back. The new game’s typical volatility will make it ideal for longer gamble lessons, providing steady victories whenever you are building towards large winnings for the signature Battle Feature.<\/p>\n

NetEnt\u2019s Divine Fortune generally possess a permanent place at the top of numerous an internet gambling establishment\u2019s slots webpage. Whenever wonderful signs align toward totally free revolves added bonus, it feels like an old position sense has made its method on line. Brand new position pulls on the preferred Far eastern templates and you will leans to your the short, pleasant rate. Utilize this checklist to obtain another type of favorite, review an old standby, otherwise given that a jumping-away from point to explore the world of harbors further. We\u2019ve assembled a summary of 50 best online slots games you could enjoy inside claims which have court web based casinos, instance Michigan, Nj, otherwise Pennsylvania. You will find many genuine-currency ports offered at All of us online casinos.<\/p>\n

Couple that with retriggerable free spins and you can golden symbols that up this new win possible, plus it\u2019s no wonder this package nonetheless arises on top. The fresh Fu Bat bonus is a simple discover-and-win style where complimentary about three coins produces among four fixed jackpots. You\u2019ll come across ideal-level slots in this way during the a number of the systems listed on all of our on-line casino real money page. There\u2019s no cheating password otherwise secured method, however, there are items that produces the training smarter \u2014 and you may more enjoyable.<\/p>\n

Not only is the whole system encrypted with condition-of-the-art 128-bit SSL tech, nevertheless\u2019s along with protected against virus and studies leakage. Below are a few just how different systems deliver in most of those issues. Usage of of several themes \u2013 From antique fresh fruit hosts so you’re able to labeled movies ports and you may jackpots Ports with easy laws are more comfortable for novices to enjoy versus feeling overwhelmed. Such programs promote position-design games having fun with virtual currencies, which have Sweeps Gold coins redeemable getting honours where allowed. FanDuel stands out because of its ongoing slot perks, and additionally every single day free revolves, leaderboard advertising, and you can normal also provides fastened straight to reel gamble.<\/p>\n

Legendz Sweepstakes Local casino is able to remain professionals engaged having a beneficial couples incentives and you may campaigns. You\u2019lso are prepared to get new product reviews, qualified advice, and exclusive now offers to the inbox. The 100 percent free Revolves Extra is actually triggered by 3 scatters, and you may throughout free spins, piled wilds arrive more frequently to assist link larger victories. Obtaining 6 or more Orb signs causes a grip-and-gather added bonus where orbs protect set and you may respins keep up to no the orbs property.<\/p>\n","protected":false},"excerpt":{"rendered":"

Within this Legendz gambling enterprise remark, I\u2019ll talk about the many video game, the initial extra program, the games and you can sports betting attributes and just how Legendz rises in terms of functionality and member feel. Legendz is one of the most widely used sweepstakes brands hitting the newest\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-41019","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/41019","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=41019"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/41019\/revisions"}],"predecessor-version":[{"id":41020,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/41019\/revisions\/41020"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=41019"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=41019"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=41019"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}