/* 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":124598,"date":"2026-05-25T13:24:56","date_gmt":"2026-05-25T13:24:56","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=124598"},"modified":"2026-05-25T13:24:57","modified_gmt":"2026-05-25T13:24:57","slug":"yet-you-should-know-the-principles-of-gambling-enterprise-to-check-your-luck-properly","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/yet-you-should-know-the-principles-of-gambling-enterprise-to-check-your-luck-properly\/","title":{"rendered":"Yet, you should know the principles of gambling enterprise to check your luck properly"},"content":{"rendered":"

MARIE, To your \ufffd There are 2 months left to help you claim an effective MAXMILLIONS award worthy of $1 million regarding the Friday, Lottery Max mark. MARIE, To the \ufffd There are 2 months leftover so you’re able to allege a keen ENCORE honor value $ten,000 in the Monday, Lottery Maximum mark. MARIE, On the \ufffd There have been two months kept to allege good LOTTARIO prize value $359, in the Monday, LOTTARIO mark. MARIE, On the \ufffd There are 2 months left so you can allege a $10,000 award regarding the Monday, Lottery 6\/49 draw.<\/p>\n

PlayOLG Casino has its own appointed mobile local casino application www.vegascasinoonline.uk.com<\/a> that is complete off pleasing provides, as well as accessibility top internet casino ports, dining table games and more! And lookup means and category tabs, you will observe strain to own templates, possess, and company. The state OLG software contains the extremely smooth solution to play, that have vehicle-sign on, individualized announcements, and you will safer cashier consolidation. A smooth Olg Signin leaves you you to definitely simply click away from superior slots, tailored bonuses, and the provides you like-cascades, increasing signs, respins, and. Unlock a world of advanced slots, free spins, and you will personal promotions having an easy, secure Olg Signin.<\/p>\n

When you enroll in the brand new OLG gambling enterprise, try to follow some elementary rules. Simply discover the nearby area for the their formal website to make sure you\ufffdre good Canadian resident from a legal ages.<\/p>\n

Most of the real money bets and you will wins was paid out in the actual cash, that will following feel taken to the confirmed checking account. Ontario online casinos you should never provide societal bonuses exactly the same way because Remainder of Canada gambling enterprises. OLG operates lawfully within this Ontario’s regulated iGaming design that’s simply offered to members actually located in Ontario old 19 and you will more mature. Online game catalog growth also offers improved somewhat during the 2025, jackpot assortment are competitive, and you can financial laws and regulations are genuinely affiliate-friendly.<\/p>\n

For individuals who miss the promotion action, the latest revolves doesn’t show up<\/h2>\n

To ensure that you simply invest everything you render, use bucks and then leave the new cards home. According to the multiyear deal, OLG will get a proper NHL partner to have sporting events … OLG now gets a formal MLB mate getting sports betting due to its PROLINE+ … TORONTO, To the \ufffd Ontario Lottery and Playing Company (OLG) while the National Basketball Organization (NBA) are honoring the brand new 2022 NBA Draft exhibited by the County Ranch from the announcing one OLG’s PROLINE sportsbook has grown to become a proper mate away from the latest NBA within the Ontario. Claimants with honours more $one,000 is now able to supply …<\/p>\n

MARIE, On the \ufffd There are 2 days kept in order to allege good $100,000 ENCORE honor on the Wednesday, PICK-twenty-three Night draw. MARIE, On the \ufffd There have been two weeks kept so you can allege a lottery Maximum next prize value $144,943 in the Tuesday, Lotto Maximum mark. MARIE, For the \ufffd There are two main weeks leftover so you can claim good $5 million prize on the Friday, Lotto six\/forty-two draw. MARIE, Into the \ufffd There are two main months kept so you can claim good $twenty five,000 prize regarding the Friday, Lottery 6\/forty two Very Mark. MARIE, To the \ufffd There are 2 months leftover to help you claim an ONTARIO forty-two next honor worth $fifty,000 on Wednesday, mark.<\/p>\n

The fresh reception reveals hence video game meet the requirements, while the totally free revolves initiate instantly after you discover certainly the new appeared games. Your cashback should be gambled after which can be valid to possess seven days once it is given.<\/p>\n

We’ll talk about the greatest features, available games, or other information on the OLG On-line casino review. OLG Gambling establishment try alive and you can legal within the Ontario, giving new registered users to join up and start to experience at the merely casino based of the province’s certified gaming payment. Gambling enterprise.guru is another supply of information regarding online casinos and gambling games, maybe not controlled by one betting driver. An initiative i introduced to the purpose to help make a worldwide self-difference program, that will allow it to be vulnerable members so you’re able to stop its access to the online gambling possibilities. The protection List ‘s the main metric we used to describe the newest sincerity, equity, and you may top-notch all web based casinos within our databases. We rarely if discovered a deposit suits provide, there are not any 100 % free revolves otherwise something offered always.<\/p>\n

Harbors accept bucks or passes having cash value titled TITO, or \ufffdviolation within the, solution aside\ufffd<\/h2>\n

Then, obtain it, sign in, and turn into on the biometrics having quick access. Listed below are some the authoritative application on the internet Play for Android or the latest Application Shop to own iPhones and you can iPads. You could work quickly and without having to imagine which have OLG advertisements since the i keep the vocabulary small and you will clear. As the playthrough is over, money is released since the bucks that may be withdrawn. After you go into a password that gives your free spins, view exactly how much per spin deserves, what slot it\ufffds, as well as how far you could potentially win as a whole. Two to four moments 30 days, we upload targeted offers that have money bonuses, totally free spins packages, or admission passes really worth $ten so you’re able to $fifty.<\/p>\n

You can discover besides much more about you to position, and also about how precisely these types of application work with general. You might understand practical, but when money and you will fun are at stake, as to why chance it? We can continue, although point is actually there is lots to know! You don’t have to wager a real income, however you continue to have a chance to discover more about they.<\/p>\n

Whether you desire higher volatility or simple, regular lessons, you can find an enthusiastic Olg position that strikes your own sweet put. Olg delivers an effective curated mix of vintage reels and show-rich videos headings, all of the primed to possess punctual gameplay, stacked has, and you may huge-win possible. Check always full terms, qualified game, and you can betting laws and regulations before stating. Olg Alive Gambling establishment captures the latest higher-energy end up being out of a bona fide betting floor with elite people, crisp High definition channels, and you can quick desk availableness. If you like rotating reels and you will chasing after thrilling has, Olg Bonuses are your shortcut in order to more playtime and you may large prospective output.<\/p>\n

OLG was a keen Ontario regulators run department that delivers one another lottery and you can gaming enjoyment to people. For the , the participants can also be find out about the fresh new lotteries offered. It is a classic place to go for gambling establishment fans, delivering numerous options to bettors and a thrilling gambling experience. The brand new picture are obvious and you may engaging, making the playing feel more immersive. Plus the colour pallette, OLG’s program comes with the highest-quality picture you to definitely enhance the total aesthetic.<\/p>\n","protected":false},"excerpt":{"rendered":"

MARIE, To your \ufffd There are 2 months left to help you claim an effective MAXMILLIONS award worthy of $1 million regarding the Friday, Lottery Max mark. MARIE, To the \ufffd There are 2 months leftover so you’re able to allege a keen ENCORE honor value $ten,000 in the Monday,\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-124598","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/124598","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=124598"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/124598\/revisions"}],"predecessor-version":[{"id":124600,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/124598\/revisions\/124600"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=124598"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=124598"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=124598"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}