/* 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":100556,"date":"2026-05-25T11:25:01","date_gmt":"2026-05-25T11:25:01","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=100556"},"modified":"2026-05-25T11:25:01","modified_gmt":"2026-05-25T11:25:01","slug":"yet-you-need-to-know-the-rules-of-your-gambling-establishment-to-evaluate-the-chance-safely","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/yet-you-need-to-know-the-rules-of-your-gambling-establishment-to-evaluate-the-chance-safely\/","title":{"rendered":"Yet, you need to know the rules of your gambling establishment to evaluate the chance safely"},"content":{"rendered":"

MARIE, For the \ufffd There have been two weeks leftover to claim a MAXMILLIONS award well worth $one million in the Saturday, Lotto Maximum mark. MARIE, On the \ufffd There’s two months remaining to help you claim an ENCORE prize worth $ten,000 on Tuesday, Lotto Maximum draw. MARIE, For the \ufffd There’s two months leftover to allege good LOTTARIO award worthy of $359, from the Tuesday, LOTTARIO draw. MARIE, To the \ufffd There are 2 weeks remaining to help you claim an effective $10,000 prize in the Monday, Lottery 6\/49 mark.<\/p>\n

PlayOLG Gambling establishment has its appointed cellular casino app which is full away from pleasing have, and usage of leading on-line casino slots, table games and much more! And search mode and you may class tabs, you’ll see strain to possess themes, possess, and you can business. The official OLG software provides the extremely sleek way to gamble, with vehicle-log in, custom announcements, and you may safer cashier integration. A smooth Olg Signin throws your one mouse click from advanced harbors, tailored bonuses, and possess you adore-cascades, increasing signs, respins, and much more. Open a whole lot of superior slots, free revolves, and you can personal advertising with an instant, safer Olg Signin.<\/p>\n

Whenever you become a member of the newest OLG local casino, make an effort 20Bet<\/a> to go after some basic regulations. Simply get the nearest location to the its formal web site to make sure you are a good Canadian resident out of a legal many years.<\/p>\n

All the real cash bets and gains is actually settled for the genuine bucks, that will next feel taken on the verified bank account. Ontario online casinos never render personal incentives exactly the same way as the Rest of Canada gambling enterprises. OLG works legally in this Ontario’s regulated iGaming structure that is only available to users personally located in Ontario aged 19 and old. Video game catalog growth also has enhanced rather inside the 2025, jackpot range is actually competitive, and financial legislation is actually genuinely representative-amicable.<\/p>\n

For folks who miss the discount move, the fresh revolves will not arrive<\/h2>\n

To make sure you just purchase everything offer, use bucks and leave the brand new notes at your home. Beneath the multiyear bargain, OLG gets a proper NHL spouse to possess recreations … OLG now becomes an official MLB lover to own wagering as a result of its PROLINE+ … TORONTO, On the \ufffd Ontario Lotto and Gambling Corporation (OLG) and National Basketball Connection (NBA) is actually remembering the fresh new 2022 NBA Write shown by Condition Ranch by announcing you to OLG’s PROLINE sportsbook has grown to become an official lover away from the fresh new NBA inside Ontario. Claimants with awards more than $1,000 can availability …<\/p>\n

MARIE, To your \ufffd There are 2 months remaining to allege a $100,000 ENCORE prize on Wednesday, PICK-twenty three Evening mark. MARIE, Into the \ufffd There have been two days kept so you’re able to allege a lotto Maximum next award value $144,943 regarding Tuesday, Lotto Max mark. MARIE, To the \ufffd There are two main days leftover to help you claim a good $5 billion honor in the Monday, Lottery 6\/49 mark. MARIE, Into the \ufffd There are two months kept so you can claim an effective $twenty five,000 award regarding the Monday, Lottery 6\/forty two Very Draw. MARIE, Towards \ufffd There have been two weeks remaining to allege a keen ONTARIO forty-two next prize value $fifty,000 regarding the Wednesday, mark.<\/p>\n

The newest reception shows and that online game meet the requirements, and also the 100 % free spins start automatically after you open certainly the fresh new searched games. Your own cashback need to be wagered after and that is good getting eight months immediately following it\ufffds approved.<\/p>\n

We are going to discuss the top have, available game, and other important info in the OLG Internet casino feedback. OLG Gambling establishment is alive and you may courtroom in the Ontario, offering new users to sign up and begin to relax and play within only gambling establishment depending by the province’s official betting commission. Local casino.master was an independent way to obtain information about online casinos and you may casino games, maybe not subject to any betting user. An initiative we released towards mission to produce a major international self-exception to this rule program, which will allow it to be vulnerable people so you can stop its accessibility most of the online gambling opportunities. The protection Directory is the chief metric we use to define the newest trustworthiness, equity, and you will top-notch the online casinos within database. We hardly if found a deposit fits offer, there aren’t any totally free spins otherwise some thing provided always.<\/p>\n

Harbors take on bucks or tickets which have bucks worthy of called TITO, otherwise \ufffdadmission inside the, solution aside\ufffd<\/h2>\n

Next, down load it, check in, and be towards biometrics for immediate access. Listed below are some our certified application online Play for Android os or the fresh Software Store to possess iPhones and iPads. You could operate easily and you can without the need to suppose that have OLG advertising as the we hold the code brief and you may clear. As the playthrough is more than, loans try put-out since dollars which can be taken. When you enter into a password that provides your free revolves, consider how much cash for each twist is definitely worth, what slot it is, and exactly how far you might winnings altogether. 2 to 4 minutes 30 days, we send targeted offers having money incentives, 100 % free revolves packages, or entryway passes worthy of $10 so you’re able to $50.<\/p>\n

You can learn not only much more about one to position, and about how this type of application operate in general. You might discover hands on, nevertheless when money and you may enjoyable has reached stake, as to the reasons chance it? We are able to continue, although section are there is a lot to know! You don’t have to choice a real income, however continue to have a way to discover more about they.<\/p>\n

Whether you crave highest volatility or easy, constant instruction, there are a keen Olg position you to strikes their sweet destination. Olg delivers a good curated blend of antique reels and feature-rich films headings, all primed to own fast gameplay, stacked possess, and you can big-earn prospective. Check full terms, qualified video game, and you can betting legislation ahead of claiming. Olg Real time Gambling establishment captures the brand new large-times end up being off a bona-fide playing flooring with top-notch people, crisp Hd channels, and you may immediate table supply. If you love spinning reels and you will chasing after fascinating enjoys, Olg Incentives try the shortcut to a great deal more playtime and bigger possible production.<\/p>\n

OLG is an enthusiastic Ontario authorities work with department providing you with both lottery and betting amusement to individuals. To the , the participants is also discover the newest lotteries given. It\ufffds a vintage place to go for local casino enthusiasts, bringing a variety of options to bettors and you may a fantastic gaming sense. The newest graphics are unmistakeable and you will entertaining, deciding to make the betting experience far more immersive. Plus the colour scheme, OLG’s program also features higher-quality picture you to enhance the total aesthetic.<\/p>\n","protected":false},"excerpt":{"rendered":"

MARIE, For the \ufffd There have been two weeks leftover to claim a MAXMILLIONS award well worth $one million in the Saturday, Lotto Maximum mark. MARIE, On the \ufffd There’s two months remaining to help you claim an ENCORE prize worth $ten,000 on Tuesday, Lotto Maximum draw. MARIE, For the\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-100556","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/100556","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=100556"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/100556\/revisions"}],"predecessor-version":[{"id":100557,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/100556\/revisions\/100557"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=100556"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=100556"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=100556"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}