/* 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":105495,"date":"2026-05-25T11:44:16","date_gmt":"2026-05-25T11:44:16","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=105495"},"modified":"2026-05-25T11:44:16","modified_gmt":"2026-05-25T11:44:16","slug":"yet-you-have-to-know-the-guidelines-of-gambling-enterprise-to-check-on-the-chance-securely","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/yet-you-have-to-know-the-guidelines-of-gambling-enterprise-to-check-on-the-chance-securely\/","title":{"rendered":"Yet, you have to know the guidelines of gambling enterprise to check on the chance securely"},"content":{"rendered":"

MARIE, To the \ufffd There are two days left so you’re able to claim a great MAXMILLIONS award well worth $one million in the Monday, Lottery Max draw. MARIE, Towards \ufffd There are two main weeks left so you can claim an enthusiastic ENCORE award worthy of $10,000 on Friday, Lottery Max mark. MARIE, Towards \ufffd There have been two weeks leftover to claim a good LOTTARIO honor really worth $359, on Friday, LOTTARIO mark. MARIE, To the \ufffd There are 2 weeks leftover so you can claim an excellent $ten,000 award in the Tuesday, Lotto 6\/44 mark.<\/p>\n

PlayOLG Local casino has its appointed cellular local casino app that is complete away from pleasing has, plus use of leading on-line casino harbors, table games and a lot more! As well as the research means and you may classification tabs, you will see filter systems for layouts, have, and you can business. The official OLG application contains the really streamlined treatment for play, that have auto-log in, customized announcements, and you will safe cashier combination. A sleek Olg Signin places your one to click off advanced ports, tailored incentives, and provides you adore-cascades, expanding signs, respins, and. Unlock a whole lot of superior harbors, totally free revolves, and you will exclusive campaigns that have an easy, safe Olg Signin.<\/p>\n

When you become a member of the brand new OLG casino, make an effort to follow some elementary rules. Just find bet uk casino<\/a> the nearby place for the their authoritative web site and make yes you\ufffdre an effective Canadian citizen off an appropriate decades.<\/p>\n

Most of the real money wagers and you may gains was paid in the genuine dollars, that can next getting taken into the verified checking account. Ontario online casinos never promote societal bonuses the same exact way because Rest of Canada casinos. OLG operates legally contained in this Ontario’s managed iGaming build that is merely accessible to people myself situated in Ontario aged 19 and old. Games list progress has increased rather inside 2025, jackpot variety try aggressive, and you will banking laws are truly affiliate-amicable.<\/p>\n

For people who miss the discount action, the brand new spins does not arrive<\/h2>\n

To ensure that you simply purchase what you render, explore dollars and leave the brand new cards home. In multiyear deal, OLG gets a proper NHL companion to possess activities … OLG now becomes an official MLB partner having wagering as a consequence of the PROLINE+ … TORONTO, Towards \ufffd Ontario Lotto and you can Gaming Firm (OLG) plus the Federal Baseball Connection (NBA) are remembering the brand new 2022 NBA Draft displayed of the State Farm from the proclaiming that OLG’s PROLINE sportsbook is now an official spouse away from the fresh NBA during the Ontario. Claimants that have prizes over $one,000 may now availability …<\/p>\n

MARIE, On the \ufffd There are 2 days kept so you’re able to claim a $100,000 ENCORE award in the Wednesday, PICK-3 Evening mark. MARIE, Into the \ufffd There are two months left in order to allege a lottery Max 2nd honor well worth $144,943 from the Saturday, Lotto Maximum draw. MARIE, To your \ufffd There’s two months left in order to claim an effective $5 mil award on the Friday, Lottery six\/49 draw. MARIE, To the \ufffd There’s two days remaining to help you allege a good $twenty-five,000 honor regarding the Tuesday, Lotto 6\/44 Extremely Draw. MARIE, For the \ufffd There are two days remaining to help you claim an enthusiastic ONTARIO 44 second award really worth $50,000 regarding Wednesday, mark.<\/p>\n

The new lobby reveals which video game meet the criteria, and also the free spins start instantly after you open among the new checked video game. Your own cashback should be wagered immediately following which is valid getting seven weeks just after it\ufffds awarded.<\/p>\n

We are going to talk about the greatest has, readily available video game, or any other important info on the OLG Internet casino review. OLG Casino is real time and you can court inside the Ontario, giving new registered users to register and begin playing in the only casino based of the province’s official gambling commission. Gambling establishment.guru was a different supply of facts about online casinos and online casino games, not subject to people gaming agent. An initiative i circulated for the mission in order to make a major international self-exception system, that’ll make it vulnerable participants to help you cut-off the entry to the gambling on line solutions. The safety List ‘s the main metric i use to define the newest honesty, equity, and top-notch all the casinos on the internet within databases. I scarcely if discover a deposit match bring, there are not any totally free revolves or one thing considering always.<\/p>\n

Slots undertake bucks or passes with cash value titled TITO, otherwise \ufffdviolation inside the, violation out\ufffd<\/h2>\n

Following, obtain they, check in, and start to become to the biometrics to possess immediate access. Below are a few the certified application on the internet Play for Android os otherwise the new Application Shop for iPhones and you will iPads. You can work easily and you can without the need to imagine having OLG offers because the we keep the vocabulary brief and clear. Because playthrough is over, financing was create while the cash that may be taken. When you enter into a code providing you with your 100 % free spins, have a look at exactly how much each twist may be worth, what slot it is, and how much you can win overall. 2 to 4 minutes 1 month, we upload directed offers that have money incentives, free revolves packages, otherwise admission seats value $ten so you can $50.<\/p>\n

You’ll be able to know besides much more about you to position, plus about how precisely these types of software work in general. You could potentially see hands on, however when currency and you can enjoyable is located at risk, as to why risk it? We could go on, nevertheless the area try there is lots understand! You don’t have to bet real cash, however you have an opportunity to learn more about they.<\/p>\n

If or not you desire higher volatility otherwise simple, constant instructions, you’ll find an enthusiastic Olg slot you to definitely attacks the sweet put. Olg provides an effective curated combination of classic reels and show-steeped video clips titles, all the primed to have timely game play, stacked have, and you may large-profit possible. Check always complete conditions, qualified online game, and you may wagering laws and regulations in advance of claiming. Olg Live Gambling establishment grabs the newest high-opportunity feel away from a genuine playing flooring with top-notch dealers, sharp High definition channels, and you can quick table supply. If you like spinning reels and chasing exciting enjoys, Olg Incentives are your shortcut to even more playtime and you may big prospective production.<\/p>\n

OLG try an Ontario bodies run company that gives each other lotto and gambling activity to people. To your , the players normally find out about the fresh new lotteries considering. It is a vintage place to go for gambling establishment followers, taking numerous choices to bettors and you may a fantastic gaming feel. The new picture are clear and interesting, making the gaming experience far more immersive. And the colour pallette, OLG’s platform also features high-top quality image one enhance the overall aesthetic.<\/p>\n","protected":false},"excerpt":{"rendered":"

MARIE, To the \ufffd There are two days left so you’re able to claim a great MAXMILLIONS award well worth $one million in the Monday, Lottery Max draw. MARIE, Towards \ufffd There are two main weeks left so you can claim an enthusiastic ENCORE award worthy of $10,000 on Friday,\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-105495","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/105495","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=105495"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/105495\/revisions"}],"predecessor-version":[{"id":105498,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/105495\/revisions\/105498"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=105495"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=105495"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=105495"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}