/** * jQuery fontIconPicker - v2.3 * * An icon picker built on top of font icons and jQuery * * http://codeb.it/fontIconPicker * * Made by Alessandro Benoit & Swashata * Under MIT License * * {@link https://github.com/micc83/fontIconPicker} * * Modified by Visual Composer Dev Team */ (function ( $ ) { 'use strict'; // Create the defaults once var defaults = { theme: 'fip-vc-theme-grey', // The CSS theme to use with this fontIconPicker. You can set different themes on multiple elements on the same page source: false, // Icons source (array|false|object) emptyIcon: true, // Empty icon should be shown? emptyIconValue: '', // The value of the empty icon, change if you select has something else, say "none" iconsPerPage: 20, // Number of icons per page hasSearch: true, // Is search enabled? searchSource: false, // Give a manual search values. If using attributes then for proper search feature we also need to pass icon names under the same order of source useAttribute: false, // Whether to use attribute selector for printing icons attributeName: 'data-icon', // HTML Attribute name convertToHex: true, // Whether or not to convert to hexadecimal for attribute value. If true then please pass decimal integer value to the source (or as value="" attribute of the select field) allCategoryText: 'From all categories', // The text for the select all category option unCategorizedText: 'Uncategorized', // The text for the select uncategorized option iconDownClass: 'fip-icon-down-dir', // Class for icon down iconUpClass: 'fip-icon-up-dir', // Class for icon up iconLeftClass: 'fip-icon-left-dir', // Class for icon left iconRightClass: 'fip-icon-right-dir', // Class for icon right iconSearchClass: 'fip-icon-search', // Class for search iconCancelClass: 'fip-icon-cancel', // Class for search canceling iconSpinClass: 'fip-icon-spin3', // Class for fip-icon-spin3 iconBlockClass: 'fip-icon-block', // Class for block(none icon) searchPlaceholder: 'Search Icon', // Search icon text placeholder mainClass: 'vc-icons-selector' }; // The actual plugin constructor function Plugin( element, options ) { this.element = $( element ); this.settings = $.extend( {}, defaults, options ); if ( this.settings.emptyIcon ) { this.settings.iconsPerPage --; } this.iconPicker = $( '
', { 'class': this.settings.mainClass, style: 'position: relative', html: '
' + '' + '' + '' + '' + '' + '' + '
' + '' } ); this.iconContainer = this.iconPicker.find( '.fip-icons-container' ); this.searchIcon = this.iconPicker.find( '.selector-search i' ); this.iconsSearched = []; this.isSearch = false; this.totalPage = 1; this.currentPage = 1; this.currentIcon = false; this.initialized = false; this.iconsPaged = false; this.iconsCount = 0; this.open = false; // Set the default values for the search related variables this.searchValues = []; this.availableCategoriesSearch = []; // The trigger event for change this.triggerEvent = null; // Backups this.backupSource = []; this.backupSearch = []; // Set the default values of the category related variables this.isCategorized = false; // Automatically detects if the icon listing is categorized this.selectCategory = this.iconPicker.find( '.icon-category-select' ); // The category SELECT input field this.selectedCategory = false; // false means all categories are selected this.availableCategories = []; // Available categories, it is a two dimensional array which holds categorized icons this.unCategorizedKey = null; // Key of the uncategorized category // Initialize plugin this.quickInit(); } Plugin.prototype = { /** * Quick init */ quickInit: function () { var first = true; // Add the theme CSS to the iconPicker this.iconPicker.addClass( this.settings.theme ); // To properly calculate iconPicker height and width // We will first append it to body (with left: -9999px so that it is not visible) this.iconPicker.css( { left: - 9999 } ).appendTo( 'body' ); var iconPickerHeight = this.iconPicker.outerHeight(), iconPickerWidth = this.iconPicker.outerWidth(); // Now reset the iconPicker CSS this.iconPicker.css( { left: '' } ); // Add the icon picker after the select this.element.before( this.iconPicker ); // Hide source element // Instead of doing a display:none, we would rather // make the element invisible // and adjust the margin this.element.css( { visibility: 'hidden', top: 0, position: 'relative', zIndex: '-1', left: '-' + iconPickerWidth + 'px', display: 'none', height: iconPickerHeight + 'px', width: iconPickerWidth + 'px', // Reset all margin, border and padding padding: '0', margin: '0 -' + iconPickerWidth + 'px 0 0', // Left margin adjustment to account for dangling space border: '0 none', verticalAlign: 'top' } ).hide(); // Set the trigger event if ( ! this.element.is( 'select' ) ) { // Determine the event that is fired when user change the field value // Most modern browsers supports input event except IE 7, 8. // IE 9 supports input event but the event is still not fired if I press the backspace key. // Get IE version // https://gist.github.com/padolsey/527683/#comment-7595 var ieVersion = (function () { var v = 3, div = document.createElement( 'div' ), a = div.all || []; while ( div.innerHTML = '', a[ 0 ] ) { ; } return v > 4 ? v : ! v; }()); var el = document.createElement( 'div' ); this.triggerEvent = (ieVersion === 9 || ! ('oninput' in el)) ? [ 'keyup' ] : [ 'input', 'keyup' ]; // Let's keep the keyup event for scripts that listens to it } this.setSelectedIcon( this.element.val() ); /** * Category changer */ this.selectCategory.on( 'change keyup', $.proxy( function ( e ) { // Don't do anything if not categorized if ( this.isCategorized === false ) { return false; } var targetSelect = $( e.currentTarget ), currentCategory = targetSelect.val(); // Check if all categories are selected if ( targetSelect.val() === 'all' ) { // Restore from the backups // @note These backups must be rebuild on source change, otherwise it will lead to error this.settings.source = this.backupSource; this.searchValues = this.backupSearch; // No? So there is a specified category } else { var key = parseInt( currentCategory, 10 ); if ( this.availableCategories[ key ] ) { this.settings.source = this.availableCategories[ key ]; this.searchValues = this.availableCategoriesSearch[ key ]; } } this.resetSearch(); this.loadIcons(); }, this ) ); /** * On down arrow click */ this.iconPicker.find( '.selector-button' ).on( 'click', $.proxy( function () { if ( ! this.open && first ) { first = false; this.initCategories(); } // Open/Close the icon picker this.toggleIconSelector(); }, this ) ); /** * Next page */ this.iconPicker.find( '.selector-arrow-right' ).on( 'click', $.proxy( function ( e ) { if ( this.currentPage < this.totalPage ) { this.iconPicker.find( '.selector-arrow-left' ).show(); this.currentPage = this.currentPage + 1; this.renderIconContainer(); this.renderIcons(); } if ( this.currentPage === this.totalPage ) { $( e.currentTarget ).hide(); } }, this ) ); /** * Prev page */ this.iconPicker.find( '.selector-arrow-left' ).on( 'click', $.proxy( function ( e ) { if ( this.currentPage > 1 ) { this.iconPicker.find( '.selector-arrow-right' ).show(); this.currentPage = this.currentPage - 1; this.renderIconContainer(); this.renderIcons(); } if ( this.currentPage === 1 ) { $( e.currentTarget ).hide(); } }, this ) ); /** * Realtime Icon Search */ this.iconPicker.find( '.icons-search-input' ).on( 'keyup', $.proxy( function ( e ) { // Get the search string var searchString = $( e.currentTarget ).val(); // If the string is not empty if ( searchString === '' ) { this.resetSearch(); return; } // Set icon search to X to reset search this.searchIcon.removeClass( this.settings.iconSearchClass ); this.searchIcon.addClass( this.settings.iconCancelClass ); // Set this as a search this.isSearch = true; // Reset current page this.currentPage = 1; // Actual search // This has been modified to search the searchValues instead // Then return the value from the source if match is found this.iconsSearched = []; $.grep( this.searchValues, $.proxy( function ( n, i ) { if ( n.toLowerCase().search( searchString.toLowerCase() ) >= 0 ) { this.iconsSearched[ this.iconsSearched.length ] = this.settings.source[ i ]; return true; } }, this ) ); // Filter duplicates this.iconsSearched = this.iconsSearched.filter( this.getOnlyUnique ); // Render icon list this.renderIconContainer(); this.renderIcons(); }, this ) ); /** * Quit search */ this.iconPicker.find( '.selector-search i' ).on( 'click', $.proxy( function () { this.iconPicker.find( '.icons-search-input' ).focus(); this.resetSearch(); }, this ) ); /** * On icon selected */ this.iconContainer.on( 'click', '.fip-box', $.proxy( function ( e ) { this.setSelectedIcon( $( e.currentTarget ).find( 'i' ).attr( 'data-fip-value' ) ); this.toggleIconSelector(); }, this ) ); /** * Stop click propagation on iconpicker */ this.iconPicker.on( 'click', function ( event ) { event.stopPropagation(); return false; } ); /** * On click out */ $( 'html' ).on( 'click', $.proxy( function () { if ( this.open ) { this.toggleIconSelector(); } }, this ) ); }, /** * Init */ init: function () { // Add the theme CSS to the iconPicker this.iconPicker.addClass( this.settings.theme ); // To properly calculate iconPicker height and width // We will first append it to body (with left: -9999px so that it is not visible) this.iconPicker.css( { left: - 9999 } ).appendTo( 'body' ); var iconPickerHeight = this.iconPicker.outerHeight(), iconPickerWidth = this.iconPicker.outerWidth(); // Now reset the iconPicker CSS this.iconPicker.css( { left: '' } ); // Add the icon picker after the select this.element.before( this.iconPicker ); // Hide source element // Instead of doing a display:none, we would rather // make the element invisible // and adjust the margin this.element.css( { visibility: 'hidden', top: 0, position: 'relative', zIndex: '-1', left: '-' + iconPickerWidth + 'px', display: 'none', height: iconPickerHeight + 'px', width: iconPickerWidth + 'px', // Reset all margin, border and padding padding: '0', margin: '0 -' + iconPickerWidth + 'px 0 0', // Left margin adjustment to account for dangling space border: '0 none', verticalAlign: 'top' } ).hide(); // Set the trigger event if ( ! this.element.is( 'select' ) ) { // Determine the event that is fired when user change the field value // Most modern browsers supports input event except IE 7, 8. // IE 9 supports input event but the event is still not fired if I press the backspace key. // Get IE version // https://gist.github.com/padolsey/527683/#comment-7595 var ieVersion = (function () { var v = 3, div = document.createElement( 'div' ), a = div.all || []; while ( div.innerHTML = '', a[ 0 ] ) { ; } return v > 4 ? v : ! v; }()); var el = document.createElement( 'div' ); this.triggerEvent = (ieVersion === 9 || ! ('oninput' in el)) ? [ 'keyup' ] : [ 'input', 'keyup' ]; // Let's keep the keyup event for scripts that listens to it } this.initCategories(); /** * Category changer */ this.selectCategory.on( 'change keyup', $.proxy( function ( e ) { // Don't do anything if not categorized if ( this.isCategorized === false ) { return false; } var targetSelect = $( e.currentTarget ), currentCategory = targetSelect.val(); // Check if all categories are selected if ( targetSelect.val() === 'all' ) { // Restore from the backups // @note These backups must be rebuild on source change, otherwise it will lead to error this.settings.source = this.backupSource; this.searchValues = this.backupSearch; // No? So there is a specified category } else { var key = parseInt( currentCategory, 10 ); if ( this.availableCategories[ key ] ) { this.settings.source = this.availableCategories[ key ]; this.searchValues = this.availableCategoriesSearch[ key ]; } } this.resetSearch(); this.loadIcons(); }, this ) ); /** * On down arrow click */ this.iconPicker.find( '.selector-button' ).on( 'click', $.proxy( function () { // Open/Close the icon picker this.toggleIconSelector(); }, this ) ); /** * Next page */ this.iconPicker.find( '.selector-arrow-right' ).on( 'click', $.proxy( function ( e ) { if ( this.currentPage < this.totalPage ) { this.iconPicker.find( '.selector-arrow-left' ).show(); this.currentPage = this.currentPage + 1; this.renderIconContainer(); this.renderIcons(); } if ( this.currentPage === this.totalPage ) { $( e.currentTarget ).hide(); } }, this ) ); /** * Prev page */ this.iconPicker.find( '.selector-arrow-left' ).on( 'click', $.proxy( function ( e ) { if ( this.currentPage > 1 ) { this.iconPicker.find( '.selector-arrow-right' ).show(); this.currentPage = this.currentPage - 1; this.renderIconContainer(); this.renderIcons(); } if ( this.currentPage === 1 ) { $( e.currentTarget ).hide(); } }, this ) ); /** * Realtime Icon Search */ this.iconPicker.find( '.icons-search-input' ).on( 'keyup', $.proxy( function ( e ) { // Get the search string var searchString = $( e.currentTarget ).val(); // If the string is not empty if ( searchString === '' ) { this.resetSearch(); return; } // Set icon search to X to reset search this.searchIcon.removeClass( this.settings.iconSearchClass ); this.searchIcon.addClass( this.settings.iconCancelClass ); // Set this as a search this.isSearch = true; // Reset current page this.currentPage = 1; // Actual search // This has been modified to search the searchValues instead // Then return the value from the source if match is found this.iconsSearched = []; $.grep( this.searchValues, $.proxy( function ( n, i ) { if ( n.toLowerCase().search( searchString.toLowerCase() ) >= 0 ) { this.iconsSearched[ this.iconsSearched.length ] = this.settings.source[ i ]; return true; } }, this ) ); // Filter duplicates this.iconsSearched = this.iconsSearched.filter( this.getOnlyUnique ); // Render icon list this.renderIconContainer(); this.renderIcons(); }, this ) ); /** * Quit search */ this.iconPicker.find( '.selector-search i' ).on( 'click', $.proxy( function () { this.iconPicker.find( '.icons-search-input' ).focus(); this.resetSearch(); }, this ) ); /** * On icon selected */ this.iconContainer.on( 'click', '.fip-box', $.proxy( function ( e ) { this.setSelectedIcon( $( e.currentTarget ).find( 'i' ).attr( 'data-fip-value' ) ); this.toggleIconSelector(); }, this ) ); /** * Stop click propagation on iconpicker */ this.iconPicker.on( 'click', function ( event ) { event.stopPropagation(); return false; } ); /** * On click out */ $( 'html' ).on( 'click', $.proxy( function () { if ( this.open ) { this.toggleIconSelector(); } }, this ) ); }, initCategories: function () { // If current element is SELECT populate settings.source if ( ! this.settings.source && this.element.is( 'select' ) ) { // Reset the source and searchSource // These will be populated according to the available options this.settings.source = []; this.settings.searchSource = []; // Check if optgroup is present within the select // If it is present then the source has to be grouped if ( this.element.find( 'optgroup' ).length ) { // Set the categorized to true this.isCategorized = true; this.element.find( 'optgroup' ).each( $.proxy( function ( i, el ) { // Get the key of the new category array var thisCategoryKey = this.availableCategories.length, // Create the new option for the selectCategory SELECT field categoryOption = $( '' ).prependTo( this.selectCategory ); // Show it and set default value to all categories this.selectCategory.show().val( 'all' ).trigger( 'change' ); }, /** * Load icons */ loadIcons: function () { // Set the content of the popup as loading this.iconContainer.html( '' ); // If source is set if ( this.settings.source instanceof Array ) { // Render icons this.renderIconContainer(); this.renderIcons(); this.setContainerSelectedItems(); } }, /** * Render icons inside the popup */ renderIconContainer: function () { var offset, iconsPaged = []; // Set a temporary array for icons if ( this.isSearch ) { iconsPaged = this.iconsSearched; } else { iconsPaged = this.settings.source; } // Remove duplicates iconsPaged = [ ...new Set( iconsPaged ) ]; // Count elements this.iconsCount = iconsPaged.length; // Calculate total page number this.totalPage = Math.ceil( this.iconsCount / this.settings.iconsPerPage ); // Hide footer if no pagination is needed if ( this.totalPage > 1 ) { this.iconPicker.find( '.selector-footer' ).show(); } else { this.iconPicker.find( '.selector-footer' ).hide(); } // Set the text for page number index and total icons this.iconPicker.find( '.selector-pages' ).html( this.currentPage + '/' + this.totalPage + ' (' + this.iconsCount + ')' ); // Set the offset for slice offset = (this.currentPage - 1) * this.settings.iconsPerPage; // Should empty icon be shown? if ( this.settings.emptyIcon ) { // Reset icon container HTML and prepend empty icon this.iconContainer.html( '' ); // If not show an error when no icons are found } else if ( iconsPaged.length < 1 ) { this.iconContainer.html( '' ); return; // else empty the container } else { this.iconContainer.html( '' ); } // Set an array of current page icons iconsPaged = iconsPaged.slice( offset, offset + this.settings.iconsPerPage ); this.iconsPaged = iconsPaged; // List icons /*for (var i = 0, item; item = iconsPaged[i++];) { // Set the icon title var flipBoxTitle = item; $.grep(this.settings.source, $.proxy(function (e, i) { if (e === item) { flipBoxTitle = this.searchValues[i]; return true; } return false; }, this)); // Set the icon box $('', { html: '', 'class': 'fip-box', title: flipBoxTitle }).appendTo(this.iconContainer); }*/ }, setContainerSelectedItems: function () { // If no empty icon is allowed and no current value is set or current value is not inside the icon set if ( ! this.settings.emptyIcon && (! this.element.val() || $.inArray( this.element.val(), this.settings.source ) === - 1) ) { // Get the first icon this.setSelectedIcon( this.iconsPaged[ 0 ] ); } else if ( $.inArray( this.element.val(), this.settings.source ) === - 1 ) { // Set empty this.setSelectedIcon(); } else { // Set the default selected icon even if not set this.setSelectedIcon( this.element.val() ); } }, /** * Set Highlighted icon */ setHighlightedIcon: function () { this.iconContainer.find( '.current-icon' ).removeClass( 'current-icon' ); if ( this.currentIcon ) { this.iconContainer.find( '[data-fip-value="' + this.currentIcon + '"]' ).parent( 'span' ).addClass( 'current-icon' ); } }, /** * Set selected icon * * @param {string} theIcon */ setSelectedIcon: function ( theIcon ) { if ( theIcon === this.settings.iconBlockClass ) { theIcon = ''; } // Check if attribute is to be used if ( this.settings.useAttribute ) { if ( theIcon ) { this.iconPicker.find( '.selected-icon' ).html( '' ); } else { this.iconPicker.find( '.selected-icon' ).html( '' ); } // Use class } else { this.iconPicker.find( '.selected-icon' ).html( '' ); } // Set the value of the element and trigger change event this.element.val( (theIcon === '' ? this.settings.emptyIconValue : theIcon ) ).trigger( 'change' ); if ( this.triggerEvent !== null ) { // Trigger other events for ( var eventKey in this.triggerEvent ) { this.element.trigger( this.triggerEvent[ eventKey ] ); } } this.currentIcon = theIcon; this.setHighlightedIcon(); }, /** * Open/close popup (toggle) */ toggleIconSelector: function () { this.open = (! this.open) ? 1 : 0; this.iconPicker.find( '.selector-popup' ).slideToggle( 300 ); this.iconPicker.find( '.selector-button i' ).toggleClass( this.settings.iconDownClass ); this.iconPicker.find( '.selector-button i' ).toggleClass( this.settings.iconUpClass ); if ( this.open ) { this.iconPicker.find( '.icons-search-input' ).focus().select(); if ( ! this.initialized ) { this.renderIconContainer(); this.renderIcons(); this.initialized = true; } } }, renderIcons: function () { for ( var i = 0; i < this.iconsPaged.length; i ++ ) { var item = this.iconsPaged[ i ]; // Set the icon title var flipBoxTitle = item; $.grep( this.settings.source, $.proxy( function ( e, i ) { if ( e === item ) { flipBoxTitle = this.searchValues[ i ]; return true; } return false; }, this ) ); // Set the icon box $( '', { html: '', 'class': 'fip-box', title: flipBoxTitle } ).appendTo( this.iconContainer ); } this.setContainerSelectedItems(); }, /** * Reset search */ resetSearch: function () { // Empty input this.iconPicker.find( '.icons-search-input' ).val( '' ); // Reset search icon class this.searchIcon.removeClass( this.settings.iconCancelClass ); this.searchIcon.addClass( this.settings.iconSearchClass ); // Go back to page 1 and remove back arrow this.iconPicker.find( '.selector-arrow-left' ).hide(); this.currentPage = 1; this.isSearch = false; // Rerender icons this.renderIconContainer(); this.renderIcons(); // Restore pagination if needed if ( this.totalPage > 1 ) { this.iconPicker.find( '.selector-arrow-right' ).show(); } } }; // Lightweight plugin wrapper $.fn.vcFontIconPicker = function ( options ) { // Instantiate the plugin this.each( function () { if ( ! $.data( this, "vcFontIconPicker" ) ) { $.data( this, "vcFontIconPicker", new Plugin( this, options ) ); } } ); // setIcons method this.setIcons = $.proxy( function ( newIcons, iconSearch ) { if ( undefined === newIcons ) { newIcons = false; } if ( undefined === iconSearch ) { iconSearch = false; } this.each( function () { $.data( this, "vcFontIconPicker" ).settings.source = newIcons; $.data( this, "vcFontIconPicker" ).settings.searchSource = iconSearch; $.data( this, "vcFontIconPicker" ).initSourceIndex(); $.data( this, "vcFontIconPicker" ).resetSearch(); $.data( this, "vcFontIconPicker" ).loadIcons(); } ); }, this ); // destroy method this.destroyPicker = $.proxy( function () { this.each( function () { if ( ! $.data( this, "vcFontIconPicker" ) ) { return; } // Remove the iconPicker $.data( this, "vcFontIconPicker" ).iconPicker.remove(); // Reset the CSS $.data( this, "vcFontIconPicker" ).element.css( { visibility: '', top: '', position: '', zIndex: '', left: '', display: 'block', height: '', width: '', padding: '', margin: '', border: '', verticalAlign: '' } ).show(); // destroy data $.removeData( this, "vcFontIconPicker" ); } ); }, this ); // reInit method this.refreshPicker = $.proxy( function ( newOptions ) { if ( ! newOptions ) { newOptions = options; } // First destroy this.destroyPicker(); // Now reset this.each( function () { if ( ! $.data( this, "vcFontIconPicker" ) ) { $.data( this, "vcFontIconPicker", new Plugin( this, newOptions ) ); } } ); }, this ); return this; }; })( jQuery ); # Changelog ## [Unreleased] ## [1.0.4] - 2024-05-02 ### Fixed - Fix implicit nullable deprecation warning for PHP 8.4 ## [1.0.3] - 2022-01-10 ### Changed - Update PHPstan to 1.0 - Switched to GitHub Actions ## [1.0.2] - 2020-07-15 ### Added - Minor performance improvements ## [1.0.1] - 2020-06-16 ### Fixed - When calling `Punycode::decode()`, the case flags array would fail to populate when given an empty array. ## [1.0.0] - 2020-06-09 - Initial release

LIVE REPORTING: 2022 Star Sydney Champs Opening Event Day 1C

LIVE REPORTING: 2024 WSOP-C Sydney Main Event Day 1A

A match bonus is available for new GGPoker players, but the real draw is GGPoker’s scale, software quality, and unmatched tournament schedule. The sites below are trusted by players around the world for their strong reputations, reliable software, and steady game traffic. Sorry, no real money games are currently available in your region, but you can play these Free Online Games WSOP Europe and WSOP Paradise now bring bracelet competition to international destinations, and dozens of Circuit events run year-round for players who want serious competition closer to home. Some of these videos are even going viral and reaching casual poker fans—and potential new poker players—who may discover excitement around poker for the first time. At the same time, the hole card camera gave fans access to the game like never before, allowing them to watch from the perspective of their favorite players.

poker media

I never really worked on preflop in no-limit hold’em. I’m excited about this, because again, the hand equities run really close. My types of mistakes in PLO are not reraising, four-betting, and all that stuff – it’s just playing too many hands, which is fine. You can’t in PLO because the equities run really, really close.

It runs steady tournament schedules and cash games suited to all bankrolls, with smooth multi-table play and fast payments. There’s also plenty of juicy cash game action for players at all bankroll and skill levels. Its global player pool keeps every format active, from micro cash games to $10K majors.

The opportunity to compete for a gold bracelet is on every serious poker player’s bucket list, as is a chance to sit down with some of the game’s biggest stars. Engaging videos, in-depth stories and exclusive interviews take you behind the scenes with the world’s greatest poker players and moments. If you’re younger or a casual player, then this creator-first approach is often your first touchpoint with poker, and it can shape how you understand the game. Most people know the summer series in Las Vegas, where the $10,000 Main Event turns ordinary players into legends. Each winner of a WSOP event is awarded a gold bracelet, considered the highest achievement any poker player can achieve. In 2015, the WSOP awarded their first online poker gold bracelet, with Anthony ‘casedismised’ Spinella winning the inaugural event.

  • You can jump into cash games from as little as $0.01/$0.02, or chase six-figure prizes every weekend.
  • And with the World Championship of Online Poker (WCOOP) looming on the horizon, it’s the perfect time to start honing your strategy – check out the schedule highlights below.
  • We believe that an independent media company will help shape the future of poker by providing an authentic platform for players’ views.
  • PokerStars on FanDuel in Michigan, which shares an interstate compact and combined player pools with New Jersey and Pennsylvania players, offers real money poker, sports, and casino games.

You saw poker media evolve from blogs, written updates, and experimental podcasts into official livestreams, social video, and organization-owned content. So, I liked in my interviews to try and bring players opportunities to express themselves without worrying if it was going to give away crucial information about how they thought about the game. Poker players during that era had television identities, online personas, forum reputations, and private selves that could be very different from one another. No one ever said, \”well, you can’t interview players because you have to be hot to do that,\” but no one was really clamoring for me to interview players on camera. It was simply that I knew which online screennames belonged to which real-life poker tournament participants. While the other students in her graduate program spent the summer teaching or taking classes, Welman headed to Las Vegas under the extremely convenient premise that the trip would further her research into poker players.

I have been contemplating for a long time whether or not to be more public about my health and mental issues. But poker wise, I am hoping to be sent to the Aussie Millions one year. I have never really been a writer but am trying to improve whenever I can. I learned a lot that summer and have kept on trying to learn every day since. I feel like I have accomplished a lot already for the short time I have been doing this. What’s something you still haven’t yet done/accomplished in poker and in life that’s on your bucket list?

LIVE REPORTING: 2022 Star Sydney Champs Opening Event Day 1C

Exact broadcast hours each day are yet to be confirmed and will be based on the state of play. From Monday 4 May, the livestream will focus on the 2026 Aussie Millions Main Event. With the 57th edition of the planet’s most prestigious tournament series now well and truly in the thick …

poker media

For the few remaining sites still promoting regulated online poker, most have anachronistic policies of pretending no other sites exist — so mentioning us or the campaign is presumably blackballed. The reality is that the regulated online poker market is so tough that it’s more valuable either promoting an offshore site, or selling it to a company who will. Consider today the value of the domain PokerStrategy.com — a site purchased by Playtech twelve years ago for $50 million as the busiest online poker community in the world. These three sites were once cornerstones of poker media. As you reflect on the media analysis of poker tournament coverage, consider the pivotal role commentators play in crafting narratives.

This matters for a game that’s traditionally been intimidating to newcomers. Creator audiences form micro-communities with inside jokes and chat culture that make poker feel social. Poker on TV is scheduled, but creator poker is constant.

News

poker media

Less common than most other poker bonuses, you can refer a friend to some poker sites and you’ll both be given access to bonus codes or other exclusive promotions. Meaning you can start playing at a table for free and collect real money if you win. A lot of members in the CardsChat forum ask, “What’s the best real money poker site? There some very specific factors that will determine which poker sites are better than others. I miss a lot of birthdays or other special events. You travel extensively, boarding dozens upon dozens of flights each year, as you hop from stop to step to provide coverage of so many live events.

Best Online Poker Sites for Intermediate Players

poker media

There’s a reason why some of the top stars in poker, such as Daniel Negreanu and Fedor Holtz, put their names and likenesses behind GGPoker. PokerStars went through a similar migration in the Canadian province, so Ontarians can also play PokerStars but just on the FanDuel platform. Multi-tabling is seamless, the PokerStars mobile app is excellent, and the competition ranges from fun home-game style tables to pro-heavy. Next, we’ll go into a bit more detail on the poker operators listed above.

With a massive 1,000,000 FREE chip welcome bonus, you’ll be set from the start to properly explore all the poker games on offer and crush it at the tables. In summer 2025, BetRivers Poker became the first legal online poker operator to launch in West Virginia. As a member of the MSIGA, players in Delaware share liquidity with Pennsylvania, Michigan and West Virginia. One of the most popular brands and poker sites on the East Coast, BetMGM operates in several markets including Michigan. You need to be 21 years or older and have a Social Security Number (SSN) to play real money gaming on PokerStars on FanDuel in the state of Michigan. As of 2026, PokerStars on FanDuel, BetMGM, WSOP MI and BetRivers are the legal online poker operators in Michigan.

Whatever we write, say, or do shouldn’t affect the tournament or player in any way. We often start at least an hour or two before the tournament kicks off and finish way after the day’s play is over. Okay sure, you can read about the history of the event, just so you know who the previous winners are, etc., but for most events, you can do that the day before or even the morning of the first day. GGPoker currently has the world’s largest online poker community, followed by PokerStars. 888poker is well-known for its soft games and beginner-friendly features. PokerStars, BetMGM Poker, and GGPoker have top-tier mobile apps, supporting real money play, fast deposits, and smooth multi-tabling.

Stream instantly on your computer through the web or on your favorite devices, including smartphones, tablets, smart TVs, and streaming media players. Our editorial team consists of experienced players and poker historians dedicated to preserving and sharing the rich history of poker’s most challenging variants. As artificial intelligence, virtual reality, and blockchain technologies mature, poker media stands poised for continued evolution, building on foundations laid by print pioneers while embracing innovations that will define the next generation of poker entertainment and education. Security remains paramount as the 2024 botting epidemic continues on unregulated sites, while real-time assistance tools threaten game integrity.

Content Creators are compensated with a day rate on a per-event basis. For a glimpse at the PokerNews audiovisual coverage at tournaments, check out our Instagram page. All games are lottery games controlled by the Delaware Lottery. There’s still a lot of great poker writers out there, and they might have to write for less scrupulous sites. Domains are being sold www.pokernewsdaily.com off to parasite media companies to exploit 20-year domain history to funnel gambling addicts to “No KYC” crypto sites. The goal was for a media blitz, working with other organizations to get the word out and encourage the Governor to sign a bill to allow for the growth of the regulated game.

We achieve this by blending insightful commentary with dynamic graphics, making the game easier to understand and more thrilling to watch. Visual Tools We’ve also ramped up our use of graphics, illustrating complex game dynamics in a visual format that’s easy to digest. Our commentary team offers insightful analysis by breaking down complex plays into digestible insights.

Sutthi Denvitaya was the unfortunate bubble boy, exiting in a curiously played hand. It didn’t take long to reach the money from there, with the bubble bursting on just the second hand of the final table. The duo battled for well over two hours, trading the lead several times after they began their heads-up match virtually even. This was the run Jeremy Je Min Chan was on, and it started at APT Incheon in this very event a year ago. Now imagine getting that close again, and again, and again, and again, coming up that one spot short each time. Sure, the money is usually pretty nice, but you want that ‘W,’ the trophy, the top prize, and all the glory.

In 2026, the lowest buy-in event was $300 (The Gladiators of Poker) and the biggest buy-in event was $250,000 (Super High Roller). In 2008, the WSOP introduced the November Nine where the Main Event plays down to a final table of nine in July, before resuming in November. There was also still time for another legend to write himself into the record books. Barbara Enright became the only woman to make the Main Event final table with her fifth-place finish in 1995, until Leo Margets achieved the same feat in 2025 where she finished seventh.

poker media

Even torrential rain and flooding in the days leading up to the series couldn’t stop the cream of Sydney’s poker crop from descending on Castle Hill RSL for the latest rendition of the APL Poker … Nevertheless, ACMA Chair Nerida O’Loughlin said, “This decision sends a clear warning that offering online poker to Australians is illegal and there are serious consequences for those who breach the law. The action was first brought in 2022 by the Australian Communications and Media Authority (ACMA) following an investigation into online poker services offered to Australians. Australia’s Federal Court has fined local poker identity Rhys Jones and his company Brisbane Poker Pty Ltd a combined $24 million for operating prohibited online poker services.

With sweepstakes casino platforms rapidly becoming a prominent part of the US online gaming sector, operators are increa… The 2026 SPT Manila poker festival is awarding a record breaking guaranteed prize pool, culminating in the ₱15 million… The first of Rick Gleason’s three-part miniseries examining the Poker Hall of Fame.

The site offers free tournaments (freerolls), low-stakes buy-ins, and intuitive software. These platforms use secure encryption and follow strict player protection policies, including responsible gambling tools. PokerStars leads the way in tournament depth, with hundreds of MTTs daily and massive Sunday majors. We clearly indicate which sites are available and legal in your region, but it is always your responsibility to check before playing.

poker media

Each year, a dedicated team of live reporters, editors, presenters, videographers and photographers help make PokerNews the place to be when it comes to staying up-to-date on the World Series. PokerNews has attended every World Series of Poker since 2007, and is proud to serve as the official live coverage partner of the WSOP, including Main Event coverage. The 2026 World Series of Poker will run from Tuesday, May 26, through Wednesday, July 15, 2026. During the seven-hour interview, Lederer discussed the collapse of Full Tilt Poker, the board, the investors, Ray Bitar, Chris Ferguson, Phil Ivey, Black Friday, and more. On September 8, 2013, PokerNews’ Head of Content Matthew Parvis conducted an exclusive interview with Howard Lederer that was released as a seven-part series titled, “Lederer Files”. As of 2011, PokerNews offered native language sites in Germany, France, Netherlands, Italy, Russia, Poland, Australia, China, Portugal, Japan, Norway, and more.

The WSOP bracelet is the ultimate symbol of poker history and greatness. In 2020, the COVID-19 pandemic forced the postponement of the World Series of Poker for the first time in its history. Phil Hellmuth has the most bracelets of all-time, having won 17 between 1989 and 2024. The biggest buy-in event in WSOP history is the $1,000,000 Big One for One Drop, held in 2012, 2014 and 2018.

The benefits of a VPN are privacy and security, especially when you’re in public locations or want to play poker in a state where it’s currently not legal While only a handful of states have local regulations for internet poker, these sites are available throughout the country. If you want to try poker for free, you can join a site such as Bovada, where you can top up your account with play chips. So, what if you want to play poker for free with no restrictions?

ACR Poker is one of the most popular online poker sites in the US, in part because of its packed tournament schedule highlighted by the signature Venom series. To comply with anti-money laundering legislation, legal US poker sites are not allowed to accept new players unless they provide Personal Identifiable Information (PII). If you want to practise without playing for real money, our free online poker game is a great way to play and improve your skills. It offers one of the most active freeroll schedules online, with daily and weekly events open to new players, loyalty members, and social media followers.

Poker.Org is a poker media site that breaks poker news and provides poker features, strategy, player interviews, videos and live tournament coverage. The poker media industry understands that there is a sharp learning curve to poker, and some members are working on their game just as hard as the poker players they cover. This is not an argument on the morals of licensed vs unlicensed online poker, regulated or unregulated, crypto sites vs real money sites.

Online poker cash games are often the main attraction on a platform, and they are also how we check traffic figures. And it doesn’t restrict more experienced players with anonymous tables or random seating. If you already know how to play poker online and want to sharpen your skills further, you might be interested in more than what a poker room suited for beginners offers.

888poker is one of the most accessible poker sites in the world, built for new and casual players, but also a great platform for the pros. PokerStars remains the most recognizable name in online poker and one of the oldest sites, known for its polished software, consistent traffic, and legendary tournament series like SCOOP and WCOOP. Do you live in a US state or location without legal and regulated online poker sites in operation? This guide breaks down the most trusted real money poker rooms for players in the US, Canada, the UK, and all around the world. Poker players can source news from all levels of the industry – from major casino events to the our leading pub & club poker operators – via a single portal. This was the first time poker players were able to win a WSOP bracelet online, with the final six playing down at the Rio to crown the winner.

Scroll to Top