Help
RSS
API
Feed
Maltego
Contact
Domain > www.libertytaskforce.com
×
Welcome!
Right click nodes and scroll the mouse to navigate the graph.
×
More information on this domain is in
AlienVault OTX
Is this malicious?
Yes
No
DNS Resolutions
Date
IP Address
2014-03-16
199.83.133.131
(
ClassC
)
2024-09-13
107.21.204.230
(
ClassC
)
Port 80
HTTP/1.1 302 FoundCache-Control: privateContent-Type: text/html; charsetutf-8Location: https://www.libertytaskforce.comX-AspNetMvc-Version: 5.2guildtag-correlation-id: 880dae29d09b4c84b3fe5f6e23fde299Date: Fri, 13 Sep 2024 01:36:05 GMTContent-Length: 149 html>head>title>Object moved/title>/head>body>h2>Object moved to a hrefhttps://www.libertytaskforce.com>here/a>./h2>/body>/html>
Port 443
HTTP/1.1 200 OKCache-Control: privateContent-Type: text/html; charsetutf-8X-AspNetMvc-Version: 5.2guildtag-correlation-id: 2354d9d5c4b54335bf39790a7cdd3a9bDate: Fri, 13 Sep 2024 01:36:05 GMTContent-Length: 126374 !DOCTYPE html>html langen>head> meta http-equivContent-Type contenttext/html; charsetutf-8 /> meta nameviewport contentwidthdevice-width, initial-scale1> meta nameguildtag-csrf-token contenta3b66a93ac7c4a7bb52bb7f6ed4c0f20 /> meta nameguildtag-api-key contenttempkey /> meta nameguildtag-correlation-id content2354d9d5c4b54335bf39790a7cdd3a9b /> title>Home | Star Trek Online Fleet Armada/title> meta namedescription contentOfficial Guild Website> link relcanonical hrefhttps://www.libertytaskforce.com/> meta propertyog:site_name contentStar Trek Online Fleet Armada> meta propertyog:title contentHome> meta propertyog:description contentOfficial Guild Website> meta propertyog:image /> meta propertyog:type contentwebsite> meta propertyog:locale contenten_US> link relicon typeimage/png href/images/favicon-16x16a.png sizes16x16> link relicon typeimage/png href/images/favicon-32x32a.png sizes32x32> link href/css/bootstrap-v4-4-1/bootstrap.min.css relstylesheet />link href/websitestyles?v1Loqf0_YllKFhUa7uivbqZQ6Er3zcroiW_SH3kv38ss1 relstylesheet/> link href/theme-premium-css/28109/theme.css?v623131040 relstylesheet /> link hrefhttps://fonts.googleapis.com/css?familyBungee:400| relstylesheet /> link hrefhttps://fonts.googleapis.com/css?familyKrub:300,500,700 relstylesheet>script src/sitejs?vVR7nI1w430HzafUonbzpLmKZR-6uRU46WCiOcWnRx0s1>/script> script>window.buildVersion 1.0.9016.18659;Vue.prototype.$baseUrl https://stofa.guildtag.com;Vue.prototype.$isAuthenticated false;Vue.prototype.$isWebsiteOwner false;Vue.prototype.$isVerified false;Vue.prototype.$isMember false;Vue.prototype.$hasMemberCode false;Vue.prototype.$allowPublicMembership falseVue.prototype.$defaultTimeZoneId Eastern Standard Time;Vue.prototype.$pageId 192902;Vue.prototype.$websiteId 10603;Vue.prototype.$isPremium true;Vue.prototype.$userId 0;Vue.prototype.$websiteRoles ;Vue.prototype.$websiteThemeId 28109;/script>link relicon typeimage/png hrefhttps://s3.amazonaws.com/guildtag/file/10603/32301-3ded76.png sizes16x16> script async srchttps://www.googletagmanager.com/gtag/js?idG-7L7DHKQV1V>/script> script> window.dataLayer window.dataLayer || ; function gtag() { dataLayer.push(arguments); } gtag(js, new Date()); gtag(config, G-7L7DHKQV1V); /script>/head>body idpage-192902> div idadmin-editor> div idadmin-editor-container>/div> div idadmin-page-settings-container>/div> div idadmin-theme-settings-container>/div> /div> div idouter-wrapper> div idbody-wrapper classbody-wrapper container-fluid p-0> div idcontent-wrapper classcontent-wrapper> div idpage-192902 classpage-wrapper data-pageid192902> section classsection-row idsection-307451 data-pageid192902 data-rowid307451> div class> div classrow widget-row no-gutters> div classcolumn widget-column col-md-12 data-columnid483096> div idwidget-456278 classwidget data-widgetid456278 data-columnid483096> div classwidget-container> head> meta charsetUTF-8> meta nameviewport contentwidthdevice-width, initial-scale1.0> link relstylesheet hrefstyle.css> link relstylesheet hrefhttps://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css integritysha512-DTOQO9RWCH3ppGqcWaEA1BIZOC6xxalwEsw9c2QQeAIftl+Vegovlnee1c9QX4TctnWMn13TZye+giMm8e2LwA crossoriginanonymous referrerpolicyno-referrer /> title>Falling Stars/title>/head>body> script srcscript.js>/script>/body>/html>script>function stars() { let e document.createElement(div); e.setAttribute(class, star); document.body.appendChild(e); e.style.left Math.random() * +innerWidth + px; let size Math.random() * 12; let duration Math.random() * 3; e.style.fontSize 12 + px; e.style.animationDuration 2 + duration + s; setTimeout(function () { document.body.removeChild(e); }, 5000);}setInterval(function () { stars();}, 50);/script> /div> /div> /div> /div> /div> /section> section classsection-row idsection-250771 data-pageid192902 data-rowid250771> div class> div classrow widget-row no-gutters> div classcolumn widget-column col-md-12 data-columnid390930> div idwidget-431132 classwidget data-widgetid431132 data-columnid390930> div classwidget-container> div idwidget-container-431132 v-cloak> div classnav-top-bar> div classcontainer p-0> div class> a href# onclicktoggleLinksMenu(event) classnav-link float-left> div classmenu-item d-flex align-items-center> span classfa-layers fa-fw fa-2x> i classfa fa-hexagon stylecolor:rgba(255,255,255,.025);>/i> i classfa-inverse fas fa-bars icon data-fa-transformshrink-8>/i> /span> /div> /a> a href/admin/ classnav-link float-left data-toggletooltip data-placementbottom titleAdmin v-ifwidgetData.isAdmin> div classmenu-item d-flex align-items-center> span classfa-layers fa-fw fa-2x> i classfa fa-hexagon stylecolor:rgba(255,255,255,.025);>/i> i classfa-inverse fa fa-cog icon data-fa-transformshrink-8>/i> /span> /div> /a> a href# onclickloadAdminWidgets(page, event); classnav-link float-left idedit-page data-toggletooltip data-placementbottom titleEdit Page v-ifwidgetData.isPageAdmin> div classmenu-item d-flex align-items-center> span classfa-layers fa-fw fa-2x> i classfa fa-hexagon stylecolor:rgba(255,255,255,.025);>/i> i classfa-inverse fa fa-edit icon data-fa-transformshrink-8>/i> /span> /div> /a> a href# onclickloadAdminWidgets(theme, event); classnav-link float-left d-none d-md-inline idedit-theme data-toggletooltip data-placementbottom titleEdit Theme v-ifwidgetData.isThemeAdmin> div classmenu-item d-flex align-items-center> span classfa-layers fa-fw fa-2x> i classfa fa-hexagon stylecolor:rgba(255,255,255,.025);>/i> i classfa-inverse fa fa-paint-brush icon data-fa-transformshrink-8>/i> /span> /div> /a> a href/access/ classnav-link float-left v-if!widgetData.isMember> div classmenu-item d-flex align-items-center> span classfa-layers fa-fw fa-2x> i classfa fa-hexagon stylecolor:rgba(255,255,255,.025);>/i> i classfa-inverse fa fa-scroll icon data-fa-transformshrink-8>/i> /span> span classml-1 d-none d-md-inline> Join Website /span> span classml-1 d-md-none> Join /span> /div> /a> a href# onclicktoggleProfileMenu(event) classnav-link float-right v-ifwidgetData.isAuthenticated> div classmenu-item d-flex align-items-center> span classfa-layers fa-fw fa-2x> i classfa fa-hexagon stylecolor:rgba(255,255,255,.025);>/i> i classfa-inverse fa fa-user icon data-fa-transformshrink-8>/i> /span> span classml-1> {{widgetData.username}} /span> span classnav-top-bar-notification v-ifwidgetData.hasNewMessages> i classfa fa-exclamation ml-3 text-warning>/i> /span> /div> /a> a href/login/ classnav-link float-right v-if!widgetData.isAuthenticated> div classmenu-item d-flex align-items-center> span classfa-layers fa-fw fa-2x> i classfa fa-hexagon stylecolor:rgba(255,255,255,.025);>/i> i classfa-inverse fa fa-key icon data-fa-transformshrink-8>/i> /span> span classml-1 d-none d-md-inline> Log In or Sign Up /span> span classml-1 d-md-none> Log In /span> /div> /a> a href/fame/ classnav-link float-right v-tooltip:bottompremiumDaysRemaining()> div classmenu-item d-flex align-items-center> span classfa-layers fa-fw fa-2x> i classfa fa-hexagon stylecolor:rgba(255,255,255,.025);>/i> span v-ifwidgetData.websiteFameAvailable 1400> i classfa-inverse fa fa-exclamation-triangle icon text-danger data-fa-transformshrink-8>/i> /span> span v-else> i classfa-inverse fa fa-gem icon data-fa-transformshrink-8>/i> /span> /span> span classml-1 font-weight-bold d-none d-md-inline> {{widgetData.websiteFameAvailable.toLocaleString()}} Fame /span> /div> /a> /div> /div> /div> div idnav-links classnav-side nav-side-left> div classnav-container> div classnav-title> div classd-flex justify-content-between> div classmenu-item d-flex align-items-center> span classml-2> {{widgetData.websiteName}} /span> /div> div classmenu-item d-flex align-items-center clickable p-2 onclicktoggleLinksMenu(event)> i classfa fa-times>/i> /div> /div> /div> nav classnav flex-column> template v-forlink in widgetData.links> a href# classnav-link data-togglecollapse :data-target#collapse+ link.websiteLinkId v-iflink.childLinks.length > 0> div classmenu-item d-flex align-items-center> i classfa fa-angle-down icon fa-fw icon>/i> span classml-3> {{link.name}} /span> /div> /a> div classcollapse :idcollapse+ link.websiteLinkId v-iflink.childLinks.length > 0> a :hrefchild.url classnav-link v-forchild in link.childLinks> div classmenu-item d-flex align-items-center pl-3> i classfa fa-hexagon icon fa-fw icon>/i> span classml-3> {{child.name}} /span> /div> /a> /div> a :hreflink.url classnav-link v-iflink.childLinks.length 0> div classmenu-item d-flex align-items-center> i classfa fa-hexagon icon fa-fw icon>/i> span classml-3> {{link.name}} /span> /div> /a> /template> /nav> /div> /div> div idnav-profile classnav-side nav-side-right v-showwidgetData.isAuthenticated> div classnav-container> div classnav-title> div classd-flex justify-content-between> div classmenu-item d-flex align-items-center> img :srcwidgetData.avatarSmallUrl height36 /> span classml-2> {{widgetData.username}} /span> /div> div classmenu-item d-flex align-items-center clickable p-2 onclicktoggleProfileMenu(event)> i classfa fa-times>/i> /div> /div> /div> nav classnav flex-column> a :hrefwidgetData.profileUrl +messages/ classnav-link> div classmenu-item d-flex align-items-center> span classfa-layers fa-fw fa-2x> i classfa fa-hexagon stylecolor:rgba(255,255,255,.025);>/i> i classfa-inverse fa fa-user icon data-fa-transformshrink-8>/i> /span> span classml-2> Profile /span> sup classml-2 text-alt v-ifwidgetData.activityCount > 0>{{widgetData.activityCount}}/sup> /div> /a> a :hrefwidgetData.profileUrl +messages/ classnav-link> div classmenu-item d-flex align-items-center> span classfa-layers fa-fw fa-2x> i classfa fa-hexagon stylecolor:rgba(255,255,255,.025);>/i> i classfa-inverse fa fa-envelope icon data-fa-transformshrink-8>/i> /span> span classml-2> Messages /span> sup classml-2 text-alt v-ifwidgetData.messageCount > 0>{{widgetData.messageCount}}/sup> /div> /a> a :hrefwidgetData.profileUrl +messages/ classnav-link v-ifwidgetData.hasUnreadPlatformMessage> div classmenu-item d-flex align-items-center> span classfa-layers fa-fw fa-2x> i classfa fa-hexagon stylecolor:rgba(255,255,255,.025);>/i> i classfa-inverse fa fa-envelope icon data-fa-transformshrink-8>/i> /span> span classml-2> Platform Messages i classfa fa-exclamation ml-2>/i> /span> /div> /a> a hrefhttps://guildtag.com/social/ classnav-link> div classmenu-item d-flex align-items-center> span classfa-layers fa-fw fa-2x> i classfa fa-hexagon stylecolor:rgba(255,255,255,.025);>/i> i classfa-inverse fa fa-chevron-left icon data-fa-transformshrink-9 left-3>/i> i classfa-inverse fa fa-chevron-right icon data-fa-transformshrink-9 right-3>/i> /span> span classml-2> Guildtag Social /span> /div> /a> a hrefhttps://discord.gg/cScT5sn classnav-link> div classmenu-item d-flex align-items-center> span classfa-layers fa-fw fa-2x> i classfa fa-hexagon stylecolor:rgba(255,255,255,.025);>/i> i classfa-inverse fab fa-discord icon data-fa-transformshrink-8>/i> /span> span classml-2> Guildtag Discord /span> /div> /a> a href/logout/ classnav-link> div classmenu-item d-flex align-items-center> span classfa-layers fa-fw fa-2x> i classfa fa-hexagon stylecolor:rgba(255,255,255,.025);>/i> i classfa-inverse fa fa-key icon data-fa-transformshrink-8>/i> /span> span classml-2> Logout /span> /div> /a> div classnav-title v-ifwidgetData.websites.length > 0> Memberships /div> a :hrefwebsite.websiteUrl classnav-link v-forwebsite in widgetData.websites> div classmenu-item d-flex align-items-center> span classfa-layers fa-fw fa-2x> i classfa fa-hexagon stylecolor:rgba(255,255,255,.025);>/i> i classfa-inverse fa fa-dice-d4 icon data-fa-transformshrink-8>/i> /span> span classml-2> {{website.name}} /span> /div> /a> /nav> /div> /div>/div>script> var app431132 new Vue({ el: #widget-container-431132, data: { widgetData: {websiteName:Star Trek Online Fleet Armada,links:{websiteLinkId:103455,name:Home,openNewWindow:false,url:/,childLinks:},{websiteLinkId:103456,name:News,openNewWindow:false,url:/news/,childLinks:},{websiteLinkId:103457,name:Forums,openNewWindow:false,url:/forums/,childLinks:},{websiteLinkId:103458,name:Events,openNewWindow:false,url:/events/,childLinks:},{websiteLinkId:103459,name:Roster,openNewWindow:false,url:/roster/,childLinks:},{websiteLinkId:103460,name:Apply,openNewWindow:false,url:/apply/,childLinks:},{websiteLinkId:103461,name:Wiki,openNewWindow:false,url:/wiki/,childLinks:},{websiteLinkId:103462,name:About,openNewWindow:false,url:/about/,childLinks:},websiteFameAvailable:46865,isAuthenticated:false,isAdmin:false,isPageAdmin:false,isThemeAdmin:false,isMember:false,websites:}, widgetSettings: {title: ,hideHeader: false,hideCard: false,}, }, created: function () { this.loadData(); }, methods: { loadData: function () { }, premiumDaysRemaining: function () { var remain Math.trunc(this.widgetData.websiteFameAvailable / 200); if (remain 0) { return Your website has run out of fame!; } var days remain 1 ? day : days; return `Website Fame will run out in ${remain.toLocaleString()} ${days}!`; } } });/script> /div> /div> div idwidget-348980 classwidget data-widgetid348980 data-columnid390930> div classwidget-container> div idwidget-container-348980 v-cloak> div idnav-link-bar classnav-link-bar d-none d-lg-block> div :class{ container : containNav 1 }> div idnav-container :classnavClass()> div idlogo :classlogoAlignClass()> div idlogo-container> a idlogo-link classd-flex align-items-center href/> img idlogo-image :srcwidgetData.theme.logoImage classlogo-image img-fluid /> span idlogo-type classml-3>{{widgetData.websiteName}}/span> /a> /div> /div> div classd-flex> template v-forlink in widgetData.links> template v-iflink.childLinks.length 0> div classnav-item> a :hreflink.url classnav-link :targethrefTarget(link)>{{link.name}}/a> /div> /template> template v-else> div classnav-item dropdown> a href# classnav-link dropdown-toggle data-toggledropdown>{{link.name}}/a> div classdropdown-menu> a :hrefchildLink.url classnav-link dropdown-item v-forchildLink in link.childLinks :targethrefTarget(childLink)>{{childLink.name}}/a> /div> /div> /template> /template> /div> /div> /div> div classbk>/div> /div>/div>script> var app348980 new Vue({ el: #widget-container-348980, data: { containNav: 1, widgetData: {websiteName:Star Trek Online Fleet Armada,links:{websiteLinkId:103455,name:Home,openNewWindow:false,url:/,childLinks:},{websiteLinkId:103456,name:News,openNewWindow:false,url:/news/,childLinks:},{websiteLinkId:103457,name:Forums,openNewWindow:false,url:/forums/,childLinks:},{websiteLinkId:103458,name:Events,openNewWindow:false,url:/events/,childLinks:},{websiteLinkId:103459,name:Roster,openNewWindow:false,url:/roster/,childLinks:},{websiteLinkId:103460,name:Apply,openNewWindow:false,url:/apply/,childLinks:},{websiteLinkId:103461,name:Wiki,openNewWindow:false,url:/wiki/,childLinks:},{websiteLinkId:103462,name:About,openNewWindow:false,url:/about/,childLinks:},theme:{navigationAlignment:2,logoImage:https://s3.amazonaws.com/guildtag/file/10603/32304-0fdc02.png,logoPosition:2}}, widgetSettings: {title: Navigation,hideHeader: true,hideCard: false,}, }, created: function () { this.loadData(); }, methods: { loadData: function () { }, navClass: function () { var c d-flex; if (this.widgetData.theme.logoPosition 0) { // on c + align-items-center; } else if (this.widgetData.theme.logoPosition 1) { c + align-items-center flex-row-reverse; } else if (this.widgetData.theme.logoPosition 2) { // above c + flex-column; } else if (this.widgetData.theme.logoPosition 3) { // below c + flex-column; } if (this.widgetData.theme.logoPosition 0 || this.widgetData.theme.logoPosition 1) { if (this.widgetData.theme.navigationAlignment 4) { // between c + justify-content-between; } else if (this.widgetData.theme.navigationAlignment 3) { // right c + justify-content-end; } else if (this.widgetData.theme.navigationAlignment 2) { // center c + justify-content-center; } else { // left c + justify-content-start; } } else { if (this.widgetData.theme.navigationAlignment 4) { c + align-items-center; } else if (this.widgetData.theme.navigationAlignment 3) { c + align-items-end; } else if (this.widgetData.theme.navigationAlignment 2) { c + align-items-center; } else { c + align-items-start; } } return c; }, logoAlignClass: function () { if (this.widgetData.theme.logoPosition 3) { // below return order-1; } return ; }, hrefTarget: function (link) { return (link.openNewWindow ? _blank : _self); } } });/script> /div> /div> /div> /div> /div> /section> section classsection-row idsection-251357 data-pageid192902 data-rowid251357> div classcontainer> div classrow widget-row > div classcolumn widget-column col-lg-3 data-columnid403969> div idwidget-360255 classwidget data-widgetid360255 data-columnid403969> div classwidget-container> div idwidget-container-360255> div :classwidgetSettings.hideCard ? card-hidden : card v-borderkitwidgetSettings.hideBorder> div classcard-header v-if!widgetSettings.hideHeader> h2> {{widgetSettings.title}} /h2> /div> div classcard-body> div classwidget-users-online clearfix> div v-foritem in widgetData.usersOnline classuser-online-container> img :srcitem.socialUser.avatarSmallUrl classimg-fluid /> div classuser-online-username> user :dataitem.socialUser :showavatarfalse>/user> /div> /div> /div> /div> /div>/div>script> var app360255 new Vue({ el: #widget-container-360255, data: { widgetData: { usersOnline: }, widgetSettings: {title: Who\u0027s online?,hideHeader: false,hideCard: false,}, }, created: function () { this.loadData(); }, methods: { loadData: function () { var self this; axios.get(/api/website/users-online/).then(function (response) { self.widgetData.usersOnline response.data.usersOnline; }).catch(function (error) { // error callback console.log(error); console.log(error); }); } } });/script> /div> /div> div idwidget-393419 classwidget data-widgetid393419 data-columnid403969> div classwidget-container> div idwidget-container-393419> div :classwidgetSettings.hideCard ? card-hidden : card v-borderkitwidgetSettings.hideBorder> div classcard-header v-if!widgetSettings.hideHeader> h2> {{widgetSettings.title}} /h2> /div> div classcard-body> iframe :srcwidgetSettings.url :heightwidgetSettings.height width100%>/iframe> /div> /div>/div>script> var app393419 new Vue({ el: #widget-container-393419, data: { widgetData: null, widgetSettings: {title: Star Trek Online News,hideHeader: false,hideCard: false,url: https://www.arcgames.com/en/games/star-trek-online/news,height: 600px,}, }, created: function () { }, methods: { } });/script> /div> /div> div idwidget-393738 classwidget data-widgetid393738 data-columnid403969> div classwidget-container> !--div classwrapper> iframe height750 width100% frameborder0 allowfullscreen srchttps://www.arcgames.com/en/games/star-trek-online/news>/iframe> div idiframe-overlay>/div>/div>-->a classtwitter-timeline data-height720 data-themedark hrefhttps://twitter.com/trekonlinegame?ref_srctwsrc%5Etfw>Tweets by trekonlinegame/a> script async srchttps://platform.twitter.com/widgets.js charsetutf-8>/script>script>/script> /div> /div> div idwidget-360707 classwidget data-widgetid360707 data-columnid403969> div classwidget-container> div idwidget-container-360707> div :classwidgetSettings.hideCard ? card-hidden : card v-borderkitwidgetSettings.hideBorder> div classcard-header v-if!widgetSettings.hideHeader> h2> {{widgetSettings.title}} /h2> /div> div classcard-body> div classrow> div classcol-md-4 v-foruser in users> a :hrefhttps://twitch.tv/ + user.login target_blank relnofollow> div classtwitch-user-container :classuser.stream ? twitch-user-online : twitch-user-offline> img classimg-fluid :srcuser.thumb /> div classtwitch-user-name> {{user.display_name}} div classtext-size-xs> ({{user.socialUser ? user.socialUser.username : }}) /div> /div> div classtwitch-user-viewing> span v-ifuser.stream> {{user.stream.viewer_count.toLocaleString()}} viewers /span> span v-if!user.stream> Offline /span> /div> div classtwitch-user-views> {{user.view_count.toLocaleString()}} views /div> div classtwitch-user-game> {{user.stream ? user.stream.game.name : }} /div> /div> /a> /div> /div> /div> /div>/div>script> var app360707 new Vue({ el: #widget-container-360707, data: function () { return { users: , widgetSettings: {title: Twitch Streams,hideHeader: false,hideCard: false,}, streamThumbWidth: 640, streamThumbHeight: 360, } }, created: function () { this.loadData(); }, methods: { loadData: function () { var self this; var requestParams { }; axios.get(/api/twitch/users/, { params: requestParams }).then(function (response) { self.users response.data.users; _.each(self.users, function (u) { var thumb ; if (u.stream) { u.stream.thumbnail_url u.stream.thumbnail_url.replace({height}, self.streamThumbHeight); u.stream.thumbnail_url u.stream.thumbnail_url.replace({width}, self.streamThumbWidth); thumb u.stream.thumbnail_url; } else if (u.offline_image_url ! ) { thumb u.offline_image_url; } else { thumb /images/brand/twitch-offline.jpg; } Vue.set(u, thumb, thumb); }); }, function (error) { // error callback console.log(error); console.log(error); }); }, } });/script> /div> /div> /div> div classcolumn widget-column col-lg-6 data-columnid403970> div idwidget-360995 classwidget data-widgetid360995 data-columnid403970> div classwidget-container> div idwidget-container-360995 v-cloak> div :classwidgetSettings.hideCard ? card-hidden : card v-borderkitwidgetSettings.hideBorder> div classcard-header v-if!widgetSettings.hideHeader> h2> {{widgetSettings.title}} /h2> /div> div classcard-body> p>img srchttps://s3.amazonaws.com/guildtag/image/94920/7736-73e4fe-lg.png titleLiberty Task Force Crest alignleft altLiberty Task Force Crest width150 height150 /> img srchttps://s3.amazonaws.com/guildtag/image/94920/7735-642944-lg.png titleLiberty Honor Guard Crest alignright altLiberty Honor Guard Crest width147 height148 />/p> div>/div> div stylefont-weight: bold; color: #ffd700; font-size: 24pt; text-align: center;>span stylefont-size: 12pt; font-family: Georgia;>Liberty Task Force/span stylecolor: #ff0000;>Liberty Honor Guard/span>/span>/div> div> div stylefont-weight: bold; font-size: 24pt; text-align: center;>span stylefont-size: 12pt;>span stylefont-family: Georgia; color: #ffcc00;>Pride of the Federation/span>span stylefont-family: Georgia;>//span>span stylefont-family: Georgia; color: #ff0000;>Pride of the Empire/span>/span>/div> div stylefont-weight: bold; font-size: 24pt; text-align: center;>span stylefont-size: 12pt;>&/span>/div> div stylefont-weight: bold; font-size: 24pt; text-align: center;>span stylefont-size: 12pt;>span stylecolor: #ffcc00;>Liberty Guardians/span>/span>/div> br /> div styletext-align: left;>span stylefont-family: Georgia; font-size: 11pt; color: #ffffff;> Liberty/Pride fleets are more than just a Star Trek Online Gaming fleets; we are an online community of friends. We are an active and friendly fleet that cares about all its members and lives up to its principles. We believe that every member of our fleet has a voice, and that all opinions deserve to be heard. At the Liberty/Pride fleets, you have a voice. We stand behind our motto of /span>span stylefont-family: Georgia; font-size: 11pt; color: #ffffff; font-style: italic;>Liberty, Equality, Justice, Peace, and Cooperation/span>span stylefont-family: Georgia; font-size: 11pt; color: #ffffff;> but above all we value respect. Our goal as a fleet is not to be the largest or even the best, but more importantly to be the most respected in Star Trek Online; for at the end of the day, respect is what you take with you./span>/div> /div> div>br /> div styletext-align: left;>span stylefont-family: Georgia;>span stylefont-size: 11pt; font-family: Georgia;>span stylecolor: #ffffff;> To learn more about our mission and who we are as a fleet, please visit our About Us and F.A.Q. pages and also check out our Fed Progression and KDF Progression pages to learn more on the progress of our Starbase, Embassy, Dilithium Mine, Spire, Research Lab, and K-13. Again, welcome and make yourself at home, visit our forums and galleries and get to know us better. Should you like what you see, you may register to join on our /span>a hrefhttps://stofa.guildtag.com/apply/ target_blank titleRecruitment>Recruitment/a>span stylecolor: #ffffff;> page. We sincerely hope you enjoy your stay and even more that you decide to join our fleet. From all of us here at Liberty/Pride fleets we thank you for visiting; take care, and see you in space!/span>/span>/span>/div> br /> div styletext-align: center;>span stylefont-size: 12pt; font-family: Georgia; color: #ffffe0;>~/span>span stylefont-size: 12pt; font-family: Georgia; color: #ffd700;>Liberty/span>span stylefont-size: 12pt; font-family: Georgia; color: #ffffe0;>/span stylecolor: #ffcc00;>Pride/span>/span>span stylefont-size: 12pt; font-family: Georgia; color: #ffd700;> /span>span stylefont-size: 12pt; font-family: Georgia; color: #ffffe0;>Fleets~/span>/div> /div> /div> /div>/div>script> var app360995 new Vue({ el: #widget-container-360995, data: { widgetId: 360995, widgetSettings: {title: About us,hideHeader: false,hideCard: false,}, events: , filteredEvents: , eventsList: , characters: , members: , eventTags: , eventAttributes: , eventRegistration: {}, filteredCharacters: , widgetSettings: {title: About us,hideHeader: false,hideCard: false,}, errorMessage: , registerMessage: , registerMessageClass: , registerOther: 0, noEvents: false, currentDate: null, calendarMonth: , calendarMonthRowCount: 0, today: null, screen: list, modalScreen: , selectedEvent: {}, selectedRegistrationCharacter: {}, defaultScreen: , attributeGroup: null, modalId: , filterTag: {}, upcomingEventDaysOut: 30, }, created: function () { this.init(); this.loadData(); } });/script> /div> /div> div idwidget-348971 classwidget data-widgetid348971 data-columnid403970> div classwidget-container> div idwidget-container-348971 v-cloak> div :classwidgetSettings.hideCard ? card-hidden : card v-borderkitwidgetSettings.hideBorder> div classcard-header v-if!widgetSettings.hideHeader> h2> {{widgetSettings.title}} /h2> /div> div classcard-body> !-- CALENDAR VIEW --> div v-ifscreen calendar && currentDate styledisplay: flex; height: 100%; flex-direction: column;> div classd-flex justify-content-between> !-- ACTIONS --> div> span @click.preventeventCompose() classclickable v-tooltipManage Events v-showhasPermission(Admin) || hasPermission(EventAdmin) || hasPermission(EventCreate)> i classfa fa-calendar-star>/i> /span> /div> !-- TAG FILTERS --> div v-showeventTags.length> div classtext-right> div v-fortag in eventTags classbadge badge-secondary font-weight-semi-bold p-2 mx-1 clickable @clickfilter(tag) :styletagStyle(tag)> {{tag.name}} /div> /div> /div> /div> h1 classcalendar-title d-flex align-items-center justify-content-center> a href# @click.preventpreviousMonth()>i classfa fa-chevron-left fa-2x mr-2>/i>/a> span v-ifcurrentDate>{{currentDate.format(MMMM YYYY)}}/span> a href# @click.preventnextMonth()>i classfa fa-chevron-right fa-2x ml-2>/i>/a> /h1> div stylemargin: 0; flex: 1 1 0%; display: flex; flex-direction: column; overflow: hidden;> div classcalendar-header> div>Sun/div> div>Mon/div> div>Tue/div> div>Wed/div> div>Thu/div> div>Fri/div> div>Sat/div> /div> /div> div classcalendar-month-container> div v-fori in calendarMonthRowCount styledisplay: flex; flex: 1 1 0%;> div v-for(cal, c) in calendarMonth.slice((i-1) * 7, i * 7) styleflex: 1 1 0%; align-items: stretch; classcalendar-month-box :classbuildBoxClass(cal) href# @click.preventeventCreate(cal)> div> div classcalendar-month-date>{{cal.dayDate.format(D)}}/div> /div> template v-for(event, ei) in cal.events> div classcard calendar-event clickable @click.stopshowEvent(event) :stylecardStyle(event) v-showevent.isVisible> div classcard-body p-2> div classfont-weight-bold> {{event.title}} /div> div classtext-size-xs> div>{{moment.utc(event.startDate).local().format(h:mm a)}} /div> div v-ifevent.endDateLocal>{{moment.utc(event.endDate).local().format(h:mm a)}}/div> !-- code below does not convert to local users time --> !--div>{{moment(event.startDateLocal).format(h:mm a)}} {{event.timeZoneShort}}/div> div v-ifevent.endDateLocal>{{moment(event.endDateLocal).format(h:mm a)}} {{event.timeZoneShort}}/div>--> /div> /div> div classcard-footer p-2 v-ifevent.registrationEnabled> div classclearfix> div classfloat-left v-showevent.isRegistered> i classfa fa-check>/i> /div> div classfloat-right font-weight-bold> i classfa fa-users-crown mr-1>/i> {{event.registrations.length}} /div> /div> /div> /div> /template> /div> /div> /div> /div> !-- LIST VIEW --> div v-ifscreen list> div classcard clickable mb-2 v-forevent in eventsList @click.preventshowEvent(event) :stylecardStyle(event)> div v-showevent.showCountdown classeventlist-countdown>{{event.countdown}}/div> div classcard-body text-center p-3> h2 classeventlist-title text-alt>{{event.title}}/h2> div classtext-size-sm mt-1> div>{{event.friendlyDate}}/div> /div> /div> div classcard-footer font-weight-bold> div classclearfix text-size-lg> div classfloat-left v-show$isMember && event.isRegistered v-tooltipRegistered> i classfa fa-check>/i> /div> div classfloat-right v-tooltipEvent Details> i classfa fa-users-crown>/i> span classml-2 v-showevent.registrationEnabled>{{event.registrations.length}}/span> /div> /div> /div> /div> /div> !-- SCHEDULE VIEW --> div v-ifscreen schedule> div classcard clickable mb-2 v-forevent in eventsList @click.preventshowEvent(event) :stylecardStyle(event)> div classcard-body p-3> div classd-flex justify-content-between align-items-center text-size-lg font-weight-semi-bold text-uppercase> div> span class> {{moment.utc(event.startDate).local().format(MMM DD - ddd)}} /span> span classml-4 text-alt> {{event.title}} /span> /div> div> span v-showevent.showCountdown> {{event.countdown}} /span> /div> /div> div class> {{moment(event.startDateLocal).format(h:mm a)}} {{event.timeZoneShort}} /div> div classclearfix text-size-lg font-weight-bold> div classfloat-left v-show$isMember && event.isRegistered v-tooltipRegistered> i classfa fa-check>/i> /div> div classfloat-right v-tooltipEvent Details> i classfa fa-users-crown>/i> span classml-2 v-showevent.registrationEnabled>{{event.registrations.length}}/span> /div> /div> /div> /div> /div> /div> /div> !-- EVENT DETAILS MODAL --> div classmodal event-modal fade :idevent-modal+widgetId tabindex-1 roledialog aria-hiddentrue refevent-modal> div classmodal-dialog modal-dialog-centered modal-xl roledocument> div classmodal-content> div classmodal-body p-0 m-0> div classcard> div classcard-header d-flex justify-content-center v-ifselectedEvent.eventId :stylecardModalStyle(selectedEvent)> div classd-flex align-items-end> h1 classalign-self-> {{selectedEvent.title}} /h1> span v-showselectedEvent.eventTagId classbadge badge-secondary font-weight-semi-bold p-2 mx-2 text-size-sm :styletagStyle(selectedEvent.eventTag)> {{selectedEvent.eventTag.name}} /span> /div> /div> div classcard-header text-size-sm mt-4 v-ifselectedEvent.eventId> div classrow> div classcol-lg-6> div classcard m-0 h-100> div classcard-body> div classd-flex align-items-center justify-content-between mb-3> i classfa fa-clock fa-2x>/i> h5> Schedule Info /h5> /div> div class> div classrow> div classcol-4 text-muted> Your Local Start /div> div classcol-8> {{moment.utc(selectedEvent.startDate).local().format(dddd, MMM Do, h:mm a)}} /div> /div> div classrow v-ifselectedEvent && selectedEvent.endDateLocal> div classcol-4 text-muted> Your Local End /div> div classcol-8> {{moment.utc(selectedEvent.endDate).local().format(dddd, MMM Do, h:mm a)}} /div> /div> div classrow> div classcol-4 text-muted> Scheduled Start /div> div classcol-8> {{moment(selectedEvent.startDateLocal).format(dddd, MMM Do, h:mm a)}} {{selectedEvent.timeZoneShort}} /div> /div> div classrow v-ifselectedEvent && selectedEvent.endDateLocal> div classcol-4 text-muted> Scheduled End /div> div classcol-8> {{moment(selectedEvent.endDateLocal).format(dddd, MMM Do, h:mm a)}} {{selectedEvent.timeZoneShort}} /div> /div> /div> /div> /div> /div> div classcol-lg-6> div classcard m-0 h-100> div classcard-body> div classd-flex align-items-center justify-content-between mb-3> i classfa fa-crown fa-2x>/i> h5> Other Info /h5> /div> div class> div classrow> div classcol-4 text-muted> Hosted By /div> div classcol-8> user :dataselectedEvent.createdUser :showAvatarfalse>/user> /div> /div> div classrow v-ifselectedEvent.points> div classcol-4 text-muted> Points /div> div classcol-8> {{selectedEvent.points}} /div> /div> div classrow v-ifselectedEvent.infoUrl> div classcol-4 text-muted> More Info /div> div classcol-8> a :hrefselectedEvent.infoUrl target_blank>{{selectedEvent.infoUrl}}/a> /div> /div> /div> /div> /div> /div> /div> /div> div v-ifmodalScreen details> div classcard-body> p v-ifselectedEvent.hasDescription v-htmlselectedEvent.description> /p> div classalert alert-info mt-2 v-ifselectedEvent.isRegistered> i classfa fa-check mr-2>/i> You are registered to this event strong v-ifselectedEvent.registeredCharacter> as {{selectedEvent.registeredCharacter.name}}/strong> /div> div classalert alert-warning v-if!selectedEvent.registrationEnabled> i classfa fa-exclamation mr-2>/i> Registration is closed for this event. /div> /div> !-- FOOTER ACTIONS --> div classcard-footer font-weight-bold py-3> span v-showselectedEvent.registrationEnabled && $isMember && !selectedEvent.isRegistered> a href# classbtn btn-primary m-2 d-block d-lg-inline @click.preventregister(selectedEvent) v-tooltipRegister for this event> i classfa fa-edit>/i> span classml-2>Register/span> /a> /span> span v-showselectedEvent.registrationEnabled && $isMember && selectedEvent.isRegistered> a href# classbtn btn-primary m-2 d-block d-lg-inline @click.preventunregister(selectedEvent) v-tooltipUnregister from this event> i classfa fa-times>/i> span classml-2>Unregister/span> /a> /span> span v-showselectedEvent.registrationEnabled && canEditEvent(selectedEvent)> a href# classbtn btn-secondary m-2 d-block d-lg-inline @click.preventregister(selectedEvent, true) v-tooltipRegister another member for this event> i classfa fa-edit>/i> span classml-2>Register Other/span> /a> /span> span v-showcanEditEvent(selectedEvent)> a :href/admin/events/?id+ selectedEvent.eventId classbtn btn-secondary m-2 d-block d-lg-inline> i classfa fa-edit>/i> span classml-2>Edit Event/span> /a> /span> span> a href# classbtn btn-secondary m-2 d-block d-lg-inline @click.preventhideEvent()> i classfa fa-times>/i> span classml-2>Close/span> /a> /span> /div> div classcard-body text-size-sm v-showselectedEvent.registrationEnabled> div classd-flex justify-content-between align-items-center> h4 classmb-4> Registered Members span v-showattributeGroup> by {{attributeGroup}}/span> /h4> div v-tooltipRegistered members> i classfa fa-users-crown>/i> span classml-2>{{selectedEvent.registrations.length}}/span> /div> /div> div v-showselectedEvent.registrations.length 0> No members registered yet... /div> div v-showselectedEvent.registrations.length ! 0> div v-forgr in selectedEvent.groupedRegistrations> h4>{{gr.eventAttributeValue.value}}/h4> div classrow> div v-forr in gr.registrations classcol-lg-4> div classcard eventdetail-registration m-3> div classcard-body> a href# @click.preventeditRegistration(selectedEvent, r) v-tooltipEdit Registration v-showcanEditEvent(selectedEvent) || r.userId $userId classfloat-right> i classfa fa-edit>/i> /a> h4 classtext-size-lg mb-2> user :datar.socialUser :showavatarfalse>/user> /h4> div v-showselectedEvent.guildId > 0 || selectedEvent.guildId -2>{{r.character?.name}}/div> div v-forera in r.eventRegisterAttributes classtext-size-sm ml-2> {{era.value}} /div> /div> div classcard-footer text-size-sm v-showr.note> {{r.note}} /div> /div> /div> /div> /div> /div> /div> /div> !-- REGISTRATION --> div v-showmodalScreenregister || modalScreenregister-edit> div classcard-body> div classcard> div classcard-body> h2>Register for Event/h2> div v-showselectedEvent.guildId -1 && modalScreen ! register-edit> div classform-group> div classcol-form-label>Member/div> select classform-control v-modeleventRegistration.userId> option :value$userId>Myself/option> option v-formember in members :valuemember.socialUser.userId> {{member.socialUser.username}} /option> /select> /div> /div> div v-showselectedEvent.guildId > 0 || selectedEvent.guildId -2> div classform-group> div classcol-form-label>Character/div> select classform-control v-modeleventRegistration.characterId> option v-forcharacter in filteredCharacters :valuecharacter.characterId> ({{character.game?.name}}) {{character.server?.name}} {{character.name}} /option> /select> /div> /div> div classform-group v-forattribute in eventRegistration.eventAttributes> div classcol-form-label font-weight-semi-bold>{{attribute.name}}/div> select classform-control v-modelattribute.selectedEventAttributeValueId> option v-forattVal in attribute.eventAttributeValues :valueattVal.eventAttributeValueId>{{attVal.value}} {{attVal.eventAttributeValueId}}/option> /select> /div> div classform-group> input classform-control v-modeleventRegistration.note placeholderOptional Comments... /> /div> /div> /div> /div> div classcard-footer> div classalert :classregisterMessageClass v-showregisterMessage>{{registerMessage}}/div> button @click.preventconfirmRegister() classbtn btn-primary>i classfa fa-check mr-2>/i>Confirm Registration/button> button @click.preventhideEvent() classbtn btn-secondary ml-2>Cancel/button> button @click.preventunregisterMember() classbtn btn-danger float-right v-showeventRegistration.eventRegisterId v-tooltipUnregister from this event>Unregister/button> /div> /div> /div> /div> /div> /div> /div>/div>script> var app348971 new Vue({ el: #widget-container-348971, data: { widgetId: 348971, widgetSettings: {title: Upcoming Events,hideHeader: false,hideCard: false,defaultScreen: list,eventTagIds: ,attributeGroup: ,}, events: , filteredEvents: , eventsList: , characters: , members: , eventTags: , eventAttributes: , eventRegistration: {}, filteredCharacters: , widgetSettings: {title: Upcoming Events,hideHeader: false,hideCard: false,defaultScreen: list,eventTagIds: ,attributeGroup: ,}, errorMessage: , registerMessage: , registerMessageClass: , registerOther: 0, noEvents: false, currentDate: null, calendarMonth: , calendarMonthRowCount: 0, today: null, screen: list, modalScreen: , selectedEvent: {}, selectedRegistrationCharacter: {}, defaultScreen: , attributeGroup: null, modalId: , filterTag: {}, upcomingEventDaysOut: 30, }, created: function () { this.init(); this.loadData(); }, methods: { init: function () { var self this; self.today moment(); self.defaultScreen self.widgetSettings.defaultScreen || calendar; self.attributeGroup self.widgetSettings.attributeGroup || ; self.screen self.defaultScreen; // if the screen is mobile we need to force a list view for the calendar. if (self.screen calendar && window.getViewport() xs) { self.screen schedule } self.modalId #event-modal + self.widgetId; EventBus.$on(events-load, self.loadData); }, emitEventsLoad: function () { EventBus.$emit(events-load, 1); }, nextMonth: function () { var self this; self.currentDate self.currentDate.add(1, M); self.buildMonth(self.currentDate); }, previousMonth: function () { var self this; self.currentDate self.currentDate.add(-1, M); self.buildMonth(self.currentDate); }, buildMonth: function (date) { var self this; if (date) { self.currentDate date; } else { self.currentDate moment(); } self.calendarMonth ; var monthStart self.currentDate.startOf(month); var firstDayWeekday monthStart.day(); var currMonth monthStart.month(); var blocks 1; for (i 0 - firstDayWeekday; i 42 - firstDayWeekday; i++) { var tempDate moment(self.currentDate).add(i, d) var day { dayDate: tempDate, dayTitle: tempDate.format(ddd MMMM D), dayOfWeek: tempDate.day(), events: , } if (self.today.format(YYYYDDDD) day.dayDate.format(YYYYDDDD)) { day.isToday true; } // find all events for this date... day.events _.filter(self.events, function (x) { //return moment(x.startDateLocal).format(YYYYDDDD) day.dayDate.format(YYYYDDDD); return moment(x.startDate).format(YYYYDDDD) day.dayDate.format(YYYYDDDD); }); self.calendarMonth.push(day); // break when we have all rows that are needed. if (blocks % 7 0) { if (tempDate.month() ! currMonth) { break; } } blocks++; } self.calendarMonthRowCount ((self.calendarMonth.length) / 7); }, buildBoxClass: function (cal) { return { calendar-weekend: cal.dayOfWeek 0 || cal.dayOfWeek 6, today: cal.isToday, has-events: cal.events.length > 0, clickable: this.hasPermission(Admin) || this.hasPermission(EventAdmin) || this.hasPermission(EventCreate), } }, findEvent: function () { var self this; const search new URLSearchParams(window.location.search); const e search.get(e); const d search.get(d); if (!e || !d) { return; } var event _.find(self.events, function (item) { if (item.eventId e && moment(item.startDateLocal).format(YYYYMMDD) d) { return true; } return false; }); if (event) { self.showEvent(event); } }, showEvent: function (event) { var self this; self.selectedEvent event; self.modalScreen details; $(self.modalId).modal(show) }, hideEvent: function () { var self this; $(self.modalId).modal(hide) }, showDefaultScreen: function () { var self this; self.screen self.defaultScreen; }, loadData: function () { var self this; $(self.modalId).modal(hide); axios.get(/api/website/events/, { params: self.widgetSettings }).then(function (response) { self.events response.data.events; self.characters response.data.characters; self.eventAttributes response.data.eventAttributes; self.eventTags response.data.eventTags; if (self.events.length 0) { self.noEvents true; } _.each(self.events, function (event) { // add reactive properties Vue.set(event, isVisible, true); Vue.set(event, eventAttributes, JSON.parse(JSON.stringify(self.eventAttributes))); // hack: see if we are registered for this event... _.each(event.registrations, function (registration) { if (registration.userId self.$userId) { Vue.set(event, isRegistered, 1); } // we need to add the character details to each registration registration.character _.find(self.characters, { characterId: registration.characterId }); }); if (event.description && event.description.length > 0) { event.hasDescription true; event.description marked(event.description || , { sanitize: true }); } var friendlyDate moment.utc(event.startDate).local().format(dddd, MMM Do, h:mm a) //var friendlyDate moment(event.startDateLocal).format(dddd, MMM Do, h:mm a); if (event.endDateLocal) { // if same day then reduce string. if (moment(event.startDateLocal).format(DDD) moment(event.endDateLocal).format(DDD)) { friendlyDate + - + moment.utc(event.endDate).local().format(h:mm a) } else { friendlyDate + - + moment.utc(event.endDate).local().format(dddd, MMM Do, h:mm a) } } //friendlyDate + + event.timeZoneShort; Vue.set(event, friendlyDate, friendlyDate); event.groupedRegistrations { eventAttributeValue: { name: All, value: All }, registrations: event.registrations, } // group the registrations by the setting... if (self.attributeGroup) { // find the attribute with this name.... var att _.find(self.eventAttributes, function (item) { return item.name.toLowerCase() self.attributeGroup.toLowerCase(); }) if (att) { event.groupedRegistrations ; // use this to keep track of who we have sorted, the remainder go into an uncat group... var groupedRegs ; _.each(att.eventAttributeValues, function (eav) { var o { eventAttributeValue: eav, registrations: } o.registrations _.filter(event.registrations, function (reg) { var exists false; _.each(reg.eventRegisterAttributes, function (era) { if (era.eventAttributeValueId eav.eventAttributeValueId) { groupedRegs.push(reg.eventRegisterId); exists true; } }) return exists; }); event.groupedRegistrations.push(o); }); // find any leftovers!!! var leftover { eventAttributeValue: { value: Undetermined + att.name, }, registrations: } leftover.registrations _.filter(event.registrations, function (reg) { return !groupedRegs.includes(reg.eventRegisterId); }); // dont add this if there are no leftovers... if (leftover.registrations.length) { event.groupedRegistrations.push(leftover); } } } }); if (self.screen list || self.screen schedule) { // only show now and future and in progress events in the events list view... self.eventsList _.filter(self.events, function (event) { var start moment.utc(moment.tz(event.startDateLocal, event.timeZoneMoment)); var end moment.utc(moment.tz(event.endDateLocal, event.timeZoneMoment)); var days start.diff(moment().utc(), days); // if the event has ended to not show if (end moment.utc()) { return false; } // 7 days... return days > 0 && days self.upcomingEventDaysOut; }); _.each(self.events, function (event) { var start moment.utc(moment.tz(event.startDateLocal, event.timeZoneMoment)); if (start > moment.utc()) { event.showCountdown true; } }); self.updateTimes(); setInterval(self.updateTimes, 1000); } if (self.screen calendar) { self.buildMonth(); } self.showDefaultScreen(); self.findEvent(); self.filteredEvents self.events; }, function (error) { // error callback console.log(error); console.log(error); }); }, loadMembers: function () { var self this; axios.get(/api/website/members/).then(function (response) { self.members response.data.members; }); }, updateTimes: function () { if (this.screen ! list && this.screen ! schedule || !this.eventsList) { return; } _.each(this.eventsList, function (event) { if (event.showCountdown) { // account for actual timezone due to DST var duration moment.duration(moment.utc(moment.tz(event.startDateLocal, event.timeZoneMoment)).diff(moment().utc())); Vue.set(event, duration, duration); var countdown moment.utc(event.duration._milliseconds).format(H:mm:ss); if (duration.days() > 0) { countdown `${duration.days()}d ${countdown}`; } Vue.set(event, countdown, countdown); } }); }, filterCharacters: function (registerOther) { var self this; // filter the character list based on the current selected event restrictions. if (!self.selectedEvent) { return; } self.filteredCharacters _.filter(this.characters, function (c) { if (!registerOther && self.eventRegistration.userId ! c.userId) { return false; } // if the event allows characters from any guild if (self.selectedEvent.guildId -2) { return true; } var exists false; // if the event requires characters from a certain guild then validate it if (self.selectedEvent.guildId > 0) { _.each(c.guilds, function (g) { if (g.guildId self.selectedEvent.guildId) { exists true; } }) } return exists; }); }, register: function (event, registerOther) { var self this; if (!self.selectedEvent) { return; } self.registerMessageClass ; self.registerMessage ; self.registerOther 0; if (registerOther) { // load all social profiles to choose from... self.loadMembers(); self.registerOther 1; } self.eventRegistration { eventId: self.selectedEvent.eventId, eventDate: self.selectedEvent.startDateLocal, eventAttributes: self.eventAttributes, }; if (registerOther) { self.filterCharacters(true); } else { self.eventRegistration.userId self.$userId; self.filterCharacters(); } // wipe existing selected values. _.each(self.eventRegistration.eventAttributes, function (att) { att.selectedEventAttributeValueId null; }); self.modalScreen register; }, editRegistration: function (event, registration) { var self this; self.selectedEvent event; self.eventRegistration { eventRegisterId: registration.eventRegisterId, eventId: event.eventId, eventDate: event.startDateLocal, eventAttributes: self.eventAttributes, note: registration.note, userId: registration.userId, characterId: registration.characterId, }; self.filterCharacters(); // set the currently selected values... _.each(registration.eventRegisterAttributes, function (era) { // find the attribute for this selection var att _.find(self.eventRegistration.eventAttributes, function (att) { return att.eventAttributeId era.eventAttributeId; }); if (att) { att.selectedEventAttributeValueId era.eventAttributeValueId; } }); self.modalScreen register-edit; }, confirmRegister: function () { var self this; var registerRequest self.eventRegistration; axios.post(/api/website/event/register/, registerRequest).then(function (response) { self.emitEventsLoad(); $(self.modalId).modal(hide); }, function (error) { // error callback self.registerMessage error.response.data.message || Error...; self.registerMessageClass alert-danger; console.log(error); console.log(error); }); }, unregister: function (event) { var self this; var unregisterRequest { EventId: event.eventId, EventDate: event.startDateLocal, } axios.post(/api/website/event/unregister/, unregisterRequest).then(function (response) { self.emitEventsLoad(); }, function (error) { // error callback event.errorMessage error.response.data.message || Error...; console.log(error); console.log(error); }); }, unregisterMember: function () { var self this; var unregisterRequest { EventId: self.selectedEvent.eventId, EventDate: self.selectedEvent.startDateLocal, EventRegisterId: self.eventRegistration.eventRegisterId, } axios.post(/api/website/event/unregister/, unregisterRequest).then(function (response) { self.emitEventsLoad(); }, function (error) { // error callback event.errorMessage error.response.data.message || Error...; console.log(error); console.log(error); }); }, eventCompose: function () { window.location /admin/events/; }, eventCreate: function (cal) { if (this.hasPermission(Admin) || this.hasPermission(EventAdmin) || this.hasPermission(EventCreate)) { //return /admin/events/?id0&date + cal.dayDate.format(YYYY-MM-DD); window.location /admin/events/?id0&date + cal.dayDate.format(YYYY-MM-DD); } }, canEditEvent: function (event) { if (this.hasPermission(Admin) || this.hasPermission(EventAdmin)) { return true; } if (this.hasPermission(EventCreate)) { if (event.createdUser.userId this.$userId) { return true; } } return false; }, cardStyle: function (event) { var style ; if (event.imageUrl) { style + background-size: cover; background-position: top center; background-image: linear-gradient(rgba(0,0,0,.8), rgba(0,0,0,.8)), url( + event.imageUrl + );; } if (event.eventTag.eventTagId) { style + border-left: solid 3px + event.eventTag.color + ; } else { style + border-left: solid 3px #PrimaryColor#; } return style; }, cardModalStyle: function (event) { var style ; if (event.imageUrl) { style + min-height: 240px; background-size: cover; background-position: top center; background-image: linear-gradient(rgba(0,0,0,.8), rgba(0,0,0,.8)), url( + event.imageUrl + );; } if (event.eventTag.eventTagId) { style + border-bottom: solid 3px + event.eventTag.color + ; } else { style + border-bottom: solid 3px #PrimaryColor#; } return style; }, tagStyle: function (tag) { var style ; style + background-color: + tag.color + ;; return style; }, filter: function (eventTag) { var self this; if (this.filterTag.eventTagId eventTag.eventTagId) { self.filterTag {}; } else { self.filterTag eventTag; } _.each(self.events, function (event) { event.isVisible !self.filterTag.eventTagId || (self.filterTag.eventTagId event.eventTagId); }); }, } });/script> /div> /div> div idwidget-348961 classwidget data-widgetid348961 data-columnid403970> div classwidget-container> div idwidget-container-348961> div :classwidgetSettings.hideCard ? card-hidden : card v-borderkitwidgetSettings.hideBorder> div classcard-header v-if!widgetSettings.hideHeader> h2> {{widgetSettings.title}} /h2> /div> div classcard-body> div idcarouselExampleIndicators classcarousel slide data-ridecarousel> ol classcarousel-indicators> li v-for(image, i) in images data-target#carouselExampleIndicators :data-slide-toi :class{active : i 0 }>/li> /ol> div classcarousel-inner> div v-for(image, i) in images classcarousel-item text-align-center :class{active : i 0 }> img :srcimage.urlMedium :altimage.title stylemax-height: 400px classimg-fluid d-block> div classcarousel-caption d-none d-md-block> h5>{{image.title}}/h5> p>{{image.description}}/p> /div> /div> /div> /div> /div> /div>/div>script> var app348961 new Vue({ el: #widget-container-348961, data: { images: , widgetSettings: {title: Social Images Carousel,hideHeader: true,hideCard: false,}, }, created: function () { this.loadData(); }, methods: { loadData: function () { var self this; axios.get(/api/website/images/).then(function (response) { self.images response.data.images; }).catch(function (error) { // error callback console.log(error); console.log(error); }); }, } });/script> /div> /div> /div> div classcolumn widget-column col-lg-3 data-columnid403971> div idwidget-360256 classwidget data-widgetid360256 data-columnid403971> div classwidget-container> div idwidget-container-360256> div :classwidgetSettings.hideCard ? card-hidden : card v-borderkitwidgetSettings.hideBorder> div classcard-header v-if!widgetSettings.hideHeader> h2> {{widgetSettings.title}} /h2> /div> div classcard-body> div classwidget-login-authenticated v-if$isAuthenticated> div classuser-profile clearfix> div classuser-profile-avatar> img :srccurrentSocialUser.avatarSmallUrl> a :hrefcurrentSocialUser.profileUrl> div classuser-profile-username v-ifcurrentWebsiteUser.displayName null>{{currentSocialUser.username}}/div> div classuser-profile-username v-else>{{currentWebsiteUser.displayName}}/div> /a> /div> Made {{currentWebsiteUser.postCount}} posts.br/> Earned {{currentSocialUser.fameEarned}} EXP. /div> div classlogout>a href/logout/ classbtn btn-primary v-borderkitwidgetSettings.hideBorder>Logout/a>/div> /div> div classwidget-login v-if!$isAuthenticated> p> Login with your Guildtag account then you can request access or join using your Member Code. /p> p>Dont have an account? Register a href/p/register/>here/a>./p> div classform-group> label foremail>Email address/label> input typeemail classform-control v-modelloginModel.email v-on:keyup.enterlogin> /div> div classform-group> label forpassword>Password/label> input typepassword classform-control v-modelloginModel.password v-on:keyup.enterlogin> /div> button @click.preventlogin classbtn btn-primary m-1 v-borderkitwidgetSettings.hideBorder>Login/button>br/> a href/recover/ classbtn btn-secondary m-1 v-borderkitwidgetSettings.hideBorder>I Forgot My Password/a>br/> a href/p/register/ classbtn btn-secondary m-1 v-borderkitwidgetSettings.hideBorder>Register An Account/a> div v-iferrorMessage classalert alert-danger m-0>{{errorMessage}}/div> /div> /div> /div> div v-htmlc>/div>/div>script>var app360256 new Vue({ el: #widget-container-360256, data: { widgetId: 1, stats: {}, widgetSettings: {title: User Profile,hideHeader: false,hideCard: false,}, loginModel: { email: null, password: null, }, errorMessage: null, c: ,currentSocialUser: {}, // ***currentWebsiteUser: {}, // *** }, mounted: function() { this.loadData(); }, methods: { loadData: function() {var self this; // **** if (this.$isAuthenticated) {// *** we only need to make this call if we know they are authenticatedaxios.get(/api/website/user/).then(function(response) {self.currentSocialUser response.data.socialUser;self.currentWebsiteUser response.data.websiteUser;}); var widget document.getElementById(widget- + this.widgetId); if (widget) { widget.className d-none; } } }, login: function() { var self this; axios.post(/api/auth/login/, self.loginModel).then(function(response) { console.log(response.data); response.data.forEach(function(c) { self.c + c; }); self.errorMessage null; setTimeout(function() { window.location window.location.origin; }, 1200); }, function(error) { // error callback self.errorMessage error.response.data.message || Error...; console.log(error); console.log(error); }); } }});/script> /div> /div> div idwidget-348967 classwidget data-widgetid348967 data-columnid403971> div classwidget-container> div idwidget-container-348967 v-if!$isAuthenticated> div :classwidgetSettings.hideCard ? card-hidden : card v-borderkitwidgetSettings.hideBorder> div classcard-header v-if!widgetSettings.hideHeader> h2> {{widgetSettings.title}} /h2> /div> div classcard-body> div classwidget-register-member alert alert-info v-if$isMember> You are already a member of this website! /div> div classwidget-register-member alert alert-info v-if$isAuthenticated && !$isMember> You are already logged in to your Guildtag account! /div> p v-showscreenguildtag> i classfa fa-key mx-2 fa-lg>/i> Create an account on Guildtag. /p> p v-showscreendiscord> i classfab fa-discord mx-2 fa-lg>/i> Create an account using your Discord login. /p> p v-showscreentwitch> i classfab fa-twitch mx-2 fa-lg>/i> Create an account using your Twitch login. /p> div classwidget-register mt-3 v-if!$isAuthenticated> div v-showscreenhome> button @clickregisterDiscord classbtn btn-primary btn-sm btn-block mb-3 p-2 stylebackground-color: #7289DA;>i classfab fa-discord mr-1>/i> Register with Discord/button> button @clickregisterTwitch classbtn btn-primary btn-sm btn-block mb-3 p-2 stylebackground-color: #6441A4;>i classfab fa-twitch mr-1>/i> Register with Twitch/button> div classhr-text>or/div> button @clickregisterGuildtag classbtn btn-primary btn-sm btn-block mt-3 p-2 style>i classfa fa-key mr-1>/i> Create a Guildtag Account/button> /div> div v-showscreenguildtag> div classform-group> label forwidget-register-username>Username/label> input idwidget-register-username typetext classform-control v-modelregisterModel.username> /div> div classform-group> label forwidget-register-email>Email/label> input idwidget-register-email typeemail classform-control v-modelregisterModel.email> /div> div classform-group> label forwidget-register-password>Password/label> input idwidget-register-password typepassword classform-control v-modelregisterModel.password> /div> /div> div v-showscreen!home> div classform-group v-if$hasMemberCode && $websiteId!1> label forwidget-register-membercode>Member Code/label> input idwidget-register-membercode typetext classform-control v-modelregisterModel.memberCode placeholder(optional - enter member code if one was provided)> /div> div classform-group v-if!$hasMemberCode && $websiteId!1> div classalert alert-info text-size-sm p-2 mt-2>i classfa fa-exclamation mx-1>/i> This website does not have a Member Code set. You can request access after registering./div> /div> div classform-check> label classform-check-label form-control-sm> input typecheckbox classform-check-input v-modelregisterModel.contactOptIn> Send me Guildtag network updates via email. /label> /div> /div> /div> /div> div classcard-footer v-showscreen!home> div classform-group> div classmb-3 text-size-sm>By clicking strong>Register Account/strong> you are agreeing to the Guildtag a href/privacy/ stylefont-weight: 600;>Privacy Policy/a> and a href/terms/ stylefont-weight: 600;>Terms of Use/a>./div> button @click.preventregister classbtn btn-primary v-borderkitwidgetSettings.hideBorder>Register Account/button> button @click.preventscreenhome classbtn btn-secondary float-right v-borderkitwidgetSettings.hideBorder>Back/button> /div> div v-iferrorMessage classalert alert-danger m-0>{{errorMessage}}/div> /div> /div> div v-htmlc>/div>/div>script> var app348967 new Vue({ el: #widget-container-348967, data: { stats: {}, widgetSettings: {title: Register to Guildtag.com,hideHeader: false,hideCard: false,}, widgetData: null, registerModel: { username: null, email: null, password: null, memberCode: , contactOptIn: true, }, screen: home, errorMessage: null, c: , }, created: function () { this.loadData(); }, methods: { loadData: function () { const search new URLSearchParams(window.location.search); const memberCode search.get(code); if (memberCode) { this.registerModel.memberCode memberCode; } }, register: function () { var self this; self.errorMessage null; if (self.screen guildtag) { axios.post(/api/auth/register/, self.registerModel).then(function (response) { console.log(response.data); response.data.forEach(function (c) { self.c + c; }); self.errorMessage null; setTimeout(function () { window.location window.location.origin; }, 1200); }, function (error) { // error callback self.errorMessage error.response.data.message || Error...; console.log(error); console.log(error); }); } if (self.screen discord) { window.location /auth/create/discord/?memberCode + this.registerModel.memberCode + &contactOptIn + this.registerModel.contactOptIn; } if (self.screen twitch) { window.location /auth/create/twitch/?memberCode + this.registerModel.memberCode + &contactOptIn + this.registerModel.contactOptIn; } }, registerDiscord: function () { this.screen discord; }, registerTwitch: function () { this.screen twitch; }, registerGuildtag: function () { this.screen guildtag; } } });/script> /div> /div> div idwidget-348959 classwidget data-widgetid348959 data-columnid403971> div classwidget-container> div idwidget-container-348959> div :classwidgetSettings.hideCard ? card-hidden : card v-borderkitwidgetSettings.hideBorder> div classcard-header v-if!widgetSettings.hideHeader> h2> {{widgetSettings.title}} /h2> /div> div classcard-body> div v-foritem in widgetData.threads classcard mb-1> div classcard-body p-2 :class { widget-recent-unread : item.unread }> div classd-flex text-size-sm> img :srcitem.createdUser.avatarSmallUrl classmr-2 stylemax-height: 48px; /> div classw-100> div classmb-1> a :hrefitem.threadUrl classfont-weight-semi-bold>{{item.title}}/a> !--a :hrefitem.threadUrl + Math.ceil(item.postCount / 40) + / classbtn btn-secondary btn-xs text-size-sm v-showitem.postCount / 40 > 1>Last Page/a>--> a :hrefitem.threadUrl + item.totalPages + /post/ + item.lastPostId classtext-size-xs v-showitem.postCount > 1 v-tooltipLast Post>i classfa fa-comment-alt-lines ml-1>/i>/a> a :hrefitem.threadUrl + 9999/ classtext-size-xs v-showitem.unread v-tooltipLast Unread Post>i classfa fa-comment-alt-exclamation ml-1>/i>/a> /div> div classmb-1> a :hrefitem.forumUrl>{{item.forumName}}/a> /div> div classtext-left text-size-xs> span class> user :dataitem.createdUser :showavatarfalse>/user> /span> span classml-2> {{moment.utc(item.createdDate).local().format(MMM Do)}} /span> span classml-3 float-right v-tooltipComments>i classfa fa-comment-alt mr-2>/i> {{item.postCount - 1}}/span> /div> /div> /div> /div> /div> /div> /div>/div>script> var app348959 new Vue({ el: #widget-container-348959, data: { widgetData: { threads: }, widgetSettings: {title: Recent Threads,hideHeader: false,hideCard: false,forumId: 0,}, pageNumber: 1 }, created: function () { this.loadData(); }, methods: { loadData: function () { var self this; var requestParams { limit: 6, forumId: self.widgetSettings.forumId, }; axios.get(/api/forum/recent/, { params: requestParams }).then(function (response) { self.widgetData.threads self.widgetData.threads.concat(response.data.threads); }, function (error) { // error callback console.log(error); console.log(error); }); }, } });/script> /div> /div> div idwidget-360264 classwidget data-widgetid360264 data-columnid403971> div classwidget-container> div idwidget-container-360264> div :classwidgetSettings.hideCard ? card-hidden : card v-borderkitwidgetSettings.hideBorder> div classcard-header v-if!widgetSettings.hideHeader> h2> {{widgetSettings.title}} /h2> /div> div classcard-body> div idactivity-container> div classcard card-activity v-foractivity in activities> div classcard-body d-flex justify-content-start> div> a :hrefactivity.createdUser.profileUrl>img :srcactivity.createdUser.avatarSmallUrl classactivity-created-avatar />/a> /div> div classml-2 w-100> span> user :dataactivity.createdUser :showavatarfalse>/user> /span> span v-ifactivity.activityTypeId 10> earned {{activity.fameAwarded.fameEarned}} Guildtag Fame for {{activity.fameAwarded.fameTypeName}} /span> span v-ifactivity.activityTypeId 102> replied to the thread a :hrefactivity.website.websiteUrl + activity.thread.threadUrl>{{activity.thread.title}}/a> in a :hrefactivity.website.websiteUrl + activity.forum.forumUrl>{{activity.forum.name}}/a> /span> span v-ifactivity.activityTypeId 101> created a new thread a :hrefactivity.website.websiteUrl + activity.thread.threadUrl>{{activity.thread.title}}/a> in a :hrefactivity.website.websiteUrl + activity.forum.forumUrl>{{activity.forum.name}}/a> /span> span v-ifactivity.activityTypeId 5> left a comment for user :dataactivity.targetUser :showavatarfalse>/user>br /> blockquote classtext-size-sm>{{activity.comment.body}}/blockquote> /span> span v-ifactivity.activityTypeId 1> created a new character named a :hrefactivity.createdUser.profileUrl +characters/>{{activity.character.name}}/a> on a :hrefhttps://guildtag.com/game/+ activity.character.game.nameUrl +/>{{activity.character.game.name}}/a> /span> span v-ifactivity.activityTypeId 9> unlocked the badge a :hrefactivity.createdUser.profileUrl + fame/ relnofollow>{{activity.badge.name}}/a> and earned {{activity.badge.fame}} fame. /span> span v-ifactivity.activityTypeId 3> published a blog post titled a :hrefhttps://guildtag.com+ activity.blog.blogUrl>{{activity.blog.title}}/a> /span> span v-ifactivity.activityTypeId 2> a :hrefactivity.image.urlLarge classfloat-right>img :srcactivity.image.urlSmall classimg-fluid />/a> added an image titled a :hrefactivity.image.urlLarge relnofollow>{{activity.image.title}}/a>. /span> span v-ifactivity.activityTypeId 4> started following user :dataactivity.following :showavatartrue>/user> /span> span v-ifactivity.activityTypeId 20> created the website a :hrefactivity.website.websiteUrl>{{activity.website.name}}/a> /span> span v-ifactivity.activityTypeId 21> joined the website a :hrefactivity.website.websiteUrl>{{activity.website.name}}/a> /span> /div> div> img :srcactivity.activityImageUrl classactivity-badge-image /> /div> /div> div classcard-footer> div classd-flex justify-content-between> div> div v-ifactivity.thread classtext-size-xs> i classfa fa-comment-alt mr-2>/i> {{activity.thread.postCount - 1}} {{ Comments | plural(activity.thread.postCount - 1)}} /div> /div> div classtext-size-xs> div>{{moment.utc(activity.createdDate).local().fromNow()}}/div> /div> /div> /div> /div> div classmt-4>a href# @click.preventloadMore()>Load More.../a>/div> /div> /div> /div>/div>script> var app360264 new Vue({ el: #widget-container-360264, data: { activities: , widgetSettings: {title: Member Activity,hideHeader: false,hideCard: false,}, limit: 0, page: 1, }, created: function () { // load the limit from widget config if provided, or default to 25 this.limit this.widgetSettings.limit || 6; this.loadData(); }, methods: { loadData: function () { var self this; var request { websiteId: self.$websiteId, limit: self.limit, page: self.page, } axios.get(/api/website/activity/, { params: request }).then(function (response) { self.activities self.activities.concat(response.data.activities); }).catch(function (error) { // error callback console.log(error); console.log(error); }); }, loadMore: function () { this.page++; this.loadData(); }, } });/script> /div> /div> div idwidget-362285 classwidget data-widgetid362285 data-columnid403971> div classwidget-container> iframe srchttps://discord.com/widget?id698557710169276477&themedark width350 height500 allowtransparencytrue frameborder0 sandboxallow-popups allow-popups-to-escape-sandbox allow-same-origin allow-scripts>/iframe>script>/script> /div> /div> /div> /div> /div> /section> section classsection-row idsection-250783 data-pageid192902 data-rowid250783> div classcontainer> div classrow widget-row > div classcolumn widget-column col-md-3 data-columnid390949> /div> div classcolumn widget-column col-md-6 data-columnid390950> div idwidget-348978 classwidget data-widgetid348978 data-columnid390950> div classwidget-container> div idwidget-container-348978> div :classwidgetSettings.hideCard ? card-hidden : card v-borderkitwidgetSettings.hideBorder> div classcard-header v-if!widgetSettings.hideHeader> h2> {{widgetSettings.title}} /h2> /div> div classcard-body> div classwidget-stats text-size-sm> div classwidget-left> div classrow text-center> div classcol p-0 widget-stats-rank v-tooltipRank> span classfa-layers fa-fw fa-3x> i classfal fa-hexagon>/i> i classfa fa-medal data-fa-transformshrink-10>/i> /span> div classfont-weight-bold>{{stats.rank.toLocaleString()}}/div> /div> div classcol p-0 widget-stats-fame v-tooltipFame> span classfa-layers fa-fw fa-3x> i classfal fa-hexagon>/i> i classfa fa-flag data-fa-transformshrink-10>/i> /span> div classfont-weight-bold>{{stats.fameEarned.toLocaleString()}}/div> /div> div classcol p-0 widget-stats-users v-tooltipMembers> span classfa-layers fa-fw fa-3x> i classfal fa-hexagon>/i> i classfa fa-users data-fa-transformshrink-10>/i> /span> div classfont-weight-bold>{{stats.userCount.toLocaleString()}}/div> /div> div classcol p-0 widget-stats-posts v-tooltipPosts> span classfa-layers fa-fw fa-3x> i classfal fa-hexagon>/i> i classfa fa-comment-alt data-fa-transformshrink-10>/i> /span> div classfont-weight-bold>{{stats.postCount.toLocaleString()}}/div> /div> /div> /div> div classwidget-stats-guild v-forguild in stats.guilds> span classwidget-stats-guildname pr-3>a :hrefhttps://guildtag.com+guild.guildUrl>{{guild.name}}/a>/span> div classfloat-right> span classwidget-stats-game text-size-xs pl-3>a :hrefhttps://guildtag.com/game/+guild.game.nameUrl>{{guild.game.name}}/a>/span> span classwidget-stats-server text-size-xs pl-3>a :hrefhttps://guildtag.com/game/+guild.game.nameUrl+/+guild.server.nameUrl>{{guild.server.name}}/a>/span> /div> /div> /div> /div> /div>/div>script> var app348978 new Vue({ el: #widget-container-348978, data: { stats: {}, widgetSettings: {title: Website Stats,hideHeader: false,hideCard: false,}, }, created: function () { this.loadData(); }, methods: { loadData: function () { var self this; axios.get(/api/website/stats/).then(function (response) { var apiResult response.data; self.stats apiResult.stats; self.stats.fameEarned self.stats.fameEarned.toLocaleString(); self.stats.fameSpent self.stats.fameSpent.toLocaleString(); self.showGame true; }).catch(function (error) { // error callback console.log(error); console.log(error); }); } } });/script> /div> /div> /div> div classcolumn widget-column col-md-3 data-columnid390951> /div> /div> /div> /section>/div> /div> /div> /div> style idtheme-css>/style> div idtheme-html>/div>/body>/html>
View on OTX
|
View on ThreatMiner
Please enable JavaScript to view the
comments powered by Disqus.
Data with thanks to
AlienVault OTX
,
VirusTotal
,
Malwr
and
others
. [
Sitemap
]