/* 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":166871,"date":"2026-06-22T12:26:01","date_gmt":"2026-06-22T12:26:01","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=166871"},"modified":"2026-06-22T12:26:01","modified_gmt":"2026-06-22T12:26:01","slug":"casinos-in-the-near-nashville-tennessee-2026-upwards-to-time-number","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/casinos-in-the-near-nashville-tennessee-2026-upwards-to-time-number\/","title":{"rendered":"Casinos in the & near NASHVILLE, TENNESSEE 2026 upwards-to-time number"},"content":{"rendered":"

You\u2019ll be provided a good 250% added bonus all the way to $dos,five-hundred also fifty cost-free revolves for the Mighty Guitar position toward the first put. If you opt to invite your friends with each other towards the drive, you may also wallet good 50% bonus as much as $one hundred + 50 totally free revolves each recommendation. Your first deposit often internet you around 250 free spins, and you may that which you secure was your very own.<\/p>\n

Even casinos rather than standalone mobile gambling enterprise apps still went flawlessly toward mobile\u2014good for small spins when you’re wishing inside visitors towards the We-40. SuperSlots and Slots.lv deliver solid live and you will slot solutions, ideal for TN players chasing after range and you may high-RTP step. Once you work out how this type of real cash gambling enterprises performs, they\u2019ll ver quickly become your own wade-to, sunday activity. Having a great 96% RTP and 20x multipliers throughout the 100 percent free revolves round, so it prairie-styled position is good for TN nature couples on the check.<\/p>\n

These items is handled once the zero-award activity, notably less gambling on line otherwise an excellent workaround to own on-line casino gamble. Some activity-merely personal gambling establishment applications can still be accessible when they explore Coins just and do not become marketing and advertising sweepstakes money or award redemptions. If you have fun with a gold Money-only social gambling enterprise unit from inside the Tennessee, makes it strictly activity-based.<\/p>\n

Traditional actual-money online casinos is actually illegal, and you will sweepstakes casinos occur from inside the a legal gray town. The fresh new Recreations Wagering Council (SWC) is responsible for monitoring the net sports betting scene inside the Tennessee. When you find yourself 18 otherwise older, you can lawfully strike right up societal and you can sweepstakes gambling establishment internet. Can get 2019 noticed Tennessee flip the script for the on the web wagering, making it judge and you will controlled. As it stands, real-money online casinos will still be illegal, while won’t select one brick-and-mortar bones sometimes. End up being one as it may, you could potentially nevertheless see your favorite gambling games in the social casinos free of charge.<\/p>\n

Simply be sure you might be using a legit, state-signed up https:\/\/gatesofolympus-sk.com\/<\/a> sportsbook therefore\u2019re of sufficient age so you’re able to gamble legally. Tennessee lets all the forms of on line wagering. Use sweep and you can gold coins, and you can abrasion one to gaming itch. The brand new suits has to be completed until the Free revolves can be be used. ten revolves per day for five days. Professionals inside Tennessee may not have the entire on the internet playing meal, but there is nevertheless a whole lot to help you banquet to the.<\/p>\n

The home of a number of campaigns and you can Lucky Creek extra rules, your website is sold with fits incentives and you may 100 percent free revolves, getting a powerful initiate for novices. Which blend of online game range, percentage independence, and you will attractive incentives makes Bovada a prominent option one of overseas sportsbooks and you may a real income web based casinos into the Tennessee. not, the long run keeps prospect of changes, because the success of on the internet sports betting means the possibility financial benefits associated with longer online gambling. The platform has established a strong reputation inside online gaming community by providing some sportsbook attributes in order to focus on bettors with assorted choice.<\/p>\n

For those who\u2019re also new to a real income online gambling from inside the Tennessee, Raging Bull\u2019s representative-amicable webpages is a wonderful place to begin. You will find all those a real income internet casino Tennessee internet sites you can sign up with. Ergo, the only path to have Tennesseans in order to gamble online legitimately is to check out a worldwide internet casino acknowledging players regarding Tennessee. Just like the recognized overseas gambling authorities license him or her, Tennessee participants can be securely register instead of inquiries out of judge repercussions. Tennesseans can be legally access respected globally gambling enterprise web sites providing real money gambling establishment playing. But not, since there is growing consult and you can personal support, there is also good opposition.<\/p>\n

Tennessee has no real time casino poker rooms once the state doesn’t have commercial otherwise tribal casinos. The state did not is online poker regarding 2019 sports betting authorization. The brand new launch coincided that have NFL season and you may SEC sports height wedding, generating good initial manage. Regulations specifically don’t authorize commercial or tribal casinos in combination that have wagering, keeping Tennessee’s zero-gambling enterprise county position if you find yourself incorporating regulated cellular wagering. The latest nation’s complete absence of in-county local casino system (no industrial casinos, zero tribal gambling enterprises), together with traditional condition governmental society and spiritual area effect on gambling rules, produces structural barriers to online casino extension. There are no commercial or tribal casinos.<\/p>\n

The state continues to develop its digital attract however, reveals absolutely nothing sign of opening real casinos. The official typically compared almost every variety of playing, that have strong restrictions set up on the 20th millennium. The main focus is on cellular gamble, making sure people features recreation without having any structure out of physical casinos. Zero tribal casinos, no racetracks, and no actual sportsbooks can be found. Citizens can take advantage of lawfully controlled options such as for example online sportsbooks, daily fantasy sporting events, on the web bingo, plus the state lotto. Of many Tennessee gambling on line web sites you to definitely jobs as the societal otherwise sweepstakes casinos give web based poker game that permit you play for fun or participate to possess awards legally.<\/p>\n

Free spins apply to chosen slots and winnings is actually susceptible to 35x betting. Stakeholders still lobby having a managed design detailed with consumer defenses and income tax cash revealing. The official\u2019s statutes ban any local casino\u2011layout online game put on the internet, no matter what seller\u2019s area. The official\u2019s User Safeguards Department has actually approved cautions that many \u201cTennessee\u2011licensed\u201d casinos on the internet are make believe fronts.<\/p>\n

The potential legalization of casinos on the internet and you may web based poker within the Tennessee is actually a subject from significant argument. Laws operate eg Representative. Jason Powell\u2019s HJR0093, aimed at legalizing gambling establishment betting to fund K-a dozen training, laws a possible change inside Tennessee\u2019s stance into the gambling on line. The new lottery\u2019s affect training money is a good testament to your potential benefits associated with managed betting products.<\/p>\n

Places normally start in the $ten to help you $50 according to website and you may means, and limits to your private hand or revolves are priced between cents within the reduced end to numerous hundred or so bucks for each and every hand in the large-limitation dining tables. Tennessee customers who are in need of on-line casino gambling is going to continue relying on overseas providers while using regulated software getting sports betting. Tennessee does not have any playing commission like those who work in claims which have commercial gambling enterprises once the Tennessee doesn’t have commercial gambling enterprises or tribal casinos to manage. The websites below had been looked at by the many years of actual Tennessee customer sense and always undertake Tennessee users by the fresh most recent opinion. Gold Money-just social gambling enterprises use that low-redeemable virtual money for entertainment game play merely.<\/p>\n","protected":false},"excerpt":{"rendered":"

You\u2019ll be provided a good 250% added bonus all the way to $dos,five-hundred also fifty cost-free revolves for the Mighty Guitar position toward the first put. If you opt to invite your friends with each other towards the drive, you may also wallet good 50% bonus as much as $one\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-166871","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/166871","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=166871"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/166871\/revisions"}],"predecessor-version":[{"id":166876,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/166871\/revisions\/166876"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=166871"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=166871"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=166871"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}