/* 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":99564,"date":"2026-05-25T11:16:01","date_gmt":"2026-05-25T11:16:01","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=99564"},"modified":"2026-05-25T11:16:02","modified_gmt":"2026-05-25T11:16:02","slug":"yet-you-need-to-know-the-guidelines-of-casino-to-check-on-the-fortune-safely","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/yet-you-need-to-know-the-guidelines-of-casino-to-check-on-the-fortune-safely\/","title":{"rendered":"Yet, you need to know the guidelines of casino to check on the fortune safely"},"content":{"rendered":"

MARIE, For the \ufffd There have been two weeks leftover to allege a good MAXMILLIONS prize value $one million regarding Friday, Lotto Max draw. MARIE, To your \ufffd There’s two weeks left so you’re able to claim an enthusiastic ENCORE honor really worth $ten,000 from the Tuesday, Lottery Max draw. MARIE, Towards \ufffd There are 2 days leftover to help you claim a LOTTARIO award worthy of $359, from the Monday, LOTTARIO draw. MARIE, For the \ufffd There’s two days kept in order to allege good $ten,000 award in the Tuesday, Lotto six\/forty-two mark.<\/p>\n

PlayOLG Gambling enterprise has its own designated cellular local casino app that is complete away from enjoyable enjoys, together with accessibility top internet casino ports, desk game and! And also the browse setting and you may group tabs, you will observe strain to have layouts, have, and you may business. The state OLG software contains the most sleek means to fix gamble, having vehicle-login, custom notifications, and you may safer cashier consolidation. A streamlined Olg Signin places you you to definitely click away from advanced harbors, tailored bonuses, and also the possess you like-cascades, increasing symbols, respins, and. Unlock a full world of premium ports, 100 % free spins, and you will exclusive advertising having a fast, safe Olg Signin.<\/p>\n

Whenever you enroll in the new OLG casino, just be sure to pursue some elementary rules. Simply get the nearby venue to your its formal website and work out yes you\ufffdre an excellent Canadian citizen regarding an appropriate ages.<\/p>\n

All a real income bets and you may gains is actually paid in the real cash, that may following be withdrawn to the confirmed family savings. Ontario online casinos do not promote social bonuses the same exact way since Remainder of Canada simba games casino online<\/a> gambling enterprises. OLG operates lawfully inside Ontario’s managed iGaming design and that is merely open to people personally situated in Ontario old 19 and old. Game catalog gains likewise has enhanced rather inside 2025, jackpot range is competitive, and you may banking guidelines are really associate-amicable.<\/p>\n

For individuals who miss out the promotion step, the fresh new spins doesn’t show up<\/h2>\n

To ensure that you only purchase everything you give, have fun with cash and leave the fresh new notes at your home. Beneath the multiyear price, OLG gets an official NHL partner for activities … OLG today gets an official MLB mate having wagering thanks to the PROLINE+ … TORONTO, To your \ufffd Ontario Lotto and you will Playing Business (OLG) and also the National Baseball Association (NBA) try remembering the latest 2022 NBA Draft presented by County Ranch by announcing that OLG’s PROLINE sportsbook is a formal companion from the brand new NBA within the Ontario. Claimants with awards more than $1,000 can now availableness …<\/p>\n

MARIE, To your \ufffd There are two days kept so you can claim a $100,000 ENCORE award on Wednesday, PICK-twenty-three Night draw. MARIE, For the \ufffd There are 2 weeks kept to help you claim a lotto Maximum second award really worth $144,943 from the Saturday, Lottery Maximum mark. MARIE, Into the \ufffd There are two main weeks kept to help you allege an excellent $5 million honor on Tuesday, Lottery 6\/44 mark. MARIE, On the \ufffd There are two months left so you’re able to allege a $25,000 honor regarding the Friday, Lotto 6\/44 Extremely Mark. MARIE, To the \ufffd There are two months remaining to claim a keen ONTARIO 49 second honor worth $fifty,000 regarding the Wednesday, mark.<\/p>\n

The brand new reception shows hence game qualify, and 100 % free revolves begin automatically once you open certainly one of the newest appeared games. Your own cashback must be wagered once that is appropriate to have eight days shortly after it\ufffds granted.<\/p>\n

We will talk about the finest possess, offered online game, or other important information from the OLG On-line casino comment. OLG Gambling enterprise is live and you may courtroom inside the Ontario, giving new registered users to sign up and begin to relax and play at simply casino dependent of the province’s official gaming commission. Casino.expert are an independent supply of details about web based casinos and online casino games, maybe not controlled by any gaming user. An initiative we introduced to the mission to help make a global self-exception to this rule program, that will ensure it is insecure players so you’re able to block its entry to all the gambling on line possibilities. The safety List ‘s the chief metric we use to describe the fresh honesty, fairness, and top-notch all casinos on the internet within our databases. We rarely if ever discovered in initial deposit suits bring, there aren’t any free spins or one thing given constantly.<\/p>\n

Ports deal with cash or seats with cash really worth called TITO, otherwise \ufffdcitation during the, admission aside\ufffd<\/h2>\n

Next, obtain they, sign in, and turn for the biometrics for immediate access. Check out our authoritative software on the internet Play for Android os or the newest Application Store to own iPhones and iPads. You could act rapidly and you will without having to imagine which have OLG offers since the i contain the language small and you may obvious. Because playthrough is over, funds was released since the cash which is often taken. When you go into a password providing you with you free spins, consider how much cash for each spin may be worth, what position it\ufffds, and just how much you can winnings in total. Two to four minutes a month, we send focused now offers with currency bonuses, free spins packages, otherwise admission entry really worth $ten to $fifty.<\/p>\n

You can easily see not just about one to slot, plus precisely how this type of application work with general. You could potentially discover on the job, nevertheless when money and you will fun is located at risk, why exposure they? We could go on, nevertheless part is there is a lot understand! You don’t need to choice real money, but you still have a chance to learn more about it.<\/p>\n

Whether or not your desire highest volatility otherwise simple, constant courses, there are a keen Olg slot you to strikes their sweet room. Olg provides a good curated combination of antique reels and have-rich films titles, all primed getting prompt gameplay, piled features, and you will large-earn prospective. Always check complete terminology, qualified games, and you will betting regulations just before claiming. Olg Live Casino grabs the latest large-opportunity getting out of a bona-fide gambling floor which have elite dealers, crisp Hd streams, and you may instant dining table availableness. If you love spinning reels and you will going after exciting has, Olg Incentives is actually your shortcut so you can a great deal more playtime and you can big possible efficiency.<\/p>\n

OLG is an Ontario authorities work with company that delivers one another lotto and you may playing recreation to people. Towards , the players can also be find out about the fresh new lotteries considering. It\ufffds a vintage destination for casino fans, getting numerous choices to gamblers and you can an exciting gambling sense. The latest graphics are unmistakeable and you can enjoyable, putting some gambling experience much more immersive. In addition to the colour scheme, OLG’s platform also features high-high quality image you to help the overall graphic.<\/p>\n","protected":false},"excerpt":{"rendered":"

MARIE, For the \ufffd There have been two weeks leftover to allege a good MAXMILLIONS prize value $one million regarding Friday, Lotto Max draw. MARIE, To your \ufffd There’s two weeks left so you’re able to claim an enthusiastic ENCORE honor really worth $ten,000 from the Tuesday, Lottery Max draw.\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-99564","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/99564","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=99564"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/99564\/revisions"}],"predecessor-version":[{"id":99565,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/99564\/revisions\/99565"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=99564"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=99564"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=99564"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}