/** * WP_oEmbed_Controller class, used to provide an oEmbed endpoint. * * @package WordPress * @subpackage Embeds * @since 4.4.0 */ /** * oEmbed API endpoint controller. * * Registers the REST API route and delivers the response data. * The output format (XML or JSON) is handled by the REST API. * * @since 4.4.0 */ #[AllowDynamicProperties] final class WP_oEmbed_Controller { /** * Register the oEmbed REST API route. * * @since 4.4.0 */ public function register_routes() { /** * Filters the maxwidth oEmbed parameter. * * @since 4.4.0 * * @param int $maxwidth Maximum allowed width. Default 600. */ $maxwidth = apply_filters( 'oembed_default_width', 600 ); register_rest_route( 'oembed/1.0', '/embed', array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_item' ), 'permission_callback' => '__return_true', 'args' => array( 'url' => array( 'description' => __( 'The URL of the resource for which to fetch oEmbed data.' ), 'required' => true, 'type' => 'string', 'format' => 'uri', ), 'format' => array( 'default' => 'json', 'sanitize_callback' => 'wp_oembed_ensure_format', ), 'maxwidth' => array( 'default' => $maxwidth, 'sanitize_callback' => 'absint', ), ), ), ) ); register_rest_route( 'oembed/1.0', '/proxy', array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_proxy_item' ), 'permission_callback' => array( $this, 'get_proxy_item_permissions_check' ), 'args' => array( 'url' => array( 'description' => __( 'The URL of the resource for which to fetch oEmbed data.' ), 'required' => true, 'type' => 'string', 'format' => 'uri', ), 'format' => array( 'description' => __( 'The oEmbed format to use.' ), 'type' => 'string', 'default' => 'json', 'enum' => array( 'json', 'xml', ), ), 'maxwidth' => array( 'description' => __( 'The maximum width of the embed frame in pixels.' ), 'type' => 'integer', 'default' => $maxwidth, 'sanitize_callback' => 'absint', ), 'maxheight' => array( 'description' => __( 'The maximum height of the embed frame in pixels.' ), 'type' => 'integer', 'sanitize_callback' => 'absint', ), 'discover' => array( 'description' => __( 'Whether to perform an oEmbed discovery request for unsanctioned providers.' ), 'type' => 'boolean', 'default' => true, ), ), ), ) ); } /** * Callback for the embed API endpoint. * * Returns the JSON object for the post. * * @since 4.4.0 * * @param WP_REST_Request $request Full data about the request. * @return array|WP_Error oEmbed response data or WP_Error on failure. */ public function get_item( $request ) { $post_id = url_to_postid( $request['url'] ); /** * Filters the determined post ID. * * @since 4.4.0 * * @param int $post_id The post ID. * @param string $url The requested URL. */ $post_id = apply_filters( 'oembed_request_post_id', $post_id, $request['url'] ); $data = get_oembed_response_data( $post_id, $request['maxwidth'] ); if ( ! $data ) { return new WP_Error( 'oembed_invalid_url', get_status_header_desc( 404 ), array( 'status' => 404 ) ); } return $data; } /** * Checks if current user can make a proxy oEmbed request. * * @since 4.8.0 * * @return true|WP_Error True if the request has read access, WP_Error object otherwise. */ public function get_proxy_item_permissions_check() { if ( ! current_user_can( 'edit_posts' ) ) { return new WP_Error( 'rest_forbidden', __( 'Sorry, you are not allowed to make proxied oEmbed requests.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Callback for the proxy API endpoint. * * Returns the JSON object for the proxied item. * * @since 4.8.0 * * @see WP_oEmbed::get_html() * @global WP_Embed $wp_embed WordPress Embed object. * @global WP_Scripts $wp_scripts * * @param WP_REST_Request $request Full data about the request. * @return object|WP_Error oEmbed response data or WP_Error on failure. */ public function get_proxy_item( $request ) { global $wp_embed, $wp_scripts; $args = $request->get_params(); // Serve oEmbed data from cache if set. unset( $args['_wpnonce'] ); $cache_key = 'oembed_' . md5( serialize( $args ) ); $data = get_transient( $cache_key ); if ( ! empty( $data ) ) { return $data; } $url = $request['url']; unset( $args['url'] ); // Copy maxwidth/maxheight to width/height since WP_oEmbed::fetch() uses these arg names. if ( isset( $args['maxwidth'] ) ) { $args['width'] = $args['maxwidth']; } if ( isset( $args['maxheight'] ) ) { $args['height'] = $args['maxheight']; } // Short-circuit process for URLs belonging to the current site. $data = get_oembed_response_data_for_url( $url, $args ); if ( $data ) { return $data; } $data = _wp_oembed_get_object()->get_data( $url, $args ); if ( false === $data ) { // Try using a classic embed, instead. /* @var WP_Embed $wp_embed */ $html = $wp_embed->get_embed_handler_html( $args, $url ); if ( $html ) { // Check if any scripts were enqueued by the shortcode, and include them in the response. $enqueued_scripts = array(); foreach ( $wp_scripts->queue as $script ) { $enqueued_scripts[] = $wp_scripts->registered[ $script ]->src; } return (object) array( 'provider_name' => __( 'Embed Handler' ), 'html' => $html, 'scripts' => $enqueued_scripts, ); } return new WP_Error( 'oembed_invalid_url', get_status_header_desc( 404 ), array( 'status' => 404 ) ); } /** This filter is documented in wp-includes/class-wp-oembed.php */ $data->html = apply_filters( 'oembed_result', _wp_oembed_get_object()->data2html( (object) $data, $url ), $url, $args ); /** * Filters the oEmbed TTL value (time to live). * * Similar to the {@see 'oembed_ttl'} filter, but for the REST API * oEmbed proxy endpoint. * * @since 4.8.0 * * @param int $time Time to live (in seconds). * @param string $url The attempted embed URL. * @param array $args An array of embed request arguments. */ $ttl = apply_filters( 'rest_oembed_ttl', DAY_IN_SECONDS, $url, $args ); set_transient( $cache_key, $data, $ttl ); return $data; } } Medzinárodné kasína Svet hier a zábavy -2141271500 -

