Version Description
- New: Integrations with popular GDPR cookie consent solutions added: Cookie Notice by dFactory, GDPR Cookie Consent by WebToffee, Cookiebot by Cybot A/S, Complianz by Really Simple Plugins, and Borlabs Cookie by Borlabs. Visit the Twitter Feed settings page, Customize tab, Advanced section for more information.
- Tweak: Icon font support was discontinued. Only SVGs will be used for icons in feeds.
- Tweak: Twitter Intents JS updated to the latest version.
Download this release
Release Info
Developer | smashballoon |
Plugin | Custom Twitter Feeds |
Version | 1.7 |
Comparing to | |
See all releases |
Code changes from version 1.6.1 to 1.7
- README.txt +7 -2
- css/ctf-admin-styles.css +67 -0
- css/ctf-styles.css +11 -0
- css/ctf-styles.min.css +1 -1
- custom-twitter-feed.php +19 -16
- inc/CtfAdmin.php +123 -26
- inc/CtfFeed.php +21 -6
- inc/CtfOauthConnect.php +6 -1
- inc/class-ctf-gdpr-integrations.php +116 -0
- js/ctf-admin-scripts.js +24 -0
- js/ctf-scripts.js +207 -3617
- js/ctf-scripts.min.js +1 -1
- views/admin/customize.php +3 -0
- views/admin/support.php +28 -9
README.txt
CHANGED
@@ -5,7 +5,7 @@ Support Website: http://smashballoon/custom-twitter-feeds/
|
|
5 |
Tags: Twitter, Twitter feed, Twitter Tweets, Twitter widget, Custom Twitter Feed
|
6 |
Requires at least: 3.4
|
7 |
Tested up to: 5.6
|
8 |
-
Stable tag: 1.
|
9 |
License: GPLv2 or later
|
10 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
11 |
|
@@ -233,8 +233,13 @@ If you're still having trouble displaying your Tweets after trying the common is
|
|
233 |
7. To display a Twitter feed just copy and paste the shortcode into a Twitter widget or page
|
234 |
|
235 |
== Changelog ==
|
|
|
|
|
|
|
|
|
|
|
236 |
= 1.6.1 =
|
237 |
-
* Tweak: Added support for
|
238 |
* Tweak: HTML attribute rel="noopener noreferrer" added to all outbound links for extra security.
|
239 |
* Fix: Fixed PHP warning "non-numeric value encountered" when setting the tweet multiplier option to something that wasn't a number.
|
240 |
|
5 |
Tags: Twitter, Twitter feed, Twitter Tweets, Twitter widget, Custom Twitter Feed
|
6 |
Requires at least: 3.4
|
7 |
Tested up to: 5.6
|
8 |
+
Stable tag: 1.7
|
9 |
License: GPLv2 or later
|
10 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
11 |
|
233 |
7. To display a Twitter feed just copy and paste the shortcode into a Twitter widget or page
|
234 |
|
235 |
== Changelog ==
|
236 |
+
= 1.7 =
|
237 |
+
* New: Integrations with popular GDPR cookie consent solutions added: Cookie Notice by dFactory, GDPR Cookie Consent by WebToffee, Cookiebot by Cybot A/S, Complianz by Really Simple Plugins, and Borlabs Cookie by Borlabs. Visit the Twitter Feed settings page, Customize tab, Advanced section for more information.
|
238 |
+
* Tweak: Icon font support was discontinued. Only SVGs will be used for icons in feeds.
|
239 |
+
* Tweak: Twitter Intents JS updated to the latest version.
|
240 |
+
|
241 |
= 1.6.1 =
|
242 |
+
* Tweak: Added support for dynamic dashboard notices on the plugin settings page.
|
243 |
* Tweak: HTML attribute rel="noopener noreferrer" added to all outbound links for extra security.
|
244 |
* Fix: Fixed PHP warning "non-numeric value encountered" when setting the tweet multiplier option to something that wasn't a number.
|
245 |
|
css/ctf-admin-styles.css
CHANGED
@@ -625,6 +625,73 @@
|
|
625 |
content: "\f301";
|
626 |
}
|
627 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
628 |
/* Lite Notice */
|
629 |
@media screen and (max-width: 600px) {
|
630 |
#ctf-notice-bar {
|
625 |
content: "\f301";
|
626 |
}
|
627 |
|
628 |
+
/* GDPR Settings */
|
629 |
+
#ctf-admin .ctf-list{
|
630 |
+
list-style: inside disc;
|
631 |
+
}
|
632 |
+
#ctf-admin .ctf-box{
|
633 |
+
float: left;
|
634 |
+
clear: both;
|
635 |
+
width: 96%;
|
636 |
+
max-width: 900px;
|
637 |
+
|
638 |
+
padding: 10px 15px;
|
639 |
+
margin: 10px 0;
|
640 |
+
font-size: 13px;
|
641 |
+
background: #f9f9f9;
|
642 |
+
background: rgba(255,255,255,0.8);
|
643 |
+
|
644 |
+
-moz-border-radius: 8px;
|
645 |
+
-webkit-border-radius: 8px;
|
646 |
+
border-radius: 8px;
|
647 |
+
}
|
648 |
+
.gdpr_tooltip p{
|
649 |
+
padding: 0 0 10px 0;
|
650 |
+
}
|
651 |
+
.gdpr_tooltip span{
|
652 |
+
display: inline-block;
|
653 |
+
margin: 0;
|
654 |
+
font-weight: bold;
|
655 |
+
font-size: 14px;
|
656 |
+
}
|
657 |
+
.gdpr_tooltip .ctf-list{
|
658 |
+
padding: 0 0 10px 0;
|
659 |
+
}
|
660 |
+
.gdpr_tooltip li{
|
661 |
+
padding: 0;
|
662 |
+
}
|
663 |
+
.ctf_gdpr_plugin_active .ctf_active{
|
664 |
+
display: inline-block;
|
665 |
+
padding: 10px 20px 15px 20px;
|
666 |
+
border-radius: 5px;
|
667 |
+
background: #edf4f0;
|
668 |
+
border: 1px solid #2c8649;
|
669 |
+
color: #2c8649;
|
670 |
+
margin: 8px 0 0 0;
|
671 |
+
}
|
672 |
+
.ctf_gdpr_plugin_active svg{
|
673 |
+
width: 16px;
|
674 |
+
height: 16px;
|
675 |
+
position: relative;
|
676 |
+
top: 3px;
|
677 |
+
margin-right: 2px;
|
678 |
+
}
|
679 |
+
.ctf_gdpr_plugin_active path{
|
680 |
+
fill: green;
|
681 |
+
}
|
682 |
+
.ctf_gdpr_list,
|
683 |
+
.ctf_gdpr_yes,
|
684 |
+
.ctf_gdpr_no{
|
685 |
+
display: none;
|
686 |
+
}
|
687 |
+
#ctf-admin .ctf_gdpr_error{
|
688 |
+
padding: 10px 20px 15px 20px;
|
689 |
+
border-radius: 5px;
|
690 |
+
background: #F7E6E6;
|
691 |
+
border: 1px solid #BA7B7B;
|
692 |
+
color: #592626;
|
693 |
+
}
|
694 |
+
|
695 |
/* Lite Notice */
|
696 |
@media screen and (max-width: 600px) {
|
697 |
#ctf-notice-bar {
|
css/ctf-styles.css
CHANGED
@@ -364,6 +364,7 @@
|
|
364 |
#ctf.ctf-narrow .ctf-hide-avatar .ctf-tweet-actions,
|
365 |
#ctf.ctf-narrow .ctf-hide-avatar .ctf-quoted-tweet,
|
366 |
#ctf.ctf-narrow .ctf-hide-avatar .ctf-author-box,
|
|
|
367 |
#ctf.ctf-super-narrow .ctf-hide-avatar .ctf-context,
|
368 |
#ctf.ctf-super-narrow .ctf-hide-avatar .ctf-tweet-content,
|
369 |
#ctf.ctf-super-narrow .ctf-hide-avatar .ctf-tweet-actions,
|
@@ -371,6 +372,16 @@
|
|
371 |
#ctf.ctf-super-narrow .ctf-hide-avatar .ctf-author-box{
|
372 |
margin-left: 0;
|
373 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
374 |
|
375 |
/*Quoted tweets*/
|
376 |
#ctf .ctf-quoted-tweet{
|
364 |
#ctf.ctf-narrow .ctf-hide-avatar .ctf-tweet-actions,
|
365 |
#ctf.ctf-narrow .ctf-hide-avatar .ctf-quoted-tweet,
|
366 |
#ctf.ctf-narrow .ctf-hide-avatar .ctf-author-box,
|
367 |
+
#ctf .ctf-hide-avatar .ctf-author-name,
|
368 |
#ctf.ctf-super-narrow .ctf-hide-avatar .ctf-context,
|
369 |
#ctf.ctf-super-narrow .ctf-hide-avatar .ctf-tweet-content,
|
370 |
#ctf.ctf-super-narrow .ctf-hide-avatar .ctf-tweet-actions,
|
372 |
#ctf.ctf-super-narrow .ctf-hide-avatar .ctf-author-box{
|
373 |
margin-left: 0;
|
374 |
}
|
375 |
+
#ctf .ctf-hide-avatar .ctf-context {
|
376 |
+
padding-left: 0;
|
377 |
+
}
|
378 |
+
#ctf .ctf-header-img.ctf-no-consent .ctf-header-img-hover,
|
379 |
+
#ctf .ctf-header-img.ctf-no-consent {
|
380 |
+
display: block;
|
381 |
+
opacity: 1;
|
382 |
+
height: 48px;
|
383 |
+
}
|
384 |
+
|
385 |
|
386 |
/*Quoted tweets*/
|
387 |
#ctf .ctf-quoted-tweet{
|
css/ctf-styles.min.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
#ctf{overflow-y:auto;-ms-overflow-y:auto}#ctf .ctf-item{padding:15px 5px;border-top:1px solid #ddd;border-top:1px solid rgba(0,0,0,.1);overflow:hidden}#ctf .ctf-item:first-child{border-top:none}#ctf .ctf_remaining{display:none}#ctf .ctf_more{padding:1px;border:1px solid transparent;border-radius:3px;display:inline-block;line-height:1}#ctf .ctf_more:hover{cursor:pointer;background:rgba(0,0,0,.05);border:1px solid rgba(0,0,0,.1);text-decoration:none}#ctf .ctf-header{float:left;clear:both;margin:0;padding:5px 5px 15px 5px;line-height:1.2;width:100%;border-bottom:1px solid #ddd;border-bottom:1px solid rgba(0,0,0,.1);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}#ctf .ctf-header a{float:left;display:block}#ctf .ctf-header-img{float:left;position:relative;width:48px;margin:0 0 0 -100%!important;overflow:hidden;-moz-border-radius:40px;-webkit-border-radius:40px;border-radius:40px}#ctf .ctf-header-img img{display:block;float:left;margin:0!important;padding:0!important;border:none!important;-moz-border-radius:40px;-webkit-border-radius:40px;border-radius:40px}#ctf .ctf-author-avatar{clear:both;margin:3px 6px 0 -53px}#ctf .ctf-author-name{margin-left:6px}#ctf .ctf-author-box{margin-left:53px}#ctf .ctf-header-generic-icon,#ctf .ctf-header-img-hover{display:none;position:absolute;width:100%;top:0;bottom:0;left:0;text-align:center;color:#fff;background:#1b95e0;background:rgba(27,149,224,.85);-moz-border-radius:40px;-webkit-border-radius:40px;border-radius:40px;z-index:999}#ctf .ctf-header-generic-icon .fa,#ctf .ctf-header-generic-icon svg,#ctf .ctf-header-img-hover .fa,#ctf .ctf-header-img-hover svg{position:absolute;top:50%;left:50%;margin-top:-10px;margin-left:-8px;font-size:20px;z-index:1000}#ctf .ctf-header-generic-icon svg,#ctf .ctf-header-img-hover svg{margin-top:-10px;margin-left:-10px}#ctf .ctf-header-text{float:left;width:100%;padding-top:5px}#ctf .ctf-no-bio .ctf-header-text{padding-top:13px}#ctf .ctf-header a{text-decoration:none}#ctf .ctf-header-text .ctf-header-user,#ctf .ctf-header-text p{float:left;clear:both;width:auto;margin:0 0 0 60px!important;padding:0!important}#ctf .ctf-header-name{font-weight:700;margin-right:6px}#ctf .ctf-header-text .ctf-header-bio{padding:0!important;word-break:break-word}#ctf .ctf-header-text .ctf-verified{margin-right:5px}#ctf .ctf-header .ctf-header-follow{display:inline-block;padding:3px 6px;margin:0 0 0 2px;position:relative;top:-2px;background:#1b95e0;color:#fff;font-size:11px;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-transition:background .6s ease-in-out;-webkit-transition:background .6s ease-in-out;-o-transition:background .6s ease-in-out;transition:background .6s ease-in-out}#ctf .ctf-header .ctf-header-follow .fa,#ctf .ctf-header .ctf-header-follow svg{margin-right:3px;font-size:12px}#ctf .ctf-header a:hover .ctf-header-follow{background:#0c7abf;-moz-transition:background .2s ease-in-out;-webkit-transition:background .2s ease-in-out;-o-transition:background .2s ease-in-out;transition:background .2s ease-in-out}#ctf .ctf-header-type-generic .ctf-header-img{color:#fff;width:48px;height:48px;position:relative}#ctf .ctf-header-type-generic .ctf-header-link:hover .ctf-header-generic-icon{background:#0c7abf}#ctf .ctf-header-type-generic .ctf-header-no-bio{padding-top:9px!important;font-size:16px;font-weight:700}#ctf .ctf-header-type-generic .ctf-header-generic-icon{display:block;color:#fff;background:#1b95e0;-moz-transition:background .2s ease-in-out;-webkit-transition:background .2s ease-in-out;-o-transition:background .2s ease-in-out;transition:background .2s ease-in-out}#ctf .ctf-header-type-generic:hover .ctf-header-generic-icon{display:block;opacity:1}#ctf .ctf-header .ctf-header-user{font-size:16px;line-height:1.3;-ms-word-wrap:break-word;word-break:break-word}#ctf .ctf-header .ctf-header-screenname,#ctf .ctf-header p{font-size:13px;line-height:1.3}.ctf-screenreader{text-indent:-9999px!important;display:inline-block!important;width:0!important;height:0!important;line-height:0!important;text-align:left!important}#ctf .ctf-header-text.sbi-no-info .ctf-header-user{padding-top:9px!important}#ctf .ctf-header-text.sbi-no-bio .ctf-header-counts{clear:both}#ctf .ctf-context{width:100%;padding-left:42px;margin-bottom:2px}#ctf .ctf-with-logo .ctf-context{padding-right:30px}#ctf .ctf-retweet-icon{display:inline-block;font-size:inherit;line-height:1;margin:0 5px 0 0;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}#ctf.ctf-super-narrow .ctf-retweet-icon{margin:0 5px 0 0}#ctf .ctf-reply-icon{display:inline-block;font-size:inherit;padding:1px 3px 3px 3px;line-height:1;margin:0 3px 0 0}#ctf .ctf-author-box{margin-left:56px}#ctf .ctf-author-avatar{width:48px;height:48px;margin:3px 6px 0 -56px;float:left;overflow:hidden;border:none;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}#ctf .ctf-author-avatar img{margin:0!important;padding:0}#ctf .ctf-author-name,#ctf .ctf-author-screenname,#ctf .ctf-tweet-meta,#ctf .ctf-verified{margin-left:4px;margin-right:4px;display:inline-block}#ctf .ctf-screename-sep{margin:0 2px;display:inline-block}#ctf .ctf-author-name{font-weight:700!important;margin-top:4px}#ctf .ctf-author-box-link{color:#000;text-decoration:none;display:inline;line-height:1.5!important}#ctf .ctf-quoted-verified,#ctf .ctf-verified{color:#77c7f7;margin-left:0}#ctf .ctf-quoted-verified{margin-right:4px}#ctf .ctf-tweet-meta{display:inline-block}#ctf .ctf-replied-to-text a{font-size:inherit;color:inherit;font-weight:inherit}#ctf p.ctf-media-link,#ctf p.ctf-tweet-text{padding:0!important;margin:0!important;line-height:1.4}#ctf .ctf-tweet-actions,#ctf .ctf-tweet-content{margin-left:58px;margin-top:3px;max-width:100%}#ctf .ctf-corner-logo{display:inline-block;float:right;color:#1b95e0;font-size:24px}#ctf.ctf-narrow .ctf-corner-logo{font-size:20px}#ctf .ctf-hide-avatar .ctf-author-box,#ctf .ctf-hide-avatar .ctf-context,#ctf .ctf-hide-avatar .ctf-quoted-tweet,#ctf .ctf-hide-avatar .ctf-tweet-actions,#ctf .ctf-hide-avatar .ctf-tweet-content,#ctf.ctf-narrow .ctf-hide-avatar .ctf-author-box,#ctf.ctf-narrow .ctf-hide-avatar .ctf-context,#ctf.ctf-narrow .ctf-hide-avatar .ctf-quoted-tweet,#ctf.ctf-narrow .ctf-hide-avatar .ctf-tweet-actions,#ctf.ctf-narrow .ctf-hide-avatar .ctf-tweet-content,#ctf.ctf-super-narrow .ctf-hide-avatar .ctf-author-box,#ctf.ctf-super-narrow .ctf-hide-avatar .ctf-context,#ctf.ctf-super-narrow .ctf-hide-avatar .ctf-quoted-tweet,#ctf.ctf-super-narrow .ctf-hide-avatar .ctf-tweet-actions,#ctf.ctf-super-narrow .ctf-hide-avatar .ctf-tweet-content{margin-left:0}#ctf .ctf-quoted-tweet{display:block;clear:both;margin:7px 0 5px 58px;padding:8px 12px;border:1px solid #ddd;border:1px solid rgba(0,0,0,.1);text-decoration:none;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;-moz-transition:background .1s ease-in-out;-webkit-transition:background .1s ease-in-out;-o-transition:background .1s ease-in-out;transition:background .1s ease-in-out}#ctf .ctf-quoted-tweet:focus,#ctf .ctf-quoted-tweet:hover{background:#eee;background:rgba(0,0,0,.05);border:1px solid #ddd;border:1px solid rgba(0,0,0,.05);-moz-transition:background .1s ease-in-out;-webkit-transition:background .1s ease-in-out;-o-transition:background .1s ease-in-out;transition:background .1s ease-in-out}#ctf .ctf-quoted-author-name{font-weight:700;margin-right:4px}#ctf .ctf-quoted-tweet p{margin:2px 0}#ctf .ctf-tweet-actions a{padding:2px 10px 2px 5px;float:left}#ctf .ctf-tweet-actions a.ctf-like,#ctf .ctf-tweet-actions a.ctf-reply,#ctf .ctf-tweet-actions a.ctf-retweet{color:#bbb;color:rgba(0,0,0,.35);text-decoration:none;border:none;-moz-transition:color .1s ease-in-out;-webkit-transition:color .1s ease-in-out;-o-transition:color .1s ease-in-out;transition:color .1s ease-in-out}#ctf .ctf-tweet-actions a span.fa,#ctf .ctf-tweet-actions a svg{width:1.1em;height:1.1em;font-size:1.1em}#ctf .ctf-tweet-actions a span.fa.fa-retweet{width:1.2em;height:1.2em;font-size:1.2em}#ctf .ctf-tweet-actions .ctf-reply{margin-left:-5px}#ctf .ctf-tweet-actions a:focus,#ctf .ctf-tweet-actions a:hover{-moz-transition:color .1s ease-in-out;-webkit-transition:color .1s ease-in-out;-o-transition:color .1s ease-in-out;transition:color .1s ease-in-out}#ctf .ctf-tweet-actions .ctf-reply:focus,#ctf .ctf-tweet-actions .ctf-reply:hover{color:#e34f0e!important}#ctf .ctf-tweet-actions .ctf-retweet:focus,#ctf .ctf-tweet-actions .ctf-retweet:hover{color:#19cf86!important}#ctf .ctf-tweet-actions .ctf-like:focus,#ctf .ctf-tweet-actions .ctf-like:hover{color:#e81c4f!important}#ctf .ctf-action-count{float:right;padding-left:3px;font-size:.9em;margin-top:.25em;line-height:1.2em}#ctf .ctf-twitterlink{margin-top:.3em;line-height:1.2em;font-size:.8em}#ctf .ctf-quoted-tweet-text-media-wrap,#ctf .ctf-tweet-text-media-wrap{margin-left:5px;padding:4px;display:inline-block;border:1px solid #ddd;border:1px solid rgba(0,0,0,.15);color:inherit;text-decoration:none;line-height:1;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-moz-transition:background .1s ease-in-out;-webkit-transition:background .1s ease-in-out;-o-transition:background .1s ease-in-out;transition:background .1s ease-in-out}#ctf .ctf-tweet-text-media-wrap:focus,#ctf .ctf-tweet-text-media-wrap:hover{background:#eee;background:rgba(0,0,0,.05);border:1px solid #ddd;border:1px solid rgba(0,0,0,.1);-moz-transition:background .1s ease-in-out;-webkit-transition:background .1s ease-in-out;-o-transition:background .1s ease-in-out;transition:background .1s ease-in-out}.ctf-multi-media-icon .ctf-tweet-text-media,.ctf-quoted-tweet-text .ctf-tweet-text-media{margin-left:3px}#ctf #ctf-more{display:block;border:none;background:#eee;background:rgba(0,0,0,.05);width:100%;min-height:30px;padding:5px 0;margin:0;position:relative;text-align:center;box-sizing:border-box;outline:0;text-decoration:none;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;-moz-transition:background .1s ease-in-out;-webkit-transition:background .1s ease-in-out;-o-transition:background .1s ease-in-out;transition:background .1s ease-in-out}#ctf #ctf-more:hover{background:#ddd;background:rgba(0,0,0,.1);-moz-transition:background .1s ease-in-out;-webkit-transition:background .1s ease-in-out;-o-transition:background .1s ease-in-out;transition:background .1s ease-in-out}#ctf #ctf-more.ctf-loading span{-moz-transition:opacity .5s ease-in-out;-webkit-transition:opacity .5s ease-in-out;-o-transition:opacity .5s ease-in-out;transition:opacity .5s ease-in-out}#ctf #ctf-more.ctf-loading span{opacity:0}#ctf .ctf-loader{width:20px;height:20px;position:absolute;top:50%;left:50%;margin:-10px 0 0 -10px;background-color:unset;background-color:rgba(0,0,0,.5);border-radius:100%;-webkit-animation:ctf-sk-scaleout 1s infinite ease-in-out;animation:ctf-sk-scaleout 1s infinite ease-in-out}@-webkit-keyframes ctf-sk-scaleout{0%{-webkit-transform:scale(0)}100%{-webkit-transform:scale(1);opacity:0}}@keyframes ctf-sk-scaleout{0%{-webkit-transform:scale(0);transform:scale(0)}100%{-webkit-transform:scale(1);transform:scale(1);opacity:0}}.ctf-credit-link{width:100%;clear:both;padding:5px 0;margin-top:5px;text-align:center;font-size:12px}.ctf-credit-link .fa,.ctf-credit-link svg{margin-right:4px}#ctf svg{box-sizing:unset}#ctf svg:not(:root).svg-inline--fa,#ctf_lightbox svg:not(:root).svg-inline--fa{box-sizing:unset;overflow:visible;width:1em}#ctf .svg-inline--fa.fa-w-16{width:16px}#ctf .svg-inline--fa.fa-w-20{width:20px}#ctf .ctf-context .ctf-retweet-icon svg{width:1.2em;height:1.2em}#ctf .svg-inline--fa,#ctf_lightbox .svg-inline--fa{display:inline-block;font-size:inherit;height:1em;overflow:visible;vertical-align:-.125em}#ctf #ctf .ctf-photo-hover span.fa-arrows-alt,#ctf .ctf-photo-hover svg.fa-arrows-alt{display:none}#ctf.ctf-styles .ctf-author-screenname,#ctf.ctf-styles .ctf-context,#ctf.ctf-styles .ctf-screename-sep,#ctf.ctf-styles .ctf-tweet-meta{font-size:12px}#ctf .ctf-error{width:100%;text-align:center}#ctf .ctf-error code,#ctf .ctf-error iframe,#ctf .ctf-error p{padding:0;margin:0 2px}#ctf .ctf-error-user p{padding-bottom:5px}#ctf .ctf-error-user{width:100%}#ctf .ctf-error-admin{margin-top:15px;display:inline-block}#ctf .ctf-error code{display:block;padding:4px}.ctf_smash_error{border:1px solid #ddd;background:#eee;color:#333;margin:10px 0 0;padding:10px 15px;font-size:13px;text-align:center;clear:both;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px}.ctf_smash_error p{padding:5px 0!important;margin:0!important;line-height:1.3!important}.ctf_smash_error span{font-size:12px}#ctf .ctf-out-of-tweets{width:100%}#ctf .ctf-out-of-tweets{display:block;border:1px solid rgba(0,0,0,.1);background:0 0;background:0 0;width:100%;min-height:30px;padding:5px 0;margin:0;position:relative;text-align:center;box-sizing:border-box;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}#ctf .ctf-out-of-tweets iframe,#ctf .ctf-out-of-tweets p{margin:0 2px;padding:0}#ctf .ctf-out-of-tweets p{padding:3px;display:none}#ctf.ctf-narrow .ctf-author-avatar,#ctf.ctf-narrow .ctf-author-avatar img{width:38px;height:38px}#ctf.ctf-narrow .ctf-quoted-tweet,#ctf.ctf-narrow .ctf-tweet-actions,#ctf.ctf-narrow .ctf-tweet-content{margin-left:48px}#ctf.ctf-narrow .ctf-context{margin-left:49px}#ctf.ctf-narrow .ctf-author-box{margin-left:46px}#ctf.ctf-narrow .ctf-author-avatar{margin-left:-46px}#ctf.ctf-narrow .ctf-tweet-content{padding:3px 0 5px 0}#ctf.ctf-narrow .ctf-tweet-actions{float:left;clear:both}#ctf.ctf-super-narrow .ctf-context,#ctf.ctf-super-narrow .ctf-quoted-tweet,#ctf.ctf-super-narrow .ctf-tweet-actions,#ctf.ctf-super-narrow .ctf-tweet-content{margin-left:0}#ctf.ctf-super-narrow .ctf-author-box{min-height:32px;margin-bottom:2px}#ctf.ctf-super-narrow .ctf-author-avatar,#ctf.ctf-super-narrow .ctf-author-avatar img{width:32px;height:32px}#ctf.ctf-super-narrow .ctf-author-box{margin-left:38px;float:left;clear:both}#ctf.ctf-super-narrow .ctf-author-avatar{margin-left:-38px;margin-top:0}#ctf.ctf-super-narrow .ctf-author-screenname,#ctf.ctf-super-narrow .ctf-screename-sep{display:none}#ctf.ctf-super-narrow .ctf-context{padding-bottom:5px}#ctf.ctf-super-narrow .ctf-author-name{display:inline-block}#ctf.ctf-super-narrow .ctf-tweet-content{float:left;clear:both}#ctf.ctf-super-narrow .ctf-credit-link{font-size:10px}#ctf.ctf-super-narrow .ctf-header-bio{margin:0!important;padding-top:5px}#ctf.ctf-super-narrow .ctf-header-user{min-height:48px}#ctf.ctf-super-narrow .ctf-header-text{padding-top:10px}#ctf.ctf-super-narrow .ctf-header-follow{margin-top:5px}#ctf.ctf-super-narrow .ctf-more span{display:block;margin-top:3px}@media all and (max-width:640px){#ctf.ctf-width-resp{width:100%!important}}
|
1 |
+
#ctf{overflow-y:auto;-ms-overflow-y:auto}#ctf .ctf-item{padding:15px 5px;border-top:1px solid #ddd;border-top:1px solid rgba(0,0,0,.1);overflow:hidden}#ctf .ctf-item:first-child{border-top:none}#ctf .ctf_remaining{display:none}#ctf .ctf_more{padding:1px;border:1px solid transparent;border-radius:3px;display:inline-block;line-height:1}#ctf .ctf_more:hover{cursor:pointer;background:rgba(0,0,0,.05);border:1px solid rgba(0,0,0,.1);text-decoration:none}#ctf .ctf-header{float:left;clear:both;margin:0;padding:5px 5px 15px 5px;line-height:1.2;width:100%;border-bottom:1px solid #ddd;border-bottom:1px solid rgba(0,0,0,.1);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}#ctf .ctf-header a{float:left;display:block}#ctf .ctf-header-img{float:left;position:relative;width:48px;margin:0 0 0 -100%!important;overflow:hidden;-moz-border-radius:40px;-webkit-border-radius:40px;border-radius:40px}#ctf .ctf-header-img img{display:block;float:left;margin:0!important;padding:0!important;border:none!important;-moz-border-radius:40px;-webkit-border-radius:40px;border-radius:40px}#ctf .ctf-author-avatar{clear:both;margin:3px 6px 0 -53px}#ctf .ctf-author-name{margin-left:6px}#ctf .ctf-author-box{margin-left:53px}#ctf .ctf-header-generic-icon,#ctf .ctf-header-img-hover{display:none;position:absolute;width:100%;top:0;bottom:0;left:0;text-align:center;color:#fff;background:#1b95e0;background:rgba(27,149,224,.85);-moz-border-radius:40px;-webkit-border-radius:40px;border-radius:40px;z-index:999}#ctf .ctf-header-generic-icon .fa,#ctf .ctf-header-generic-icon svg,#ctf .ctf-header-img-hover .fa,#ctf .ctf-header-img-hover svg{position:absolute;top:50%;left:50%;margin-top:-10px;margin-left:-8px;font-size:20px;z-index:1000}#ctf .ctf-header-generic-icon svg,#ctf .ctf-header-img-hover svg{margin-top:-10px;margin-left:-10px}#ctf .ctf-header-text{float:left;width:100%;padding-top:5px}#ctf .ctf-no-bio .ctf-header-text{padding-top:13px}#ctf .ctf-header a{text-decoration:none}#ctf .ctf-header-text .ctf-header-user,#ctf .ctf-header-text p{float:left;clear:both;width:auto;margin:0 0 0 60px!important;padding:0!important}#ctf .ctf-header-name{font-weight:700;margin-right:6px}#ctf .ctf-header-text .ctf-header-bio{padding:0!important;word-break:break-word}#ctf .ctf-header-text .ctf-verified{margin-right:5px}#ctf .ctf-header .ctf-header-follow{display:inline-block;padding:3px 6px;margin:0 0 0 2px;position:relative;top:-2px;background:#1b95e0;color:#fff;font-size:11px;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-transition:background .6s ease-in-out;-webkit-transition:background .6s ease-in-out;-o-transition:background .6s ease-in-out;transition:background .6s ease-in-out}#ctf .ctf-header .ctf-header-follow .fa,#ctf .ctf-header .ctf-header-follow svg{margin-right:3px;font-size:12px}#ctf .ctf-header a:hover .ctf-header-follow{background:#0c7abf;-moz-transition:background .2s ease-in-out;-webkit-transition:background .2s ease-in-out;-o-transition:background .2s ease-in-out;transition:background .2s ease-in-out}#ctf .ctf-header-type-generic .ctf-header-img{color:#fff;width:48px;height:48px;position:relative}#ctf .ctf-header-type-generic .ctf-header-link:hover .ctf-header-generic-icon{background:#0c7abf}#ctf .ctf-header-type-generic .ctf-header-no-bio{padding-top:9px!important;font-size:16px;font-weight:700}#ctf .ctf-header-type-generic .ctf-header-generic-icon{display:block;color:#fff;background:#1b95e0;-moz-transition:background .2s ease-in-out;-webkit-transition:background .2s ease-in-out;-o-transition:background .2s ease-in-out;transition:background .2s ease-in-out}#ctf .ctf-header-type-generic:hover .ctf-header-generic-icon{display:block;opacity:1}#ctf .ctf-header .ctf-header-user{font-size:16px;line-height:1.3;-ms-word-wrap:break-word;word-break:break-word}#ctf .ctf-header .ctf-header-screenname,#ctf .ctf-header p{font-size:13px;line-height:1.3}.ctf-screenreader{text-indent:-9999px!important;display:inline-block!important;width:0!important;height:0!important;line-height:0!important;text-align:left!important}#ctf .ctf-header-text.sbi-no-info .ctf-header-user{padding-top:9px!important}#ctf .ctf-header-text.sbi-no-bio .ctf-header-counts{clear:both}#ctf .ctf-context{width:100%;padding-left:42px;margin-bottom:2px}#ctf .ctf-with-logo .ctf-context{padding-right:30px}#ctf .ctf-retweet-icon{display:inline-block;font-size:inherit;line-height:1;margin:0 5px 0 0;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}#ctf.ctf-super-narrow .ctf-retweet-icon{margin:0 5px 0 0}#ctf .ctf-reply-icon{display:inline-block;font-size:inherit;padding:1px 3px 3px 3px;line-height:1;margin:0 3px 0 0}#ctf .ctf-author-box{margin-left:56px}#ctf .ctf-author-avatar{width:48px;height:48px;margin:3px 6px 0 -56px;float:left;overflow:hidden;border:none;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}#ctf .ctf-author-avatar img{margin:0!important;padding:0}#ctf .ctf-author-name,#ctf .ctf-author-screenname,#ctf .ctf-tweet-meta,#ctf .ctf-verified{margin-left:4px;margin-right:4px;display:inline-block}#ctf .ctf-screename-sep{margin:0 2px;display:inline-block}#ctf .ctf-author-name{font-weight:700!important;margin-top:4px}#ctf .ctf-author-box-link{color:#000;text-decoration:none;display:inline;line-height:1.5!important}#ctf .ctf-quoted-verified,#ctf .ctf-verified{color:#77c7f7;margin-left:0}#ctf .ctf-quoted-verified{margin-right:4px}#ctf .ctf-tweet-meta{display:inline-block}#ctf .ctf-replied-to-text a{font-size:inherit;color:inherit;font-weight:inherit}#ctf p.ctf-media-link,#ctf p.ctf-tweet-text{padding:0!important;margin:0!important;line-height:1.4}#ctf .ctf-tweet-actions,#ctf .ctf-tweet-content{margin-left:58px;margin-top:3px;max-width:100%}#ctf .ctf-corner-logo{display:inline-block;float:right;color:#1b95e0;font-size:24px}#ctf.ctf-narrow .ctf-corner-logo{font-size:20px}#ctf .ctf-hide-avatar .ctf-author-box,#ctf .ctf-hide-avatar .ctf-author-name,#ctf .ctf-hide-avatar .ctf-context,#ctf .ctf-hide-avatar .ctf-quoted-tweet,#ctf .ctf-hide-avatar .ctf-tweet-actions,#ctf .ctf-hide-avatar .ctf-tweet-content,#ctf.ctf-narrow .ctf-hide-avatar .ctf-author-box,#ctf.ctf-narrow .ctf-hide-avatar .ctf-context,#ctf.ctf-narrow .ctf-hide-avatar .ctf-quoted-tweet,#ctf.ctf-narrow .ctf-hide-avatar .ctf-tweet-actions,#ctf.ctf-narrow .ctf-hide-avatar .ctf-tweet-content,#ctf.ctf-super-narrow .ctf-hide-avatar .ctf-author-box,#ctf.ctf-super-narrow .ctf-hide-avatar .ctf-context,#ctf.ctf-super-narrow .ctf-hide-avatar .ctf-quoted-tweet,#ctf.ctf-super-narrow .ctf-hide-avatar .ctf-tweet-actions,#ctf.ctf-super-narrow .ctf-hide-avatar .ctf-tweet-content{margin-left:0}#ctf .ctf-hide-avatar .ctf-context{padding-left:0}#ctf .ctf-header-img.ctf-no-consent,#ctf .ctf-header-img.ctf-no-consent .ctf-header-img-hover{display:block;opacity:1;height:48px}#ctf .ctf-quoted-tweet{display:block;clear:both;margin:7px 0 5px 58px;padding:8px 12px;border:1px solid #ddd;border:1px solid rgba(0,0,0,.1);text-decoration:none;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;-moz-transition:background .1s ease-in-out;-webkit-transition:background .1s ease-in-out;-o-transition:background .1s ease-in-out;transition:background .1s ease-in-out}#ctf .ctf-quoted-tweet:focus,#ctf .ctf-quoted-tweet:hover{background:#eee;background:rgba(0,0,0,.05);border:1px solid #ddd;border:1px solid rgba(0,0,0,.05);-moz-transition:background .1s ease-in-out;-webkit-transition:background .1s ease-in-out;-o-transition:background .1s ease-in-out;transition:background .1s ease-in-out}#ctf .ctf-quoted-author-name{font-weight:700;margin-right:4px}#ctf .ctf-quoted-tweet p{margin:2px 0}#ctf .ctf-tweet-actions a{padding:2px 10px 2px 5px;float:left}#ctf .ctf-tweet-actions a.ctf-like,#ctf .ctf-tweet-actions a.ctf-reply,#ctf .ctf-tweet-actions a.ctf-retweet{color:#bbb;color:rgba(0,0,0,.35);text-decoration:none;border:none;-moz-transition:color .1s ease-in-out;-webkit-transition:color .1s ease-in-out;-o-transition:color .1s ease-in-out;transition:color .1s ease-in-out}#ctf .ctf-tweet-actions a span.fa,#ctf .ctf-tweet-actions a svg{width:1.1em;height:1.1em;font-size:1.1em}#ctf .ctf-tweet-actions a span.fa.fa-retweet{width:1.2em;height:1.2em;font-size:1.2em}#ctf .ctf-tweet-actions .ctf-reply{margin-left:-5px}#ctf .ctf-tweet-actions a:focus,#ctf .ctf-tweet-actions a:hover{-moz-transition:color .1s ease-in-out;-webkit-transition:color .1s ease-in-out;-o-transition:color .1s ease-in-out;transition:color .1s ease-in-out}#ctf .ctf-tweet-actions .ctf-reply:focus,#ctf .ctf-tweet-actions .ctf-reply:hover{color:#e34f0e!important}#ctf .ctf-tweet-actions .ctf-retweet:focus,#ctf .ctf-tweet-actions .ctf-retweet:hover{color:#19cf86!important}#ctf .ctf-tweet-actions .ctf-like:focus,#ctf .ctf-tweet-actions .ctf-like:hover{color:#e81c4f!important}#ctf .ctf-action-count{float:right;padding-left:3px;font-size:.9em;margin-top:.25em;line-height:1.2em}#ctf .ctf-twitterlink{margin-top:.3em;line-height:1.2em;font-size:.8em}#ctf .ctf-quoted-tweet-text-media-wrap,#ctf .ctf-tweet-text-media-wrap{margin-left:5px;padding:4px;display:inline-block;border:1px solid #ddd;border:1px solid rgba(0,0,0,.15);color:inherit;text-decoration:none;line-height:1;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-moz-transition:background .1s ease-in-out;-webkit-transition:background .1s ease-in-out;-o-transition:background .1s ease-in-out;transition:background .1s ease-in-out}#ctf .ctf-tweet-text-media-wrap:focus,#ctf .ctf-tweet-text-media-wrap:hover{background:#eee;background:rgba(0,0,0,.05);border:1px solid #ddd;border:1px solid rgba(0,0,0,.1);-moz-transition:background .1s ease-in-out;-webkit-transition:background .1s ease-in-out;-o-transition:background .1s ease-in-out;transition:background .1s ease-in-out}.ctf-multi-media-icon .ctf-tweet-text-media,.ctf-quoted-tweet-text .ctf-tweet-text-media{margin-left:3px}#ctf #ctf-more{display:block;border:none;background:#eee;background:rgba(0,0,0,.05);width:100%;min-height:30px;padding:5px 0;margin:0;position:relative;text-align:center;box-sizing:border-box;outline:0;text-decoration:none;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;-moz-transition:background .1s ease-in-out;-webkit-transition:background .1s ease-in-out;-o-transition:background .1s ease-in-out;transition:background .1s ease-in-out}#ctf #ctf-more:hover{background:#ddd;background:rgba(0,0,0,.1);-moz-transition:background .1s ease-in-out;-webkit-transition:background .1s ease-in-out;-o-transition:background .1s ease-in-out;transition:background .1s ease-in-out}#ctf #ctf-more.ctf-loading span{-moz-transition:opacity .5s ease-in-out;-webkit-transition:opacity .5s ease-in-out;-o-transition:opacity .5s ease-in-out;transition:opacity .5s ease-in-out}#ctf #ctf-more.ctf-loading span{opacity:0}#ctf .ctf-loader{width:20px;height:20px;position:absolute;top:50%;left:50%;margin:-10px 0 0 -10px;background-color:unset;background-color:rgba(0,0,0,.5);border-radius:100%;-webkit-animation:ctf-sk-scaleout 1s infinite ease-in-out;animation:ctf-sk-scaleout 1s infinite ease-in-out}@-webkit-keyframes ctf-sk-scaleout{0%{-webkit-transform:scale(0)}100%{-webkit-transform:scale(1);opacity:0}}@keyframes ctf-sk-scaleout{0%{-webkit-transform:scale(0);transform:scale(0)}100%{-webkit-transform:scale(1);transform:scale(1);opacity:0}}.ctf-credit-link{width:100%;clear:both;padding:5px 0;margin-top:5px;text-align:center;font-size:12px}.ctf-credit-link .fa,.ctf-credit-link svg{margin-right:4px}#ctf svg{box-sizing:unset}#ctf svg:not(:root).svg-inline--fa,#ctf_lightbox svg:not(:root).svg-inline--fa{box-sizing:unset;overflow:visible;width:1em}#ctf .svg-inline--fa.fa-w-16{width:16px}#ctf .svg-inline--fa.fa-w-20{width:20px}#ctf .ctf-context .ctf-retweet-icon svg{width:1.2em;height:1.2em}#ctf .svg-inline--fa,#ctf_lightbox .svg-inline--fa{display:inline-block;font-size:inherit;height:1em;overflow:visible;vertical-align:-.125em}#ctf #ctf .ctf-photo-hover span.fa-arrows-alt,#ctf .ctf-photo-hover svg.fa-arrows-alt{display:none}#ctf.ctf-styles .ctf-author-screenname,#ctf.ctf-styles .ctf-context,#ctf.ctf-styles .ctf-screename-sep,#ctf.ctf-styles .ctf-tweet-meta{font-size:12px}#ctf .ctf-error{width:100%;text-align:center}#ctf .ctf-error code,#ctf .ctf-error iframe,#ctf .ctf-error p{padding:0;margin:0 2px}#ctf .ctf-error-user p{padding-bottom:5px}#ctf .ctf-error-user{width:100%}#ctf .ctf-error-admin{margin-top:15px;display:inline-block}#ctf .ctf-error code{display:block;padding:4px}.ctf_smash_error{border:1px solid #ddd;background:#eee;color:#333;margin:10px 0 0;padding:10px 15px;font-size:13px;text-align:center;clear:both;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px}.ctf_smash_error p{padding:5px 0!important;margin:0!important;line-height:1.3!important}.ctf_smash_error span{font-size:12px}#ctf .ctf-out-of-tweets{width:100%}#ctf .ctf-out-of-tweets{display:block;border:1px solid rgba(0,0,0,.1);background:0 0;background:0 0;width:100%;min-height:30px;padding:5px 0;margin:0;position:relative;text-align:center;box-sizing:border-box;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}#ctf .ctf-out-of-tweets iframe,#ctf .ctf-out-of-tweets p{margin:0 2px;padding:0}#ctf .ctf-out-of-tweets p{padding:3px;display:none}#ctf.ctf-narrow .ctf-author-avatar,#ctf.ctf-narrow .ctf-author-avatar img{width:38px;height:38px}#ctf.ctf-narrow .ctf-quoted-tweet,#ctf.ctf-narrow .ctf-tweet-actions,#ctf.ctf-narrow .ctf-tweet-content{margin-left:48px}#ctf.ctf-narrow .ctf-context{margin-left:49px}#ctf.ctf-narrow .ctf-author-box{margin-left:46px}#ctf.ctf-narrow .ctf-author-avatar{margin-left:-46px}#ctf.ctf-narrow .ctf-tweet-content{padding:3px 0 5px 0}#ctf.ctf-narrow .ctf-tweet-actions{float:left;clear:both}#ctf.ctf-super-narrow .ctf-context,#ctf.ctf-super-narrow .ctf-quoted-tweet,#ctf.ctf-super-narrow .ctf-tweet-actions,#ctf.ctf-super-narrow .ctf-tweet-content{margin-left:0}#ctf.ctf-super-narrow .ctf-author-box{min-height:32px;margin-bottom:2px}#ctf.ctf-super-narrow .ctf-author-avatar,#ctf.ctf-super-narrow .ctf-author-avatar img{width:32px;height:32px}#ctf.ctf-super-narrow .ctf-author-box{margin-left:38px;float:left;clear:both}#ctf.ctf-super-narrow .ctf-author-avatar{margin-left:-38px;margin-top:0}#ctf.ctf-super-narrow .ctf-author-screenname,#ctf.ctf-super-narrow .ctf-screename-sep{display:none}#ctf.ctf-super-narrow .ctf-context{padding-bottom:5px}#ctf.ctf-super-narrow .ctf-author-name{display:inline-block}#ctf.ctf-super-narrow .ctf-tweet-content{float:left;clear:both}#ctf.ctf-super-narrow .ctf-credit-link{font-size:10px}#ctf.ctf-super-narrow .ctf-header-bio{margin:0!important;padding-top:5px}#ctf.ctf-super-narrow .ctf-header-user{min-height:48px}#ctf.ctf-super-narrow .ctf-header-text{padding-top:10px}#ctf.ctf-super-narrow .ctf-header-follow{margin-top:5px}#ctf.ctf-super-narrow .ctf-more span{display:block;margin-top:3px}@media all and (max-width:640px){#ctf.ctf-width-resp{width:100%!important}}
|
custom-twitter-feed.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
Plugin Name: Custom Twitter Feeds
|
4 |
Plugin URI: http://smashballoon.com/custom-twitter-feeds
|
5 |
Description: Customizable Twitter feeds for your website
|
6 |
-
Version: 1.
|
7 |
Author: Smash Balloon
|
8 |
Author URI: http://smashballoon.com/
|
9 |
Text Domain: custom-twitter-feeds
|
@@ -24,7 +24,7 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
24 |
*/
|
25 |
|
26 |
define( 'CTF_URL', plugin_dir_path( __FILE__ ) );
|
27 |
-
define( 'CTF_VERSION', '1.
|
28 |
define( 'CTF_TITLE', 'Custom Twitter Feeds' );
|
29 |
define( 'CTF_JS_URL', plugins_url( '/js/ctf-scripts.min.js?ver=' . CTF_VERSION , __FILE__ ) );
|
30 |
define( 'OAUTH_PROCESSOR_URL', 'https://api.smashballoon.com/twitter-login.php?return_uri=' );
|
@@ -57,6 +57,7 @@ function ctf_plugin_init() {
|
|
57 |
}
|
58 |
|
59 |
include_once trailingslashit( CTF_PLUGIN_DIR ) . 'inc/class-ctf-tracking.php';
|
|
|
60 |
|
61 |
if ( is_admin() ) {
|
62 |
if ( version_compare( PHP_VERSION, '5.3.0' ) >= 0
|
@@ -354,7 +355,7 @@ add_filter( 'ctf_quoted_tweet_text', 'ctf_replace_urls', 9, 3 );
|
|
354 |
|
355 |
function ctf_get_fa_el( $icon ) {
|
356 |
$options = get_option( 'ctf_options' );
|
357 |
-
$font_method =
|
358 |
|
359 |
$elems = array(
|
360 |
'fa-arrows-alt' => array(
|
@@ -527,26 +528,20 @@ register_deactivation_hook( __FILE__, 'ctf_deactivate' );
|
|
527 |
function ctf_scripts_and_styles( $enqueue = false ) {
|
528 |
$options = get_option( 'ctf_options' );
|
529 |
$not_ajax_theme = (! isset( $options['ajax_theme'] ) || ! $options['ajax_theme']);
|
530 |
-
$font_method =
|
531 |
-
|
|
|
|
|
|
|
532 |
|
533 |
wp_enqueue_style( 'ctf_styles', plugins_url( '/css/ctf-styles.min.css', __FILE__ ), array(), CTF_VERSION );
|
534 |
|
535 |
-
if ( $font_method === 'fontfile' && ! $disable_awesome ) {
|
536 |
-
wp_enqueue_style( 'sb-font-awesome', 'https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css' );
|
537 |
-
}
|
538 |
|
539 |
if ( $not_ajax_theme ) {
|
540 |
wp_register_script( 'ctf_scripts', plugins_url( '/js/ctf-scripts.min.js', __FILE__ ), array( 'jquery' ), CTF_VERSION, true );
|
541 |
-
wp_localize_script( 'ctf_scripts', 'ctf',
|
542 |
-
'ajax_url' => admin_url( 'admin-ajax.php' )
|
543 |
-
)
|
544 |
-
);
|
545 |
} else {
|
546 |
-
wp_localize_script( 'jquery', 'ctf',
|
547 |
-
'ajax_url' => admin_url( 'admin-ajax.php' )
|
548 |
-
)
|
549 |
-
);
|
550 |
}
|
551 |
|
552 |
if ( $enqueue ) {
|
@@ -612,4 +607,12 @@ add_action( 'admin_enqueue_scripts', 'ctf_admin_scripts_and_styles' );
|
|
612 |
|
613 |
function ctf_is_pro_version() {
|
614 |
return defined( 'CTF_STORE_URL' );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
615 |
}
|
3 |
Plugin Name: Custom Twitter Feeds
|
4 |
Plugin URI: http://smashballoon.com/custom-twitter-feeds
|
5 |
Description: Customizable Twitter feeds for your website
|
6 |
+
Version: 1.7
|
7 |
Author: Smash Balloon
|
8 |
Author URI: http://smashballoon.com/
|
9 |
Text Domain: custom-twitter-feeds
|
24 |
*/
|
25 |
|
26 |
define( 'CTF_URL', plugin_dir_path( __FILE__ ) );
|
27 |
+
define( 'CTF_VERSION', '1.7' );
|
28 |
define( 'CTF_TITLE', 'Custom Twitter Feeds' );
|
29 |
define( 'CTF_JS_URL', plugins_url( '/js/ctf-scripts.min.js?ver=' . CTF_VERSION , __FILE__ ) );
|
30 |
define( 'OAUTH_PROCESSOR_URL', 'https://api.smashballoon.com/twitter-login.php?return_uri=' );
|
57 |
}
|
58 |
|
59 |
include_once trailingslashit( CTF_PLUGIN_DIR ) . 'inc/class-ctf-tracking.php';
|
60 |
+
include_once trailingslashit( CTF_PLUGIN_DIR ) . 'inc/class-ctf-gdpr-integrations.php';
|
61 |
|
62 |
if ( is_admin() ) {
|
63 |
if ( version_compare( PHP_VERSION, '5.3.0' ) >= 0
|
355 |
|
356 |
function ctf_get_fa_el( $icon ) {
|
357 |
$options = get_option( 'ctf_options' );
|
358 |
+
$font_method = 'svg';
|
359 |
|
360 |
$elems = array(
|
361 |
'fa-arrows-alt' => array(
|
528 |
function ctf_scripts_and_styles( $enqueue = false ) {
|
529 |
$options = get_option( 'ctf_options' );
|
530 |
$not_ajax_theme = (! isset( $options['ajax_theme'] ) || ! $options['ajax_theme']);
|
531 |
+
$font_method = 'svg';
|
532 |
+
|
533 |
+
$loacalize_args = array(
|
534 |
+
'ajax_url' => admin_url( 'admin-ajax.php' )
|
535 |
+
);
|
536 |
|
537 |
wp_enqueue_style( 'ctf_styles', plugins_url( '/css/ctf-styles.min.css', __FILE__ ), array(), CTF_VERSION );
|
538 |
|
|
|
|
|
|
|
539 |
|
540 |
if ( $not_ajax_theme ) {
|
541 |
wp_register_script( 'ctf_scripts', plugins_url( '/js/ctf-scripts.min.js', __FILE__ ), array( 'jquery' ), CTF_VERSION, true );
|
542 |
+
wp_localize_script( 'ctf_scripts', 'ctf', $loacalize_args );
|
|
|
|
|
|
|
543 |
} else {
|
544 |
+
wp_localize_script( 'jquery', 'ctf', $loacalize_args );
|
|
|
|
|
|
|
545 |
}
|
546 |
|
547 |
if ( $enqueue ) {
|
607 |
|
608 |
function ctf_is_pro_version() {
|
609 |
return defined( 'CTF_STORE_URL' );
|
610 |
+
}
|
611 |
+
|
612 |
+
|
613 |
+
function ctf_get_database_settings() {
|
614 |
+
$options = get_option( 'ctf_options', array() );
|
615 |
+
|
616 |
+
return $options;
|
617 |
+
|
618 |
}
|
inc/CtfAdmin.php
CHANGED
@@ -523,6 +523,23 @@ class CtfAdmin
|
|
523 |
'extra' => '*will be fired every time more tweets are loaded'
|
524 |
));
|
525 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
526 |
add_settings_section(
|
527 |
'ctf_options_advanced', // matches the section name
|
528 |
'Advanced',
|
@@ -642,32 +659,6 @@ class CtfAdmin
|
|
642 |
'whatis' => "Twitter provides JavaScript that allows visitors of your site to reply to, retweet, and like tweets without leaving your site. This can be disabled using this setting"
|
643 |
));
|
644 |
|
645 |
-
$this->create_settings_field( array(
|
646 |
-
'name' => 'font_method',
|
647 |
-
'title' => '<label for="ctf_font_method">Icon Method</label>', // label for the input field
|
648 |
-
'callback' => 'default_select', // name of the function that outputs the html
|
649 |
-
'page' => 'ctf_options_advanced', // matches the section name
|
650 |
-
'section' => 'ctf_options_advanced', // matches the section name
|
651 |
-
'option' => 'ctf_options', // matches the options name
|
652 |
-
'class' => 'default-text', // class for the wrapper and input field
|
653 |
-
'fields' => array(
|
654 |
-
array( 'svg', 'SVG' ),
|
655 |
-
array( 'fontfile', 'Font File' )
|
656 |
-
),
|
657 |
-
'whatis' => "This plugin uses SVGs for all icons in the feed. Use this setting to switch to font icons" // what is this? text
|
658 |
-
) );
|
659 |
-
|
660 |
-
$this->create_settings_field( array(
|
661 |
-
'name' => 'disableawesome',
|
662 |
-
'title' => '<label for="ctf_disableawesome">Disable icon font</label>', // label for the input field
|
663 |
-
'callback' => 'default_checkbox', // name of the function that outputs the html
|
664 |
-
'page' => 'ctf_options_advanced', // matches the section name
|
665 |
-
'section' => 'ctf_options_advanced', // matches the section name
|
666 |
-
'option' => 'ctf_options', // matches the options name
|
667 |
-
'class' => '',
|
668 |
-
'whatis' => "Twitter provides JavaScript that allows visitors of your site to reply to, retweet, and like tweets without leaving your site. This can be disabled using this setting"
|
669 |
-
));
|
670 |
-
|
671 |
$this->create_settings_field( array(
|
672 |
'name' => 'shorturls',
|
673 |
'title' => '<label for="ctf_shorturls">Use shortened urls</label>', // label for the input field
|
@@ -1746,6 +1737,112 @@ class CtfAdmin
|
|
1746 |
<?php
|
1747 |
}
|
1748 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1749 |
public function clear_persistent_cache_button( $args ) {
|
1750 |
?>
|
1751 |
<input id="ctf-clear-persistent-cache" class="button-secondary" style="margin-top: 1px;" type="submit" value="<?php esc_attr_e( 'Clear Persistent Caches' ); ?>" />
|
523 |
'extra' => '*will be fired every time more tweets are loaded'
|
524 |
));
|
525 |
|
526 |
+
add_settings_section(
|
527 |
+
'ctf_options_gdpr', // matches the section name
|
528 |
+
'GDPR',
|
529 |
+
array( $this, 'general_section_text' ), // callback function to explain the section
|
530 |
+
'ctf_options_gdpr' // matches the section name
|
531 |
+
);
|
532 |
+
|
533 |
+
$this->create_settings_field( array(
|
534 |
+
'name' => 'gdpr',
|
535 |
+
'title' => '<label for="ctf_gdpr">Enable GDPR Settings</label>', // label for the input field
|
536 |
+
'callback' => 'gdpr', // name of the function that outputs the html
|
537 |
+
'page' => 'ctf_options_gdpr', // matches the section name
|
538 |
+
'section' => 'ctf_options_gdpr', // matches the section name
|
539 |
+
'option' => 'ctf_options', // matches the options name
|
540 |
+
'class' => 'default-text', // class for the wrapper and input field
|
541 |
+
));
|
542 |
+
|
543 |
add_settings_section(
|
544 |
'ctf_options_advanced', // matches the section name
|
545 |
'Advanced',
|
659 |
'whatis' => "Twitter provides JavaScript that allows visitors of your site to reply to, retweet, and like tweets without leaving your site. This can be disabled using this setting"
|
660 |
));
|
661 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
662 |
$this->create_settings_field( array(
|
663 |
'name' => 'shorturls',
|
664 |
'title' => '<label for="ctf_shorturls">Use shortened urls</label>', // label for the input field
|
1737 |
<?php
|
1738 |
}
|
1739 |
|
1740 |
+
public function gdpr( $args ) {
|
1741 |
+
$options = get_option( $args['option'] );
|
1742 |
+
$gdpr = ( isset( $options[ $args['name'] ] ) ) ? esc_attr( $options[ $args['name'] ] ) : '';
|
1743 |
+
$select_options = array(
|
1744 |
+
array(
|
1745 |
+
'label' => __( 'Automatic', 'custom-twitter-feeds' ),
|
1746 |
+
'value' => 'auto'
|
1747 |
+
),
|
1748 |
+
array(
|
1749 |
+
'label' => __( 'Yes', 'custom-twitter-feeds' ),
|
1750 |
+
'value' => 'yes'
|
1751 |
+
),
|
1752 |
+
array(
|
1753 |
+
'label' => __( 'No', 'custom-twitter-feeds' ),
|
1754 |
+
'value' => 'no'
|
1755 |
+
)
|
1756 |
+
)
|
1757 |
+
?>
|
1758 |
+
<?php
|
1759 |
+
$gdpr_list = "<ul class='ctf-list'>
|
1760 |
+
<li>" . __( 'Avatars will be replaced with a Twitter logo in the feed header.', 'custom-twitter-feeds' ) . "</li>
|
1761 |
+
<li>" . __( 'Avatars will not display in Tweets.', 'custom-twitter-feeds' ) . "</li>
|
1762 |
+
<li>" . __( 'Twitter intents (for replying, retweeting, and liking) will be plain links.', 'custom-twitter-feeds' ) . "</li>
|
1763 |
+
</ul>";
|
1764 |
+
?>
|
1765 |
+
<div>
|
1766 |
+
<select name="<?php echo $args['option'].'['.$args['name'].']'; ?>" id="ctf_gdpr_setting">
|
1767 |
+
<?php foreach ( $select_options as $select_option ) :
|
1768 |
+
$selected = $select_option['value'] === $gdpr ? ' selected' : '';
|
1769 |
+
?>
|
1770 |
+
<option value="<?php echo esc_attr( $select_option['value'] ); ?>"<?php echo $selected; ?> ><?php echo esc_html( $select_option['label'] ); ?></option>
|
1771 |
+
<?php endforeach; ?>
|
1772 |
+
</select>
|
1773 |
+
<a class="ctf-tooltip-link" href="JavaScript:void(0);"><?php _e('What does this mean?', 'custom-twitter-feeds'); ?></a>
|
1774 |
+
<div class="ctf-tooltip ctf-more-info gdpr_tooltip">
|
1775 |
+
|
1776 |
+
<p><span><?php _e("Yes", 'custom-twitter-feeds' ); ?>:</span> <?php _e("Enabling this setting prevents all images and videos from being loaded directly from Twitter's servers (CDN) to prevent any requests to external websites in your browser. To accommodate this, some features of the plugin will be disabled or limited.", 'custom-twitter-feeds' ); ?> <a href="JavaScript:void(0);" class="ctf_show_gdpr_list"><?php _e( 'What will be limited?', 'custom-twitter-feeds' ); ?></a></p>
|
1777 |
+
|
1778 |
+
<?php echo "<div class='ctf_gdpr_list'>" . $gdpr_list . '</div>'; ?>
|
1779 |
+
|
1780 |
+
|
1781 |
+
<p><span><?php _e("No", 'custom-twitter-feeds' ); ?>:</span> <?php _e("The plugin will still make some requests to load and display images and videos directly from Twitter.", 'custom-twitter-feeds' ); ?></p>
|
1782 |
+
|
1783 |
+
|
1784 |
+
<p><span><?php _e("Automatic", 'custom-twitter-feeds' ); ?>:</span> <?php echo sprintf( __( 'The plugin will only load images and videos directly from Twitter if consent has been given by one of these integrated %s', 'custom-twitter-feeds' ), '<a href="https://smashballoon.com/doc/gdpr-plugin-list/?twitter" target="_blank" rel="noopener">' . __( 'GDPR cookie plugins', 'custom-twitter-feeds' ) . '</a>' ); ?></p>
|
1785 |
+
|
1786 |
+
<p><?php echo sprintf( __( '%s to learn more about GDPR compliance in the Custom Twitter Feed plugin.', 'custom-twitter-feeds' ), '<a href="https://smashballoon.com/doc/custom-twitter-feeds-gdpr-compliance/?twitter" target="_blank" rel="noopener">'. __( 'Click here', 'custom-twitter-feeds' ).'</a>' ); ?></p>
|
1787 |
+
</div>
|
1788 |
+
</div>
|
1789 |
+
|
1790 |
+
<?php if ( ! CTF_GDPR_Integrations::gdpr_tests_successful( isset( $_GET['retest'] ) ) ) :
|
1791 |
+
$errors = CTF_GDPR_Integrations::gdpr_tests_error_message();
|
1792 |
+
?>
|
1793 |
+
<div class="ctf-box ctf_gdpr_error">
|
1794 |
+
<div class="ctf-box-setting">
|
1795 |
+
<p>
|
1796 |
+
<strong><?php _e( 'Error:', 'custom-twitter-feeds' ); ?></strong> <?php _e("Due to a configuration issue on your web server, the GDPR setting is unable to be enabled. Please see below for more information.", 'custom-twitter-feeds' ); ?></p>
|
1797 |
+
<p>
|
1798 |
+
<?php echo $errors; ?>
|
1799 |
+
</p>
|
1800 |
+
</div>
|
1801 |
+
</div>
|
1802 |
+
<?php else: ?>
|
1803 |
+
|
1804 |
+
<div class="ctf_gdpr_auto">
|
1805 |
+
<?php if ( CTF_GDPR_Integrations::gdpr_plugins_active() ) :
|
1806 |
+
$active_plugin = CTF_GDPR_Integrations::gdpr_plugins_active();
|
1807 |
+
?>
|
1808 |
+
<div class="ctf_gdpr_plugin_active">
|
1809 |
+
<div class="ctf_active">
|
1810 |
+
<p>
|
1811 |
+
<svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="check-circle" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" class="svg-inline--fa fa-check-circle fa-w-16 fa-2x"><path fill="currentColor" d="M504 256c0 136.967-111.033 248-248 248S8 392.967 8 256 119.033 8 256 8s248 111.033 248 248zM227.314 387.314l184-184c6.248-6.248 6.248-16.379 0-22.627l-22.627-22.627c-6.248-6.249-16.379-6.249-22.628 0L216 308.118l-70.059-70.059c-6.248-6.248-16.379-6.248-22.628 0l-22.627 22.627c-6.248 6.248-6.248 16.379 0 22.627l104 104c6.249 6.249 16.379 6.249 22.628.001z" class=""></path></svg>
|
1812 |
+
<b><?php echo sprintf( __( '%s detected', 'custom-twitter-feeds' ), $active_plugin ); ?></b>
|
1813 |
+
<br />
|
1814 |
+
<?php _e( 'Some Custom Twitter Feed features will be limited for visitors to ensure GDPR compliance until they give consent.', 'custom-twitter-feeds' ); ?>
|
1815 |
+
<a href="JavaScript:void(0);" class="ctf_show_gdpr_list"><?php _e( 'What will be limited?', 'custom-twitter-feeds' ); ?></a>
|
1816 |
+
</p>
|
1817 |
+
<?php echo "<div class='ctf_gdpr_list'>" . $gdpr_list . '</div>'; ?>
|
1818 |
+
</div>
|
1819 |
+
|
1820 |
+
</div>
|
1821 |
+
<?php else: ?>
|
1822 |
+
<div class="ctf-box">
|
1823 |
+
<div class="ctf-box-setting">
|
1824 |
+
<p><?php _e( 'No GDPR consent plugin detected. Install a compatible <a href="https://smashballoon.com/doc/gdpr-plugin-list/?twitter">GDPR consent plugin</a>, or manually enable the setting above to display a GDPR compliant version of the feed to all visitors.', 'custom-twitter-feeds' ); ?></p>
|
1825 |
+
</div>
|
1826 |
+
</div>
|
1827 |
+
<?php endif; ?>
|
1828 |
+
</div>
|
1829 |
+
|
1830 |
+
<div class="ctf-box ctf_gdpr_yes">
|
1831 |
+
<div class="ctf-box-setting">
|
1832 |
+
<p><?php _e( "No requests will be made to third-party websites. To accommodate this, some features of the plugin will be limited:", 'custom-twitter-feeds' ); ?></p>
|
1833 |
+
<?php echo $gdpr_list; ?>
|
1834 |
+
</div>
|
1835 |
+
</div>
|
1836 |
+
|
1837 |
+
<div class="ctf-box ctf_gdpr_no">
|
1838 |
+
<div class="ctf-box-setting">
|
1839 |
+
<p><?php _e( "The plugin will function as normal and load images and videos directly from Twitter.", 'custom-twitter-feeds' ); ?></p>
|
1840 |
+
</div>
|
1841 |
+
</div>
|
1842 |
+
|
1843 |
+
<?php endif;
|
1844 |
+
}
|
1845 |
+
|
1846 |
public function clear_persistent_cache_button( $args ) {
|
1847 |
?>
|
1848 |
<input id="ctf-clear-persistent-cache" class="button-secondary" style="margin-top: 1px;" type="submit" value="<?php esc_attr_e( 'Clear Persistent Caches' ); ?>" />
|
inc/CtfFeed.php
CHANGED
@@ -162,6 +162,7 @@ class CtfFeed
|
|
162 |
$this->setStandardTextOptions( 'font_method', 'svg' );
|
163 |
$this->setStandardTextOptions( 'multiplier', 1.25 );
|
164 |
$this->setStandardTextOptions( 'twitterlinktext', 'Twitter' );
|
|
|
165 |
|
166 |
$this->setStandardTextOptions( 'buttontext', __( 'Load More...', 'custom-twitter-feeds' ) );
|
167 |
$this->setStandardTextOptions( 'textlength', 280 );
|
@@ -212,6 +213,10 @@ class CtfFeed
|
|
212 |
$this->setDimensionOptions();
|
213 |
$this->setCacheTimeOptions();
|
214 |
$this->setIncludeExcludeOptions();
|
|
|
|
|
|
|
|
|
215 |
}
|
216 |
|
217 |
/**
|
@@ -1383,9 +1388,6 @@ class CtfFeed
|
|
1383 |
$html .= '<a class="twitter-follow-button" href="https://twitter.com/' . $feed_options['screenname'] . '" target="_blank" rel="noopener noreferrer" data-show-count="false" data-size="large" data-dnt="true">Follow</a>';
|
1384 |
}
|
1385 |
$html .= '</p>';
|
1386 |
-
if ( !$feed_options['disableintents'] ) {
|
1387 |
-
$html .= "<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+'://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js,fjs);}}(document, 'script', 'twitter-wjs');</script>";
|
1388 |
-
}
|
1389 |
$html .= '</div>';
|
1390 |
|
1391 |
return $html;
|
@@ -1411,8 +1413,13 @@ class CtfFeed
|
|
1411 |
$ctf_feed_classes = apply_filters( 'ctf_feed_classes', $ctf_feed_classes ); //add_filter( 'ctf_feed_classes', function( $ctf_feed_classes ) { return $ctf_feed_classes . ' new-class'; }, 10, 1 );
|
1412 |
$ctf_feed_html = '';
|
1413 |
|
|
|
|
|
|
|
|
|
|
|
1414 |
$ctf_feed_html .= '<!-- Custom Twitter Feeds by Smash Balloon -->';
|
1415 |
-
$ctf_feed_html .= '<div id="ctf" class="' . $ctf_feed_classes . '" style="' . $feed_options['width'] . $feed_options['height'] . $feed_options['bgcolor'] . '" data-ctfshortcode="' . $this->getShortCodeJSON() . '"' .$ctf_data_disablelinks . $ctf_data_linktextcolor . $ctf_enable_intents . ' data-ctfneeded="'. $ctf_data_needed .'">';
|
1416 |
$tweet_set = $this->tweet_set;
|
1417 |
|
1418 |
// dynamically include header
|
@@ -1499,7 +1506,11 @@ class CtfFeed
|
|
1499 |
$ctf_header_html .= '</div>';
|
1500 |
$ctf_header_html .= '<div class="ctf-header-img">';
|
1501 |
$ctf_header_html .= '<div class="ctf-header-img-hover">' . ctf_get_fa_el( 'fa-twitter' ) . '</div>';
|
1502 |
-
|
|
|
|
|
|
|
|
|
1503 |
$ctf_header_html .= '</div>';
|
1504 |
$ctf_header_html .= '</a>';
|
1505 |
$ctf_header_html .= '</div>';
|
@@ -1653,7 +1664,11 @@ class CtfFeed
|
|
1653 |
$tweet_html .= '<div class="ctf-author-box-link" style="' . $feed_options['authortextsize'] . $feed_options['authortextweight'] . $feed_options['textcolor'] . '">';
|
1654 |
if ( ctf_show( 'avatar', $feed_options ) ) {
|
1655 |
$tweet_html .= '<a href="https://twitter.com/' . $post['user']['screen_name'] . '" class="ctf-author-avatar" target="_blank" rel="noopener noreferrer" style="' . $feed_options['authortextsize'] . $feed_options['authortextweight'] . $feed_options['textcolor'] . '">';
|
1656 |
-
|
|
|
|
|
|
|
|
|
1657 |
$tweet_html .= '</a>';
|
1658 |
}
|
1659 |
|
162 |
$this->setStandardTextOptions( 'font_method', 'svg' );
|
163 |
$this->setStandardTextOptions( 'multiplier', 1.25 );
|
164 |
$this->setStandardTextOptions( 'twitterlinktext', 'Twitter' );
|
165 |
+
$this->setStandardTextOptions( 'gdpr', 'auto' );
|
166 |
|
167 |
$this->setStandardTextOptions( 'buttontext', __( 'Load More...', 'custom-twitter-feeds' ) );
|
168 |
$this->setStandardTextOptions( 'textlength', 280 );
|
213 |
$this->setDimensionOptions();
|
214 |
$this->setCacheTimeOptions();
|
215 |
$this->setIncludeExcludeOptions();
|
216 |
+
|
217 |
+
if ( CTF_GDPR_Integrations::doing_gdpr( $this->feed_options ) ) {
|
218 |
+
CTF_GDPR_Integrations::init();
|
219 |
+
}
|
220 |
}
|
221 |
|
222 |
/**
|
1388 |
$html .= '<a class="twitter-follow-button" href="https://twitter.com/' . $feed_options['screenname'] . '" target="_blank" rel="noopener noreferrer" data-show-count="false" data-size="large" data-dnt="true">Follow</a>';
|
1389 |
}
|
1390 |
$html .= '</p>';
|
|
|
|
|
|
|
1391 |
$html .= '</div>';
|
1392 |
|
1393 |
return $html;
|
1413 |
$ctf_feed_classes = apply_filters( 'ctf_feed_classes', $ctf_feed_classes ); //add_filter( 'ctf_feed_classes', function( $ctf_feed_classes ) { return $ctf_feed_classes . ' new-class'; }, 10, 1 );
|
1414 |
$ctf_feed_html = '';
|
1415 |
|
1416 |
+
$gdpr_att = '';
|
1417 |
+
if ( CTF_GDPR_Integrations::doing_gdpr( $feed_options ) ) {
|
1418 |
+
$gdpr_att = ' ctf-gdpr="1"';
|
1419 |
+
}
|
1420 |
+
|
1421 |
$ctf_feed_html .= '<!-- Custom Twitter Feeds by Smash Balloon -->';
|
1422 |
+
$ctf_feed_html .= '<div id="ctf" class="' . $ctf_feed_classes . '" style="' . $feed_options['width'] . $feed_options['height'] . $feed_options['bgcolor'] . '" data-ctfshortcode="' . $this->getShortCodeJSON() . '"' .$ctf_data_disablelinks . $ctf_data_linktextcolor . $ctf_enable_intents . $gdpr_att .' data-ctfneeded="'. $ctf_data_needed .'">';
|
1423 |
$tweet_set = $this->tweet_set;
|
1424 |
|
1425 |
// dynamically include header
|
1506 |
$ctf_header_html .= '</div>';
|
1507 |
$ctf_header_html .= '<div class="ctf-header-img">';
|
1508 |
$ctf_header_html .= '<div class="ctf-header-img-hover">' . ctf_get_fa_el( 'fa-twitter' ) . '</div>';
|
1509 |
+
if ( CTF_GDPR_Integrations::doing_gdpr( $feed_options ) ) {
|
1510 |
+
$ctf_header_html .= '<span data-avatar="' . esc_url( $tweet_set[0]['user']['profile_image_url_https'] ) . '" data-alt="' . $tweet_set[0]['user']['name'] . '" style="display: none;">Avatar</span>';
|
1511 |
+
} else {
|
1512 |
+
$ctf_header_html .= '<img src="' . $tweet_set[0]['user']['profile_image_url_https'] . '" alt="' . $tweet_set[0]['user']['name'] . '" width="48" height="48">';
|
1513 |
+
}
|
1514 |
$ctf_header_html .= '</div>';
|
1515 |
$ctf_header_html .= '</a>';
|
1516 |
$ctf_header_html .= '</div>';
|
1664 |
$tweet_html .= '<div class="ctf-author-box-link" style="' . $feed_options['authortextsize'] . $feed_options['authortextweight'] . $feed_options['textcolor'] . '">';
|
1665 |
if ( ctf_show( 'avatar', $feed_options ) ) {
|
1666 |
$tweet_html .= '<a href="https://twitter.com/' . $post['user']['screen_name'] . '" class="ctf-author-avatar" target="_blank" rel="noopener noreferrer" style="' . $feed_options['authortextsize'] . $feed_options['authortextweight'] . $feed_options['textcolor'] . '">';
|
1667 |
+
if ( CTF_GDPR_Integrations::doing_gdpr( $feed_options ) ) {
|
1668 |
+
$tweet_html .= '<span data-avatar="' . esc_url( $post['user']['profile_image_url_https'] ) . '" data-alt="' . $post['user']['screen_name'] . '">Avatar</span>';
|
1669 |
+
} else {
|
1670 |
+
$tweet_html .= '<img src="' . esc_url( $post['user']['profile_image_url_https'] ) . '" alt="' . $post['user']['screen_name'] . '" width="48" height="48">';
|
1671 |
+
}
|
1672 |
$tweet_html .= '</a>';
|
1673 |
}
|
1674 |
|
inc/CtfOauthConnect.php
CHANGED
@@ -258,7 +258,12 @@ class CtfOauthConnect
|
|
258 |
);
|
259 |
$result = wp_remote_get( $url, $args );
|
260 |
|
261 |
-
|
|
|
|
|
|
|
|
|
|
|
262 |
}
|
263 |
|
264 |
/**
|
258 |
);
|
259 |
$result = wp_remote_get( $url, $args );
|
260 |
|
261 |
+
if ( ! is_wp_error( $result ) ) {
|
262 |
+
return $result['body']; // just need the body to keep everything simple
|
263 |
+
} else {
|
264 |
+
return '{}';
|
265 |
+
}
|
266 |
+
|
267 |
}
|
268 |
|
269 |
/**
|
inc/class-ctf-gdpr-integrations.php
ADDED
@@ -0,0 +1,116 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Class CTF_GDPR_Integrations
|
4 |
+
*
|
5 |
+
* Adds GDPR related workarounds for third-party plugins:
|
6 |
+
* https://wordpress.org/plugins/cookie-law-info/
|
7 |
+
*
|
8 |
+
* @since 1.7/1.12
|
9 |
+
*/
|
10 |
+
|
11 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
12 |
+
die( '-1' );
|
13 |
+
}
|
14 |
+
|
15 |
+
class CTF_GDPR_Integrations {
|
16 |
+
|
17 |
+
/**
|
18 |
+
* Undoing of Cookie Notice's Twitter Feed related code
|
19 |
+
* needs to be done late.
|
20 |
+
*
|
21 |
+
* @since 1.7/1.12
|
22 |
+
*/
|
23 |
+
public static function init() {
|
24 |
+
add_filter( 'wt_cli_third_party_scripts', array( 'CTF_GDPR_Integrations', 'undo_script_blocking' ), 11 );
|
25 |
+
add_filter( 'cmplz_known_script_tags', array( 'CTF_GDPR_Integrations', 'undo_script_blocking' ), 11 );
|
26 |
+
}
|
27 |
+
|
28 |
+
/**
|
29 |
+
* Prevents changes made to how JavaScript file is added to
|
30 |
+
* pages.
|
31 |
+
*
|
32 |
+
* @since 1.7/1.12
|
33 |
+
*/
|
34 |
+
public static function undo_script_blocking() {
|
35 |
+
$settings = ctf_get_database_settings();
|
36 |
+
if ( ! CTF_GDPR_Integrations::doing_gdpr( $settings ) ) {
|
37 |
+
return;
|
38 |
+
}
|
39 |
+
remove_filter( 'wt_cli_third_party_scripts', 'wt_cli_twitter_feed_script' );
|
40 |
+
remove_filter( 'cmplz_known_script_tags', 'cmplz_twitter_feed_script' );
|
41 |
+
}
|
42 |
+
|
43 |
+
/**
|
44 |
+
* Whether or not consent plugins that Twitter Feed
|
45 |
+
* is compatible with are active.
|
46 |
+
*
|
47 |
+
* @return bool|string
|
48 |
+
*
|
49 |
+
* @since 1.7/1.12
|
50 |
+
*/
|
51 |
+
public static function gdpr_plugins_active() {
|
52 |
+
if ( class_exists( 'Cookie_Notice' ) ) {
|
53 |
+
return 'Cookie Notice by dFactory';
|
54 |
+
}
|
55 |
+
if ( function_exists( 'run_cookie_law_info' ) ) {
|
56 |
+
return 'GDPR Cookie Consent by WebToffee';
|
57 |
+
}
|
58 |
+
if ( class_exists( 'Cookiebot_WP' ) ) {
|
59 |
+
return 'Cookiebot by Cybot A/S';
|
60 |
+
}
|
61 |
+
if ( class_exists( 'COMPLIANZ' ) ) {
|
62 |
+
return 'Complianz by Really Simple Plugins';
|
63 |
+
}
|
64 |
+
if ( function_exists('BorlabsCookieHelper') ) {
|
65 |
+
return 'Borlabs Cookie by Borlabs';
|
66 |
+
}
|
67 |
+
|
68 |
+
return false;
|
69 |
+
}
|
70 |
+
|
71 |
+
/**
|
72 |
+
* GDPR features can be added automatically, forced enabled,
|
73 |
+
* or forced disabled.
|
74 |
+
*
|
75 |
+
* @param $settings
|
76 |
+
*
|
77 |
+
* @return bool
|
78 |
+
*
|
79 |
+
* @since 1.7/1.12
|
80 |
+
*/
|
81 |
+
public static function doing_gdpr( $settings ) {
|
82 |
+
$gdpr = isset( $settings['gdpr'] ) ? $settings['gdpr'] : 'auto';
|
83 |
+
if ( $gdpr === 'no' ) {
|
84 |
+
return false;
|
85 |
+
}
|
86 |
+
if ( $gdpr === 'yes' ) {
|
87 |
+
return true;
|
88 |
+
}
|
89 |
+
return (CTF_GDPR_Integrations::gdpr_plugins_active() !== false);
|
90 |
+
}
|
91 |
+
|
92 |
+
/**
|
93 |
+
* No tests needed in free version
|
94 |
+
*
|
95 |
+
* @param bool $retest
|
96 |
+
*
|
97 |
+
* @return bool
|
98 |
+
*
|
99 |
+
* @since 1.7/1.12
|
100 |
+
*/
|
101 |
+
public static function gdpr_tests_successful( $retest = false ) {
|
102 |
+
return true;
|
103 |
+
}
|
104 |
+
|
105 |
+
/**
|
106 |
+
* No tests needed in free version
|
107 |
+
*
|
108 |
+
* @return array
|
109 |
+
*
|
110 |
+
* @since 1.7/1.12
|
111 |
+
*/
|
112 |
+
public static function gdpr_tests_error_message() {
|
113 |
+
return array();
|
114 |
+
}
|
115 |
+
|
116 |
+
}
|
js/ctf-admin-scripts.js
CHANGED
@@ -348,4 +348,28 @@ jQuery(document).ready(function($){
|
|
348 |
});
|
349 |
});
|
350 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
351 |
});
|
348 |
});
|
349 |
});
|
350 |
|
351 |
+
jQuery('.ctf_show_gdpr_list').on('click', function(){
|
352 |
+
jQuery(this).closest('div').find('.ctf_gdpr_list').slideToggle();
|
353 |
+
});
|
354 |
+
|
355 |
+
//Selecting a post style
|
356 |
+
jQuery('#ctf_gdpr_setting').on('change', function(){
|
357 |
+
ctfCheckGdprSetting( jQuery(this).val() );
|
358 |
+
});
|
359 |
+
function ctfCheckGdprSetting(option) {
|
360 |
+
if( option == 'yes' ){
|
361 |
+
jQuery('.ctf_gdpr_yes').show();
|
362 |
+
jQuery('.ctf_gdpr_no, .ctf_gdpr_auto').hide();
|
363 |
+
}
|
364 |
+
if( option == 'no' ){
|
365 |
+
jQuery('.ctf_gdpr_no').show();
|
366 |
+
jQuery('.ctf_gdpr_yes, .ctf_gdpr_auto').hide();
|
367 |
+
}
|
368 |
+
if( option == 'auto' ){
|
369 |
+
jQuery('.ctf_gdpr_auto').show();
|
370 |
+
jQuery('.ctf_gdpr_yes, .ctf_gdpr_no').hide();
|
371 |
+
}
|
372 |
+
}
|
373 |
+
ctfCheckGdprSetting();
|
374 |
+
|
375 |
});
|
js/ctf-scripts.js
CHANGED
@@ -4,3620 +4,31 @@ if(!ctf_js_exists){
|
|
4 |
(function ($) {
|
5 |
|
6 |
window.ctf_init = function() {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7 |
|
8 |
-
if ($('.ctf').length <= $('.ctf_is_initialized').length) {
|
9 |
-
return;
|
10 |
-
}
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
if (!$(this).hasClass('ctf_is_initialized') && !ctfIntentsIncluded && typeof $(this).attr('data-ctfintents') !== 'undefined') {
|
15 |
-
ctfIntentsIncluded = true;
|
16 |
-
Function && Function.prototype && Function.prototype.bind && (/MSIE ([6789]|10)/.test(navigator.userAgent) || (window.__twttr && window.__twttr.widgets && window.__twttr.widgets.loaded && window.twttr.widgets.load && window.twttr.widgets.load(), window.__twttr && window.__twttr.widgets && window.__twttr.widgets.init || function (t) {
|
17 |
-
function e(e) {
|
18 |
-
for (var n, i, o = e[0], s = e[1], a = 0, c = []; a < o.length; a++) i = o[a], r[i] && c.push(r[i][0]), r[i] = 0;
|
19 |
-
for (n in s) Object.prototype.hasOwnProperty.call(s, n) && (t[n] = s[n]);
|
20 |
-
for (u && u(e); c.length;) c.shift()()
|
21 |
-
}
|
22 |
-
|
23 |
-
var n = {}, r = {1: 0};
|
24 |
-
|
25 |
-
function i(e) {
|
26 |
-
if (n[e]) return n[e].exports;
|
27 |
-
var r = n[e] = {i: e, l: !1, exports: {}};
|
28 |
-
return t[e].call(r.exports, r, r.exports, i), r.l = !0, r.exports
|
29 |
-
}
|
30 |
-
|
31 |
-
i.e = function (t) {
|
32 |
-
var e = [], n = r[t];
|
33 |
-
if (0 !== n) if (n) e.push(n[2]); else {
|
34 |
-
var o = new Promise(function (e, i) {
|
35 |
-
n = r[t] = [e, i]
|
36 |
-
});
|
37 |
-
e.push(n[2] = o);
|
38 |
-
var s, a = document.getElementsByTagName("head")[0],
|
39 |
-
u = document.createElement("script");
|
40 |
-
u.charset = "utf-8", u.timeout = 120, i.nc && u.setAttribute("nonce", i.nc), u.src = function (t) {
|
41 |
-
return i.p + "js/" + ({
|
42 |
-
0: "moment~timeline~tweet",
|
43 |
-
2: "dm_button",
|
44 |
-
3: "button",
|
45 |
-
4: "moment",
|
46 |
-
5: "periscope_on_air",
|
47 |
-
6: "timeline",
|
48 |
-
7: "tweet"
|
49 |
-
}[t] || t) + "." + {
|
50 |
-
0: "ec04a6cb5ba879d0e0db41f211639fdf",
|
51 |
-
2: "6542a7407a2eccac51f5c5e0fac5bb80",
|
52 |
-
3: "d941c9a422e2e3faf474b82a1f39e936",
|
53 |
-
4: "0a3cc02317b85399478995c763a1296c",
|
54 |
-
5: "d26526abe761c4d8d8d71cf0ec565649",
|
55 |
-
6: "0a7b4db67eacd23e35c5ce02e6ea3470",
|
56 |
-
7: "b2d749028be81f16d9cb4994d9692feb"
|
57 |
-
}[t] + ".js"
|
58 |
-
}(t), s = function (e) {
|
59 |
-
u.onerror = u.onload = null, clearTimeout(c);
|
60 |
-
var n = r[t];
|
61 |
-
if (0 !== n) {
|
62 |
-
if (n) {
|
63 |
-
var i = e && ("load" === e.type ? "missing" : e.type),
|
64 |
-
o = e && e.target && e.target.src,
|
65 |
-
s = new Error("Loading chunk " + t + " failed.\n(" + i + ": " + o + ")");
|
66 |
-
s.type = i, s.request = o, n[1](s)
|
67 |
-
}
|
68 |
-
r[t] = void 0
|
69 |
-
}
|
70 |
-
};
|
71 |
-
var c = setTimeout(function () {
|
72 |
-
s({type: "timeout", target: u})
|
73 |
-
}, 12e4);
|
74 |
-
u.onerror = u.onload = s, a.appendChild(u)
|
75 |
-
}
|
76 |
-
return Promise.all(e)
|
77 |
-
}, i.m = t, i.c = n, i.d = function (t, e, n) {
|
78 |
-
i.o(t, e) || Object.defineProperty(t, e, {enumerable: !0, get: n})
|
79 |
-
}, i.r = function (t) {
|
80 |
-
"undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(t, Symbol.toStringTag, {value: "Module"}), Object.defineProperty(t, "__esModule", {value: !0})
|
81 |
-
}, i.t = function (t, e) {
|
82 |
-
if (1 & e && (t = i(t)), 8 & e) return t;
|
83 |
-
if (4 & e && "object" == typeof t && t && t.__esModule) return t;
|
84 |
-
var n = Object.create(null);
|
85 |
-
if (i.r(n), Object.defineProperty(n, "default", {
|
86 |
-
enumerable: !0,
|
87 |
-
value: t
|
88 |
-
}), 2 & e && "string" != typeof t) for (var r in t) i.d(n, r, function (e) {
|
89 |
-
return t[e]
|
90 |
-
}.bind(null, r));
|
91 |
-
return n
|
92 |
-
}, i.n = function (t) {
|
93 |
-
var e = t && t.__esModule ? function () {
|
94 |
-
return t.default
|
95 |
-
} : function () {
|
96 |
-
return t
|
97 |
-
};
|
98 |
-
return i.d(e, "a", e), e
|
99 |
-
}, i.o = function (t, e) {
|
100 |
-
return Object.prototype.hasOwnProperty.call(t, e)
|
101 |
-
}, i.p = "https://platform.twitter.com/", i.oe = function (t) {
|
102 |
-
throw console.error(t), t
|
103 |
-
};
|
104 |
-
var o = window.__twttrll = window.__twttrll || [], s = o.push.bind(o);
|
105 |
-
o.push = e, o = o.slice();
|
106 |
-
for (var a = 0; a < o.length; a++) e(o[a]);
|
107 |
-
var u = s;
|
108 |
-
i(i.s = 94)
|
109 |
-
}([function (t, e, n) {
|
110 |
-
var r = n(1);
|
111 |
-
|
112 |
-
function i(t, e) {
|
113 |
-
var n;
|
114 |
-
for (n in t) t.hasOwnProperty && !t.hasOwnProperty(n) || e(n, t[n]);
|
115 |
-
return t
|
116 |
-
}
|
117 |
-
|
118 |
-
function o(t) {
|
119 |
-
return {}.toString.call(t).match(/\s([a-zA-Z]+)/)[1].toLowerCase()
|
120 |
-
}
|
121 |
-
|
122 |
-
function s(t) {
|
123 |
-
return t === Object(t)
|
124 |
-
}
|
125 |
-
|
126 |
-
function a(t) {
|
127 |
-
var e;
|
128 |
-
if (!s(t)) return !1;
|
129 |
-
if (Object.keys) return !Object.keys(t).length;
|
130 |
-
for (e in t) if (t.hasOwnProperty(e)) return !1;
|
131 |
-
return !0
|
132 |
-
}
|
133 |
-
|
134 |
-
function u(t) {
|
135 |
-
return t ? Array.prototype.slice.call(t) : []
|
136 |
-
}
|
137 |
-
|
138 |
-
t.exports = {
|
139 |
-
aug: function (t) {
|
140 |
-
return u(arguments).slice(1).forEach(function (e) {
|
141 |
-
i(e, function (e, n) {
|
142 |
-
t[e] = n
|
143 |
-
})
|
144 |
-
}), t
|
145 |
-
}, async: function (t, e) {
|
146 |
-
r.setTimeout(function () {
|
147 |
-
t.call(e || null)
|
148 |
-
}, 0)
|
149 |
-
}, compact: function t(e) {
|
150 |
-
return i(e, function (n, r) {
|
151 |
-
s(r) && (t(r), a(r) && delete e[n]), void 0 !== r && null !== r && "" !== r || delete e[n]
|
152 |
-
}), e
|
153 |
-
}, contains: function (t, e) {
|
154 |
-
return !(!t || !t.indexOf) && t.indexOf(e) > -1
|
155 |
-
}, forIn: i, isObject: s, isEmptyObject: a, toType: o, isType: function (t, e) {
|
156 |
-
return t == o(e)
|
157 |
-
}, toRealArray: u
|
158 |
-
}
|
159 |
-
}, function (t, e) {
|
160 |
-
t.exports = window
|
161 |
-
}, function (t, e, n) {
|
162 |
-
var r = n(6);
|
163 |
-
t.exports = function () {
|
164 |
-
var t = this;
|
165 |
-
this.promise = new r(function (e, n) {
|
166 |
-
t.resolve = e, t.reject = n
|
167 |
-
})
|
168 |
-
}
|
169 |
-
}, function (t, e, n) {
|
170 |
-
var r = n(11),
|
171 |
-
i = /(?:^|(?:https?:)?\/\/(?:www\.)?twitter\.com(?::\d+)?(?:\/intent\/(?:follow|user)\/?\?screen_name=|(?:\/#!)?\/))@?([\w]+)(?:\?|&|$)/i,
|
172 |
-
o = /(?:^|(?:https?:)?\/\/(?:www\.)?twitter\.com(?::\d+)?\/(?:#!\/)?[\w_]+\/status(?:es)?\/)(\d+)/i,
|
173 |
-
s = /^http(s?):\/\/(\w+\.)*twitter\.com([:/]|$)/i, a = /^http(s?):\/\/pbs\.twimg\.com\//,
|
174 |
-
u = /^#?([^.,<>!\s/#\-()'"]+)$/, c = /twitter\.com(?::\d{2,4})?\/intent\/(\w+)/,
|
175 |
-
d = /^https?:\/\/(?:www\.)?twitter\.com\/\w+\/timelines\/(\d+)/i,
|
176 |
-
l = /^https?:\/\/(?:www\.)?twitter\.com\/i\/moments\/(\d+)/i,
|
177 |
-
f = /^https?:\/\/(?:www\.)?twitter\.com\/(\w+)\/(?:likes|favorites)/i,
|
178 |
-
h = /^https?:\/\/(?:www\.)?twitter\.com\/(\w+)\/lists\/([\w-%]+)/i,
|
179 |
-
p = /^https?:\/\/(?:www\.)?twitter\.com\/i\/live\/(\d+)/i,
|
180 |
-
m = /^https?:\/\/syndication\.twitter\.com\/settings/i,
|
181 |
-
v = /^https?:\/\/(localhost|platform)\.twitter\.com(?::\d+)?\/widgets\/widget_iframe\.(.+)/i,
|
182 |
-
g = /^https?:\/\/(?:www\.)?twitter\.com\/search\?q=(\w+)/i;
|
183 |
-
|
184 |
-
function w(t) {
|
185 |
-
return "string" == typeof t && i.test(t) && RegExp.$1.length <= 20
|
186 |
-
}
|
187 |
-
|
188 |
-
function y(t) {
|
189 |
-
if (w(t)) return RegExp.$1
|
190 |
-
}
|
191 |
-
|
192 |
-
function b(t, e) {
|
193 |
-
var n = r.decodeURL(t);
|
194 |
-
if (e = e || !1, n.screen_name = y(t), n.screen_name) return r.url("https://twitter.com/intent/" + (e ? "follow" : "user"), n)
|
195 |
-
}
|
196 |
-
|
197 |
-
function _(t) {
|
198 |
-
return "string" == typeof t && u.test(t)
|
199 |
-
}
|
200 |
-
|
201 |
-
function E(t) {
|
202 |
-
return "string" == typeof t && o.test(t)
|
203 |
-
}
|
204 |
-
|
205 |
-
t.exports = {
|
206 |
-
isHashTag: _, hashTag: function (t, e) {
|
207 |
-
if (e = void 0 === e || e, _(t)) return (e ? "#" : "") + RegExp.$1
|
208 |
-
}, isScreenName: w, screenName: y, isStatus: E, status: function (t) {
|
209 |
-
return E(t) && RegExp.$1
|
210 |
-
}, intentForProfileURL: b, intentForFollowURL: function (t) {
|
211 |
-
return b(t, !0)
|
212 |
-
}, isTwitterURL: function (t) {
|
213 |
-
return s.test(t)
|
214 |
-
}, isTwimgURL: function (t) {
|
215 |
-
return a.test(t)
|
216 |
-
}, isIntentURL: function (t) {
|
217 |
-
return c.test(t)
|
218 |
-
}, isSettingsURL: function (t) {
|
219 |
-
return m.test(t)
|
220 |
-
}, isWidgetIframeURL: function (t) {
|
221 |
-
return v.test(t)
|
222 |
-
}, isSearchUrl: function (t) {
|
223 |
-
return g.test(t)
|
224 |
-
}, regexen: {profile: i}, momentId: function (t) {
|
225 |
-
return l.test(t) && RegExp.$1
|
226 |
-
}, collectionId: function (t) {
|
227 |
-
return d.test(t) && RegExp.$1
|
228 |
-
}, intentType: function (t) {
|
229 |
-
return c.test(t) && RegExp.$1
|
230 |
-
}, likesScreenName: function (t) {
|
231 |
-
return f.test(t) && RegExp.$1
|
232 |
-
}, listScreenNameAndSlug: function (t) {
|
233 |
-
var e, n, r;
|
234 |
-
if (h.test(t)) {
|
235 |
-
e = RegExp.$1, n = RegExp.$2;
|
236 |
-
try {
|
237 |
-
r = decodeURIComponent(n)
|
238 |
-
} catch (t) {
|
239 |
-
}
|
240 |
-
return {ownerScreenName: e, slug: r || n}
|
241 |
-
}
|
242 |
-
return !1
|
243 |
-
}, eventId: function (t) {
|
244 |
-
return p.test(t) && RegExp.$1
|
245 |
-
}
|
246 |
-
}
|
247 |
-
}, function (t, e) {
|
248 |
-
t.exports = document
|
249 |
-
}, function (t, e, n) {
|
250 |
-
var r = n(0), i = [!0, 1, "1", "on", "ON", "true", "TRUE", "yes", "YES"],
|
251 |
-
o = [!1, 0, "0", "off", "OFF", "false", "FALSE", "no", "NO"];
|
252 |
-
|
253 |
-
function s(t) {
|
254 |
-
return void 0 !== t && null !== t && "" !== t
|
255 |
-
}
|
256 |
-
|
257 |
-
function a(t) {
|
258 |
-
return c(t) && t % 1 == 0
|
259 |
-
}
|
260 |
-
|
261 |
-
function u(t) {
|
262 |
-
return c(t) && !a(t)
|
263 |
-
}
|
264 |
-
|
265 |
-
function c(t) {
|
266 |
-
return s(t) && !isNaN(t)
|
267 |
-
}
|
268 |
-
|
269 |
-
function d(t) {
|
270 |
-
return r.contains(o, t)
|
271 |
-
}
|
272 |
-
|
273 |
-
function l(t) {
|
274 |
-
return r.contains(i, t)
|
275 |
-
}
|
276 |
-
|
277 |
-
t.exports = {
|
278 |
-
hasValue: s, isInt: a, isFloat: u, isNumber: c, isString: function (t) {
|
279 |
-
return "string" === r.toType(t)
|
280 |
-
}, isArray: function (t) {
|
281 |
-
return s(t) && "array" == r.toType(t)
|
282 |
-
}, isTruthValue: l, isFalseValue: d, asInt: function (t) {
|
283 |
-
if (a(t)) return parseInt(t, 10)
|
284 |
-
}, asFloat: function (t) {
|
285 |
-
if (u(t)) return t
|
286 |
-
}, asNumber: function (t) {
|
287 |
-
if (c(t)) return t
|
288 |
-
}, asBoolean: function (t) {
|
289 |
-
return !(!s(t) || !l(t) && (d(t) || !t))
|
290 |
-
}
|
291 |
-
}
|
292 |
-
}, function (t, e, n) {
|
293 |
-
var r = n(1), i = n(21), o = n(48);
|
294 |
-
i.hasPromiseSupport() || (r.Promise = o), t.exports = r.Promise
|
295 |
-
}, function (t, e, n) {
|
296 |
-
var r = n(0);
|
297 |
-
t.exports = function (t, e) {
|
298 |
-
var n = Array.prototype.slice.call(arguments, 2);
|
299 |
-
return function () {
|
300 |
-
var i = r.toRealArray(arguments);
|
301 |
-
return t.apply(e, n.concat(i))
|
302 |
-
}
|
303 |
-
}
|
304 |
-
}, function (t, e) {
|
305 |
-
t.exports = location
|
306 |
-
}, function (t, e, n) {
|
307 |
-
var r = n(50);
|
308 |
-
t.exports = new r("__twttr")
|
309 |
-
}, function (t, e, n) {
|
310 |
-
var r = n(0), i = /\b([\w-_]+)\b/g;
|
311 |
-
|
312 |
-
function o(t) {
|
313 |
-
return new RegExp("\\b" + t + "\\b", "g")
|
314 |
-
}
|
315 |
-
|
316 |
-
function s(t, e) {
|
317 |
-
t.classList ? t.classList.add(e) : o(e).test(t.className) || (t.className += " " + e)
|
318 |
-
}
|
319 |
-
|
320 |
-
function a(t, e) {
|
321 |
-
t.classList ? t.classList.remove(e) : t.className = t.className.replace(o(e), " ")
|
322 |
-
}
|
323 |
-
|
324 |
-
function u(t, e) {
|
325 |
-
return t.classList ? t.classList.contains(e) : r.contains(c(t), e)
|
326 |
-
}
|
327 |
-
|
328 |
-
function c(t) {
|
329 |
-
return r.toRealArray(t.classList ? t.classList : t.className.match(i))
|
330 |
-
}
|
331 |
-
|
332 |
-
t.exports = {
|
333 |
-
add: s, remove: a, replace: function (t, e, n) {
|
334 |
-
if (t.classList && u(t, e)) return a(t, e), void s(t, n);
|
335 |
-
t.className = t.className.replace(o(e), n)
|
336 |
-
}, toggle: function (t, e, n) {
|
337 |
-
return void 0 === n && t.classList && t.classList.toggle ? t.classList.toggle(e, n) : (n ? s(t, e) : a(t, e), n)
|
338 |
-
}, present: u, list: c
|
339 |
-
}
|
340 |
-
}, function (t, e, n) {
|
341 |
-
var r = n(5), i = n(0);
|
342 |
-
|
343 |
-
function o(t) {
|
344 |
-
return encodeURIComponent(t).replace(/\+/g, "%2B").replace(/'/g, "%27")
|
345 |
-
}
|
346 |
-
|
347 |
-
function s(t) {
|
348 |
-
return decodeURIComponent(t)
|
349 |
-
}
|
350 |
-
|
351 |
-
function a(t) {
|
352 |
-
var e = [];
|
353 |
-
return i.forIn(t, function (t, n) {
|
354 |
-
var s = o(t);
|
355 |
-
i.isType("array", n) || (n = [n]), n.forEach(function (t) {
|
356 |
-
r.hasValue(t) && e.push(s + "=" + o(t))
|
357 |
-
})
|
358 |
-
}), e.sort().join("&")
|
359 |
-
}
|
360 |
-
|
361 |
-
function u(t) {
|
362 |
-
var e = {};
|
363 |
-
return t ? (t.split("&").forEach(function (t) {
|
364 |
-
var n = t.split("="), r = s(n[0]), o = s(n[1]);
|
365 |
-
if (2 == n.length) {
|
366 |
-
if (!i.isType("array", e[r])) return r in e ? (e[r] = [e[r]], void e[r].push(o)) : void (e[r] = o);
|
367 |
-
e[r].push(o)
|
368 |
-
}
|
369 |
-
}), e) : {}
|
370 |
-
}
|
371 |
-
|
372 |
-
t.exports = {
|
373 |
-
url: function (t, e) {
|
374 |
-
return a(e).length > 0 ? i.contains(t, "?") ? t + "&" + a(e) : t + "?" + a(e) : t
|
375 |
-
}, decodeURL: function (t) {
|
376 |
-
var e = t && t.split("?");
|
377 |
-
return 2 == e.length ? u(e[1]) : {}
|
378 |
-
}, decode: u, encode: a, encodePart: o, decodePart: s
|
379 |
-
}
|
380 |
-
}, function (t, e, n) {
|
381 |
-
var r = n(8), i = n(1), o = n(0), s = {}, a = o.contains(r.href, "tw_debug=true");
|
382 |
-
|
383 |
-
function u() {
|
384 |
-
}
|
385 |
-
|
386 |
-
function c() {
|
387 |
-
}
|
388 |
-
|
389 |
-
function d() {
|
390 |
-
return i.performance && +i.performance.now() || +new Date
|
391 |
-
}
|
392 |
-
|
393 |
-
function l(t, e) {
|
394 |
-
if (i.console && i.console[t]) switch (e.length) {
|
395 |
-
case 1:
|
396 |
-
i.console[t](e[0]);
|
397 |
-
break;
|
398 |
-
case 2:
|
399 |
-
i.console[t](e[0], e[1]);
|
400 |
-
break;
|
401 |
-
case 3:
|
402 |
-
i.console[t](e[0], e[1], e[2]);
|
403 |
-
break;
|
404 |
-
case 4:
|
405 |
-
i.console[t](e[0], e[1], e[2], e[3]);
|
406 |
-
break;
|
407 |
-
case 5:
|
408 |
-
i.console[t](e[0], e[1], e[2], e[3], e[4]);
|
409 |
-
break;
|
410 |
-
default:
|
411 |
-
0 !== e.length && i.console.warn && i.console.warn("too many params passed to logger." + t)
|
412 |
-
}
|
413 |
-
}
|
414 |
-
|
415 |
-
t.exports = {
|
416 |
-
devError: u, devInfo: c, devObject: function (t, e) {
|
417 |
-
}, publicError: function () {
|
418 |
-
l("error", o.toRealArray(arguments))
|
419 |
-
}, publicLog: function () {
|
420 |
-
l("info", o.toRealArray(arguments))
|
421 |
-
}, time: function (t) {
|
422 |
-
a && (s[t] = d())
|
423 |
-
}, timeEnd: function (t) {
|
424 |
-
a && s[t] && (d(), s[t])
|
425 |
-
}
|
426 |
-
}
|
427 |
-
}, function (t, e, n) {
|
428 |
-
var r = n(20), i = n(5), o = n(11), s = n(0), a = n(119);
|
429 |
-
t.exports = function (t) {
|
430 |
-
var e = t.href && t.href.split("?")[1], n = e ? o.decode(e) : {}, u = {
|
431 |
-
lang: a(t),
|
432 |
-
width: t.getAttribute("data-width") || t.getAttribute("width"),
|
433 |
-
height: t.getAttribute("data-height") || t.getAttribute("height"),
|
434 |
-
related: t.getAttribute("data-related"),
|
435 |
-
partner: t.getAttribute("data-partner")
|
436 |
-
};
|
437 |
-
return i.asBoolean(t.getAttribute("data-dnt")) && r.setOn(), s.forIn(u, function (t, e) {
|
438 |
-
var r = n[t];
|
439 |
-
n[t] = i.hasValue(r) ? r : e
|
440 |
-
}), s.compact(n)
|
441 |
-
}
|
442 |
-
}, function (t, e, n) {
|
443 |
-
var r = n(81), i = n(23);
|
444 |
-
t.exports = function () {
|
445 |
-
var t = "data-twitter-extracted-" + i.generate();
|
446 |
-
return function (e, n) {
|
447 |
-
return r(e, n).filter(function (e) {
|
448 |
-
return !e.hasAttribute(t)
|
449 |
-
}).map(function (e) {
|
450 |
-
return e.setAttribute(t, "true"), e
|
451 |
-
})
|
452 |
-
}
|
453 |
-
}
|
454 |
-
}, function (t, e) {
|
455 |
-
function n(t, e, n, r, i, o, s) {
|
456 |
-
this.factory = t, this.Sandbox = e, this.srcEl = o, this.targetEl = i, this.parameters = r, this.className = n, this.options = s
|
457 |
-
}
|
458 |
-
|
459 |
-
n.prototype.destroy = function () {
|
460 |
-
this.srcEl = this.targetEl = null
|
461 |
-
}, t.exports = n
|
462 |
-
}, function (t, e) {
|
463 |
-
t.exports = {
|
464 |
-
DM_BUTTON: "twitter-dm-button",
|
465 |
-
FOLLOW_BUTTON: "twitter-follow-button",
|
466 |
-
HASHTAG_BUTTON: "twitter-hashtag-button",
|
467 |
-
MENTION_BUTTON: "twitter-mention-button",
|
468 |
-
MOMENT: "twitter-moment",
|
469 |
-
PERISCOPE: "periscope-on-air",
|
470 |
-
SHARE_BUTTON: "twitter-share-button",
|
471 |
-
TIMELINE: "twitter-timeline",
|
472 |
-
TWEET: "twitter-tweet"
|
473 |
-
}
|
474 |
-
}, function (t, e, n) {
|
475 |
-
var r = n(6), i = n(20), o = n(53), s = n(52), a = n(35), u = n(5), c = n(0);
|
476 |
-
t.exports = function (t, e, n) {
|
477 |
-
var d;
|
478 |
-
return t = t || [], e = e || {}, d = "ƒ(" + t.join(", ") + ", target, [options]);", function () {
|
479 |
-
var l, f, h, p, m = Array.prototype.slice.apply(arguments, [0, t.length]),
|
480 |
-
v = Array.prototype.slice.apply(arguments, [t.length]);
|
481 |
-
return v.forEach(function (t) {
|
482 |
-
t && (t.nodeType !== Node.ELEMENT_NODE ? c.isType("function", t) ? l = t : c.isType("object", t) && (f = t) : h = t)
|
483 |
-
}), m.length !== t.length || 0 === v.length ? (l && c.async(function () {
|
484 |
-
l(!1)
|
485 |
-
}), r.reject(new Error("Not enough parameters. Expected: " + d))) : h ? (f = c.aug({}, f || {}, e), t.forEach(function (t) {
|
486 |
-
f[t] = m.shift()
|
487 |
-
}), u.asBoolean(f.dnt) && i.setOn(), p = a.getExperiments().then(function (t) {
|
488 |
-
return o.addWidget(n(f, h, void 0, s.isHorizonTweetEnabled(t)))
|
489 |
-
}), l && p.then(l, function () {
|
490 |
-
l(!1)
|
491 |
-
}), p) : (l && c.async(function () {
|
492 |
-
l(!1)
|
493 |
-
}), r.reject(new Error("No target element specified. Expected: " + d)))
|
494 |
-
}
|
495 |
-
}
|
496 |
-
}, function (t, e, n) {
|
497 |
-
var r = n(102), i = n(2), o = n(0);
|
498 |
-
|
499 |
-
function s(t, e) {
|
500 |
-
return function () {
|
501 |
-
try {
|
502 |
-
e.resolve(t.call(this))
|
503 |
-
} catch (t) {
|
504 |
-
e.reject(t)
|
505 |
-
}
|
506 |
-
}
|
507 |
-
}
|
508 |
-
|
509 |
-
t.exports = {
|
510 |
-
sync: function (t, e) {
|
511 |
-
t.call(e)
|
512 |
-
}, read: function (t, e) {
|
513 |
-
var n = new i;
|
514 |
-
return r.read(s(t, n), e), n.promise
|
515 |
-
}, write: function (t, e) {
|
516 |
-
var n = new i;
|
517 |
-
return r.write(s(t, n), e), n.promise
|
518 |
-
}, defer: function (t, e, n) {
|
519 |
-
var a = new i;
|
520 |
-
return o.isType("function", t) && (n = e, e = t, t = 1), r.defer(t, s(e, a), n), a.promise
|
521 |
-
}
|
522 |
-
}
|
523 |
-
}, function (t, e, n) {
|
524 |
-
var r = n(9),
|
525 |
-
i = ["https://syndication.twitter.com", "https://cdn.syndication.twimg.com", "https://localhost.twitter.com:8444"],
|
526 |
-
o = ["https://syndication.twitter.com", "https://localhost.twitter.com:8445"],
|
527 |
-
s = ["https://platform.twitter.com/embed/index.html", "https://localhost.twitter.com:8080", /https:\/\/ton\.smf1\.twitter\.com\/syndication-internal\/embed-iframe\/[0-9A-Za-z_-]+\/app\/index\.html/],
|
528 |
-
a = function (t, e) {
|
529 |
-
return t.some(function (t) {
|
530 |
-
return t instanceof RegExp ? t.test(e) : t === e
|
531 |
-
})
|
532 |
-
}, u = function () {
|
533 |
-
var t = r.get("backendHost");
|
534 |
-
return t && a(i, t) ? t : "https://cdn.syndication.twimg.com"
|
535 |
-
}, c = function () {
|
536 |
-
var t = r.get("settingsSvcHost");
|
537 |
-
return t && a(o, t) ? t : "https://syndication.twitter.com"
|
538 |
-
}, d = function () {
|
539 |
-
var t = r.get("embedIframeURL");
|
540 |
-
return t && a(s, t) ? t : "https://platform.twitter.com/embed/index.html"
|
541 |
-
};
|
542 |
-
|
543 |
-
function l(t, e) {
|
544 |
-
var n = [t];
|
545 |
-
return e.forEach(function (t) {
|
546 |
-
n.push(function (t) {
|
547 |
-
var e = (t || "").toString(), n = "/" === e.slice(0, 1) ? 1 : 0, r = function (t) {
|
548 |
-
return "/" === t.slice(-1)
|
549 |
-
}(e) ? -1 : void 0;
|
550 |
-
return e.slice(n, r)
|
551 |
-
}(t))
|
552 |
-
}), n.join("/")
|
553 |
-
}
|
554 |
-
|
555 |
-
t.exports = {
|
556 |
-
cookieConsent: function (t) {
|
557 |
-
var e = t || [];
|
558 |
-
return e.unshift("cookie/consent"), l(c(), e)
|
559 |
-
}, embedIframe: function () {
|
560 |
-
return d()
|
561 |
-
}, eventVideo: function (t) {
|
562 |
-
var e = t || [];
|
563 |
-
return e.unshift("video/event"), l(u(), e)
|
564 |
-
}, grid: function (t) {
|
565 |
-
var e = t || [];
|
566 |
-
return e.unshift("grid/collection"), l(u(), e)
|
567 |
-
}, moment: function (t) {
|
568 |
-
var e = t || [];
|
569 |
-
return e.unshift("moments"), l(u(), e)
|
570 |
-
}, settings: function (t) {
|
571 |
-
var e = t || [];
|
572 |
-
return e.unshift("settings"), l(c(), e)
|
573 |
-
}, timeline: function (t) {
|
574 |
-
var e = t || [];
|
575 |
-
return e.unshift("timeline"), l(u(), e)
|
576 |
-
}, tweetBatch: function (t) {
|
577 |
-
var e = t || [];
|
578 |
-
return e.unshift("tweets.json"), l(u(), e)
|
579 |
-
}, video: function (t) {
|
580 |
-
var e = t || [];
|
581 |
-
return e.unshift("widgets/video"), l(u(), e)
|
582 |
-
}
|
583 |
-
}
|
584 |
-
}, function (t, e, n) {
|
585 |
-
var r = n(4), i = n(8), o = n(38), s = n(79), a = n(5), u = n(33), c = !1,
|
586 |
-
d = /https?:\/\/([^/]+).*/i;
|
587 |
-
t.exports = {
|
588 |
-
setOn: function () {
|
589 |
-
c = !0
|
590 |
-
}, enabled: function (t, e) {
|
591 |
-
return !!(c || a.asBoolean(u.val("dnt")) || s.isUrlSensitive(e || i.host) || o.isFramed() && s.isUrlSensitive(o.rootDocumentLocation()) || (t = d.test(t || r.referrer) && RegExp.$1) && s.isUrlSensitive(t))
|
592 |
-
}
|
593 |
-
}
|
594 |
-
}, function (t, e, n) {
|
595 |
-
var r = n(4), i = n(12), o = n(95), s = n(1), a = n(0), u = o.userAgent;
|
596 |
-
|
597 |
-
function c(t) {
|
598 |
-
return /(Trident|MSIE|Edge[/ ]?\d)/.test(t = t || u)
|
599 |
-
}
|
600 |
-
|
601 |
-
t.exports = {
|
602 |
-
retina: function (t) {
|
603 |
-
return (t = t || s).devicePixelRatio ? t.devicePixelRatio >= 1.5 : !!t.matchMedia && t.matchMedia("only screen and (min-resolution: 144dpi)").matches
|
604 |
-
}, anyIE: c, ie9: function (t) {
|
605 |
-
return /MSIE 9/.test(t = t || u)
|
606 |
-
}, ie10: function (t) {
|
607 |
-
return /MSIE 10/.test(t = t || u)
|
608 |
-
}, ios: function (t) {
|
609 |
-
return /(iPad|iPhone|iPod)/.test(t = t || u)
|
610 |
-
}, android: function (t) {
|
611 |
-
return /^Mozilla\/5\.0 \(Linux; (U; )?Android/.test(t = t || u)
|
612 |
-
}, canPostMessage: function (t, e) {
|
613 |
-
return t = t || s, e = e || u, t.postMessage && !(c(e) && t.opener)
|
614 |
-
}, touch: function (t, e, n) {
|
615 |
-
return t = t || s, e = e || o, n = n || u, "ontouchstart" in t || /Opera Mini/.test(n) || e.msMaxTouchPoints > 0
|
616 |
-
}, cssTransitions: function () {
|
617 |
-
var t = r.body.style;
|
618 |
-
return void 0 !== t.transition || void 0 !== t.webkitTransition || void 0 !== t.mozTransition || void 0 !== t.oTransition || void 0 !== t.msTransition
|
619 |
-
}, hasPromiseSupport: function () {
|
620 |
-
return !!(s.Promise && s.Promise.resolve && s.Promise.reject && s.Promise.all && s.Promise.race && (new s.Promise(function (e) {
|
621 |
-
t = e
|
622 |
-
}), a.isType("function", t)));
|
623 |
-
var t
|
624 |
-
}, hasIntersectionObserverSupport: function () {
|
625 |
-
return !!s.IntersectionObserver
|
626 |
-
}, hasPerformanceInformation: function () {
|
627 |
-
return s.performance && s.performance.getEntriesByType
|
628 |
-
}, hasLocalStorageSupport: function () {
|
629 |
-
try {
|
630 |
-
return s.localStorage.setItem("local_storage_support_test", "true"), void 0 !== s.localStorage
|
631 |
-
} catch (t) {
|
632 |
-
return i.devError("window.localStorage is not supported:", t), !1
|
633 |
-
}
|
634 |
-
}
|
635 |
-
}
|
636 |
-
}, function (t, e, n) {
|
637 |
-
var r = n(6), i = n(2);
|
638 |
-
|
639 |
-
function o(t, e) {
|
640 |
-
return t.then(e, e)
|
641 |
-
}
|
642 |
-
|
643 |
-
function s(t) {
|
644 |
-
return t instanceof r
|
645 |
-
}
|
646 |
-
|
647 |
-
t.exports = {
|
648 |
-
always: o, allResolved: function (t) {
|
649 |
-
var e;
|
650 |
-
return void 0 === t ? r.reject(new Error("undefined is not an object")) : Array.isArray(t) ? (e = t.length) ? new r(function (n, r) {
|
651 |
-
var i = 0, o = [];
|
652 |
-
|
653 |
-
function a() {
|
654 |
-
(i += 1) === e && (0 === o.length ? r() : n(o))
|
655 |
-
}
|
656 |
-
|
657 |
-
function u(t) {
|
658 |
-
o.push(t), a()
|
659 |
-
}
|
660 |
-
|
661 |
-
t.forEach(function (t) {
|
662 |
-
s(t) ? t.then(u, a) : u(t)
|
663 |
-
})
|
664 |
-
}) : r.resolve([]) : r.reject(new Error("Type error"))
|
665 |
-
}, some: function (t) {
|
666 |
-
var e;
|
667 |
-
return e = (t = t || []).length, t = t.filter(s), e ? e !== t.length ? r.reject("non-Promise passed to .some") : new r(function (e, n) {
|
668 |
-
var r = 0;
|
669 |
-
|
670 |
-
function i() {
|
671 |
-
(r += 1) === t.length && n()
|
672 |
-
}
|
673 |
-
|
674 |
-
t.forEach(function (t) {
|
675 |
-
t.then(e, i)
|
676 |
-
})
|
677 |
-
}) : r.reject("no promises passed to .some")
|
678 |
-
}, isPromise: s, allSettled: function (t) {
|
679 |
-
function e() {
|
680 |
-
}
|
681 |
-
|
682 |
-
return r.all((t || []).map(function (t) {
|
683 |
-
return o(t, e)
|
684 |
-
}))
|
685 |
-
}, timeout: function (t, e) {
|
686 |
-
var n = new i;
|
687 |
-
return setTimeout(function () {
|
688 |
-
n.reject(new Error("Promise timed out"))
|
689 |
-
}, e), t.then(function (t) {
|
690 |
-
n.resolve(t)
|
691 |
-
}, function (t) {
|
692 |
-
n.reject(t)
|
693 |
-
}), n.promise
|
694 |
-
}
|
695 |
-
}
|
696 |
-
}, function (t, e) {
|
697 |
-
var n = "i", r = 0, i = 0;
|
698 |
-
t.exports = {
|
699 |
-
generate: function () {
|
700 |
-
return n + String(+new Date) + Math.floor(1e5 * Math.random()) + r++
|
701 |
-
}, deterministic: function () {
|
702 |
-
return n + String(i++)
|
703 |
-
}
|
704 |
-
}
|
705 |
-
}, function (t, e, n) {
|
706 |
-
var r = n(49), i = n(51), o = n(0);
|
707 |
-
t.exports = o.aug(r.get("events") || {}, i.Emitter)
|
708 |
-
}, function (t, e, n) {
|
709 |
-
var r = n(26), i = n(110);
|
710 |
-
t.exports = r.build([i])
|
711 |
-
}, function (t, e, n) {
|
712 |
-
var r = n(40), i = n(107), o = n(7);
|
713 |
-
(r = Object.create(r)).build = o(r.build, null, i), t.exports = r
|
714 |
-
}, function (t, e, n) {
|
715 |
-
var r = n(40), i = n(41), o = n(7);
|
716 |
-
(r = Object.create(r)).build = o(r.build, null, i), t.exports = r
|
717 |
-
}, function (t, e, n) {
|
718 |
-
var r = n(83), i = n(75), o = n(84), s = n(8), a = n(71), u = n(74), c = n(20), d = n(5),
|
719 |
-
l = n(23), f = n(0);
|
720 |
-
|
721 |
-
function h(t) {
|
722 |
-
if (!t || !t.headers) throw new Error("unexpected response schema");
|
723 |
-
return {
|
724 |
-
html: t.body,
|
725 |
-
config: t.config,
|
726 |
-
pollInterval: 1e3 * parseInt(t.headers.xPolling, 10) || null,
|
727 |
-
maxCursorPosition: t.headers.maxPosition,
|
728 |
-
minCursorPosition: t.headers.minPosition
|
729 |
-
}
|
730 |
-
}
|
731 |
-
|
732 |
-
function p(t) {
|
733 |
-
if (t && t.headers) throw new Error(t.headers.status);
|
734 |
-
throw t instanceof Error ? t : new Error(t)
|
735 |
-
}
|
736 |
-
|
737 |
-
t.exports = function (t) {
|
738 |
-
t.params({
|
739 |
-
instanceId: {required: !0, fallback: l.deterministic},
|
740 |
-
lang: {required: !0, transform: a.matchLanguage, fallback: "en"},
|
741 |
-
tweetLimit: {transform: d.asInt}
|
742 |
-
}), t.defineProperty("endpoint", {
|
743 |
-
get: function () {
|
744 |
-
throw new Error("endpoint not specified")
|
745 |
-
}
|
746 |
-
}), t.defineProperty("pollEndpoint", {
|
747 |
-
get: function () {
|
748 |
-
return this.endpoint
|
749 |
-
}
|
750 |
-
}), t.define("cbId", function (t) {
|
751 |
-
var e = t ? "_new" : "_old";
|
752 |
-
return "tl_" + this.params.instanceId + "_" + this.id + e
|
753 |
-
}), t.define("queryParams", function () {
|
754 |
-
return {
|
755 |
-
lang: this.params.lang,
|
756 |
-
tz: u.getTimezoneOffset(),
|
757 |
-
t: r(),
|
758 |
-
domain: s.host,
|
759 |
-
tweet_limit: this.params.tweetLimit,
|
760 |
-
dnt: c.enabled()
|
761 |
-
}
|
762 |
-
}), t.define("fetch", function () {
|
763 |
-
return i.fetch(this.endpoint, this.queryParams(), o, this.cbId()).then(h, p)
|
764 |
-
}), t.define("poll", function (t, e) {
|
765 |
-
var n, r;
|
766 |
-
return n = {
|
767 |
-
since_id: (t = t || {}).sinceId,
|
768 |
-
max_id: t.maxId,
|
769 |
-
min_position: t.minPosition,
|
770 |
-
max_position: t.maxPosition
|
771 |
-
}, r = f.aug(this.queryParams(), n), i.fetch(this.pollEndpoint, r, o, this.cbId(e)).then(h, p)
|
772 |
-
})
|
773 |
-
}
|
774 |
-
}, function (t, e, n) {
|
775 |
-
var r = n(51).makeEmitter();
|
776 |
-
t.exports = {
|
777 |
-
emitter: r,
|
778 |
-
START: "start",
|
779 |
-
ALL_WIDGETS_RENDER_START: "all_widgets_render_start",
|
780 |
-
ALL_WIDGETS_RENDER_END: "all_widgets_render_end",
|
781 |
-
ALL_WIDGETS_AND_IMAGES_LOADED: "all_widgets_and_images_loaded"
|
782 |
-
}
|
783 |
-
}, function (t, e, n) {
|
784 |
-
var r = n(4), i = n(0);
|
785 |
-
t.exports = function (t, e, n) {
|
786 |
-
var o;
|
787 |
-
if (n = n || r, t = t || {}, e = e || {}, t.name) {
|
788 |
-
try {
|
789 |
-
o = n.createElement('<iframe name="' + t.name + '"></iframe>')
|
790 |
-
} catch (e) {
|
791 |
-
(o = n.createElement("iframe")).name = t.name
|
792 |
-
}
|
793 |
-
delete t.name
|
794 |
-
} else o = n.createElement("iframe");
|
795 |
-
return t.id && (o.id = t.id, delete t.id), o.allowtransparency = "true", o.scrolling = "no", o.setAttribute("frameBorder", 0), o.setAttribute("allowTransparency", !0), i.forIn(t, function (t, e) {
|
796 |
-
o.setAttribute(t, e)
|
797 |
-
}), i.forIn(e, function (t, e) {
|
798 |
-
o.style[t] = e
|
799 |
-
}), o
|
800 |
-
}
|
801 |
-
}, function (t, e, n) {
|
802 |
-
var r = n(1).JSON;
|
803 |
-
t.exports = {stringify: r.stringify || r.encode, parse: r.parse || r.decode}
|
804 |
-
}, function (t, e, n) {
|
805 |
-
var r = n(0), i = n(43);
|
806 |
-
t.exports = {
|
807 |
-
closest: function t(e, n, o) {
|
808 |
-
var s;
|
809 |
-
if (n) return o = o || n && n.ownerDocument, s = r.isType("function", e) ? e : function (t) {
|
810 |
-
return function (e) {
|
811 |
-
return !!e.tagName && i(e, t)
|
812 |
-
}
|
813 |
-
}(e), n === o ? s(n) ? n : void 0 : s(n) ? n : t(s, n.parentNode, o)
|
814 |
-
}
|
815 |
-
}
|
816 |
-
}, function (t, e, n) {
|
817 |
-
var r, i = n(4);
|
818 |
-
|
819 |
-
function o(t) {
|
820 |
-
var e, n, o, s = 0;
|
821 |
-
for (r = {}, e = (t = t || i).getElementsByTagName("meta"); e[s]; s++) {
|
822 |
-
if (n = e[s], /^twitter:/.test(n.getAttribute("name"))) o = n.getAttribute("name").replace(/^twitter:/, ""); else {
|
823 |
-
if (!/^twitter:/.test(n.getAttribute("property"))) continue;
|
824 |
-
o = n.getAttribute("property").replace(/^twitter:/, "")
|
825 |
-
}
|
826 |
-
r[o] = n.getAttribute("content") || n.getAttribute("value")
|
827 |
-
}
|
828 |
-
}
|
829 |
-
|
830 |
-
o(), t.exports = {
|
831 |
-
init: o, val: function (t) {
|
832 |
-
return r[t]
|
833 |
-
}
|
834 |
-
}
|
835 |
-
}, function (t, e, n) {
|
836 |
-
var r = n(4), i = n(31), o = n(20), s = n(0), a = n(44), u = n(9), c = n(3), d = n(32),
|
837 |
-
l = a.version, f = u.get("clientEventEndpoint") || "https://syndication.twitter.com/i/jot",
|
838 |
-
h = 1;
|
839 |
-
|
840 |
-
function p(t) {
|
841 |
-
return s.aug({client: "tfw"}, t || {})
|
842 |
-
}
|
843 |
-
|
844 |
-
function m(t, e, n) {
|
845 |
-
return e = e || {}, s.aug({}, e, {
|
846 |
-
_category_: t,
|
847 |
-
triggered_on: e.triggered_on || +new Date,
|
848 |
-
dnt: o.enabled(n)
|
849 |
-
})
|
850 |
-
}
|
851 |
-
|
852 |
-
t.exports = {
|
853 |
-
extractTermsFromDOM: function t(e, n) {
|
854 |
-
var r;
|
855 |
-
return n = n || {}, e && e.nodeType === Node.ELEMENT_NODE ? ((r = e.getAttribute("data-scribe")) && r.split(" ").forEach(function (t) {
|
856 |
-
var e = t.trim().split(":"), r = e[0], i = e[1];
|
857 |
-
r && i && !n[r] && (n[r] = i)
|
858 |
-
}), t(e.parentNode, n)) : n
|
859 |
-
},
|
860 |
-
clickEventElement: function (t) {
|
861 |
-
var e = d.closest("[data-expanded-url]", t),
|
862 |
-
n = e && e.getAttribute("data-expanded-url");
|
863 |
-
return n && c.isTwitterURL(n) ? "twitter_url" : "url"
|
864 |
-
},
|
865 |
-
flattenClientEventPayload: function (t, e) {
|
866 |
-
return s.aug({}, e, {event_namespace: t})
|
867 |
-
},
|
868 |
-
formatGenericEventData: m,
|
869 |
-
formatClientEventData: function (t, e, n) {
|
870 |
-
var i = t && t.widget_origin || r.referrer;
|
871 |
-
return (t = m("tfw_client_event", t, i)).client_version = l, t.format_version = void 0 !== n ? n : 1, e || (t.widget_origin = i), t
|
872 |
-
},
|
873 |
-
formatClientEventNamespace: p,
|
874 |
-
formatTweetAssociation: function (t, e) {
|
875 |
-
var n = {};
|
876 |
-
return (e = e || {}).association_namespace = p(t), n[h] = e, n
|
877 |
-
},
|
878 |
-
noticeSeen: function (t) {
|
879 |
-
return "notice" === t.element && "seen" === t.action
|
880 |
-
},
|
881 |
-
splitLogEntry: function (t) {
|
882 |
-
var e, n, r, i, o;
|
883 |
-
return t.item_ids && t.item_ids.length > 1 ? (e = Math.floor(t.item_ids.length / 2), n = t.item_ids.slice(0, e), r = {}, i = t.item_ids.slice(e), o = {}, n.forEach(function (e) {
|
884 |
-
r[e] = t.item_details[e]
|
885 |
-
}), i.forEach(function (e) {
|
886 |
-
o[e] = t.item_details[e]
|
887 |
-
}), [s.aug({}, t, {item_ids: n, item_details: r}), s.aug({}, t, {
|
888 |
-
item_ids: i,
|
889 |
-
item_details: o
|
890 |
-
})]) : [t]
|
891 |
-
},
|
892 |
-
stringify: function (t) {
|
893 |
-
var e, n = Array.prototype.toJSON;
|
894 |
-
return delete Array.prototype.toJSON, e = i.stringify(t), n && (Array.prototype.toJSON = n), e
|
895 |
-
},
|
896 |
-
AUDIENCE_ENDPOINT: "https://syndication.twitter.com/i/jot/syndication",
|
897 |
-
CLIENT_EVENT_ENDPOINT: f,
|
898 |
-
RUFOUS_REDIRECT: "https://platform.twitter.com/jot.html"
|
899 |
-
}
|
900 |
-
}, function (t, e, n) {
|
901 |
-
var r = n(113), i = n(116);
|
902 |
-
|
903 |
-
function o(t) {
|
904 |
-
return r.settingsLoaded().then(function (e) {
|
905 |
-
return e[t]
|
906 |
-
})
|
907 |
-
}
|
908 |
-
|
909 |
-
function s() {
|
910 |
-
return o("experiments")
|
911 |
-
}
|
912 |
-
|
913 |
-
t.exports = {
|
914 |
-
shouldObtainCookieConsent: function () {
|
915 |
-
return o("shouldObtainCookieConsent")
|
916 |
-
}, getExperiments: s, getExperiment: function (t) {
|
917 |
-
return s().then(function (e) {
|
918 |
-
if (!e[t]) throw new Error("Experiment not found");
|
919 |
-
return e[t]
|
920 |
-
})
|
921 |
-
}, getActiveExperimentDataString: function () {
|
922 |
-
return s().then(function (t) {
|
923 |
-
var e = Object.keys(t).reduce(function (e, n) {
|
924 |
-
var r;
|
925 |
-
return t[n].version && (r = n.split("_").slice(-1)[0], e.push(r + ";" + t[n].bucket)), e
|
926 |
-
}, []);
|
927 |
-
return i(e.join(","))
|
928 |
-
})
|
929 |
-
}, getExperimentKeys: function () {
|
930 |
-
return s().then(function (t) {
|
931 |
-
return Object.keys(t)
|
932 |
-
})
|
933 |
-
}, load: function () {
|
934 |
-
r.load()
|
935 |
-
}
|
936 |
-
}
|
937 |
-
}, function (t, e, n) {
|
938 |
-
var r = n(10), i = {}, o = -1, s = {};
|
939 |
-
|
940 |
-
function a(t) {
|
941 |
-
var e = t.getAttribute("data-twitter-event-id");
|
942 |
-
return e || (t.setAttribute("data-twitter-event-id", ++o), o)
|
943 |
-
}
|
944 |
-
|
945 |
-
function u(t, e, n) {
|
946 |
-
var r = 0, i = t && t.length || 0;
|
947 |
-
for (r = 0; r < i; r++) if (t[r].call(e, n, e), n.ceaseImmediately) return !1
|
948 |
-
}
|
949 |
-
|
950 |
-
function c(t, e, n) {
|
951 |
-
for (var i = n || t.target || t.srcElement, o = r.list(i).map(function (t) {
|
952 |
-
return "." + t
|
953 |
-
}).concat(i.tagName), s = 0, a = o.length; s < a; s++) if (!1 === u(e[o[s]], i, t)) return;
|
954 |
-
t.cease || i !== this && c.call(this, t, e, i.parentElement || i.parentNode)
|
955 |
-
}
|
956 |
-
|
957 |
-
function d(t, e, n, r) {
|
958 |
-
function i(r) {
|
959 |
-
c.call(t, r, n[e])
|
960 |
-
}
|
961 |
-
|
962 |
-
!function (t, e, n, r) {
|
963 |
-
t.id && (s[t.id] = s[t.id] || [], s[t.id].push({
|
964 |
-
el: t,
|
965 |
-
listener: e,
|
966 |
-
type: n,
|
967 |
-
rootId: r
|
968 |
-
}))
|
969 |
-
}(t, i, e, r), t.addEventListener(e, i, !1)
|
970 |
-
}
|
971 |
-
|
972 |
-
function l(t) {
|
973 |
-
t && t.preventDefault ? t.preventDefault() : t.returnValue = !1
|
974 |
-
}
|
975 |
-
|
976 |
-
function f(t) {
|
977 |
-
t && (t.cease = !0) && t.stopPropagation ? t.stopPropagation() : t.cancelBubble = !0
|
978 |
-
}
|
979 |
-
|
980 |
-
t.exports = {
|
981 |
-
stop: function (t) {
|
982 |
-
return f(t), l(t), !1
|
983 |
-
}, stopPropagation: f, stopImmediatePropagation: function (t) {
|
984 |
-
t && (t.ceaseImmediately = !0, f(t), t.stopImmediatePropagation())
|
985 |
-
}, preventDefault: l, delegate: function (t, e, n, r) {
|
986 |
-
var o = a(t);
|
987 |
-
i[o] = i[o] || {}, i[o][e] || (i[o][e] = {}, d(t, e, i[o], o)), i[o][e][n] = i[o][e][n] || [], i[o][e][n].push(r)
|
988 |
-
}, simulate: function (t, e, n) {
|
989 |
-
var r = a(e), o = i[r] && i[r];
|
990 |
-
c.call(e, {target: n}, o[t])
|
991 |
-
}, removeDelegatesForWidget: function (t) {
|
992 |
-
var e = s[t];
|
993 |
-
e && (e.forEach(function (t) {
|
994 |
-
t.el.removeEventListener(t.type, t.listener, !1), delete i[t.rootId]
|
995 |
-
}), delete s[t])
|
996 |
-
}
|
997 |
-
}
|
998 |
-
}, function (t, e, n) {
|
999 |
-
var r = n(26), i = n(125);
|
1000 |
-
t.exports = r.build([i])
|
1001 |
-
}, function (t, e, n) {
|
1002 |
-
var r = n(8), i = n(78), o = n(0), s = i.getCanonicalURL() || r.href, a = s;
|
1003 |
-
t.exports = {
|
1004 |
-
isFramed: function () {
|
1005 |
-
return s !== a
|
1006 |
-
}, rootDocumentLocation: function (t) {
|
1007 |
-
return t && o.isType("string", t) && (s = t), s
|
1008 |
-
}, currentDocumentLocation: function () {
|
1009 |
-
return a
|
1010 |
-
}
|
1011 |
-
}
|
1012 |
-
}, function (t, e, n) {
|
1013 |
-
var r = n(77), i = n(104), o = n(80), s = n(34), a = new (n(112))(function (t) {
|
1014 |
-
var e, n, a;
|
1015 |
-
if (0 !== t.length) {
|
1016 |
-
if (u(t)) return c(t);
|
1017 |
-
e = r(t, function (t) {
|
1018 |
-
return s.noticeSeen(t.input.namespace)
|
1019 |
-
}), n = e.true, a = e.false, n && n.length > 0 && (n = n.slice(0, 1), o.canFlushOneItem(n[0]) || (n[0].input.data.message = ""), c(n)), a && (u(a) ? c : function (t) {
|
1020 |
-
i.init(), t.forEach(function (t) {
|
1021 |
-
var e = t.input.namespace, n = t.input.data, r = t.input.offsite,
|
1022 |
-
o = t.input.version;
|
1023 |
-
i.clientEvent(e, n, r, o)
|
1024 |
-
}), i.flush().then(function () {
|
1025 |
-
t.forEach(function (t) {
|
1026 |
-
t.taskDoneDeferred.resolve()
|
1027 |
-
})
|
1028 |
-
}, function () {
|
1029 |
-
t.forEach(function (t) {
|
1030 |
-
t.taskDoneDeferred.reject()
|
1031 |
-
})
|
1032 |
-
})
|
1033 |
-
})(a)
|
1034 |
-
}
|
1035 |
-
});
|
1036 |
-
|
1037 |
-
function u(t) {
|
1038 |
-
return 1 === t.length && o.canFlushOneItem(t[0])
|
1039 |
-
}
|
1040 |
-
|
1041 |
-
function c(t) {
|
1042 |
-
t.forEach(function (t) {
|
1043 |
-
var e = t.input.namespace, n = t.input.data, r = t.input.offsite, i = t.input.version;
|
1044 |
-
o.clientEvent(e, n, r, i), t.taskDoneDeferred.resolve()
|
1045 |
-
})
|
1046 |
-
}
|
1047 |
-
|
1048 |
-
t.exports = {
|
1049 |
-
scribe: function (t, e, n, r) {
|
1050 |
-
return a.add({namespace: t, data: e, offsite: n, version: r})
|
1051 |
-
}, pause: function () {
|
1052 |
-
a.pause()
|
1053 |
-
}, resume: function () {
|
1054 |
-
a.resume()
|
1055 |
-
}
|
1056 |
-
}
|
1057 |
-
}, function (t, e, n) {
|
1058 |
-
var r = n(105), i = n(106), o = n(0);
|
1059 |
-
t.exports = {
|
1060 |
-
couple: function () {
|
1061 |
-
return o.toRealArray(arguments)
|
1062 |
-
}, build: function (t, e, n) {
|
1063 |
-
var o = new t;
|
1064 |
-
return (e = i(r(e || []))).forEach(function (t) {
|
1065 |
-
t.call(null, o)
|
1066 |
-
}), o.build(n)
|
1067 |
-
}
|
1068 |
-
}
|
1069 |
-
}, function (t, e, n) {
|
1070 |
-
var r = n(108), i = n(0), o = n(42);
|
1071 |
-
|
1072 |
-
function s() {
|
1073 |
-
this.Component = this.factory(), this._adviceArgs = [], this._lastArgs = []
|
1074 |
-
}
|
1075 |
-
|
1076 |
-
i.aug(s.prototype, {
|
1077 |
-
factory: o, build: function (t) {
|
1078 |
-
var e = this;
|
1079 |
-
return this.Component, i.aug(this.Component.prototype.boundParams, t), this._adviceArgs.concat(this._lastArgs).forEach(function (t) {
|
1080 |
-
(function (t, e, n) {
|
1081 |
-
var r = this[e];
|
1082 |
-
if (!r) throw new Error(e + " does not exist");
|
1083 |
-
this[e] = t(r, n)
|
1084 |
-
}).apply(e.Component.prototype, t)
|
1085 |
-
}), delete this._lastArgs, delete this._adviceArgs, this.Component
|
1086 |
-
}, params: function (t) {
|
1087 |
-
var e = this.Component.prototype.paramConfigs;
|
1088 |
-
t = t || {}, this.Component.prototype.paramConfigs = i.aug({}, t, e)
|
1089 |
-
}, define: function (t, e) {
|
1090 |
-
if (t in this.Component.prototype) throw new Error(t + " has previously been defined");
|
1091 |
-
this.override(t, e)
|
1092 |
-
}, defineStatic: function (t, e) {
|
1093 |
-
this.Component[t] = e
|
1094 |
-
}, override: function (t, e) {
|
1095 |
-
this.Component.prototype[t] = e
|
1096 |
-
}, defineProperty: function (t, e) {
|
1097 |
-
if (t in this.Component.prototype) throw new Error(t + " has previously been defined");
|
1098 |
-
this.overrideProperty(t, e)
|
1099 |
-
}, overrideProperty: function (t, e) {
|
1100 |
-
var n = i.aug({configurable: !0}, e);
|
1101 |
-
Object.defineProperty(this.Component.prototype, t, n)
|
1102 |
-
}, before: function (t, e) {
|
1103 |
-
this._adviceArgs.push([r.before, t, e])
|
1104 |
-
}, after: function (t, e) {
|
1105 |
-
this._adviceArgs.push([r.after, t, e])
|
1106 |
-
}, around: function (t, e) {
|
1107 |
-
this._adviceArgs.push([r.around, t, e])
|
1108 |
-
}, last: function (t, e) {
|
1109 |
-
this._lastArgs.push([r.after, t, e])
|
1110 |
-
}
|
1111 |
-
}), t.exports = s
|
1112 |
-
}, function (t, e, n) {
|
1113 |
-
var r = n(0);
|
1114 |
-
|
1115 |
-
function i() {
|
1116 |
-
return !0
|
1117 |
-
}
|
1118 |
-
|
1119 |
-
function o(t) {
|
1120 |
-
return t
|
1121 |
-
}
|
1122 |
-
|
1123 |
-
t.exports = function () {
|
1124 |
-
function t(t) {
|
1125 |
-
var e = this;
|
1126 |
-
t = t || {}, this.params = Object.keys(this.paramConfigs).reduce(function (n, s) {
|
1127 |
-
var a = [], u = e.boundParams, c = e.paramConfigs[s], d = c.validate || i,
|
1128 |
-
l = c.transform || o;
|
1129 |
-
if (s in u && a.push(u[s]), s in t && a.push(t[s]), a = "fallback" in c ? a.concat(c.fallback) : a, n[s] = function (t, e, n) {
|
1130 |
-
var i = null;
|
1131 |
-
return t.some(function (t) {
|
1132 |
-
if (t = r.isType("function", t) ? t() : t, e(t)) return i = n(t), !0
|
1133 |
-
}), i
|
1134 |
-
}(a, d, l), c.required && null == n[s]) throw new Error(s + " is a required parameter");
|
1135 |
-
return n
|
1136 |
-
}, {}), this.initialize()
|
1137 |
-
}
|
1138 |
-
|
1139 |
-
return r.aug(t.prototype, {
|
1140 |
-
paramConfigs: {}, boundParams: {}, initialize: function () {
|
1141 |
-
}
|
1142 |
-
}), t
|
1143 |
-
}
|
1144 |
-
}, function (t, e, n) {
|
1145 |
-
var r = n(1).HTMLElement,
|
1146 |
-
i = r.prototype.matches || r.prototype.matchesSelector || r.prototype.webkitMatchesSelector || r.prototype.mozMatchesSelector || r.prototype.msMatchesSelector || r.prototype.oMatchesSelector;
|
1147 |
-
t.exports = function (t, e) {
|
1148 |
-
if (i) return i.call(t, e)
|
1149 |
-
}
|
1150 |
-
}, function (t) {
|
1151 |
-
t.exports = {version: "2a81c84:1568701398616"}
|
1152 |
-
}, function (t, e, n) {
|
1153 |
-
var r, i = n(10), o = n(4), s = n(1), a = n(33), u = n(54), c = n(5), d = n(23), l = "csptest";
|
1154 |
-
t.exports = {
|
1155 |
-
inlineStyle: function () {
|
1156 |
-
var t = l + d.generate(), e = o.createElement("div"), n = o.createElement("style"),
|
1157 |
-
f = "." + t + " { visibility: hidden; }";
|
1158 |
-
return !!o.body && (c.asBoolean(a.val("widgets:csp")) && (r = !1), void 0 !== r ? r : (e.style.display = "none", i.add(e, t), n.type = "text/css", n.appendChild(o.createTextNode(f)), o.body.appendChild(n), o.body.appendChild(e), r = "hidden" === s.getComputedStyle(e).visibility, u(e), u(n), r))
|
1159 |
-
}
|
1160 |
-
}
|
1161 |
-
}, function (t, e, n) {
|
1162 |
-
var r = n(1);
|
1163 |
-
t.exports = function (t, e, n) {
|
1164 |
-
var i, o = 0;
|
1165 |
-
return n = n || null, function s() {
|
1166 |
-
var a = n || this, u = arguments, c = +new Date;
|
1167 |
-
if (r.clearTimeout(i), c - o > e) return o = c, void t.apply(a, u);
|
1168 |
-
i = r.setTimeout(function () {
|
1169 |
-
s.apply(a, u)
|
1170 |
-
}, e)
|
1171 |
-
}
|
1172 |
-
}
|
1173 |
-
}, function (t, e) {
|
1174 |
-
t.exports = function (t) {
|
1175 |
-
var e = t.getBoundingClientRect();
|
1176 |
-
return {width: e.width, height: e.height}
|
1177 |
-
}
|
1178 |
-
}, function (t, e, n) {
|
1179 |
-
/*!
|
1180 |
-
* @overview es6-promise - a tiny implementation of Promises/A+.
|
1181 |
-
* @copyright Copyright (c) 2014 Yehuda Katz, Tom Dale, Stefan Penner and contributors (Conversion to ES6 API by Jake Archibald)
|
1182 |
-
* @license Licensed under MIT license
|
1183 |
-
* See https://raw.githubusercontent.com/stefanpenner/es6-promise/master/LICENSE
|
1184 |
-
* @version v4.2.5+7f2b526d
|
1185 |
-
*/
|
1186 |
-
var r;
|
1187 |
-
r = function () {
|
1188 |
-
"use strict";
|
1189 |
-
|
1190 |
-
function t(t) {
|
1191 |
-
return "function" == typeof t
|
1192 |
-
}
|
1193 |
-
|
1194 |
-
var e = Array.isArray ? Array.isArray : function (t) {
|
1195 |
-
return "[object Array]" === Object.prototype.toString.call(t)
|
1196 |
-
}, n = 0, r = void 0, i = void 0, o = function (t, e) {
|
1197 |
-
f[n] = t, f[n + 1] = e, 2 === (n += 2) && (i ? i(h) : w())
|
1198 |
-
}, s = "undefined" != typeof window ? window : void 0, a = s || {},
|
1199 |
-
u = a.MutationObserver || a.WebKitMutationObserver,
|
1200 |
-
c = "undefined" == typeof self && "undefined" != typeof process && "[object process]" === {}.toString.call(process),
|
1201 |
-
d = "undefined" != typeof Uint8ClampedArray && "undefined" != typeof importScripts && "undefined" != typeof MessageChannel;
|
1202 |
-
|
1203 |
-
function l() {
|
1204 |
-
var t = setTimeout;
|
1205 |
-
return function () {
|
1206 |
-
return t(h, 1)
|
1207 |
-
}
|
1208 |
-
}
|
1209 |
-
|
1210 |
-
var f = new Array(1e3);
|
1211 |
-
|
1212 |
-
function h() {
|
1213 |
-
for (var t = 0; t < n; t += 2) (0, f[t])(f[t + 1]), f[t] = void 0, f[t + 1] = void 0;
|
1214 |
-
n = 0
|
1215 |
-
}
|
1216 |
-
|
1217 |
-
var p, m, v, g, w = void 0;
|
1218 |
-
|
1219 |
-
function y(t, e) {
|
1220 |
-
var n = this, r = new this.constructor(E);
|
1221 |
-
void 0 === r[_] && k(r);
|
1222 |
-
var i = n._state;
|
1223 |
-
if (i) {
|
1224 |
-
var s = arguments[i - 1];
|
1225 |
-
o(function () {
|
1226 |
-
return D(i, r, s, n._result)
|
1227 |
-
})
|
1228 |
-
} else I(n, r, t, e);
|
1229 |
-
return r
|
1230 |
-
}
|
1231 |
-
|
1232 |
-
function b(t) {
|
1233 |
-
if (t && "object" == typeof t && t.constructor === this) return t;
|
1234 |
-
var e = new this(E);
|
1235 |
-
return C(e, t), e
|
1236 |
-
}
|
1237 |
-
|
1238 |
-
c ? w = function () {
|
1239 |
-
return process.nextTick(h)
|
1240 |
-
} : u ? (m = 0, v = new u(h), g = document.createTextNode(""), v.observe(g, {characterData: !0}), w = function () {
|
1241 |
-
g.data = m = ++m % 2
|
1242 |
-
}) : d ? ((p = new MessageChannel).port1.onmessage = h, w = function () {
|
1243 |
-
return p.port2.postMessage(0)
|
1244 |
-
}) : w = void 0 === s ? function () {
|
1245 |
-
try {
|
1246 |
-
var t = Function("return this")().require("vertx");
|
1247 |
-
return void 0 !== (r = t.runOnLoop || t.runOnContext) ? function () {
|
1248 |
-
r(h)
|
1249 |
-
} : l()
|
1250 |
-
} catch (t) {
|
1251 |
-
return l()
|
1252 |
-
}
|
1253 |
-
}() : l();
|
1254 |
-
var _ = Math.random().toString(36).substring(2);
|
1255 |
-
|
1256 |
-
function E() {
|
1257 |
-
}
|
1258 |
-
|
1259 |
-
var x = void 0, T = 1, A = 2, S = {error: null};
|
1260 |
-
|
1261 |
-
function R(t) {
|
1262 |
-
try {
|
1263 |
-
return t.then
|
1264 |
-
} catch (t) {
|
1265 |
-
return S.error = t, S
|
1266 |
-
}
|
1267 |
-
}
|
1268 |
-
|
1269 |
-
function N(e, n, r) {
|
1270 |
-
n.constructor === e.constructor && r === y && n.constructor.resolve === b ? function (t, e) {
|
1271 |
-
e._state === T ? L(t, e._result) : e._state === A ? j(t, e._result) : I(e, void 0, function (e) {
|
1272 |
-
return C(t, e)
|
1273 |
-
}, function (e) {
|
1274 |
-
return j(t, e)
|
1275 |
-
})
|
1276 |
-
}(e, n) : r === S ? (j(e, S.error), S.error = null) : void 0 === r ? L(e, n) : t(r) ? function (t, e, n) {
|
1277 |
-
o(function (t) {
|
1278 |
-
var r = !1, i = function (t, e, n, r) {
|
1279 |
-
try {
|
1280 |
-
t.call(e, n, r)
|
1281 |
-
} catch (t) {
|
1282 |
-
return t
|
1283 |
-
}
|
1284 |
-
}(n, e, function (n) {
|
1285 |
-
r || (r = !0, e !== n ? C(t, n) : L(t, n))
|
1286 |
-
}, function (e) {
|
1287 |
-
r || (r = !0, j(t, e))
|
1288 |
-
}, t._label);
|
1289 |
-
!r && i && (r = !0, j(t, i))
|
1290 |
-
}, t)
|
1291 |
-
}(e, n, r) : L(e, n)
|
1292 |
-
}
|
1293 |
-
|
1294 |
-
function C(t, e) {
|
1295 |
-
var n, r;
|
1296 |
-
t === e ? j(t, new TypeError("You cannot resolve a promise with itself")) : (r = typeof (n = e), null === n || "object" !== r && "function" !== r ? L(t, e) : N(t, e, R(e)))
|
1297 |
-
}
|
1298 |
-
|
1299 |
-
function P(t) {
|
1300 |
-
t._onerror && t._onerror(t._result), O(t)
|
1301 |
-
}
|
1302 |
-
|
1303 |
-
function L(t, e) {
|
1304 |
-
t._state === x && (t._result = e, t._state = T, 0 !== t._subscribers.length && o(O, t))
|
1305 |
-
}
|
1306 |
-
|
1307 |
-
function j(t, e) {
|
1308 |
-
t._state === x && (t._state = A, t._result = e, o(P, t))
|
1309 |
-
}
|
1310 |
-
|
1311 |
-
function I(t, e, n, r) {
|
1312 |
-
var i = t._subscribers, s = i.length;
|
1313 |
-
t._onerror = null, i[s] = e, i[s + T] = n, i[s + A] = r, 0 === s && t._state && o(O, t)
|
1314 |
-
}
|
1315 |
-
|
1316 |
-
function O(t) {
|
1317 |
-
var e = t._subscribers, n = t._state;
|
1318 |
-
if (0 !== e.length) {
|
1319 |
-
for (var r = void 0, i = void 0, o = t._result, s = 0; s < e.length; s += 3) r = e[s], i = e[s + n], r ? D(n, r, i, o) : i(o);
|
1320 |
-
t._subscribers.length = 0
|
1321 |
-
}
|
1322 |
-
}
|
1323 |
-
|
1324 |
-
function D(e, n, r, i) {
|
1325 |
-
var o = t(r), s = void 0, a = void 0, u = void 0, c = void 0;
|
1326 |
-
if (o) {
|
1327 |
-
if ((s = function (t, e) {
|
1328 |
-
try {
|
1329 |
-
return t(e)
|
1330 |
-
} catch (t) {
|
1331 |
-
return S.error = t, S
|
1332 |
-
}
|
1333 |
-
}(r, i)) === S ? (c = !0, a = s.error, s.error = null) : u = !0, n === s) return void j(n, new TypeError("A promises callback cannot return that same promise."))
|
1334 |
-
} else s = i, u = !0;
|
1335 |
-
n._state !== x || (o && u ? C(n, s) : c ? j(n, a) : e === T ? L(n, s) : e === A && j(n, s))
|
1336 |
-
}
|
1337 |
-
|
1338 |
-
var z = 0;
|
1339 |
-
|
1340 |
-
function k(t) {
|
1341 |
-
t[_] = z++, t._state = void 0, t._result = void 0, t._subscribers = []
|
1342 |
-
}
|
1343 |
-
|
1344 |
-
var M = function () {
|
1345 |
-
function t(t, n) {
|
1346 |
-
this._instanceConstructor = t, this.promise = new t(E), this.promise[_] || k(this.promise), e(n) ? (this.length = n.length, this._remaining = n.length, this._result = new Array(this.length), 0 === this.length ? L(this.promise, this._result) : (this.length = this.length || 0, this._enumerate(n), 0 === this._remaining && L(this.promise, this._result))) : j(this.promise, new Error("Array Methods must be provided an Array"))
|
1347 |
-
}
|
1348 |
-
|
1349 |
-
return t.prototype._enumerate = function (t) {
|
1350 |
-
for (var e = 0; this._state === x && e < t.length; e++) this._eachEntry(t[e], e)
|
1351 |
-
}, t.prototype._eachEntry = function (t, e) {
|
1352 |
-
var n = this._instanceConstructor, r = n.resolve;
|
1353 |
-
if (r === b) {
|
1354 |
-
var i = R(t);
|
1355 |
-
if (i === y && t._state !== x) this._settledAt(t._state, e, t._result); else if ("function" != typeof i) this._remaining--, this._result[e] = t; else if (n === U) {
|
1356 |
-
var o = new n(E);
|
1357 |
-
N(o, t, i), this._willSettleAt(o, e)
|
1358 |
-
} else this._willSettleAt(new n(function (e) {
|
1359 |
-
return e(t)
|
1360 |
-
}), e)
|
1361 |
-
} else this._willSettleAt(r(t), e)
|
1362 |
-
}, t.prototype._settledAt = function (t, e, n) {
|
1363 |
-
var r = this.promise;
|
1364 |
-
r._state === x && (this._remaining--, t === A ? j(r, n) : this._result[e] = n), 0 === this._remaining && L(r, this._result)
|
1365 |
-
}, t.prototype._willSettleAt = function (t, e) {
|
1366 |
-
var n = this;
|
1367 |
-
I(t, void 0, function (t) {
|
1368 |
-
return n._settledAt(T, e, t)
|
1369 |
-
}, function (t) {
|
1370 |
-
return n._settledAt(A, e, t)
|
1371 |
-
})
|
1372 |
-
}, t
|
1373 |
-
}(), U = function () {
|
1374 |
-
function e(t) {
|
1375 |
-
this[_] = z++, this._result = this._state = void 0, this._subscribers = [], E !== t && ("function" != typeof t && function () {
|
1376 |
-
throw new TypeError("You must pass a resolver function as the first argument to the promise constructor")
|
1377 |
-
}(), this instanceof e ? function (t, e) {
|
1378 |
-
try {
|
1379 |
-
e(function (e) {
|
1380 |
-
C(t, e)
|
1381 |
-
}, function (e) {
|
1382 |
-
j(t, e)
|
1383 |
-
})
|
1384 |
-
} catch (e) {
|
1385 |
-
j(t, e)
|
1386 |
-
}
|
1387 |
-
}(this, t) : function () {
|
1388 |
-
throw new TypeError("Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.")
|
1389 |
-
}())
|
1390 |
-
}
|
1391 |
-
|
1392 |
-
return e.prototype.catch = function (t) {
|
1393 |
-
return this.then(null, t)
|
1394 |
-
}, e.prototype.finally = function (e) {
|
1395 |
-
var n = this.constructor;
|
1396 |
-
return t(e) ? this.then(function (t) {
|
1397 |
-
return n.resolve(e()).then(function () {
|
1398 |
-
return t
|
1399 |
-
})
|
1400 |
-
}, function (t) {
|
1401 |
-
return n.resolve(e()).then(function () {
|
1402 |
-
throw t
|
1403 |
-
})
|
1404 |
-
}) : this.then(e, e)
|
1405 |
-
}, e
|
1406 |
-
}();
|
1407 |
-
return U.prototype.then = y, U.all = function (t) {
|
1408 |
-
return new M(this, t).promise
|
1409 |
-
}, U.race = function (t) {
|
1410 |
-
var n = this;
|
1411 |
-
return e(t) ? new n(function (e, r) {
|
1412 |
-
for (var i = t.length, o = 0; o < i; o++) n.resolve(t[o]).then(e, r)
|
1413 |
-
}) : new n(function (t, e) {
|
1414 |
-
return e(new TypeError("You must pass an array to race."))
|
1415 |
-
})
|
1416 |
-
}, U.resolve = b, U.reject = function (t) {
|
1417 |
-
var e = new this(E);
|
1418 |
-
return j(e, t), e
|
1419 |
-
}, U._setScheduler = function (t) {
|
1420 |
-
i = t
|
1421 |
-
}, U._setAsap = function (t) {
|
1422 |
-
o = t
|
1423 |
-
}, U._asap = o, U.polyfill = function () {
|
1424 |
-
var t = void 0;
|
1425 |
-
if ("undefined" != typeof global) t = global; else if ("undefined" != typeof self) t = self; else try {
|
1426 |
-
t = Function("return this")()
|
1427 |
-
} catch (t) {
|
1428 |
-
throw new Error("polyfill failed because global object is unavailable in this environment")
|
1429 |
-
}
|
1430 |
-
var e = t.Promise;
|
1431 |
-
if (e) {
|
1432 |
-
var n = null;
|
1433 |
-
try {
|
1434 |
-
n = Object.prototype.toString.call(e.resolve())
|
1435 |
-
} catch (t) {
|
1436 |
-
}
|
1437 |
-
if ("[object Promise]" === n && !e.cast) return
|
1438 |
-
}
|
1439 |
-
t.Promise = U
|
1440 |
-
}, U.Promise = U, U
|
1441 |
-
}, t.exports = r()
|
1442 |
-
}, function (t, e, n) {
|
1443 |
-
var r = n(50);
|
1444 |
-
t.exports = new r("twttr")
|
1445 |
-
}, function (t, e, n) {
|
1446 |
-
var r = n(1), i = n(0);
|
1447 |
-
|
1448 |
-
function o(t) {
|
1449 |
-
return i.isType("string", t) ? t.split(".") : i.isType("array", t) ? t : []
|
1450 |
-
}
|
1451 |
-
|
1452 |
-
function s(t, e) {
|
1453 |
-
(e = e || r)[t] = e[t] || {}, Object.defineProperty(this, "base", {value: e[t]}), Object.defineProperty(this, "name", {value: t})
|
1454 |
-
}
|
1455 |
-
|
1456 |
-
i.aug(s.prototype, {
|
1457 |
-
get: function (t) {
|
1458 |
-
return o(t).reduce(function (t, e) {
|
1459 |
-
if (i.isObject(t)) return t[e]
|
1460 |
-
}, this.base)
|
1461 |
-
}, set: function (t, e, n) {
|
1462 |
-
var r = o(t), s = function (t, e) {
|
1463 |
-
var n = o(e).slice(0, -1);
|
1464 |
-
return n.reduce(function (t, e, r) {
|
1465 |
-
if (t[e] = t[e] || {}, !i.isObject(t[e])) throw new Error(n.slice(0, r + 1).join(".") + " is already defined with a value.");
|
1466 |
-
return t[e]
|
1467 |
-
}, t)
|
1468 |
-
}(this.base, t), a = r.slice(-1);
|
1469 |
-
return n && a in s ? s[a] : s[a] = e
|
1470 |
-
}, init: function (t, e) {
|
1471 |
-
return this.set(t, e, !0)
|
1472 |
-
}, unset: function (t) {
|
1473 |
-
var e = o(t), n = this.get(e.slice(0, -1));
|
1474 |
-
n && delete n[e.slice(-1)]
|
1475 |
-
}, aug: function (t) {
|
1476 |
-
var e = this.get(t), n = i.toRealArray(arguments).slice(1);
|
1477 |
-
if (e = void 0 !== e ? e : {}, n.unshift(e), !n.every(i.isObject)) throw new Error("Cannot augment non-object.");
|
1478 |
-
return this.set(t, i.aug.apply(null, n))
|
1479 |
-
}, call: function (t) {
|
1480 |
-
var e = this.get(t), n = i.toRealArray(arguments).slice(1);
|
1481 |
-
if (!i.isType("function", e)) throw new Error("Function " + t + "does not exist.");
|
1482 |
-
return e.apply(null, n)
|
1483 |
-
}, fullPath: function (t) {
|
1484 |
-
var e = o(t);
|
1485 |
-
return e.unshift(this.name), e.join(".")
|
1486 |
-
}
|
1487 |
-
}), t.exports = s
|
1488 |
-
}, function (t, e, n) {
|
1489 |
-
var r = n(0), i = n(7), o = {
|
1490 |
-
bind: function (t, e) {
|
1491 |
-
return this._handlers = this._handlers || {}, this._handlers[t] = this._handlers[t] || [], this._handlers[t].push(e)
|
1492 |
-
}, unbind: function (t, e) {
|
1493 |
-
var n;
|
1494 |
-
this._handlers && this._handlers[t] && (e ? (n = this._handlers[t].indexOf(e)) >= 0 && this._handlers[t].splice(n, 1) : this._handlers[t] = [])
|
1495 |
-
}, trigger: function (t, e) {
|
1496 |
-
var n = this._handlers && this._handlers[t];
|
1497 |
-
(e = e || {}).type = t, n && n.forEach(function (t) {
|
1498 |
-
r.async(i(t, this, e))
|
1499 |
-
})
|
1500 |
-
}
|
1501 |
-
};
|
1502 |
-
t.exports = {
|
1503 |
-
Emitter: o, makeEmitter: function () {
|
1504 |
-
return r.aug(function () {
|
1505 |
-
}, o)
|
1506 |
-
}
|
1507 |
-
}
|
1508 |
-
}, function (t, e) {
|
1509 |
-
var n = "tfw_horizon_tweet_embed_9555";
|
1510 |
-
t.exports = {
|
1511 |
-
isHorizonTweetEnabled: function (t) {
|
1512 |
-
return !(!t || !t[n] || "hte" !== t[n].bucket)
|
1513 |
-
}
|
1514 |
-
}
|
1515 |
-
}, function (t, e, n) {
|
1516 |
-
var r = n(101), i = n(76), o = n(6), s = n(22), a = n(7), u = n(0), c = new i(function (t) {
|
1517 |
-
var e = function (t) {
|
1518 |
-
return t.reduce(function (t, e) {
|
1519 |
-
return t[e._className] = t[e._className] || [], t[e._className].push(e), t
|
1520 |
-
}, {})
|
1521 |
-
}(t.map(r.fromRawTask));
|
1522 |
-
u.forIn(e, function (t, e) {
|
1523 |
-
s.allSettled(e.map(function (t) {
|
1524 |
-
return t.initialize()
|
1525 |
-
})).then(function () {
|
1526 |
-
e.forEach(function (t) {
|
1527 |
-
o.all([t.hydrate(), t.insertIntoDom()]).then(a(t.render, t)).then(a(t.success, t), a(t.fail, t))
|
1528 |
-
})
|
1529 |
-
})
|
1530 |
-
})
|
1531 |
-
});
|
1532 |
-
t.exports = {
|
1533 |
-
addWidget: function (t) {
|
1534 |
-
return c.add(t)
|
1535 |
-
}
|
1536 |
-
}
|
1537 |
-
}, function (t, e, n) {
|
1538 |
-
var r = n(18);
|
1539 |
-
t.exports = function (t) {
|
1540 |
-
return r.write(function () {
|
1541 |
-
t && t.parentNode && t.parentNode.removeChild(t)
|
1542 |
-
})
|
1543 |
-
}
|
1544 |
-
}, function (t, e, n) {
|
1545 |
-
n(12), t.exports = {
|
1546 |
-
log: function (t, e) {
|
1547 |
-
}
|
1548 |
-
}
|
1549 |
-
}, function (t, e, n) {
|
1550 |
-
var r = n(1);
|
1551 |
-
|
1552 |
-
function i(t) {
|
1553 |
-
return (t = t || r).getSelection && t.getSelection()
|
1554 |
-
}
|
1555 |
-
|
1556 |
-
t.exports = {
|
1557 |
-
getSelection: i, getSelectedText: function (t) {
|
1558 |
-
var e = i(t);
|
1559 |
-
return e ? e.toString() : ""
|
1560 |
-
}
|
1561 |
-
}
|
1562 |
-
}, function (t, e, n) {
|
1563 |
-
var r = n(4), i = n(1), o = n(2), s = 2e4;
|
1564 |
-
t.exports = function (t) {
|
1565 |
-
var e = new o, n = r.createElement("img");
|
1566 |
-
return n.onload = n.onerror = function () {
|
1567 |
-
i.setTimeout(e.resolve, 50)
|
1568 |
-
}, n.src = t, i.setTimeout(e.reject, s), e.promise
|
1569 |
-
}
|
1570 |
-
}, function (t, e, n) {
|
1571 |
-
var r = n(111);
|
1572 |
-
t.exports = function (t) {
|
1573 |
-
t.define("createElement", r), t.define("createFragment", r), t.define("htmlToElement", r), t.define("hasSelectedText", r), t.define("addRootClass", r), t.define("removeRootClass", r), t.define("hasRootClass", r), t.define("prependStyleSheet", r), t.define("appendStyleSheet", r), t.define("prependCss", r), t.define("appendCss", r), t.define("makeVisible", r), t.define("injectWidgetEl", r), t.define("matchHeightToContent", r), t.define("matchWidthToContent", r)
|
1574 |
-
}
|
1575 |
-
}, function (t, e) {
|
1576 |
-
t.exports = function (t) {
|
1577 |
-
var e, n = !1;
|
1578 |
-
return function () {
|
1579 |
-
return n ? e : (n = !0, e = t.apply(this, arguments))
|
1580 |
-
}
|
1581 |
-
}
|
1582 |
-
}, function (t, e, n) {
|
1583 |
-
var r = n(15), i = n(120), o = n(61), s = n(16);
|
1584 |
-
t.exports = function (t, e, n) {
|
1585 |
-
return new r(i, o, s.DM_BUTTON, t, e, n)
|
1586 |
-
}
|
1587 |
-
}, function (t, e, n) {
|
1588 |
-
var r = n(62), i = n(25);
|
1589 |
-
t.exports = r.isSupported() ? r : i
|
1590 |
-
}, function (t, e, n) {
|
1591 |
-
var r = n(26), i = n(121);
|
1592 |
-
t.exports = r.build([i])
|
1593 |
-
}, function (t, e, n) {
|
1594 |
-
var r = n(15), i = n(124), o = n(37), s = n(16);
|
1595 |
-
t.exports = function (t, e, n) {
|
1596 |
-
return new r(i, o, s.FOLLOW_BUTTON, t, e, n)
|
1597 |
-
}
|
1598 |
-
}, function (t, e, n) {
|
1599 |
-
var r = n(15), i = n(132), o = n(25), s = n(16);
|
1600 |
-
t.exports = function (t, e, n) {
|
1601 |
-
return new r(i, o, s.MOMENT, t, e, n)
|
1602 |
-
}
|
1603 |
-
}, function (t, e, n) {
|
1604 |
-
var r = n(15), i = n(134), o = n(25), s = n(16);
|
1605 |
-
t.exports = function (t, e, n) {
|
1606 |
-
return new r(i, o, s.PERISCOPE, t, e, n)
|
1607 |
-
}
|
1608 |
-
}, function (t, e, n) {
|
1609 |
-
var r = n(82), i = n(136), o = n(140), s = n(142), a = n(144), u = n(146),
|
1610 |
-
c = {collection: i, event: o, likes: s, list: a, profile: u, url: l}, d = [u, s, i, a, o];
|
1611 |
-
|
1612 |
-
function l(t) {
|
1613 |
-
return r(d, function (e) {
|
1614 |
-
try {
|
1615 |
-
return new e(t)
|
1616 |
-
} catch (t) {
|
1617 |
-
}
|
1618 |
-
})
|
1619 |
-
}
|
1620 |
-
|
1621 |
-
t.exports = function (t) {
|
1622 |
-
return t ? function (t) {
|
1623 |
-
var e, n;
|
1624 |
-
return e = (t.sourceType + "").toLowerCase(), (n = c[e]) ? new n(t) : null
|
1625 |
-
}(t) || l(t) : null
|
1626 |
-
}
|
1627 |
-
}, function (t, e, n) {
|
1628 |
-
var r = n(15), i = n(148), o = n(25), s = n(16);
|
1629 |
-
t.exports = function (t, e, n) {
|
1630 |
-
return new r(i, o, s.TIMELINE, t, e, n)
|
1631 |
-
}
|
1632 |
-
}, function (t, e, n) {
|
1633 |
-
var r = n(15), i = n(4), o = n(37), s = n(150), a = n(61), u = n(151), c = n(16);
|
1634 |
-
t.exports = function (t, e, n, d) {
|
1635 |
-
var l;
|
1636 |
-
return d ? (l = i.createElement("div"), new r(s, o, c.TWEET, t, e, n, {sandboxWrapperEl: l})) : new r(u, a, c.TWEET, t, e, n)
|
1637 |
-
}
|
1638 |
-
}, function (t, e, n) {
|
1639 |
-
var r = n(15), i = n(153), o = n(37), s = n(16);
|
1640 |
-
t.exports = function (t, e, n) {
|
1641 |
-
var a = t && t.type || "share",
|
1642 |
-
u = "hashtag" == a ? s.HASHTAG_BUTTON : "mention" == a ? s.MENTION_BUTTON : s.SHARE_BUTTON;
|
1643 |
-
return new r(i, o, u, t, e, n)
|
1644 |
-
}
|
1645 |
-
}, function (t, e, n) {
|
1646 |
-
var r = n(39), i = n(38), o = n(0);
|
1647 |
-
t.exports = function (t) {
|
1648 |
-
var e = {
|
1649 |
-
widget_origin: i.rootDocumentLocation(),
|
1650 |
-
widget_frame: i.isFramed() ? i.currentDocumentLocation() : null,
|
1651 |
-
duration_ms: t.duration,
|
1652 |
-
item_ids: t.widgetIds || []
|
1653 |
-
}, n = o.aug(t.namespace, {page: "page", component: "performance"});
|
1654 |
-
r.scribe(n, e)
|
1655 |
-
}
|
1656 |
-
}, function (t, e, n) {
|
1657 |
-
var r = n(0), i = n(137), o = ["ar", "fa", "he", "ur"];
|
1658 |
-
t.exports = {
|
1659 |
-
isRtlLang: function (t) {
|
1660 |
-
return t = String(t).toLowerCase(), r.contains(o, t)
|
1661 |
-
}, matchLanguage: function (t) {
|
1662 |
-
return t = (t = (t || "").toLowerCase()).replace("_", "-"), i(t) ? t : (t = t.replace(/-.*/, ""), i(t) ? t : "en")
|
1663 |
-
}
|
1664 |
-
}
|
1665 |
-
}, function (t) {
|
1666 |
-
t.exports = {
|
1667 |
-
tweetButtonHtmlPath: "/widgets/tweet_button.d6364fae9340b0be5f13818370141fd0.{{lang}}.html",
|
1668 |
-
followButtonHtmlPath: "/widgets/follow_button.d6364fae9340b0be5f13818370141fd0.{{lang}}.html",
|
1669 |
-
hubHtmlPath: "/widgets/hub.html",
|
1670 |
-
widgetIframeHtmlPath: "/widgets/widget_iframe.d6364fae9340b0be5f13818370141fd0.html",
|
1671 |
-
resourceBaseUrl: "https://platform.twitter.com"
|
1672 |
-
}
|
1673 |
-
}, function (t, e, n) {
|
1674 |
-
var r = n(3), i = n(98), o = n(24), s = n(11), a = {
|
1675 |
-
favorite: ["favorite", "like"],
|
1676 |
-
follow: ["follow"],
|
1677 |
-
like: ["favorite", "like"],
|
1678 |
-
retweet: ["retweet"],
|
1679 |
-
tweet: ["tweet"]
|
1680 |
-
};
|
1681 |
-
|
1682 |
-
function u(t) {
|
1683 |
-
this.srcEl = [], this.element = t
|
1684 |
-
}
|
1685 |
-
|
1686 |
-
u.open = function (t, e, n) {
|
1687 |
-
var u = (r.intentType(t) || "").toLowerCase();
|
1688 |
-
r.isTwitterURL(t) && (function (t, e) {
|
1689 |
-
i.open(t, {}, e)
|
1690 |
-
}(t, n), e && o.trigger("click", {
|
1691 |
-
target: e,
|
1692 |
-
region: "intent",
|
1693 |
-
type: "click",
|
1694 |
-
data: {}
|
1695 |
-
}), e && a[u] && a[u].forEach(function (n) {
|
1696 |
-
o.trigger(n, {
|
1697 |
-
target: e, region: "intent", type: n, data: function (t, e) {
|
1698 |
-
var n = s.decodeURL(e);
|
1699 |
-
switch (t) {
|
1700 |
-
case"favorite":
|
1701 |
-
case"like":
|
1702 |
-
return {tweet_id: n.tweet_id};
|
1703 |
-
case"follow":
|
1704 |
-
return {screen_name: n.screen_name, user_id: n.user_id};
|
1705 |
-
case"retweet":
|
1706 |
-
return {source_tweet_id: n.tweet_id};
|
1707 |
-
default:
|
1708 |
-
return {}
|
1709 |
-
}
|
1710 |
-
}(u, t)
|
1711 |
-
})
|
1712 |
-
}))
|
1713 |
-
}, t.exports = u
|
1714 |
-
}, function (t, e) {
|
1715 |
-
t.exports = {
|
1716 |
-
getTimezoneOffset: function () {
|
1717 |
-
var t = (new Date).toString().match(/(GMT[+-]?\d+)/);
|
1718 |
-
return t && t[0] || "GMT"
|
1719 |
-
}
|
1720 |
-
}
|
1721 |
-
}, function (t, e, n) {
|
1722 |
-
var r = n(4), i = n(9), o = n(2), s = n(0), a = n(11), u = "cb", c = 0;
|
1723 |
-
t.exports = {
|
1724 |
-
fetch: function (t, e, n, d) {
|
1725 |
-
var l, f, h;
|
1726 |
-
return d = function (t) {
|
1727 |
-
if (t) return t.replace(/[^\w$]/g, "_")
|
1728 |
-
}(d || u + c++), l = i.fullPath(["callbacks", d]), f = r.createElement("script"), h = new o, e = s.aug({}, e, {
|
1729 |
-
callback: l,
|
1730 |
-
suppress_response_codes: !0
|
1731 |
-
}), i.set(["callbacks", d], function (t) {
|
1732 |
-
var e;
|
1733 |
-
t = (e = n(t || !1)).resp, e.success ? h.resolve(t) : h.reject(t), f.onload = f.onreadystatechange = null, f.parentNode && f.parentNode.removeChild(f), i.unset(["callbacks", d])
|
1734 |
-
}), f.onerror = function () {
|
1735 |
-
h.reject(new Error("failed to fetch " + f.src))
|
1736 |
-
}, f.src = a.url(t, e), f.async = "async", r.body.appendChild(f), h.promise
|
1737 |
-
}
|
1738 |
-
}
|
1739 |
-
}, function (t, e, n) {
|
1740 |
-
var r = n(2), i = n(103), o = n(7);
|
1741 |
-
|
1742 |
-
function s(t) {
|
1743 |
-
this._inputsQueue = [], this._task = t, this._hasFlushBeenScheduled = !1
|
1744 |
-
}
|
1745 |
-
|
1746 |
-
s.prototype.add = function (t) {
|
1747 |
-
var e = new r;
|
1748 |
-
return this._inputsQueue.push({
|
1749 |
-
input: t,
|
1750 |
-
taskDoneDeferred: e
|
1751 |
-
}), this._hasFlushBeenScheduled || (this._hasFlushBeenScheduled = !0, i(o(this._flush, this))), e.promise
|
1752 |
-
}, s.prototype._flush = function () {
|
1753 |
-
try {
|
1754 |
-
this._task.call(null, this._inputsQueue)
|
1755 |
-
} catch (t) {
|
1756 |
-
this._inputsQueue.forEach(function (e) {
|
1757 |
-
e.taskDoneDeferred.reject(t)
|
1758 |
-
})
|
1759 |
-
}
|
1760 |
-
this._inputsQueue = [], this._hasFlushBeenScheduled = !1
|
1761 |
-
}, t.exports = s
|
1762 |
-
}, function (t, e) {
|
1763 |
-
t.exports = function (t, e) {
|
1764 |
-
return t.reduce(function (t, n) {
|
1765 |
-
var r = e(n);
|
1766 |
-
return t[r] = t[r] || [], t[r].push(n), t
|
1767 |
-
}, {})
|
1768 |
-
}
|
1769 |
-
}, function (t, e, n) {
|
1770 |
-
var r = n(4), i = n(8), o = n(3);
|
1771 |
-
|
1772 |
-
function s(t, e) {
|
1773 |
-
var n, r;
|
1774 |
-
return e = e || i, /^https?:\/\//.test(t) ? t : /^\/\//.test(t) ? e.protocol + t : (n = e.host + (e.port.length ? ":" + e.port : ""), 0 !== t.indexOf("/") && ((r = e.pathname.split("/")).pop(), r.push(t), t = "/" + r.join("/")), [e.protocol, "//", n, t].join(""))
|
1775 |
-
}
|
1776 |
-
|
1777 |
-
t.exports = {
|
1778 |
-
absolutize: s, getCanonicalURL: function () {
|
1779 |
-
for (var t, e = r.getElementsByTagName("link"), n = 0; e[n]; n++) if ("canonical" == (t = e[n]).rel) return s(t.href)
|
1780 |
-
}, getScreenNameFromPage: function () {
|
1781 |
-
for (var t, e, n, i = [r.getElementsByTagName("a"), r.getElementsByTagName("link")], s = 0, a = 0, u = /\bme\b/; t = i[s]; s++) for (a = 0; e = t[a]; a++) if (u.test(e.rel) && (n = o.screenName(e.href))) return n
|
1782 |
-
}
|
1783 |
-
}
|
1784 |
-
}, function (t, e, n) {
|
1785 |
-
var r = n(8), i = /^[^#?]*\.(gov|mil)(:\d+)?([#?].*)?$/i, o = {};
|
1786 |
-
|
1787 |
-
function s(t) {
|
1788 |
-
return t in o ? o[t] : o[t] = i.test(t)
|
1789 |
-
}
|
1790 |
-
|
1791 |
-
t.exports = {
|
1792 |
-
isUrlSensitive: s, isHostPageSensitive: function () {
|
1793 |
-
return s(r.host)
|
1794 |
-
}
|
1795 |
-
}
|
1796 |
-
}, function (t, e, n) {
|
1797 |
-
var r = n(20), i = n(55), o = n(11), s = n(34), a = n(0), u = n(9).get("scribeCallback"),
|
1798 |
-
c = 2083, d = [], l = o.url(s.CLIENT_EVENT_ENDPOINT, {dnt: 0, l: ""}),
|
1799 |
-
f = encodeURIComponent(l).length;
|
1800 |
-
|
1801 |
-
function h(t, e, n, r) {
|
1802 |
-
var i = !a.isObject(t), o = !!e && !a.isObject(e);
|
1803 |
-
i || o || (u && u(arguments), p(s.formatClientEventNamespace(t), s.formatClientEventData(e, n, r), s.CLIENT_EVENT_ENDPOINT))
|
1804 |
-
}
|
1805 |
-
|
1806 |
-
function p(t, e, n) {
|
1807 |
-
var r, u;
|
1808 |
-
n && a.isObject(t) && a.isObject(e) && (i.log(t, e), r = s.flattenClientEventPayload(t, e), u = {l: s.stringify(r)}, s.noticeSeen(t) && (u.notice_seen = !0), r.dnt && (u.dnt = 1), w(o.url(n, u)))
|
1809 |
-
}
|
1810 |
-
|
1811 |
-
function m(t, e, n, r) {
|
1812 |
-
var i = !a.isObject(t), o = !!e && !a.isObject(e);
|
1813 |
-
if (!i && !o) return v(s.flattenClientEventPayload(s.formatClientEventNamespace(t), s.formatClientEventData(e, n, r)))
|
1814 |
-
}
|
1815 |
-
|
1816 |
-
function v(t) {
|
1817 |
-
return d.push(t), d
|
1818 |
-
}
|
1819 |
-
|
1820 |
-
function g(t) {
|
1821 |
-
return encodeURIComponent(t).length + 3
|
1822 |
-
}
|
1823 |
-
|
1824 |
-
function w(t) {
|
1825 |
-
return (new Image).src = t
|
1826 |
-
}
|
1827 |
-
|
1828 |
-
t.exports = {
|
1829 |
-
canFlushOneItem: function (t) {
|
1830 |
-
var e = g(s.stringify(t));
|
1831 |
-
return f + e < c
|
1832 |
-
}, _enqueueRawObject: v, scribe: p, clientEvent: h, clientEvent2: function (t, e, n) {
|
1833 |
-
return h(t, e, n, 2)
|
1834 |
-
}, enqueueClientEvent: m, flushClientEvents: function () {
|
1835 |
-
var t;
|
1836 |
-
return d.length > 1 && m({
|
1837 |
-
page: "widgets_js",
|
1838 |
-
component: "scribe_pixel",
|
1839 |
-
action: "batch_log"
|
1840 |
-
}, {}), t = d, d = [], t.reduce(function (e, n, r) {
|
1841 |
-
var i = e.length, o = i && e[i - 1];
|
1842 |
-
return r + 1 == t.length && n.event_namespace && "batch_log" == n.event_namespace.action && (n.message = ["entries:" + r, "requests:" + i].join("/")), function t(e) {
|
1843 |
-
return Array.isArray(e) || (e = [e]), e.reduce(function (e, n) {
|
1844 |
-
var r, i = s.stringify(n), o = g(i);
|
1845 |
-
return f + o < c ? e = e.concat(i) : (r = s.splitLogEntry(n)).length > 1 && (e = e.concat(t(r))), e
|
1846 |
-
}, [])
|
1847 |
-
}(n).forEach(function (t) {
|
1848 |
-
var n = g(t);
|
1849 |
-
(!o || o.urlLength + n > c) && (o = {
|
1850 |
-
urlLength: f,
|
1851 |
-
items: []
|
1852 |
-
}, e.push(o)), o.urlLength += n, o.items.push(t)
|
1853 |
-
}), e
|
1854 |
-
}, []).map(function (t) {
|
1855 |
-
var e = {l: t.items};
|
1856 |
-
return r.enabled() && (e.dnt = 1), w(o.url(s.CLIENT_EVENT_ENDPOINT, e))
|
1857 |
-
})
|
1858 |
-
}, interaction: function (t, e, n, r) {
|
1859 |
-
var i = s.extractTermsFromDOM(t.target || t.srcElement);
|
1860 |
-
i.action = r || "click", h(i, e, n)
|
1861 |
-
}
|
1862 |
-
}
|
1863 |
-
}, function (t, e, n) {
|
1864 |
-
var r = n(0), i = n(43);
|
1865 |
-
t.exports = function (t, e) {
|
1866 |
-
return i(t, e) ? [t] : r.toRealArray(t.querySelectorAll(e))
|
1867 |
-
}
|
1868 |
-
}, function (t, e) {
|
1869 |
-
t.exports = function (t, e, n) {
|
1870 |
-
for (var r, i = 0; i < t.length; i++) if (r = e.call(n, t[i], i, t)) return r
|
1871 |
-
}
|
1872 |
-
}, function (t, e) {
|
1873 |
-
t.exports = function () {
|
1874 |
-
return Math.floor(+new Date / 9e5)
|
1875 |
-
}
|
1876 |
-
}, function (t, e, n) {
|
1877 |
-
var r = n(12);
|
1878 |
-
t.exports = function (t) {
|
1879 |
-
var e, n;
|
1880 |
-
return e = t.headers && t.headers.status, !(n = t && !t.error && 200 === e) && t.headers && t.headers.message && r.publicError(t.headers.message), {
|
1881 |
-
success: n,
|
1882 |
-
resp: t
|
1883 |
-
}
|
1884 |
-
}
|
1885 |
-
}, function (t, e, n) {
|
1886 |
-
var r, i = n(29), o = 0;
|
1887 |
-
|
1888 |
-
function s() {
|
1889 |
-
r && r.length === o && (i.emitter.trigger(i.ALL_WIDGETS_AND_IMAGES_LOADED, r), r = null)
|
1890 |
-
}
|
1891 |
-
|
1892 |
-
i.emitter.bind(i.ALL_WIDGETS_RENDER_END, function (t) {
|
1893 |
-
r = t.widgets, s()
|
1894 |
-
}), t.exports = {
|
1895 |
-
reportImagesLoadForAWidget: function () {
|
1896 |
-
o++, s()
|
1897 |
-
}
|
1898 |
-
}
|
1899 |
-
}, , , , , , , , , function (t, e, n) {
|
1900 |
-
var r, i = n(2), o = n(4), s = n(96), a = n(49), u = n(9), c = n(97), d = n(24), l = n(100),
|
1901 |
-
f = n(154), h = n(162), p = n(163), m = n(29), v = n(35);
|
1902 |
-
n(164), m.emitter.trigger(m.START), u.set("widgets.init", !0), a.set("init", !0), p(), r = new i, s.exposeReadyPromise(r.promise, a.base, "_e"), a.set("widgets", f), a.set("widgets.load", l.load), a.set("events", d), h(function () {
|
1903 |
-
v.load(), r.resolve(a.base), c.attachTo(o), l.loadPage()
|
1904 |
-
})
|
1905 |
-
}, function (t, e) {
|
1906 |
-
t.exports = navigator
|
1907 |
-
}, function (t, e, n) {
|
1908 |
-
var r = n(7);
|
1909 |
-
t.exports = {
|
1910 |
-
exposeReadyPromise: function (t, e, n) {
|
1911 |
-
e.ready = r(t.then, t), n && Array.isArray(e[n]) && (e[n].forEach(r(t.then, t)), delete e[n])
|
1912 |
-
}
|
1913 |
-
}
|
1914 |
-
}, function (t, e, n) {
|
1915 |
-
var r = n(8), i = n(36), o = n(32), s = n(73), a = n(3);
|
1916 |
-
|
1917 |
-
function u(t) {
|
1918 |
-
var e, n, u;
|
1919 |
-
t.altKey || t.metaKey || t.shiftKey || (e = o.closest(function (t) {
|
1920 |
-
return "A" === t.tagName || "AREA" === t.tagName
|
1921 |
-
}, t.target)) && a.isIntentURL(e.href) && (n = (n = (n = [u = e.href, "original_referer=" + r.href].join(-1 == u.indexOf("?") ? "?" : "&")).replace(/^http[:]/, "https:")).replace(/^\/\//, "https://"), s.open(n, e), i.preventDefault(t))
|
1922 |
-
}
|
1923 |
-
|
1924 |
-
t.exports = {
|
1925 |
-
attachTo: function (t) {
|
1926 |
-
t.addEventListener("click", u, !1)
|
1927 |
-
}
|
1928 |
-
}
|
1929 |
-
}, function (t, e, n) {
|
1930 |
-
var r, i = n(1), o = n(99), s = n(36), a = n(32), u = n(21), c = n(3), d = n(23), l = n(0),
|
1931 |
-
f = "intent_", h = i.screen.width, p = i.screen.height;
|
1932 |
-
|
1933 |
-
function m(t, e) {
|
1934 |
-
function n(t) {
|
1935 |
-
return Math.round(t / 2)
|
1936 |
-
}
|
1937 |
-
|
1938 |
-
return t > e ? {coordinate: 0, size: e} : {coordinate: n(e) - n(t), size: t}
|
1939 |
-
}
|
1940 |
-
|
1941 |
-
function v(t, e, n) {
|
1942 |
-
var i, o;
|
1943 |
-
e = r.parse(e), n = n || {}, i = m(e.width, n.width || h), e.left = i.coordinate, e.width = i.size, o = m(e.height, n.height || p), e.top = o.coordinate, e.height = o.size, this.win = t, this.features = function (t) {
|
1944 |
-
var e = [];
|
1945 |
-
return l.forIn(t, function (t, n) {
|
1946 |
-
e.push(t + "=" + n)
|
1947 |
-
}), e.join(",")
|
1948 |
-
}(e)
|
1949 |
-
}
|
1950 |
-
|
1951 |
-
r = (new o).defaults({
|
1952 |
-
width: 550,
|
1953 |
-
height: 520,
|
1954 |
-
personalbar: "0",
|
1955 |
-
toolbar: "0",
|
1956 |
-
location: "1",
|
1957 |
-
scrollbars: "1",
|
1958 |
-
resizable: "1"
|
1959 |
-
}), v.prototype.open = function (t, e) {
|
1960 |
-
var n = e && "click" == e.type && a.closest("a", e.target),
|
1961 |
-
r = e && (e.altKey || e.metaKey || e.shiftKey), i = n && (u.ios() || u.android());
|
1962 |
-
if (c.isTwitterURL(t)) return r || i ? this : (this.name = f + d.generate(), this.popup = this.win.open(t, this.name, this.features), e && s.preventDefault(e), this)
|
1963 |
-
}, v.open = function (t, e, n) {
|
1964 |
-
return new v(i, e).open(t, n)
|
1965 |
-
}, t.exports = v
|
1966 |
-
}, function (t, e, n) {
|
1967 |
-
var r = n(5), i = n(0);
|
1968 |
-
|
1969 |
-
function o() {
|
1970 |
-
this.assertions = [], this._defaults = {}
|
1971 |
-
}
|
1972 |
-
|
1973 |
-
o.prototype.assert = function (t, e) {
|
1974 |
-
return this.assertions.push({fn: t, msg: e || "assertion failed"}), this
|
1975 |
-
}, o.prototype.defaults = function (t) {
|
1976 |
-
return this._defaults = t || this._defaults, this
|
1977 |
-
}, o.prototype.require = function (t) {
|
1978 |
-
var e = this;
|
1979 |
-
return (t = Array.isArray(t) ? t : i.toRealArray(arguments)).forEach(function (t) {
|
1980 |
-
e.assert(function (t) {
|
1981 |
-
return function (e) {
|
1982 |
-
return r.hasValue(e[t])
|
1983 |
-
}
|
1984 |
-
}(t), "required: " + t)
|
1985 |
-
}), this
|
1986 |
-
}, o.prototype.parse = function (t) {
|
1987 |
-
var e, n;
|
1988 |
-
if (e = i.aug({}, this._defaults, t || {}), (n = this.assertions.reduce(function (t, n) {
|
1989 |
-
return n.fn(e) || t.push(n.msg), t
|
1990 |
-
}, [])).length > 0) throw new Error(n.join("\n"));
|
1991 |
-
return e
|
1992 |
-
}, t.exports = o
|
1993 |
-
}, function (t, e, n) {
|
1994 |
-
var r = n(4), i = n(52), o = n(6), s = n(22), a = n(53), u = n(33), c = n(9), d = n(39),
|
1995 |
-
l = n(24), f = n(5), h = n(0), p = n(35), m = n(117), v = n(29);
|
1996 |
-
|
1997 |
-
function g() {
|
1998 |
-
var t = u.val("widgets:autoload") || !0;
|
1999 |
-
return !f.isFalseValue(t) && (f.isTruthValue(t) ? r.body : r.querySelectorAll(t))
|
2000 |
-
}
|
2001 |
-
|
2002 |
-
function w(t, e) {
|
2003 |
-
var n, i;
|
2004 |
-
return t = (t = t || r.body).length ? h.toRealArray(t) : [t], d.pause(), i = function (t, e) {
|
2005 |
-
return t.reduce(function (t, n) {
|
2006 |
-
return t.concat(m.reduce(function (t, r) {
|
2007 |
-
return t.concat(r(n, e))
|
2008 |
-
}, []))
|
2009 |
-
}, [])
|
2010 |
-
}(t, e), v.emitter.trigger(v.ALL_WIDGETS_RENDER_START, {widgets: i}), n = s.allResolved(i.map(function (t) {
|
2011 |
-
return a.addWidget(t)
|
2012 |
-
})).then(function (t) {
|
2013 |
-
l.trigger("loaded", {widgets: t}), t && t.length && v.emitter.trigger(v.ALL_WIDGETS_RENDER_END, {widgets: t})
|
2014 |
-
}), s.always(n, function () {
|
2015 |
-
d.resume()
|
2016 |
-
}), n
|
2017 |
-
}
|
2018 |
-
|
2019 |
-
function y(t) {
|
2020 |
-
return p.getExperiments().then(function (e) {
|
2021 |
-
return w(t, i.isHorizonTweetEnabled(e))
|
2022 |
-
})
|
2023 |
-
}
|
2024 |
-
|
2025 |
-
t.exports = {
|
2026 |
-
load: y, loadPage: function () {
|
2027 |
-
var t = g();
|
2028 |
-
return !1 === t ? o.resolve() : (c.set("widgets.loaded", !0), y(t))
|
2029 |
-
}, _getPageLoadTarget: g
|
2030 |
-
}
|
2031 |
-
}, function (t, e, n) {
|
2032 |
-
var r = n(10), i = n(18), o = n(24), s = n(54), a = n(6), u = n(22);
|
2033 |
-
|
2034 |
-
function c(t, e) {
|
2035 |
-
this._widget = null, this._sandbox = null, this._hydrated = !1, this._insertedIntoDom = !1, this._Sandbox = t.Sandbox, this._factory = t.factory, this._widgetParams = t.parameters, this._resolve = e, this._className = t.className, this._renderedClassName = t.className + "-rendered", this._errorClassName = t.className + "-error", this._srcEl = t.srcEl, this._targetGlobal = function (t) {
|
2036 |
-
return (t.srcEl || t.targetEl).ownerDocument.defaultView
|
2037 |
-
}(t), this._sandboxWrapperEl = t.options ? t.options.sandboxWrapperEl : null, this._insertionStrategy = function (e) {
|
2038 |
-
var n, r = t.srcEl, i = t.targetEl, o = t.options ? t.options.sandboxWrapperEl : null;
|
2039 |
-
o ? (o.appendChild(e), n = o) : n = e, r ? i.insertBefore(n, r) : i.appendChild(n)
|
2040 |
-
}
|
2041 |
-
}
|
2042 |
-
|
2043 |
-
c.fromRawTask = function (t) {
|
2044 |
-
return new c(t.input, t.taskDoneDeferred.resolve)
|
2045 |
-
}, c.prototype.initialize = function () {
|
2046 |
-
var t = this, e = new this._Sandbox(this._targetGlobal);
|
2047 |
-
return this._factory(this._widgetParams, e).then(function (n) {
|
2048 |
-
return t._widget = n, t._sandbox = e, n._sandboxWrapperEl = t._sandboxWrapperEl, n
|
2049 |
-
})
|
2050 |
-
}, c.prototype.insertIntoDom = function () {
|
2051 |
-
var t = this;
|
2052 |
-
return this._widget ? this._sandbox.insert(this._widget.id, {class: [this._className, this._renderedClassName].join(" ")}, null, this._insertionStrategy).then(function () {
|
2053 |
-
t._insertedIntoDom = !0
|
2054 |
-
}) : a.reject(new Error("cannot insert widget into DOM before it is initialized"))
|
2055 |
-
}, c.prototype.hydrate = function () {
|
2056 |
-
var t = this;
|
2057 |
-
return this._widget ? this._widget.hydrate().then(function () {
|
2058 |
-
t._hydrated = !0
|
2059 |
-
}) : a.reject(new Error("cannot hydrate widget before it is initialized"))
|
2060 |
-
}, c.prototype.render = function () {
|
2061 |
-
var t = this;
|
2062 |
-
|
2063 |
-
function e(e) {
|
2064 |
-
return s(t._sandbox.sandboxEl).then(function () {
|
2065 |
-
return a.reject(e)
|
2066 |
-
})
|
2067 |
-
}
|
2068 |
-
|
2069 |
-
return this._hydrated ? this._insertedIntoDom ? t._widget.render(t._sandbox).then(function () {
|
2070 |
-
return t._sandbox.onResize(function () {
|
2071 |
-
return t._widget.resize().then(function () {
|
2072 |
-
o.trigger("resize", {target: t._sandbox.sandboxEl})
|
2073 |
-
})
|
2074 |
-
}), t._widget.show()
|
2075 |
-
}).then(function () {
|
2076 |
-
return s(t._srcEl).then(function () {
|
2077 |
-
return t._sandbox.sandboxEl
|
2078 |
-
})
|
2079 |
-
}, e) : e(new Error("cannot render widget before DOM insertion")) : e(new Error("cannot render widget before hydration"))
|
2080 |
-
}, c.prototype.fail = function () {
|
2081 |
-
var t = this;
|
2082 |
-
return this._srcEl ? u.always(i.write(function () {
|
2083 |
-
r.add(t._srcEl, t._errorClassName)
|
2084 |
-
}), function () {
|
2085 |
-
o.trigger("rendered", {target: t._srcEl}), t._resolve(t._srcEl)
|
2086 |
-
}) : (t._resolve(), a.resolve())
|
2087 |
-
}, c.prototype.success = function () {
|
2088 |
-
o.trigger("rendered", {target: this._sandbox.sandboxEl}), this._resolve(this._sandbox.sandboxEl)
|
2089 |
-
}, t.exports = c
|
2090 |
-
}, function (t, e, n) {
|
2091 |
-
var r;
|
2092 |
-
!function () {
|
2093 |
-
"use strict";
|
2094 |
-
var i = window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || window.msRequestAnimationFrame || function (t) {
|
2095 |
-
return window.setTimeout(t, 1e3 / 60)
|
2096 |
-
};
|
2097 |
-
|
2098 |
-
function o() {
|
2099 |
-
this.frames = [], this.lastId = 0, this.raf = i, this.batch = {
|
2100 |
-
hash: {},
|
2101 |
-
read: [],
|
2102 |
-
write: [],
|
2103 |
-
mode: null
|
2104 |
-
}
|
2105 |
-
}
|
2106 |
-
|
2107 |
-
o.prototype.read = function (t, e) {
|
2108 |
-
var n = this.add("read", t, e), r = n.id;
|
2109 |
-
return this.batch.read.push(n.id), "reading" === this.batch.mode || this.batch.scheduled ? r : (this.scheduleBatch(), r)
|
2110 |
-
}, o.prototype.write = function (t, e) {
|
2111 |
-
var n = this.add("write", t, e), r = this.batch.mode, i = n.id;
|
2112 |
-
return this.batch.write.push(n.id), "writing" === r || "reading" === r || this.batch.scheduled ? i : (this.scheduleBatch(), i)
|
2113 |
-
}, o.prototype.defer = function (t, e, n) {
|
2114 |
-
"function" == typeof t && (n = e, e = t, t = 1);
|
2115 |
-
var r = this, i = t - 1;
|
2116 |
-
return this.schedule(i, function () {
|
2117 |
-
r.run({fn: e, ctx: n})
|
2118 |
-
})
|
2119 |
-
}, o.prototype.clear = function (t) {
|
2120 |
-
if ("function" == typeof t) return this.clearFrame(t);
|
2121 |
-
t = Number(t);
|
2122 |
-
var e = this.batch.hash[t];
|
2123 |
-
if (e) {
|
2124 |
-
var n = this.batch[e.type], r = n.indexOf(t);
|
2125 |
-
delete this.batch.hash[t], ~r && n.splice(r, 1)
|
2126 |
-
}
|
2127 |
-
}, o.prototype.clearFrame = function (t) {
|
2128 |
-
var e = this.frames.indexOf(t);
|
2129 |
-
~e && this.frames.splice(e, 1)
|
2130 |
-
}, o.prototype.scheduleBatch = function () {
|
2131 |
-
var t = this;
|
2132 |
-
this.schedule(0, function () {
|
2133 |
-
t.batch.scheduled = !1, t.runBatch()
|
2134 |
-
}), this.batch.scheduled = !0
|
2135 |
-
}, o.prototype.uniqueId = function () {
|
2136 |
-
return ++this.lastId
|
2137 |
-
}, o.prototype.flush = function (t) {
|
2138 |
-
for (var e; e = t.shift();) this.run(this.batch.hash[e])
|
2139 |
-
}, o.prototype.runBatch = function () {
|
2140 |
-
try {
|
2141 |
-
this.batch.mode = "reading", this.flush(this.batch.read), this.batch.mode = "writing", this.flush(this.batch.write), this.batch.mode = null
|
2142 |
-
} catch (t) {
|
2143 |
-
throw this.runBatch(), t
|
2144 |
-
}
|
2145 |
-
}, o.prototype.add = function (t, e, n) {
|
2146 |
-
var r = this.uniqueId();
|
2147 |
-
return this.batch.hash[r] = {id: r, fn: e, ctx: n, type: t}
|
2148 |
-
}, o.prototype.run = function (t) {
|
2149 |
-
var e = t.ctx || this, n = t.fn;
|
2150 |
-
if (delete this.batch.hash[t.id], !this.onError) return n.call(e);
|
2151 |
-
try {
|
2152 |
-
n.call(e)
|
2153 |
-
} catch (t) {
|
2154 |
-
this.onError(t)
|
2155 |
-
}
|
2156 |
-
}, o.prototype.loop = function () {
|
2157 |
-
var t, e = this, n = this.raf, r = !1;
|
2158 |
-
|
2159 |
-
function i() {
|
2160 |
-
var t = e.frames.shift();
|
2161 |
-
e.frames.length ? n(i) : e.looping = !1, t && t()
|
2162 |
-
}
|
2163 |
-
|
2164 |
-
this.looping || (t = setTimeout(function () {
|
2165 |
-
r = !0, i()
|
2166 |
-
}, 500), n(function () {
|
2167 |
-
r || (clearTimeout(t), i())
|
2168 |
-
}), this.looping = !0)
|
2169 |
-
}, o.prototype.schedule = function (t, e) {
|
2170 |
-
return this.frames[t] ? this.schedule(t + 1, e) : (this.loop(), this.frames[t] = e)
|
2171 |
-
};
|
2172 |
-
var s = new o;
|
2173 |
-
void 0 !== t && t.exports ? t.exports = s : void 0 === (r = function () {
|
2174 |
-
return s
|
2175 |
-
}.call(e, n, e, t)) || (t.exports = r)
|
2176 |
-
}()
|
2177 |
-
}, function (t, e, n) {
|
2178 |
-
var r = n(48).Promise;
|
2179 |
-
t.exports = r._asap
|
2180 |
-
}, function (t, e, n) {
|
2181 |
-
var r, i, o, s = n(4), a = n(1), u = n(30), c = n(20), d = n(2), l = n(6), f = n(55), h = n(34),
|
2182 |
-
p = n(0), m = n(25), v = n(9).get("scribeCallback"),
|
2183 |
-
g = Math.floor(1e3 * Math.random()) + "_", w = "rufous-frame-" + g + "-",
|
2184 |
-
y = "rufous-form-" + g + "-", b = 0, _ = !1, E = new d;
|
2185 |
-
|
2186 |
-
function x() {
|
2187 |
-
var t = o.createElement("form"), e = o.createElement("input"), n = o.createElement("input");
|
2188 |
-
return b++, t.action = h.CLIENT_EVENT_ENDPOINT, t.method = "POST", t.target = w + b, t.id = y + b, e.type = "hidden", e.name = "dnt", e.value = c.enabled(), n.type = "hidden", n.name = "tfw_redirect", n.value = h.RUFOUS_REDIRECT, t.appendChild(e), t.appendChild(n), t
|
2189 |
-
}
|
2190 |
-
|
2191 |
-
function T() {
|
2192 |
-
var t = w + b;
|
2193 |
-
return u({id: t, name: t, width: 0, height: 0, border: 0}, {display: "none"}, o.doc)
|
2194 |
-
}
|
2195 |
-
|
2196 |
-
t.exports = {
|
2197 |
-
clientEvent: function (t, e, n, i) {
|
2198 |
-
(function (t, e) {
|
2199 |
-
var n = !p.isObject(t), r = !!e && !p.isObject(e), i = n || r;
|
2200 |
-
return i
|
2201 |
-
})(t, e) || (v && v(arguments), E.promise.then(function () {
|
2202 |
-
!function (t, e) {
|
2203 |
-
var n, i, s;
|
2204 |
-
p.isObject(t) && p.isObject(e) && (f.log(t, e), s = h.flattenClientEventPayload(t, e), (n = r.firstChild).value = +(+n.value || s.dnt || 0), (i = o.createElement("input")).type = "hidden", i.name = "l", i.value = h.stringify(s), r.appendChild(i))
|
2205 |
-
}(h.formatClientEventNamespace(t), h.formatClientEventData(e, n, i))
|
2206 |
-
}))
|
2207 |
-
}, flush: function () {
|
2208 |
-
return E.promise.then(function () {
|
2209 |
-
var t;
|
2210 |
-
return r.children.length <= 2 ? l.reject() : (t = l.all([o.doc.body.appendChild(r), o.doc.body.appendChild(i)]).then(function (t) {
|
2211 |
-
var e = t[0], n = t[1];
|
2212 |
-
return n.addEventListener("load", function () {
|
2213 |
-
!function (t, e) {
|
2214 |
-
return function () {
|
2215 |
-
var n = t.parentNode;
|
2216 |
-
n && (n.removeChild(t), n.removeChild(e))
|
2217 |
-
}
|
2218 |
-
}(e, n)()
|
2219 |
-
}), e.submit(), t
|
2220 |
-
}), r = x(), i = T(), t)
|
2221 |
-
})
|
2222 |
-
}, init: function () {
|
2223 |
-
return _ ? E.promise : ((o = new m(a)).insert("rufous-sandbox", null, {display: "none"}, function (t) {
|
2224 |
-
s.body.appendChild(t)
|
2225 |
-
}).then(function () {
|
2226 |
-
o.setTitle("Twitter analytics iframe"), r = x(), i = T(), E.resolve([r, i])
|
2227 |
-
}), _ = !0, E.promise)
|
2228 |
-
}
|
2229 |
-
}
|
2230 |
-
}, function (t, e, n) {
|
2231 |
-
var r = n(0);
|
2232 |
-
t.exports = function t(e) {
|
2233 |
-
var n = [];
|
2234 |
-
return e.forEach(function (e) {
|
2235 |
-
var i = r.isType("array", e) ? t(e) : [e];
|
2236 |
-
n = n.concat(i)
|
2237 |
-
}), n
|
2238 |
-
}
|
2239 |
-
}, function (t, e) {
|
2240 |
-
t.exports = function (t) {
|
2241 |
-
return t.filter(function (e, n) {
|
2242 |
-
return t.indexOf(e) === n
|
2243 |
-
})
|
2244 |
-
}
|
2245 |
-
}, function (t, e, n) {
|
2246 |
-
var r = n(41), i = n(0), o = n(109);
|
2247 |
-
|
2248 |
-
function s() {
|
2249 |
-
r.apply(this, arguments)
|
2250 |
-
}
|
2251 |
-
|
2252 |
-
s.prototype = Object.create(r.prototype), i.aug(s.prototype, {factory: o}), t.exports = s
|
2253 |
-
}, function (t, e, n) {
|
2254 |
-
var r = n(22), i = n(0), o = n(7);
|
2255 |
-
t.exports = {
|
2256 |
-
before: function (t, e) {
|
2257 |
-
return function () {
|
2258 |
-
var n, i = this, o = arguments;
|
2259 |
-
return n = e.apply(this, arguments), r.isPromise(n) ? n.then(function () {
|
2260 |
-
return t.apply(i, o)
|
2261 |
-
}) : t.apply(this, arguments)
|
2262 |
-
}
|
2263 |
-
}, after: function (t, e) {
|
2264 |
-
return function () {
|
2265 |
-
var n, i = this, o = arguments;
|
2266 |
-
|
2267 |
-
function s(t, e) {
|
2268 |
-
return r.isPromise(e) ? e.then(function () {
|
2269 |
-
return t
|
2270 |
-
}) : t
|
2271 |
-
}
|
2272 |
-
|
2273 |
-
return n = t.apply(this, arguments), r.isPromise(n) ? n.then(function (t) {
|
2274 |
-
return s(t, e.apply(i, o))
|
2275 |
-
}) : s(n, e.apply(this, arguments))
|
2276 |
-
}
|
2277 |
-
}, around: function (t, e) {
|
2278 |
-
return function () {
|
2279 |
-
var n = i.toRealArray(arguments);
|
2280 |
-
return n.unshift(o(t, this)), e.apply(this, n)
|
2281 |
-
}
|
2282 |
-
}
|
2283 |
-
}
|
2284 |
-
}, function (t, e, n) {
|
2285 |
-
var r = n(10), i = n(18), o = n(42), s = n(6), a = n(0);
|
2286 |
-
t.exports = function () {
|
2287 |
-
var t = o();
|
2288 |
-
|
2289 |
-
function e(e) {
|
2290 |
-
t.apply(this, arguments), Object.defineProperty(this, "targetGlobal", {value: e})
|
2291 |
-
}
|
2292 |
-
|
2293 |
-
return e.prototype = Object.create(t.prototype), a.aug(e.prototype, {
|
2294 |
-
id: null,
|
2295 |
-
initialized: !1,
|
2296 |
-
width: 0,
|
2297 |
-
height: 0,
|
2298 |
-
sandboxEl: null,
|
2299 |
-
insert: function () {
|
2300 |
-
return s.reject()
|
2301 |
-
},
|
2302 |
-
onResize: function () {
|
2303 |
-
},
|
2304 |
-
addClass: function (t) {
|
2305 |
-
var e = this.sandboxEl;
|
2306 |
-
return t = Array.isArray(t) ? t : [t], i.write(function () {
|
2307 |
-
t.forEach(function (t) {
|
2308 |
-
r.add(e, t)
|
2309 |
-
})
|
2310 |
-
})
|
2311 |
-
},
|
2312 |
-
removeClass: function (t) {
|
2313 |
-
var e = this.sandboxEl;
|
2314 |
-
return t = Array.isArray(t) ? t : [t], i.write(function () {
|
2315 |
-
t.forEach(function (t) {
|
2316 |
-
r.remove(e, t)
|
2317 |
-
})
|
2318 |
-
})
|
2319 |
-
},
|
2320 |
-
styleSelf: function (t) {
|
2321 |
-
var e = this;
|
2322 |
-
return i.write(function () {
|
2323 |
-
a.forIn(t, function (t, n) {
|
2324 |
-
e.sandboxEl.style[t] = n
|
2325 |
-
})
|
2326 |
-
})
|
2327 |
-
}
|
2328 |
-
}), e
|
2329 |
-
}
|
2330 |
-
}, function (t, e, n) {
|
2331 |
-
var r = n(4), i = n(10), o = n(18), s = n(56), a = n(26), u = n(57), c = n(45), d = n(46),
|
2332 |
-
l = n(30), f = n(12), h = n(47), p = n(2), m = n(6), v = n(0), g = n(9), w = n(23),
|
2333 |
-
y = n(7), b = {allowfullscreen: "true"}, _ = {
|
2334 |
-
position: "absolute",
|
2335 |
-
visibility: "hidden",
|
2336 |
-
display: "block",
|
2337 |
-
width: "0px",
|
2338 |
-
height: "0px",
|
2339 |
-
padding: "0",
|
2340 |
-
border: "none"
|
2341 |
-
}, E = {position: "static", visibility: "visible"}, x = "SandboxRoot",
|
2342 |
-
T = ".SandboxRoot { display: none; }", A = 50;
|
2343 |
-
|
2344 |
-
function S(t, e, n, r) {
|
2345 |
-
return e = v.aug({id: t}, b, e), n = v.aug({}, _, n), l(e, n, r)
|
2346 |
-
}
|
2347 |
-
|
2348 |
-
function R(t, e, n, i, s) {
|
2349 |
-
var a = new p, u = w.generate(), c = S(t, e, n, s);
|
2350 |
-
return g.set(["sandbox", u], function () {
|
2351 |
-
var t = c.contentWindow.document;
|
2352 |
-
o.write(function () {
|
2353 |
-
t.write("<!DOCTYPE html><html><head></head><body></body></html>")
|
2354 |
-
}).then(function () {
|
2355 |
-
t.close(), a.resolve(c)
|
2356 |
-
})
|
2357 |
-
}), c.src = ["javascript:", 'document.write("");', "try { window.parent.document; }", 'catch (e) { document.domain="' + r.domain + '"; }', "window.parent." + g.fullPath(["sandbox", u]) + "();"].join(""), c.addEventListener("error", a.reject, !1), o.write(function () {
|
2358 |
-
i.parentNode.replaceChild(c, i)
|
2359 |
-
}), a.promise
|
2360 |
-
}
|
2361 |
-
|
2362 |
-
t.exports = a.couple(n(58), function (t) {
|
2363 |
-
t.overrideProperty("id", {
|
2364 |
-
get: function () {
|
2365 |
-
return this.sandboxEl && this.sandboxEl.id
|
2366 |
-
}
|
2367 |
-
}), t.overrideProperty("initialized", {
|
2368 |
-
get: function () {
|
2369 |
-
return !!this.win
|
2370 |
-
}
|
2371 |
-
}), t.overrideProperty("width", {
|
2372 |
-
get: function () {
|
2373 |
-
return this._width
|
2374 |
-
}
|
2375 |
-
}), t.overrideProperty("height", {
|
2376 |
-
get: function () {
|
2377 |
-
return this._height
|
2378 |
-
}
|
2379 |
-
}), t.overrideProperty("sandboxEl", {
|
2380 |
-
get: function () {
|
2381 |
-
return this.iframeEl
|
2382 |
-
}
|
2383 |
-
}), t.defineProperty("iframeEl", {
|
2384 |
-
get: function () {
|
2385 |
-
return this._iframe
|
2386 |
-
}
|
2387 |
-
}), t.defineProperty("rootEl", {
|
2388 |
-
get: function () {
|
2389 |
-
return this.doc && this.doc.documentElement
|
2390 |
-
}
|
2391 |
-
}), t.defineProperty("widgetEl", {
|
2392 |
-
get: function () {
|
2393 |
-
return this.doc && this.doc.body.firstElementChild
|
2394 |
-
}
|
2395 |
-
}), t.defineProperty("win", {
|
2396 |
-
get: function () {
|
2397 |
-
return this.iframeEl && this.iframeEl.contentWindow
|
2398 |
-
}
|
2399 |
-
}), t.defineProperty("doc", {
|
2400 |
-
get: function () {
|
2401 |
-
return this.win && this.win.document
|
2402 |
-
}
|
2403 |
-
}), t.define("_updateCachedDimensions", function () {
|
2404 |
-
var t = this;
|
2405 |
-
return o.read(function () {
|
2406 |
-
var e, n = h(t.sandboxEl);
|
2407 |
-
"visible" == t.sandboxEl.style.visibility ? t._width = n.width : (e = h(t.sandboxEl.parentElement).width, t._width = Math.min(n.width, e)), t._height = n.height
|
2408 |
-
})
|
2409 |
-
}), t.define("_setTargetToBlank", function () {
|
2410 |
-
var t = this.createElement("base");
|
2411 |
-
t.target = "_blank", this.doc.head.appendChild(t)
|
2412 |
-
}), t.define("_didResize", function () {
|
2413 |
-
var t = this, e = this._resizeHandlers.slice(0);
|
2414 |
-
return this._updateCachedDimensions().then(function () {
|
2415 |
-
e.forEach(function (e) {
|
2416 |
-
e(t)
|
2417 |
-
})
|
2418 |
-
})
|
2419 |
-
}), t.define("setTitle", function (t) {
|
2420 |
-
this.iframeEl.title = t
|
2421 |
-
}), t.override("createElement", function (t) {
|
2422 |
-
return this.doc.createElement(t)
|
2423 |
-
}), t.override("createFragment", function () {
|
2424 |
-
return this.doc.createDocumentFragment()
|
2425 |
-
}), t.override("htmlToElement", function (t) {
|
2426 |
-
var e;
|
2427 |
-
return (e = this.createElement("div")).innerHTML = t, e.firstElementChild
|
2428 |
-
}), t.override("hasSelectedText", function () {
|
2429 |
-
return !!s.getSelectedText(this.win)
|
2430 |
-
}), t.override("addRootClass", function (t) {
|
2431 |
-
var e = this.rootEl;
|
2432 |
-
return t = Array.isArray(t) ? t : [t], this.initialized ? o.write(function () {
|
2433 |
-
t.forEach(function (t) {
|
2434 |
-
i.add(e, t)
|
2435 |
-
})
|
2436 |
-
}) : m.reject(new Error("sandbox not initialized"))
|
2437 |
-
}), t.override("removeRootClass", function (t) {
|
2438 |
-
var e = this.rootEl;
|
2439 |
-
return t = Array.isArray(t) ? t : [t], this.initialized ? o.write(function () {
|
2440 |
-
t.forEach(function (t) {
|
2441 |
-
i.remove(e, t)
|
2442 |
-
})
|
2443 |
-
}) : m.reject(new Error("sandbox not initialized"))
|
2444 |
-
}), t.override("hasRootClass", function (t) {
|
2445 |
-
return i.present(this.rootEl, t)
|
2446 |
-
}), t.define("addStyleSheet", function (t, e) {
|
2447 |
-
var n, r = new p;
|
2448 |
-
return this.initialized ? ((n = this.createElement("link")).type = "text/css", n.rel = "stylesheet", n.href = t, n.addEventListener("load", r.resolve, !1), n.addEventListener("error", r.reject, !1), o.write(y(e, null, n)).then(function () {
|
2449 |
-
return u(t).then(r.resolve, r.reject), r.promise
|
2450 |
-
})) : m.reject(new Error("sandbox not initialized"))
|
2451 |
-
}), t.override("prependStyleSheet", function (t) {
|
2452 |
-
var e = this.doc;
|
2453 |
-
return this.addStyleSheet(t, function (t) {
|
2454 |
-
var n = e.head.firstElementChild;
|
2455 |
-
return n ? e.head.insertBefore(t, n) : e.head.appendChild(t)
|
2456 |
-
})
|
2457 |
-
}), t.override("appendStyleSheet", function (t) {
|
2458 |
-
var e = this.doc;
|
2459 |
-
return this.addStyleSheet(t, function (t) {
|
2460 |
-
return e.head.appendChild(t)
|
2461 |
-
})
|
2462 |
-
}), t.define("addCss", function (t, e) {
|
2463 |
-
var n;
|
2464 |
-
return c.inlineStyle() ? ((n = this.createElement("style")).type = "text/css", n.appendChild(this.doc.createTextNode(t)), o.write(y(e, null, n))) : (f.devError("CSP enabled; cannot embed inline styles"), m.resolve())
|
2465 |
-
}), t.override("prependCss", function (t) {
|
2466 |
-
var e = this.doc;
|
2467 |
-
return this.addCss(t, function (t) {
|
2468 |
-
var n = e.head.firstElementChild;
|
2469 |
-
return n ? e.head.insertBefore(t, n) : e.head.appendChild(t)
|
2470 |
-
})
|
2471 |
-
}), t.override("appendCss", function (t) {
|
2472 |
-
var e = this.doc;
|
2473 |
-
return this.addCss(t, function (t) {
|
2474 |
-
return e.head.appendChild(t)
|
2475 |
-
})
|
2476 |
-
}), t.override("makeVisible", function () {
|
2477 |
-
var t = this;
|
2478 |
-
return this.styleSelf(E).then(function () {
|
2479 |
-
t._updateCachedDimensions()
|
2480 |
-
})
|
2481 |
-
}), t.override("injectWidgetEl", function (t) {
|
2482 |
-
var e = this;
|
2483 |
-
return this.initialized ? this.widgetEl ? m.reject(new Error("widget already injected")) : o.write(function () {
|
2484 |
-
e.doc.body.appendChild(t)
|
2485 |
-
}) : m.reject(new Error("sandbox not initialized"))
|
2486 |
-
}), t.override("matchHeightToContent", function () {
|
2487 |
-
var t, e = this;
|
2488 |
-
return o.read(function () {
|
2489 |
-
t = e.widgetEl ? h(e.widgetEl).height : 0
|
2490 |
-
}), o.write(function () {
|
2491 |
-
e.sandboxEl.style.height = t + "px"
|
2492 |
-
}).then(function () {
|
2493 |
-
return e._updateCachedDimensions()
|
2494 |
-
})
|
2495 |
-
}), t.override("matchWidthToContent", function () {
|
2496 |
-
var t, e = this;
|
2497 |
-
return o.read(function () {
|
2498 |
-
t = e.widgetEl ? h(e.widgetEl).width : 0
|
2499 |
-
}), o.write(function () {
|
2500 |
-
e.sandboxEl.style.width = t + "px"
|
2501 |
-
}).then(function () {
|
2502 |
-
return e._updateCachedDimensions()
|
2503 |
-
})
|
2504 |
-
}), t.after("initialize", function () {
|
2505 |
-
this._iframe = null, this._width = this._height = 0, this._resizeHandlers = []
|
2506 |
-
}), t.override("insert", function (t, e, n, r) {
|
2507 |
-
var i = this, s = new p, a = this.targetGlobal.document, u = S(t, e, n, a);
|
2508 |
-
return o.write(y(r, null, u)), u.addEventListener("load", function () {
|
2509 |
-
(function (t) {
|
2510 |
-
try {
|
2511 |
-
t.contentWindow.document
|
2512 |
-
} catch (t) {
|
2513 |
-
return m.reject(t)
|
2514 |
-
}
|
2515 |
-
return m.resolve(t)
|
2516 |
-
})(u).then(null, y(R, null, t, e, n, u, a)).then(s.resolve, s.reject)
|
2517 |
-
}, !1), u.addEventListener("error", s.reject, !1), s.promise.then(function (t) {
|
2518 |
-
var e = d(i._didResize, A, i);
|
2519 |
-
return i._iframe = t, i.win.addEventListener("resize", e, !1), m.all([i._setTargetToBlank(), i.addRootClass(x), i.prependCss(T)])
|
2520 |
-
})
|
2521 |
-
}), t.override("onResize", function (t) {
|
2522 |
-
this._resizeHandlers.push(t)
|
2523 |
-
}), t.after("styleSelf", function () {
|
2524 |
-
return this._updateCachedDimensions()
|
2525 |
-
})
|
2526 |
-
})
|
2527 |
-
}, function (t, e) {
|
2528 |
-
t.exports = function () {
|
2529 |
-
throw new Error("unimplemented method")
|
2530 |
-
}
|
2531 |
-
}, function (t, e, n) {
|
2532 |
-
var r = n(2), i = n(7), o = 100, s = 3e3;
|
2533 |
-
|
2534 |
-
function a(t, e) {
|
2535 |
-
this._inputsQueue = [], this._task = t, this._isPaused = !1, this._flushDelay = e && e.flushDelay || o, this._pauseLength = e && e.pauseLength || s, this._flushTimeout = void 0
|
2536 |
-
}
|
2537 |
-
|
2538 |
-
a.prototype.add = function (t) {
|
2539 |
-
var e = new r;
|
2540 |
-
return this._inputsQueue.push({
|
2541 |
-
input: t,
|
2542 |
-
taskDoneDeferred: e
|
2543 |
-
}), this._scheduleFlush(), e.promise
|
2544 |
-
}, a.prototype._scheduleFlush = function () {
|
2545 |
-
this._isPaused || (clearTimeout(this._flushTimeout), this._flushTimeout = setTimeout(i(this._flush, this), this._flushDelay))
|
2546 |
-
}, a.prototype._flush = function () {
|
2547 |
-
try {
|
2548 |
-
this._task.call(null, this._inputsQueue)
|
2549 |
-
} catch (t) {
|
2550 |
-
this._inputsQueue.forEach(function (e) {
|
2551 |
-
e.taskDoneDeferred.reject(t)
|
2552 |
-
})
|
2553 |
-
}
|
2554 |
-
this._inputsQueue = [], this._flushTimeout = void 0
|
2555 |
-
}, a.prototype.pause = function (t) {
|
2556 |
-
clearTimeout(this._flushTimeout), this._isPaused = !0, !t && this._pauseLength && setTimeout(i(this.resume, this), this._pauseLength)
|
2557 |
-
}, a.prototype.resume = function () {
|
2558 |
-
this._isPaused = !1, this._scheduleFlush()
|
2559 |
-
}, t.exports = a
|
2560 |
-
}, function (t, e, n) {
|
2561 |
-
var r, i = n(72), o = n(30), s = n(2), a = n(4), u = n(19), c = n(21), d = n(31), l = n(8),
|
2562 |
-
f = n(12), h = n(114), p = n(59), m = n(9), v = n(11), g = n(115), w = n(3), y = n(0),
|
2563 |
-
b = n(1), _ = p(function () {
|
2564 |
-
return new s
|
2565 |
-
});
|
2566 |
-
|
2567 |
-
function E(t) {
|
2568 |
-
var e = t || {should_obtain_cookie_consent: !0, experiments: {}};
|
2569 |
-
return new g(e.should_obtain_cookie_consent, e.experiments)
|
2570 |
-
}
|
2571 |
-
|
2572 |
-
t.exports = {
|
2573 |
-
load: function () {
|
2574 |
-
var t, e, n, s;
|
2575 |
-
if (c.ie9() || c.ie10() || "http:" !== l.protocol && "https:" !== l.protocol) return f.devError("Using default settings due to unsupported browser or protocol."), r = E(), void _().resolve();
|
2576 |
-
t = {origin: l.origin}, u.settings().indexOf("localhost") > -1 && (t.localSettings = !0), e = v.url(i.resourceBaseUrl + i.widgetIframeHtmlPath, t), n = function (t) {
|
2577 |
-
var n;
|
2578 |
-
if (e.substr(0, t.origin.length) === t.origin && w.isTwitterURL(t.origin)) try {
|
2579 |
-
(n = "string" == typeof t.data ? d.parse(t.data) : t.data).namespace === h.settings && (r = E(n.settings), _().resolve())
|
2580 |
-
} catch (t) {
|
2581 |
-
f.devError(t)
|
2582 |
-
}
|
2583 |
-
}, b.addEventListener("message", n), s = o({
|
2584 |
-
src: e,
|
2585 |
-
title: "Twitter settings iframe"
|
2586 |
-
}, {display: "none"}), a.body.appendChild(s)
|
2587 |
-
}, settingsLoaded: function () {
|
2588 |
-
var t, e, n;
|
2589 |
-
return t = new s, e = m.get("experimentOverride"), _().promise.then(function () {
|
2590 |
-
e && e.name && e.assignment && ((n = {})[e.name] = {bucket: e.assignment}, r.experiments = y.aug(r.experiments, n)), t.resolve(r)
|
2591 |
-
}).catch(function (e) {
|
2592 |
-
t.reject(e)
|
2593 |
-
}), t.promise
|
2594 |
-
}
|
2595 |
-
}
|
2596 |
-
}, function (t, e) {
|
2597 |
-
t.exports = {settings: "twttr.settings"}
|
2598 |
-
}, function (t, e) {
|
2599 |
-
t.exports = function (t, e) {
|
2600 |
-
this.shouldObtainCookieConsent = t, this.experiments = e || {}
|
2601 |
-
}
|
2602 |
-
}, function (t, e) {
|
2603 |
-
t.exports = function (t) {
|
2604 |
-
return t.split("").map(function (t) {
|
2605 |
-
return t.charCodeAt(0).toString(16)
|
2606 |
-
}).join("")
|
2607 |
-
}
|
2608 |
-
}, function (t, e, n) {
|
2609 |
-
t.exports = [n(118), n(123), n(131), n(133), n(135), n(149), n(152)]
|
2610 |
-
}, function (t, e, n) {
|
2611 |
-
var r = n(11), i = n(5), o = n(0), s = n(13), a = n(14)(), u = n(60), c = "a.twitter-dm-button";
|
2612 |
-
t.exports = function (t) {
|
2613 |
-
return a(t, c).map(function (t) {
|
2614 |
-
return u(function (t) {
|
2615 |
-
var e = t.getAttribute("data-show-screen-name"), n = s(t),
|
2616 |
-
a = t.getAttribute("href"), u = t.getAttribute("data-screen-name"),
|
2617 |
-
c = e ? i.asBoolean(e) : null, d = t.getAttribute("data-size"),
|
2618 |
-
l = r.decodeURL(a), f = l.recipient_id,
|
2619 |
-
h = t.getAttribute("data-text") || l.text,
|
2620 |
-
p = t.getAttribute("data-welcome-message-id") || l.welcomeMessageId;
|
2621 |
-
return o.aug(n, {
|
2622 |
-
screenName: u,
|
2623 |
-
showScreenName: c,
|
2624 |
-
size: d,
|
2625 |
-
text: h,
|
2626 |
-
userId: f,
|
2627 |
-
welcomeMessageId: p
|
2628 |
-
})
|
2629 |
-
}(t), t.parentNode, t)
|
2630 |
-
})
|
2631 |
-
}
|
2632 |
-
}, function (t, e, n) {
|
2633 |
-
var r = n(0);
|
2634 |
-
t.exports = function t(e) {
|
2635 |
-
var n;
|
2636 |
-
if (e) return n = e.lang || e.getAttribute("data-lang"), r.isType("string", n) ? n : t(e.parentElement)
|
2637 |
-
}
|
2638 |
-
}, function (t, e, n) {
|
2639 |
-
var r = n(2);
|
2640 |
-
t.exports = function (t, e) {
|
2641 |
-
var i = new r;
|
2642 |
-
return n.e(2).then(function (r) {
|
2643 |
-
var o;
|
2644 |
-
try {
|
2645 |
-
o = n(86), i.resolve(new o(t, e))
|
2646 |
-
} catch (t) {
|
2647 |
-
i.reject(t)
|
2648 |
-
}
|
2649 |
-
}.bind(null, n)).catch(function (t) {
|
2650 |
-
i.reject(t)
|
2651 |
-
}), i.promise
|
2652 |
-
}
|
2653 |
-
}, function (t, e, n) {
|
2654 |
-
var r = n(122), i = n(1), o = n(10), s = n(36), a = n(18), u = n(56), c = n(26), d = n(57),
|
2655 |
-
l = n(45), f = n(47), h = n(7), p = n(46), m = n(6), v = n(0), g = 50, w = {
|
2656 |
-
position: "absolute",
|
2657 |
-
visibility: "hidden",
|
2658 |
-
display: "block",
|
2659 |
-
transform: "rotate(0deg)"
|
2660 |
-
}, y = {position: "static", visibility: "visible"}, b = "twitter-widget", _ = "open",
|
2661 |
-
E = "SandboxRoot", x = ".SandboxRoot { display: none; max-height: 10000px; }";
|
2662 |
-
t.exports = c.couple(n(58), function (t) {
|
2663 |
-
t.defineStatic("isSupported", function () {
|
2664 |
-
return !!i.HTMLElement.prototype.attachShadow && l.inlineStyle()
|
2665 |
-
}), t.overrideProperty("id", {
|
2666 |
-
get: function () {
|
2667 |
-
return this.sandboxEl && this.sandboxEl.id
|
2668 |
-
}
|
2669 |
-
}), t.overrideProperty("initialized", {
|
2670 |
-
get: function () {
|
2671 |
-
return !!this._shadowHost
|
2672 |
-
}
|
2673 |
-
}), t.overrideProperty("width", {
|
2674 |
-
get: function () {
|
2675 |
-
return this._width
|
2676 |
-
}
|
2677 |
-
}), t.overrideProperty("height", {
|
2678 |
-
get: function () {
|
2679 |
-
return this._height
|
2680 |
-
}
|
2681 |
-
}), t.overrideProperty("sandboxEl", {
|
2682 |
-
get: function () {
|
2683 |
-
return this._shadowHost
|
2684 |
-
}
|
2685 |
-
}), t.define("_updateCachedDimensions", function () {
|
2686 |
-
var t = this;
|
2687 |
-
return a.read(function () {
|
2688 |
-
var e, n = f(t.sandboxEl);
|
2689 |
-
"visible" == t.sandboxEl.style.visibility ? t._width = n.width : (e = f(t.sandboxEl.parentElement).width, t._width = Math.min(n.width, e)), t._height = n.height
|
2690 |
-
})
|
2691 |
-
}), t.define("_didResize", function () {
|
2692 |
-
var t = this, e = this._resizeHandlers.slice(0);
|
2693 |
-
return this._updateCachedDimensions().then(function () {
|
2694 |
-
e.forEach(function (e) {
|
2695 |
-
e(t)
|
2696 |
-
})
|
2697 |
-
})
|
2698 |
-
}), t.override("createElement", function (t) {
|
2699 |
-
return this.targetGlobal.document.createElement(t)
|
2700 |
-
}), t.override("createFragment", function () {
|
2701 |
-
return this.targetGlobal.document.createDocumentFragment()
|
2702 |
-
}), t.override("htmlToElement", function (t) {
|
2703 |
-
var e;
|
2704 |
-
return (e = this.createElement("div")).innerHTML = t, e.firstElementChild
|
2705 |
-
}), t.override("hasSelectedText", function () {
|
2706 |
-
return !!u.getSelectedText(this.targetGlobal)
|
2707 |
-
}), t.override("addRootClass", function (t) {
|
2708 |
-
var e = this._shadowRootBody;
|
2709 |
-
return t = Array.isArray(t) ? t : [t], this.initialized ? a.write(function () {
|
2710 |
-
t.forEach(function (t) {
|
2711 |
-
o.add(e, t)
|
2712 |
-
})
|
2713 |
-
}) : m.reject(new Error("sandbox not initialized"))
|
2714 |
-
}), t.override("removeRootClass", function (t) {
|
2715 |
-
var e = this._shadowRootBody;
|
2716 |
-
return t = Array.isArray(t) ? t : [t], this.initialized ? a.write(function () {
|
2717 |
-
t.forEach(function (t) {
|
2718 |
-
o.remove(e, t)
|
2719 |
-
})
|
2720 |
-
}) : m.reject(new Error("sandbox not initialized"))
|
2721 |
-
}), t.override("hasRootClass", function (t) {
|
2722 |
-
return o.present(this._shadowRootBody, t)
|
2723 |
-
}), t.override("addStyleSheet", function (t, e) {
|
2724 |
-
return this.addCss('@import url("' + t + '");', e).then(function () {
|
2725 |
-
return d(t)
|
2726 |
-
})
|
2727 |
-
}), t.override("prependStyleSheet", function (t) {
|
2728 |
-
var e = this._shadowRoot;
|
2729 |
-
return this.addStyleSheet(t, function (t) {
|
2730 |
-
var n = e.firstElementChild;
|
2731 |
-
return n ? e.insertBefore(t, n) : e.appendChild(t)
|
2732 |
-
})
|
2733 |
-
}), t.override("appendStyleSheet", function (t) {
|
2734 |
-
var e = this._shadowRoot;
|
2735 |
-
return this.addStyleSheet(t, function (t) {
|
2736 |
-
return e.appendChild(t)
|
2737 |
-
})
|
2738 |
-
}), t.override("addCss", function (t, e) {
|
2739 |
-
var n;
|
2740 |
-
return this.initialized ? l.inlineStyle() ? ((n = this.createElement("style")).type = "text/css", n.appendChild(this.targetGlobal.document.createTextNode(t)), a.write(h(e, null, n))) : m.resolve() : m.reject(new Error("sandbox not initialized"))
|
2741 |
-
}), t.override("prependCss", function (t) {
|
2742 |
-
var e = this._shadowRoot;
|
2743 |
-
return this.addCss(t, function (t) {
|
2744 |
-
var n = e.firstElementChild;
|
2745 |
-
return n ? e.insertBefore(t, n) : e.appendChild(t)
|
2746 |
-
})
|
2747 |
-
}), t.override("appendCss", function (t) {
|
2748 |
-
var e = this._shadowRoot;
|
2749 |
-
return this.addCss(t, function (t) {
|
2750 |
-
return e.appendChild(t)
|
2751 |
-
})
|
2752 |
-
}), t.override("makeVisible", function () {
|
2753 |
-
return this.styleSelf(y)
|
2754 |
-
}), t.override("injectWidgetEl", function (t) {
|
2755 |
-
var e = this;
|
2756 |
-
return this.initialized ? this._shadowRootBody.firstElementChild ? m.reject(new Error("widget already injected")) : a.write(function () {
|
2757 |
-
e._shadowRootBody.appendChild(t)
|
2758 |
-
}).then(function () {
|
2759 |
-
return e._updateCachedDimensions()
|
2760 |
-
}).then(function () {
|
2761 |
-
var t = p(e._didResize, g, e);
|
2762 |
-
new r(e._shadowRootBody, t)
|
2763 |
-
}) : m.reject(new Error("sandbox not initialized"))
|
2764 |
-
}), t.override("matchHeightToContent", function () {
|
2765 |
-
return m.resolve()
|
2766 |
-
}), t.override("matchWidthToContent", function () {
|
2767 |
-
return m.resolve()
|
2768 |
-
}), t.override("insert", function (t, e, n, r) {
|
2769 |
-
var i = this.targetGlobal.document, o = this._shadowHost = i.createElement(b),
|
2770 |
-
u = this._shadowRoot = o.attachShadow({mode: _}),
|
2771 |
-
c = this._shadowRootBody = i.createElement("div");
|
2772 |
-
return v.forIn(e || {}, function (t, e) {
|
2773 |
-
o.setAttribute(t, e)
|
2774 |
-
}), o.id = t, u.appendChild(c), s.delegate(c, "click", "A", function (t, e) {
|
2775 |
-
e.hasAttribute("target") || e.setAttribute("target", "_blank")
|
2776 |
-
}), m.all([this.styleSelf(w), this.addRootClass(E), this.prependCss(x), a.write(r.bind(null, o))])
|
2777 |
-
}), t.override("onResize", function (t) {
|
2778 |
-
this._resizeHandlers.push(t)
|
2779 |
-
}), t.after("initialize", function () {
|
2780 |
-
this._shadowHost = this._shadowRoot = this._shadowRootBody = null, this._width = this._height = 0, this._resizeHandlers = []
|
2781 |
-
}), t.after("styleSelf", function () {
|
2782 |
-
return this._updateCachedDimensions()
|
2783 |
-
})
|
2784 |
-
})
|
2785 |
-
}, function (t, e) {
|
2786 |
-
var n;
|
2787 |
-
(n = function (t, e) {
|
2788 |
-
function r(t, e) {
|
2789 |
-
if (t.resizedAttached) {
|
2790 |
-
if (t.resizedAttached) return void t.resizedAttached.add(e)
|
2791 |
-
} else t.resizedAttached = new function () {
|
2792 |
-
var t, e;
|
2793 |
-
this.q = [], this.add = function (t) {
|
2794 |
-
this.q.push(t)
|
2795 |
-
}, this.call = function () {
|
2796 |
-
for (t = 0, e = this.q.length; t < e; t++) this.q[t].call()
|
2797 |
-
}
|
2798 |
-
}, t.resizedAttached.add(e);
|
2799 |
-
t.resizeSensor = document.createElement("div"), t.resizeSensor.className = "resize-sensor";
|
2800 |
-
var n = "position: absolute; left: 0; top: 0; right: 0; bottom: 0; overflow: hidden; z-index: -1; visibility: hidden;",
|
2801 |
-
r = "position: absolute; left: 0; top: 0; transition: 0s;";
|
2802 |
-
t.resizeSensor.style.cssText = n, t.resizeSensor.innerHTML = '<div class="resize-sensor-expand" style="' + n + '"><div style="' + r + '"></div></div><div class="resize-sensor-shrink" style="' + n + '"><div style="' + r + ' width: 200%; height: 200%"></div></div>', t.appendChild(t.resizeSensor), {
|
2803 |
-
fixed: 1,
|
2804 |
-
absolute: 1
|
2805 |
-
}[function (t, e) {
|
2806 |
-
return t.currentStyle ? t.currentStyle[e] : window.getComputedStyle ? window.getComputedStyle(t, null).getPropertyValue(e) : t.style[e]
|
2807 |
-
}(t, "position")] || (t.style.position = "relative");
|
2808 |
-
var i, o, s = t.resizeSensor.childNodes[0], a = s.childNodes[0],
|
2809 |
-
u = t.resizeSensor.childNodes[1], c = (u.childNodes[0], function () {
|
2810 |
-
a.style.width = s.offsetWidth + 10 + "px", a.style.height = s.offsetHeight + 10 + "px", s.scrollLeft = s.scrollWidth, s.scrollTop = s.scrollHeight, u.scrollLeft = u.scrollWidth, u.scrollTop = u.scrollHeight, i = t.offsetWidth, o = t.offsetHeight
|
2811 |
-
});
|
2812 |
-
c();
|
2813 |
-
var d = function (t, e, n) {
|
2814 |
-
t.attachEvent ? t.attachEvent("on" + e, n) : t.addEventListener(e, n)
|
2815 |
-
}, l = function () {
|
2816 |
-
t.offsetWidth == i && t.offsetHeight == o || t.resizedAttached && t.resizedAttached.call(), c()
|
2817 |
-
};
|
2818 |
-
d(s, "scroll", l), d(u, "scroll", l)
|
2819 |
-
}
|
2820 |
-
|
2821 |
-
var i = Object.prototype.toString.call(t),
|
2822 |
-
o = "[object Array]" === i || "[object NodeList]" === i || "[object HTMLCollection]" === i || "undefined" != typeof jQuery && t instanceof jQuery || "undefined" != typeof Elements && t instanceof Elements;
|
2823 |
-
if (o) for (var s = 0, a = t.length; s < a; s++) r(t[s], e); else r(t, e);
|
2824 |
-
this.detach = function () {
|
2825 |
-
if (o) for (var e = 0, r = t.length; e < r; e++) n.detach(t[e]); else n.detach(t)
|
2826 |
-
}
|
2827 |
-
}).detach = function (t) {
|
2828 |
-
t.resizeSensor && (t.removeChild(t.resizeSensor), delete t.resizeSensor, delete t.resizedAttached)
|
2829 |
-
}, void 0 !== t && void 0 !== t.exports ? t.exports = n : window.ResizeSensor = n
|
2830 |
-
}, function (t, e, n) {
|
2831 |
-
var r = n(3), i = n(0), o = n(13), s = n(14)(), a = n(63), u = n(5),
|
2832 |
-
c = "a.twitter-follow-button";
|
2833 |
-
t.exports = function (t) {
|
2834 |
-
return s(t, c).map(function (t) {
|
2835 |
-
return a(function (t) {
|
2836 |
-
var e = o(t), n = {
|
2837 |
-
screenName: r.screenName(t.href),
|
2838 |
-
showScreenName: "false" !== t.getAttribute("data-show-screen-name"),
|
2839 |
-
showCount: "false" !== t.getAttribute("data-show-count"),
|
2840 |
-
size: t.getAttribute("data-size"),
|
2841 |
-
count: t.getAttribute("data-count"),
|
2842 |
-
preview: t.getAttribute("data-preview")
|
2843 |
-
};
|
2844 |
-
return i.forIn(n, function (t, n) {
|
2845 |
-
var r = e[t];
|
2846 |
-
e[t] = u.hasValue(r) ? r : n
|
2847 |
-
}), e.screenName = e.screenName || e.screen_name, e
|
2848 |
-
}(t), t.parentNode, t)
|
2849 |
-
})
|
2850 |
-
}
|
2851 |
-
}, function (t, e, n) {
|
2852 |
-
var r = n(2);
|
2853 |
-
t.exports = function (t, e) {
|
2854 |
-
var i = new r;
|
2855 |
-
return n.e(3).then(function (r) {
|
2856 |
-
var o;
|
2857 |
-
try {
|
2858 |
-
o = n(87), i.resolve(new o(t, e))
|
2859 |
-
} catch (t) {
|
2860 |
-
i.reject(t)
|
2861 |
-
}
|
2862 |
-
}.bind(null, n)).catch(function (t) {
|
2863 |
-
i.reject(t)
|
2864 |
-
}), i.promise
|
2865 |
-
}
|
2866 |
-
}, function (t, e, n) {
|
2867 |
-
var r = n(18), i = n(126), o = n(59), s = n(30), a = n(2), u = n(6), c = n(7), d = n(0),
|
2868 |
-
l = {position: "absolute", visibility: "hidden", width: "0px", height: "0px"},
|
2869 |
-
f = {position: "static", visibility: "visible"}, h = {};
|
2870 |
-
i(function (t, e, n) {
|
2871 |
-
var r = h[t];
|
2872 |
-
if (r) return e = e || 1, n = n || 1, r.styleSelf({
|
2873 |
-
width: e + "px",
|
2874 |
-
height: n + "px"
|
2875 |
-
}).then(function () {
|
2876 |
-
r.didResize()
|
2877 |
-
})
|
2878 |
-
}), t.exports = function (t) {
|
2879 |
-
t.overrideProperty("id", {
|
2880 |
-
get: function () {
|
2881 |
-
return this.sandboxEl && this.sandboxEl.id
|
2882 |
-
}
|
2883 |
-
}), t.overrideProperty("initialized", {
|
2884 |
-
get: function () {
|
2885 |
-
return !!this.iframeEl
|
2886 |
-
}
|
2887 |
-
}), t.overrideProperty("width", {
|
2888 |
-
get: function () {
|
2889 |
-
return this._width
|
2890 |
-
}
|
2891 |
-
}), t.overrideProperty("height", {
|
2892 |
-
get: function () {
|
2893 |
-
return this._height
|
2894 |
-
}
|
2895 |
-
}), t.overrideProperty("sandboxEl", {
|
2896 |
-
get: function () {
|
2897 |
-
return this.iframeEl
|
2898 |
-
}
|
2899 |
-
}), t.defineProperty("iframeEl", {
|
2900 |
-
get: function () {
|
2901 |
-
return this._iframe
|
2902 |
-
}
|
2903 |
-
}), t.define("updateCachedDimensions", function () {
|
2904 |
-
var t = this;
|
2905 |
-
return this.initialized ? r.read(function () {
|
2906 |
-
t._width = t.sandboxEl.offsetWidth, t._height = t.sandboxEl.offsetHeight
|
2907 |
-
}) : u.resolve()
|
2908 |
-
}), t.define("setTitle", function (t) {
|
2909 |
-
this.iframeEl.title = t
|
2910 |
-
}), t.define("makeVisible", function () {
|
2911 |
-
return this.styleSelf(f)
|
2912 |
-
}), t.define("didResize", function () {
|
2913 |
-
var t = this, e = t._resizeHandlers.length > 0;
|
2914 |
-
return this.updateCachedDimensions().then(function () {
|
2915 |
-
e && t._resizeHandlers.forEach(function (e) {
|
2916 |
-
e(t)
|
2917 |
-
})
|
2918 |
-
})
|
2919 |
-
}), t.define("loadDocument", function (t) {
|
2920 |
-
var e = new a;
|
2921 |
-
return this.initialized ? this.iframeEl.src ? u.reject(new Error("widget already loaded")) : (this.iframeEl.addEventListener("load", e.resolve, !1), this.iframeEl.addEventListener("error", e.reject, !1), this.iframeEl.src = t, e.promise) : u.reject(new Error("sandbox not initialized"))
|
2922 |
-
}), t.after("initialize", function () {
|
2923 |
-
this._iframe = null, this._width = this._height = 0, this._resizeHandlers = []
|
2924 |
-
}), t.override("insert", function (t, e, n, i) {
|
2925 |
-
var a = this;
|
2926 |
-
return e = d.aug({id: t}, e), n = d.aug({}, l, n), this._iframe = s(e, n), h[t] = this, this.onResize(o(function () {
|
2927 |
-
a.makeVisible()
|
2928 |
-
})), r.write(c(i, null, this._iframe))
|
2929 |
-
}), t.override("onResize", function (t) {
|
2930 |
-
this._resizeHandlers.push(t)
|
2931 |
-
}), t.after("styleSelf", function () {
|
2932 |
-
return this.updateCachedDimensions()
|
2933 |
-
})
|
2934 |
-
}
|
2935 |
-
}, function (t, e, n) {
|
2936 |
-
var r = n(1), i = n(127), o = n(129), s = n(24), a = n(5), u = n(130);
|
2937 |
-
t.exports = function (t) {
|
2938 |
-
function e(t, e) {
|
2939 |
-
var n = u(this);
|
2940 |
-
s.trigger(t, {target: n, region: e, type: t, data: {}})
|
2941 |
-
}
|
2942 |
-
|
2943 |
-
function n(e) {
|
2944 |
-
var n = u(this), r = n && n.id, i = a.asInt(e.width), o = a.asInt(e.height);
|
2945 |
-
r && void 0 !== i && void 0 !== o && t(r, i, o)
|
2946 |
-
}
|
2947 |
-
|
2948 |
-
(new i).attachReceiver(new o.Receiver(r, "twttr.button")).bind("twttr.private.trigger", e).bind("twttr.private.resizeButton", n), (new i).attachReceiver(new o.Receiver(r, "twttr.embed")).bind("twttr.private.trigger", e).bind("twttr.private.rendered", n).bind("twttr.private.resize", n)
|
2949 |
-
}
|
2950 |
-
}, function (t, e, n) {
|
2951 |
-
var r = n(31), i = n(128), o = n(0), s = n(6), a = n(22), u = "2.0";
|
2952 |
-
|
2953 |
-
function c(t) {
|
2954 |
-
this.registry = t || {}
|
2955 |
-
}
|
2956 |
-
|
2957 |
-
function d(t) {
|
2958 |
-
var e, n;
|
2959 |
-
return e = o.isType("string", t), n = o.isType("number", t), e || n || null === t
|
2960 |
-
}
|
2961 |
-
|
2962 |
-
function l(t, e) {
|
2963 |
-
return {jsonrpc: u, id: d(t) ? t : null, error: e}
|
2964 |
-
}
|
2965 |
-
|
2966 |
-
c.prototype._invoke = function (t, e) {
|
2967 |
-
var n, r, i;
|
2968 |
-
n = this.registry[t.method], r = t.params || [], r = o.isType("array", r) ? r : [r];
|
2969 |
-
try {
|
2970 |
-
i = n.apply(e.source || null, r)
|
2971 |
-
} catch (t) {
|
2972 |
-
i = s.reject(t.message)
|
2973 |
-
}
|
2974 |
-
return a.isPromise(i) ? i : s.resolve(i)
|
2975 |
-
}, c.prototype._processRequest = function (t, e) {
|
2976 |
-
var n, r;
|
2977 |
-
return function (t) {
|
2978 |
-
var e, n, r;
|
2979 |
-
return !!o.isObject(t) && (e = t.jsonrpc === u, n = o.isType("string", t.method), r = !("id" in t) || d(t.id), e && n && r)
|
2980 |
-
}(t) ? (n = "params" in t && (r = t.params, !o.isObject(r) || o.isType("function", r)) ? s.resolve(l(t.id, i.INVALID_PARAMS)) : this.registry[t.method] ? this._invoke(t, {source: e}).then(function (e) {
|
2981 |
-
return n = t.id, {jsonrpc: u, id: n, result: e};
|
2982 |
-
var n
|
2983 |
-
}, function () {
|
2984 |
-
return l(t.id, i.INTERNAL_ERROR)
|
2985 |
-
}) : s.resolve(l(t.id, i.METHOD_NOT_FOUND)), null != t.id ? n : s.resolve()) : s.resolve(l(t.id, i.INVALID_REQUEST))
|
2986 |
-
}, c.prototype.attachReceiver = function (t) {
|
2987 |
-
return t.attachTo(this), this
|
2988 |
-
}, c.prototype.bind = function (t, e) {
|
2989 |
-
return this.registry[t] = e, this
|
2990 |
-
}, c.prototype.receive = function (t, e) {
|
2991 |
-
var n, a, u, c = this;
|
2992 |
-
try {
|
2993 |
-
u = t, t = o.isType("string", u) ? r.parse(u) : u
|
2994 |
-
} catch (t) {
|
2995 |
-
return s.resolve(l(null, i.PARSE_ERROR))
|
2996 |
-
}
|
2997 |
-
return e = e || null, a = ((n = o.isType("array", t)) ? t : [t]).map(function (t) {
|
2998 |
-
return c._processRequest(t, e)
|
2999 |
-
}), n ? function (t) {
|
3000 |
-
return s.all(t).then(function (t) {
|
3001 |
-
return (t = t.filter(function (t) {
|
3002 |
-
return void 0 !== t
|
3003 |
-
})).length ? t : void 0
|
3004 |
-
})
|
3005 |
-
}(a) : a[0]
|
3006 |
-
}, t.exports = c
|
3007 |
-
}, function (t) {
|
3008 |
-
t.exports = {
|
3009 |
-
PARSE_ERROR: {code: -32700, message: "Parse error"},
|
3010 |
-
INVALID_REQUEST: {code: -32600, message: "Invalid Request"},
|
3011 |
-
INVALID_PARAMS: {code: -32602, message: "Invalid params"},
|
3012 |
-
METHOD_NOT_FOUND: {code: -32601, message: "Method not found"},
|
3013 |
-
INTERNAL_ERROR: {code: -32603, message: "Internal error"}
|
3014 |
-
}
|
3015 |
-
}, function (t, e, n) {
|
3016 |
-
var r = n(8), i = n(1), o = n(31), s = n(2), a = n(21), u = n(0), c = n(3), d = n(7),
|
3017 |
-
l = a.ie9();
|
3018 |
-
|
3019 |
-
function f(t, e, n) {
|
3020 |
-
var r;
|
3021 |
-
t && t.postMessage && (l ? r = (n || "") + o.stringify(e) : n ? (r = {})[n] = e : r = e, t.postMessage(r, "*"))
|
3022 |
-
}
|
3023 |
-
|
3024 |
-
function h(t) {
|
3025 |
-
return u.isType("string", t) ? t : "JSONRPC"
|
3026 |
-
}
|
3027 |
-
|
3028 |
-
function p(t, e) {
|
3029 |
-
return e ? u.isType("string", t) && 0 === t.indexOf(e) ? t.substring(e.length) : t && t[e] ? t[e] : void 0 : t
|
3030 |
-
}
|
3031 |
-
|
3032 |
-
function m(t, e) {
|
3033 |
-
var n = t.document;
|
3034 |
-
this.filter = h(e), this.server = null, this.isTwitterFrame = c.isTwitterURL(n.location.href), t.addEventListener("message", d(this._onMessage, this), !1)
|
3035 |
-
}
|
3036 |
-
|
3037 |
-
function v(t, e) {
|
3038 |
-
this.pending = {}, this.target = t, this.isTwitterHost = c.isTwitterURL(r.href), this.filter = h(e), i.addEventListener("message", d(this._onMessage, this), !1)
|
3039 |
-
}
|
3040 |
-
|
3041 |
-
u.aug(m.prototype, {
|
3042 |
-
_onMessage: function (t) {
|
3043 |
-
var e, n = this;
|
3044 |
-
this.server && (this.isTwitterFrame && !c.isTwitterURL(t.origin) || (e = p(t.data, this.filter)) && this.server.receive(e, t.source).then(function (e) {
|
3045 |
-
e && f(t.source, e, n.filter)
|
3046 |
-
}))
|
3047 |
-
}, attachTo: function (t) {
|
3048 |
-
this.server = t
|
3049 |
-
}, detach: function () {
|
3050 |
-
this.server = null
|
3051 |
-
}
|
3052 |
-
}), u.aug(v.prototype, {
|
3053 |
-
_processResponse: function (t) {
|
3054 |
-
var e = this.pending[t.id];
|
3055 |
-
e && (e.resolve(t), delete this.pending[t.id])
|
3056 |
-
}, _onMessage: function (t) {
|
3057 |
-
var e;
|
3058 |
-
if ((!this.isTwitterHost || c.isTwitterURL(t.origin)) && (e = p(t.data, this.filter))) {
|
3059 |
-
if (u.isType("string", e)) try {
|
3060 |
-
e = o.parse(e)
|
3061 |
-
} catch (t) {
|
3062 |
-
return
|
3063 |
-
}
|
3064 |
-
(e = u.isType("array", e) ? e : [e]).forEach(d(this._processResponse, this))
|
3065 |
-
}
|
3066 |
-
}, send: function (t) {
|
3067 |
-
var e = new s;
|
3068 |
-
return t.id ? this.pending[t.id] = e : e.resolve(), f(this.target, t, this.filter), e.promise
|
3069 |
-
}
|
3070 |
-
}), t.exports = {
|
3071 |
-
Receiver: m, Dispatcher: v, _stringifyPayload: function (t) {
|
3072 |
-
return arguments.length > 0 && (l = !!t), l
|
3073 |
-
}
|
3074 |
-
}
|
3075 |
-
}, function (t, e, n) {
|
3076 |
-
var r = n(4);
|
3077 |
-
t.exports = function (t) {
|
3078 |
-
for (var e, n = r.getElementsByTagName("iframe"), i = 0; n[i]; i++) if ((e = n[i]).contentWindow === t) return e
|
3079 |
-
}
|
3080 |
-
}, function (t, e, n) {
|
3081 |
-
var r = n(5), i = n(0), o = n(3), s = n(13), a = n(14)(), u = n(64), c = "a.twitter-moment";
|
3082 |
-
t.exports = function (t) {
|
3083 |
-
return a(t, c).map(function (t) {
|
3084 |
-
return u(function (t) {
|
3085 |
-
var e = s(t), n = {
|
3086 |
-
momentId: o.momentId(t.href),
|
3087 |
-
chrome: t.getAttribute("data-chrome"),
|
3088 |
-
limit: t.getAttribute("data-limit")
|
3089 |
-
};
|
3090 |
-
return i.forIn(n, function (t, n) {
|
3091 |
-
var i = e[t];
|
3092 |
-
e[t] = r.hasValue(i) ? i : n
|
3093 |
-
}), e
|
3094 |
-
}(t), t.parentNode, t)
|
3095 |
-
})
|
3096 |
-
}
|
3097 |
-
}, function (t, e, n) {
|
3098 |
-
var r = n(2);
|
3099 |
-
t.exports = function (t, e) {
|
3100 |
-
var i = new r;
|
3101 |
-
return Promise.all([n.e(0), n.e(4)]).then(function (r) {
|
3102 |
-
var o;
|
3103 |
-
try {
|
3104 |
-
o = n(88), i.resolve(new o(t, e))
|
3105 |
-
} catch (t) {
|
3106 |
-
i.reject(t)
|
3107 |
-
}
|
3108 |
-
}.bind(null, n)).catch(function (t) {
|
3109 |
-
i.reject(t)
|
3110 |
-
}), i.promise
|
3111 |
-
}
|
3112 |
-
}, function (t, e, n) {
|
3113 |
-
var r = n(0), i = n(13), o = n(14)(), s = n(65), a = "a.periscope-on-air",
|
3114 |
-
u = /^https?:\/\/(?:www\.)?(?:periscope|pscp)\.tv\/@?([a-zA-Z0-9_]+)\/?$/i;
|
3115 |
-
t.exports = function (t) {
|
3116 |
-
return o(t, a).map(function (t) {
|
3117 |
-
return s(function (t) {
|
3118 |
-
var e = i(t), n = t.getAttribute("href"), o = t.getAttribute("data-size"),
|
3119 |
-
s = u.exec(n)[1];
|
3120 |
-
return r.aug(e, {username: s, size: o})
|
3121 |
-
}(t), t.parentNode, t)
|
3122 |
-
})
|
3123 |
-
}
|
3124 |
-
}, function (t, e, n) {
|
3125 |
-
var r = n(2);
|
3126 |
-
t.exports = function (t, e) {
|
3127 |
-
var i = new r;
|
3128 |
-
return n.e(5).then(function (r) {
|
3129 |
-
var o;
|
3130 |
-
try {
|
3131 |
-
o = n(89), i.resolve(new o(t, e))
|
3132 |
-
} catch (t) {
|
3133 |
-
i.reject(t)
|
3134 |
-
}
|
3135 |
-
}.bind(null, n)).catch(function (t) {
|
3136 |
-
i.reject(t)
|
3137 |
-
}), i.promise
|
3138 |
-
}
|
3139 |
-
}, function (t, e, n) {
|
3140 |
-
var r = n(5), i = n(0), o = n(66), s = n(13), a = n(14)(), u = n(67), c = n(3), d = n(12),
|
3141 |
-
l = "a.twitter-timeline,div.twitter-timeline,a.twitter-grid",
|
3142 |
-
f = "Embedded Search timelines have been deprecated. See https://twittercommunity.com/t/deprecating-widget-settings/102295.",
|
3143 |
-
h = "You may have been affected by an update to settings in embedded timelines. See https://twittercommunity.com/t/deprecating-widget-settings/102295.",
|
3144 |
-
p = "Embedded grids have been deprecated and will now render as timelines. Please update your embed code to use the twitter-timeline class. More info: https://twittercommunity.com/t/update-on-the-embedded-grid-display-type/119564.";
|
3145 |
-
t.exports = function (t) {
|
3146 |
-
return a(t, l).map(function (t) {
|
3147 |
-
return u(function (t) {
|
3148 |
-
var e = s(t), n = t.getAttribute("data-show-replies"), a = {
|
3149 |
-
isPreconfigured: !!t.getAttribute("data-widget-id"),
|
3150 |
-
chrome: t.getAttribute("data-chrome"),
|
3151 |
-
tweetLimit: t.getAttribute("data-tweet-limit") || t.getAttribute("data-limit"),
|
3152 |
-
ariaLive: t.getAttribute("data-aria-polite"),
|
3153 |
-
theme: t.getAttribute("data-theme"),
|
3154 |
-
linkColor: t.getAttribute("data-link-color"),
|
3155 |
-
borderColor: t.getAttribute("data-border-color"),
|
3156 |
-
showReplies: n ? r.asBoolean(n) : null,
|
3157 |
-
profileScreenName: t.getAttribute("data-screen-name"),
|
3158 |
-
profileUserId: t.getAttribute("data-user-id"),
|
3159 |
-
favoritesScreenName: t.getAttribute("data-favorites-screen-name"),
|
3160 |
-
favoritesUserId: t.getAttribute("data-favorites-user-id"),
|
3161 |
-
likesScreenName: t.getAttribute("data-likes-screen-name"),
|
3162 |
-
likesUserId: t.getAttribute("data-likes-user-id"),
|
3163 |
-
listOwnerScreenName: t.getAttribute("data-list-owner-screen-name"),
|
3164 |
-
listOwnerUserId: t.getAttribute("data-list-owner-id"),
|
3165 |
-
listId: t.getAttribute("data-list-id"),
|
3166 |
-
listSlug: t.getAttribute("data-list-slug"),
|
3167 |
-
customTimelineId: t.getAttribute("data-custom-timeline-id"),
|
3168 |
-
staticContent: t.getAttribute("data-static-content"),
|
3169 |
-
url: t.href
|
3170 |
-
};
|
3171 |
-
return a.isPreconfigured && (c.isSearchUrl(a.url) ? d.publicError(f, t) : d.publicLog(h, t)), "twitter-grid" === t.className && d.publicLog(p, t), (a = i.aug(a, e)).dataSource = o(a), a.id = a.dataSource && a.dataSource.id, a
|
3172 |
-
}(t), t.parentNode, t)
|
3173 |
-
})
|
3174 |
-
}
|
3175 |
-
}, function (t, e, n) {
|
3176 |
-
var r = n(27);
|
3177 |
-
t.exports = r.build([n(28), n(139)])
|
3178 |
-
}, function (t, e, n) {
|
3179 |
-
var r = n(0), i = n(138);
|
3180 |
-
t.exports = function (t) {
|
3181 |
-
return "en" === t || r.contains(i, t)
|
3182 |
-
}
|
3183 |
-
}, function (t, e) {
|
3184 |
-
t.exports = ["hi", "zh-cn", "fr", "zh-tw", "msa", "fil", "fi", "sv", "pl", "ja", "ko", "de", "it", "pt", "es", "ru", "id", "tr", "da", "no", "nl", "hu", "fa", "ar", "ur", "he", "th", "cs", "uk", "vi", "ro", "bn", "el", "en-gb", "gu", "kn", "mr", "ta", "bg", "ca", "hr", "sr", "sk"]
|
3185 |
-
}, function (t, e, n) {
|
3186 |
-
var r = n(3), i = n(0), o = n(19), s = "collection:";
|
3187 |
-
|
3188 |
-
function a(t, e) {
|
3189 |
-
return r.collectionId(t) || e
|
3190 |
-
}
|
3191 |
-
|
3192 |
-
t.exports = function (t) {
|
3193 |
-
t.params({id: {}, url: {}}), t.overrideProperty("id", {
|
3194 |
-
get: function () {
|
3195 |
-
var t = a(this.params.url, this.params.id);
|
3196 |
-
return s + t
|
3197 |
-
}
|
3198 |
-
}), t.overrideProperty("endpoint", {
|
3199 |
-
get: function () {
|
3200 |
-
return o.timeline(["collection"])
|
3201 |
-
}
|
3202 |
-
}), t.around("queryParams", function (t) {
|
3203 |
-
return i.aug(t(), {collection_id: a(this.params.url, this.params.id)})
|
3204 |
-
}), t.before("initialize", function () {
|
3205 |
-
if (!a(this.params.url, this.params.id)) throw new Error("one of url or id is required")
|
3206 |
-
})
|
3207 |
-
}
|
3208 |
-
}, function (t, e, n) {
|
3209 |
-
var r = n(27);
|
3210 |
-
t.exports = r.build([n(28), n(141)])
|
3211 |
-
}, function (t, e, n) {
|
3212 |
-
var r = n(3), i = n(0), o = n(19), s = "event:";
|
3213 |
-
|
3214 |
-
function a(t, e) {
|
3215 |
-
return r.eventId(t) || e
|
3216 |
-
}
|
3217 |
-
|
3218 |
-
t.exports = function (t) {
|
3219 |
-
t.params({id: {}, url: {}}), t.overrideProperty("id", {
|
3220 |
-
get: function () {
|
3221 |
-
var t = a(this.params.url, this.params.id);
|
3222 |
-
return s + t
|
3223 |
-
}
|
3224 |
-
}), t.overrideProperty("endpoint", {
|
3225 |
-
get: function () {
|
3226 |
-
return o.timeline(["event"])
|
3227 |
-
}
|
3228 |
-
}), t.around("queryParams", function (t) {
|
3229 |
-
return i.aug(t(), {event_id: a(this.params.url, this.params.id)})
|
3230 |
-
}), t.before("initialize", function () {
|
3231 |
-
if (!a(this.params.url, this.params.id)) throw new Error("one of url or id is required")
|
3232 |
-
})
|
3233 |
-
}
|
3234 |
-
}, function (t, e, n) {
|
3235 |
-
var r = n(27);
|
3236 |
-
t.exports = r.build([n(28), n(143)])
|
3237 |
-
}, function (t, e, n) {
|
3238 |
-
var r = n(3), i = n(0), o = n(19), s = "likes:";
|
3239 |
-
|
3240 |
-
function a(t) {
|
3241 |
-
return r.likesScreenName(t.url) || t.screenName
|
3242 |
-
}
|
3243 |
-
|
3244 |
-
t.exports = function (t) {
|
3245 |
-
t.params({
|
3246 |
-
screenName: {},
|
3247 |
-
userId: {},
|
3248 |
-
url: {}
|
3249 |
-
}), t.overrideProperty("id", {
|
3250 |
-
get: function () {
|
3251 |
-
var t = a(this.params) || this.params.userId;
|
3252 |
-
return s + t
|
3253 |
-
}
|
3254 |
-
}), t.overrideProperty("endpoint", {
|
3255 |
-
get: function () {
|
3256 |
-
return o.timeline(["likes"])
|
3257 |
-
}
|
3258 |
-
}), t.define("_getLikesQueryParam", function () {
|
3259 |
-
var t = a(this.params);
|
3260 |
-
return t ? {screen_name: t} : {user_id: this.params.userId}
|
3261 |
-
}), t.around("queryParams", function (t) {
|
3262 |
-
return i.aug(t(), this._getLikesQueryParam())
|
3263 |
-
}), t.before("initialize", function () {
|
3264 |
-
if (!a(this.params) && !this.params.userId) throw new Error("screen name or user id is required")
|
3265 |
-
})
|
3266 |
-
}
|
3267 |
-
}, function (t, e, n) {
|
3268 |
-
var r = n(27);
|
3269 |
-
t.exports = r.build([n(28), n(145)])
|
3270 |
-
}, function (t, e, n) {
|
3271 |
-
var r = n(3), i = n(0), o = n(19), s = "list:";
|
3272 |
-
|
3273 |
-
function a(t) {
|
3274 |
-
var e = r.listScreenNameAndSlug(t.url) || t;
|
3275 |
-
return i.compact({
|
3276 |
-
screen_name: e.ownerScreenName,
|
3277 |
-
user_id: e.ownerUserId,
|
3278 |
-
list_slug: e.slug
|
3279 |
-
})
|
3280 |
-
}
|
3281 |
-
|
3282 |
-
t.exports = function (t) {
|
3283 |
-
t.params({
|
3284 |
-
id: {},
|
3285 |
-
ownerScreenName: {},
|
3286 |
-
ownerUserId: {},
|
3287 |
-
slug: {},
|
3288 |
-
url: {}
|
3289 |
-
}), t.overrideProperty("id", {
|
3290 |
-
get: function () {
|
3291 |
-
var t, e, n;
|
3292 |
-
return this.params.id ? s + this.params.id : (e = (t = a(this.params)) && t.list_slug.replace(/-/g, "_"), n = t && (t.screen_name || t.user_id), s + (n + ":") + e)
|
3293 |
-
}
|
3294 |
-
}), t.overrideProperty("endpoint", {
|
3295 |
-
get: function () {
|
3296 |
-
return o.timeline(["list"])
|
3297 |
-
}
|
3298 |
-
}), t.define("_getListQueryParam", function () {
|
3299 |
-
return this.params.id ? {list_id: this.params.id} : a(this.params)
|
3300 |
-
}), t.around("queryParams", function (t) {
|
3301 |
-
return i.aug(t(), this._getListQueryParam())
|
3302 |
-
}), t.before("initialize", function () {
|
3303 |
-
var t = a(this.params);
|
3304 |
-
if (i.isEmptyObject(t) && !this.params.id) throw new Error("qualified slug or list id required")
|
3305 |
-
})
|
3306 |
-
}
|
3307 |
-
}, function (t, e, n) {
|
3308 |
-
var r = n(27);
|
3309 |
-
t.exports = r.build([n(28), n(147)])
|
3310 |
-
}, function (t, e, n) {
|
3311 |
-
var r = n(3), i = n(5), o = n(0), s = n(19), a = "profile:";
|
3312 |
-
|
3313 |
-
function u(t, e) {
|
3314 |
-
return r.screenName(t) || e
|
3315 |
-
}
|
3316 |
-
|
3317 |
-
t.exports = function (t) {
|
3318 |
-
t.params({
|
3319 |
-
showReplies: {fallback: !1, transform: i.asBoolean},
|
3320 |
-
screenName: {},
|
3321 |
-
userId: {},
|
3322 |
-
url: {}
|
3323 |
-
}), t.overrideProperty("id", {
|
3324 |
-
get: function () {
|
3325 |
-
var t = u(this.params.url, this.params.screenName);
|
3326 |
-
return a + (t || this.params.userId)
|
3327 |
-
}
|
3328 |
-
}), t.overrideProperty("endpoint", {
|
3329 |
-
get: function () {
|
3330 |
-
return s.timeline(["profile"])
|
3331 |
-
}
|
3332 |
-
}), t.define("_getProfileQueryParam", function () {
|
3333 |
-
var t = u(this.params.url, this.params.screenName),
|
3334 |
-
e = t ? {screen_name: t} : {user_id: this.params.userId};
|
3335 |
-
return o.aug(e, {with_replies: this.params.showReplies ? "true" : "false"})
|
3336 |
-
}), t.around("queryParams", function (t) {
|
3337 |
-
return o.aug(t(), this._getProfileQueryParam())
|
3338 |
-
}), t.before("initialize", function () {
|
3339 |
-
if (!u(this.params.url, this.params.screenName) && !this.params.userId) throw new Error("screen name or user id is required")
|
3340 |
-
})
|
3341 |
-
}
|
3342 |
-
}, function (t, e, n) {
|
3343 |
-
var r = n(2);
|
3344 |
-
t.exports = function (t, e) {
|
3345 |
-
var i = new r;
|
3346 |
-
return Promise.all([n.e(0), n.e(6)]).then(function (r) {
|
3347 |
-
var o;
|
3348 |
-
try {
|
3349 |
-
o = n(90), i.resolve(new o(t, e))
|
3350 |
-
} catch (t) {
|
3351 |
-
i.reject(t)
|
3352 |
-
}
|
3353 |
-
}.bind(null, n)).catch(function (t) {
|
3354 |
-
i.reject(t)
|
3355 |
-
}), i.promise
|
3356 |
-
}
|
3357 |
-
}, function (t, e, n) {
|
3358 |
-
var r = n(10), i = n(3), o = n(0), s = n(13), a = n(14)(), u = n(68),
|
3359 |
-
c = "blockquote.twitter-tweet, blockquote.twitter-video",
|
3360 |
-
d = /\btw-align-(left|right|center)\b/;
|
3361 |
-
t.exports = function (t, e) {
|
3362 |
-
return a(t, c).map(function (t) {
|
3363 |
-
return u(function (t) {
|
3364 |
-
var e = s(t), n = t.getElementsByTagName("A"), a = n && n[n.length - 1],
|
3365 |
-
u = a && i.status(a.href), c = t.getAttribute("data-conversation"),
|
3366 |
-
l = "none" == c || "hidden" == c || r.present(t, "tw-hide-thread"),
|
3367 |
-
f = t.getAttribute("data-cards"),
|
3368 |
-
h = "none" == f || "hidden" == f || r.present(t, "tw-hide-media"),
|
3369 |
-
p = t.getAttribute("data-align") || t.getAttribute("align"),
|
3370 |
-
m = t.getAttribute("data-link-color"), v = t.getAttribute("data-theme");
|
3371 |
-
return !p && d.test(t.className) && (p = RegExp.$1), o.aug(e, {
|
3372 |
-
tweetId: u,
|
3373 |
-
hideThread: l,
|
3374 |
-
hideCard: h,
|
3375 |
-
align: p,
|
3376 |
-
linkColor: m,
|
3377 |
-
theme: v,
|
3378 |
-
id: u
|
3379 |
-
})
|
3380 |
-
}(t), t.parentNode, t, e)
|
3381 |
-
})
|
3382 |
-
}
|
3383 |
-
}, function (t, e, n) {
|
3384 |
-
var r = n(2);
|
3385 |
-
t.exports = function (t, e) {
|
3386 |
-
var i = new r;
|
3387 |
-
return Promise.all([n.e(0), n.e(7)]).then(function (r) {
|
3388 |
-
var o;
|
3389 |
-
try {
|
3390 |
-
o = n(91), i.resolve(new o(t, e))
|
3391 |
-
} catch (t) {
|
3392 |
-
i.reject(t)
|
3393 |
-
}
|
3394 |
-
}.bind(null, n)).catch(function (t) {
|
3395 |
-
i.reject(t)
|
3396 |
-
}), i.promise
|
3397 |
-
}
|
3398 |
-
}, function (t, e, n) {
|
3399 |
-
var r = n(2);
|
3400 |
-
t.exports = function (t, e) {
|
3401 |
-
var i = new r;
|
3402 |
-
return Promise.all([n.e(0), n.e(7)]).then(function (r) {
|
3403 |
-
var o;
|
3404 |
-
try {
|
3405 |
-
o = n(92), i.resolve(new o(t, e))
|
3406 |
-
} catch (t) {
|
3407 |
-
i.reject(t)
|
3408 |
-
}
|
3409 |
-
}.bind(null, n)).catch(function (t) {
|
3410 |
-
i.reject(t)
|
3411 |
-
}), i.promise
|
3412 |
-
}
|
3413 |
-
}, function (t, e, n) {
|
3414 |
-
var r = n(10), i = n(0), o = n(13), s = n(14)(), a = n(69), u = n(5),
|
3415 |
-
c = "a.twitter-share-button, a.twitter-mention-button, a.twitter-hashtag-button",
|
3416 |
-
d = "twitter-hashtag-button", l = "twitter-mention-button";
|
3417 |
-
t.exports = function (t) {
|
3418 |
-
return s(t, c).map(function (t) {
|
3419 |
-
return a(function (t) {
|
3420 |
-
var e = o(t), n = {
|
3421 |
-
screenName: t.getAttribute("data-button-screen-name"),
|
3422 |
-
text: t.getAttribute("data-text"),
|
3423 |
-
type: t.getAttribute("data-type"),
|
3424 |
-
size: t.getAttribute("data-size"),
|
3425 |
-
url: t.getAttribute("data-url"),
|
3426 |
-
hashtags: t.getAttribute("data-hashtags"),
|
3427 |
-
via: t.getAttribute("data-via"),
|
3428 |
-
buttonHashtag: t.getAttribute("data-button-hashtag")
|
3429 |
-
};
|
3430 |
-
return i.forIn(n, function (t, n) {
|
3431 |
-
var r = e[t];
|
3432 |
-
e[t] = u.hasValue(r) ? r : n
|
3433 |
-
}), e.screenName = e.screenName || e.screen_name, e.buttonHashtag = e.buttonHashtag || e.button_hashtag || e.hashtag, r.present(t, d) && (e.type = "hashtag"), r.present(t, l) && (e.type = "mention"), e
|
3434 |
-
}(t), t.parentNode, t)
|
3435 |
-
})
|
3436 |
-
}
|
3437 |
-
}, function (t, e, n) {
|
3438 |
-
var r = n(2);
|
3439 |
-
t.exports = function (t, e) {
|
3440 |
-
var i = new r;
|
3441 |
-
return n.e(3).then(function (r) {
|
3442 |
-
var o;
|
3443 |
-
try {
|
3444 |
-
o = n(93), i.resolve(new o(t, e))
|
3445 |
-
} catch (t) {
|
3446 |
-
i.reject(t)
|
3447 |
-
}
|
3448 |
-
}.bind(null, n)).catch(function (t) {
|
3449 |
-
i.reject(t)
|
3450 |
-
}), i.promise
|
3451 |
-
}
|
3452 |
-
}, function (t, e, n) {
|
3453 |
-
var r = n(0);
|
3454 |
-
t.exports = r.aug({}, n(155), n(156), n(157), n(158), n(159), n(160), n(161))
|
3455 |
-
}, function (t, e, n) {
|
3456 |
-
var r = n(60), i = n(17)(["userId"], {}, r);
|
3457 |
-
t.exports = {createDMButton: i}
|
3458 |
-
}, function (t, e, n) {
|
3459 |
-
var r = n(63), i = n(17)(["screenName"], {}, r);
|
3460 |
-
t.exports = {createFollowButton: i}
|
3461 |
-
}, function (t, e, n) {
|
3462 |
-
var r = n(64), i = n(17)(["momentId"], {}, r);
|
3463 |
-
t.exports = {createMoment: i}
|
3464 |
-
}, function (t, e, n) {
|
3465 |
-
var r = n(65), i = n(17)(["username"], {}, r);
|
3466 |
-
t.exports = {createPeriscopeOnAirButton: i}
|
3467 |
-
}, function (t, e, n) {
|
3468 |
-
var r = n(8), i = n(12), o = n(3), s = n(0), a = n(5), u = n(66), c = n(67),
|
3469 |
-
d = n(17)([], {}, c), l = n(6),
|
3470 |
-
f = "Embedded grids have been deprecated. Please use twttr.widgets.createTimeline instead. More info: https://twittercommunity.com/t/update-on-the-embedded-grid-display-type/119564.",
|
3471 |
-
h = {
|
3472 |
-
createTimeline: p, createGridFromCollection: function (t) {
|
3473 |
-
var e = s.toRealArray(arguments).slice(1), n = {sourceType: "collection", id: t};
|
3474 |
-
return e.unshift(n), i.publicLog(f), p.apply(this, e)
|
3475 |
-
}
|
3476 |
-
};
|
3477 |
-
|
3478 |
-
function p(t) {
|
3479 |
-
var e, n = s.toRealArray(arguments).slice(1);
|
3480 |
-
return a.isString(t) || a.isNumber(t) ? l.reject("Embedded timelines with widget settings have been deprecated. See https://twittercommunity.com/t/deprecating-widget-settings/102295.") : s.isObject(t) ? (t = t || {}, n.forEach(function (t) {
|
3481 |
-
s.isType("object", t) && function (t) {
|
3482 |
-
t.ariaLive = t.ariaPolite
|
3483 |
-
}(e = t)
|
3484 |
-
}), e || (e = {}, n.push(e)), t.lang = e.lang, t.tweetLimit = e.tweetLimit, t.showReplies = e.showReplies, e.dataSource = u(t), d.apply(this, n)) : l.reject("data source must be an object.")
|
3485 |
-
}
|
3486 |
-
|
3487 |
-
o.isTwitterURL(r.href) && (h.createTimelinePreview = function (t, e, n) {
|
3488 |
-
var r = {previewParams: t, useLegacyDefaults: !0, isPreviewTimeline: !0};
|
3489 |
-
return r.dataSource = u(r), d(e, r, n)
|
3490 |
-
}), t.exports = h
|
3491 |
-
}, function (t, e, n) {
|
3492 |
-
var r, i = n(0), o = n(68), s = n(17), a = (r = s(["tweetId"], {}, o), function () {
|
3493 |
-
return i.toRealArray(arguments).slice(1).forEach(function (t) {
|
3494 |
-
i.isType("object", t) && (t.hideCard = "none" == t.cards || "hidden" == t.cards, t.hideThread = "none" == t.conversation || "hidden" == t.conversation)
|
3495 |
-
}), r.apply(this, arguments)
|
3496 |
-
});
|
3497 |
-
t.exports = {createTweet: a, createTweetEmbed: a, createVideo: a}
|
3498 |
-
}, function (t, e, n) {
|
3499 |
-
var r = n(0), i = n(69), o = n(17), s = o(["url"], {type: "share"}, i),
|
3500 |
-
a = o(["buttonHashtag"], {type: "hashtag"}, i), u = o(["screenName"], {type: "mention"}, i);
|
3501 |
-
|
3502 |
-
function c(t) {
|
3503 |
-
return function () {
|
3504 |
-
return r.toRealArray(arguments).slice(1).forEach(function (t) {
|
3505 |
-
r.isType("object", t) && (t.screenName = t.screenName || t.screen_name, t.buttonHashtag = t.buttonHashtag || t.button_hashtag || t.hashtag)
|
3506 |
-
}), t.apply(this, arguments)
|
3507 |
-
}
|
3508 |
-
}
|
3509 |
-
|
3510 |
-
t.exports = {createShareButton: c(s), createHashtagButton: c(a), createMentionButton: c(u)}
|
3511 |
-
}, function (t, e, n) {
|
3512 |
-
var r, i, o, s = n(4), a = n(1), u = 0, c = [], d = s.createElement("a");
|
3513 |
-
|
3514 |
-
function l() {
|
3515 |
-
var t, e;
|
3516 |
-
for (u = 1, t = 0, e = c.length; t < e; t++) c[t]()
|
3517 |
-
}
|
3518 |
-
|
3519 |
-
/^loade|c/.test(s.readyState) && (u = 1), s.addEventListener && s.addEventListener("DOMContentLoaded", i = function () {
|
3520 |
-
s.removeEventListener("DOMContentLoaded", i, !1), l()
|
3521 |
-
}, !1), d.doScroll && s.attachEvent("onreadystatechange", r = function () {
|
3522 |
-
/^c/.test(s.readyState) && (s.detachEvent("onreadystatechange", r), l())
|
3523 |
-
}), o = d.doScroll ? function (t) {
|
3524 |
-
a.self != a.top ? u ? t() : c.push(t) : function () {
|
3525 |
-
try {
|
3526 |
-
d.doScroll("left")
|
3527 |
-
} catch (e) {
|
3528 |
-
return setTimeout(function () {
|
3529 |
-
o(t)
|
3530 |
-
}, 50)
|
3531 |
-
}
|
3532 |
-
t()
|
3533 |
-
}()
|
3534 |
-
} : function (t) {
|
3535 |
-
u ? t() : c.push(t)
|
3536 |
-
}, t.exports = o
|
3537 |
-
}, function (t, e, n) {
|
3538 |
-
var r = n(44), i = n(9);
|
3539 |
-
t.exports = function () {
|
3540 |
-
i.set("buildVersion", r.version)
|
3541 |
-
}
|
3542 |
-
}, function (t, e, n) {
|
3543 |
-
n(165), n(85), n(168)
|
3544 |
-
}, function (t, e, n) {
|
3545 |
-
var r = n(166), i = n(29), o = n(70), s = new r, a = function (t) {
|
3546 |
-
t.widgets && 1 === t.widgets.length && (s.start(), i.emitter.unbind(i.ALL_WIDGETS_RENDER_START, a))
|
3547 |
-
}, u = function (t) {
|
3548 |
-
var e;
|
3549 |
-
t.widgets && 1 === t.widgets.length && (e = t.widgets[0], s.end(), e.dataset && e.dataset.tweetId && o({
|
3550 |
-
duration: s.duration(),
|
3551 |
-
namespace: {element: "tweet", action: "render"},
|
3552 |
-
widgetIds: [e.dataset.tweetId]
|
3553 |
-
})), i.emitter.unbind(i.ALL_WIDGETS_RENDER_END, u)
|
3554 |
-
};
|
3555 |
-
i.emitter.bind(i.ALL_WIDGETS_RENDER_START, a), i.emitter.bind(i.ALL_WIDGETS_RENDER_END, u)
|
3556 |
-
}, function (t, e, n) {
|
3557 |
-
var r = n(167);
|
3558 |
-
|
3559 |
-
function i() {
|
3560 |
-
}
|
3561 |
-
|
3562 |
-
i.prototype.start = function () {
|
3563 |
-
this._startTime = r()
|
3564 |
-
}, i.prototype.end = function () {
|
3565 |
-
this._duration = r() - this._startTime
|
3566 |
-
}, i.prototype.duration = function () {
|
3567 |
-
return this._duration
|
3568 |
-
}, t.exports = i
|
3569 |
-
}, function (t, e, n) {
|
3570 |
-
var r = n(1);
|
3571 |
-
t.exports = function () {
|
3572 |
-
return r.performance && r.performance.now ? r.performance.now() : Date.now()
|
3573 |
-
}
|
3574 |
-
}, function (t, e, n) {
|
3575 |
-
var r = n(29), i = n(70), o = n(169), s = n(3), a = n(1), u = n(0), c = n(21), d = n(62);
|
3576 |
-
|
3577 |
-
function l(t) {
|
3578 |
-
return t.performance.getEntriesByType("resource").filter(function (t) {
|
3579 |
-
return s.isTwimgURL(t.name) || s.isTwitterURL(t.name)
|
3580 |
-
}).reduce(function (t, e) {
|
3581 |
-
return t[e.name] = e.duration, t
|
3582 |
-
}, {})
|
3583 |
-
}
|
3584 |
-
|
3585 |
-
r.emitter.bind(r.ALL_WIDGETS_AND_IMAGES_LOADED, function (t) {
|
3586 |
-
var e, n, r = [];
|
3587 |
-
c.hasPerformanceInformation() && (e = l(a), d.isSupported() || (r = function (t) {
|
3588 |
-
return t.reduce(function (t, e) {
|
3589 |
-
return u.aug(t, l(e.contentDocument.defaultView))
|
3590 |
-
}, {})
|
3591 |
-
}(t)), n = u.aug({}, e, r), Object.keys(o).forEach(function (t) {
|
3592 |
-
!function (t, e, n) {
|
3593 |
-
var r = Object.keys(t).reduce(function (e, r) {
|
3594 |
-
return n(r) ? e + t[r] : e
|
3595 |
-
}, 0);
|
3596 |
-
i({duration: r, namespace: {element: e, action: "resource"}})
|
3597 |
-
}(n, t, o[t])
|
3598 |
-
}))
|
3599 |
-
})
|
3600 |
-
}, function (t, e, n) {
|
3601 |
-
var r = n(3), i = {
|
3602 |
-
all: function () {
|
3603 |
-
return !0
|
3604 |
-
}, image: function (t) {
|
3605 |
-
return r.isTwimgURL(t)
|
3606 |
-
}, settings: function (t) {
|
3607 |
-
return r.isSettingsURL(t)
|
3608 |
-
}, widget_iframe: function (t) {
|
3609 |
-
return r.isWidgetIframeURL(t)
|
3610 |
-
}
|
3611 |
-
};
|
3612 |
-
t.exports = i
|
3613 |
-
}])));
|
3614 |
-
}
|
3615 |
-
});
|
3616 |
-
|
3617 |
-
|
3618 |
//Runs every time new tweets are loaded
|
3619 |
function ctfScripts($ctf) {
|
3620 |
$ctf.addClass('ctf_is_initialized');
|
|
|
|
|
|
|
|
|
|
|
|
|
3621 |
//Loop through each newly loaded tweet
|
3622 |
$ctf.find('.ctf-item.ctf-new').each(function () {
|
3623 |
|
@@ -3763,13 +174,6 @@ if(!ctf_js_exists){
|
|
3763 |
//Change colors of some items to match tweet text
|
3764 |
$ctf.find('.ctf-author-name, .ctf-tweet-date, .ctf-author-screenname, .ctf-twitterlink, .ctf-author-box-link, .ctf-retweet-text, .ctf-quoted-tweet').css('color', $ctf.find('.ctf-tweet-text').css('color'));
|
3765 |
|
3766 |
-
//Header profile pic hover
|
3767 |
-
$ctf.find('.ctf-header .ctf-header-link').hover(function () {
|
3768 |
-
$ctf.find('.ctf-header .ctf-header-img-hover').fadeIn(200);
|
3769 |
-
}, function () {
|
3770 |
-
$ctf.find('.ctf-header .ctf-header-img-hover').stop().fadeOut(600);
|
3771 |
-
});
|
3772 |
-
|
3773 |
$ctf.find('.ctf_more').unbind('click').bind('click', function (e) {
|
3774 |
e.preventDefault();
|
3775 |
$(this).hide().next('.ctf_remaining').show();
|
@@ -3862,12 +266,198 @@ if(!ctf_js_exists){
|
|
3862 |
});
|
3863 |
|
3864 |
$ctf.find('.ctf-author-box-link p:empty').remove();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3865 |
}); // end .cff each loop
|
|
|
|
|
3866 |
}
|
3867 |
|
3868 |
jQuery(document).ready(function($) {
|
3869 |
ctf_init();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3870 |
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3871 |
})(jQuery);
|
3872 |
|
3873 |
|
4 |
(function ($) {
|
5 |
|
6 |
window.ctf_init = function() {
|
7 |
+
window.ctfObject = {};
|
8 |
+
if ($('.ctf').length
|
9 |
+
&& typeof $('.ctf').first().attr('ctf-gdpr') !== 'undefined') {
|
10 |
+
window.ctfObject.consentGiven = false;
|
11 |
+
window.ctfObject.gdpr = true;
|
12 |
+
} else {
|
13 |
+
window.ctfObject.consentGiven = true;
|
14 |
+
window.ctfObject.gdpr = false;
|
15 |
+
}
|
16 |
|
17 |
+
if ($('.ctf').length <= $('.ctf_is_initialized').length) {
|
18 |
+
return;
|
19 |
+
}
|
20 |
+
if (window.ctfObject.consentGiven) {
|
21 |
+
ctfMaybeAddIntents();
|
22 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
23 |
//Runs every time new tweets are loaded
|
24 |
function ctfScripts($ctf) {
|
25 |
$ctf.addClass('ctf_is_initialized');
|
26 |
+
|
27 |
+
if (ctfCheckConsent()) {
|
28 |
+
ctfRemovePrivacyFeatures($ctf);
|
29 |
+
} else {
|
30 |
+
ctfApplyPrivacyFeatures($ctf);
|
31 |
+
}
|
32 |
//Loop through each newly loaded tweet
|
33 |
$ctf.find('.ctf-item.ctf-new').each(function () {
|
34 |
|
174 |
//Change colors of some items to match tweet text
|
175 |
$ctf.find('.ctf-author-name, .ctf-tweet-date, .ctf-author-screenname, .ctf-twitterlink, .ctf-author-box-link, .ctf-retweet-text, .ctf-quoted-tweet').css('color', $ctf.find('.ctf-tweet-text').css('color'));
|
176 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
177 |
$ctf.find('.ctf_more').unbind('click').bind('click', function (e) {
|
178 |
e.preventDefault();
|
179 |
$(this).hide().next('.ctf_remaining').show();
|
266 |
});
|
267 |
|
268 |
$ctf.find('.ctf-author-box-link p:empty').remove();
|
269 |
+
setTimeout(function () {
|
270 |
+
if (ctfCheckConsent()) {
|
271 |
+
ctfRemovePrivacyFeatures($ctf);
|
272 |
+
} else {
|
273 |
+
ctfApplyPrivacyFeatures($ctf);
|
274 |
+
}
|
275 |
+
}, 500);
|
276 |
}); // end .cff each loop
|
277 |
+
|
278 |
+
|
279 |
}
|
280 |
|
281 |
jQuery(document).ready(function($) {
|
282 |
ctf_init();
|
283 |
+
|
284 |
+
// Cookie Notice by dFactory
|
285 |
+
$('#cookie-notice a').click(function() {
|
286 |
+
setTimeout(function() {
|
287 |
+
ctfAterConsentToggled();
|
288 |
+
},1000);
|
289 |
+
});
|
290 |
+
|
291 |
+
// Cookie Notice by dFactory
|
292 |
+
$('#cookie-law-info-bar a').click(function() {
|
293 |
+
setTimeout(function() {
|
294 |
+
ctfAterConsentToggled();
|
295 |
+
},1000);
|
296 |
+
});
|
297 |
+
|
298 |
+
// GDPR Cookie Consent by WebToffee
|
299 |
+
$('.cli-user-preference-checkbox').click(function(){
|
300 |
+
ctfAterConsentToggled();
|
301 |
+
});
|
302 |
+
|
303 |
+
// Cookiebot
|
304 |
+
$(window).on('CookiebotOnAccept', function (event) {
|
305 |
+
ctfAterConsentToggled();
|
306 |
+
});
|
307 |
+
|
308 |
+
// Complianz by Really Simple Plugins
|
309 |
+
$(document).on('cmplzAcceptAll', function (event) {
|
310 |
+
ctfAterConsentToggled();
|
311 |
+
});
|
312 |
+
|
313 |
+
// Complianz by Really Simple Plugins
|
314 |
+
$(document).on('cmplzRevoke', function (event) {
|
315 |
+
ctfAterConsentToggled();
|
316 |
+
});
|
317 |
+
|
318 |
+
// Borlabs Cookie by Borlabs
|
319 |
+
$(document).on('borlabs-cookie-consent-saved', function (event) {
|
320 |
+
ctfAterConsentToggled();
|
321 |
+
});
|
322 |
});
|
323 |
+
|
324 |
+
function ctfCheckConsent() {
|
325 |
+
if (window.ctfObject.consentGiven || !window.ctfObject.gdpr) {
|
326 |
+
return true;
|
327 |
+
}
|
328 |
+
if (typeof CLI_Cookie !== "undefined") { // GDPR Cookie Consent by WebToffee
|
329 |
+
if (CLI_Cookie.read(CLI_ACCEPT_COOKIE_NAME) !== null) {
|
330 |
+
window.ctfObject.consentGiven = CLI_Cookie.read('cookielawinfo-checkbox-non-necessary') === 'yes';
|
331 |
+
}
|
332 |
+
|
333 |
+
} else if (typeof window.cnArgs !== "undefined") { // Cookie Notice by dFactory
|
334 |
+
var value = "; " + document.cookie,
|
335 |
+
parts = value.split( '; cookie_notice_accepted=' );
|
336 |
+
|
337 |
+
if ( parts.length === 2 ) {
|
338 |
+
var val = parts.pop().split( ';' ).shift();
|
339 |
+
|
340 |
+
window.ctfObject.consentGiven = (val === 'true');
|
341 |
+
}
|
342 |
+
} else if (typeof window.cookieconsent !== 'undefined') { // Complianz by Really Simple Plugins
|
343 |
+
window.ctfObject.consentGiven = ctfCmplzGetCookie('complianz_consent_status') === 'allow';
|
344 |
+
} else if (typeof window.Cookiebot !== "undefined") { // Cookiebot by Cybot A/S
|
345 |
+
window.ctfObject.consentGiven = Cookiebot.consented;
|
346 |
+
} else if (typeof window.BorlabsCookie !== 'undefined') { // Borlabs Cookie by Borlabs
|
347 |
+
window.ctfObject.consentGiven = window.BorlabsCookie.checkCookieConsent('twitter');
|
348 |
+
}
|
349 |
+
|
350 |
+
var evt = jQuery.Event('ctfcheckconsent');
|
351 |
+
evt.feed = this;
|
352 |
+
jQuery(window).trigger(evt);
|
353 |
+
|
354 |
+
return window.ctfObject.consentGiven; // GDPR not enabled
|
355 |
+
}
|
356 |
+
|
357 |
+
function ctfApplyPrivacyFeatures($ctf) {
|
358 |
+
if (!$ctf.find('.ctf-hide-avatar').length || $ctf.find('.ctf-hide-avatar.ctf-no-consent').length) {
|
359 |
+
$ctf.find('.ctf-item').addClass('ctf-hide-avatar ctf-no-consent');
|
360 |
+
}
|
361 |
+
if ($('.ctf-header-img span').length) {
|
362 |
+
$('.ctf-header-img').addClass('ctf-no-consent');
|
363 |
+
}
|
364 |
+
}
|
365 |
+
|
366 |
+
function ctfRemovePrivacyFeatures($ctf) {
|
367 |
+
ctfMaybeAddIntents();
|
368 |
+
$ctf.find('.ctf-item.ctf-no-consent').removeClass('ctf-hide-avatar');
|
369 |
+
$ctf.find('.ctf-author-avatar').each(function() {
|
370 |
+
$(this).find('span').replaceWith('<img src="'+$(this).find('span').attr('data-avatar')+'" alt="'+$(this).find('span').attr('data-alt')+'" width="48" height="48">');
|
371 |
+
});
|
372 |
+
$ctf.find('.ctf-header-img').each(function() {
|
373 |
+
$(this).find('span').replaceWith('<img src="'+$(this).find('span').attr('data-avatar')+'" alt="'+$(this).find('span').attr('data-alt')+'" width="48" height="48">');
|
374 |
+
});
|
375 |
+
$ctf.find('.ctf-no-consent').removeClass('ctf-no-consent');
|
376 |
+
//Header profile pic hover
|
377 |
+
$ctf.find('.ctf-header .ctf-header-link').hover(function () {
|
378 |
+
$ctf.find('.ctf-header .ctf-header-img-hover').fadeIn(200);
|
379 |
+
}, function () {
|
380 |
+
$ctf.find('.ctf-header .ctf-header-img-hover').stop().fadeOut(600);
|
381 |
+
});
|
382 |
+
}
|
383 |
+
|
384 |
+
function ctfAterConsentToggled() {
|
385 |
+
if (ctfCheckConsent()) {
|
386 |
+
$('.ctf').each(function () {
|
387 |
+
ctfRemovePrivacyFeatures($(this));
|
388 |
+
});
|
389 |
+
}
|
390 |
+
}
|
391 |
+
|
392 |
+
function ctfMaybeAddIntents() {
|
393 |
+
if (typeof window.ctfObject.intentsIncluded === 'undefined') {
|
394 |
+
window.ctfObject.intentsIncluded = false;
|
395 |
+
}
|
396 |
+
|
397 |
+
$('.ctf').each(function () {
|
398 |
+
if (!window.ctfObject.intentsIncluded && typeof $(this).attr('data-ctfintents') !== 'undefined') {
|
399 |
+
window.ctfObject.intentsIncluded = true;
|
400 |
+
(function() {
|
401 |
+
if (window.__twitterIntentHandler) return;
|
402 |
+
var intentRegex = /twitter\.com\/intent\/(\w+)/,
|
403 |
+
windowOptions = 'scrollbars=yes,resizable=yes,toolbar=no,location=yes',
|
404 |
+
width = 550,
|
405 |
+
height = 420,
|
406 |
+
winHeight = screen.height,
|
407 |
+
winWidth = screen.width;
|
408 |
+
|
409 |
+
function handleIntent(e) {
|
410 |
+
e = e || window.event;
|
411 |
+
var target = e.target || e.srcElement,
|
412 |
+
m, left, top;
|
413 |
+
|
414 |
+
while (target && target.nodeName.toLowerCase() !== 'a') {
|
415 |
+
target = target.parentNode;
|
416 |
+
}
|
417 |
+
|
418 |
+
if (target && target.nodeName.toLowerCase() === 'a' && target.href) {
|
419 |
+
m = target.href.match(intentRegex);
|
420 |
+
if (m) {
|
421 |
+
left = Math.round((winWidth / 2) - (width / 2));
|
422 |
+
top = 0;
|
423 |
+
|
424 |
+
if (winHeight > height) {
|
425 |
+
top = Math.round((winHeight / 2) - (height / 2));
|
426 |
+
}
|
427 |
+
|
428 |
+
window.open(target.href, 'intent', windowOptions + ',width=' + width +
|
429 |
+
',height=' + height + ',left=' + left + ',top=' + top);
|
430 |
+
e.returnValue = false;
|
431 |
+
e.preventDefault && e.preventDefault();
|
432 |
+
}
|
433 |
+
}
|
434 |
+
}
|
435 |
+
|
436 |
+
if (document.addEventListener) {
|
437 |
+
document.addEventListener('click', handleIntent, false);
|
438 |
+
} else if (document.attachEvent) {
|
439 |
+
document.attachEvent('onclick', handleIntent);
|
440 |
+
}
|
441 |
+
window.__twitterIntentHandler = true;
|
442 |
+
}());
|
443 |
+
}
|
444 |
+
});
|
445 |
+
}
|
446 |
+
|
447 |
+
function ctfCmplzGetCookie(cname) {
|
448 |
+
var name = cname + "="; //Create the cookie name variable with cookie name concatenate with = sign
|
449 |
+
var cArr = window.document.cookie.split(';'); //Create cookie array by split the cookie by ';'
|
450 |
+
|
451 |
+
//Loop through the cookies and return the cookie value if it find the cookie name
|
452 |
+
for (var i = 0; i < cArr.length; i++) {
|
453 |
+
var c = cArr[i].trim();
|
454 |
+
//If the name is the cookie string at position 0, we found the cookie and return the cookie value
|
455 |
+
if (c.indexOf(name) == 0)
|
456 |
+
return c.substring(name.length, c.length);
|
457 |
+
}
|
458 |
+
|
459 |
+
return "";
|
460 |
+
}
|
461 |
})(jQuery);
|
462 |
|
463 |
|
js/ctf-scripts.min.js
CHANGED
@@ -1 +1 @@
|
|
1 |
-
var ctf_js_exists=void 0!==ctf_js_exists;ctf_js_exists||function(t){window.ctf_init=function(){if(!(t(".ctf").length<=t(".ctf_is_initialized").length)){var e=!1;t(".ctf").each(function(){t(this).hasClass("ctf_is_initialized")||e||void 0===t(this).attr("data-ctfintents")||(e=!0,Function&&Function.prototype&&Function.prototype.bind&&(/MSIE ([6789]|10)/.test(navigator.userAgent)||(window.__twttr&&window.__twttr.widgets&&window.__twttr.widgets.loaded&&window.twttr.widgets.load&&window.twttr.widgets.load(),window.__twttr&&window.__twttr.widgets&&window.__twttr.widgets.init||function(t){function e(e){for(var n,i,o=e[0],u=e[1],a=0,c=[];a<o.length;a++)i=o[a],r[i]&&c.push(r[i][0]),r[i]=0;for(n in u)Object.prototype.hasOwnProperty.call(u,n)&&(t[n]=u[n]);for(s&&s(e);c.length;)c.shift()()}var n={},r={1:0};function i(e){if(n[e])return n[e].exports;var r=n[e]={i:e,l:!1,exports:{}};return t[e].call(r.exports,r,r.exports,i),r.l=!0,r.exports}i.e=function(t){var e=[],n=r[t];if(0!==n)if(n)e.push(n[2]);else{var o=new Promise(function(e,i){n=r[t]=[e,i]});e.push(n[2]=o);var u,a=document.getElementsByTagName("head")[0],s=document.createElement("script");s.charset="utf-8",s.timeout=120,i.nc&&s.setAttribute("nonce",i.nc),s.src=function(t){return i.p+"js/"+({0:"moment~timeline~tweet",2:"dm_button",3:"button",4:"moment",5:"periscope_on_air",6:"timeline",7:"tweet"}[t]||t)+"."+{0:"ec04a6cb5ba879d0e0db41f211639fdf",2:"6542a7407a2eccac51f5c5e0fac5bb80",3:"d941c9a422e2e3faf474b82a1f39e936",4:"0a3cc02317b85399478995c763a1296c",5:"d26526abe761c4d8d8d71cf0ec565649",6:"0a7b4db67eacd23e35c5ce02e6ea3470",7:"b2d749028be81f16d9cb4994d9692feb"}[t]+".js"}(t),u=function(e){s.onerror=s.onload=null,clearTimeout(c);var n=r[t];if(0!==n){if(n){var i=e&&("load"===e.type?"missing":e.type),o=e&&e.target&&e.target.src,u=new Error("Loading chunk "+t+" failed.\n("+i+": "+o+")");u.type=i,u.request=o,n[1](u)}r[t]=void 0}};var c=setTimeout(function(){u({type:"timeout",target:s})},12e4);s.onerror=s.onload=u,a.appendChild(s)}return Promise.all(e)},i.m=t,i.c=n,i.d=function(t,e,n){i.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},i.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},i.t=function(t,e){if(1&e&&(t=i(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(i.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var r in t)i.d(n,r,function(e){return t[e]}.bind(null,r));return n},i.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return i.d(e,"a",e),e},i.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},i.p="https://platform.twitter.com/",i.oe=function(t){throw console.error(t),t};var o=window.__twttrll=window.__twttrll||[],u=o.push.bind(o);o.push=e,o=o.slice();for(var a=0;a<o.length;a++)e(o[a]);var s=u;i(i.s=94)}([function(t,e,n){var r=n(1);function i(t,e){var n;for(n in t)t.hasOwnProperty&&!t.hasOwnProperty(n)||e(n,t[n]);return t}function o(t){return{}.toString.call(t).match(/\s([a-zA-Z]+)/)[1].toLowerCase()}function u(t){return t===Object(t)}function a(t){var e;if(!u(t))return!1;if(Object.keys)return!Object.keys(t).length;for(e in t)if(t.hasOwnProperty(e))return!1;return!0}function s(t){return t?Array.prototype.slice.call(t):[]}t.exports={aug:function(t){return s(arguments).slice(1).forEach(function(e){i(e,function(e,n){t[e]=n})}),t},async:function(t,e){r.setTimeout(function(){t.call(e||null)},0)},compact:function t(e){return i(e,function(n,r){u(r)&&(t(r),a(r)&&delete e[n]),null!=r&&""!==r||delete e[n]}),e},contains:function(t,e){return!(!t||!t.indexOf)&&t.indexOf(e)>-1},forIn:i,isObject:u,isEmptyObject:a,toType:o,isType:function(t,e){return t==o(e)},toRealArray:s}},function(t,e){t.exports=window},function(t,e,n){var r=n(6);t.exports=function(){var t=this;this.promise=new r(function(e,n){t.resolve=e,t.reject=n})}},function(t,e,n){var r=n(11),i=/(?:^|(?:https?:)?\/\/(?:www\.)?twitter\.com(?::\d+)?(?:\/intent\/(?:follow|user)\/?\?screen_name=|(?:\/#!)?\/))@?([\w]+)(?:\?|&|$)/i,o=/(?:^|(?:https?:)?\/\/(?:www\.)?twitter\.com(?::\d+)?\/(?:#!\/)?[\w_]+\/status(?:es)?\/)(\d+)/i,u=/^http(s?):\/\/(\w+\.)*twitter\.com([:\/]|$)/i,a=/^http(s?):\/\/pbs\.twimg\.com\//,s=/^#?([^.,<>!\s\/#\-()'"]+)$/,c=/twitter\.com(?::\d{2,4})?\/intent\/(\w+)/,d=/^https?:\/\/(?:www\.)?twitter\.com\/\w+\/timelines\/(\d+)/i,f=/^https?:\/\/(?:www\.)?twitter\.com\/i\/moments\/(\d+)/i,l=/^https?:\/\/(?:www\.)?twitter\.com\/(\w+)\/(?:likes|favorites)/i,h=/^https?:\/\/(?:www\.)?twitter\.com\/(\w+)\/lists\/([\w-%]+)/i,p=/^https?:\/\/(?:www\.)?twitter\.com\/i\/live\/(\d+)/i,m=/^https?:\/\/syndication\.twitter\.com\/settings/i,v=/^https?:\/\/(localhost|platform)\.twitter\.com(?::\d+)?\/widgets\/widget_iframe\.(.+)/i,g=/^https?:\/\/(?:www\.)?twitter\.com\/search\?q=(\w+)/i;function w(t){return"string"==typeof t&&i.test(t)&&RegExp.$1.length<=20}function y(t){if(w(t))return RegExp.$1}function b(t,e){var n=r.decodeURL(t);if(e=e||!1,n.screen_name=y(t),n.screen_name)return r.url("https://twitter.com/intent/"+(e?"follow":"user"),n)}function E(t){return"string"==typeof t&&s.test(t)}function _(t){return"string"==typeof t&&o.test(t)}t.exports={isHashTag:E,hashTag:function(t,e){if(e=void 0===e||e,E(t))return(e?"#":"")+RegExp.$1},isScreenName:w,screenName:y,isStatus:_,status:function(t){return _(t)&&RegExp.$1},intentForProfileURL:b,intentForFollowURL:function(t){return b(t,!0)},isTwitterURL:function(t){return u.test(t)},isTwimgURL:function(t){return a.test(t)},isIntentURL:function(t){return c.test(t)},isSettingsURL:function(t){return m.test(t)},isWidgetIframeURL:function(t){return v.test(t)},isSearchUrl:function(t){return g.test(t)},regexen:{profile:i},momentId:function(t){return f.test(t)&&RegExp.$1},collectionId:function(t){return d.test(t)&&RegExp.$1},intentType:function(t){return c.test(t)&&RegExp.$1},likesScreenName:function(t){return l.test(t)&&RegExp.$1},listScreenNameAndSlug:function(t){var e,n,r;if(h.test(t)){e=RegExp.$1,n=RegExp.$2;try{r=decodeURIComponent(n)}catch(t){}return{ownerScreenName:e,slug:r||n}}return!1},eventId:function(t){return p.test(t)&&RegExp.$1}}},function(t,e){t.exports=document},function(t,e,n){var r=n(0),i=[!0,1,"1","on","ON","true","TRUE","yes","YES"],o=[!1,0,"0","off","OFF","false","FALSE","no","NO"];function u(t){return null!=t&&""!==t}function a(t){return c(t)&&t%1==0}function s(t){return c(t)&&!a(t)}function c(t){return u(t)&&!isNaN(t)}function d(t){return r.contains(o,t)}function f(t){return r.contains(i,t)}t.exports={hasValue:u,isInt:a,isFloat:s,isNumber:c,isString:function(t){return"string"===r.toType(t)},isArray:function(t){return u(t)&&"array"==r.toType(t)},isTruthValue:f,isFalseValue:d,asInt:function(t){if(a(t))return parseInt(t,10)},asFloat:function(t){if(s(t))return t},asNumber:function(t){if(c(t))return t},asBoolean:function(t){return!(!u(t)||!f(t)&&(d(t)||!t))}}},function(t,e,n){var r=n(1),i=n(21),o=n(48);i.hasPromiseSupport()||(r.Promise=o),t.exports=r.Promise},function(t,e,n){var r=n(0);t.exports=function(t,e){var n=Array.prototype.slice.call(arguments,2);return function(){var i=r.toRealArray(arguments);return t.apply(e,n.concat(i))}}},function(t,e){t.exports=location},function(t,e,n){var r=n(50);t.exports=new r("__twttr")},function(t,e,n){var r=n(0),i=/\b([\w-_]+)\b/g;function o(t){return new RegExp("\\b"+t+"\\b","g")}function u(t,e){t.classList?t.classList.add(e):o(e).test(t.className)||(t.className+=" "+e)}function a(t,e){t.classList?t.classList.remove(e):t.className=t.className.replace(o(e)," ")}function s(t,e){return t.classList?t.classList.contains(e):r.contains(c(t),e)}function c(t){return r.toRealArray(t.classList?t.classList:t.className.match(i))}t.exports={add:u,remove:a,replace:function(t,e,n){if(t.classList&&s(t,e))return a(t,e),void u(t,n);t.className=t.className.replace(o(e),n)},toggle:function(t,e,n){return void 0===n&&t.classList&&t.classList.toggle?t.classList.toggle(e,n):(n?u(t,e):a(t,e),n)},present:s,list:c}},function(t,e,n){var r=n(5),i=n(0);function o(t){return encodeURIComponent(t).replace(/\+/g,"%2B").replace(/'/g,"%27")}function u(t){return decodeURIComponent(t)}function a(t){var e=[];return i.forIn(t,function(t,n){var u=o(t);i.isType("array",n)||(n=[n]),n.forEach(function(t){r.hasValue(t)&&e.push(u+"="+o(t))})}),e.sort().join("&")}function s(t){var e={};return t?(t.split("&").forEach(function(t){var n=t.split("="),r=u(n[0]),o=u(n[1]);if(2==n.length){if(!i.isType("array",e[r]))return r in e?(e[r]=[e[r]],void e[r].push(o)):void(e[r]=o);e[r].push(o)}}),e):{}}t.exports={url:function(t,e){return a(e).length>0?i.contains(t,"?")?t+"&"+a(e):t+"?"+a(e):t},decodeURL:function(t){var e=t&&t.split("?");return 2==e.length?s(e[1]):{}},decode:s,encode:a,encodePart:o,decodePart:u}},function(t,e,n){var r=n(8),i=n(1),o=n(0),u={},a=o.contains(r.href,"tw_debug=true");function s(){return i.performance&&+i.performance.now()||+new Date}function c(t,e){if(i.console&&i.console[t])switch(e.length){case 1:i.console[t](e[0]);break;case 2:i.console[t](e[0],e[1]);break;case 3:i.console[t](e[0],e[1],e[2]);break;case 4:i.console[t](e[0],e[1],e[2],e[3]);break;case 5:i.console[t](e[0],e[1],e[2],e[3],e[4]);break;default:0!==e.length&&i.console.warn&&i.console.warn("too many params passed to logger."+t)}}t.exports={devError:function(){},devInfo:function(){},devObject:function(t,e){},publicError:function(){c("error",o.toRealArray(arguments))},publicLog:function(){c("info",o.toRealArray(arguments))},time:function(t){a&&(u[t]=s())},timeEnd:function(t){a&&u[t]&&(s(),u[t])}}},function(t,e,n){var r=n(20),i=n(5),o=n(11),u=n(0),a=n(119);t.exports=function(t){var e=t.href&&t.href.split("?")[1],n=e?o.decode(e):{},s={lang:a(t),width:t.getAttribute("data-width")||t.getAttribute("width"),height:t.getAttribute("data-height")||t.getAttribute("height"),related:t.getAttribute("data-related"),partner:t.getAttribute("data-partner")};return i.asBoolean(t.getAttribute("data-dnt"))&&r.setOn(),u.forIn(s,function(t,e){var r=n[t];n[t]=i.hasValue(r)?r:e}),u.compact(n)}},function(t,e,n){var r=n(81),i=n(23);t.exports=function(){var t="data-twitter-extracted-"+i.generate();return function(e,n){return r(e,n).filter(function(e){return!e.hasAttribute(t)}).map(function(e){return e.setAttribute(t,"true"),e})}}},function(t,e){function n(t,e,n,r,i,o,u){this.factory=t,this.Sandbox=e,this.srcEl=o,this.targetEl=i,this.parameters=r,this.className=n,this.options=u}n.prototype.destroy=function(){this.srcEl=this.targetEl=null},t.exports=n},function(t,e){t.exports={DM_BUTTON:"twitter-dm-button",FOLLOW_BUTTON:"twitter-follow-button",HASHTAG_BUTTON:"twitter-hashtag-button",MENTION_BUTTON:"twitter-mention-button",MOMENT:"twitter-moment",PERISCOPE:"periscope-on-air",SHARE_BUTTON:"twitter-share-button",TIMELINE:"twitter-timeline",TWEET:"twitter-tweet"}},function(t,e,n){var r=n(6),i=n(20),o=n(53),u=n(52),a=n(35),s=n(5),c=n(0);t.exports=function(t,e,n){var d;return e=e||{},d="ƒ("+(t=t||[]).join(", ")+", target, [options]);",function(){var f,l,h,p,m=Array.prototype.slice.apply(arguments,[0,t.length]),v=Array.prototype.slice.apply(arguments,[t.length]);return v.forEach(function(t){t&&(t.nodeType!==Node.ELEMENT_NODE?c.isType("function",t)?f=t:c.isType("object",t)&&(l=t):h=t)}),m.length!==t.length||0===v.length?(f&&c.async(function(){f(!1)}),r.reject(new Error("Not enough parameters. Expected: "+d))):h?(l=c.aug({},l||{},e),t.forEach(function(t){l[t]=m.shift()}),s.asBoolean(l.dnt)&&i.setOn(),p=a.getExperiments().then(function(t){return o.addWidget(n(l,h,void 0,u.isHorizonTweetEnabled(t)))}),f&&p.then(f,function(){f(!1)}),p):(f&&c.async(function(){f(!1)}),r.reject(new Error("No target element specified. Expected: "+d)))}}},function(t,e,n){var r=n(102),i=n(2),o=n(0);function u(t,e){return function(){try{e.resolve(t.call(this))}catch(t){e.reject(t)}}}t.exports={sync:function(t,e){t.call(e)},read:function(t,e){var n=new i;return r.read(u(t,n),e),n.promise},write:function(t,e){var n=new i;return r.write(u(t,n),e),n.promise},defer:function(t,e,n){var a=new i;return o.isType("function",t)&&(n=e,e=t,t=1),r.defer(t,u(e,a),n),a.promise}}},function(t,e,n){var r=n(9),i=["https://syndication.twitter.com","https://cdn.syndication.twimg.com","https://localhost.twitter.com:8444"],o=["https://syndication.twitter.com","https://localhost.twitter.com:8445"],u=["https://platform.twitter.com/embed/index.html","https://localhost.twitter.com:8080",/https:\/\/ton\.smf1\.twitter\.com\/syndication-internal\/embed-iframe\/[0-9A-Za-z_-]+\/app\/index\.html/],a=function(t,e){return t.some(function(t){return t instanceof RegExp?t.test(e):t===e})},s=function(){var t=r.get("backendHost");return t&&a(i,t)?t:"https://cdn.syndication.twimg.com"},c=function(){var t=r.get("settingsSvcHost");return t&&a(o,t)?t:"https://syndication.twitter.com"};function d(t,e){var n=[t];return e.forEach(function(t){n.push(function(t){var e=(t||"").toString(),n="/"===e.slice(0,1)?1:0,r="/"===e.slice(-1)?-1:void 0;return e.slice(n,r)}(t))}),n.join("/")}t.exports={cookieConsent:function(t){var e=t||[];return e.unshift("cookie/consent"),d(c(),e)},embedIframe:function(){return(t=r.get("embedIframeURL"))&&a(u,t)?t:"https://platform.twitter.com/embed/index.html";var t},eventVideo:function(t){var e=t||[];return e.unshift("video/event"),d(s(),e)},grid:function(t){var e=t||[];return e.unshift("grid/collection"),d(s(),e)},moment:function(t){var e=t||[];return e.unshift("moments"),d(s(),e)},settings:function(t){var e=t||[];return e.unshift("settings"),d(c(),e)},timeline:function(t){var e=t||[];return e.unshift("timeline"),d(s(),e)},tweetBatch:function(t){var e=t||[];return e.unshift("tweets.json"),d(s(),e)},video:function(t){var e=t||[];return e.unshift("widgets/video"),d(s(),e)}}},function(t,e,n){var r=n(4),i=n(8),o=n(38),u=n(79),a=n(5),s=n(33),c=!1,d=/https?:\/\/([^\/]+).*/i;t.exports={setOn:function(){c=!0},enabled:function(t,e){return!!(c||a.asBoolean(s.val("dnt"))||u.isUrlSensitive(e||i.host)||o.isFramed()&&u.isUrlSensitive(o.rootDocumentLocation())||(t=d.test(t||r.referrer)&&RegExp.$1)&&u.isUrlSensitive(t))}}},function(t,e,n){var r=n(4),i=n(12),o=n(95),u=n(1),a=n(0),s=o.userAgent;function c(t){return/(Trident|MSIE|Edge[\/ ]?\d)/.test(t=t||s)}t.exports={retina:function(t){return(t=t||u).devicePixelRatio?t.devicePixelRatio>=1.5:!!t.matchMedia&&t.matchMedia("only screen and (min-resolution: 144dpi)").matches},anyIE:c,ie9:function(t){return/MSIE 9/.test(t=t||s)},ie10:function(t){return/MSIE 10/.test(t=t||s)},ios:function(t){return/(iPad|iPhone|iPod)/.test(t=t||s)},android:function(t){return/^Mozilla\/5\.0 \(Linux; (U; )?Android/.test(t=t||s)},canPostMessage:function(t,e){return e=e||s,(t=t||u).postMessage&&!(c(e)&&t.opener)},touch:function(t,e,n){return e=e||o,n=n||s,"ontouchstart"in(t=t||u)||/Opera Mini/.test(n)||e.msMaxTouchPoints>0},cssTransitions:function(){var t=r.body.style;return void 0!==t.transition||void 0!==t.webkitTransition||void 0!==t.mozTransition||void 0!==t.oTransition||void 0!==t.msTransition},hasPromiseSupport:function(){return!!(u.Promise&&u.Promise.resolve&&u.Promise.reject&&u.Promise.all&&u.Promise.race&&(new u.Promise(function(e){t=e}),a.isType("function",t)));var t},hasIntersectionObserverSupport:function(){return!!u.IntersectionObserver},hasPerformanceInformation:function(){return u.performance&&u.performance.getEntriesByType},hasLocalStorageSupport:function(){try{return u.localStorage.setItem("local_storage_support_test","true"),void 0!==u.localStorage}catch(t){return i.devError("window.localStorage is not supported:",t),!1}}}},function(t,e,n){var r=n(6),i=n(2);function o(t,e){return t.then(e,e)}function u(t){return t instanceof r}t.exports={always:o,allResolved:function(t){var e;return void 0===t?r.reject(new Error("undefined is not an object")):Array.isArray(t)?(e=t.length)?new r(function(n,r){var i=0,o=[];function a(){(i+=1)===e&&(0===o.length?r():n(o))}function s(t){o.push(t),a()}t.forEach(function(t){u(t)?t.then(s,a):s(t)})}):r.resolve([]):r.reject(new Error("Type error"))},some:function(t){var e;return e=(t=t||[]).length,t=t.filter(u),e?e!==t.length?r.reject("non-Promise passed to .some"):new r(function(e,n){var r=0;function i(){(r+=1)===t.length&&n()}t.forEach(function(t){t.then(e,i)})}):r.reject("no promises passed to .some")},isPromise:u,allSettled:function(t){function e(){}return r.all((t||[]).map(function(t){return o(t,e)}))},timeout:function(t,e){var n=new i;return setTimeout(function(){n.reject(new Error("Promise timed out"))},e),t.then(function(t){n.resolve(t)},function(t){n.reject(t)}),n.promise}}},function(t,e){var n=0,r=0;t.exports={generate:function(){return"i"+String(+new Date)+Math.floor(1e5*Math.random())+n++},deterministic:function(){return"i"+String(r++)}}},function(t,e,n){var r=n(49),i=n(51),o=n(0);t.exports=o.aug(r.get("events")||{},i.Emitter)},function(t,e,n){var r=n(26),i=n(110);t.exports=r.build([i])},function(t,e,n){var r=n(40),i=n(107),o=n(7);(r=Object.create(r)).build=o(r.build,null,i),t.exports=r},function(t,e,n){var r=n(40),i=n(41),o=n(7);(r=Object.create(r)).build=o(r.build,null,i),t.exports=r},function(t,e,n){var r=n(83),i=n(75),o=n(84),u=n(8),a=n(71),s=n(74),c=n(20),d=n(5),f=n(23),l=n(0);function h(t){if(!t||!t.headers)throw new Error("unexpected response schema");return{html:t.body,config:t.config,pollInterval:1e3*parseInt(t.headers.xPolling,10)||null,maxCursorPosition:t.headers.maxPosition,minCursorPosition:t.headers.minPosition}}function p(t){if(t&&t.headers)throw new Error(t.headers.status);throw t instanceof Error?t:new Error(t)}t.exports=function(t){t.params({instanceId:{required:!0,fallback:f.deterministic},lang:{required:!0,transform:a.matchLanguage,fallback:"en"},tweetLimit:{transform:d.asInt}}),t.defineProperty("endpoint",{get:function(){throw new Error("endpoint not specified")}}),t.defineProperty("pollEndpoint",{get:function(){return this.endpoint}}),t.define("cbId",function(t){var e=t?"_new":"_old";return"tl_"+this.params.instanceId+"_"+this.id+e}),t.define("queryParams",function(){return{lang:this.params.lang,tz:s.getTimezoneOffset(),t:r(),domain:u.host,tweet_limit:this.params.tweetLimit,dnt:c.enabled()}}),t.define("fetch",function(){return i.fetch(this.endpoint,this.queryParams(),o,this.cbId()).then(h,p)}),t.define("poll",function(t,e){var n,r;return n={since_id:(t=t||{}).sinceId,max_id:t.maxId,min_position:t.minPosition,max_position:t.maxPosition},r=l.aug(this.queryParams(),n),i.fetch(this.pollEndpoint,r,o,this.cbId(e)).then(h,p)})}},function(t,e,n){var r=n(51).makeEmitter();t.exports={emitter:r,START:"start",ALL_WIDGETS_RENDER_START:"all_widgets_render_start",ALL_WIDGETS_RENDER_END:"all_widgets_render_end",ALL_WIDGETS_AND_IMAGES_LOADED:"all_widgets_and_images_loaded"}},function(t,e,n){var r=n(4),i=n(0);t.exports=function(t,e,n){var o;if(n=n||r,e=e||{},(t=t||{}).name){try{o=n.createElement('<iframe name="'+t.name+'"></iframe>')}catch(e){(o=n.createElement("iframe")).name=t.name}delete t.name}else o=n.createElement("iframe");return t.id&&(o.id=t.id,delete t.id),o.allowtransparency="true",o.scrolling="no",o.setAttribute("frameBorder",0),o.setAttribute("allowTransparency",!0),i.forIn(t,function(t,e){o.setAttribute(t,e)}),i.forIn(e,function(t,e){o.style[t]=e}),o}},function(t,e,n){var r=n(1).JSON;t.exports={stringify:r.stringify||r.encode,parse:r.parse||r.decode}},function(t,e,n){var r=n(0),i=n(43);t.exports={closest:function t(e,n,o){var u;if(n)return o=o||n&&n.ownerDocument,u=r.isType("function",e)?e:function(t){return function(e){return!!e.tagName&&i(e,t)}}(e),n===o?u(n)?n:void 0:u(n)?n:t(u,n.parentNode,o)}}},function(t,e,n){var r,i=n(4);function o(t){var e,n,o,u=0;for(r={},e=(t=t||i).getElementsByTagName("meta");e[u];u++){if(n=e[u],/^twitter:/.test(n.getAttribute("name")))o=n.getAttribute("name").replace(/^twitter:/,"");else{if(!/^twitter:/.test(n.getAttribute("property")))continue;o=n.getAttribute("property").replace(/^twitter:/,"")}r[o]=n.getAttribute("content")||n.getAttribute("value")}}o(),t.exports={init:o,val:function(t){return r[t]}}},function(t,e,n){var r=n(4),i=n(31),o=n(20),u=n(0),a=n(44),s=n(9),c=n(3),d=n(32),f=a.version,l=s.get("clientEventEndpoint")||"https://syndication.twitter.com/i/jot";function h(t){return u.aug({client:"tfw"},t||{})}function p(t,e,n){return e=e||{},u.aug({},e,{_category_:t,triggered_on:e.triggered_on||+new Date,dnt:o.enabled(n)})}t.exports={extractTermsFromDOM:function t(e,n){var r;return n=n||{},e&&e.nodeType===Node.ELEMENT_NODE?((r=e.getAttribute("data-scribe"))&&r.split(" ").forEach(function(t){var e=t.trim().split(":"),r=e[0],i=e[1];r&&i&&!n[r]&&(n[r]=i)}),t(e.parentNode,n)):n},clickEventElement:function(t){var e=d.closest("[data-expanded-url]",t),n=e&&e.getAttribute("data-expanded-url");return n&&c.isTwitterURL(n)?"twitter_url":"url"},flattenClientEventPayload:function(t,e){return u.aug({},e,{event_namespace:t})},formatGenericEventData:p,formatClientEventData:function(t,e,n){var i=t&&t.widget_origin||r.referrer;return(t=p("tfw_client_event",t,i)).client_version=f,t.format_version=void 0!==n?n:1,e||(t.widget_origin=i),t},formatClientEventNamespace:h,formatTweetAssociation:function(t,e){var n={};return(e=e||{}).association_namespace=h(t),n[1]=e,n},noticeSeen:function(t){return"notice"===t.element&&"seen"===t.action},splitLogEntry:function(t){var e,n,r,i,o;return t.item_ids&&t.item_ids.length>1?(e=Math.floor(t.item_ids.length/2),n=t.item_ids.slice(0,e),r={},i=t.item_ids.slice(e),o={},n.forEach(function(e){r[e]=t.item_details[e]}),i.forEach(function(e){o[e]=t.item_details[e]}),[u.aug({},t,{item_ids:n,item_details:r}),u.aug({},t,{item_ids:i,item_details:o})]):[t]},stringify:function(t){var e,n=Array.prototype.toJSON;return delete Array.prototype.toJSON,e=i.stringify(t),n&&(Array.prototype.toJSON=n),e},AUDIENCE_ENDPOINT:"https://syndication.twitter.com/i/jot/syndication",CLIENT_EVENT_ENDPOINT:l,RUFOUS_REDIRECT:"https://platform.twitter.com/jot.html"}},function(t,e,n){var r=n(113),i=n(116);function o(t){return r.settingsLoaded().then(function(e){return e[t]})}function u(){return o("experiments")}t.exports={shouldObtainCookieConsent:function(){return o("shouldObtainCookieConsent")},getExperiments:u,getExperiment:function(t){return u().then(function(e){if(!e[t])throw new Error("Experiment not found");return e[t]})},getActiveExperimentDataString:function(){return u().then(function(t){var e=Object.keys(t).reduce(function(e,n){var r;return t[n].version&&(r=n.split("_").slice(-1)[0],e.push(r+";"+t[n].bucket)),e},[]);return i(e.join(","))})},getExperimentKeys:function(){return u().then(function(t){return Object.keys(t)})},load:function(){r.load()}}},function(t,e,n){var r=n(10),i={},o=-1,u={};function a(t){return t.getAttribute("data-twitter-event-id")||(t.setAttribute("data-twitter-event-id",++o),o)}function s(t,e,n){var r=0,i=t&&t.length||0;for(r=0;r<i;r++)if(t[r].call(e,n,e),n.ceaseImmediately)return!1}function c(t,e,n){for(var i=n||t.target||t.srcElement,o=r.list(i).map(function(t){return"."+t}).concat(i.tagName),u=0,a=o.length;u<a;u++)if(!1===s(e[o[u]],i,t))return;t.cease||i!==this&&c.call(this,t,e,i.parentElement||i.parentNode)}function d(t){t&&t.preventDefault?t.preventDefault():t.returnValue=!1}function f(t){t&&(t.cease=!0)&&t.stopPropagation?t.stopPropagation():t.cancelBubble=!0}t.exports={stop:function(t){return f(t),d(t),!1},stopPropagation:f,stopImmediatePropagation:function(t){t&&(t.ceaseImmediately=!0,f(t),t.stopImmediatePropagation())},preventDefault:d,delegate:function(t,e,n,r){var o=a(t);i[o]=i[o]||{},i[o][e]||(i[o][e]={},function(t,e,n,r){function i(r){c.call(t,r,n[e])}!function(t,e,n,r){t.id&&(u[t.id]=u[t.id]||[],u[t.id].push({el:t,listener:e,type:n,rootId:r}))}(t,i,e,r),t.addEventListener(e,i,!1)}(t,e,i[o],o)),i[o][e][n]=i[o][e][n]||[],i[o][e][n].push(r)},simulate:function(t,e,n){var r=a(e),o=i[r]&&i[r];c.call(e,{target:n},o[t])},removeDelegatesForWidget:function(t){var e=u[t];e&&(e.forEach(function(t){t.el.removeEventListener(t.type,t.listener,!1),delete i[t.rootId]}),delete u[t])}}},function(t,e,n){var r=n(26),i=n(125);t.exports=r.build([i])},function(t,e,n){var r=n(8),i=n(78),o=n(0),u=i.getCanonicalURL()||r.href,a=u;t.exports={isFramed:function(){return u!==a},rootDocumentLocation:function(t){return t&&o.isType("string",t)&&(u=t),u},currentDocumentLocation:function(){return a}}},function(t,e,n){var r=n(77),i=n(104),o=n(80),u=n(34),a=new(n(112))(function(t){var e,n,a;if(0!==t.length){if(s(t))return c(t);n=(e=r(t,function(t){return u.noticeSeen(t.input.namespace)})).true,a=e.false,n&&n.length>0&&(n=n.slice(0,1),o.canFlushOneItem(n[0])||(n[0].input.data.message=""),c(n)),a&&(s(a)?c:function(t){i.init(),t.forEach(function(t){var e=t.input.namespace,n=t.input.data,r=t.input.offsite,o=t.input.version;i.clientEvent(e,n,r,o)}),i.flush().then(function(){t.forEach(function(t){t.taskDoneDeferred.resolve()})},function(){t.forEach(function(t){t.taskDoneDeferred.reject()})})})(a)}});function s(t){return 1===t.length&&o.canFlushOneItem(t[0])}function c(t){t.forEach(function(t){var e=t.input.namespace,n=t.input.data,r=t.input.offsite,i=t.input.version;o.clientEvent(e,n,r,i),t.taskDoneDeferred.resolve()})}t.exports={scribe:function(t,e,n,r){return a.add({namespace:t,data:e,offsite:n,version:r})},pause:function(){a.pause()},resume:function(){a.resume()}}},function(t,e,n){var r=n(105),i=n(106),o=n(0);t.exports={couple:function(){return o.toRealArray(arguments)},build:function(t,e,n){var o=new t;return(e=i(r(e||[]))).forEach(function(t){t.call(null,o)}),o.build(n)}}},function(t,e,n){var r=n(108),i=n(0),o=n(42);function u(){this.Component=this.factory(),this._adviceArgs=[],this._lastArgs=[]}i.aug(u.prototype,{factory:o,build:function(t){var e=this;return this.Component,i.aug(this.Component.prototype.boundParams,t),this._adviceArgs.concat(this._lastArgs).forEach(function(t){(function(t,e,n){var r=this[e];if(!r)throw new Error(e+" does not exist");this[e]=t(r,n)}).apply(e.Component.prototype,t)}),delete this._lastArgs,delete this._adviceArgs,this.Component},params:function(t){var e=this.Component.prototype.paramConfigs;t=t||{},this.Component.prototype.paramConfigs=i.aug({},t,e)},define:function(t,e){if(t in this.Component.prototype)throw new Error(t+" has previously been defined");this.override(t,e)},defineStatic:function(t,e){this.Component[t]=e},override:function(t,e){this.Component.prototype[t]=e},defineProperty:function(t,e){if(t in this.Component.prototype)throw new Error(t+" has previously been defined");this.overrideProperty(t,e)},overrideProperty:function(t,e){var n=i.aug({configurable:!0},e);Object.defineProperty(this.Component.prototype,t,n)},before:function(t,e){this._adviceArgs.push([r.before,t,e])},after:function(t,e){this._adviceArgs.push([r.after,t,e])},around:function(t,e){this._adviceArgs.push([r.around,t,e])},last:function(t,e){this._lastArgs.push([r.after,t,e])}}),t.exports=u},function(t,e,n){var r=n(0);function i(){return!0}function o(t){return t}t.exports=function(){function t(t){var e=this;t=t||{},this.params=Object.keys(this.paramConfigs).reduce(function(n,u){var a=[],s=e.boundParams,c=e.paramConfigs[u],d=c.validate||i,f=c.transform||o;if(u in s&&a.push(s[u]),u in t&&a.push(t[u]),a="fallback"in c?a.concat(c.fallback):a,n[u]=function(t,e,n){var i=null;return a.some(function(t){if(t=r.isType("function",t)?t():t,e(t))return i=n(t),!0}),i}(0,d,f),c.required&&null==n[u])throw new Error(u+" is a required parameter");return n},{}),this.initialize()}return r.aug(t.prototype,{paramConfigs:{},boundParams:{},initialize:function(){}}),t}},function(t,e,n){var r=n(1).HTMLElement,i=r.prototype.matches||r.prototype.matchesSelector||r.prototype.webkitMatchesSelector||r.prototype.mozMatchesSelector||r.prototype.msMatchesSelector||r.prototype.oMatchesSelector;t.exports=function(t,e){if(i)return i.call(t,e)}},function(t){t.exports={version:"2a81c84:1568701398616"}},function(t,e,n){var r,i=n(10),o=n(4),u=n(1),a=n(33),s=n(54),c=n(5),d=n(23);t.exports={inlineStyle:function(){var t="csptest"+d.generate(),e=o.createElement("div"),n=o.createElement("style"),f="."+t+" { visibility: hidden; }";return!!o.body&&(c.asBoolean(a.val("widgets:csp"))&&(r=!1),void 0!==r?r:(e.style.display="none",i.add(e,t),n.type="text/css",n.appendChild(o.createTextNode(f)),o.body.appendChild(n),o.body.appendChild(e),r="hidden"===u.getComputedStyle(e).visibility,s(e),s(n),r))}}},function(t,e,n){var r=n(1);t.exports=function(t,e,n){var i,o=0;return n=n||null,function u(){var a=n||this,s=arguments,c=+new Date;if(r.clearTimeout(i),c-o>e)return o=c,void t.apply(a,s);i=r.setTimeout(function(){u.apply(a,s)},e)}}},function(t,e){t.exports=function(t){var e=t.getBoundingClientRect();return{width:e.width,height:e.height}}},function(t,e,n){var r;r=function(){"use strict";function t(t){return"function"==typeof t}var e=Array.isArray?Array.isArray:function(t){return"[object Array]"===Object.prototype.toString.call(t)},n=0,r=void 0,i=void 0,o=function(t,e){l[n]=t,l[n+1]=e,2===(n+=2)&&(i?i(h):w())},u="undefined"!=typeof window?window:void 0,a=u||{},s=a.MutationObserver||a.WebKitMutationObserver,c="undefined"==typeof self&&"undefined"!=typeof process&&"[object process]"==={}.toString.call(process),d="undefined"!=typeof Uint8ClampedArray&&"undefined"!=typeof importScripts&&"undefined"!=typeof MessageChannel;function f(){var t=setTimeout;return function(){return t(h,1)}}var l=new Array(1e3);function h(){for(var t=0;t<n;t+=2)(0,l[t])(l[t+1]),l[t]=void 0,l[t+1]=void 0;n=0}var p,m,v,g,w=void 0;function y(t,e){var n=this,r=new this.constructor(_);void 0===r[E]&&z(r);var i=n._state;if(i){var u=arguments[i-1];o(function(){return P(i,r,u,n._result)})}else N(n,r,t,e);return r}function b(t){if(t&&"object"==typeof t&&t.constructor===this)return t;var e=new this(_);return S(e,t),e}c?w=function(){return process.nextTick(h)}:s?(m=0,v=new s(h),g=document.createTextNode(""),v.observe(g,{characterData:!0}),w=function(){g.data=m=++m%2}):d?((p=new MessageChannel).port1.onmessage=h,w=function(){return p.port2.postMessage(0)}):w=void 0===u?function(){try{var t=Function("return this")().require("vertx");return void 0!==(r=t.runOnLoop||t.runOnContext)?function(){r(h)}:f()}catch(t){return f()}}():f();var E=Math.random().toString(36).substring(2);function _(){}var A=void 0,x=1,C=2,D={error:null};function T(t){try{return t.then}catch(t){return D.error=t,D}}function F(e,n,r){n.constructor===e.constructor&&r===y&&n.constructor.resolve===b?function(t,e){e._state===x?j(t,e._result):e._state===C?R(t,e._result):N(e,void 0,function(e){return S(t,e)},function(e){return R(t,e)})}(e,n):r===D?(R(e,D.error),D.error=null):void 0===r?j(e,n):t(r)?function(t,e,n){o(function(t){var r=!1,i=function(t,e,n,r){try{t.call(e,n,r)}catch(t){return t}}(n,e,function(n){r||(r=!0,e!==n?S(t,n):j(t,n))},function(e){r||(r=!0,R(t,e))},t._label);!r&&i&&(r=!0,R(t,i))},t)}(e,n,r):j(e,n)}function S(t,e){var n,r;t===e?R(t,new TypeError("You cannot resolve a promise with itself")):(r=typeof(n=e),null===n||"object"!==r&&"function"!==r?j(t,e):F(t,e,T(e)))}function B(t){t._onerror&&t._onerror(t._result),k(t)}function j(t,e){t._state===A&&(t._result=e,t._state=x,0!==t._subscribers.length&&o(k,t))}function R(t,e){t._state===A&&(t._state=C,t._result=e,o(B,t))}function N(t,e,n,r){var i=t._subscribers,u=i.length;t._onerror=null,i[u]=e,i[u+x]=n,i[u+C]=r,0===u&&t._state&&o(k,t)}function k(t){var e=t._subscribers,n=t._state;if(0!==e.length){for(var r=void 0,i=void 0,o=t._result,u=0;u<e.length;u+=3)r=e[u],i=e[u+n],r?P(n,r,i,o):i(o);t._subscribers.length=0}}function P(e,n,r,i){var o=t(r),u=void 0,a=void 0,s=void 0,c=void 0;if(o){if((u=function(t,e){try{return t(e)}catch(t){return D.error=t,D}}(r,i))===D?(c=!0,a=u.error,u.error=null):s=!0,n===u)return void R(n,new TypeError("A promises callback cannot return that same promise."))}else u=i,s=!0;n._state!==A||(o&&s?S(n,u):c?R(n,a):e===x?j(n,u):e===C&&R(n,u))}var L=0;function z(t){t[E]=L++,t._state=void 0,t._result=void 0,t._subscribers=[]}var I=function(){function t(t,n){this._instanceConstructor=t,this.promise=new t(_),this.promise[E]||z(this.promise),e(n)?(this.length=n.length,this._remaining=n.length,this._result=new Array(this.length),0===this.length?j(this.promise,this._result):(this.length=this.length||0,this._enumerate(n),0===this._remaining&&j(this.promise,this._result))):R(this.promise,new Error("Array Methods must be provided an Array"))}return t.prototype._enumerate=function(t){for(var e=0;this._state===A&&e<t.length;e++)this._eachEntry(t[e],e)},t.prototype._eachEntry=function(t,e){var n=this._instanceConstructor,r=n.resolve;if(r===b){var i=T(t);if(i===y&&t._state!==A)this._settledAt(t._state,e,t._result);else if("function"!=typeof i)this._remaining--,this._result[e]=t;else if(n===O){var o=new n(_);F(o,t,i),this._willSettleAt(o,e)}else this._willSettleAt(new n(function(e){return e(t)}),e)}else this._willSettleAt(r(t),e)},t.prototype._settledAt=function(t,e,n){var r=this.promise;r._state===A&&(this._remaining--,t===C?R(r,n):this._result[e]=n),0===this._remaining&&j(r,this._result)},t.prototype._willSettleAt=function(t,e){var n=this;N(t,void 0,function(t){return n._settledAt(x,e,t)},function(t){return n._settledAt(C,e,t)})},t}(),O=function(){function e(t){this[E]=L++,this._result=this._state=void 0,this._subscribers=[],_!==t&&("function"!=typeof t&&function(){throw new TypeError("You must pass a resolver function as the first argument to the promise constructor")}(),this instanceof e?function(t,e){try{e(function(e){S(t,e)},function(e){R(t,e)})}catch(e){R(t,e)}}(this,t):function(){throw new TypeError("Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.")}())}return e.prototype.catch=function(t){return this.then(null,t)},e.prototype.finally=function(e){var n=this.constructor;return t(e)?this.then(function(t){return n.resolve(e()).then(function(){return t})},function(t){return n.resolve(e()).then(function(){throw t})}):this.then(e,e)},e}();return O.prototype.then=y,O.all=function(t){return new I(this,t).promise},O.race=function(t){var n=this;return e(t)?new n(function(e,r){for(var i=t.length,o=0;o<i;o++)n.resolve(t[o]).then(e,r)}):new n(function(t,e){return e(new TypeError("You must pass an array to race."))})},O.resolve=b,O.reject=function(t){var e=new this(_);return R(e,t),e},O._setScheduler=function(t){i=t},O._setAsap=function(t){o=t},O._asap=o,O.polyfill=function(){var t=void 0;if("undefined"!=typeof global)t=global;else if("undefined"!=typeof self)t=self;else try{t=Function("return this")()}catch(t){throw new Error("polyfill failed because global object is unavailable in this environment")}var e=t.Promise;if(e){var n=null;try{n=Object.prototype.toString.call(e.resolve())}catch(t){}if("[object Promise]"===n&&!e.cast)return}t.Promise=O},O.Promise=O,O},t.exports=r()},function(t,e,n){var r=n(50);t.exports=new r("twttr")},function(t,e,n){var r=n(1),i=n(0);function o(t){return i.isType("string",t)?t.split("."):i.isType("array",t)?t:[]}function u(t,e){(e=e||r)[t]=e[t]||{},Object.defineProperty(this,"base",{value:e[t]}),Object.defineProperty(this,"name",{value:t})}i.aug(u.prototype,{get:function(t){return o(t).reduce(function(t,e){if(i.isObject(t))return t[e]},this.base)},set:function(t,e,n){var r=o(t),u=function(t,e){var n=o(e).slice(0,-1);return n.reduce(function(t,e,r){if(t[e]=t[e]||{},!i.isObject(t[e]))throw new Error(n.slice(0,r+1).join(".")+" is already defined with a value.");return t[e]},t)}(this.base,t),a=r.slice(-1);return n&&a in u?u[a]:u[a]=e},init:function(t,e){return this.set(t,e,!0)},unset:function(t){var e=o(t),n=this.get(e.slice(0,-1));n&&delete n[e.slice(-1)]},aug:function(t){var e=this.get(t),n=i.toRealArray(arguments).slice(1);if(e=void 0!==e?e:{},n.unshift(e),!n.every(i.isObject))throw new Error("Cannot augment non-object.");return this.set(t,i.aug.apply(null,n))},call:function(t){var e=this.get(t),n=i.toRealArray(arguments).slice(1);if(!i.isType("function",e))throw new Error("Function "+t+"does not exist.");return e.apply(null,n)},fullPath:function(t){var e=o(t);return e.unshift(this.name),e.join(".")}}),t.exports=u},function(t,e,n){var r=n(0),i=n(7),o={bind:function(t,e){return this._handlers=this._handlers||{},this._handlers[t]=this._handlers[t]||[],this._handlers[t].push(e)},unbind:function(t,e){var n;this._handlers&&this._handlers[t]&&(e?(n=this._handlers[t].indexOf(e))>=0&&this._handlers[t].splice(n,1):this._handlers[t]=[])},trigger:function(t,e){var n=this._handlers&&this._handlers[t];(e=e||{}).type=t,n&&n.forEach(function(t){r.async(i(t,this,e))})}};t.exports={Emitter:o,makeEmitter:function(){return r.aug(function(){},o)}}},function(t,e){var n="tfw_horizon_tweet_embed_9555";t.exports={isHorizonTweetEnabled:function(t){return!(!t||!t[n]||"hte"!==t[n].bucket)}}},function(t,e,n){var r=n(101),i=n(76),o=n(6),u=n(22),a=n(7),s=n(0),c=new i(function(t){var e=function(t){return t.reduce(function(t,e){return t[e._className]=t[e._className]||[],t[e._className].push(e),t},{})}(t.map(r.fromRawTask));s.forIn(e,function(t,e){u.allSettled(e.map(function(t){return t.initialize()})).then(function(){e.forEach(function(t){o.all([t.hydrate(),t.insertIntoDom()]).then(a(t.render,t)).then(a(t.success,t),a(t.fail,t))})})})});t.exports={addWidget:function(t){return c.add(t)}}},function(t,e,n){var r=n(18);t.exports=function(t){return r.write(function(){t&&t.parentNode&&t.parentNode.removeChild(t)})}},function(t,e,n){n(12),t.exports={log:function(t,e){}}},function(t,e,n){var r=n(1);function i(t){return(t=t||r).getSelection&&t.getSelection()}t.exports={getSelection:i,getSelectedText:function(t){var e=i(t);return e?e.toString():""}}},function(t,e,n){var r=n(4),i=n(1),o=n(2);t.exports=function(t){var e=new o,n=r.createElement("img");return n.onload=n.onerror=function(){i.setTimeout(e.resolve,50)},n.src=t,i.setTimeout(e.reject,2e4),e.promise}},function(t,e,n){var r=n(111);t.exports=function(t){t.define("createElement",r),t.define("createFragment",r),t.define("htmlToElement",r),t.define("hasSelectedText",r),t.define("addRootClass",r),t.define("removeRootClass",r),t.define("hasRootClass",r),t.define("prependStyleSheet",r),t.define("appendStyleSheet",r),t.define("prependCss",r),t.define("appendCss",r),t.define("makeVisible",r),t.define("injectWidgetEl",r),t.define("matchHeightToContent",r),t.define("matchWidthToContent",r)}},function(t,e){t.exports=function(t){var e,n=!1;return function(){return n?e:(n=!0,e=t.apply(this,arguments))}}},function(t,e,n){var r=n(15),i=n(120),o=n(61),u=n(16);t.exports=function(t,e,n){return new r(i,o,u.DM_BUTTON,t,e,n)}},function(t,e,n){var r=n(62),i=n(25);t.exports=r.isSupported()?r:i},function(t,e,n){var r=n(26),i=n(121);t.exports=r.build([i])},function(t,e,n){var r=n(15),i=n(124),o=n(37),u=n(16);t.exports=function(t,e,n){return new r(i,o,u.FOLLOW_BUTTON,t,e,n)}},function(t,e,n){var r=n(15),i=n(132),o=n(25),u=n(16);t.exports=function(t,e,n){return new r(i,o,u.MOMENT,t,e,n)}},function(t,e,n){var r=n(15),i=n(134),o=n(25),u=n(16);t.exports=function(t,e,n){return new r(i,o,u.PERISCOPE,t,e,n)}},function(t,e,n){var r=n(82),i=n(136),o=n(140),u=n(142),a=n(144),s=n(146),c={collection:i,event:o,likes:u,list:a,profile:s,url:f},d=[s,u,i,a,o];function f(t){return r(d,function(e){try{return new e(t)}catch(t){}})}t.exports=function(t){return t?function(t){var e,n;return e=(t.sourceType+"").toLowerCase(),(n=c[e])?new n(t):null}(t)||f(t):null}},function(t,e,n){var r=n(15),i=n(148),o=n(25),u=n(16);t.exports=function(t,e,n){return new r(i,o,u.TIMELINE,t,e,n)}},function(t,e,n){var r=n(15),i=n(4),o=n(37),u=n(150),a=n(61),s=n(151),c=n(16);t.exports=function(t,e,n,d){var f;return d?(f=i.createElement("div"),new r(u,o,c.TWEET,t,e,n,{sandboxWrapperEl:f})):new r(s,a,c.TWEET,t,e,n)}},function(t,e,n){var r=n(15),i=n(153),o=n(37),u=n(16);t.exports=function(t,e,n){var a=t&&t.type||"share",s="hashtag"==a?u.HASHTAG_BUTTON:"mention"==a?u.MENTION_BUTTON:u.SHARE_BUTTON;return new r(i,o,s,t,e,n)}},function(t,e,n){var r=n(39),i=n(38),o=n(0);t.exports=function(t){var e={widget_origin:i.rootDocumentLocation(),widget_frame:i.isFramed()?i.currentDocumentLocation():null,duration_ms:t.duration,item_ids:t.widgetIds||[]},n=o.aug(t.namespace,{page:"page",component:"performance"});r.scribe(n,e)}},function(t,e,n){var r=n(0),i=n(137),o=["ar","fa","he","ur"];t.exports={isRtlLang:function(t){return t=String(t).toLowerCase(),r.contains(o,t)},matchLanguage:function(t){return t=(t=(t||"").toLowerCase()).replace("_","-"),i(t)?t:(t=t.replace(/-.*/,""),i(t)?t:"en")}}},function(t){t.exports={tweetButtonHtmlPath:"/widgets/tweet_button.d6364fae9340b0be5f13818370141fd0.{{lang}}.html",followButtonHtmlPath:"/widgets/follow_button.d6364fae9340b0be5f13818370141fd0.{{lang}}.html",hubHtmlPath:"/widgets/hub.html",widgetIframeHtmlPath:"/widgets/widget_iframe.d6364fae9340b0be5f13818370141fd0.html",resourceBaseUrl:"https://platform.twitter.com"}},function(t,e,n){var r=n(3),i=n(98),o=n(24),u=n(11),a={favorite:["favorite","like"],follow:["follow"],like:["favorite","like"],retweet:["retweet"],tweet:["tweet"]};function s(t){this.srcEl=[],this.element=t}s.open=function(t,e,n){var s=(r.intentType(t)||"").toLowerCase();r.isTwitterURL(t)&&(function(t,e){i.open(t,{},e)}(t,n),e&&o.trigger("click",{target:e,region:"intent",type:"click",data:{}}),e&&a[s]&&a[s].forEach(function(n){o.trigger(n,{target:e,region:"intent",type:n,data:function(t,e){var n=u.decodeURL(e);switch(t){case"favorite":case"like":return{tweet_id:n.tweet_id};case"follow":return{screen_name:n.screen_name,user_id:n.user_id};case"retweet":return{source_tweet_id:n.tweet_id};default:return{}}}(s,t)})}))},t.exports=s},function(t,e){t.exports={getTimezoneOffset:function(){var t=(new Date).toString().match(/(GMT[+-]?\d+)/);return t&&t[0]||"GMT"}}},function(t,e,n){var r=n(4),i=n(9),o=n(2),u=n(0),a=n(11),s=0;t.exports={fetch:function(t,e,n,c){var d,f,l;return c=function(t){if(t)return t.replace(/[^\w$]/g,"_")}(c||"cb"+s++),d=i.fullPath(["callbacks",c]),f=r.createElement("script"),l=new o,e=u.aug({},e,{callback:d,suppress_response_codes:!0}),i.set(["callbacks",c],function(t){var e;t=(e=n(t||!1)).resp,e.success?l.resolve(t):l.reject(t),f.onload=f.onreadystatechange=null,f.parentNode&&f.parentNode.removeChild(f),i.unset(["callbacks",c])}),f.onerror=function(){l.reject(new Error("failed to fetch "+f.src))},f.src=a.url(t,e),f.async="async",r.body.appendChild(f),l.promise}}},function(t,e,n){var r=n(2),i=n(103),o=n(7);function u(t){this._inputsQueue=[],this._task=t,this._hasFlushBeenScheduled=!1}u.prototype.add=function(t){var e=new r;return this._inputsQueue.push({input:t,taskDoneDeferred:e}),this._hasFlushBeenScheduled||(this._hasFlushBeenScheduled=!0,i(o(this._flush,this))),e.promise},u.prototype._flush=function(){try{this._task.call(null,this._inputsQueue)}catch(t){this._inputsQueue.forEach(function(e){e.taskDoneDeferred.reject(t)})}this._inputsQueue=[],this._hasFlushBeenScheduled=!1},t.exports=u},function(t,e){t.exports=function(t,e){return t.reduce(function(t,n){var r=e(n);return t[r]=t[r]||[],t[r].push(n),t},{})}},function(t,e,n){var r=n(4),i=n(8),o=n(3);function u(t,e){var n,r;return e=e||i,/^https?:\/\//.test(t)?t:/^\/\//.test(t)?e.protocol+t:(n=e.host+(e.port.length?":"+e.port:""),0!==t.indexOf("/")&&((r=e.pathname.split("/")).pop(),r.push(t),t="/"+r.join("/")),[e.protocol,"//",n,t].join(""))}t.exports={absolutize:u,getCanonicalURL:function(){for(var t,e=r.getElementsByTagName("link"),n=0;e[n];n++)if("canonical"==(t=e[n]).rel)return u(t.href)},getScreenNameFromPage:function(){for(var t,e,n,i=[r.getElementsByTagName("a"),r.getElementsByTagName("link")],u=0,a=0,s=/\bme\b/;t=i[u];u++)for(a=0;e=t[a];a++)if(s.test(e.rel)&&(n=o.screenName(e.href)))return n}}},function(t,e,n){var r=n(8),i=/^[^#?]*\.(gov|mil)(:\d+)?([#?].*)?$/i,o={};function u(t){return t in o?o[t]:o[t]=i.test(t)}t.exports={isUrlSensitive:u,isHostPageSensitive:function(){return u(r.host)}}},function(t,e,n){var r=n(20),i=n(55),o=n(11),u=n(34),a=n(0),s=n(9).get("scribeCallback"),c=2083,d=[],f=o.url(u.CLIENT_EVENT_ENDPOINT,{dnt:0,l:""}),l=encodeURIComponent(f).length;function h(t,e,n,r){var i=!a.isObject(t),o=!!e&&!a.isObject(e);i||o||(s&&s(arguments),p(u.formatClientEventNamespace(t),u.formatClientEventData(e,n,r),u.CLIENT_EVENT_ENDPOINT))}function p(t,e,n){var r,s;n&&a.isObject(t)&&a.isObject(e)&&(i.log(t,e),r=u.flattenClientEventPayload(t,e),s={l:u.stringify(r)},u.noticeSeen(t)&&(s.notice_seen=!0),r.dnt&&(s.dnt=1),w(o.url(n,s)))}function m(t,e,n,r){var i=!a.isObject(t),o=!!e&&!a.isObject(e);if(!i&&!o)return v(u.flattenClientEventPayload(u.formatClientEventNamespace(t),u.formatClientEventData(e,n,r)))}function v(t){return d.push(t),d}function g(t){return encodeURIComponent(t).length+3}function w(t){return(new Image).src=t}t.exports={canFlushOneItem:function(t){var e=g(u.stringify(t));return l+e<c},_enqueueRawObject:v,scribe:p,clientEvent:h,clientEvent2:function(t,e,n){return h(t,e,n,2)},enqueueClientEvent:m,flushClientEvents:function(){var t;return d.length>1&&m({page:"widgets_js",component:"scribe_pixel",action:"batch_log"},{}),t=d,d=[],t.reduce(function(e,n,r){var i=e.length,o=i&&e[i-1];return r+1==t.length&&n.event_namespace&&"batch_log"==n.event_namespace.action&&(n.message=["entries:"+r,"requests:"+i].join("/")),function t(e){return Array.isArray(e)||(e=[e]),e.reduce(function(e,n){var r,i=u.stringify(n),o=g(i);return l+o<c?e=e.concat(i):(r=u.splitLogEntry(n)).length>1&&(e=e.concat(t(r))),e},[])}(n).forEach(function(t){var n=g(t);(!o||o.urlLength+n>c)&&(o={urlLength:l,items:[]},e.push(o)),o.urlLength+=n,o.items.push(t)}),e},[]).map(function(t){var e={l:t.items};return r.enabled()&&(e.dnt=1),w(o.url(u.CLIENT_EVENT_ENDPOINT,e))})},interaction:function(t,e,n,r){var i=u.extractTermsFromDOM(t.target||t.srcElement);i.action=r||"click",h(i,e,n)}}},function(t,e,n){var r=n(0),i=n(43);t.exports=function(t,e){return i(t,e)?[t]:r.toRealArray(t.querySelectorAll(e))}},function(t,e){t.exports=function(t,e,n){for(var r,i=0;i<t.length;i++)if(r=e.call(n,t[i],i,t))return r}},function(t,e){t.exports=function(){return Math.floor(+new Date/9e5)}},function(t,e,n){var r=n(12);t.exports=function(t){var e,n;return e=t.headers&&t.headers.status,!(n=t&&!t.error&&200===e)&&t.headers&&t.headers.message&&r.publicError(t.headers.message),{success:n,resp:t}}},function(t,e,n){var r,i=n(29),o=0;function u(){r&&r.length===o&&(i.emitter.trigger(i.ALL_WIDGETS_AND_IMAGES_LOADED,r),r=null)}i.emitter.bind(i.ALL_WIDGETS_RENDER_END,function(t){r=t.widgets,u()}),t.exports={reportImagesLoadForAWidget:function(){o++,u()}}},,,,,,,,,function(t,e,n){var r,i=n(2),o=n(4),u=n(96),a=n(49),s=n(9),c=n(97),d=n(24),f=n(100),l=n(154),h=n(162),p=n(163),m=n(29),v=n(35);n(164),m.emitter.trigger(m.START),s.set("widgets.init",!0),a.set("init",!0),p(),r=new i,u.exposeReadyPromise(r.promise,a.base,"_e"),a.set("widgets",l),a.set("widgets.load",f.load),a.set("events",d),h(function(){v.load(),r.resolve(a.base),c.attachTo(o),f.loadPage()})},function(t,e){t.exports=navigator},function(t,e,n){var r=n(7);t.exports={exposeReadyPromise:function(t,e,n){e.ready=r(t.then,t),n&&Array.isArray(e[n])&&(e[n].forEach(r(t.then,t)),delete e[n])}}},function(t,e,n){var r=n(8),i=n(36),o=n(32),u=n(73),a=n(3);function s(t){var e,n,s;t.altKey||t.metaKey||t.shiftKey||(e=o.closest(function(t){return"A"===t.tagName||"AREA"===t.tagName},t.target))&&a.isIntentURL(e.href)&&(n=(n=(n=[s=e.href,"original_referer="+r.href].join(-1==s.indexOf("?")?"?":"&")).replace(/^http[:]/,"https:")).replace(/^\/\//,"https://"),u.open(n,e),i.preventDefault(t))}t.exports={attachTo:function(t){t.addEventListener("click",s,!1)}}},function(t,e,n){var r,i=n(1),o=n(99),u=n(36),a=n(32),s=n(21),c=n(3),d=n(23),f=n(0),l=i.screen.width,h=i.screen.height;function p(t,e){function n(t){return Math.round(t/2)}return t>e?{coordinate:0,size:e}:{coordinate:n(e)-n(t),size:t}}function m(t,e,n){var i,o;n=n||{},i=p((e=r.parse(e)).width,n.width||l),e.left=i.coordinate,e.width=i.size,o=p(e.height,n.height||h),e.top=o.coordinate,e.height=o.size,this.win=t,this.features=function(t){var e=[];return f.forIn(t,function(t,n){e.push(t+"="+n)}),e.join(",")}(e)}r=(new o).defaults({width:550,height:520,personalbar:"0",toolbar:"0",location:"1",scrollbars:"1",resizable:"1"}),m.prototype.open=function(t,e){var n=e&&"click"==e.type&&a.closest("a",e.target),r=e&&(e.altKey||e.metaKey||e.shiftKey),i=n&&(s.ios()||s.android());if(c.isTwitterURL(t))return r||i?this:(this.name="intent_"+d.generate(),this.popup=this.win.open(t,this.name,this.features),e&&u.preventDefault(e),this)},m.open=function(t,e,n){return new m(i,e).open(t,n)},t.exports=m},function(t,e,n){var r=n(5),i=n(0);function o(){this.assertions=[],this._defaults={}}o.prototype.assert=function(t,e){return this.assertions.push({fn:t,msg:e||"assertion failed"}),this},o.prototype.defaults=function(t){return this._defaults=t||this._defaults,this},o.prototype.require=function(t){var e=this;return(t=Array.isArray(t)?t:i.toRealArray(arguments)).forEach(function(t){e.assert(function(t){return function(e){return r.hasValue(e[t])}}(t),"required: "+t)}),this},o.prototype.parse=function(t){var e,n;if(e=i.aug({},this._defaults,t||{}),(n=this.assertions.reduce(function(t,n){return n.fn(e)||t.push(n.msg),t},[])).length>0)throw new Error(n.join("\n"));return e},t.exports=o},function(t,e,n){var r=n(4),i=n(52),o=n(6),u=n(22),a=n(53),s=n(33),c=n(9),d=n(39),f=n(24),l=n(5),h=n(0),p=n(35),m=n(117),v=n(29);function g(){var t=s.val("widgets:autoload")||!0;return!l.isFalseValue(t)&&(l.isTruthValue(t)?r.body:r.querySelectorAll(t))}function w(t){return p.getExperiments().then(function(e){return function(t,e){var n,i;return t=(t=t||r.body).length?h.toRealArray(t):[t],d.pause(),i=function(t,e){return t.reduce(function(t,n){return t.concat(m.reduce(function(t,r){return t.concat(r(n,e))},[]))},[])}(t,e),v.emitter.trigger(v.ALL_WIDGETS_RENDER_START,{widgets:i}),n=u.allResolved(i.map(function(t){return a.addWidget(t)})).then(function(t){f.trigger("loaded",{widgets:t}),t&&t.length&&v.emitter.trigger(v.ALL_WIDGETS_RENDER_END,{widgets:t})}),u.always(n,function(){d.resume()}),n}(t,i.isHorizonTweetEnabled(e))})}t.exports={load:w,loadPage:function(){var t=g();return!1===t?o.resolve():(c.set("widgets.loaded",!0),w(t))},_getPageLoadTarget:g}},function(t,e,n){var r=n(10),i=n(18),o=n(24),u=n(54),a=n(6),s=n(22);function c(t,e){this._widget=null,this._sandbox=null,this._hydrated=!1,this._insertedIntoDom=!1,this._Sandbox=t.Sandbox,this._factory=t.factory,this._widgetParams=t.parameters,this._resolve=e,this._className=t.className,this._renderedClassName=t.className+"-rendered",this._errorClassName=t.className+"-error",this._srcEl=t.srcEl,this._targetGlobal=function(t){return(t.srcEl||t.targetEl).ownerDocument.defaultView}(t),this._sandboxWrapperEl=t.options?t.options.sandboxWrapperEl:null,this._insertionStrategy=function(e){var n,r=t.srcEl,i=t.targetEl,o=t.options?t.options.sandboxWrapperEl:null;o?(o.appendChild(e),n=o):n=e,r?i.insertBefore(n,r):i.appendChild(n)}}c.fromRawTask=function(t){return new c(t.input,t.taskDoneDeferred.resolve)},c.prototype.initialize=function(){var t=this,e=new this._Sandbox(this._targetGlobal);return this._factory(this._widgetParams,e).then(function(n){return t._widget=n,t._sandbox=e,n._sandboxWrapperEl=t._sandboxWrapperEl,n})},c.prototype.insertIntoDom=function(){var t=this;return this._widget?this._sandbox.insert(this._widget.id,{class:[this._className,this._renderedClassName].join(" ")},null,this._insertionStrategy).then(function(){t._insertedIntoDom=!0}):a.reject(new Error("cannot insert widget into DOM before it is initialized"))},c.prototype.hydrate=function(){var t=this;return this._widget?this._widget.hydrate().then(function(){t._hydrated=!0}):a.reject(new Error("cannot hydrate widget before it is initialized"))},c.prototype.render=function(){var t=this;function e(e){return u(t._sandbox.sandboxEl).then(function(){return a.reject(e)})}return this._hydrated?this._insertedIntoDom?t._widget.render(t._sandbox).then(function(){return t._sandbox.onResize(function(){return t._widget.resize().then(function(){o.trigger("resize",{target:t._sandbox.sandboxEl})})}),t._widget.show()}).then(function(){return u(t._srcEl).then(function(){return t._sandbox.sandboxEl})},e):e(new Error("cannot render widget before DOM insertion")):e(new Error("cannot render widget before hydration"))},c.prototype.fail=function(){var t=this;return this._srcEl?s.always(i.write(function(){r.add(t._srcEl,t._errorClassName)}),function(){o.trigger("rendered",{target:t._srcEl}),t._resolve(t._srcEl)}):(t._resolve(),a.resolve())},c.prototype.success=function(){o.trigger("rendered",{target:this._sandbox.sandboxEl}),this._resolve(this._sandbox.sandboxEl)},t.exports=c},function(t,e,n){var r;!function(){"use strict";var i=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.msRequestAnimationFrame||function(t){return window.setTimeout(t,1e3/60)};function o(){this.frames=[],this.lastId=0,this.raf=i,this.batch={hash:{},read:[],write:[],mode:null}}o.prototype.read=function(t,e){var n=this.add("read",t,e),r=n.id;return this.batch.read.push(n.id),"reading"===this.batch.mode||this.batch.scheduled?r:(this.scheduleBatch(),r)},o.prototype.write=function(t,e){var n=this.add("write",t,e),r=this.batch.mode,i=n.id;return this.batch.write.push(n.id),"writing"===r||"reading"===r||this.batch.scheduled?i:(this.scheduleBatch(),i)},o.prototype.defer=function(t,e,n){"function"==typeof t&&(n=e,e=t,t=1);var r=this,i=t-1;return this.schedule(i,function(){r.run({fn:e,ctx:n})})},o.prototype.clear=function(t){if("function"==typeof t)return this.clearFrame(t);t=Number(t);var e=this.batch.hash[t];if(e){var n=this.batch[e.type],r=n.indexOf(t);delete this.batch.hash[t],~r&&n.splice(r,1)}},o.prototype.clearFrame=function(t){var e=this.frames.indexOf(t);~e&&this.frames.splice(e,1)},o.prototype.scheduleBatch=function(){var t=this;this.schedule(0,function(){t.batch.scheduled=!1,t.runBatch()}),this.batch.scheduled=!0},o.prototype.uniqueId=function(){return++this.lastId},o.prototype.flush=function(t){for(var e;e=t.shift();)this.run(this.batch.hash[e])},o.prototype.runBatch=function(){try{this.batch.mode="reading",this.flush(this.batch.read),this.batch.mode="writing",this.flush(this.batch.write),this.batch.mode=null}catch(t){throw this.runBatch(),t}},o.prototype.add=function(t,e,n){var r=this.uniqueId();return this.batch.hash[r]={id:r,fn:e,ctx:n,type:t}},o.prototype.run=function(t){var e=t.ctx||this,n=t.fn;if(delete this.batch.hash[t.id],!this.onError)return n.call(e);try{n.call(e)}catch(t){this.onError(t)}},o.prototype.loop=function(){var t,e=this,n=this.raf,r=!1;function i(){var t=e.frames.shift();e.frames.length?n(i):e.looping=!1,t&&t()}this.looping||(t=setTimeout(function(){r=!0,i()},500),n(function(){r||(clearTimeout(t),i())}),this.looping=!0)},o.prototype.schedule=function(t,e){return this.frames[t]?this.schedule(t+1,e):(this.loop(),this.frames[t]=e)};var u=new o;void 0!==t&&t.exports?t.exports=u:void 0===(r=function(){return u}.call(e,n,e,t))||(t.exports=r)}()},function(t,e,n){var r=n(48).Promise;t.exports=r._asap},function(t,e,n){var r,i,o,u=n(4),a=n(1),s=n(30),c=n(20),d=n(2),f=n(6),l=n(55),h=n(34),p=n(0),m=n(25),v=n(9).get("scribeCallback"),g=Math.floor(1e3*Math.random())+"_",w="rufous-frame-"+g+"-",y="rufous-form-"+g+"-",b=0,E=!1,_=new d;function A(){var t=o.createElement("form"),e=o.createElement("input"),n=o.createElement("input");return b++,t.action=h.CLIENT_EVENT_ENDPOINT,t.method="POST",t.target=w+b,t.id=y+b,e.type="hidden",e.name="dnt",e.value=c.enabled(),n.type="hidden",n.name="tfw_redirect",n.value=h.RUFOUS_REDIRECT,t.appendChild(e),t.appendChild(n),t}function x(){var t=w+b;return s({id:t,name:t,width:0,height:0,border:0},{display:"none"},o.doc)}t.exports={clientEvent:function(t,e,n,i){(function(t,e){var n=!p.isObject(t),r=!!e&&!p.isObject(e);return n||r})(t,e)||(v&&v(arguments),_.promise.then(function(){!function(t,e){var n,i,u;p.isObject(t)&&p.isObject(e)&&(l.log(t,e),u=h.flattenClientEventPayload(t,e),(n=r.firstChild).value=+(+n.value||u.dnt||0),(i=o.createElement("input")).type="hidden",i.name="l",i.value=h.stringify(u),r.appendChild(i))}(h.formatClientEventNamespace(t),h.formatClientEventData(e,n,i))}))},flush:function(){return _.promise.then(function(){var t;return r.children.length<=2?f.reject():(t=f.all([o.doc.body.appendChild(r),o.doc.body.appendChild(i)]).then(function(t){var e=t[0],n=t[1];return n.addEventListener("load",function(){!function(t,e){return function(){var n=t.parentNode;n&&(n.removeChild(t),n.removeChild(e))}}(e,n)()}),e.submit(),t}),r=A(),i=x(),t)})},init:function(){return E?_.promise:((o=new m(a)).insert("rufous-sandbox",null,{display:"none"},function(t){u.body.appendChild(t)}).then(function(){o.setTitle("Twitter analytics iframe"),r=A(),i=x(),_.resolve([r,i])}),E=!0,_.promise)}}},function(t,e,n){var r=n(0);t.exports=function t(e){var n=[];return e.forEach(function(e){var i=r.isType("array",e)?t(e):[e];n=n.concat(i)}),n}},function(t,e){t.exports=function(t){return t.filter(function(e,n){return t.indexOf(e)===n})}},function(t,e,n){var r=n(41),i=n(0),o=n(109);function u(){r.apply(this,arguments)}u.prototype=Object.create(r.prototype),i.aug(u.prototype,{factory:o}),t.exports=u},function(t,e,n){var r=n(22),i=n(0),o=n(7);t.exports={before:function(t,e){return function(){var n,i=this,o=arguments;return n=e.apply(this,arguments),r.isPromise(n)?n.then(function(){return t.apply(i,o)}):t.apply(this,arguments)}},after:function(t,e){return function(){var n,i=this,o=arguments;function u(t,e){return r.isPromise(e)?e.then(function(){return t}):t}return n=t.apply(this,arguments),r.isPromise(n)?n.then(function(t){return u(t,e.apply(i,o))}):u(n,e.apply(this,arguments))}},around:function(t,e){return function(){var n=i.toRealArray(arguments);return n.unshift(o(t,this)),e.apply(this,n)}}}},function(t,e,n){var r=n(10),i=n(18),o=n(42),u=n(6),a=n(0);t.exports=function(){var t=o();function e(e){t.apply(this,arguments),Object.defineProperty(this,"targetGlobal",{value:e})}return e.prototype=Object.create(t.prototype),a.aug(e.prototype,{id:null,initialized:!1,width:0,height:0,sandboxEl:null,insert:function(){return u.reject()},onResize:function(){},addClass:function(t){var e=this.sandboxEl;return t=Array.isArray(t)?t:[t],i.write(function(){t.forEach(function(t){r.add(e,t)})})},removeClass:function(t){var e=this.sandboxEl;return t=Array.isArray(t)?t:[t],i.write(function(){t.forEach(function(t){r.remove(e,t)})})},styleSelf:function(t){var e=this;return i.write(function(){a.forIn(t,function(t,n){e.sandboxEl.style[t]=n})})}}),e}},function(t,e,n){var r=n(4),i=n(10),o=n(18),u=n(56),a=n(26),s=n(57),c=n(45),d=n(46),f=n(30),l=n(12),h=n(47),p=n(2),m=n(6),v=n(0),g=n(9),w=n(23),y=n(7),b={allowfullscreen:"true"},E={position:"absolute",visibility:"hidden",display:"block",width:"0px",height:"0px",padding:"0",border:"none"},_={position:"static",visibility:"visible"};function A(t,e,n,r){return e=v.aug({id:t},b,e),n=v.aug({},E,n),f(e,n,r)}function x(t,e,n,i,u){var a=new p,s=w.generate(),c=A(t,e,n,u);return g.set(["sandbox",s],function(){var t=c.contentWindow.document;o.write(function(){t.write("<!DOCTYPE html><html><head></head><body></body></html>")}).then(function(){t.close(),a.resolve(c)})}),c.src=["javascript:",'document.write("");',"try { window.parent.document; }",'catch (e) { document.domain="'+r.domain+'"; }',"window.parent."+g.fullPath(["sandbox",s])+"();"].join(""),c.addEventListener("error",a.reject,!1),o.write(function(){i.parentNode.replaceChild(c,i)}),a.promise}t.exports=a.couple(n(58),function(t){t.overrideProperty("id",{get:function(){return this.sandboxEl&&this.sandboxEl.id}}),t.overrideProperty("initialized",{get:function(){return!!this.win}}),t.overrideProperty("width",{get:function(){return this._width}}),t.overrideProperty("height",{get:function(){return this._height}}),t.overrideProperty("sandboxEl",{get:function(){return this.iframeEl}}),t.defineProperty("iframeEl",{get:function(){return this._iframe}}),t.defineProperty("rootEl",{get:function(){return this.doc&&this.doc.documentElement}}),t.defineProperty("widgetEl",{get:function(){return this.doc&&this.doc.body.firstElementChild}}),t.defineProperty("win",{get:function(){return this.iframeEl&&this.iframeEl.contentWindow}}),t.defineProperty("doc",{get:function(){return this.win&&this.win.document}}),t.define("_updateCachedDimensions",function(){var t=this;return o.read(function(){var e,n=h(t.sandboxEl);"visible"==t.sandboxEl.style.visibility?t._width=n.width:(e=h(t.sandboxEl.parentElement).width,t._width=Math.min(n.width,e)),t._height=n.height})}),t.define("_setTargetToBlank",function(){var t=this.createElement("base");t.target="_blank",this.doc.head.appendChild(t)}),t.define("_didResize",function(){var t=this,e=this._resizeHandlers.slice(0);return this._updateCachedDimensions().then(function(){e.forEach(function(e){e(t)})})}),t.define("setTitle",function(t){this.iframeEl.title=t}),t.override("createElement",function(t){return this.doc.createElement(t)}),t.override("createFragment",function(){return this.doc.createDocumentFragment()}),t.override("htmlToElement",function(t){var e;return(e=this.createElement("div")).innerHTML=t,e.firstElementChild}),t.override("hasSelectedText",function(){return!!u.getSelectedText(this.win)}),t.override("addRootClass",function(t){var e=this.rootEl;return t=Array.isArray(t)?t:[t],this.initialized?o.write(function(){t.forEach(function(t){i.add(e,t)})}):m.reject(new Error("sandbox not initialized"))}),t.override("removeRootClass",function(t){var e=this.rootEl;return t=Array.isArray(t)?t:[t],this.initialized?o.write(function(){t.forEach(function(t){i.remove(e,t)})}):m.reject(new Error("sandbox not initialized"))}),t.override("hasRootClass",function(t){return i.present(this.rootEl,t)}),t.define("addStyleSheet",function(t,e){var n,r=new p;return this.initialized?((n=this.createElement("link")).type="text/css",n.rel="stylesheet",n.href=t,n.addEventListener("load",r.resolve,!1),n.addEventListener("error",r.reject,!1),o.write(y(e,null,n)).then(function(){return s(t).then(r.resolve,r.reject),r.promise})):m.reject(new Error("sandbox not initialized"))}),t.override("prependStyleSheet",function(t){var e=this.doc;return this.addStyleSheet(t,function(t){var n=e.head.firstElementChild;return n?e.head.insertBefore(t,n):e.head.appendChild(t)})}),t.override("appendStyleSheet",function(t){var e=this.doc;return this.addStyleSheet(t,function(t){return e.head.appendChild(t)})}),t.define("addCss",function(t,e){var n;return c.inlineStyle()?((n=this.createElement("style")).type="text/css",n.appendChild(this.doc.createTextNode(t)),o.write(y(e,null,n))):(l.devError("CSP enabled; cannot embed inline styles"),m.resolve())}),t.override("prependCss",function(t){var e=this.doc;return this.addCss(t,function(t){var n=e.head.firstElementChild;return n?e.head.insertBefore(t,n):e.head.appendChild(t)})}),t.override("appendCss",function(t){var e=this.doc;return this.addCss(t,function(t){return e.head.appendChild(t)})}),t.override("makeVisible",function(){var t=this;return this.styleSelf(_).then(function(){t._updateCachedDimensions()})}),t.override("injectWidgetEl",function(t){var e=this;return this.initialized?this.widgetEl?m.reject(new Error("widget already injected")):o.write(function(){e.doc.body.appendChild(t)}):m.reject(new Error("sandbox not initialized"))}),t.override("matchHeightToContent",function(){var t,e=this;return o.read(function(){t=e.widgetEl?h(e.widgetEl).height:0}),o.write(function(){e.sandboxEl.style.height=t+"px"}).then(function(){return e._updateCachedDimensions()})}),t.override("matchWidthToContent",function(){var t,e=this;return o.read(function(){t=e.widgetEl?h(e.widgetEl).width:0}),o.write(function(){e.sandboxEl.style.width=t+"px"}).then(function(){return e._updateCachedDimensions()})}),t.after("initialize",function(){this._iframe=null,this._width=this._height=0,this._resizeHandlers=[]}),t.override("insert",function(t,e,n,r){var i=this,u=new p,a=this.targetGlobal.document,s=A(t,e,n,a);return o.write(y(r,null,s)),s.addEventListener("load",function(){(function(t){try{t.contentWindow.document}catch(t){return m.reject(t)}return m.resolve(t)})(s).then(null,y(x,null,t,e,n,s,a)).then(u.resolve,u.reject)},!1),s.addEventListener("error",u.reject,!1),u.promise.then(function(t){var e=d(i._didResize,50,i);return i._iframe=t,i.win.addEventListener("resize",e,!1),m.all([i._setTargetToBlank(),i.addRootClass("SandboxRoot"),i.prependCss(".SandboxRoot { display: none; }")])})}),t.override("onResize",function(t){this._resizeHandlers.push(t)}),t.after("styleSelf",function(){return this._updateCachedDimensions()})})},function(t,e){t.exports=function(){throw new Error("unimplemented method")}},function(t,e,n){var r=n(2),i=n(7),o=100,u=3e3;function a(t,e){this._inputsQueue=[],this._task=t,this._isPaused=!1,this._flushDelay=e&&e.flushDelay||o,this._pauseLength=e&&e.pauseLength||u,this._flushTimeout=void 0}a.prototype.add=function(t){var e=new r;return this._inputsQueue.push({input:t,taskDoneDeferred:e}),this._scheduleFlush(),e.promise},a.prototype._scheduleFlush=function(){this._isPaused||(clearTimeout(this._flushTimeout),this._flushTimeout=setTimeout(i(this._flush,this),this._flushDelay))},a.prototype._flush=function(){try{this._task.call(null,this._inputsQueue)}catch(t){this._inputsQueue.forEach(function(e){e.taskDoneDeferred.reject(t)})}this._inputsQueue=[],this._flushTimeout=void 0},a.prototype.pause=function(t){clearTimeout(this._flushTimeout),this._isPaused=!0,!t&&this._pauseLength&&setTimeout(i(this.resume,this),this._pauseLength)},a.prototype.resume=function(){this._isPaused=!1,this._scheduleFlush()},t.exports=a},function(t,e,n){var r,i=n(72),o=n(30),u=n(2),a=n(4),s=n(19),c=n(21),d=n(31),f=n(8),l=n(12),h=n(114),p=n(59),m=n(9),v=n(11),g=n(115),w=n(3),y=n(0),b=n(1),E=p(function(){return new u});function _(t){var e=t||{should_obtain_cookie_consent:!0,experiments:{}};return new g(e.should_obtain_cookie_consent,e.experiments)}t.exports={load:function(){var t,e,n,u;if(c.ie9()||c.ie10()||"http:"!==f.protocol&&"https:"!==f.protocol)return l.devError("Using default settings due to unsupported browser or protocol."),r=_(),void E().resolve();t={origin:f.origin},s.settings().indexOf("localhost")>-1&&(t.localSettings=!0),e=v.url(i.resourceBaseUrl+i.widgetIframeHtmlPath,t),n=function(t){var n;if(e.substr(0,t.origin.length)===t.origin&&w.isTwitterURL(t.origin))try{(n="string"==typeof t.data?d.parse(t.data):t.data).namespace===h.settings&&(r=_(n.settings),E().resolve())}catch(t){l.devError(t)}},b.addEventListener("message",n),u=o({src:e,title:"Twitter settings iframe"},{display:"none"}),a.body.appendChild(u)},settingsLoaded:function(){var t,e,n;return t=new u,e=m.get("experimentOverride"),E().promise.then(function(){e&&e.name&&e.assignment&&((n={})[e.name]={bucket:e.assignment},r.experiments=y.aug(r.experiments,n)),t.resolve(r)}).catch(function(e){t.reject(e)}),t.promise}}},function(t,e){t.exports={settings:"twttr.settings"}},function(t,e){t.exports=function(t,e){this.shouldObtainCookieConsent=t,this.experiments=e||{}}},function(t,e){t.exports=function(t){return t.split("").map(function(t){return t.charCodeAt(0).toString(16)}).join("")}},function(t,e,n){t.exports=[n(118),n(123),n(131),n(133),n(135),n(149),n(152)]},function(t,e,n){var r=n(11),i=n(5),o=n(0),u=n(13),a=n(14)(),s=n(60);t.exports=function(t){return a(t,"a.twitter-dm-button").map(function(t){return s(function(t){var e=t.getAttribute("data-show-screen-name"),n=u(t),a=t.getAttribute("href"),s=t.getAttribute("data-screen-name"),c=e?i.asBoolean(e):null,d=t.getAttribute("data-size"),f=r.decodeURL(a),l=f.recipient_id,h=t.getAttribute("data-text")||f.text,p=t.getAttribute("data-welcome-message-id")||f.welcomeMessageId;return o.aug(n,{screenName:s,showScreenName:c,size:d,text:h,userId:l,welcomeMessageId:p})}(t),t.parentNode,t)})}},function(t,e,n){var r=n(0);t.exports=function t(e){var n;if(e)return n=e.lang||e.getAttribute("data-lang"),r.isType("string",n)?n:t(e.parentElement)}},function(t,e,n){var r=n(2);t.exports=function(t,e){var i=new r;return n.e(2).then(function(r){var o;try{o=n(86),i.resolve(new o(t,e))}catch(t){i.reject(t)}}.bind(null,n)).catch(function(t){i.reject(t)}),i.promise}},function(t,e,n){var r=n(122),i=n(1),o=n(10),u=n(36),a=n(18),s=n(56),c=n(26),d=n(57),f=n(45),l=n(47),h=n(7),p=n(46),m=n(6),v=n(0),g={position:"absolute",visibility:"hidden",display:"block",transform:"rotate(0deg)"},w={position:"static",visibility:"visible"};t.exports=c.couple(n(58),function(t){t.defineStatic("isSupported",function(){return!!i.HTMLElement.prototype.attachShadow&&f.inlineStyle()}),t.overrideProperty("id",{get:function(){return this.sandboxEl&&this.sandboxEl.id}}),t.overrideProperty("initialized",{get:function(){return!!this._shadowHost}}),t.overrideProperty("width",{get:function(){return this._width}}),t.overrideProperty("height",{get:function(){return this._height}}),t.overrideProperty("sandboxEl",{get:function(){return this._shadowHost}}),t.define("_updateCachedDimensions",function(){var t=this;return a.read(function(){var e,n=l(t.sandboxEl);"visible"==t.sandboxEl.style.visibility?t._width=n.width:(e=l(t.sandboxEl.parentElement).width,t._width=Math.min(n.width,e)),t._height=n.height})}),t.define("_didResize",function(){var t=this,e=this._resizeHandlers.slice(0);return this._updateCachedDimensions().then(function(){e.forEach(function(e){e(t)})})}),t.override("createElement",function(t){return this.targetGlobal.document.createElement(t)}),t.override("createFragment",function(){return this.targetGlobal.document.createDocumentFragment()}),t.override("htmlToElement",function(t){var e;return(e=this.createElement("div")).innerHTML=t,e.firstElementChild}),t.override("hasSelectedText",function(){return!!s.getSelectedText(this.targetGlobal)}),t.override("addRootClass",function(t){var e=this._shadowRootBody;return t=Array.isArray(t)?t:[t],this.initialized?a.write(function(){t.forEach(function(t){o.add(e,t)})}):m.reject(new Error("sandbox not initialized"))}),t.override("removeRootClass",function(t){var e=this._shadowRootBody;return t=Array.isArray(t)?t:[t],this.initialized?a.write(function(){t.forEach(function(t){o.remove(e,t)})}):m.reject(new Error("sandbox not initialized"))}),t.override("hasRootClass",function(t){return o.present(this._shadowRootBody,t)}),t.override("addStyleSheet",function(t,e){return this.addCss('@import url("'+t+'");',e).then(function(){return d(t)})}),t.override("prependStyleSheet",function(t){var e=this._shadowRoot;return this.addStyleSheet(t,function(t){var n=e.firstElementChild;return n?e.insertBefore(t,n):e.appendChild(t)})}),t.override("appendStyleSheet",function(t){var e=this._shadowRoot;return this.addStyleSheet(t,function(t){return e.appendChild(t)})}),t.override("addCss",function(t,e){var n;return this.initialized?f.inlineStyle()?((n=this.createElement("style")).type="text/css",n.appendChild(this.targetGlobal.document.createTextNode(t)),a.write(h(e,null,n))):m.resolve():m.reject(new Error("sandbox not initialized"))}),t.override("prependCss",function(t){var e=this._shadowRoot;return this.addCss(t,function(t){var n=e.firstElementChild;return n?e.insertBefore(t,n):e.appendChild(t)})}),t.override("appendCss",function(t){var e=this._shadowRoot;return this.addCss(t,function(t){return e.appendChild(t)})}),t.override("makeVisible",function(){return this.styleSelf(w)}),t.override("injectWidgetEl",function(t){var e=this;return this.initialized?this._shadowRootBody.firstElementChild?m.reject(new Error("widget already injected")):a.write(function(){e._shadowRootBody.appendChild(t)}).then(function(){return e._updateCachedDimensions()}).then(function(){var t=p(e._didResize,50,e);new r(e._shadowRootBody,t)}):m.reject(new Error("sandbox not initialized"))}),t.override("matchHeightToContent",function(){return m.resolve()}),t.override("matchWidthToContent",function(){return m.resolve()}),t.override("insert",function(t,e,n,r){var i=this.targetGlobal.document,o=this._shadowHost=i.createElement("twitter-widget"),s=this._shadowRoot=o.attachShadow({mode:"open"}),c=this._shadowRootBody=i.createElement("div");return v.forIn(e||{},function(t,e){o.setAttribute(t,e)}),o.id=t,s.appendChild(c),u.delegate(c,"click","A",function(t,e){e.hasAttribute("target")||e.setAttribute("target","_blank")}),m.all([this.styleSelf(g),this.addRootClass("SandboxRoot"),this.prependCss(".SandboxRoot { display: none; max-height: 10000px; }"),a.write(r.bind(null,o))])}),t.override("onResize",function(t){this._resizeHandlers.push(t)}),t.after("initialize",function(){this._shadowHost=this._shadowRoot=this._shadowRootBody=null,this._width=this._height=0,this._resizeHandlers=[]}),t.after("styleSelf",function(){return this._updateCachedDimensions()})})},function(t,e){var n;(n=function(t,e){function r(t,e){if(t.resizedAttached){if(t.resizedAttached)return void t.resizedAttached.add(e)}else t.resizedAttached=new function(){var t,e;this.q=[],this.add=function(t){this.q.push(t)},this.call=function(){for(t=0,e=this.q.length;t<e;t++)this.q[t].call()}},t.resizedAttached.add(e);t.resizeSensor=document.createElement("div"),t.resizeSensor.className="resize-sensor";var n="position: absolute; left: 0; top: 0; right: 0; bottom: 0; overflow: hidden; z-index: -1; visibility: hidden;",r="position: absolute; left: 0; top: 0; transition: 0s;";t.resizeSensor.style.cssText=n,t.resizeSensor.innerHTML='<div class="resize-sensor-expand" style="'+n+'"><div style="'+r+'"></div></div><div class="resize-sensor-shrink" style="'+n+'"><div style="'+r+' width: 200%; height: 200%"></div></div>',t.appendChild(t.resizeSensor),{fixed:1,absolute:1}[function(t,e){return t.currentStyle?t.currentStyle[e]:window.getComputedStyle?window.getComputedStyle(t,null).getPropertyValue(e):t.style[e]}(t,"position")]||(t.style.position="relative");var i,o,u=t.resizeSensor.childNodes[0],a=u.childNodes[0],s=t.resizeSensor.childNodes[1],c=(s.childNodes[0],function(){a.style.width=u.offsetWidth+10+"px",a.style.height=u.offsetHeight+10+"px",u.scrollLeft=u.scrollWidth,u.scrollTop=u.scrollHeight,s.scrollLeft=s.scrollWidth,s.scrollTop=s.scrollHeight,i=t.offsetWidth,o=t.offsetHeight});c();var d=function(t,e,n){t.attachEvent?t.attachEvent("on"+e,n):t.addEventListener(e,n)},f=function(){t.offsetWidth==i&&t.offsetHeight==o||t.resizedAttached&&t.resizedAttached.call(),c()};d(u,"scroll",f),d(s,"scroll",f)}var i=Object.prototype.toString.call(t),o="[object Array]"===i||"[object NodeList]"===i||"[object HTMLCollection]"===i||"undefined"!=typeof jQuery&&t instanceof jQuery||"undefined"!=typeof Elements&&t instanceof Elements;if(o)for(var u=0,a=t.length;u<a;u++)r(t[u],e);else r(t,e);this.detach=function(){if(o)for(var e=0,r=t.length;e<r;e++)n.detach(t[e]);else n.detach(t)}}).detach=function(t){t.resizeSensor&&(t.removeChild(t.resizeSensor),delete t.resizeSensor,delete t.resizedAttached)},void 0!==t&&void 0!==t.exports?t.exports=n:window.ResizeSensor=n},function(t,e,n){var r=n(3),i=n(0),o=n(13),u=n(14)(),a=n(63),s=n(5);t.exports=function(t){return u(t,"a.twitter-follow-button").map(function(t){return a(function(t){var e=o(t),n={screenName:r.screenName(t.href),showScreenName:"false"!==t.getAttribute("data-show-screen-name"),showCount:"false"!==t.getAttribute("data-show-count"),size:t.getAttribute("data-size"),count:t.getAttribute("data-count"),preview:t.getAttribute("data-preview")};return i.forIn(n,function(t,n){var r=e[t];e[t]=s.hasValue(r)?r:n}),e.screenName=e.screenName||e.screen_name,e}(t),t.parentNode,t)})}},function(t,e,n){var r=n(2);t.exports=function(t,e){var i=new r;return n.e(3).then(function(r){var o;try{o=n(87),i.resolve(new o(t,e))}catch(t){i.reject(t)}}.bind(null,n)).catch(function(t){i.reject(t)}),i.promise}},function(t,e,n){var r=n(18),i=n(126),o=n(59),u=n(30),a=n(2),s=n(6),c=n(7),d=n(0),f={position:"absolute",visibility:"hidden",width:"0px",height:"0px"},l={position:"static",visibility:"visible"},h={};i(function(t,e,n){var r=h[t];if(r)return e=e||1,n=n||1,r.styleSelf({width:e+"px",height:n+"px"}).then(function(){r.didResize()})}),t.exports=function(t){t.overrideProperty("id",{get:function(){return this.sandboxEl&&this.sandboxEl.id}}),t.overrideProperty("initialized",{get:function(){return!!this.iframeEl}}),t.overrideProperty("width",{get:function(){return this._width}}),t.overrideProperty("height",{get:function(){return this._height}}),t.overrideProperty("sandboxEl",{get:function(){return this.iframeEl}}),t.defineProperty("iframeEl",{get:function(){return this._iframe}}),t.define("updateCachedDimensions",function(){var t=this;return this.initialized?r.read(function(){t._width=t.sandboxEl.offsetWidth,t._height=t.sandboxEl.offsetHeight}):s.resolve()}),t.define("setTitle",function(t){this.iframeEl.title=t}),t.define("makeVisible",function(){return this.styleSelf(l)}),t.define("didResize",function(){var t=this,e=t._resizeHandlers.length>0;return this.updateCachedDimensions().then(function(){e&&t._resizeHandlers.forEach(function(e){e(t)})})}),t.define("loadDocument",function(t){var e=new a;return this.initialized?this.iframeEl.src?s.reject(new Error("widget already loaded")):(this.iframeEl.addEventListener("load",e.resolve,!1),this.iframeEl.addEventListener("error",e.reject,!1),this.iframeEl.src=t,e.promise):s.reject(new Error("sandbox not initialized"))}),t.after("initialize",function(){this._iframe=null,this._width=this._height=0,this._resizeHandlers=[]}),t.override("insert",function(t,e,n,i){var a=this;return e=d.aug({id:t},e),n=d.aug({},f,n),this._iframe=u(e,n),h[t]=this,this.onResize(o(function(){a.makeVisible()})),r.write(c(i,null,this._iframe))}),t.override("onResize",function(t){this._resizeHandlers.push(t)}),t.after("styleSelf",function(){return this.updateCachedDimensions()})}},function(t,e,n){var r=n(1),i=n(127),o=n(129),u=n(24),a=n(5),s=n(130);t.exports=function(t){function e(t,e){var n=s(this);u.trigger(t,{target:n,region:e,type:t,data:{}})}function n(e){var n=s(this),r=n&&n.id,i=a.asInt(e.width),o=a.asInt(e.height);r&&void 0!==i&&void 0!==o&&t(r,i,o)}(new i).attachReceiver(new o.Receiver(r,"twttr.button")).bind("twttr.private.trigger",e).bind("twttr.private.resizeButton",n),(new i).attachReceiver(new o.Receiver(r,"twttr.embed")).bind("twttr.private.trigger",e).bind("twttr.private.rendered",n).bind("twttr.private.resize",n)}},function(t,e,n){var r=n(31),i=n(128),o=n(0),u=n(6),a=n(22),s="2.0";function c(t){this.registry=t||{}}function d(t){var e,n;return e=o.isType("string",t),n=o.isType("number",t),e||n||null===t}function f(t,e){return{jsonrpc:s,id:d(t)?t:null,error:e}}c.prototype._invoke=function(t,e){var n,r,i;n=this.registry[t.method],r=t.params||[],r=o.isType("array",r)?r:[r];try{i=n.apply(e.source||null,r)}catch(t){i=u.reject(t.message)}return a.isPromise(i)?i:u.resolve(i)},c.prototype._processRequest=function(t,e){var n,r;return function(t){var e,n,r;return!!o.isObject(t)&&(e=t.jsonrpc===s,n=o.isType("string",t.method),r=!("id"in t)||d(t.id),e&&n&&r)}(t)?(n="params"in t&&(r=t.params,!o.isObject(r)||o.isType("function",r))?u.resolve(f(t.id,i.INVALID_PARAMS)):this.registry[t.method]?this._invoke(t,{source:e}).then(function(e){return n=t.id,{jsonrpc:s,id:n,result:e};var n},function(){return f(t.id,i.INTERNAL_ERROR)}):u.resolve(f(t.id,i.METHOD_NOT_FOUND)),null!=t.id?n:u.resolve()):u.resolve(f(t.id,i.INVALID_REQUEST))},c.prototype.attachReceiver=function(t){return t.attachTo(this),this},c.prototype.bind=function(t,e){return this.registry[t]=e,this},c.prototype.receive=function(t,e){var n,a,s,c=this;try{s=t,t=o.isType("string",s)?r.parse(s):s}catch(t){return u.resolve(f(null,i.PARSE_ERROR))}return e=e||null,a=((n=o.isType("array",t))?t:[t]).map(function(t){return c._processRequest(t,e)}),n?function(t){return u.all(t).then(function(t){return(t=t.filter(function(t){return void 0!==t})).length?t:void 0})}(a):a[0]},t.exports=c},function(t){t.exports={PARSE_ERROR:{code:-32700,message:"Parse error"},INVALID_REQUEST:{code:-32600,message:"Invalid Request"},INVALID_PARAMS:{code:-32602,message:"Invalid params"},METHOD_NOT_FOUND:{code:-32601,message:"Method not found"},INTERNAL_ERROR:{code:-32603,message:"Internal error"}}},function(t,e,n){var r=n(8),i=n(1),o=n(31),u=n(2),a=n(21),s=n(0),c=n(3),d=n(7),f=a.ie9();function l(t,e,n){var r;t&&t.postMessage&&(f?r=(n||"")+o.stringify(e):n?(r={})[n]=e:r=e,t.postMessage(r,"*"))}function h(t){return s.isType("string",t)?t:"JSONRPC"}function p(t,e){return e?s.isType("string",t)&&0===t.indexOf(e)?t.substring(e.length):t&&t[e]?t[e]:void 0:t}function m(t,e){var n=t.document;this.filter=h(e),this.server=null,this.isTwitterFrame=c.isTwitterURL(n.location.href),t.addEventListener("message",d(this._onMessage,this),!1)}function v(t,e){this.pending={},this.target=t,this.isTwitterHost=c.isTwitterURL(r.href),this.filter=h(e),i.addEventListener("message",d(this._onMessage,this),!1)}s.aug(m.prototype,{_onMessage:function(t){var e,n=this;this.server&&(this.isTwitterFrame&&!c.isTwitterURL(t.origin)||(e=p(t.data,this.filter))&&this.server.receive(e,t.source).then(function(e){e&&l(t.source,e,n.filter)}))},attachTo:function(t){this.server=t},detach:function(){this.server=null}}),s.aug(v.prototype,{_processResponse:function(t){var e=this.pending[t.id];e&&(e.resolve(t),delete this.pending[t.id])},_onMessage:function(t){var e;if((!this.isTwitterHost||c.isTwitterURL(t.origin))&&(e=p(t.data,this.filter))){if(s.isType("string",e))try{e=o.parse(e)}catch(t){return}(e=s.isType("array",e)?e:[e]).forEach(d(this._processResponse,this))}},send:function(t){var e=new u;return t.id?this.pending[t.id]=e:e.resolve(),l(this.target,t,this.filter),e.promise}}),t.exports={Receiver:m,Dispatcher:v,_stringifyPayload:function(t){return arguments.length>0&&(f=!!t),f}}},function(t,e,n){var r=n(4);t.exports=function(t){for(var e,n=r.getElementsByTagName("iframe"),i=0;n[i];i++)if((e=n[i]).contentWindow===t)return e}},function(t,e,n){var r=n(5),i=n(0),o=n(3),u=n(13),a=n(14)(),s=n(64);t.exports=function(t){return a(t,"a.twitter-moment").map(function(t){return s(function(t){var e=u(t),n={momentId:o.momentId(t.href),chrome:t.getAttribute("data-chrome"),limit:t.getAttribute("data-limit")};return i.forIn(n,function(t,n){var i=e[t];e[t]=r.hasValue(i)?i:n}),e}(t),t.parentNode,t)})}},function(t,e,n){var r=n(2);t.exports=function(t,e){var i=new r;return Promise.all([n.e(0),n.e(4)]).then(function(r){var o;try{o=n(88),i.resolve(new o(t,e))}catch(t){i.reject(t)}}.bind(null,n)).catch(function(t){i.reject(t)}),i.promise}},function(t,e,n){var r=n(0),i=n(13),o=n(14)(),u=n(65),a=/^https?:\/\/(?:www\.)?(?:periscope|pscp)\.tv\/@?([a-zA-Z0-9_]+)\/?$/i;t.exports=function(t){return o(t,"a.periscope-on-air").map(function(t){return u(function(t){var e=i(t),n=t.getAttribute("href"),o=t.getAttribute("data-size"),u=a.exec(n)[1];return r.aug(e,{username:u,size:o})}(t),t.parentNode,t)})}},function(t,e,n){var r=n(2);t.exports=function(t,e){var i=new r;return n.e(5).then(function(r){var o;try{o=n(89),i.resolve(new o(t,e))}catch(t){i.reject(t)}}.bind(null,n)).catch(function(t){i.reject(t)}),i.promise}},function(t,e,n){var r=n(5),i=n(0),o=n(66),u=n(13),a=n(14)(),s=n(67),c=n(3),d=n(12);t.exports=function(t){return a(t,"a.twitter-timeline,div.twitter-timeline,a.twitter-grid").map(function(t){return s(function(t){var e=u(t),n=t.getAttribute("data-show-replies"),a={isPreconfigured:!!t.getAttribute("data-widget-id"),chrome:t.getAttribute("data-chrome"),tweetLimit:t.getAttribute("data-tweet-limit")||t.getAttribute("data-limit"),ariaLive:t.getAttribute("data-aria-polite"),theme:t.getAttribute("data-theme"),linkColor:t.getAttribute("data-link-color"),borderColor:t.getAttribute("data-border-color"),showReplies:n?r.asBoolean(n):null,profileScreenName:t.getAttribute("data-screen-name"),profileUserId:t.getAttribute("data-user-id"),favoritesScreenName:t.getAttribute("data-favorites-screen-name"),favoritesUserId:t.getAttribute("data-favorites-user-id"),likesScreenName:t.getAttribute("data-likes-screen-name"),likesUserId:t.getAttribute("data-likes-user-id"),listOwnerScreenName:t.getAttribute("data-list-owner-screen-name"),listOwnerUserId:t.getAttribute("data-list-owner-id"),listId:t.getAttribute("data-list-id"),listSlug:t.getAttribute("data-list-slug"),customTimelineId:t.getAttribute("data-custom-timeline-id"),staticContent:t.getAttribute("data-static-content"),url:t.href};return a.isPreconfigured&&(c.isSearchUrl(a.url)?d.publicError("Embedded Search timelines have been deprecated. See https://twittercommunity.com/t/deprecating-widget-settings/102295.",t):d.publicLog("You may have been affected by an update to settings in embedded timelines. See https://twittercommunity.com/t/deprecating-widget-settings/102295.",t)),"twitter-grid"===t.className&&d.publicLog("Embedded grids have been deprecated and will now render as timelines. Please update your embed code to use the twitter-timeline class. More info: https://twittercommunity.com/t/update-on-the-embedded-grid-display-type/119564.",t),(a=i.aug(a,e)).dataSource=o(a),a.id=a.dataSource&&a.dataSource.id,a}(t),t.parentNode,t)})}},function(t,e,n){var r=n(27);t.exports=r.build([n(28),n(139)])},function(t,e,n){var r=n(0),i=n(138);t.exports=function(t){return"en"===t||r.contains(i,t)}},function(t,e){t.exports=["hi","zh-cn","fr","zh-tw","msa","fil","fi","sv","pl","ja","ko","de","it","pt","es","ru","id","tr","da","no","nl","hu","fa","ar","ur","he","th","cs","uk","vi","ro","bn","el","en-gb","gu","kn","mr","ta","bg","ca","hr","sr","sk"]},function(t,e,n){var r=n(3),i=n(0),o=n(19);function u(t,e){return r.collectionId(t)||e}t.exports=function(t){t.params({id:{},url:{}}),t.overrideProperty("id",{get:function(){return"collection:"+u(this.params.url,this.params.id)}}),t.overrideProperty("endpoint",{get:function(){return o.timeline(["collection"])}}),t.around("queryParams",function(t){return i.aug(t(),{collection_id:u(this.params.url,this.params.id)})}),t.before("initialize",function(){if(!u(this.params.url,this.params.id))throw new Error("one of url or id is required")})}},function(t,e,n){var r=n(27);t.exports=r.build([n(28),n(141)])},function(t,e,n){var r=n(3),i=n(0),o=n(19);function u(t,e){return r.eventId(t)||e}t.exports=function(t){t.params({id:{},url:{}}),t.overrideProperty("id",{get:function(){return"event:"+u(this.params.url,this.params.id)}}),t.overrideProperty("endpoint",{get:function(){return o.timeline(["event"])}}),t.around("queryParams",function(t){return i.aug(t(),{event_id:u(this.params.url,this.params.id)})}),t.before("initialize",function(){if(!u(this.params.url,this.params.id))throw new Error("one of url or id is required")})}},function(t,e,n){var r=n(27);t.exports=r.build([n(28),n(143)])},function(t,e,n){var r=n(3),i=n(0),o=n(19);function u(t){return r.likesScreenName(t.url)||t.screenName}t.exports=function(t){t.params({screenName:{},userId:{},url:{}}),t.overrideProperty("id",{get:function(){return"likes:"+(u(this.params)||this.params.userId)}}),t.overrideProperty("endpoint",{get:function(){return o.timeline(["likes"])}}),t.define("_getLikesQueryParam",function(){var t=u(this.params);return t?{screen_name:t}:{user_id:this.params.userId}}),t.around("queryParams",function(t){return i.aug(t(),this._getLikesQueryParam())}),t.before("initialize",function(){if(!u(this.params)&&!this.params.userId)throw new Error("screen name or user id is required")})}},function(t,e,n){var r=n(27);t.exports=r.build([n(28),n(145)])},function(t,e,n){var r=n(3),i=n(0),o=n(19),u="list:";function a(t){var e=r.listScreenNameAndSlug(t.url)||t;return i.compact({screen_name:e.ownerScreenName,user_id:e.ownerUserId,list_slug:e.slug})}t.exports=function(t){t.params({id:{},ownerScreenName:{},ownerUserId:{},slug:{},url:{}}),t.overrideProperty("id",{get:function(){var t,e,n;return this.params.id?u+this.params.id:(e=(t=a(this.params))&&t.list_slug.replace(/-/g,"_"),n=t&&(t.screen_name||t.user_id),u+(n+":")+e)}}),t.overrideProperty("endpoint",{get:function(){return o.timeline(["list"])}}),t.define("_getListQueryParam",function(){return this.params.id?{list_id:this.params.id}:a(this.params)}),t.around("queryParams",function(t){return i.aug(t(),this._getListQueryParam())}),t.before("initialize",function(){var t=a(this.params);if(i.isEmptyObject(t)&&!this.params.id)throw new Error("qualified slug or list id required")})}},function(t,e,n){var r=n(27);t.exports=r.build([n(28),n(147)])},function(t,e,n){var r=n(3),i=n(5),o=n(0),u=n(19);function a(t,e){return r.screenName(t)||e}t.exports=function(t){t.params({showReplies:{fallback:!1,transform:i.asBoolean},screenName:{},userId:{},url:{}}),t.overrideProperty("id",{get:function(){return"profile:"+(a(this.params.url,this.params.screenName)||this.params.userId)}}),t.overrideProperty("endpoint",{get:function(){return u.timeline(["profile"])}}),t.define("_getProfileQueryParam",function(){var t=a(this.params.url,this.params.screenName),e=t?{screen_name:t}:{user_id:this.params.userId};return o.aug(e,{with_replies:this.params.showReplies?"true":"false"})}),t.around("queryParams",function(t){return o.aug(t(),this._getProfileQueryParam())}),t.before("initialize",function(){if(!a(this.params.url,this.params.screenName)&&!this.params.userId)throw new Error("screen name or user id is required")})}},function(t,e,n){var r=n(2);t.exports=function(t,e){var i=new r;return Promise.all([n.e(0),n.e(6)]).then(function(r){var o;try{o=n(90),i.resolve(new o(t,e))}catch(t){i.reject(t)}}.bind(null,n)).catch(function(t){i.reject(t)}),i.promise}},function(t,e,n){var r=n(10),i=n(3),o=n(0),u=n(13),a=n(14)(),s=n(68),c=/\btw-align-(left|right|center)\b/;t.exports=function(t,e){return a(t,"blockquote.twitter-tweet, blockquote.twitter-video").map(function(t){return s(function(t){var e=u(t),n=t.getElementsByTagName("A"),a=n&&n[n.length-1],s=a&&i.status(a.href),d=t.getAttribute("data-conversation"),f="none"==d||"hidden"==d||r.present(t,"tw-hide-thread"),l=t.getAttribute("data-cards"),h="none"==l||"hidden"==l||r.present(t,"tw-hide-media"),p=t.getAttribute("data-align")||t.getAttribute("align"),m=t.getAttribute("data-link-color"),v=t.getAttribute("data-theme");return!p&&c.test(t.className)&&(p=RegExp.$1),o.aug(e,{tweetId:s,hideThread:f,hideCard:h,align:p,linkColor:m,theme:v,id:s})}(t),t.parentNode,t,e)})}},function(t,e,n){var r=n(2);t.exports=function(t,e){var i=new r;return Promise.all([n.e(0),n.e(7)]).then(function(r){var o;try{o=n(91),i.resolve(new o(t,e))}catch(t){i.reject(t)}}.bind(null,n)).catch(function(t){i.reject(t)}),i.promise}},function(t,e,n){var r=n(2);t.exports=function(t,e){var i=new r;return Promise.all([n.e(0),n.e(7)]).then(function(r){var o;try{o=n(92),i.resolve(new o(t,e))}catch(t){i.reject(t)}}.bind(null,n)).catch(function(t){i.reject(t)}),i.promise}},function(t,e,n){var r=n(10),i=n(0),o=n(13),u=n(14)(),a=n(69),s=n(5);t.exports=function(t){return u(t,"a.twitter-share-button, a.twitter-mention-button, a.twitter-hashtag-button").map(function(t){return a(function(t){var e=o(t),n={screenName:t.getAttribute("data-button-screen-name"),text:t.getAttribute("data-text"),type:t.getAttribute("data-type"),size:t.getAttribute("data-size"),url:t.getAttribute("data-url"),hashtags:t.getAttribute("data-hashtags"),via:t.getAttribute("data-via"),buttonHashtag:t.getAttribute("data-button-hashtag")};return i.forIn(n,function(t,n){var r=e[t];e[t]=s.hasValue(r)?r:n}),e.screenName=e.screenName||e.screen_name,e.buttonHashtag=e.buttonHashtag||e.button_hashtag||e.hashtag,r.present(t,"twitter-hashtag-button")&&(e.type="hashtag"),r.present(t,"twitter-mention-button")&&(e.type="mention"),e}(t),t.parentNode,t)})}},function(t,e,n){var r=n(2);t.exports=function(t,e){var i=new r;return n.e(3).then(function(r){var o;try{o=n(93),i.resolve(new o(t,e))}catch(t){i.reject(t)}}.bind(null,n)).catch(function(t){i.reject(t)}),i.promise}},function(t,e,n){var r=n(0);t.exports=r.aug({},n(155),n(156),n(157),n(158),n(159),n(160),n(161))},function(t,e,n){var r=n(60),i=n(17)(["userId"],{},r);t.exports={createDMButton:i}},function(t,e,n){var r=n(63),i=n(17)(["screenName"],{},r);t.exports={createFollowButton:i}},function(t,e,n){var r=n(64),i=n(17)(["momentId"],{},r);t.exports={createMoment:i}},function(t,e,n){var r=n(65),i=n(17)(["username"],{},r);t.exports={createPeriscopeOnAirButton:i}},function(t,e,n){var r=n(8),i=n(12),o=n(3),u=n(0),a=n(5),s=n(66),c=n(67),d=n(17)([],{},c),f=n(6),l={createTimeline:h,createGridFromCollection:function(t){var e=u.toRealArray(arguments).slice(1),n={sourceType:"collection",id:t};return e.unshift(n),i.publicLog("Embedded grids have been deprecated. Please use twttr.widgets.createTimeline instead. More info: https://twittercommunity.com/t/update-on-the-embedded-grid-display-type/119564."),h.apply(this,e)}};function h(t){var e,n=u.toRealArray(arguments).slice(1);return a.isString(t)||a.isNumber(t)?f.reject("Embedded timelines with widget settings have been deprecated. See https://twittercommunity.com/t/deprecating-widget-settings/102295."):u.isObject(t)?(t=t||{},n.forEach(function(t){u.isType("object",t)&&function(t){t.ariaLive=t.ariaPolite}(e=t)}),e||(e={},n.push(e)),t.lang=e.lang,t.tweetLimit=e.tweetLimit,t.showReplies=e.showReplies,e.dataSource=s(t),d.apply(this,n)):f.reject("data source must be an object.")}o.isTwitterURL(r.href)&&(l.createTimelinePreview=function(t,e,n){var r={previewParams:t,useLegacyDefaults:!0,isPreviewTimeline:!0};return r.dataSource=s(r),d(e,r,n)}),t.exports=l},function(t,e,n){var r,i=n(0),o=n(68),u=n(17),a=(r=u(["tweetId"],{},o),function(){return i.toRealArray(arguments).slice(1).forEach(function(t){i.isType("object",t)&&(t.hideCard="none"==t.cards||"hidden"==t.cards,t.hideThread="none"==t.conversation||"hidden"==t.conversation)}),r.apply(this,arguments)});t.exports={createTweet:a,createTweetEmbed:a,createVideo:a}},function(t,e,n){var r=n(0),i=n(69),o=n(17),u=o(["url"],{type:"share"},i),a=o(["buttonHashtag"],{type:"hashtag"},i),s=o(["screenName"],{type:"mention"},i);function c(t){return function(){return r.toRealArray(arguments).slice(1).forEach(function(t){r.isType("object",t)&&(t.screenName=t.screenName||t.screen_name,t.buttonHashtag=t.buttonHashtag||t.button_hashtag||t.hashtag)}),t.apply(this,arguments)}}t.exports={createShareButton:c(u),createHashtagButton:c(a),createMentionButton:c(s)}},function(t,e,n){var r,i,o,u=n(4),a=n(1),s=0,c=[],d=u.createElement("a");function f(){var t,e;for(s=1,t=0,e=c.length;t<e;t++)c[t]()}/^loade|c/.test(u.readyState)&&(s=1),u.addEventListener&&u.addEventListener("DOMContentLoaded",i=function(){u.removeEventListener("DOMContentLoaded",i,!1),f()},!1),d.doScroll&&u.attachEvent("onreadystatechange",r=function(){/^c/.test(u.readyState)&&(u.detachEvent("onreadystatechange",r),f())}),o=d.doScroll?function(t){a.self!=a.top?s?t():c.push(t):function(){try{d.doScroll("left")}catch(e){return setTimeout(function(){o(t)},50)}t()}()}:function(t){s?t():c.push(t)},t.exports=o},function(t,e,n){var r=n(44),i=n(9);t.exports=function(){i.set("buildVersion",r.version)}},function(t,e,n){n(165),n(85),n(168)},function(t,e,n){var r=n(166),i=n(29),o=n(70),u=new r,a=function(t){t.widgets&&1===t.widgets.length&&(u.start(),i.emitter.unbind(i.ALL_WIDGETS_RENDER_START,a))},s=function(t){var e;t.widgets&&1===t.widgets.length&&(e=t.widgets[0],u.end(),e.dataset&&e.dataset.tweetId&&o({duration:u.duration(),namespace:{element:"tweet",action:"render"},widgetIds:[e.dataset.tweetId]})),i.emitter.unbind(i.ALL_WIDGETS_RENDER_END,s)};i.emitter.bind(i.ALL_WIDGETS_RENDER_START,a),i.emitter.bind(i.ALL_WIDGETS_RENDER_END,s)},function(t,e,n){var r=n(167);function i(){}i.prototype.start=function(){this._startTime=r()},i.prototype.end=function(){this._duration=r()-this._startTime},i.prototype.duration=function(){return this._duration},t.exports=i},function(t,e,n){var r=n(1);t.exports=function(){return r.performance&&r.performance.now?r.performance.now():Date.now()}},function(t,e,n){var r=n(29),i=n(70),o=n(169),u=n(3),a=n(1),s=n(0),c=n(21),d=n(62);function f(t){return t.performance.getEntriesByType("resource").filter(function(t){return u.isTwimgURL(t.name)||u.isTwitterURL(t.name)}).reduce(function(t,e){return t[e.name]=e.duration,t},{})}r.emitter.bind(r.ALL_WIDGETS_AND_IMAGES_LOADED,function(t){var e,n,r=[];c.hasPerformanceInformation()&&(e=f(a),d.isSupported()||(r=function(t){return t.reduce(function(t,e){return s.aug(t,f(e.contentDocument.defaultView))},{})}(t)),n=s.aug({},e,r),Object.keys(o).forEach(function(t){!function(t,e,n){var r=Object.keys(t).reduce(function(e,r){return n(r)?e+t[r]:e},0);i({duration:r,namespace:{element:e,action:"resource"}})}(n,t,o[t])}))})},function(t,e,n){var r=n(3),i={all:function(){return!0},image:function(t){return r.isTwimgURL(t)},settings:function(t){return r.isSettingsURL(t)},widget_iframe:function(t){return r.isWidgetIframeURL(t)}};t.exports=i}]))))}),t(".ctf").each(function(){var e=t(this),i=parseInt(e.attr("data-ctfneeded"));e.width()<=480&&e.addClass("ctf-narrow"),e.width()<=320&&e.addClass("ctf-super-narrow"),t(this).hasClass("ctf_is_initialized")||n(e),setTimeout(function(){if(i>0){var t=e.find(".ctf-more"),n=e.find(".ctf-item").last().attr("id"),o=e.find(".ctf-item").length;r(n,e.attr("data-ctfshortcode"),e,t,i,o)}},500),e.find(".ctf-more").on("click",function(){var n=t(this),i=e.find(".ctf-item").last().attr("id"),o=e.find(".ctf-item").length;r(i,e.attr("data-ctfshortcode"),e,n,0,o)}),e.find(".ctf-author-box-link p:empty").remove()})}function n(e){e.addClass("ctf_is_initialized"),e.find(".ctf-item.ctf-new").each(function(){var n,r,i,o,u,a,s=t(this),c=s.find(".ctf-tweet-text-media-wrap"),d=s.find(".ctf-tweet-text").remove(".ctf-tweet-text-media-wrap"),f=" "+d.html();if("true"!=e.attr("data-ctfdisablelinks")&&void 0!==f&&!e.find(".ctf-tweet-text-link").length){var l=e.attr("data-ctflinktextcolor"),h="";l&&(h=l.replace(";","").split("#")[1]),window.ctfLinkify=(n="[a-z\\d.-]+://",r="mailto:",i=new RegExp("(?:\\b[a-z\\d.-]+://[^<>\\s]+|\\b(?:(?:(?:[^\\s!@#$%^&*()_=+[\\]{}\\\\|;:'\",.<>/?]+)\\.)+(?:ac|ad|aero|ae|af|ag|ai|al|am|an|ao|aq|arpa|ar|asia|as|at|au|aw|ax|az|ba|bb|bd|be|bf|bg|bh|biz|bi|bj|bm|bn|bo|br|bs|bt|bv|bw|by|bz|cat|ca|cc|cd|cf|cg|ch|ci|ck|cl|cm|cn|coop|com|co|cr|cu|cv|cx|cy|cz|de|dj|dk|dm|do|dz|ec|edu|ee|eg|er|es|et|eu|fi|fj|fk|fm|fo|fr|ga|gb|gd|ge|gf|gg|gh|gi|gl|gm|gn|gov|gp|gq|gr|gs|gt|gu|gw|gy|hk|hm|hn|hr|ht|hu|id|ie|il|im|info|int|in|io|iq|ir|is|it|je|jm|jobs|jo|jp|ke|kg|kh|ki|km|kn|kp|kr|kw|ky|kz|la|lb|lc|li|lk|lr|ls|lt|lu|lv|ly|ma|mc|md|me|mg|mh|mil|mk|ml|mm|mn|mobi|mo|mp|mq|mr|ms|mt|museum|mu|mv|mw|mx|my|mz|name|na|nc|net|ne|nf|ng|ni|nl|no|np|nr|nu|nz|om|org|pa|pe|pf|pg|ph|pk|pl|pm|pn|pro|pr|ps|pt|pw|py|qa|re|ro|rs|ru|rw|sa|sb|sc|sd|se|sg|sh|si|sj|sk|sl|sm|sn|so|sr|st|su|sv|sy|sz|tc|td|tel|tf|tg|th|tj|tk|tl|tm|tn|to|tp|travel|tr|tt|tv|tw|tz|ua|ug|uk|um|us|uy|uz|va|vc|ve|vg|vi|vn|vu|wf|ws|xn--0zwm56d|xn--11b5bs3a9aj6g|xn--80akhbyknj4f|xn--9t4b11yi5a|xn--deba0ad|xn--g6w251d|xn--hgbk6aj7f53bba|xn--hlcj6aya9esc7a|xn--jxalpdlp|xn--kgbechtv|xn--zckzah|ye|yt|yu|za|zm|zw)|(?:(?:[0-9]|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])\\.){3}(?:[0-9]|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5]))(?:[;/][^#?<>\\s]*)?(?:\\?[^#<>\\s]*)?(?:#[^<>\\s]*)?(?!\\w)|(?:mailto:)?[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:(?:(?:[^\\s!@#$%^&*()_=+[\\]{}\\\\|;:'\",.<>/?]+)\\.)+(?:ac|ad|aero|ae|af|ag|ai|al|am|an|ao|aq|arpa|ar|asia|as|at|au|aw|ax|az|ba|bb|bd|be|bf|bg|bh|biz|bi|bj|bm|bn|bo|br|bs|bt|bv|bw|by|bz|cat|ca|cc|cd|cf|cg|ch|ci|ck|cl|cm|cn|coop|com|co|cr|cu|cv|cx|cy|cz|de|dj|dk|dm|do|dz|ec|edu|ee|eg|er|es|et|eu|fi|fj|fk|fm|fo|fr|ga|gb|gd|ge|gf|gg|gh|gi|gl|gm|gn|gov|gp|gq|gr|gs|gt|gu|gw|gy|hk|hm|hn|hr|ht|hu|id|ie|il|im|info|int|in|io|iq|ir|is|it|je|jm|jobs|jo|jp|ke|kg|kh|ki|km|kn|kp|kr|kw|ky|kz|la|lb|lc|li|lk|lr|ls|lt|lu|lv|ly|ma|mc|md|me|mg|mh|mil|mk|ml|mm|mn|mobi|mo|mp|mq|mr|ms|mt|museum|mu|mv|mw|mx|my|mz|name|na|nc|net|ne|nf|ng|ni|nl|no|np|nr|nu|nz|om|org|pa|pe|pf|pg|ph|pk|pl|pm|pn|pro|pr|ps|pt|pw|py|qa|re|ro|rs|ru|rw|sa|sb|sc|sd|se|sg|sh|si|sj|sk|sl|sm|sn|so|sr|st|su|sv|sy|sz|tc|td|tel|tf|tg|th|tj|tk|tl|tm|tn|to|tp|travel|tr|tt|tv|tw|tz|ua|ug|uk|um|us|uy|uz|va|vc|ve|vg|vi|vn|vu|wf|ws|xn--0zwm56d|xn--11b5bs3a9aj6g|xn--80akhbyknj4f|xn--9t4b11yi5a|xn--deba0ad|xn--g6w251d|xn--hgbk6aj7f53bba|xn--hlcj6aya9esc7a|xn--jxalpdlp|xn--kgbechtv|xn--zckzah|ye|yt|yu|za|zm|zw)|(?:(?:[0-9]|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])\\.){3}(?:[0-9]|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5]))(?:\\?[^#<>\\s]*)?(?:#[^<>\\s]*)?(?!\\w))","ig"),o=new RegExp("^"+n,"i"),u={"'":"`",">":"<",")":"(","]":"[","}":"{","B;":"B+","b:":"b9"},a={callback:function(t,e){return e?'<a href="'+e+'" title="'+e+'" target="_blank">'+t+"</a>":t},punct_regexp:/(?:[!?.,:;'"]|(?:&|&)(?:lt|gt|quot|apos|raquo|laquo|rsaquo|lsaquo);)$/},function(t,e){e=e||{};var n,s,c,d,f,l,h,p,m,v,g,w,y="",b=[];for(s in a)void 0===e[s]&&(e[s]=a[s]);for(;n=i.exec(t);)if(c=n[0],h=(l=i.lastIndex)-c.length,!/[\/:]/.test(t.charAt(h-1))){do{p=c,w=c.substr(-1),(g=u[w])&&(m=c.match(new RegExp("\\"+g+"(?!$)","g")),v=c.match(new RegExp("\\"+w,"g")),(m?m.length:0)<(v?v.length:0)&&(c=c.substr(0,c.length-1),l--)),e.punct_regexp&&(c=c.replace(e.punct_regexp,function(t){return l-=t.length,""}))}while(c.length&&c!==p);d=c,o.test(d)||(d=(-1!==d.indexOf("@")?d.indexOf(r)?r:"":d.indexOf("irc.")?d.indexOf("ftp.")?"http://":"ftp://":"irc://")+d),f!=h&&(b.push([t.slice(f,h)]),f=l),b.push([c,d])}for(b.push([t.substr(f)]),s=0;s<b.length;s++)y+=e.callback.apply(window,b[s]);return y||t}),d.find("a").length||(d.find(".emoji").each(function(){t(this).replaceWith(t(this).attr("alt"))}),f=" "+d.html(),f=ctfLinkify(f));f.length>0&&(f=(f=f.replace(/<br>/g,"<br> ")).replace(/(^|\s)#(\w*[\u0041-\u005A\u0061-\u007A\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]+\w*)/gi,function(t){var e=jQuery.trim(t);return/^#[0-9A-F]{6}$/i.test(e)?e:' <a href="https://twitter.com/hashtag/'+e.substring(1)+'" target="_blank" rel="nofollow">'+e+"</a>"}));f=f.replace(/[\s][@]+[A-Za-z0-9-_]+/g,function(t){var e=jQuery.trim(t);return' <a href="https://twitter.com/'+e.substring(1)+'" target="_blank" rel="nofollow">'+e+"</a>"}),d.html(f.trim()),d.append(c),d.find("a").css("color","#"+h),c.css("color","#"+h)}s.find(".ctf-tweet-text a").each(function(){jQuery(this).text().indexOf("http")>-1&&jQuery(this).text().length>63&&jQuery(this).text(jQuery(this).text().substring(0,60)+"...")})}),e.find(".ctf-author-name, .ctf-tweet-date, .ctf-author-screenname, .ctf-twitterlink, .ctf-author-box-link, .ctf-retweet-text, .ctf-quoted-tweet").css("color",e.find(".ctf-tweet-text").css("color")),e.find(".ctf-header .ctf-header-link").hover(function(){e.find(".ctf-header .ctf-header-img-hover").fadeIn(200)},function(){e.find(".ctf-header .ctf-header-img-hover").stop().fadeOut(600)}),e.find(".ctf_more").unbind("click").bind("click",function(e){e.preventDefault(),t(this).hide().next(".ctf_remaining").show()}),"function"==typeof ctf_custom_js&&ctf_custom_js(t),e.find(".ctf-author-box-link p:empty").remove()}function r(t,e,r,i,o,u){i.addClass("ctf-loading").append('<div class="ctf-loader"></div>'),i.find(".ctf-loader").css("background-color",i.css("color")),jQuery.ajax({url:ctf.ajax_url,type:"post",data:{action:"ctf_get_more_posts",last_id_data:t,shortcode_data:e,num_needed:o,persistent_index:u},success:function(e){""!==t?(-1==e.indexOf("<meta charset")&&r.find(".ctf-item").removeClass("ctf-new").last().after(e),r.find(".ctf-out-of-tweets").length&&(i.hide(),r.find(".ctf-out-of-tweets p").eq(0).fadeIn().end().eq(1).delay(500).fadeIn())):r.find(".ctf-tweets").append(e),i.removeClass("ctf-loading").find(".ctf-loader").remove(),n(r)}})}},jQuery(document).ready(function(t){ctf_init()})}(jQuery);
|
1 |
+
var ctf_js_exists=void 0!==ctf_js_exists;ctf_js_exists||function(u){function t(){if(window.ctfObject.consentGiven||!window.ctfObject.gdpr)return!0;if("undefined"!=typeof CLI_Cookie)null!==CLI_Cookie.read(CLI_ACCEPT_COOKIE_NAME)&&(window.ctfObject.consentGiven="yes"===CLI_Cookie.read("cookielawinfo-checkbox-non-necessary"));else if(void 0!==window.cnArgs){var u=("; "+document.cookie).split("; cookie_notice_accepted=");if(2===u.length){var t=u.pop().split(";").shift();window.ctfObject.consentGiven="true"===t}}else void 0!==window.cookieconsent?window.ctfObject.consentGiven="allow"===function(u){for(var t=u+"=",e=window.document.cookie.split(";"),n=0;n<e.length;n++){var i=e[n].trim();if(0==i.indexOf(t))return i.substring(t.length,i.length)}return""}("complianz_consent_status"):void 0!==window.Cookiebot?window.ctfObject.consentGiven=Cookiebot.consented:void 0!==window.BorlabsCookie&&(window.ctfObject.consentGiven=window.BorlabsCookie.checkCookieConsent("twitter"));var e=jQuery.Event("ctfcheckconsent");return e.feed=this,jQuery(window).trigger(e),window.ctfObject.consentGiven}function e(t){t.find(".ctf-hide-avatar").length&&!t.find(".ctf-hide-avatar.ctf-no-consent").length||t.find(".ctf-item").addClass("ctf-hide-avatar ctf-no-consent"),u(".ctf-header-img span").length&&u(".ctf-header-img").addClass("ctf-no-consent")}function n(t){c(),t.find(".ctf-item.ctf-no-consent").removeClass("ctf-hide-avatar"),t.find(".ctf-author-avatar").each(function(){u(this).find("span").replaceWith('<img src="'+u(this).find("span").attr("data-avatar")+'" alt="'+u(this).find("span").attr("data-alt")+'" width="48" height="48">')}),t.find(".ctf-header-img").each(function(){u(this).find("span").replaceWith('<img src="'+u(this).find("span").attr("data-avatar")+'" alt="'+u(this).find("span").attr("data-alt")+'" width="48" height="48">')}),t.find(".ctf-no-consent").removeClass("ctf-no-consent"),t.find(".ctf-header .ctf-header-link").hover(function(){t.find(".ctf-header .ctf-header-img-hover").fadeIn(200)},function(){t.find(".ctf-header .ctf-header-img-hover").stop().fadeOut(600)})}function i(){t()&&u(".ctf").each(function(){n(u(this))})}function c(){void 0===window.ctfObject.intentsIncluded&&(window.ctfObject.intentsIncluded=!1),u(".ctf").each(function(){window.ctfObject.intentsIncluded||void 0===u(this).attr("data-ctfintents")||(window.ctfObject.intentsIncluded=!0,function(){if(!window.__twitterIntentHandler){var u=/twitter\.com\/intent\/(\w+)/,t="scrollbars=yes,resizable=yes,toolbar=no,location=yes",e=550,n=420,i=screen.height,c=screen.width;document.addEventListener?document.addEventListener("click",a,!1):document.attachEvent&&document.attachEvent("onclick",a),window.__twitterIntentHandler=!0}function a(a){for(var o,s,f=(a=a||window.event).target||a.srcElement;f&&"a"!==f.nodeName.toLowerCase();)f=f.parentNode;f&&"a"===f.nodeName.toLowerCase()&&f.href&&f.href.match(u)&&(o=Math.round(c/2-e/2),s=0,i>n&&(s=Math.round(i/2-n/2)),window.open(f.href,"intent",t+",width="+e+",height="+n+",left="+o+",top="+s),a.returnValue=!1,a.preventDefault&&a.preventDefault())}}())})}window.ctf_init=function(){function i(i){i.addClass("ctf_is_initialized"),t()?n(i):e(i),i.find(".ctf-item.ctf-new").each(function(){var t,e,n,c,a,o,s=u(this),f=s.find(".ctf-tweet-text-media-wrap"),d=s.find(".ctf-tweet-text").remove(".ctf-tweet-text-media-wrap"),r=" "+d.html();if("true"!=i.attr("data-ctfdisablelinks")&&void 0!==r&&!i.find(".ctf-tweet-text-link").length){var A=i.attr("data-ctflinktextcolor"),l="";A&&(l=A.replace(";","").split("#")[1]),window.ctfLinkify=(t="[a-z\\d.-]+://",e="mailto:",n=new RegExp("(?:\\b[a-z\\d.-]+://[^<>\\s]+|\\b(?:(?:(?:[^\\s!@#$%^&*()_=+[\\]{}\\\\|;:'\",.<>/?]+)\\.)+(?:ac|ad|aero|ae|af|ag|ai|al|am|an|ao|aq|arpa|ar|asia|as|at|au|aw|ax|az|ba|bb|bd|be|bf|bg|bh|biz|bi|bj|bm|bn|bo|br|bs|bt|bv|bw|by|bz|cat|ca|cc|cd|cf|cg|ch|ci|ck|cl|cm|cn|coop|com|co|cr|cu|cv|cx|cy|cz|de|dj|dk|dm|do|dz|ec|edu|ee|eg|er|es|et|eu|fi|fj|fk|fm|fo|fr|ga|gb|gd|ge|gf|gg|gh|gi|gl|gm|gn|gov|gp|gq|gr|gs|gt|gu|gw|gy|hk|hm|hn|hr|ht|hu|id|ie|il|im|info|int|in|io|iq|ir|is|it|je|jm|jobs|jo|jp|ke|kg|kh|ki|km|kn|kp|kr|kw|ky|kz|la|lb|lc|li|lk|lr|ls|lt|lu|lv|ly|ma|mc|md|me|mg|mh|mil|mk|ml|mm|mn|mobi|mo|mp|mq|mr|ms|mt|museum|mu|mv|mw|mx|my|mz|name|na|nc|net|ne|nf|ng|ni|nl|no|np|nr|nu|nz|om|org|pa|pe|pf|pg|ph|pk|pl|pm|pn|pro|pr|ps|pt|pw|py|qa|re|ro|rs|ru|rw|sa|sb|sc|sd|se|sg|sh|si|sj|sk|sl|sm|sn|so|sr|st|su|sv|sy|sz|tc|td|tel|tf|tg|th|tj|tk|tl|tm|tn|to|tp|travel|tr|tt|tv|tw|tz|ua|ug|uk|um|us|uy|uz|va|vc|ve|vg|vi|vn|vu|wf|ws|xn--0zwm56d|xn--11b5bs3a9aj6g|xn--80akhbyknj4f|xn--9t4b11yi5a|xn--deba0ad|xn--g6w251d|xn--hgbk6aj7f53bba|xn--hlcj6aya9esc7a|xn--jxalpdlp|xn--kgbechtv|xn--zckzah|ye|yt|yu|za|zm|zw)|(?:(?:[0-9]|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])\\.){3}(?:[0-9]|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5]))(?:[;/][^#?<>\\s]*)?(?:\\?[^#<>\\s]*)?(?:#[^<>\\s]*)?(?!\\w)|(?:mailto:)?[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:(?:(?:[^\\s!@#$%^&*()_=+[\\]{}\\\\|;:'\",.<>/?]+)\\.)+(?:ac|ad|aero|ae|af|ag|ai|al|am|an|ao|aq|arpa|ar|asia|as|at|au|aw|ax|az|ba|bb|bd|be|bf|bg|bh|biz|bi|bj|bm|bn|bo|br|bs|bt|bv|bw|by|bz|cat|ca|cc|cd|cf|cg|ch|ci|ck|cl|cm|cn|coop|com|co|cr|cu|cv|cx|cy|cz|de|dj|dk|dm|do|dz|ec|edu|ee|eg|er|es|et|eu|fi|fj|fk|fm|fo|fr|ga|gb|gd|ge|gf|gg|gh|gi|gl|gm|gn|gov|gp|gq|gr|gs|gt|gu|gw|gy|hk|hm|hn|hr|ht|hu|id|ie|il|im|info|int|in|io|iq|ir|is|it|je|jm|jobs|jo|jp|ke|kg|kh|ki|km|kn|kp|kr|kw|ky|kz|la|lb|lc|li|lk|lr|ls|lt|lu|lv|ly|ma|mc|md|me|mg|mh|mil|mk|ml|mm|mn|mobi|mo|mp|mq|mr|ms|mt|museum|mu|mv|mw|mx|my|mz|name|na|nc|net|ne|nf|ng|ni|nl|no|np|nr|nu|nz|om|org|pa|pe|pf|pg|ph|pk|pl|pm|pn|pro|pr|ps|pt|pw|py|qa|re|ro|rs|ru|rw|sa|sb|sc|sd|se|sg|sh|si|sj|sk|sl|sm|sn|so|sr|st|su|sv|sy|sz|tc|td|tel|tf|tg|th|tj|tk|tl|tm|tn|to|tp|travel|tr|tt|tv|tw|tz|ua|ug|uk|um|us|uy|uz|va|vc|ve|vg|vi|vn|vu|wf|ws|xn--0zwm56d|xn--11b5bs3a9aj6g|xn--80akhbyknj4f|xn--9t4b11yi5a|xn--deba0ad|xn--g6w251d|xn--hgbk6aj7f53bba|xn--hlcj6aya9esc7a|xn--jxalpdlp|xn--kgbechtv|xn--zckzah|ye|yt|yu|za|zm|zw)|(?:(?:[0-9]|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])\\.){3}(?:[0-9]|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5]))(?:\\?[^#<>\\s]*)?(?:#[^<>\\s]*)?(?!\\w))","ig"),c=new RegExp("^"+t,"i"),a={"'":"`",">":"<",")":"(","]":"[","}":"{","B;":"B+","b:":"b9"},o={callback:function(u,t){return t?'<a href="'+t+'" title="'+t+'" target="_blank">'+u+"</a>":u},punct_regexp:/(?:[!?.,:;'"]|(?:&|&)(?:lt|gt|quot|apos|raquo|laquo|rsaquo|lsaquo);)$/},function(u,t){t=t||{};var i,s,f,d,r,A,l,F,h,m,C,B,g="",w=[];for(s in o)void 0===t[s]&&(t[s]=o[s]);for(;i=n.exec(u);)if(f=i[0],l=(A=n.lastIndex)-f.length,!/[\/:]/.test(u.charAt(l-1))){do{F=f,B=f.substr(-1),(C=a[B])&&(h=f.match(new RegExp("\\"+C+"(?!$)","g")),m=f.match(new RegExp("\\"+B,"g")),(h?h.length:0)<(m?m.length:0)&&(f=f.substr(0,f.length-1),A--)),t.punct_regexp&&(f=f.replace(t.punct_regexp,function(u){return A-=u.length,""}))}while(f.length&&f!==F);d=f,c.test(d)||(d=(-1!==d.indexOf("@")?d.indexOf(e)?e:"":d.indexOf("irc.")?d.indexOf("ftp.")?"http://":"ftp://":"irc://")+d),r!=l&&(w.push([u.slice(r,l)]),r=A),w.push([f,d])}for(w.push([u.substr(r)]),s=0;s<w.length;s++)g+=t.callback.apply(window,w[s]);return g||u}),d.find("a").length||(d.find(".emoji").each(function(){u(this).replaceWith(u(this).attr("alt"))}),r=" "+d.html(),r=ctfLinkify(r));r.length>0&&(r=(r=r.replace(/<br>/g,"<br> ")).replace(/(^|\s)#(\w*[\u0041-\u005A\u0061-\u007A\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]+\w*)/gi,function(u){var t=jQuery.trim(u);return/^#[0-9A-F]{6}$/i.test(t)?t:' <a href="https://twitter.com/hashtag/'+t.substring(1)+'" target="_blank" rel="nofollow">'+t+"</a>"}));r=r.replace(/[\s][@]+[A-Za-z0-9-_]+/g,function(u){var t=jQuery.trim(u);return' <a href="https://twitter.com/'+t.substring(1)+'" target="_blank" rel="nofollow">'+t+"</a>"}),d.html(r.trim()),d.append(f),d.find("a").css("color","#"+l),f.css("color","#"+l)}s.find(".ctf-tweet-text a").each(function(){jQuery(this).text().indexOf("http")>-1&&jQuery(this).text().length>63&&jQuery(this).text(jQuery(this).text().substring(0,60)+"...")})}),i.find(".ctf-author-name, .ctf-tweet-date, .ctf-author-screenname, .ctf-twitterlink, .ctf-author-box-link, .ctf-retweet-text, .ctf-quoted-tweet").css("color",i.find(".ctf-tweet-text").css("color")),i.find(".ctf_more").unbind("click").bind("click",function(t){t.preventDefault(),u(this).hide().next(".ctf_remaining").show()}),"function"==typeof ctf_custom_js&&ctf_custom_js(u),i.find(".ctf-author-box-link p:empty").remove()}function a(u,t,e,n,c,a){n.addClass("ctf-loading").append('<div class="ctf-loader"></div>'),n.find(".ctf-loader").css("background-color",n.css("color")),jQuery.ajax({url:ctf.ajax_url,type:"post",data:{action:"ctf_get_more_posts",last_id_data:u,shortcode_data:t,num_needed:c,persistent_index:a},success:function(t){""!==u?(-1==t.indexOf("<meta charset")&&e.find(".ctf-item").removeClass("ctf-new").last().after(t),e.find(".ctf-out-of-tweets").length&&(n.hide(),e.find(".ctf-out-of-tweets p").eq(0).fadeIn().end().eq(1).delay(500).fadeIn())):e.find(".ctf-tweets").append(t),n.removeClass("ctf-loading").find(".ctf-loader").remove(),i(e)}})}window.ctfObject={},u(".ctf").length&&void 0!==u(".ctf").first().attr("ctf-gdpr")?(window.ctfObject.consentGiven=!1,window.ctfObject.gdpr=!0):(window.ctfObject.consentGiven=!0,window.ctfObject.gdpr=!1),u(".ctf").length<=u(".ctf_is_initialized").length||(window.ctfObject.consentGiven&&c(),u(".ctf").each(function(){var c=u(this),o=parseInt(c.attr("data-ctfneeded"));c.width()<=480&&c.addClass("ctf-narrow"),c.width()<=320&&c.addClass("ctf-super-narrow"),u(this).hasClass("ctf_is_initialized")||i(c),setTimeout(function(){if(o>0){var u=c.find(".ctf-more"),t=c.find(".ctf-item").last().attr("id"),e=c.find(".ctf-item").length;a(t,c.attr("data-ctfshortcode"),c,u,o,e)}},500),c.find(".ctf-more").on("click",function(){var t=u(this),e=c.find(".ctf-item").last().attr("id"),n=c.find(".ctf-item").length;a(e,c.attr("data-ctfshortcode"),c,t,0,n)}),c.find(".ctf-author-box-link p:empty").remove(),setTimeout(function(){t()?n(c):e(c)},500)}))},jQuery(document).ready(function(u){ctf_init(),u("#cookie-notice a").click(function(){setTimeout(function(){i()},1e3)}),u("#cookie-law-info-bar a").click(function(){setTimeout(function(){i()},1e3)}),u(".cli-user-preference-checkbox").click(function(){i()}),u(window).on("CookiebotOnAccept",function(u){i()}),u(document).on("cmplzAcceptAll",function(u){i()}),u(document).on("cmplzRevoke",function(u){i()}),u(document).on("borlabs-cookie-consent-saved",function(u){i()})})}(jQuery);
|
views/admin/customize.php
CHANGED
@@ -29,6 +29,9 @@ settings_errors(); ?>
|
|
29 |
<a id="misc"></a>
|
30 |
<?php do_settings_sections( 'ctf_options_misc' ); // matches the section name ?>
|
31 |
<hr>
|
|
|
|
|
|
|
32 |
<a id="advanced"></a>
|
33 |
<?php do_settings_sections('ctf_options_advanced'); // matches the section name
|
34 |
$usage_tracking = get_option( 'ctf_usage_tracking', false );
|
29 |
<a id="misc"></a>
|
30 |
<?php do_settings_sections( 'ctf_options_misc' ); // matches the section name ?>
|
31 |
<hr>
|
32 |
+
<a id="gdpr"></a>
|
33 |
+
<?php do_settings_sections( 'ctf_options_gdpr' ); // matches the section name ?>
|
34 |
+
<hr>
|
35 |
<a id="advanced"></a>
|
36 |
<?php do_settings_sections('ctf_options_advanced'); // matches the section name
|
37 |
$usage_tracking = get_option( 'ctf_usage_tracking', false );
|
views/admin/support.php
CHANGED
@@ -62,21 +62,40 @@ $twitter_api->setGetFields( $get_fields );
|
|
62 |
$twitter_api->setRequestMethod( $request_method );
|
63 |
|
64 |
$twitter_api->performRequest();
|
65 |
-
$
|
66 |
-
$
|
67 |
-
if (
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
72 |
}
|
|
|
73 |
?>
|
74 |
|
75 |
## Twitter API RESPONSE: ##
|
76 |
<?php
|
77 |
echo 'Screen Name: ' . $screen_name."\n";
|
78 |
-
echo
|
79 |
-
echo
|
|
|
80 |
?>
|
81 |
|
82 |
</textarea>
|
62 |
$twitter_api->setRequestMethod( $request_method );
|
63 |
|
64 |
$twitter_api->performRequest();
|
65 |
+
$code = '';
|
66 |
+
$message = '';
|
67 |
+
if ( ! is_wp_error( $twitter_api->json ) ) {
|
68 |
+
$response = json_decode( $twitter_api->json , $assoc = true );
|
69 |
+
$screen_name = isset( $response[0] ) ? $response[0]['user']['screen_name'] : 'error';
|
70 |
+
if ( $screen_name == 'error' ) {
|
71 |
+
if ( isset( $response['errors'][0] ) ) {
|
72 |
+
$twitter_api->api_error_no = $response['errors'][0]['code'];
|
73 |
+
$twitter_api->api_error_message = $response['errors'][0]['message'];
|
74 |
+
$code = 'Error No: ' . $twitter_api->api_error_no."\n";
|
75 |
+
$message = 'Error Message: ' . $twitter_api->api_error_message."\n";
|
76 |
+
}
|
77 |
+
}
|
78 |
+
|
79 |
+
} else {
|
80 |
+
$screen_name = 'ERROR';
|
81 |
+
$response = $twitter_api->json;
|
82 |
+
|
83 |
+
if ( isset( $response->errors ) ) {
|
84 |
+
$message = 'Error Message: ';
|
85 |
+
foreach ( $response->errors as $key => $item ) {
|
86 |
+
$message .= $key . ' => ' . $item[0] . "\n";
|
87 |
+
}
|
88 |
+
}
|
89 |
}
|
90 |
+
|
91 |
?>
|
92 |
|
93 |
## Twitter API RESPONSE: ##
|
94 |
<?php
|
95 |
echo 'Screen Name: ' . $screen_name."\n";
|
96 |
+
echo $code;
|
97 |
+
echo $message;
|
98 |
+
|
99 |
?>
|
100 |
|
101 |
</textarea>
|