Help
RSS
API
Feed
Maltego
Contact
Domain > connect.wecann.academy
×
More information on this domain is in
AlienVault OTX
Is this malicious?
Yes
No
DNS Resolutions
Date
IP Address
2024-07-03
104.26.8.19
(
ClassC
)
2025-07-31
172.67.69.218
(
ClassC
)
Port 80
HTTP/1.1 301 Moved PermanentlyDate: Thu, 31 Jul 2025 15:11:05 GMTContent-Type: text/htmlTransfer-Encoding: chunkedConnection: keep-aliveCF-RAY: 967e06b7de52da91-PDXLocation: https://connect.wecann.academy/cf-cache-status: DYNAMICReport-To: {endpoints:{url:https:\/\/a.nel.cloudflare.com\/report\/v4?sCCsWvUgE3jL4YQZm7j8kXqZMapAY5ihlkNj4cuJMX9Y%2B0kE5KBLrHMKjCvw2ilvr7MFL0YG15rM3xc9Wa2zTuXvUtJaXuMNGxbFL4qmUOdH7p8mZ5DNNXltStGWFicX8xdscWjNaiuM%3D},group:cf-nel,max_age:604800}NEL: {success_fraction:0,report_to:cf-nel,max_age:604800}Server: cloudflarealt-svc: h3:443; ma86400server-timing: cfL4;desc?protoTCP&rtt5687&min_rtt5687&rtt_var2843&sent1&recv3&lost0&retrans0&sent_bytes0&recv_bytes61&delivery_rate0&cwnd244&unsent_bytes0&cid0000000000000000&ts0&x0 html>head>title>301 Moved Permanently/title>/head>body>center>h1>301 Moved Permanently/h1>/center>hr>center>nginx/center>/body>/html>
Port 443
HTTP/1.1 200 OKDate: Thu, 31 Jul 2025 15:11:05 GMTContent-Type: text/html; charsetUTF-8Transfer-Encoding: chunkedConnection: keep-aliveCF-RAY: 967e06b96f16ff06-PDXvary: Accept-Encodinglink: https://connect.wecann.academy/wp-json/>; relhttps://api.w.org/link: https://connect.wecann.academy/wp-json/wp/v2/pages/30>; relalternate; titleJSON; typeapplication/jsonlink: https://connect.wecann.academy/>; relshortlinkx-cache-status: HITx-content-type-options: nosniffx-frame-options: SAMEORIGINreferrer-policy: no-referrer-when-downgradeCache-Control: no-cachestrict-transport-security: max-age31536000; includeSubDomainscf-cache-status: DYNAMICReport-To: {endpoints:{url:https:\/\/a.nel.cloudflare.com\/report\/v4?sL6ht3S6lJg2cFFC6ZFYr4CBLTgTFhGJacZmhYLv3wDfGoadynSRYwdqhTWScDdfgC43Dmy66qoRojh5L4cP8idiYaFVL3doKmez98ncjBDEG5KyTxMmzNhpRP8fLQlSzCbFQ5m3iPpU%3D},group:cf-nel,max_age:604800}NEL: {success_fraction:0,report_to:cf-nel,max_age:604800}Server: cloudflarealt-svc: h3:443; ma86400server-timing: cfL4;desc?protoTCP&rtt5565&min_rtt5563&rtt_var1569&sent5&recv6&lost0&retrans0&sent_bytes2862&recv_bytes733&delivery_rate519275&cwnd252&unsent_bytes0&cide9d642afbd73589e&ts263&x0 !doctype html>html langpt-BR prefixog: https://ogp.me/ns#>head> meta charsetUTF-8> meta nameviewport contentwidthdevice-width, initial-scale1> link relprofile hrefhttps://gmpg.org/xfn/11> style>img:is(sizesauto i, sizes^auto, i) { contain-intrinsic-size: 3000px 1500px }/style> !-- Otimização dos mecanismos de pesquisa pelo Rank Math PRO - https://rankmath.com/ -->title>Home - WeCann Connect/title>meta namedescription contentEmail/>meta namerobots contentfollow, index, max-snippet:-1, max-video-preview:-1, max-image-preview:large/>link relcanonical hrefhttps://connect.wecann.academy/ />meta propertyog:locale contentpt_BR />meta propertyog:type contentwebsite />meta propertyog:title contentHome - WeCann Connect />meta propertyog:description contentEmail />meta propertyog:url contenthttps://connect.wecann.academy/ />meta propertyog:site_name contentWeCann Connect />meta propertyog:updated_time content2024-05-18T14:56:33-03:00 />meta nametwitter:card contentsummary_large_image />meta nametwitter:title contentHome - WeCann Connect />meta nametwitter:description contentEmail />meta nametwitter:label1 contentEscrito por />meta nametwitter:data1 contentWeCann Academy />meta nametwitter:label2 contentTempo para leitura />meta nametwitter:data2 content4 minutos />script typeapplication/ld+json classrank-math-schema-pro>{@context:https://schema.org,@graph:{@type:Person,Organization,@id:https://connect.wecann.academy/#person,name:WeCann Academy,logo:{@type:ImageObject,@id:https://connect.wecann.academy/#logo,url:https://connect.wecann.academy/wp-content/uploads/2023/02/logo-wecann.png,contentUrl:https://connect.wecann.academy/wp-content/uploads/2023/02/logo-wecann.png,caption:WeCann Connect,inLanguage:pt-BR,width:300,height:122},image:{@type:ImageObject,@id:https://connect.wecann.academy/#logo,url:https://connect.wecann.academy/wp-content/uploads/2023/02/logo-wecann.png,contentUrl:https://connect.wecann.academy/wp-content/uploads/2023/02/logo-wecann.png,caption:WeCann Connect,inLanguage:pt-BR,width:300,height:122}},{@type:WebSite,@id:https://connect.wecann.academy/#website,url:https://connect.wecann.academy,name:WeCann Connect,alternateName:Portal de busca de m\u00e9dicos capacitados na prescri\u00e7\u00e3o de produtos \u00e0 base de cannabis,publisher:{@id:https://connect.wecann.academy/#person},inLanguage:pt-BR,potentialAction:{@type:SearchAction,target:https://connect.wecann.academy/?s{search_term_string},query-input:required namesearch_term_string}},{@type:ImageObject,@id:https://connect.wecann.academy/wp-content/uploads/2023/03/user_marketplace.png,url:https://connect.wecann.academy/wp-content/uploads/2023/03/user_marketplace.png,width:200,height:200,inLanguage:pt-BR},{@type:WebPage,@id:https://connect.wecann.academy/#webpage,url:https://connect.wecann.academy/,name:Home - WeCann Connect,datePublished:2023-02-18T15:40:07-03:00,dateModified:2024-05-18T14:56:33-03:00,about:{@id:https://connect.wecann.academy/#person},isPartOf:{@id:https://connect.wecann.academy/#website},primaryImageOfPage:{@id:https://connect.wecann.academy/wp-content/uploads/2023/03/user_marketplace.png},inLanguage:pt-BR}}/script>!-- /Plugin de SEO Rank Math para WordPress -->link relalternate typeapplication/rss+xml titleFeed para WeCann Connect » hrefhttps://connect.wecann.academy/feed/ />link relalternate typeapplication/rss+xml titleFeed de comentários para WeCann Connect » hrefhttps://connect.wecann.academy/comments/feed/ />script>window._wpemojiSettings {baseUrl:https:\/\/s.w.org\/images\/core\/emoji\/16.0.1\/72x72\/,ext:.png,svgUrl:https:\/\/s.w.org\/images\/core\/emoji\/16.0.1\/svg\/,svgExt:.svg,source:{wpemoji:https:\/\/connect.wecann.academy\/wp-includes\/js\/wp-emoji.js?ver6.8.2,twemoji:https:\/\/connect.wecann.academy\/wp-includes\/js\/twemoji.js?ver6.8.2}};/** * @output wp-includes/js/wp-emoji-loader.js *//** * Emoji Settings as exported in PHP via _print_emoji_detection_script(). * @typedef WPEmojiSettings * @type {object} * @property {?object} source * @property {?string} source.concatemoji * @property {?string} source.twemoji * @property {?string} source.wpemoji * @property {?boolean} DOMReady * @property {?Function} readyCallback *//** * Support tests. * @typedef SupportTests * @type {object} * @property {?boolean} flag * @property {?boolean} emoji *//** * IIFE to detect emoji support and load Twemoji if needed. * * @param {Window} window * @param {Document} document * @param {WPEmojiSettings} settings */( function wpEmojiLoader( window, document, settings ) { if ( typeof Promise undefined ) { return; } var sessionStorageKey wpEmojiSettingsSupports; var tests flag, emoji ; /** * Checks whether the browser supports offloading to a Worker. * * @since 6.3.0 * * @private * * @returns {boolean} */ function supportsWorkerOffloading() { return ( typeof Worker ! undefined && typeof OffscreenCanvas ! undefined && typeof URL ! undefined && URL.createObjectURL && typeof Blob ! undefined ); } /** * @typedef SessionSupportTests * @type {object} * @property {number} timestamp * @property {SupportTests} supportTests */ /** * Get support tests from session. * * @since 6.3.0 * * @private * * @returns {?SupportTests} Support tests, or null if not set or older than 1 week. */ function getSessionSupportTests() { try { /** @type {SessionSupportTests} */ var item JSON.parse( sessionStorage.getItem( sessionStorageKey ) ); if ( typeof item object && typeof item.timestamp number && new Date().valueOf() item.timestamp + 604800 && // Note: Number is a week in seconds. typeof item.supportTests object ) { return item.supportTests; } } catch ( e ) {} return null; } /** * Persist the supports in session storage. * * @since 6.3.0 * * @private * * @param {SupportTests} supportTests Support tests. */ function setSessionSupportTests( supportTests ) { try { /** @type {SessionSupportTests} */ var item { supportTests: supportTests, timestamp: new Date().valueOf() }; sessionStorage.setItem( sessionStorageKey, JSON.stringify( item ) ); } catch ( e ) {} } /** * Checks if two sets of Emoji characters render the same visually. * * This is used to determine if the browser is rendering an emoji with multiple data points * correctly. set1 is the emoji in the correct form, using a zero-width joiner. set2 is the emoji * in the incorrect form, using a zero-width space. If the two sets render the same, then the browser * does not support the emoji correctly. * * This function may be serialized to run in a Worker. Therefore, it cannot refer to variables from the containing * scope. Everything must be passed by parameters. * * @since 4.9.0 * * @private * * @param {CanvasRenderingContext2D} context 2D Context. * @param {string} set1 Set of Emoji to test. * @param {string} set2 Set of Emoji to test. * * @return {boolean} True if the two sets render the same. */ function emojiSetsRenderIdentically( context, set1, set2 ) { // Cleanup from previous test. context.clearRect( 0, 0, context.canvas.width, context.canvas.height ); context.fillText( set1, 0, 0 ); var rendered1 new Uint32Array( context.getImageData( 0, 0, context.canvas.width, context.canvas.height ).data ); // Cleanup from previous test. context.clearRect( 0, 0, context.canvas.width, context.canvas.height ); context.fillText( set2, 0, 0 ); var rendered2 new Uint32Array( context.getImageData( 0, 0, context.canvas.width, context.canvas.height ).data ); return rendered1.every( function ( rendered2Data, index ) { return rendered2Data rendered2 index ; } ); } /** * Checks if the center point of a single emoji is empty. * * This is used to determine if the browser is rendering an emoji with a single data point * correctly. The center point of an incorrectly rendered emoji will be empty. A correctly * rendered emoji will have a non-zero value at the center point. * * This function may be serialized to run in a Worker. Therefore, it cannot refer to variables from the containing * scope. Everything must be passed by parameters. * * @since 6.8.2 * * @private * * @param {CanvasRenderingContext2D} context 2D Context. * @param {string} emoji Emoji to test. * * @return {boolean} True if the center point is empty. */ function emojiRendersEmptyCenterPoint( context, emoji ) { // Cleanup from previous test. context.clearRect( 0, 0, context.canvas.width, context.canvas.height ); context.fillText( emoji, 0, 0 ); // Test if the center point (16, 16) is empty (0,0,0,0). var centerPoint context.getImageData(16, 16, 1, 1); for ( var i 0; i centerPoint.data.length; i++ ) { if ( centerPoint.data i ! 0 ) { // Stop checking the moment its known not to be empty. return false; } } return true; } /** * Determines if the browser properly renders Emoji that Twemoji can supplement. * * This function may be serialized to run in a Worker. Therefore, it cannot refer to variables from the containing * scope. Everything must be passed by parameters. * * @since 4.2.0 * * @private * * @param {CanvasRenderingContext2D} context 2D Context. * @param {string} type Whether to test for support of flag or emoji. * @param {Function} emojiSetsRenderIdentically Reference to emojiSetsRenderIdentically function, needed due to minification. * @param {Function} emojiRendersEmptyCenterPoint Reference to emojiRendersEmptyCenterPoint function, needed due to minification. * * @return {boolean} True if the browser can render emoji, false if it cannot. */ function browserSupportsEmoji( context, type, emojiSetsRenderIdentically, emojiRendersEmptyCenterPoint ) { var isIdentical; switch ( type ) { case flag: /* * Test for Transgender flag compatibility. Added in Unicode 13. * * To test for support, we try to render it, and compare the rendering to how it would look if * the browser doesnt render it correctly (white flag emoji + transgender symbol). */ isIdentical emojiSetsRenderIdentically( context, \uD83C\uDFF3\uFE0F\u200D\u26A7\uFE0F, // as a zero-width joiner sequence \uD83C\uDFF3\uFE0F\u200B\u26A7\uFE0F // separated by a zero-width space ); if ( isIdentical ) { return false; } /* * Test for Sark flag compatibility. This is the least supported of the letter locale flags, * so gives us an easy test for full support. * * To test for support, we try to render it, and compare the rendering to how it would look if * the browser doesnt render it correctly (C + Q). */ isIdentical emojiSetsRenderIdentically( context, \uD83C\uDDE8\uD83C\uDDF6, // as the sequence of two code points \uD83C\uDDE8\u200B\uD83C\uDDF6 // as the two code points separated by a zero-width space ); if ( isIdentical ) { return false; } /* * Test for English flag compatibility. England is a country in the United Kingdom, it * does not have a two letter locale code but rather a five letter sub-division code. * * To test for support, we try to render it, and compare the rendering to how it would look if * the browser doesnt render it correctly (black flag emoji + G + B + E + N + G). */ isIdentical emojiSetsRenderIdentically( context, // as the flag sequence \uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67\uDB40\uDC7F, // with each code point separated by a zero-width space \uD83C\uDFF4\u200B\uDB40\uDC67\u200B\uDB40\uDC62\u200B\uDB40\uDC65\u200B\uDB40\uDC6E\u200B\uDB40\uDC67\u200B\uDB40\uDC7F ); return ! isIdentical; case emoji: /* * Does Emoji 16.0 cause the browser to go splat? * * To test for Emoji 16.0 support, try to render a new emoji: Splatter. * * The splatter emoji is a single code point emoji. Testing for browser support * required testing the center point of the emoji to see if it is empty. * * 0xD83E 0xDEDF (\uD83E\uDEDF) Splatter. * * When updating this test, please ensure that the emoji is either a single code point * or switch to using the emojiSetsRenderIdentically function and testing with a zero-width * joiner vs a zero-width space. */ var notSupported emojiRendersEmptyCenterPoint( context, \uD83E\uDEDF ); return ! notSupported; } return false; } /** * Checks emoji support tests. * * This function may be serialized to run in a Worker. Therefore, it cannot refer to variables from the containing * scope. Everything must be passed by parameters. * * @since 6.3.0 * * @private * * @param {string} tests Tests. * @param {Function} browserSupportsEmoji Reference to browserSupportsEmoji function, needed due to minification. * @param {Function} emojiSetsRenderIdentically Reference to emojiSetsRenderIdentically function, needed due to minification. * @param {Function} emojiRendersEmptyCenterPoint Reference to emojiRendersEmptyCenterPoint function, needed due to minification. * * @return {SupportTests} Support tests. */ function testEmojiSupports( tests, browserSupportsEmoji, emojiSetsRenderIdentically, emojiRendersEmptyCenterPoint ) { var canvas; if ( typeof WorkerGlobalScope ! undefined && self instanceof WorkerGlobalScope ) { canvas new OffscreenCanvas( 300, 150 ); // Dimensions are default for HTMLCanvasElement. } else { canvas document.createElement( canvas ); } var context canvas.getContext( 2d, { willReadFrequently: true } ); /* * Chrome on OS X added native emoji rendering in M41. Unfortunately, * it doesnt work when the font is bolder than 500 weight. So, we * check for bold rendering support to avoid invisible emoji in Chrome. */ context.textBaseline top; context.font 600 32px Arial; var supports {}; tests.forEach( function ( test ) { supports test browserSupportsEmoji( context, test, emojiSetsRenderIdentically, emojiRendersEmptyCenterPoint ); } ); return supports; } /** * Adds a script to the head of the document. * * @ignore * * @since 4.2.0 * * @param {string} src The url where the script is located. * * @return {void} */ function addScript( src ) { var script document.createElement( script ); script.src src; script.defer true; document.head.appendChild( script ); } settings.supports { everything: true, everythingExceptFlag: true }; // Create a promise for DOMContentLoaded since the worker logic may finish after the event has fired. var domReadyPromise new Promise( function ( resolve ) { document.addEventListener( DOMContentLoaded, resolve, { once: true } ); } ); // Obtain the emoji support from the browser, asynchronously when possible. new Promise( function ( resolve ) { var supportTests getSessionSupportTests(); if ( supportTests ) { resolve( supportTests ); return; } if ( supportsWorkerOffloading() ) { try { // Note that the functions are being passed as arguments due to minification. var workerScript postMessage( + testEmojiSupports.toString() + ( + JSON.stringify( tests ), browserSupportsEmoji.toString(), emojiSetsRenderIdentically.toString(), emojiRendersEmptyCenterPoint.toString() .join( , ) + ));; var blob new Blob( workerScript , { type: text/javascript } ); var worker new Worker( URL.createObjectURL( blob ), { name: wpTestEmojiSupports } ); worker.onmessage function ( event ) { supportTests event.data; setSessionSupportTests( supportTests ); worker.terminate(); resolve( supportTests ); }; return; } catch ( e ) {} } supportTests testEmojiSupports( tests, browserSupportsEmoji, emojiSetsRenderIdentically, emojiRendersEmptyCenterPoint ); setSessionSupportTests( supportTests ); resolve( supportTests ); } ) // Once the browser emoji support has been obtained from the session, finalize the settings. .then( function ( supportTests ) { /* * Tests the browser support for flag emojis and other emojis, and adjusts the * support settings accordingly. */ for ( var test in supportTests ) { settings.supports test supportTests test ; settings.supports.everything settings.supports.everything && settings.supports test ; if ( flag ! test ) { settings.supports.everythingExceptFlag settings.supports.everythingExceptFlag && settings.supports test ; } } settings.supports.everythingExceptFlag settings.supports.everythingExceptFlag && ! settings.supports.flag; // Sets DOMReady to false and assigns a ready function to settings. settings.DOMReady false; settings.readyCallback function () { settings.DOMReady true; }; } ) .then( function () { return domReadyPromise; } ) .then( function () { // When the browser can not render everything we need to load a polyfill. if ( ! settings.supports.everything ) { settings.readyCallback(); var src settings.source || {}; if ( src.concatemoji ) { addScript( src.concatemoji ); } else if ( src.wpemoji && src.twemoji ) { addScript( src.twemoji ); addScript( src.wpemoji ); } } } );} )( window, document, window._wpemojiSettings );/script>style idwp-emoji-styles-inline-css> img.wp-smiley, img.emoji { display: inline !important; border: none !important; box-shadow: none !important; height: 1em !important; width: 1em !important; margin: 0 0.07em !important; vertical-align: -0.1em !important; background: none !important; padding: 0 !important; }/style>style idclassic-theme-styles-inline-css>/** * These rules are needed for backwards compatibility. * They should match the button element rules in the base theme.json file. */.wp-block-button__link { color: #ffffff; background-color: #32373c; border-radius: 9999px; /* 100% causes an oval, but any explicit but really high value retains the pill shape. */ /* This needs a low specificity so it wont override the rules from the button element if defined in theme.json. */ box-shadow: none; text-decoration: none; /* The extra 2px are added to size solids the same as the outline versions.*/ padding: calc(0.667em + 2px) calc(1.333em + 2px); font-size: 1.125em;}.wp-block-file__button { background: #32373c; color: #ffffff; text-decoration: none;}/style>style idrank-math-toc-block-style-inline-css>.wp-block-rank-math-toc-block nav ol{counter-reset:item}.wp-block-rank-math-toc-block nav ol li{display:block}.wp-block-rank-math-toc-block nav ol li:before{content:counters(item, .) . ;counter-increment:item}/style>style idglobal-styles-inline-css>:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);--wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);}:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}:root :where(.wp-block-pullquote){font-size: 1.5em;line-height: 1.6;}/style>link relstylesheet idcontact-form-7-css hrefhttps://connect.wecann.academy/wp-content/plugins/contact-form-7/includes/css/styles.css?ver5.9.8 mediaall />link relstylesheet id_var_www_connect-wecann-academy_htdocs_wp-content_themes_hello-elementor-child_view_agendamento-style-css hrefhttps://connect.wecann.academy/wp-content/themes/hello-elementor-child/view/agendamento.style.css?ver1715298827 mediaall />link relstylesheet id_var_www_connect-wecann-academy_htdocs_wp-content_themes_hello-elementor-child_view_read-medico-style-css hrefhttps://connect.wecann.academy/wp-content/themes/hello-elementor-child/view/read-medico.style.css?ver1715985593 mediaall />link relstylesheet idparent-style-css hrefhttps://connect.wecann.academy/wp-content/themes/hello-elementor-child/style.css mediaall />link relstylesheet idchild-style-css hrefhttps://connect.wecann.academy/wp-content/themes/hello-elementor-child/style.css?ver1753565678 mediaall />link relstylesheet idhello-elementor-css hrefhttps://connect.wecann.academy/wp-content/themes/hello-elementor/style.css?ver3.1.0 mediaall />link relstylesheet idhello-elementor-theme-style-css hrefhttps://connect.wecann.academy/wp-content/themes/hello-elementor/theme.css?ver3.1.0 mediaall />link relstylesheet idhello-elementor-header-footer-css hrefhttps://connect.wecann.academy/wp-content/themes/hello-elementor/header-footer.css?ver3.1.0 mediaall />link relstylesheet idelementor-frontend-css hrefhttps://connect.wecann.academy/wp-content/plugins/elementor/assets/css/frontend.css?ver3.22.3 mediaall />link relstylesheet idelementor-post-10-css hrefhttps://connect.wecann.academy/wp-content/uploads/elementor/css/post-10.css?ver1719856000 mediaall />link relstylesheet idelementor-icons-css hrefhttps://connect.wecann.academy/wp-content/plugins/elementor/assets/lib/eicons/css/elementor-icons.css?ver5.30.0 mediaall />link relstylesheet idswiper-css hrefhttps://connect.wecann.academy/wp-content/plugins/elementor/assets/lib/swiper/v8/css/swiper.css?ver8.4.5 mediaall />link relstylesheet idelementor-pro-css hrefhttps://connect.wecann.academy/wp-content/plugins/elementor-pro/assets/css/frontend.css?ver3.21.3 mediaall />link relstylesheet idelementor-global-css hrefhttps://connect.wecann.academy/wp-content/uploads/elementor/css/global.css?ver1719856001 mediaall />link relstylesheet idelementor-post-30-css hrefhttps://connect.wecann.academy/wp-content/uploads/elementor/css/post-30.css?ver1719856001 mediaall />link relstylesheet idelementor-post-99-css hrefhttps://connect.wecann.academy/wp-content/uploads/elementor/css/post-99.css?ver1719856001 mediaall />link relstylesheet idelementor-post-103-css hrefhttps://connect.wecann.academy/wp-content/uploads/elementor/css/post-103.css?ver1719856001 mediaall />link relstylesheet idgoogle-fonts-1-css hrefhttps://fonts.googleapis.com/css?familyOpen+Sans%3A100%2C100italic%2C200%2C200italic%2C300%2C300italic%2C400%2C400italic%2C500%2C500italic%2C600%2C600italic%2C700%2C700italic%2C800%2C800italic%2C900%2C900italic&displayswap&ver6.8.2 mediaall />link relstylesheet idelementor-icons-shared-0-css hrefhttps://connect.wecann.academy/wp-content/plugins/elementor/assets/lib/font-awesome/css/fontawesome.css?ver5.15.3 mediaall />link relstylesheet idelementor-icons-fa-regular-css hrefhttps://connect.wecann.academy/wp-content/plugins/elementor/assets/lib/font-awesome/css/regular.css?ver5.15.3 mediaall />link relpreconnect hrefhttps://fonts.gstatic.com/ crossorigin>script srchttps://connect.wecann.academy/wp-content/themes/hello-elementor-child/view/agendamento.script.js?ver1715213145 id_var_www_connect-wecann-academy_htdocs_wp-content_themes_hello-elementor-child_view_agendamento-script-js>/script>script srchttps://connect.wecann.academy/wp-content/themes/hello-elementor-child/view/read-medico.script.js?ver1715105631 id_var_www_connect-wecann-academy_htdocs_wp-content_themes_hello-elementor-child_view_read-medico-script-js>/script>link relhttps://api.w.org/ hrefhttps://connect.wecann.academy/wp-json/ />link relalternate titleJSON typeapplication/json hrefhttps://connect.wecann.academy/wp-json/wp/v2/pages/30 />link relEditURI typeapplication/rsd+xml titleRSD hrefhttps://connect.wecann.academy/xmlrpc.php?rsd />meta namegenerator contentWordPress 6.8.2 />link relshortlink hrefhttps://connect.wecann.academy/ />link relalternate titleoEmbed (JSON) typeapplication/json+oembed hrefhttps://connect.wecann.academy/wp-json/oembed/1.0/embed?urlhttps%3A%2F%2Fconnect.wecann.academy%2F />link relalternate titleoEmbed (XML) typetext/xml+oembed hrefhttps://connect.wecann.academy/wp-json/oembed/1.0/embed?urlhttps%3A%2F%2Fconnect.wecann.academy%2F&formatxml />meta namegenerator contentElementor 3.22.3; features: e_optimized_assets_loading, e_optimized_css_loading, additional_custom_breakpoints; settings: css_print_method-external, google_font-enabled, font_display-swap>!-- Google Tag Manager -->script>(function(w,d,s,l,i){wlwl||;wl.push({gtm.start:new Date().getTime(),event:gtm.js});var fd.getElementsByTagName(s)0,jd.createElement(s),dll!dataLayer?&l+l:;j.asynctrue;j.srchttps://www.googletagmanager.com/gtm.js?id+i+dl;f.parentNode.insertBefore(j,f);})(window,document,script,dataLayer,GTM-KJ65GV7R);/script>!-- End Google Tag Manager --> style idwp-custom-css> .med_social .med_social_links .med_linkedin { width: 27px;}.med_social .med_social_links .med_instagram, .med_social .med_social_links .med_facebook { width: 28px;}.med_social hr { height: 3px; background-color: #f5f5f5 !important; color: #f5f5f5; border: none; margin-bottom: 20px !important; margin-top: 0px !important;}.page-id-531 #footer-social { background-color: #FFF;}.page-id-531 #footer-social { background-color: #FFF;}.wc-multicampo { margin: 10px 0px 10px;}.wc-multicampo .wc-multicampo-field { height: 42px;}#pagina-medicos .wc-lista-resultado-item-especialidades p { border-radius: 22px; background-color: #15443e; color: #fff; margin-right: 5px; padding: 1px 4px; font-size: 13px; font-weight: 400; margin-bottom: 5px; padding: 2px 10px;}.wc-multicampo .wc-multicampo-search { align-items: center;/* height: 42px !important; */ overflow-y: scroll;} /style> /head>body classhome wp-singular page-template page-template-elementor_header_footer page page-id-30 wp-theme-hello-elementor wp-child-theme-hello-elementor-child elementor-default elementor-template-full-width elementor-kit-10 elementor-page elementor-page-30>!-- Google Tag Manager (noscript) -->noscript>iframe srchttps://www.googletagmanager.com/ns.html?idGTM-KJ65GV7Rheight0 width0 styledisplay:none;visibility:hidden>/iframe>/noscript>!-- End Google Tag Manager (noscript) -->a classskip-link screen-reader-text href#content>Ir para o conteúdo/a> div data-elementor-typeheader data-elementor-id99 classelementor elementor-99 elementor-location-header data-elementor-post-typeelementor_library> div classelementor-element elementor-element-f3262ec e-flex e-con-boxed e-con e-parent data-idf3262ec data-element_typecontainer> div classe-con-inner> div classelementor-element elementor-element-c7d1aa9 e-con-full e-flex e-con e-child data-idc7d1aa9 data-element_typecontainer> div classelementor-element elementor-element-0dfcd17 elementor-widget elementor-widget-image data-id0dfcd17 data-element_typewidget data-widget_typeimage.default> div classelementor-widget-container> a hrefhttps://connect.wecann.academy> script typetext/javascript styledisplay:none>//!CDATAwindow.__mirage2 {petok:DCCJPq5iCv2gdXGr0Of4nBGuurnyJUllgOUMfIrWVFU-1800-0.0.1.1};//>/script>script typetext/javascript srchttps://ajax.cloudflare.com/cdn-cgi/scripts/04b3eb47/cloudflare-static/mirage2.min.js>/script>img fetchpriorityhigh width600 height238 classattachment-large size-large wp-image-3050 alt srcsethttps://connect.wecann.academy/wp-content/uploads/2023/02/logo-wecann-connect.png 600w, https://connect.wecann.academy/wp-content/uploads/2023/02/logo-wecann-connect-300x119.png 300w sizes(max-width: 600px) 100vw, 600px data-cfsrchttps://connect.wecann.academy/wp-content/uploads/2023/02/logo-wecann-connect.png styledisplay:none;visibility:hidden; />noscript>img fetchpriorityhigh width600 height238 srchttps://connect.wecann.academy/wp-content/uploads/2023/02/logo-wecann-connect.png classattachment-large size-large wp-image-3050 alt srcsethttps://connect.wecann.academy/wp-content/uploads/2023/02/logo-wecann-connect.png 600w, https://connect.wecann.academy/wp-content/uploads/2023/02/logo-wecann-connect-300x119.png 300w sizes(max-width: 600px) 100vw, 600px/>/noscript> /a> /div> /div> /div> div classelementor-element elementor-element-672452a e-con-full elementor-hidden-tablet elementor-hidden-mobile e-flex e-con e-child data-id672452a data-element_typecontainer> /div> div classelementor-element elementor-element-fbe3a4b e-con-full e-flex e-con e-child data-idfbe3a4b data-element_typecontainer> div classelementor-element elementor-element-d8933c0 btn-primary elementor-align-right elementor-widget elementor-widget-button data-idd8933c0 data-element_typewidget data-widget_typebutton.default> div classelementor-widget-container> div classelementor-button-wrapper> a classelementor-button elementor-button-link elementor-size-sm hrefhttps://connect.wecann.academy/lista-medicos/> span classelementor-button-content-wrapper> span classelementor-button-text>Busque Médicos/span> /span> /a> /div> /div> /div> div classelementor-element elementor-element-4208b1d btn-primary elementor-align-right elementor-widget elementor-widget-button data-id4208b1d data-element_typewidget data-widget_typebutton.default> div classelementor-widget-container> div classelementor-button-wrapper> a classelementor-button elementor-button-link elementor-size-sm href/receba-pacientes/> span classelementor-button-content-wrapper> span classelementor-button-text>Receba Pacientes/span> /span> /a> /div> /div> /div> /div> /div> /div> /div> div data-elementor-typewp-page data-elementor-id30 classelementor elementor-30 data-elementor-post-typepage> div classelementor-element elementor-element-b60f8ed e-con-full elementor-hidden-desktop elementor-hidden-tablet elementor-hidden-mobile e-flex e-con e-parent data-idb60f8ed data-element_typecontainer> div classelementor-element elementor-element-e4decaa elementor-widget elementor-widget-html data-ide4decaa data-element_typewidget data-widget_typehtml.default> div classelementor-widget-container> script srchttps://cdn.jsdelivr.net/npm/particles.js@2.0.0/particles.min.js>/script>!-- particles.js container -->div idparticles-js> h1>Encontre médicos capacitados na prescrição segura e eficaz de cannabis medicinal/h1>/div>style> #particles-js { background-image: linear-gradient(-45deg, #508975, #184A4D, #134137, #20714F); background-repeat: no-repeat; background-size: cover; background-position: 50% 50%; height: 460px;}#particles-js h1 { color: #FFFFFF; font-family: Open Sans, Sans-serif; font-size: 46px; font-weight: 700; line-height: 48px; position: absolute; text-align: center; width: 80%; margin: 210px auto 60px; left: 50%; transform: translate(-50%, -50%);}/style>script> /* ---- particles.js config ---- */particlesJS(particles-js, { particles: { number: { value: 200, density: { enable: true, value_area: 600 }, }, color: { value: #e4914f }, shape: { type: circle, stroke: { width: 1, color: #e4914f }, polygon: { nb_sides: 3 }, image: { src: img/github.svg, width: 100, height: 100 } }, opacity: { value: 0.5, random: false, anim: { enable: false, speed: 1, opacity_min: 0.1, sync: false } }, size: { value: 3, random: true, anim: { enable: false, speed: 40, size_min: 0.1, sync: false } }, line_linked: { enable: true, distance: 150, color: #e4914f, opacity: 0.4, width: 1 }, move: { enable: true, speed: 1, direction: none, random: false, straight: false, out_mode: out, bounce: false, attract: { enable: false, rotateX: 600, rotateY: 1200 } } }, interactivity: { detect_on: canvas, events: { onhover: { enable: true, mode: grab }, onclick: { enable: false, mode: bubble }, resize: true }, modes: { grab: { distance: 140, line_linked: { opacity: 1 } }, bubble: { distance: 00, size: 80, duration: 2, opacity: 8, speed: 3 }, repulse: { distance: 100, duration: 0.2 }, push: { particles_nb: 4 }, remove: { particles_nb: 2 } } }, retina_detect: true});/script> /div> /div> /div> section classelementor-section elementor-top-section elementor-element elementor-element-e6b0788 elementor-section-height-min-height elementor-section-boxed elementor-section-height-default elementor-section-items-middle data-ide6b0788 data-element_typesection data-settings{"background_background":"classic"}> div classelementor-background-overlay>/div> div classelementor-container elementor-column-gap-default> div classelementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-cff1ecc data-idcff1ecc data-element_typecolumn> div classelementor-widget-wrap elementor-element-populated> div classelementor-element elementor-element-252a12a elementor-widget elementor-widget-heading data-id252a12a data-element_typewidget idheadline-banner data-widget_typeheading.default> div classelementor-widget-container> h1 classelementor-heading-title elementor-size-default>Encontre span>médicos capacitados/span> nabr>prescrição span>segura e eficaz/span> debr>span>cannabis medicinal/span>/h1> /div> /div> /div> /div> /div> /section> div classelementor-element elementor-element-3d3a088 e-flex e-con-boxed e-con e-parent data-id3d3a088 data-element_typecontainer> div classe-con-inner> div classelementor-element elementor-element-64cc384 elementor-widget elementor-widget-html data-id64cc384 data-element_typewidget data-widget_typehtml.default> div classelementor-widget-container> div classwc-estado data-identificadorestado data-filtros-endpointhttps://connect.wecann.academy/wp-json/api/v1/acf/ data-resultados-endpointhttps://connect.wecann.academy/lista-medicos/ >/div>div idbusca-medicos classelementor-section elementor-section-boxed> div classelementor-container elementor-column-gap-default> form idfrmSearch> div idsearch> div classwc-multicampo-posicao data-nomeassunto data-categorias-chavesespec,doencas,sintomas data-categorias-nomesEspecialidade,Doença,Sintoma data-estadoestado data-placeholderespecialidade, doença ou sintoma >/div> div classwc-multicampo-posicao data-nomelocalidade data-categorias-chavesendereco_med_cidade,endereco_med_estado data-categorias-nomesCidade,Estado data-estadoestado data-placeholderestado ou região >/div> button idsumbitSearch typesubmit>Busque médicos/button> /div> /form> /div>/div>style> .wc-multicampo .wc-multicampo-search .wc-multicampo-chipdata-categoriaespec { background-color: #3D7870; } .wc-multicampo .wc-multicampo-search .wc-multicampo-chipdata-categoriadoencas { background-color: #15453F; } .wc-multicampo .wc-multicampo-search .wc-multicampo-chipdata-categoriasintomas { background-color: #79ABA4; } .wc-multicampo .wc-multicampo-search .wc-multicampo-chipdata-categoriaendereco_med_cidade { background-color: #15453F; } .wc-multicampo .wc-multicampo-search .wc-multicampo-chipdata-categoriaendereco_med_estado { background-color: #79ABA4; }/style>template idwc-multicampo-template> div classwc-multicampo styleborder: 1px solid black> div classwc-multicampo-search> input typesearch classwc-multicampo-field , autocompleteoff> /div> ul classwc-multicampo-autocomplete>/ul> style> .wc-multicampo .wc-multicampo-search { display:flex; flex-direction:row; flex-wrap: wrap; max-height: 80px; overflow: auto; } .wc-multicampo .wc-multicampo-field { border:none; width:5vw; flex-grow:1; padding: 5px; } .wc-multicampo .wc-multicampo-field:focus-visible { outline: none; } /style> /div>/template>template idwc-multicampo-chip-template> div classwc-multicampo-chip> p stylemargin:0; margin-right:10px;>/p> i classfa fa-times stylecolor: white; font-size:12px;>/i> style> .wc-multicampo .wc-multicampo-chip { padding: calc(0.5rem - 2px) .5rem; margin: 2px; border-radius: 3px; background-color: forestgreen; color: floralwhite; display: flex; flex-direction: row; align-items: center; cursor: pointer; } /style> /div>/template>template idwc-multicampo-autocomplete-template> div classwc-multicampo-autocomplete-line> p classwc-multicampo-valor>/p> p classwc-multicampo-categoria>/p> /div>/template>template idwc-lista-resultado-item-template> div classwc-lista-resultado-item> div classwc-lista-resultado-item-avatar> img decodingasync classwc-lista-resultado-item-avatar-imagem altuser marketplace titleHome 1 data-cfsrchttps://connect.wecann.academy/wp-content/uploads/2023/03/user_marketplace.png styledisplay:none;visibility:hidden;>noscript>img decodingasync classwc-lista-resultado-item-avatar-imagem srchttps://connect.wecann.academy/wp-content/uploads/2023/03/user_marketplace.png altuser marketplace titleHome 1>/noscript>!-- i aria-hiddentrue classwc-lista-resultado-item-avatar-selo fas fa-medal>/i> --> /div> div classwc-lista-resultado-item-conteudo> div classwc-lista-resultado-item-coluna> a classwc-lista-resultado-item-link>h3 classwc-lista-resultado-item-nome>/h3>/a> div classwc-lista-resultado-item-especialidades>/div> p classwc-lista-resultado-item-local>/p> p classwc-lista-resultado-item-atendimento>/p> /div> div classwc-lista-resultado-item-coluna> p classwc-lista-resultado-item-crm>/p> button classwc-lista-resultado-item-consulta>/button> /div> div classwc-lista-resultado-item-modal-bg> div classwc-lista-resultado-item-modal> p>Email/p> p>Telefone/p> p>Linkedin/p> p>Instagram/p> p>Facebook/p> p>Cidade/p> p>Estado/p> /div> /div> /div> /div>/template>template idwc-checkboxgroup-template> div classwc-checkboxgroup> ul classwc-checkboxgroup-wrapper>/ul> /div> style> .wc-checkboxgroup { } .wc-checkboxgroup .wc-checkboxgroup-wrapper { } /style>/template>template idwc-checkboxgroup-box-template> li classwc-checkboxgroup-box> input typecheckbox classwc-checkboxgroup-field> label> p classwc-checkboxgroup-valor>/p> p classwc-checkboxgroup-categoria>/p> /label> /li>/template>script>class MultiCampo { /** VARIÁVEIS DE CLASSE. IGUAIS PARA TODAS AS INSTÃNCIAS. SEPARADAS AQUI PARA LEGIBILIDADE */ // seletor template geral do componente. seletorTemplate #wc-multicampo-template; // prefixo do seletor de posicao (será concatenado com nome do campo para especificar posicao). prefixoSeletorPosicao .wc-multicampo-posicao; // seletor do template geral do componente. seletorTemplateAutocomplete #wc-multicampo-autocomplete-template; // seletor do campo de busca em relação ao seletor de posição seletorBusca .wc-multicampo .wc-multicampo-field; // seletor do container da busca seletorWrapperBusca .wc-multicampo-search; // seletor do container dos chips seletorTemplateChip #wc-multicampo-chip-template; // seletor de chips seletorChip .wc-multicampo-chip; // seletor do container de autocomplete em relação ao seletor de posição seletorAutocomplete .wc-multicampo .wc-multicampo-autocomplete; // seletor da categoria dentro do autocomplete seletorCategoriaAutocomplete .wc-multicampo-autocomplete-line .wc-multicampo-categoria; // seletor do valor dentro do autocomplete seletorValorAutocomplete .wc-multicampo-autocomplete-line .wc-multicampo-valor; /** CONSTRUTOR */ constructor(estado, nome, mapaCategorias, placeholder ) { // salva parâmetros internamente this.inicializarParametros(estado, nome, mapaCategorias, placeholder); // cria estado this.registrarDomExterno(); // injeta componente usando template this.injetarComponente(); // salva elementos do DOM do componente já montado usando seletores estaticos this.registrarDomInterno(); // define atributos únicos do DOM interno que não estavam no template this.configurarDomInterno(); // começa a ouvir eventos this.ouvirEventos(); } /** PASSOS DO CONSTRUTOR */ inicializarParametros(estado, nome, mapaCategorias, placeholder) { // salva internamente parâmetros únicos dessa instância do componente this.estado estado; this.nome nome; this.placeholder placeholder; this.mapaCategorias mapaCategorias; const containerTemplateComponente document.querySelector(this.seletorTemplate); this.templateComponente containerTemplateComponente.content.querySelector(div); const containerTemplateChip document.querySelector(this.seletorTemplateChip); this.templateChip containerTemplateChip.content.querySelector(div); const containerTemplateAutocomplete document.querySelector(this.seletorTemplateAutocomplete); this.templateAutocomplete containerTemplateAutocomplete.content.querySelector(div); } registrarDomExterno() { // salva internamente elementos encontrados usando variáveis estáticas this.posicao document.querySelector(this.prefixoSeletorPosicao + data-nome + this.nome + ); } injetarComponente() { // adiciona html do componente baseado no template ao elemento de posicao const componente document.importNode(this.templateComponente, true); componente.querySelector(input).setAttribute(placeholder, this.placeholder); this.posicao.appendChild(componente); } registrarDomInterno() { // salva internamente os elementos de busca e autocomplete após o componente ser criado this.busca this.posicao.querySelector(this.seletorBusca); this.wrapperBusca this.posicao.querySelector(this.seletorWrapperBusca); this.autocomplete this.posicao.querySelector(this.seletorAutocomplete); this.seletorTemplateAutocomplete this.posicao.querySelector(this.seletorTemplateAutocomplete); } configurarDomInterno() { // coloca nome recebido no campo interno this.busca.name this.nome; // faz o wrapper de busca focar no campo this.wrapperBusca.addEventListener(click, () > this.busca.focus()); } ouvirEventos() { // configura listeners de eventos do campo de busca this.busca.addEventListener(focus, () > this.mostrarAutocomplete()); this.busca.addEventListener(blur, () > this.esconderAutocomplete()); this.busca.addEventListener(input, () > this.atualizarAutocomplete()); } /** INICIALIZACAO DOS VALORES */ async inicializarValor() { await this.atualizarPorUrl(); this.atualizarDadosAutocomplete(); } /** REAÇÕES A EVENTOS DO CAMPO DE BUSCA */ mostrarAutocomplete() { this.autocomplete.classList.add(visible) } esconderAutocomplete() { this.autocomplete.classList.remove(visible) } async atualizarAutocomplete() { // remove parametros da url// this.removerParamUrl();// // limpa estado enquanto usuario busca outro valor// this.estado.limparParametro(this.nome); // sugere autocomplete de acordo com novo texto da busca await this.atualizarDadosAutocomplete(); } /** REAÇÕES A EVENTO DO AUTOCOMPLETE */ async adicionarBuscaExecutando(categoria, valor) { // remove parametros da url// this.limparParamUrl(); // atualiza url this.adicionarParamUrl(categoria, valor); // define valor da busca await this.adicionarBusca(categoria, valor); } async removerBuscaExecutando(categoria, valor) { // remove parametros da url// this.limparParamUrl(); // atualiza url this.removerParamUrl(categoria, valor); // define valor da busca await this.removerBusca(categoria, valor); } /** FUNCIONAMENTO DA BUSCA */ async adicionarBusca(categoria, valor) { // controi html do chip baseado no seu template let chip document.importNode(this.templateChip, true); const chipText chip.querySelector(p); // define propriedades do chip para busca chip.dataset.categoria categoria; chip.dataset.valor valor; // define texto do chip chipText.textContent valor; // adiciona remoçao do chip no evento de click const onChipClick (event, categoria, valor) > { event.stopPropagation(); this.removerBuscaExecutando(categoria, valor); } chip.addEventListener(click, (event) > onChipClick(event, categoria, valor), true); // atualiza texto do campo de busca this.wrapperBusca.insertBefore(chip, this.busca); // atualiza estado para novo valor do filtro this.estado.adicionarParametro(Object.keys(this.mapaCategorias), categoria, valor); // limpa campo de busca this.busca.value ; // sugere autocomplete de acordo com novo texto da busca await this.atualizarDadosAutocomplete(); } async removerBusca(categoria, valor) { // busca html do chip usando dados let chip this.wrapperBusca.querySelector(this.seletorChip + `data-categoria${categoria}data-valor${valor}`); // remove chip chip.remove(); // remove parametro do filtro this.estado.removerParametro(Object.keys(this.mapaCategorias), categoria, valor); // sugere autocomplete de acordo com novo texto da busca await this.atualizarDadosAutocomplete(); }// async definirBusca(categoria, valor) {// // adiciona chip de busca do novo valor// this.busca.value valor;// this.estado.trocarParametro(this.nome, categoria, valor);// // sugere autocomplete de acordo com novo texto da busca// await this.atualizarDadosAutocomplete();// } /** FUNCIONAMENTO DO AUTOCOMPLETE */ async atualizarDadosAutocomplete() { // traz texto da busca do campo const valorBusca this.busca.value; // extrai chaves das categorias do mapa de categorias e converte em parametro de query const categoriasUsadas Object.keys(this.mapaCategorias); // busca na api usando o texto const dados await this.estado.buscarOpcoes(categoriasUsadas, valorBusca); // cria aray de dados legíveis usando nomes das categorias ao invés de chaves const dadosLegiveis {}; // deleta linhas do autocomplete anterior this.autocomplete.innerHTML ; // extrai categorias dos dados retornados const categorias Object.keys(dados) // itera por cada valor adicionando-o ao DOM for(let categoria of categorias) { const valores Object.values(dadoscategoria); for(let valor of valores) { let chip this.wrapperBusca.querySelector(this.seletorChip + `data-categoria${categoria}data-valor${valor}`); if (chip) { continue; } // converte chave da categoria em nome legível usando mapa de categorias const nomeCategoria this.mapaCategoriascategoria; // controi html da linha baseado no seu template let linha document.importNode(this.templateAutocomplete, true); // coloca o nome da categoria no elemento correspondente dentro da linha const elementoCategoria linha.querySelector(this.seletorCategoriaAutocomplete); elementoCategoria.textContent nomeCategoria; // coloca o nome valor no elemento correspondente dentro da linha const elementoValor linha.querySelector(this.seletorValorAutocomplete); elementoValor.textContent valor; // cria evento para mudar o valor da busca ao clicar numa linha linha.addEventListener(mousedown, () > this.adicionarBuscaExecutando(categoria, valor)); // adiciona linha ao elemento de autocomplete this.autocomplete.appendChild(linha); } } } /** FUNCIONAMENTO POR URL */// limparParamUrl(categoria, valor) {// // extrai parametros da url// const paramsString window.location.search;// const params new URLSearchParams(paramsString);// // lista chaves de categorias// const categorias Object.keys(this.mapaCategorias);// // se uma categoria está nos parametros, remove// for (let categoria of categorias) {// if (params.has(categoria)) {// params.delete(categoria);// }// }// // converte parametros para queryString// let novosParams ;// for (const key, value of params.entries()) {// novosParams.push(key + + value);// }// const novaParamsString ? + novosParams.join(&);// // substitui url atual// window.history.replaceState(novaParamsString, , novaParamsString);// } removerParamUrl(categoria, valor) { // extrai parametros da url const paramsString window.location.search; const params new URLSearchParams(paramsString); // divide string no pipe, filtra valor e junta string com pipes novamente paramscategoria params.get(categoria).split(|) .filter(param > param valor).join(|); // converte parametros para queryString let novosParams ; for (const key, value of params.entries()) { let valores value.split(|); valores valores.filter(valorParam > valorParam ! valor); valores valores.join(|); if (valores ! ) { novosParams.push(key + + valores); } } const novaParamsString ? + novosParams.join(&); // substitui url atual window.history.replaceState(novaParamsString, , novaParamsString); } adicionarParamUrl(categoria, valor) { // extrai parametros da url const paramsString window.location.search; const params new URLSearchParams(paramsString); // se categoria ja esta nos parametros, adiciona valor ao parametro if (params.has(categoria)) { const novoValor params.get(categoria) + | + valor; params.set(categoria, novoValor); } // senao, cria categoria com valor else { params.append(categoria, valor); } // converte parametros para queryString let novosParams ; for (const key, value of params.entries()) { novosParams.push(key + + value); } const novaParamsString ? + novosParams.join(&); // substitui url atual window.history.replaceState(novaParamsString, , novaParamsString); } atualizarPorUrl() { // extrai parametros da url const paramsString window.location.search; const params new URLSearchParams(paramsString); // lista chaves de categorias const categorias Object.keys(this.mapaCategorias); // se uma categoria está nos parametros, pega o valor e busca for (let categoria of categorias) { if (params.has(categoria)) { const textoValores params.get(categoria); const valores textoValores.split(|); for (let valor of valores) { this.adicionarBusca(categoria, valor); } } } }}class CheckboxGroup extends MultiCampo { /** VARIÁVEIS DE CLASSE. IGUAIS PARA TODAS AS INSTÃNCIAS. SEPARADAS AQUI PARA LEGIBILIDADE */ // seletor template geral do componente. seletorTemplate #wc-checkboxgroup-group-template; // prefixo do seletor de posicao (será concatenado com nome do campo para especificar posicao). prefixoSeletorPosicao .wc-checkboxgroup-posicao; // seletor do template geral do componente. seletorTemplateBox #wc-checkboxgroup-box-template; // seletor do container de checkboxes em relação ao seletor de posição seletorWrapperBox .wc-checkboxgroup .wc-checkboxgroup-wrapper; /** CONSTRUTOR */ constructor(estado, nome, mapaCategorias) { // salva parâmetros internamente this.inicializarParametros(estado, nome, mapaCategorias); // cria estado this.registrarDomExterno(); // injeta componente usando template this.injetarComponente(); // salva elementos do DOM do componente já montado usando seletores estaticos this.registrarDomInterno(); // define atributos únicos do DOM interno que não estavam no template this.inicializarValor(); // busca e insere opcoes this.buscarOpcoes(); // começa a ouvir eventos das checkboxes this.ouvirEventosInternos(); } /** PASSOS DO CONSTRUTOR */ inicializarParametros(estado, nome, mapaCategorias, placeholder) { // salva internamente parâmetros únicos dessa instância do componente this.estado estado; this.nome nome; this.placeholder placeholder; this.mapaCategorias mapaCategorias; const containerTemplateComponente document.querySelector(this.seletorTemplate); this.templateComponente containerTemplateComponente.content.querySelector(div); const containerTemplateBox document.querySelector(this.seletorTemplateBox); this.templateBox containerTemplateBox.content.querySelector(li); } registrarDomExterno() { // salva internamente elementos encontrados usando variáveis estáticas this.posicao document.querySelector(this.prefixoSeletorPosicao + data-nome + this.nome + ); } injetarComponente() { // adiciona html do componente baseado no template ao elemento de posicao const componente document.importNode(this.templateComponente, true); this.posicao.appendChild(componente); } registrarDomInterno() { // salva internamente os elementos de busca e autocomplete após o componente ser criado this.wrapperBox this.posicao.querySelector(this.seletorWrapperBusca); } /** INICIALIZACAO DOS VALORES */ async inicializarValor() { await this.atualizarPorUrl(); this.buscarDadosCheckboxes(); } async buscarOpcoes() { // extrai chaves das categorias do mapa de categorias e converte em parametro de query const categoriasUsadas Object.keys(this.mapaCategorias); // busca na api usando o texto const dados await this.estado.buscarOpcoes(categoriasUsadas, ); // extrai categorias dos dados retornados const categorias Object.keys(dados) // itera por cada valor adicionando-o ao DOM for(let categoria of categorias) { const valores Object.values(dadoscategoria); for(let valor of valores) { const box document.importNode(this.templateBox); box.querySelector(.wc-checkboxgroup-valor).innerText valor; box.querySelector(.wc-checkboxgroup-categoria).innerText categoria; box.querySelector(input).dataset.dataValor valor; box.querySelector(input).dataset.dataCategoria categoria; this.wrapperBox.appendChild(box); } this.wrapperBox.innerText dados; } } toggleCheckbox(categoria, valor) { const box this.wrapperBox.querySelector(`inputdata-categoria${categoria}data-valor${valor}`); if (box.value) { this.estado.adicionarParametro(Object.keys(this.mapaCategorias), categoria, valor); } else { this.estado.removerParametro(Object.keys(this.mapaCategorias), categoria, valor); } } /** OUVIR EVENTOS DAS CHECKBOXES */ ouvirEventosInternos(categoria, valor) { const boxes this.wrapperBox.querySelectorAll(input); for(box of boxes) { const categoria box.dataset.categoria; const valor box.dataset.valor; box.addEventListener(click, () > toggleCheckbox(categoria, valor) ); } } // // END// async atualizarAutocomplete() {// // remove parametros da url// // this.removerParamUrl();// // // limpa estado enquanto usuario busca outro valor// // this.estado.limparParametro(this.nome);// // sugere autocomplete de acordo com novo texto da busca// await this.atualizarDadosAutocomplete();// }// /** REAÇÕES A EVENTO DO AUTOCOMPLETE */// async adicionarBuscaExecutando(categoria, valor) {// // remove parametros da url// // this.limparParamUrl();// // atualiza url// this.adicionarParamUrl(categoria, valor);// // define valor da busca// await this.adicionarBusca(categoria, valor);// }// async removerBuscaExecutando(categoria, valor) {// // remove parametros da url// // this.limparParamUrl();// // atualiza url// this.removerParamUrl(categoria, valor);// // define valor da busca// await this.removerBusca(categoria, valor);// }// /** FUNCIONAMENTO DA BUSCA */ // async adicionarBusca(categoria, valor) {// // controi html do chip baseado no seu template// let chip document.importNode(this.templateChip, true);// const chipText chip.querySelector(p);// // define propriedades do chip para busca// chip.dataset.categoria categoria;// chip.dataset.valor valor;// // define texto do chip// chipText.textContent valor;// // adiciona remoçao do chip no evento de click// const onChipClick (event, categoria, valor) > {// event.stopPropagation();// this.removerBuscaExecutando(categoria, valor);// }// chip.addEventListener(click, (event) > onChipClick(event, categoria, valor), true);// // atualiza texto do campo de busca// this.wrapperBusca.insertBefore(chip, this.busca); // // atualiza estado para novo valor do filtro// this.estado.adicionarParametro(Object.keys(this.mapaCategorias), categoria, valor);// // limpa campo de busca// this.busca.value ;// // sugere autocomplete de acordo com novo texto da busca// await this.atualizarDadosAutocomplete();// } // async removerBusca(categoria, valor) {// // busca html do chip usando dados// let chip this.wrapperBusca.querySelector(this.seletorChip + `data-categoria${categoria}data-valor${valor}`);// // remove chip// chip.remove(); // // remove parametro do filtro// this.estado.removerParametro(Object.keys(this.mapaCategorias), categoria, valor);// // sugere autocomplete de acordo com novo texto da busca// await this.atualizarDadosAutocomplete();// }// // async definirBusca(categoria, valor) {// // // adiciona chip de busca do novo valor// // this.busca.value valor;// // this.estado.trocarParametro(this.nome, categoria, valor);// // // sugere autocomplete de acordo com novo texto da busca// // await this.atualizarDadosAutocomplete();// // }// /** FUNCIONAMENTO DO AUTOCOMPLETE */// async atualizarDadosBoxes() {// // traz texto da busca do campo// const valorBusca this.busca.value;// // extrai chaves das categorias do mapa de categorias e converte em parametro de query// const categoriasUsadas Object.keys(this.mapaCategorias);// // busca na api usando o texto// const dados await this.estado.buscarOpcoes(categoriasUsadas, valorBusca);// // cria aray de dados legíveis usando nomes das categorias ao invés de chaves// const dadosLegiveis {};// // deleta linhas do autocomplete anterior// this.autocomplete.innerHTML ;// // extrai categorias dos dados retornados// const categorias Object.keys(dados)// // itera por cada valor adicionando-o ao DOM// for(let categoria of categorias) {// const valores Object.values(dadoscategoria);// for(let valor of valores) {// let chip this.wrapperBusca.querySelector(this.seletorChip + `data-categoria${categoria}data-valor${valor}`);// if (chip) {// continue;// }// // converte chave da categoria em nome legível usando mapa de categorias// const nomeCategoria this.mapaCategoriascategoria;// // controi html da linha baseado no seu template// let linha document.importNode(this.templateAutocomplete, true);// // coloca o nome da categoria no elemento correspondente dentro da linha// const elementoCategoria linha.querySelector(this.seletorCategoriaAutocomplete);// elementoCategoria.textContent nomeCategoria;// // coloca o nome valor no elemento correspondente dentro da linha// const elementoValor linha.querySelector(this.seletorValorAutocomplete);// elementoValor.textContent valor;// // cria evento para mudar o valor da busca ao clicar numa linha// linha.addEventListener(mousedown, () > this.adicionarBuscaExecutando(categoria, valor));// // adiciona linha ao elemento de autocomplete// this.autocomplete.appendChild(linha);// }// }// } /** FUNCIONAMENTO POR URL */// limparParamUrl(categoria, valor) {// // extrai parametros da url// const paramsString window.location.search;// const params new URLSearchParams(paramsString);// // lista chaves de categorias// const categorias Object.keys(this.mapaCategorias);// // se uma categoria está nos parametros, remove// for (let categoria of categorias) {// if (params.has(categoria)) {// params.delete(categoria);// }// }// // converte parametros para queryString// let novosParams ;// for (const key, value of params.entries()) {// novosParams.push(key + + value);// }// const novaParamsString ? + novosParams.join(&);// // substitui url atual// window.history.replaceState(novaParamsString, , novaParamsString);// } removerParamUrl(categoria, valor) { // extrai parametros da url const paramsString window.location.search; const params new URLSearchParams(paramsString); // divide string no pipe, filtra valor e junta string com pipes novamente paramscategoria params.get(categoria).split(|) .filter(param > param valor).join(|); // converte parametros para queryString let novosParams ; for (const key, value of params.entries()) { let valores value.split(|); valores valores.filter(valorParam > valorParam ! valor); valores valores.join(|); if (valores ! ) { novosParams.push(key + + valores); } } const novaParamsString ? + novosParams.join(&); // substitui url atual window.history.replaceState(novaParamsString, , novaParamsString); } adicionarParamUrl(categoria, valor) { // extrai parametros da url const paramsString window.location.search; const params new URLSearchParams(paramsString); // se categoria ja esta nos parametros, adiciona valor ao parametro if (params.has(categoria)) { const novoValor params.get(categoria) + | + valor; params.set(categoria, novoValor); } // senao, cria categoria com valor else { params.append(categoria, valor); } // converte parametros para queryString let novosParams ; for (const key, value of params.entries()) { novosParams.push(key + + value); } const novaParamsString ? + novosParams.join(&); // substitui url atual window.history.replaceState(novaParamsString, , novaParamsString); } atualizarPorUrl() { // extrai parametros da url const paramsString window.location.search; const params new URLSearchParams(paramsString); // lista chaves de categorias const categorias Object.keys(this.mapaCategorias); // se uma categoria está nos parametros, pega o valor e busca for (let categoria of categorias) { if (params.has(categoria)) { const textoValores params.get(categoria); const valores textoValores.split(|); for (let valor of valores) { this.adicionarBusca(categoria, valor); } } } }} class EstadoFiltradoEstatico { /** CONSTRUTOR */ constructor(filtrosEndpoint, resultadosEndpoint) { // registra endpoint de valores do filtro this.filtrosEndpoint filtrosEndpoint; // registra endpoint de resultados this.resultadosEndpoint resultadosEndpoint; // mapa de filtro para valor this.mapaFiltros {}; } /** ATIVACAO */ ativar() { this.atualizarResultados(); } /** MUDANÇA DE PARAMETROS */ adicionarParametro(merge, filtro, valor) { const encodedMerge merge.join(|); console.log(this.mapaFiltrosencodedMerge); this.mapaFiltrosencodedMerge encodedMerge in this.mapaFiltros ? this.mapaFiltrosencodedMerge : {}; this.mapaFiltrosencodedMergefiltro filtro in this.mapaFiltrosencodedMerge ? this.mapaFiltrosencodedMergefiltro : new Set(); this.mapaFiltrosencodedMergefiltro.add(valor); } removerParametro(merge, filtro, valor) { const encodedMerge merge.join(|); this.mapaFiltrosencodedMergefiltro.delete(valor); if (this.mapaFiltrosencodedMergefiltro.size 0) { delete this.mapaFiltrosencodedMergefiltro; } if (Object.keys(this.mapaFiltrosencodedMerge).length 0) { delete this.mapaFiltrosencodedMerge; } }// limparParametro(origem) {// // busca o filtro que a origem definiu anteriormente// const filtro this.mapaOrigensorigem;// // deleta filtro// delete this.mapaFiltrosfiltro;// // se ativo, atualiza resultado de acordo com novos filtros// if (this.ativo){// this.atualizarResultados();// }// }// trocarParametro(origem, filtro, valor) {// // busca o filtro definido por essa origem anteriormente// const filtroAnterior this.mapaOrigensorigem;// // deleta o parametro// delete this.mapaFiltrosfiltroAnterior;// // registra o novo filtro definido pela origem// this.mapaOrigensorigem filtro;// // registra o filtro e seu valor no mapa de parametros// this.mapaFiltrosfiltro valor;// // se ativo, atualiza resultado de acordo com novos filtros// if (this.ativo){// this.atualizarResultados();// }// } /** ATUALIZACAO DOS RESULTADOS */ async atualizarResultados() { // busca resultados na API com novos filtros const dados await this.buscarResultados(); } /** ACESSO A API */ async buscarOpcoes(filtros, valorBusca) { const stringFiltros filtros.join(|); // monta url da API const url this.filtrosEndpoint + ?fields + stringFiltros + &search + valorBusca; console.log(url); // busca dados na API e os decodifica const respostaApi await fetch(url); const dadosApi await respostaApi.json(); // retorna dados return dadosApi; } /** ACESSO A API */ async buscarResultados() { const encodedMerges Object.keys(this.mapaFiltros); const parametrosMerge new Set(); const parametrosFiltro {}; for (let encodedMerge of encodedMerges) { const decodedMerge encodedMerge.split(|); const filtros Object.keys(this.mapaFiltrosencodedMerge); for (let filtro of filtros) { const valores this.mapaFiltrosencodedMergefiltro; parametrosFiltrofiltro ...valores.values().join(|); const decodedMerge encodedMerge.split(|); if (decodedMerge.length > 0) { parametrosMerge.add(encodedMerge); } } } const parametrosApiFiltro Object.keys(parametrosFiltro).map(parametro > +parametro++parametrosFiltroparametro).join(&); const parametrosApiMerge &merge + Array.from(parametrosMerge).join(,); const parametrosApi parametrosApiFiltro + parametrosApiMerge; console.log(parametrosApi); console.log(parametrosApi); console.log(/parametrosApi); // inicializa string de busca na API let apiUrl this.resultadosEndpoint // se houverem parametros, adiciona-os a string de busca if (parametrosApi.length > 0) { apiUrl + ? + parametrosApi; } // retorna url da API window.location.href apiUrl; }}const mapaEstados {};async function injetarComponentes() {// const elementoslistas document.querySelectorAll(.wc-lista-resultados);// for (const elementolista of elementoslistas) {// const identificador elementolista.dataset.identificador;// const identificadorEstado elementolista.dataset.estado;// const lista new ListaResultadosDinamica(identificador);// if (!(identificadorEstado in mapaCallbacks)) {// mapaCallbacksidentificadorEstado ;// }// mapaCallbacksidentificadorEstado.push(lista.atualizar);// } const elementosEstados document.querySelectorAll(.wc-estado); for (elementoEstado of elementosEstados) { const filtrosEndpoint elementoEstado.dataset.filtrosEndpoint; const resultadosEndpoint elementoEstado.dataset.resultadosEndpoint; const identificador elementoEstado.dataset.identificador; const estado new EstadoFiltradoEstatico( filtrosEndpoint, resultadosEndpoint); mapaEstadosidentificador estado; } const elementosFiltros document.querySelectorAll(.wc-multicampo-posicao); for (elementoFiltro of elementosFiltros) { let nome elementoFiltro.dataset.nome; let nomeEstado elementoFiltro.dataset.estado; let estado mapaEstadosnomeEstado; let categoriasChaves elementoFiltro.dataset.categoriasChaves; categoriasChaves categoriasChaves.split(,); let categoriasNomes elementoFiltro.dataset.categoriasNomes; categoriasNomes categoriasNomes.split(,); let placeholder elementoFiltro.dataset.placeholder; const mapaCategorias {}; for (let i0; icategoriasChaves.length; i++) { const chave categoriasChavesi; const nome categoriasNomesi; mapaCategoriaschave nome } const campo new MultiCampo(estado, nome, mapaCategorias, placeholder); await campo.inicializarValor();// console.log(mapaCategorias); }// const nomesEstados Object.keys(mapaEstados);// for (const nomeEstado of nomesEstados) {// mapaEstadosnomeEstado.ativar();// }}/script>script> function submit(event) { event.preventDefault(); const estado Object.values(mapaEstados)0; estado.buscarResultados(); } let form document.querySelector(#frmSearch); form.addEventListener(submit, submit); injetarComponentes();/script>style> #busca-medicos #frmSearch #search>button { margin: 20px; height: 42px; line-height: 10px; border: none; text-transform: uppercase; font-size: 13px; width: 180px; border-radius: 4px;}#busca-medicos #frmSearch #search { flex-direction: row; display: flex; align-items: center;}#busca-medicos #frmSearch #search>div { margin: 0px; padding: 10px; flex: 2; position: relative;}#busca-medicos #frmSearch #search>button { margin: 10px; height: 44px; line-height: 10px; border: none; text-transform: uppercase; font-size: 14px; width: 180px; border-radius: 4px;}#busca-medicos #frmSearch #search>button { width: 18%;}#busca-medicos { padding: 20px; margin-top: -100px; background: #FFF; border-radius: 8px; box-shadow: 0px 0px 5px #55555554; max-width: 90%; margin: -70px auto 0px;}#busca-medicos #frmSearch #search>div input { margin: 0; height: 42px; padding-left: 10px;}.wc-multicampo .wc-multicampo-chip { padding: 2px 12px; margin: 2px; border-radius: 50px; background-color: #15443e; color: floralwhite; display: flex; flex-direction: row; align-items: center; cursor: pointer; font-size: 15px; height: 32px;}.wc-multicampo .wc-multicampo-search { align-items: center;}.wc-multicampo .wc-multicampo-autocomplete .wc-multicampo-autocomplete-line { cursor: pointer;}.wc-multicampo .wc-multicampo-autocomplete .wc-multicampo-autocomplete-line:hover { background-color: #e3e3e3;}.wc-multicampo .wc-multicampo-autocomplete { display: flex; flex-direction: column; position: absolute; z-index: 1; box-shadow: 0 0 5px #5555554d; width: 100%; padding-left: 0; font-size: 13px; text-transform: uppercase; height: auto; max-height: 200px; overflow: auto;}/style> /div> /div> /div> /div> div classelementor-element elementor-element-53fe34c e-flex e-con-boxed e-con e-parent data-id53fe34c data-element_typecontainer> div classe-con-inner> div classelementor-element elementor-element-031e9da elementor-widget elementor-widget-heading data-id031e9da data-element_typewidget data-widget_typeheading.default> div classelementor-widget-container> h2 classelementor-heading-title elementor-size-default>Nosso propósito é conectar/h2> /div> /div> div classelementor-element elementor-element-160645d elementor-widget elementor-widget-text-editor data-id160645d data-element_typewidget data-widget_typetext-editor.default> div classelementor-widget-container> p>Reforçando nosso compromisso de tornar seguro, eficaz e acessível os tratamentos baseados no sistema endocanabinoide, a WeCann Academy está promovendo o portal de busca de médicos capacitados na prescrição de produtos à base de cannabis: o strong>WeCann Connect/strong>./p>p>Nosso propósito é conectar pacientes portadores de transtornos graves e incapacitantes com médicos capacitados na prescrição segura e eficaz de derivados canabinoides para melhorar a qualidade de vida de milhares de pessoas do Brasil e do mundo./p> /div> /div> /div> /div> div classelementor-element elementor-element-11bc287 e-con-full e-flex e-con e-parent data-id11bc287 data-element_typecontainer data-settings{"background_background":"classic"}> div classelementor-element elementor-element-7292613 elementor-widget elementor-widget-shortcode data-id7292613 data-element_typewidget data-widget_typeshortcode.default> div classelementor-widget-container> div classelementor-shortcode>div classswiper swiperMedicos>div classswiper-wrapper>div classswiper-slide>a hrefhttps://connect.wecann.academy/medico/mariana-bohn-ghellere/>div classbox-slide>img decodingasync altFoto de Mariana Bohn Ghellere styledisplay:none;visibility:hidden; titleHome 2 data-cfsrchttps://learning.wecann.academy/wp-content/uploads/avatars/3987/681a658bd4757-bpthumb.jpg data-cfstylewidth:100px; height:auto;>noscript>img decodingasync srchttps://learning.wecann.academy/wp-content/uploads/avatars/3987/681a658bd4757-bpthumb.jpg altFoto de Mariana Bohn Ghellere stylewidth:100px; height:auto; titleHome 2>/noscript> p>Mariana Bohn Ghellere - Medicina da Saúde da Família/p>/div>/a>/div>div classswiper-slide>a hrefhttps://connect.wecann.academy/medico/giselle-perez-de-carvalho/>div classbox-slide>img decodingasync altFoto de Giselle Perez De Carvalho DE CARVALHO styledisplay:none;visibility:hidden; titleHome 3 data-cfsrchttps://learning.wecann.academy/wp-content/uploads/avatars/4022/681a329e785b3-bpthumb.jpg data-cfstylewidth:100px; height:auto;>noscript>img decodingasync srchttps://learning.wecann.academy/wp-content/uploads/avatars/4022/681a329e785b3-bpthumb.jpg altFoto de Giselle Perez De Carvalho DE CARVALHO stylewidth:100px; height:auto; titleHome 3>/noscript> p>Giselle Perez De Carvalho DE CARVALHO - Reumatologia/p>/div>/a>/div>div classswiper-slide>a hrefhttps://connect.wecann.academy/medico/lucas-santos/>div classbox-slide>img decodingasync altFoto de Lucas Santos styledisplay:none;visibility:hidden; titleHome 4 data-cfsrchttps://learning.wecann.academy/wp-content/plugins/buddyboss-platform/bp-core/images/profile-avatar-buddyboss-50.png data-cfstylewidth:100px; height:auto;>noscript>img decodingasync srchttps://learning.wecann.academy/wp-content/plugins/buddyboss-platform/bp-core/images/profile-avatar-buddyboss-50.png altFoto de Lucas Santos stylewidth:100px; height:auto; titleHome 4>/noscript> p>Lucas Santos - Especialidade não informada/p>/div>/a>/div>div classswiper-slide>a hrefhttps://connect.wecann.academy/medico/heryca-selvatico-de-toledo-toledo/>div classbox-slide>img decodingasync altFoto de Heryca Selvático De Toledo Toledo styledisplay:none;visibility:hidden; titleHome 5 data-cfsrchttps://learning.wecann.academy/wp-content/plugins/buddyboss-platform/bp-core/images/profile-avatar-buddyboss-50.png data-cfstylewidth:100px; height:auto;>noscript>img decodingasync srchttps://learning.wecann.academy/wp-content/plugins/buddyboss-platform/bp-core/images/profile-avatar-buddyboss-50.png altFoto de Heryca Selvático De Toledo Toledo stylewidth:100px; height:auto; titleHome 5>/noscript> p>Heryca Selvático De Toledo Toledo - Clínica Geral/p>/div>/a>/div>div classswiper-slide>a hrefhttps://connect.wecann.academy/medico/jamila-piazera-alves-massaneiro/>div classbox-slide>img decodingasync altFoto de Jamila Piazera Alves Massaneiro styledisplay:none;visibility:hidden; titleHome 6 data-cfsrchttps://learning.wecann.academy/wp-content/uploads/avatars/3087/664a57642dcf9-bpthumb.jpg data-cfstylewidth:100px; height:auto;>noscript>img decodingasync srchttps://learning.wecann.academy/wp-content/uploads/avatars/3087/664a57642dcf9-bpthumb.jpg altFoto de Jamila Piazera Alves Massaneiro stylewidth:100px; height:auto; titleHome 6>/noscript> p>Jamila Piazera Alves Massaneiro - Clínica Geral/p>/div>/a>/div>/div>div classswiper-pagination>/div>/div>script srchttps://cdn.jsdelivr.net/npm/swiper@11/swiper-bundle.min.js>/script>script> const swiper new Swiper(.swiperMedicos, { slidesPerView: 4, spaceBetween: 30, pagination: { el: .swiper-pagination, clickable: true, }, breakpoints: { 300: { slidesPerView: 1, }, 600: { slidesPerView: 2, }, 767: { slidesPerView: 3, }, 1200: { slidesPerView: 4, }, 1600: { slidesPerView: 5, } }, }); /script>/div> /div> /div> /div> div classelementor-element elementor-element-6788733 e-flex e-con-boxed e-con e-parent data-id6788733 data-element_typecontainer> div classe-con-inner> div classelementor-element elementor-element-97755fe elementor-widget elementor-widget-heading data-id97755fe data-element_typewidget data-widget_typeheading.default> div classelementor-widget-container> h2 classelementor-heading-title elementor-size-default>Os pacientes não podem esperar/h2> /div> /div> div classelementor-element elementor-element-b125808 elementor-widget elementor-widget-text-editor data-idb125808 data-element_typewidget data-widget_typetext-editor.default> div classelementor-widget-container> Existem strong>milhares de pacientes portadores de doenças crônicas, refratárias e incapacitantes/strong>, fragilizados por falhas sequenciais em tratamentos convencionais, que buscam por melhores resultados, por melhor qualidade de vida. /div> /div> /div> /div> div classelementor-element elementor-element-17bb8b4 e-con-full e-flex e-con e-parent data-id17bb8b4 data-element_typecontainer> div classelementor-element elementor-element-1415df3 elementor--h-position-center elementor--v-position-middle elementor-pagination-position-inside elementor-widget elementor-widget-slides data-id1415df3 data-element_typewidget idinfo-pacientes data-settings{"navigation":"dots","autoplay":"yes","pause_on_hover":"yes","pause_on_interaction":"yes","autoplay_speed":5000,"infinite":"yes","transition":"slide","transition_speed":500} data-widget_typeslides.default> div classelementor-widget-container> div classelementor-swiper> div classelementor-slides-wrapper elementor-main-swiper swiper dirltr data-animationfadeInUp> div classswiper-wrapper elementor-slides> div classelementor-repeater-item-8583ec1 swiper-slide>div classswiper-slide-bg roleimg>/div>div classswiper-slide-inner >div classswiper-slide-contents>div classelementor-slide-heading>40% dos pacientes com dor crônica são refratários a terapêuticas convencionais./div>div classelementor-slide-description>span classreferencia-ancora>1, p classreferencia-tooltip> span classwc-ref-author>Clark MR, Cox TS./span> span classwc-ref-title>Refractory chronic pain./span> span classwc-ref-publishing>Psychiatr Clin North Am. 2002 Mar;/span> span classwc-ref-info>25(1):71-88. /span> /p>/span>span classreferencia-ancora>2, p classreferencia-tooltip> span classwc-ref-author>Yong RJ, Mullins PM, Bhattacharyya N./span> span classwc-ref-title>Prevalence of chronic pain among adults in the United States./span> span classwc-ref-publishing>Pain. 2022 Feb 1;/span> span classwc-ref-info>163(2):e328-e332./span> /p>/span>span classreferencia-ancora>3, p classreferencia-tooltip> span classwc-ref-author>Sá KN, Moreira L, Baptista AF, Yeng LT, Teixeira MJ, Galhardoni R, de Andrade DC./span> span classwc-ref-title>Prevalence of chronic pain in developing countries: systematic review and meta-analysis./span> span classwc-ref-publishing>Pain Rep. 2019 Dec 6;/span> span classwc-ref-info>4(6):e779./span> /p>/span>span classreferencia-ancora>4, p classreferencia-tooltip> span classwc-ref-author>Santiago BVM, Oliveira ABG, Silva GMRD, Silva MFD, Bergamo PE, Parise M, Villela NR./span> span classwc-ref-title>Prevalence of chronic pain in Brazil: A systematic review and meta-analysis./span> span classwc-ref-publishing>Clinics (Sao Paulo). 2023 May 16;/span> span classwc-ref-info>78:100209./span> /p>/span>span classreferencia-ancora>5 p classreferencia-tooltip> span classwc-ref-author>Fayaz A, Croft P, Langford RM, et al./span> span classwc-ref-title>Prevalence of chronic pain in the UK: a systematic review and meta-analysis of population./span> span classwc-ref-publishing>studiesBMJ Open 2016;/span> span classwc-ref-info>6:e010364./span> /p>/span>/div>/div>/div>/div>div classelementor-repeater-item-dbe7bf1 swiper-slide>div classswiper-slide-bg roleimg>/div>div classswiper-slide-inner >div classswiper-slide-contents>div classelementor-slide-heading>20-60% dos pacientes portadores de transtornos psiquiátricos são refratários a terapêuticas convencionais./div>div classelementor-slide-description>span classreferencia-ancora>6, p classreferencia-tooltip> span classwc-ref-author>Howes, O.D., Thase, M.E. & Pillinger, T./span> span classwc-ref-title>Treatment resistance in psychiatry: state of the art and new directions./span> span classwc-ref-publishing>Mol Psychiatry 27, 58–72 (2022)./span> /p>/span>span classreferencia-ancora>7 p classreferencia-tooltip> span classwc-ref-author>Widge AS, Ellard KK, Paulk AC, Basu I, Yousefi A, Zorowitz S, Gilmour A, Afzal A, Deckersbach T, Cash SS, Kramer MA, Eden UT, Dougherty DD, Eskandar EN./span> span classwc-ref-title>Treating Refractory Mental Illness With Closed-Loop Brain Stimulation: Progress Towards a Patient-Specific Transdiagnostic Approach./span> span classwc-ref-publishing>Focus (Am Psychiatr Publ). 2022 Jan;/span> span classwc-ref-info>20(1):137-151./span> /p>/span>/div>/div>/div>/div>div classelementor-repeater-item-263b9b3 swiper-slide>div classswiper-slide-bg roleimg>/div>div classswiper-slide-inner >div classswiper-slide-contents>div classelementor-slide-heading>60-70% dos pacientes com quadros demenciais não respondem aos medicamentos inibidores da acetilcolinesterase (donepezila, rivastigmina, galantamina)./div>div classelementor-slide-description>span classreferencia-ancora>8, p classreferencia-tooltip> span classwc-ref-author>Mc Gleenon, Dynan, & Passmore./span> span classwc-ref-title>Acetylcholinesterase inhibitors in Alzheimer’s disease: Acetylcholinesterase inhibitors in Alzheimer’s disease./span> span classwc-ref-publishing>Br. J. Clin. Pharmacol. 48,471–480 (1999)./span> /p>/span>span classreferencia-ancora>9 p classreferencia-tooltip> span classwc-ref-author>Marucci G, Buccioni M, Ben DD, Lambertucci C, Volpini R, Amenta F./span> span classwc-ref-title>Efficacy of acetylcholinesterase inhibitors in Alzheimers disease./span> span classwc-ref-publishing>Neuropharmacology. 2021 Jun 1;/span> span classwc-ref-info>190:108352./span> /p>/span/div>/div>/div>/div>div classelementor-repeater-item-de4b704 swiper-slide>div classswiper-slide-bg roleimg>/div>div classswiper-slide-inner >div classswiper-slide-contents>div classelementor-slide-heading>1/3 dos pacientes com epilepsia são refratários ao uso de duas ou mais drogas anticonvulsivantes./div>div classelementor-slide-description>span classreferencia-ancora>10, p classreferencia-tooltip> span classwc-ref-author>Kwan, P. & Brodie, M. J./span> span classwc-ref-title>Early Identification of Refractory Epilepsy./span> span classwc-ref-publishing>N. Engl. J. Med. 342, 314–319 (2000)./span> /p>/span>span classreferencia-ancora>11, p classreferencia-tooltip> span classwc-ref-author>Kwan, P. et al./span> span classwc-ref-title>Definition of drug resistant epilepsy: Consensus proposal by the ad hoc Task Force of the ILAE Commission on Therapeutic Strategies: Definition of Drug Resistant Epilepsy./span> span classwc-ref-publishing>Epilepsia 51, 1069–1077 (2009)./span> /p>/span>span classreferencia-ancora>12, p classreferencia-tooltip> span classwc-ref-author>Mohanraj, R. & Brodie, M. J./span> span classwc-ref-title>Diagnosing refractory epilepsy: response to sequential treatment schedules./span> span classwc-ref-publishing>Eur. J. Neurol. 13, 277–282 (2006)./span> /p>/span>span classreferencia-ancora>13 p classreferencia-tooltip> span classwc-ref-author>Tzadok, M. et al./span> span classwc-ref-title>CBD-enriched medical cannabis for intractable pediatric epilepsy./span> span classwc-ref-publishing>Seizure 35, 41–44 (2016)./span> /p>/span>/div>/div>/div>/div>div classelementor-repeater-item-fdc94c0 swiper-slide>div classswiper-slide-bg roleimg>/div>div classswiper-slide-inner >div classswiper-slide-contents>div classelementor-slide-heading>Não existe medicamento com eficácia terapêutica baseada em evidências para o tratamento de lesões neurológicas causadas por AVC, TCE, TRM, encefalopatia hipóxico-isquêmica (EHI) e paralisia cerebral./div>div classelementor-slide-description>span classreferencia-ancora>14, p classreferencia-tooltip> span classwc-ref-author>Feigin VL, Brainin M, Norrving B, et al./span> span classwc-ref-title>World Stroke Organization (WSO): Global Stroke Fact Sheet 2022./span> span classwc-ref-publishing>International Journal of Stroke. 2022;/span> span classwc-ref-info>17(1):18-29./span> /p>/span>span classreferencia-ancora>15, p classreferencia-tooltip> span classwc-ref-author>Dewan, M. C. et al./span> span classwc-ref-title>Estimating the global incidence of traumatic brain injury./span> span classwc-ref-publishing>J. Neurosurg. 130, 1080–1097 (2019)./span> /p>/span>span classreferencia-ancora>16, p classreferencia-tooltip> span classwc-ref-author>WHO./span> span classwc-ref-title>Spinal Cord Injury, Fact Sheet./span> span classwc-ref-publishing>World Health Organization Geneva, Switzerland, 2013./span> /p>/span>span classreferencia-ancora>17 p classreferencia-tooltip> span classwc-ref-author>Organization, W. H./span> span classwc-ref-title>WHO recommendations oninterventions to improve preterm birth outcomes. (2015)./span> /p>/span>/div>/div>/div>/div>div classelementor-repeater-item-7ec393a swiper-slide>div classswiper-slide-bg roleimg>/div>div classswiper-slide-inner >div classswiper-slide-contents>div classelementor-slide-heading>Não existe medicamento que trate os sintomas centrais do Autismo (déficits na interação social, estereotipias, alterações sensoriais./div>div classelementor-slide-description>span classreferencia-ancora>18, p classreferencia-tooltip> span classwc-ref-author>Lord C, Elsabbagh M, Baird G, Veenstra-Vanderweele J./span> span classwc-ref-title>Autism spectrum disorder./span> span classwc-ref-publishing>Lancet. 2018 Aug 11;/span> span classwc-ref-info>392(10146):508-520. doi: 10.1016/S0140-6736(18)31129-2./span> span classwc-ref-info>Epub 2018 Aug 2./span> span classwc-ref-info>PMID: 30078460;/span> span classwc-ref-info>PMCID: PMC7398158./span> /p>/span>span classreferencia-ancora>19, p classreferencia-tooltip> span classwc-ref-author>Hyman, S.L., Levy, S.E., Myers, S.M., & AAP Council on Children with Disabilities, Section on developmental and behavioral pediatrics. (2020)./span> span classwc-ref-title>Identification, evaluation, and management of children with autism spectrum disorder./span> span classwc-ref-info>Pediatrics, 145(1), e20193447./span> /p>/span>/div>/div>/div>/div>div classelementor-repeater-item-19fa9ff swiper-slide>div classswiper-slide-bg roleimg>/div>div classswiper-slide-inner >div classswiper-slide-contents>div classelementor-slide-heading>Não existem terapêuticas baseadas em evidências para o tratamento de 3,5-6% da população do mundo portadora de doenças raras./div>div classelementor-slide-description>span classreferencia-ancora>20, p classreferencia-tooltip> span classwc-ref-author>Abozaid GM, Kerr K, McKnight A, Al-Omar HA./span> span classwc-ref-title>Criteria to define rare diseases and orphan drugs: a systematic review protocol./span> span classwc-ref-publishing>BMJ Open. 2022 Jul 29;./span> span classwc-ref-info>12(7):e062126. doi: 10.1136/bmjopen-2022-062126./span> span classwc-ref-info>PMID: 35906057;/span> span classwc-ref-info>PMCID: PMC9345065./span> /p>/span>span classreferencia-ancora>21 p classreferencia-tooltip> span classwc-ref-author>Nguengang Wakap, S., Lambert, D.M., Olry, A. et al./span> span classwc-ref-title>Estimating cumulative point prevalence of rare diseases: analysis of the Orphanet database./span> span classwc-ref-publishing>Eur J Hum Genet 28, 165–173 (2020)./span> span classwc-ref-info>https://doi.org/10.1038/s41431-019-0508-0./span> /p>/span>/div>/div>/div>/div> /div> div classswiper-pagination>/div> /div> /div> /div> /div> /div> div classelementor-element elementor-element-c8e9b29 e-flex e-con-boxed e-con e-parent data-idc8e9b29 data-element_typecontainer> div classe-con-inner> div classelementor-element elementor-element-8208613 elementor-widget elementor-widget-heading data-id8208613 data-element_typewidget data-widget_typeheading.default> div classelementor-widget-container> h2 classelementor-heading-title elementor-size-default>Acesso a profissionais capacitados/h2> /div> /div> div classelementor-element elementor-element-3b268ae elementor-widget elementor-widget-shortcode data-id3b268ae data-element_typewidget data-widget_typeshortcode.default> div classelementor-widget-container> div classelementor-shortcode>div classreferencia-texto> Cannabis medicinal não é uma panaceia, resolutora de todos os tipos de problemas de saúde. E tampouco, funciona para todos os pacientes. No entanto, é uma valiosa ferramenta terapêutica, que quando adequadamente prescrita por profissional médico capacitado, pode melhorar a qualidade de vida de uma parcela significativa de pacientes portadores de transtornos crônicos e refratários a outras terapêuticassup classreferencia-ancora>22, p classreferencia-tooltip> span classwc-ref-author>Bar-Lev Schleider, L. et al./span> span classwc-ref-title>Prospective analysis of safety and efficacy of medical cannabis in large unselected population of patients with cancer./span> span classwc-ref-publishing>Eur. J. Intern. Med. 49, 37–43 (2018)./span> /p> /sup> sup classreferencia-ancora>23, p classreferencia-tooltip> span classwc-ref-author>Bar-Lev Schleider, L., Mechoulam, R., Sikorin, I., Naftali, T. & Novack, V./span> span classwc-ref-title>Adherence, Safety, and Effectiveness of Medical Cannabis and Epidemiological Characteristics of the Patient Population: A Prospective Study./span> span classwc-ref-publishing>6(5):e2312522. doi: 10.1001/jamanetworkopen.2023.12522./span> /p> /sup> sup classreferencia-ancora>24, p classreferencia-tooltip> span classwc-ref-author>Arkell TR, Downey LA, Hayley AC, Roth S./span> span classwc-ref-title>Assessment of Medical Cannabis and Health-Related Quality of Life./span> span classwc-ref-publishing>JAMA Netw Open. 2023 May 1;/span> span classwc-ref-info>6(5):e2312522. doi: 10.1001/jamanetworkopen.2023.12522./span> span classwc-ref-info>PMID: 37159196;/span> span classwc-ref-info>PMCID: PMC10170337./span> /p> /sup> sup classreferencia-ancora>25 p classreferencia-tooltip> span classwc-ref-author>Tsampoula I, Zartaloudi A, Dousis E, Koutelekos I, Pavlatou N, Toulia G, Kalogianni A, Polikandrioti M./span> span classwc-ref-title>Quality of Life in Patients Receiving Medical Cannabis./span> span classwc-ref-publishing>Adv Exp Med Biol. 2023;/span> span classwc-ref-info>1425:401-415. doi: 10.1007/978-3-031-31986-0_39./span> span classwc-ref-info>PMID: 37581814./span> /p> /sup>. Por isso, deve fazer parte do arsenal terapêutico de todo e qualquer médico. br>br>Apesar de cerca de 80% da população brasileira ser favorável ao uso medicinal da cannabissup classreferencia-ancora>a hrefhttps://exame.com/brasil/aprovacao-popular-maconha-medicinal-brasil relnoopener>26/a> p classreferencia-tooltip> https://exame.com/brasil/aprovacao-popular-maconha-medicinal-brasil/ /p> /sup>, menos de 3% dos médicos brasileiros estão utilizando o potencial dos tratamentos baseados no sistema endocanabinoide para trazer melhores resultados para os seus pacientes. Isso significa que quase ¾ do país ainda não conta com um médico prescritor em seu municípiosup classreferencia-ancora>27 p classreferencia-tooltip> span>Anuário Da Cannabis Medicinal 2023, Copyright © Kaya Mind 2023./span> /p> /sup>. br>br>Os pacientes têm o direito de serem orientados de forma ética e responsável em relação a essa terapêutica, e ter acesso a um profissional devidamente capacitado na prescrição segura e assertiva de derivados canabinoides, que domine o sistema endocanabinoide e tenha amplo conhecimento no manejo de possíveis efeitos colaterais e interações medicamentosas./div>style> .referencia-texto { text-align: center; font-size: 20px; padding: 4% 3% 0 3%; line-height: 24px; } .referencia-ancora { color: var(--e-global-color-accent); font-weight: 800; position: relative; cursor: pointer; } .referencia-tooltip { position:absolute; background-color: white; padding:5px 10px; border-radius:5px; box-shadow: 0px 0px 8px 1px #296253; transform: translateX(10px) translateY(-100%); line-height:16px; color:#296253; font-weight:600; text-align:start; display: inline-flex; flex-direction: column; } .referencia-ancora a { font-weight:800; } .referencia-ancora:not(:hover) .referencia-tooltip { display:none; } .referencia-tooltip span { text-wrap:nowrap; font-size:12; } .referencia-tooltip span.wc-ref-author { font-size:12px; font-weight:800; line-height:22px; } .referencia-tooltip span.wc-ref-title { text-wrap:wrap; font-style:italic; font-size:12px; font-weight:400; } .referencia-tooltip span.wc-ref-publishing { font-size:12px; font-weight:600; line-height:22px; } .referencia-tooltip span.wc-ref-info { font-size:12px; font-weight:400; line-height:20px; }/style>/div> /div> /div> /div> /div> div classelementor-element elementor-element-48e6519 e-flex e-con-boxed e-con e-parent data-id48e6519 data-element_typecontainer> div classe-con-inner> div classelementor-element elementor-element-3c4c561 e-con-full e-flex e-con e-child data-id3c4c561 data-element_typecontainer data-settings{"background_background":"classic"}> div classelementor-element elementor-element-0d4f83a elementor-widget elementor-widget-heading data-id0d4f83a data-element_typewidget data-widget_typeheading.default> div classelementor-widget-container> h2 classelementor-heading-title elementor-size-default>Se você é médico com capacitação qualificada na prescrição de medicamentos à base de cannabis,br>faça seu cadastro gratuitamente./h2> /div> /div> div classelementor-element elementor-element-1f0b533 elementor-align-center elementor-widget elementor-widget-button data-id1f0b533 data-element_typewidget data-widget_typebutton.default> div classelementor-widget-container> div classelementor-button-wrapper> a classelementor-button elementor-button-link elementor-size-sm href#> span classelementor-button-content-wrapper> span classelementor-button-text>Receba Pacientes/span> /span> /a> /div> /div> /div> /div> div classelementor-element elementor-element-7c8b2f2 e-con-full e-flex e-con e-child data-id7c8b2f2 data-element_typecontainer data-settings{"background_background":"classic"}> div classelementor-element elementor-element-46fa213 elementor-widget elementor-widget-heading data-id46fa213 data-element_typewidget data-widget_typeheading.default> div classelementor-widget-container> h2 classelementor-heading-title elementor-size-default>Se você é paciente portador de transtorno crônico e incapacitante e deseja ter acesso a médicos, faça a sua busca aqui:/h2> /div> /div> div classelementor-element elementor-element-5c4696e elementor-align-center elementor-widget elementor-widget-button data-id5c4696e data-element_typewidget data-widget_typebutton.default> div classelementor-widget-container> div classelementor-button-wrapper> a classelementor-button elementor-button-link elementor-size-sm href#> span classelementor-button-content-wrapper> span classelementor-button-text>Busque Médicos/span> /span> /a> /div> /div> /div> /div> /div> /div> div classelementor-element elementor-element-239b0f4 e-flex e-con-boxed e-con e-parent data-id239b0f4 data-element_typecontainer data-settings{"background_background":"classic"}> div classe-con-inner> div classelementor-element elementor-element-b4c0529 e-con-full e-flex e-con e-child data-idb4c0529 data-element_typecontainer> div classelementor-element elementor-element-faaf8f8 elementor-widget elementor-widget-heading data-idfaaf8f8 data-element_typewidget data-widget_typeheading.default> div classelementor-widget-container> h2 classelementor-heading-title elementor-size-default>Certificação Internacional em Medicina Endocanabinoide/h2> /div> /div> div classelementor-element elementor-element-8a91fd8 elementor-widget elementor-widget-text-editor data-id8a91fd8 data-element_typewidget data-widget_typetext-editor.default> div classelementor-widget-container> p>A Certificação Internacional em Medicina Endocanabinoide da WeCann Academy prepara a comunidade médica para incorporar este conhecimento em sua prática, de forma segura e eficaz. A jornada de aprendizado contempla os fundamentos do Sistema Endocanabinoide e os conceitos-chave em torno da Cannabis Medicinal, sempre baseada em evidências científicas e amparada na experiência prescritiva de um corpo técnico altamente qualificado./p>p>Através de masterclasses, mentorias para discussão de casos clínicos, sessões de atualização dos mais recentes artigos publicados, um livro digital com rico detalhamento técnico e a participação em uma comunidade exclusiva de médicos de várias partes do mundo, o aluno tem todo o suporte necessário para exercer esta terapêutica na prática, com excelência e confiança./p> /div> /div> div classelementor-element elementor-element-93441bc elementor-align-left elementor-widget elementor-widget-button data-id93441bc data-element_typewidget data-widget_typebutton.default> div classelementor-widget-container> div classelementor-button-wrapper> a classelementor-button elementor-button-link elementor-size-sm hrefhttps://wecann.academy/certificacao/ target_blank relnoopener> span classelementor-button-content-wrapper> span classelementor-button-text>Saiba mais/span> /span> /a> /div> /div> /div> /div> div classelementor-element elementor-element-c2a2c52 e-con-full e-flex e-con e-child data-idc2a2c52 data-element_typecontainer> div classelementor-element elementor-element-69758f5 elementor-widget elementor-widget-image data-id69758f5 data-element_typewidget data-widget_typeimage.default> div classelementor-widget-container> img decodingasync width324 height451 srchttps://connect.wecann.academy/wp-content/uploads/2024/05/certificado-wecann.webp classattachment-large size-large wp-image-2712 altcertificado wecann srcsethttps://connect.wecann.academy/wp-content/uploads/2024/05/certificado-wecann.webp 324w, https://connect.wecann.academy/wp-content/uploads/2024/05/certificado-wecann-216x300.webp 216w sizes(max-width: 324px) 100vw, 324px titleHome 7> /div> /div> /div> /div> /div> div classelementor-element elementor-element-b358abc e-flex e-con-boxed e-con e-parent data-idb358abc data-element_typecontainer> div classe-con-inner> div classelementor-element elementor-element-65fd801 elementor-widget elementor-widget-heading data-id65fd801 data-element_typewidget data-widget_typeheading.default> div classelementor-widget-container> h2 classelementor-heading-title elementor-size-default>Blog WeCann/h2> /div> /div> div classelementor-element elementor-element-9385f19 elementor-widget elementor-widget-heading data-id9385f19 data-element_typewidget data-widget_typeheading.default> div classelementor-widget-container> h3 classelementor-heading-title elementor-size-default>Uma fonte segura, científica e confiável de informações sobre o uso medicinal da cannabis./h3> /div> /div> div classelementor-element elementor-element-632e71a elementor-widget elementor-widget-shortcode data-id632e71a data-element_typewidget data-widget_typeshortcode.default> div classelementor-widget-container> div classelementor-shortcode>div classwc-blog-posts>a hrefhttps://wecann.academy/cbd-autismo/ target_blank relnoopener> img decodingasync alt65 titleHome 8 data-cfsrchttps://wecann.academy/wp-content/uploads/2022/04/65.jpg styledisplay:none;visibility:hidden;>noscript>img decodingasync srchttps://wecann.academy/wp-content/uploads/2022/04/65.jpg alt65 titleHome 8>/noscript> h3>Canabidiol no tratamento do TEA: segurança e potencial terapêutico do CBD no Autismo/h3> p>19/04/2022/p>/a>a hrefhttps://wecann.academy/transtornos-pisquiatricos/ target_blank relnoopener> img decodingasync altshutterstock 1419724301 titleHome 9 data-cfsrchttps://wecann.academy/wp-content/uploads/2022/01/shutterstock_1419724301.jpg styledisplay:none;visibility:hidden;>noscript>img decodingasync srchttps://wecann.academy/wp-content/uploads/2022/01/shutterstock_1419724301.jpg altshutterstock 1419724301 titleHome 9>/noscript> h3>Cannabis medicinal como ferramenta terapêutica adjuvante no manejo de transtornos psiquiátricos/h3> p>18/01/2022/p>/a>a hrefhttps://wecann.academy/qualidade-de-vida/ target_blank relnoopener> img decodingasync altshutterstock 1815624638 titleHome 10 data-cfsrchttps://wecann.academy/wp-content/uploads/2021/11/shutterstock_1815624638.jpg styledisplay:none;visibility:hidden;>noscript>img decodingasync srchttps://wecann.academy/wp-content/uploads/2021/11/shutterstock_1815624638.jpg altshutterstock 1815624638 titleHome 10>/noscript> h3>Qualidade de vida e Cannabis medicinal em pacientes com dor crônica/h3> p>05/11/2021/p>/a>/div>a classwc-blog-more hrefhttps://wecann.academy/blog/ target_blank relnoopener>VEJA MAIS/a>/div> /div> /div> /div> /div> /div> div data-elementor-typefooter data-elementor-id103 classelementor elementor-103 elementor-location-footer data-elementor-post-typeelementor_library> div classelementor-element elementor-element-015ee1f e-flex e-con-boxed e-con e-parent data-id015ee1f data-element_typecontainer data-settings{"background_background":"classic"}> div classe-con-inner> div classelementor-element elementor-element-e03245b e-con-full e-flex e-con e-child data-ide03245b data-element_typecontainer> div classelementor-element elementor-element-3163ad5 elementor-widget elementor-widget-heading data-id3163ad5 data-element_typewidget data-widget_typeheading.default> div classelementor-widget-container> h2 classelementor-heading-title elementor-size-default>Acompanhe nossas redes sociais/h2> /div> /div> /div> div classelementor-element elementor-element-fe1a6a3 e-con-full e-flex e-con e-child data-idfe1a6a3 data-element_typecontainer> div classelementor-element elementor-element-ebfc024 elementor-widget elementor-widget-image data-idebfc024 data-element_typewidget data-widget_typeimage.default> div classelementor-widget-container> a hrefhttps://www.instagram.com/wecann.academy/ target_blank> img width41 height42 srchttps://connect.wecann.academy/wp-content/uploads/2023/02/instagram-icon.svg classattachment-large size-large wp-image-106 alt /> /a> /div> /div> div classelementor-element elementor-element-cd32f14 elementor-widget elementor-widget-image data-idcd32f14 data-element_typewidget data-widget_typeimage.default> div classelementor-widget-container> a hrefhttps://www.facebook.com/wecann.academy/ target_blank> img width45 height41 srchttps://connect.wecann.academy/wp-content/uploads/2023/02/facebook-icon.svg classattachment-large size-large wp-image-108 alt /> /a> /div> /div> div classelementor-element elementor-element-12ddd85 elementor-widget elementor-widget-image data-id12ddd85 data-element_typewidget data-widget_typeimage.default> div classelementor-widget-container> a hrefhttps://www.linkedin.com/company/wecannacademy/ target_blank> img width40 height41 srchttps://connect.wecann.academy/wp-content/uploads/2023/02/linkedin-icon.svg classattachment-large size-large wp-image-110 alt /> /a> /div> /div> /div> /div> /div> section classelementor-section elementor-top-section elementor-element elementor-element-2bb8faed elementor-section-boxed elementor-section-height-default elementor-section-height-default data-id2bb8faed data-element_typesection idfooter> div classelementor-container elementor-column-gap-default> div classelementor-column elementor-col-25 elementor-top-column elementor-element elementor-element-1bbd44a9 footer-widget data-id1bbd44a9 data-element_typecolumn idfooter-widget-01> div classelementor-widget-wrap elementor-element-populated> div classelementor-element elementor-element-43c8c99a elementor-widget elementor-widget-image data-id43c8c99a data-element_typewidget data-widget_typeimage.default> div classelementor-widget-container> a hrefhttps://connect.wecann.academy> img width102 height102 srchttps://connect.wecann.academy/wp-content/uploads/2023/02/wecann-logo-vertical.svg classattachment-large size-large wp-image-112 alt /> /a> /div> /div> /div> /div> div classelementor-column elementor-col-25 elementor-top-column elementor-element elementor-element-aec8719 footer-widget data-idaec8719 data-element_typecolumn idfooter-widget-02> div classelementor-widget-wrap elementor-element-populated> div classelementor-element elementor-element-5ba5cd15 elementor-widget elementor-widget-text-editor data-id5ba5cd15 data-element_typewidget data-widget_typetext-editor.default> div classelementor-widget-container> p>WECANN ENDOCANNABINOID GLOBAL ACADEMY LTDAbr />CNPJ: 39.405.784/0001-73br />em>© 2020 WeCann Academy./em>br />em>All Rights Reserved./em>/p> /div> /div> /div> /div> div classelementor-column elementor-col-25 elementor-top-column elementor-element elementor-element-5ad25d87 footer-widget data-id5ad25d87 data-element_typecolumn idfooter-widget-03> div classelementor-widget-wrap elementor-element-populated> div classelementor-element elementor-element-567b3e2e elementor-widget elementor-widget-text-editor data-id567b3e2e data-element_typewidget data-widget_typetext-editor.default> div classelementor-widget-container> Política de privacidadebr>Termos de uso /div> /div> /div> /div> div classelementor-column elementor-col-25 elementor-top-column elementor-element elementor-element-4a73ce32 footer-widget data-id4a73ce32 data-element_typecolumn idfooter-widget-04> div classelementor-widget-wrap elementor-element-populated> div classelementor-element elementor-element-42ae7cef elementor-align-left elementor-icon-list--layout-traditional elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list data-id42ae7cef data-element_typewidget data-widget_typeicon-list.default> div classelementor-widget-container> ul classelementor-icon-list-items> li classelementor-icon-list-item> a href/fale-conosco/> span classelementor-icon-list-icon> i aria-hiddentrue classfar fa-envelope>/i> /span> span classelementor-icon-list-text>Contato | Imprensa | Parceria/span> /a> /li> /ul> /div> /div> /div> /div> /div> /section> /div> script typespeculationrules>{prefetch:{source:document,where:{and:{href_matches:\/*},{not:{href_matches:\/wp-*.php,\/wp-admin\/*,\/wp-content\/uploads\/*,\/wp-content\/*,\/wp-content\/plugins\/*,\/wp-content\/themes\/hello-elementor-child\/*,\/wp-content\/themes\/hello-elementor\/*,\/*\\?(.+)}},{not:{selector_matches:arel~\nofollow\}},{not:{selector_matches:.no-prefetch, .no-prefetch a}}},eagerness:conservative}}/script>link relstylesheet hrefhttps://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.2/css/all.min.css integritysha512-SnH5WK+bZxgPHs44uWIX+LLJAJ9/2PkPKZ5QiAj6Ta86w+fsb2TkcmfRyVX3pBnMFcV7oQPJkl9QevSCWr3W6A crossoriginanonymous referrerpolicyno-referrer />link relstylesheet ide-animations-css hrefhttps://connect.wecann.academy/wp-content/plugins/elementor/assets/lib/animations/animations.min.css?ver3.22.3 mediaall />style idcore-block-supports-inline-css>/** * Core styles: block-supports *//style>script srchttps://connect.wecann.academy/wp-includes/js/dist/hooks.js?verbe67dc331e61e06d52fa idwp-hooks-js>/script>script srchttps://connect.wecann.academy/wp-includes/js/dist/i18n.js?ver5edc734adb78e0d7d00e idwp-i18n-js>/script>script idwp-i18n-js-after>wp.i18n.setLocaleData( { text direction\u0004ltr: ltr } );/script>script srchttps://connect.wecann.academy/wp-content/plugins/contact-form-7/includes/swv/js/index.js?ver5.9.8 idswv-js>/script>script idcontact-form-7-js-extra>var wpcf7 {api:{root:https:\/\/connect.wecann.academy\/wp-json\/,namespace:contact-form-7\/v1}};/script>script srchttps://connect.wecann.academy/wp-content/plugins/contact-form-7/includes/js/index.js?ver5.9.8 idcontact-form-7-js>/script>script srchttps://connect.wecann.academy/wp-content/themes/hello-elementor/assets/js/hello-frontend.js?ver3.1.0 idhello-theme-frontend-js>/script>script srchttps://connect.wecann.academy/wp-includes/js/imagesloaded.min.js?ver5.0.0 idimagesloaded-js>/script>script srchttps://connect.wecann.academy/wp-content/plugins/elementor-pro/assets/js/webpack-pro.runtime.js?ver3.21.3 idelementor-pro-webpack-runtime-js>/script>script srchttps://connect.wecann.academy/wp-content/plugins/elementor/assets/js/webpack.runtime.js?ver3.22.3 idelementor-webpack-runtime-js>/script>script srchttps://connect.wecann.academy/wp-includes/js/jquery/jquery.js?ver3.7.1 idjquery-core-js>/script>script srchttps://connect.wecann.academy/wp-includes/js/jquery/jquery-migrate.js?ver3.4.1 idjquery-migrate-js>/script>script srchttps://connect.wecann.academy/wp-content/plugins/elementor/assets/js/frontend-modules.js?ver3.22.3 idelementor-frontend-modules-js>/script>script idelementor-pro-frontend-js-before>var ElementorProFrontendConfig {ajaxurl:https:\/\/connect.wecann.academy\/wp-admin\/admin-ajax.php,nonce:0c48397bf3,urls:{assets:https:\/\/connect.wecann.academy\/wp-content\/plugins\/elementor-pro\/assets\/,rest:https:\/\/connect.wecann.academy\/wp-json\/},shareButtonsNetworks:{facebook:{title:Facebook,has_counter:true},twitter:{title:Twitter},linkedin:{title:LinkedIn,has_counter:true},pinterest:{title:Pinterest,has_counter:true},reddit:{title:Reddit,has_counter:true},vk:{title:VK,has_counter:true},odnoklassniki:{title:OK,has_counter:true},tumblr:{title:Tumblr},digg:{title:Digg},skype:{title:Skype},stumbleupon:{title:StumbleUpon,has_counter:true},mix:{title:Mix},telegram:{title:Telegram},pocket:{title:Pocket,has_counter:true},xing:{title:XING,has_counter:true},whatsapp:{title:WhatsApp},email:{title:Email},print:{title:Print},x-twitter:{title:X},threads:{title:Threads}},facebook_sdk:{lang:pt_BR,app_id:},lottie:{defaultAnimationUrl:https:\/\/connect.wecann.academy\/wp-content\/plugins\/elementor-pro\/modules\/lottie\/assets\/animations\/default.json}};/script>script srchttps://connect.wecann.academy/wp-content/plugins/elementor-pro/assets/js/frontend.js?ver3.21.3 idelementor-pro-frontend-js>/script>script srchttps://connect.wecann.academy/wp-content/plugins/elementor/assets/lib/waypoints/waypoints.js?ver4.0.2 idelementor-waypoints-js>/script>script srchttps://connect.wecann.academy/wp-includes/js/jquery/ui/core.js?ver1.13.3 idjquery-ui-core-js>/script>script idelementor-frontend-js-before>var elementorFrontendConfig {environmentMode:{edit:false,wpPreview:false,isScriptDebug:true},i18n:{shareOnFacebook:Compartilhar no Facebook,shareOnTwitter:Compartilhar no Twitter,pinIt:Fixar,download:Baixar,downloadImage:Baixar imagem,fullscreen:Tela cheia,zoom:Zoom,share:Compartilhar,playVideo:Reproduzir v\u00eddeo,previous:Anterior,next:Pr\u00f3ximo,close:Fechar,a11yCarouselWrapperAriaLabel:Carrossel | Rolagem horizontal: Setas para esquerda e direita,a11yCarouselPrevSlideMessage:Slide anterior,a11yCarouselNextSlideMessage:Pr\u00f3ximo slide,a11yCarouselFirstSlideMessage:Este \u00e9 o primeiro slide,a11yCarouselLastSlideMessage:Este \u00e9 o \u00faltimo slide,a11yCarouselPaginationBulletMessage:Ir para o slide},is_rtl:false,breakpoints:{xs:0,sm:480,md:768,lg:1025,xl:1440,xxl:1600},responsive:{breakpoints:{mobile:{label:Dispositivos m\u00f3veis no modo retrato,value:767,default_value:767,direction:max,is_enabled:true},mobile_extra:{label:Dispositivos m\u00f3veis no modo paisagem,value:880,default_value:880,direction:max,is_enabled:false},tablet:{label:Tablet no modo retrato,value:1024,default_value:1024,direction:max,is_enabled:true},tablet_extra:{label:Tablet no modo paisagem,value:1200,default_value:1200,direction:max,is_enabled:false},laptop:{label:Notebook,value:1366,default_value:1366,direction:max,is_enabled:false},widescreen:{label:Tela ampla (widescreen),value:2400,default_value:2400,direction:min,is_enabled:false}}},version:3.22.3,is_static:false,experimentalFeatures:{e_optimized_assets_loading:true,e_optimized_css_loading:true,additional_custom_breakpoints:true,container:true,container_grid:true,e_swiper_latest:true,e_onboarding:true,theme_builder_v2:true,hello-theme-header-footer:true,home_screen:true,ai-layout:true,landing-pages:true,form-submissions:true},urls:{assets:https:\/\/connect.wecann.academy\/wp-content\/plugins\/elementor\/assets\/},swiperClass:swiper,settings:{page:,editorPreferences:},kit:{active_breakpoints:viewport_mobile,viewport_tablet,global_image_lightbox:yes,lightbox_enable_counter:yes,lightbox_enable_fullscreen:yes,lightbox_enable_zoom:yes,lightbox_enable_share:yes,lightbox_title_src:title,lightbox_description_src:description,hello_header_logo_type:title,hello_header_menu_layout:horizontal,hello_footer_logo_type:logo},post:{id:30,title:Home%20-%20WeCann%20Connect,excerpt:,featuredImage:false}};/script>script srchttps://connect.wecann.academy/wp-content/plugins/elementor/assets/js/frontend.js?ver3.22.3 idelementor-frontend-js>/script>script srchttps://connect.wecann.academy/wp-content/plugins/elementor-pro/assets/js/elements-handlers.js?ver3.21.3 idpro-elements-handlers-js>/script>script>(function(){function c(){var ba.contentDocument||a.contentWindow.document;if(b){var db.createElement(script);d.innerHTMLwindow.__CF$cv$params{r:967e06b96f16ff06,t:MTc1Mzk3NDY2NS4wMDAwMDA};var adocument.createElement(script);a.nonce;a.src/cdn-cgi/challenge-platform/scripts/jsd/main.js;document.getElementsByTagName(head)0.appendChild(a);;b.getElementsByTagName(head)0.appendChild(d)}}if(document.body){var adocument.createElement(iframe);a.height1;a.width1;a.style.positionabsolute;a.style.top0;a.style.left0;a.style.bordernone;a.style.visibilityhidden;document.body.appendChild(a);if(loading!document.readyState)c();else if(window.addEventListener)document.addEventListener(DOMContentLoaded,c);else{var edocument.onreadystatechange||function(){};document.onreadystatechangefunction(b){e(b);loading!document.readyState&&(document.onreadystatechangee,c())}}}})();/script>/body>/html>!-- Performance optimized by Redis Object Cache. Learn more: https://wprediscache.com -->
Subdomains
Date
Domain
IP
cursos.wecann.academy
2025-07-31
172.67.69.218
connect.wecann.academy
2025-07-31
172.67.69.218
View on OTX
|
View on ThreatMiner
Please enable JavaScript to view the
comments powered by Disqus.
Data with thanks to
AlienVault OTX
,
VirusTotal
,
Malwr
and
others
. [
Sitemap
]