/* 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":120654,"date":"2026-05-25T13:12:56","date_gmt":"2026-05-25T13:12:56","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=120654"},"modified":"2026-05-25T13:12:56","modified_gmt":"2026-05-25T13:12:56","slug":"yet-you-have-to-know-the-guidelines-of-casino-to-test-your-luck-properly","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/yet-you-have-to-know-the-guidelines-of-casino-to-test-your-luck-properly\/","title":{"rendered":"Yet ,, you have to know the guidelines of casino to test your luck properly"},"content":{"rendered":"

MARIE, Into the \ufffd There’s two weeks kept to claim an excellent MAXMILLIONS award worthy of $1 million from the Tuesday, Lottery Maximum draw. MARIE, For the \ufffd There are two main days remaining to claim an ENCORE prize worthy of $10,000 regarding Friday, Lotto Maximum mark. MARIE, Towards \ufffd There are two main days kept in order to claim an excellent LOTTARIO award worth $359, in the Friday, LOTTARIO draw. MARIE, Towards \ufffd There are two days remaining in order to allege a $10,000 honor regarding Saturday, Lotto six\/forty-two mark.<\/p>\n

PlayOLG Casino has its designated mobile local casino application that is full regarding pleasing provides, and entry to leading on-line casino harbors, desk online game and much more! While the lookup function and you can category tabs, you will see filters to have themes, provides, and you can company. The official OLG software provides the really streamlined way to enjoy, which have car-log in, custom announcements, and you may secure cashier consolidation. A streamlined Olg Signin throws you that simply click away from superior harbors, customized incentives, while the features you like-cascades, growing symbols, respins, plus. Discover a full world of advanced ports, free revolves, and you may exclusive promotions with a quick, safe Olg Signin.<\/p>\n

Once you become a member of the newest OLG gambling enterprise, you will need to realize some basic laws and regulations. Merely get the nearest area to your its certified web site while making yes you\ufffdre a Canadian resident away from an appropriate age.<\/p>\n

Most of the real money wagers and wins are given out inside the actual bucks, that may then become withdrawn into the verified checking account. Ontario online casinos never provide personal bonuses the same exact way because the Rest of Canada casinos. OLG operates legitimately in this Ontario’s controlled iGaming framework that is simply offered to users individually based in Ontario aged 19 and you can more mature. Video game list development also offers enhanced rather for the 2025, jackpot variety is actually aggressive, and financial guidelines is actually undoubtedly representative-amicable.<\/p>\n

For many who miss out the discount action, the fresh new spins cannot arrive<\/h2>\n

To ensure that you only purchase that which you render, have fun with bucks and then leave the latest cards at home. According to the WildRobin<\/a> multiyear offer, OLG becomes a proper NHL spouse to possess sporting events … OLG now becomes an official MLB spouse for wagering because of its PROLINE+ … TORONTO, Into the \ufffd Ontario Lotto and you can Playing Organization (OLG) as well as the Federal Basketball Relationship (NBA) is actually celebrating the new 2022 NBA Draft demonstrated by County Farm because of the announcing one to OLG’s PROLINE sportsbook has become a formal mate of the brand new NBA in the Ontario. Claimants having honours over $one,000 can availability …<\/p>\n

MARIE, Into the \ufffd There are 2 months kept so you’re able to claim a great $100,000 ENCORE honor regarding the Wednesday, PICK-twenty three Evening draw. MARIE, For the \ufffd There are 2 months kept in order to claim a lottery Maximum next award worthy of $144,943 regarding the Monday, Lottery Maximum draw. MARIE, To your \ufffd There’s two weeks left in order to claim a great $5 mil honor on Monday, Lottery six\/forty two draw. MARIE, To the \ufffd There are two main weeks leftover so you’re able to allege a good $twenty-five,000 prize in the Tuesday, Lottery six\/49 Super Mark. MARIE, On the \ufffd There are 2 months left in order to claim an enthusiastic ONTARIO forty-two 2nd award worthy of $50,000 on Wednesday, draw.<\/p>\n

The brand new lobby reveals which games are eligible, plus the free revolves initiate instantly after you discover certainly the latest appeared video game. Your own cashback should be gambled just after and is legitimate to have seven weeks immediately after it\ufffds granted.<\/p>\n

We shall talk about the better enjoys, offered game, and other information from the OLG On-line casino feedback. OLG Gambling establishment try alive and you will judge inside the Ontario, giving new users to sign up and commence to try out from the only casino dependent from the province’s certified betting commission. Gambling enterprise.master try a separate way to obtain factual statements about online casinos and you will casino games, maybe not controlled by one gaming operator. A step i released for the purpose to help make a worldwide self-difference program, which will allow it to be insecure professionals to block its usage of all the gambling on line opportunities. The safety Index is the main metric we used to determine the latest honesty, equity, and you may top-notch all of the online casinos inside our databases. I barely when found in initial deposit matches render, there are no 100 % free revolves or things considering always.<\/p>\n

Slots undertake bucks or seats having dollars well worth entitled TITO, or \ufffdsolution inside, pass away\ufffd<\/h2>\n

Then, obtain it, register, and turn into to the biometrics to own quick access. Here are a few our very own formal software on the internet Wager Android os or the newest Application Store getting iPhones and you will iPads. You can work quickly and without the need to suppose having OLG advertising while the we keep the code short and clear. While the playthrough is more than, financing are create because the cash which are taken. When you go into a code that provides you 100 % free revolves, view how much for every single spin is worth, what slot it\ufffds, and exactly how much you can profit in total. 2 to 4 moments thirty day period, we publish directed has the benefit of that have currency bonuses, free revolves bundles, or entry seats value $10 to help you $50.<\/p>\n

You can discover not simply more info on one slot, but also about how exactly such software work with standard. You might know hands on, however when currency and fun are at share, why exposure they? We could continue, nevertheless part was there’s a lot understand! You don’t have to choice real money, you continue to have a chance to find out more about it.<\/p>\n

If you desire highest volatility otherwise simple, steady training, you will find a keen Olg position you to definitely attacks your own nice destination. Olg provides a curated blend of classic reels and have-steeped films headings, all the primed to have punctual game play, loaded provides, and you can larger-earn prospective. Check always full words, qualified online game, and you will wagering guidelines before saying. Olg Live Gambling enterprise catches the fresh new highest-energy end up being from a real playing floors that have top-notch traders, clean Hd avenues, and you will quick dining table availability. If you prefer rotating reels and you may chasing after fascinating features, Olg Incentives is actually your own shortcut to more playtime and you will larger possible returns.<\/p>\n

OLG is a keen Ontario authorities manage agencies that provides both lottery and betting recreation to prospects. Into the , the participants is also realize about the newest lotteries provided. It\ufffds an old place to go for gambling establishment fans, bringing many options to bettors and you may an exciting gambling feel. The brand new picture are obvious and you may interesting, putting some gambling feel a lot more immersive. In addition to the colour pallette, OLG’s program also features higher-top quality picture one improve the full aesthetic.<\/p>\n","protected":false},"excerpt":{"rendered":"

MARIE, Into the \ufffd There’s two weeks kept to claim an excellent MAXMILLIONS award worthy of $1 million from the Tuesday, Lottery Maximum draw. MARIE, For the \ufffd There are two main days remaining to claim an ENCORE prize worthy of $10,000 regarding Friday, Lotto Maximum mark. MARIE, Towards \ufffd\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-120654","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/120654","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=120654"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/120654\/revisions"}],"predecessor-version":[{"id":120657,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/120654\/revisions\/120657"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=120654"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=120654"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=120654"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}