Medzinárodné kasína Svet hier a zábavy -2141271500

Medzinárodné kasína sú miestom, kde sa stretáva zábava, adrenalín a kultúra. Tieto inštitúcie nie sú len o hazardných hrách, ale sú tiež výnimočnými centrami spoločenského života a kultúrnej rozmanitosti. Mnohé z medzinárodných kasín sa nachádzajú v krajinách s bohatou históriou a tradíciou. Napríklad, medzinárodné kasína Bratislavskygasparko ponúka unikátne zážitky, ktoré prekvapia každého návštevníka.

História kasín siaha až do starovekých čias, kedy sa hrávali jednoduché hazardné hry už v starovekom Ríme a Grécku. Postupne sa hazard stal populárnym a počas 18. storočia sa začali objavovať prvé oficiálne kasína v Európe. Dnes sú medzinárodné kasína vyhlásenými destináciami, ktoré privádzajú turistov z celého sveta.

Najznámejšie medzinárodné kasína

Medzi najznámejšie medzinárodné kasína patrí Casino de Monte-Carlo v Monaku, Las Vegas Strip v USA a The Venetian v Macau. Tieto kasína ponúkajú širokú škálu hier, od klasických stolných hier, ako sú poker a ruleta, po moderné elektronické automaty. Hráči môžu zažiť luxusné prostredie, ktoré tieto inštitúcie ponúkajú, vrátane špičkových reštaurácií, hotelov a zábavných podujatí.

Kultúra a kasína

Kasína sú nielen miestom hier, ale aj kultúrneho vyžitia. Mnohé z nich hostia koncerty, divadelné predstavenia a iné zábavné podujatia. Napríklad v Las Vegas sa konajú každoročne niektoré z najprestížnejších hudobných festivalov a športových udalostí. Týmto spôsobom sa kasína snažia prilákať návštevníkov aj mimo tradičných hazardných hier.

Ekonomický dopad kasín

Medzinárodné kasína majú významný ekonomický dopad na svoje regióny. Tvorba pracovných miest, zvyšovanie turizmu a generovanie daní sú len niektoré z benefity, ktoré kasína prinášajú. Napríklad, v krajínach ako je Macau, kasína predstavujú viac ako 80% jej ekonomiky. To ukazuje, akú významnú úlohu zohráva hazardný priemysel v hospodárskom rozvoji.

Regulácia a zodpovedné hranie

Vzhľadom na povahu hazardu je regulácia kasín veľmi dôležitá. Mnohé krajiny implementovali prísne zákony, aby zabezpečili, že kasína fungujú v nepoškodenom a spravodlivom prostredí. To zahŕňa aj kampane pre zodpovedné hranie, ktoré sú zamerané na prekonanie problémového hrania. Mnohé medzinárodné kasína ponúkajú rôzne programy na pomoc hráčom, aby si udržali hranie v zdravej miere.

Prebiehajúce trendy v kasínach

Mediálna revolúcia priniesla do sveta kasín aj nové trendy. Online kasína sa stali populárne, čo umožnilo hráčom prístup k hrám z pohodlia svojho domova. To však neznižuje atrakciu tradičných kasín, ktoré naďalej lákajú návštevníkov svojou atmosférou a osobnými službami.

Krátkodobé trendy ako kryptomeny a virtuálna realita sa tiež stávajú dôležitými aspektmi kasínového priemyslu. Mnohí prevádzkovatelia kasín skúmajú možnosti integrácie kryptomien do svojich platobných systémov, aby prilákali mladšiu generáciu hráčov. Virtuálna realita umožňuje vytváranie inovatívnych herných zážitkov, ktoré by mohli revolucionizovať spôsob, akým hráči interagujú s hrami.

Kasína ako cestovné destinácie

Pre mnohých sú medzinárodné kasína cieľom dovoleniek. Mesto Las Vegas je známe svojimi extravagantnými hotelmi, nočnými klubmi a nespočetnými zábavnými možnosťami. Rovnako tak Monako a Macau lákajú turistov svojou exkluzivitou a eleganciou. Kasína sa stali centrami turistických atrakcií, pričom návštevníci majú prístup nielen k hazardu, ale aj k luxusným zážitkom.

Príležitosti a výzvy

Aj napriek výhodám, ktoré medzinárodné kasína prinášajú, čelí tento priemysel aj mnohým výzvam. Konkurencia medzi kasínami je obrovská, pričom prevádzkovatelia musia neustále inovovať, aby si udržali zákazníkov. Zďaleka nie všetky kasína sú úspešné, a mnohé z nich sa musia zameriavať na marketing, aby prilákali nových hráčov.

Záver

Medzinárodné kasína sú fascinujúcim a dynamickým svetom, kde sa stretáva hazard, kultúra a ekonomika. Bez ohľadu na to, či ste zapálený hráč, alebo len zvedavý turista, kasína ponúkajú množstvo možností na objavovanie a zábavu. Rýchlo sa meniace trendy, regulácie a uvedomenie si zodpovednosti sú neoddeliteľnou súčasťou tohto fascinujúceho priemyslu, ktorý naďalej ovplyvňuje životy mnohých ľudí po celom svete.