/* 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":139764,"date":"2026-06-09T08:30:22","date_gmt":"2026-06-09T08:30:22","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=139764"},"modified":"2026-06-09T08:30:22","modified_gmt":"2026-06-09T08:30:22","slug":"the-top-popular-gaming-site-in-australia-is-total-casino","status":"publish","type":"post","link":"https:\/\/klecet.edu.in\/alumni\/the-top-popular-gaming-site-in-australia-is-total-casino\/","title":{"rendered":"The Top Popular Gaming Site in Australia Is Total Casino"},"content":{"rendered":"
\n\"HAMMER
\n\"Lucky<\/p>\n

Total Casino has emerged as the top gaming site in Australia, drawing a varied player base with its vast range of over 1,000 games. Its lively design and user-friendly navigation improve the user experience, while attractive bonuses and a solid loyalty program keep players coming back. However, what truly differentiates Total Casino apart in this extremely competitive market? Examining its features demonstrates a compelling case for why it’s the preferred platform for gamers Down Under.<\/p>\n

A Diverse Collection of Games<\/h2>\n

Total Casino offers a collection of over 1,000 games, making it one of Australia’s extremely diverse gaming sites. This wide-ranging game variety comprises slots, table games, and live dealer options, providing something for every player.<\/p>\n

Each game is created to provide an engaging experience, pulling players into enthralling themes and lively gameplay. With alliances from premier software providers, Total Casino guarantees top-notch graphics and flawless performance, crucial for captivating interactions.<\/p>\n

Players can delve into different genres, from classic to up-to-date titles, satisfying diverse tastes and preferences. By emphasizing game diversity, Total Casino not only boosts user engagement but also fosters a dynamic gaming community, making it a premier destination for enthusiasts across Australia.<\/p>\n

Generous Bonuses and Promotions<\/h2>\n

Ample bonuses and promotions lay the groundwork for an thrilling gaming experience at Total Casino, attracting both new and experienced players alike. These beneficial incentives not only give a welcoming welcome for newcomers but also promote ongoing play, greatly contributing to player retention.<\/p>\n

\"Las<\/p>\n

From attractive sign-up bonuses to regular promotions, Total Casino guarantees players always have something to look forward to. Frequently updated offers, including free spins and deposit matches, keep engagement levels high and foster a sense of loyalty.<\/p>\n

Furthermore, the tiered loyalty program rewards dedicated players with exclusive perks, enhancing their overall experience. By focusing on these lavish incentives, Total Casino cultivates a vibrant gaming community that thrives on excitement and rewards, solidifying its reputation in the competitive gaming landscape of Australia.<\/p>\n

User-Friendly Interface and Experience<\/h2>\n

A welcoming array of bonuses and promotions can only elevate the overall experience, but it\u2019s the user-friendly interface that truly makes Total Casino stand out.<\/p>\n

The site features easy-to-use navigation, allowing players to find their favorite games reddit.com<\/a> and promotions without hassle. This streamlined approach reduces frustration and enhances enjoyment, vital for both newcomers and seasoned players.<\/p>\n

Total Casino also maintains an aesthetically pleasing design, blending vibrant graphics with a clean layout, which invites users to engage more fully https:\/\/totalscasino.com\/en-au\/<\/a>.<\/p>\n

With quick loading times and responsive elements, the platform adapts seamlessly across devices, ensuring a consistent, enjoyable experience.<\/p>\n

Secure and Reliable Payment Options<\/h2>\n

While players focus on enjoying their gaming experience, secure and reliable payment options serve as a fundamental pillar for Total Casino\u2019s appeal. The site prioritizes payment security through state-of-the-art encryption technologies, ensuring that all transactions remain confidential and protected from fraud.<\/p>\n

This dedication not only builds trust among its users but also enhances a seamless gaming environment. Additionally, Total Casino recognizes the importance of transaction speed, allowing players to deposit and withdraw funds swiftly and efficiently, reducing waiting times.<\/p>\n

Exceptional Customer Support<\/h2>\n

Total Casino distinguishes itself not only for its wide-ranging gaming options but also for its exceptional customer support.<\/p>\n

With 24\/7 assistance available, players can access help whenever they need it, through various contact channels.<\/p>\n

A well-informed support team guarantees that inquiries are handled efficiently, improving the overall gaming experience.<\/p>\n

24\/7 Assistance Availability<\/h3>\n

How essential is exceptional customer support when choosing an online casino? It\u2019s vital. Players need quick resolutions to queries, ensuring a smooth gaming experience.<\/p>\n

Total Casino offers impressive assistance availability through various channels, primarily focusing on live chat and email support. Live chat allows users to connect with a representative immediately, receiving prompt responses to urgent concerns. This feature significantly enhances player satisfaction and confidence in the platform.<\/p>\n

Alternatively, email support serves those who prefer detailed inquiries, allowing players to express their issues and receive extensive responses. Having both options guarantees that Total Casino effectively meets the diverse needs of its user base, reinforcing its popularity among Australian gamers.<\/p>\n

Exceptional support can truly differentiate a casino from its competitors.<\/p>\n

Multiple Contact Channels<\/h3>\n

Exceptional customer support doesn’t just hinge on availability; the channels through which assistance is provided play a significant role. Total Casino understands that effective communication promotes customer engagement, which is why they offer various contact options.<\/p>\n

Players can reach out via real-time chat, email, and social media, ensuring that everyone finds their preferred method. The platform isn\u2019t just about responding to inquiries but proactively seeking feedback through multiple feedback channels.<\/p>\n

This approach allows Total Casino to continually improve its services and customize the gaming experience to meet customer expectations. By diversifying communication methods, the site not only enhances customer satisfaction but also nurtures a loyal player base, highlighting its dedication to outstanding support.<\/p>\n

Knowledgeable Support Team<\/h3>\n

Proficiency in customer support is crucial for any gaming platform, and Total Casino demonstrates this with its well-informed support team. Their representatives are highly trained, guaranteeing effective communication and quick problem resolution.<\/p>\n

Customers appreciate the emphasis on knowledge sharing, which promotes a better understanding of the platform\u2019s offerings and improves user experience. With thorough training programs, the support team is equipped to handle a wide range of inquiries, from technical issues to account management.<\/p>\n

Total Casino\u2019s support team isn\u2019t just reactive; they actively provide resources, like FAQs and tutorials, empowering players with essential information.<\/p>\n

Mobile Gaming Accessibility<\/h2>\n

As mobile technology continues to evolve, the accessibility of gaming platforms like Total Casino becomes increasingly important for Australian players.<\/p>\n

Current mobile gaming trends indicate a increasing preference for mobile entertainment, influencing the design and functionality of online casinos. Total Casino recognizes this shift, ensuring optimal device compatibility across smartphones and tablets, irrespective of brand or operating system.<\/p>\n

This flexibility enables players to smoothly move from desktop to mobile without sacrificing their gaming experience. By providing a easy-to-use interface, a diverse game selection, and reliable payment options, Total Casino positions itself as a leader in mobile accessibility.<\/p>\n

As a result, Australian players can engage with their favorite games anywhere and anytime, boosting overall engagement and contentment with the platform.<\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"

Total Casino has emerged as the top gaming site in Australia, drawing a varied player base with its vast range of over 1,000 games. Its lively design and user-friendly navigation improve the user experience, while attractive bonuses and a solid loyalty program keep players coming back. However, what truly differentiates\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-139764","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/139764","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/comments?post=139764"}],"version-history":[{"count":1,"href":"https:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/139764\/revisions"}],"predecessor-version":[{"id":139765,"href":"https:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/139764\/revisions\/139765"}],"wp:attachment":[{"href":"https:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=139764"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=139764"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=139764"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}