{"version":3,"sources":["broker.min.js"],"names":["CheckYearFormatOk","$element","min","max","value","val","length","v","parseInt","FormatYearFounded","element","input","$","attr","window","GuideBrokerListFormStateChange","OnRangeFilterEvent","elem","data","FilterBrokers","needFilterUpdate","needSearchBarUpdate","query","includes","show","ajax","type","url","filterBrokerListUrl","success","res","Success","SearchBarUpdated","html","SerchBarView","FilteredBrokerListView","FiltersUpdated","matchMedia","matches","FiltersView","RefreshFilterOptions","triggerSearchColReize","InitializeSupportCryptosFilter","InitializeRangeFilter","RefreshSearchBarOptions","InitializeBrokerListScrollableTable","InitializeBrokerListCopyableFields","remove","tooltip","boundary","companiesFoundString","replace","ItemsFound","complete","hide","undefined","location","search","LoadMoreBrokers","targetPage","loadMoreBrokerListUrl","page","HasNextPage","PageNumber","append","BrokerListRowsContent","InitializeBrokerListTableShadow","InitializePopLabelList","LoadBrokerListForumPostsNum","excludeParam","onlyUpdateUrl","filterForm","searchForm","serializeArray","concat","filter","i","name","e","addClass","sortDir","removeClass","string","each","splitOne","lastIndexOf","splitTwo","substring","indexOf","currentEntry","newEntry","toLowerCase","document","pathname","history","pushState","hasChanged","dynamicState","oldUrlParams","URLSearchParams","newUrlParams","needUpdateFilter","get","BrokerCompare","retries","setTimeout","resetSearchColWidth","ResetFilter","modal","$option","$optionVal","find","is","prop","hasClass","$selectorDiv","this","closest","selectedOptionsOutputDiv","selectedOptionsCountDiv","labelText","parent","text","count","children","callback","slideToggle","dataFilter","item","Name","WebsiteLink","AlternativeWebsites","displayValue","Array","isArray","availableBrokerNames","brokerNames","querySelectorAll","push","brokerListForSearch","availableBrokerInfos","websiteLink","altenativeWebsites","custom_autocomplete","InitializeImages","images","naturalWidth","width","srcLink","wrap","on","preventDefault","id","srclink","InitializeRealTimeFilter","that","tid","clearTimeout","targetId","index","target","jQuery","clone","appendTo","InitialzeTableSort","ShowBrokerListFilter","infiniteselect","popover","trigger","template","content","_this","types","option","showDescription","multiSelect","culture","CURRENT_LANG","btnClass","inputClass","getElementById","addEventListener","InitializeImageLazyLoading","lazyload","lazyloadThrottleTimeout","scrollTop","lazyloadImages","el","offset","top","innerHeight","off","imageObserver","IntersectionObserver","entries","observer","forEach","entry","isIntersecting","image","src","dataset","classList","unobserve","root","rootMargin","threshold","observe","textArea","createElement","style","left","position","body","appendChild","focus","select","execCommand","toastr","CodeCopiedMessage","error","removeChild","ReadBrokerListArticle","height","scrollHeight","maxHeight","toggle","contains","HideArticleString","ReadArticleString","NeedLoadMore","$elem","elementPos","viewportTop","viewportBottom","brokerIds","map","dataToSend","entityType","entityIds","contentType","JSON","stringify","jsonResponse","postNumbersLookup","topicResponse","PostNumbers","postNumber","EntityId","PostCount","link","brokerId","hasOwnProperty","xhr","status","console","selector","filterElement","key","updateUI","thumbLeft","thumbRight","range","percentFrom","from","percentTo","to","fromInput","toInput","moveThumb","isLeft","clientX","touches","rect","slider","getBoundingClientRect","percent","Math","round","onMouseMoveLeft","onMouseMoveRight","onMouseUp","removeEventListener","querySelector","getAttribute","parseFloat","setAttribute","isNaN","OnChangeSymbolGroup","OnChangeSymbolPlatform","InitBrokerContentTabs","brokerName","queryParams","defaultTab","PORTAL_CODE","tab","Tabs","InitTabs","localStoreName","ignoreHash","setTabLink","postRenderCallback","UpdateBrokerTabSEO","GetOverallRating","brokerRatings","OverallRating","rating","GetUserRating","UserRating","GetUserReviewCount","UserReviewCount","trim","replaceAll","tabId","GetCurrentTab","TryLoadSymbolsTabContent","h1Title","brokerSEOStrings","pageTitle","metaDesc","RatingValue","cnt","UpdateBrokerPageHrefs","schemaTemplate","brokerExpertReviewSchemaTemplate","brokerAggregateSchemaTemplate","UpdateSchemaTemplate","queryString","substr","baseCanonical","split","hreflangs","href","langSelectors","newLink","langCode","OpenCountryAvailabilityDialog","brokerCountries","CountryName","Availability","brokerResxStrings","UpdateRatings","cache","async","result","UserCountryAvailability","AllCountries","brokerInfo","GetRatingStarsHtml","primaryCategory","overallRankDesc","OverallRatingRank","PrimaryCategoryBrokers","GetRatingsTableHtml","VerifiedReviewCount","reviewMark","GetUserReviewCountWithFullLink","GetUserReviewCountWithPopover","UserRatingRank","userRankDesc","number","localeCode","CURRENT_CULTURE","toLocaleString","minimumFractionDigits","maximumFractionDigits","stars","half","floor","ratings","ratingList","fxvLink","IsCryptoExchange","title","RegulationRating","weight","isUserRating","PopularityRating","LiquidityRating","PricingRating","FeaturesRating","CustomerSupportRating","sort","a","b","verifiedReviewCount","totalReviewCount","popoverTemplate","popoverText","ToggleWidgetsTheme","btn","baseUrl","origin","GenerateReivewsWidgetRemoteScript","parseFloatOpts","str","toString","ar","Number","GenerateReviewWidgetsConfigModel","ReviewWidgetsConfig","Object","OverallRank","UserRank","UserReivewsNum","BrokerId","UrlSlug","FetchReviewWidgetsLocalizedContent","lang","navigator","userLanguage","language","ReviewWidgetsConfigModel","bodyFileName","model","change","OnChangedReviewsWidgetLanguage","UpdateReviewWidgetsStyle","css","OnCopyReviewWidgetEmbedScript","calendarPreviewEl","scriptVal","dummy","notificationEl","display","ReviewsWidgetConfig","Lang","hostUrl","protocol","hostname","port","hostUrlSrc","widgetsClearapiUrl","Url","UrlSrc","Calculator","defaultThemeMode","DefaultThemeMode","Width","widgetProperties","parse","WidgetProperties","GenerateReviewsWidgetScript","WidgetConfig","containerId","ceil","random","linkUrl","ReviewType","previewScript","RemoteScriptJsLink","InvestorDataDiv","isInViewport","InitializeScrollTable","Site","UpdateLastUpdatedDate","InitAuthorPopovers","placement","hoursObj","out","Item1","Item2","ratesObj","InitUserReviewsMini","SocialProfile","IgniteMiniReviews","SetupExpandableText","cell","fullText","textContent","shortText","innerHTML","toggleLink","shortTextSpan","fullTextSpan","InitializeSortableTable","table","sortMul","colIndex","rows","A_td","eq","B_td","A","toUpperCase","B","row","InitNewsTab","pagination","dataSource","locator","pageSize","pageRange","className","autoHidePrevious","autoHideNext","totalNumberLocator","response","Data","Count","langSlug","originalResponse","news","logoUrl","ImportedFromThirdParty","Thumbnail","ListingType","publishedDays","moment","duration","utc","PublishDate","diff","humanize","newsUrl","NewsSlug","NewsId","tagsHtml","Tags","tag","TagLinks","companyHtml","AssociatedBrokerId","AssociatedBrokerLogo","AssociatedBrokerName","AuthorSocialProfileId","AuthorName","AssociatedBrokerUrl","Title","ForumCategoryId","Summary","r","n","t","o","f","c","require","u","Error","code","p","exports","call","1","module","_interopRequireDefault","obj","__esModule","default","_BrokerCompare","initPopovers","fn","isFully","elementTop","elementBottom","outerHeight","../../includes/BrokerCompare.js","../../includes/Cookie.js","../../includes/CustomAutoComplete.js","../../includes/Lightbox.js","../../includes/SocialProfile.js","2","_typeof","Symbol","iterator","constructor","prototype","_classCallCheck","instance","Constructor","TypeError","_defineProperties","props","descriptor","enumerable","configurable","writable","defineProperty","_toPropertyKey","_createClass","protoProps","staticProps","arg","_toPrimitive","String","hint","prim","toPrimitive","_this2","showCashbackRate","insertAfter","arguments","container","first","_default","5","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","_i","_s","_e","_x","_r","_arr","_n","_d","next","done","err","_createForOfIteratorHelper","allowArrayLike","it","F","s","_e2","normalCompletion","didErr","step","_e3","minLen","_arrayLikeToArray","slice","test","len","arr2","Lightbox","allowedFileTypes","tmp_files","dialogWithNext","currentIndex","gallery","nextIndex","dialogWithPrevious","log","containerClass","clickedIndex","modelPopUp","_step","frameId","_iterator","_step$value","splice","_step2","_iterator2","_step2$value","file","img","URL","createObjectURL","imgInp","onchange","evt","_imgInp$files","files","alert","INVALID_FILE_TYPE","size","FILE_SIZE_TOO_BIG","PaintImage","_this3","imgInpPost","_imgInpPost$files","imgInpComment","_imgInpComment$files","fileComment","3","Cookie","CookieName","CookieValue","ExpiresInDays","d","Date","setTime","getTime","expires","toUTCString","cookieToSet","encodeURIComponent","cookie","ExpiresInHours","cname","cvalue","ca","decodeURIComponent","charAt","requestedValue","nameEQ","splits","4","options","defaults","extend","$input","$autocomplete","q","empty","displayText","which","originalValue","6","_readOnlyError","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","iter","_x3","apply","_x4","DataContainer","dataState","pagerContainer","forumMode","topicId","categoryId","moderator","lightbox","dataStateMap","Map","notificationChangeState","JumpToPostId","jumpToCommentId","LoadedComments","now","MyPendingComments","MyProfile","DeviceId","localStorage","getItem","AnonSocialProfileLikes","imagepath","imagePathForum","imagePathComment","findUserPostsSummaryUrl","findUserActivityStatusUrl","banUserUrl","updateUserActivityURl","SaveNewComment","bind","click","event","containerIdValue","CurrentPage","urlParams","GetState","ForumMode","Posts","WaitForProcessLatestPostsForumData","then","scrollIntoView","block","behavior","WaitForProcessReviewDataFeed","WaitForProcessReviewCommentsFeedData","CurrentForumMode","reviewModel","WaitForProcessInlineForumData","InitializeLBImages","CurrentTransactionListPage","Votes","WaitForProcessVotesFeedData","_step3","_iterator3","_step3$value","ProcessReviewData","entityId","expireNotification","DEFAULT_LANG","pagerId","set","has","SocialProfileId","ResetPopOverMenus","unbind","FindUserPosts","pageView","state","Review","Comment","Vote","Post","Topic","UpdateUserActivity","SearchSocialProfile","fail","FindUserActivityStatus","Message","SetUserAsBanned","notificationId","LoadReviews","LoadCustomReviewData","LoadMiniReviews","jumpToPostId","counterId","LoadTopicPosts","IgniteAddPostPhotoButton","InitForumTopicPage","postId","authorId","commentId","containerKey","EDIT_COMMENT","DELETE_COMMENT","EDIT_POST","DELETE_POST","APPROVED_REVIEWER_POPOVER","VERIFIED_REVIEWER_POPOVER","_this4","forumNotificationsSummaryUrl","isError","num","RenderNotification","RenderNotificationFooter","hasNew","LoadLatestPosts","_this5","forumContainerId","forumPagerId","addId","subscribeId","startButtonId","forumProbeUrl","dataType","AddState","TopicId","Moderate","topicExists","TotalPostAndReplies","outString","TotalPosts","_outString","ProcessInlineForumData","BE_THE_FIRST_PERSON_TO_POST_IN_THIS_DISCUSSION","forum","ProcessLatestPostsForumData","review","ProcessReviewFeedData","review_comments","ProcessReviewCommentsFeedData","List","ProcessVotesFeedData","statekey","postid","commentid","deleteSocialSubscriptionUrl","Id","Ok","YOUR_SUBSCRIPTION_HAS_BEEN_DELETED","_this6","deleteSocialPostUrl","YOUR_POST_HAS_BEEN_DELETED","_index","_index2","findIndex","PostId","HasReplies","DeletedPost","Content","EntityType","_this7","deleteSocialCommentUrl","stateresult","_index3","Comments","DeletedComment","Status","pop","commentsForPost","OpenCommentToView","_index4","UpdateReplyCounts","forumStateKey","elementId","div","reviewId","profileId","statsId","contestId","threadId","socProfId","action","feedUrl","socProfileId","OneStar","TwoStar","ThreeStar","FourStar","FiveStar","Page","AccTypeId","Sort","parentId","userIsOnline","SaveReviewComment","accountData","elId","Access","LoginWithPurpose","YOU_MUST_BE_LOGGED_IN_TO_PERFORM_THIS_ACTION","BringToReview","BringToAddOrEditReview","verifyForBrokerUrl","isVerified","_this8","editReviewUrl","output","IgniteForm","textbox","$this","targetHeight","fade","shown","animate","max-height","dataString","removeData","_this9","postBrokerReviewCommentUrl","Action","YOUR_COMMENT_HAS_BEEN_SUBMITTED","comm","RenderComment","AddToReviewComments","replyToCommentId","_this10","postCommentReplyUrl","grandParentId","RenderReply","ReplyToCommentId","IgnitePopOverMenus","IgniteReviewerStatusTooltip","RemoveState","BringToAddTopic","topicDiv","BringToEditTopic","BringToPost","categoryDiv","description","BringToAddOrEditCategory","BringToSubscription","subscribeData","BringToReviewSubscription","GetNotificationStatus","_this11","brokerImage","mouseover","current","mouseleave","_this12","add","IgniteAddPhotoButton","loadMTBrokersUrl","srv","BrokerName","PlatformType","_this13","socialProfileId","searchParams","loadAccountTypeRatingsUrl","loadReviewsUrl","BrokerRatings","fiveStarPercent","RoundNumberToTwoDecimalPlaces","PercentageFive","fourStarPercent","PercentageFour","threeStarPercent","PercentageThree","twoStarPercent","PercentageTwo","oneStarPercent","PercentageOne","AccountTypeSelectList","spamStarPercent","ReviewCount","RejectedCount","_this14","loadMiniReviewsUrl","ProcessMiniReviewData","_this15","RenderPagination","ContainerId","loadLatestPostsUrl","_this16","jumpTo","jumpToC","loadInlineTopicUrl","topicTitle","TopicTitle","_outString2","_this17","Promise","resolve","reject","_this18","commentDivToJumpTo","myVote","isAnon","GetAnonLikesFromStorage","intId","GetAnonThumbState","downString","DownVoters","upString","UpVoters","AttachedToPostId","post","RenderForumPost","TopicOwnerId","commentToPaint","isLast","numMoreComments","moreCommentsLink","RenderMoreCommentsLink","startWith","RenderForumComment","PagerHtml","LastPostBySocialProfileId","controlHtml","InitForumTopicMetaControl","TopicCreatedAt","NumParticipants","_this19","stateForumKey","_this20","stateForForum","DownVotes","UpVotes","RenderLatestForumPost","HotTopics","RenderHotTopic","clientHeight","_this21","_this22","MySocialProfileId","ActivityType","RenderReviewCommentForProfileFeed","RenderReviewForProfileFeed","_this23","stateKey","_this24","_this25","_this26","RenderVoteEntityForProfileFeed","PopulateReviewTab","Reviews","RejectedReviews","LoadedReviewComments","RejectedTabPagerHtml","selectedReview","Reviewer","OpenComment","selectedComment","comment","OpenReply","isInit","nextPage","TotalReviews","reviews","myProfile","_this27","RenderReview","channel","upThumbData","direction","upThumb","Hash","downThumbData","downThumb","storedLikeData","_this28","loadCustomReviewDataUrl","MyReview","RenderPreview","notification","who","Actor","NumActors","AND_ONE_OTHER","AND_X_OTHERS","myDate","CreatedAt","CreatorShownAt","ActorId","ActorAvatar","ActionType","HAS_POSTED_A_REVIEW_OF_X","ContentPreview","REVIEWED_A_BROKER_YOU_REPRESENT","REVIEWED_A_BROKER_YOU_SUBSCRIBED_TO","POSTED_IN_A_DISCUSSION_YOU_SUBSCRIBED_TO","SUBSCRIBED_TO_A_DISCUSSION_YOU_STARTED","X_SUBSCRIBED_TO_A_BROKER_YOU_OWN","HAS_POST_A_REVIEW_OF_A_BROKER_YOU_FOLLOW","HAS_APPROVED_YOUR_BROKER_REVIEW","X_HAS_APPROVED_YOUR_BROKER_REVIEW_COMMENT","POSTED_IN_A_DISCUSSION_YOU_STARTED","RESPONDED_TO_YOUR_COMMENT","RESPONDED_TO_YOUR_POST","X_COMMENTED_ON_REVIEW","UPVOTED_YOUR_COMMENT","UPVOTED_YOUR_POST","UPVOTED_YOUR_REVIEW","DOWNVOTED_YOUR_COMMENT","DOWNVOTED_YOUR_POST","DOWNVOTED_YOUR_REVIEW","UserActionContentPreview","SEE_ALL_NOTIFICATIONS","_this29","ImageKey","PublicName","Country","LOCATION","EDIT_MY_REVIEW","Rating","toFixed","NO_RATING","imageGallery","Images","_this30","format","ReviewerIsCompanyRep","COMPANY_REPRESENTATIVE","ReviewerIsVerified","VERIFIED_REVIEWER","UNVERIFIED_REVIEWER","VerifiedAccountsList","ACCOUNT_TYPES","moderatorNotes","ModeratorNotes","MODERATOR_NOTES","HasTranslation","TRANSLATION","Translation","VoteScore","CommentCount","ONE_COMMENTS","X_COMMENTS","LEAVE_A_COMMENT","SUBMIT_COMMENT","topic","Headline","Participants","ONE_PARTICIPANT","X_PARTICIPANTS","Replies","ONE_POST","X_POSTS","_this31","CreatedAtString","Author","JoinedDate","JOINED","JoinedDateString","InlineEntity","ENTITY_TYPE_SOCIAL_PROFILE_PAGE","linkToPost","TopicOwnerAvatar","REPLYING_TO_COMMENT_BY","ReplyingTo","ViewerCanEdit","DELETED_POST","FileName","SHOW_MORE","SHOW_LESS","VOTE_SCORE","control","DisplayUnderCommentId","REPLY","GO_TO_POST","_this32","ContentCreatedOnDateString","when","VotedOnDateString","Voter","USERNAME_UPVOTED_COMMENT","USERNAME_DOWNVOTED_COMMENT","USERNAME_UPVOTED_REVIEW","USERNAME_DOWNVOTED_REVIEW","USERNAME_UPVOTED_POST","USERNAME_DOWNVOTED_POST","RenderStatusBadge","IsCompanyRepFor","VerifiedForBroker","ModerationNotes","GO_TO_BROKER_REVIEW","GO_TO_COMMENT","_this33","LEFT_A_REVIEW_FOR","BrokerCode","RenderStarRating","ReviewId","REPLYING_TO_COMMENT_BY_X_ON_Y","ReplyingToCommentUserId","ReplyingToCommentName","COMMENTED_ON_REVIEW_LEFT_BY_X","ReplyingToReviewerId","ReplyingToReviewerName","topicSocialProfileId","_this34","DISCUSSION_STARTER","IsModerator","PortalCode","MODERATOR","IsPinned","CanModerate","LEAVE_A_REPLY","_this35","ACCOUNT_LIST","PENDING","REJECTED","imageCommentGallery","ReplyCount","ONE_REPLY","X_REPLIES","_this36","isFirst","replies","AuthorIsTopicCreator","REPLYING_TO_POST_BY","repliesToCommentString","isFirstCommentInList","isLastCommentInList","numberofComments","SortCommentByDate","view_x_replies","VIEW_ALL_X_REPLIES","source","_this37","ratingColors","color","isCompanyRep","statusClass","statusText","_this38","progress","parsed","allAccountTypesChecked","noRatingChecked","verifyBy","login","pass","mtServer","accountChecked","formData","FormData","match","hasChecked","processData","submitBrokerReviewUrl","failure","_this39","notificationStatusUrl","SubscriptionStatus","RepliesToMyPostsNotifications","_this40","openForumPostForEditUrl","_this41","openForumCommentForEditUrl","SaveEditedComment","GetExistingPostContent","PrepareEditCommentInput","GetExistingCommentContent","embeddedbutton","displayUnderCommentId","_this42","author","_this43","repliesToMyPosts","checked","submitForumPostCommentUrl","ParentPostId","repliesStr","forumStrings","TopicReplies","participantsStr","TopicParticipants","_index5","OpenForumComment","commentToRender","headline","AttachToPostId","renderedComment","currentList","IgniteLatestPostsList","scrollTo","_this44","submitForumCommentUrl","IgniteInlineForum","_this45","submitSubscriptionUrl","YOUR_TOPIC_HAS_BEEN_SUBSCRIBED","_this46","createInlineTopicUrl","NewlyMintedTopicId","_this47","myThis","intpostId","submitForumPostUrl","newUrl","replaceState","path","InitForumPage","_this48","thumbData","hashData","anonKey","thumbsUrl","PointThumb","NewScore","SocProcAnonKey","setItem","SocialProfileLikes","removeHash","RemoveThumbFromAnonList","_error","_x2","_this49","commentsForReview","k","pendingCommentsForReview","combinedComments","Set","UpdatedAt","_intId","cthml","_intId2","_this50","loadedComments","replyTrailLine","replyTrailLineTail","commentContentDiv","siblings","commentReplyListDiv","commentHeight","replyListHeight","ParentCommentId","ParentCommentReplies","ParentPostReplies","_this51","intReplyToCommentId","intPostId","pendingRepliesForReview","replyFrame","RenderReplyFrame","ch","seed","h1","h2","charCodeAt","imul","Intl","NumberFormat","grep","filteredComments","forumPinpostUrl","categoryObj","validated","LoadCategories","CategoryId","topicObj","categoryid","LoadCategoryTopics","urlParam","InitForumCategoryPage","IgniteForumTopicPage","InitForumMainPage","pageType","containerHtml","forumTemplates","_containerHtml","_containerHtml2","InitForumPageSkeleton","Topics","traditional","formatAjaxError","jqXHR","textStatus","errorThrown","CategoryName","InitForumCategoryPageHeadControls","_topic$Replies","_topic$NumParticipant","createdBy","CreationDate","LastPostBy","LastUpdateDate","menuHtml","moderatorControlsHtml","itemDiv","headHtml","InitForumMainPageHomeControls","Categories","_category$Replies","_category$NumParticip","category","Weight","Description","LastPostAt","_this52","InitForumTopicPageHeadControls","Tracker","RecordSocialActivity","_result$reviewModel","_result$reviewModel2","ADD_A_POST","SUBSCRIBE_TO_THIS_DISCUSSION","entitylink","TopicOwner","FORUM_ENTITY_TYPE_SOCIAL_PROFILE_PAGE_DESCRIPTION","avatar","ENTITY_TYPE_CONTEST_PAGE","EntityTitle","contest_description","FORUM_ENTITY_TYPE_CONTEST_PAGE_DESCRIPTION","contest_logo","ENTITY_TYPE_STATS_PAGE","stats_description","stats_logo","FORUM_ENTITY_TYPE_STATS_PAGE_DESCRIPTION","ENTITY_TYPE_BROKER_VIEW","ENTITY_TYPE_BROKER_REBATE_PROGRAM","ENTITY_TYPE_BROKER_CRYPTO_EXCHANGE","ENTITY_TYPE_BROKER_PROP_FIRM","brokerLink","company_description","company_logo","FORUM_ENTITY_TYPE_COMPANY_PAGE_DESCRIPTION","topicCreatedAt","participants"],"mappings":"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","file":"../broker.min.js","sourcesContent":["\r\nfunction CheckYearFormatOk($element, min, max) {\r\n\r\n var value = $element.val();\r\n\r\n if (value.length === 0) {\r\n $element.val('');\r\n }\r\n if (value.length === 1) {\r\n if (!(value === '1' || value === '2')) {\r\n $element.val('');\r\n }\r\n } else if (value.length === 2) {\r\n if (!(value === '19' || value === '20')) {\r\n $element.val('');\r\n }\r\n } else if (value.length === 4) {\r\n var v = parseInt(value, 10);\r\n\r\n if (!(v > min && v < max)) {\r\n $element.val('');\r\n } else {\r\n // valid input supplied, update\r\n return true;\r\n }\r\n } else if (value.length > 4) {\r\n $element.val('');\r\n }\r\n return false;\r\n}\r\n\r\n\r\nfunction FormatYearFounded(element) {\r\n\r\n var input = $(element);\r\n var min = input.attr('min');\r\n var max = input.attr('max');\r\n var yearFormedValidatedOk = CheckYearFormatOk(input, min - 1, max + 1);\r\n\r\n if (yearFormedValidatedOk) {\r\n // date validated ok, add to URL if needs be\r\n\r\n window.GuideBrokerListFormStateChange(element);\r\n return true;\r\n }\r\n return false;\r\n}\r\n\r\nfunction OnRangeFilterEvent(elem) {\r\n\r\n if ($(elem).data('filtertype') == 'year-range') {\r\n FormatYearFounded(elem, true);\r\n }\r\n}\r\n\r\nfunction FilterBrokers(needFilterUpdate, needSearchBarUpdate) {\r\n\r\n var query = $(\"#dynamic-query\").val();\r\n if ($(\"#guide-id\").val() != \"\") {\r\n if (query.includes(\"?\")) query += \"&guide=\" + $(\"#guide-id\").val();\r\n else query += \"?guide=\" + $(\"#guide-id\").val();\r\n }\r\n $(\"#broker-list-loading\").show();\r\n $.ajax({\r\n type: 'POST',\r\n url: filterBrokerListUrl,\r\n data: { query: query, needFilterUpdate: needFilterUpdate, needSearchBarUpdate: needSearchBarUpdate },\r\n success: function (res) {\r\n if (res.Success) {\r\n\r\n if (res.SearchBarUpdated) {\r\n $(\"#broker-list-search-bar-wrapper\").html(res.SerchBarView);\r\n }\r\n\r\n $(\"#broker-list-search-result-wrapper\").html(res.FilteredBrokerListView);\r\n\r\n if (res.FiltersUpdated) {\r\n\r\n if (window.matchMedia(\"(max-width: 767px)\").matches) { // on mobile view\r\n $(\"#show-guide-filter-dialog-body\").html(res.FiltersView);\r\n } else {\r\n $(\"#broker-list-filter-wrapper\").html(res.FiltersView);\r\n }\r\n\r\n RefreshFilterOptions();\r\n triggerSearchColReize();\r\n InitializeSupportCryptosFilter();\r\n InitializeRangeFilter('.range-filter');\r\n }\r\n RefreshSearchBarOptions();\r\n InitializeBrokerListScrollableTable();\r\n\r\n InitializeBrokerListCopyableFields();\r\n $(\".tooltip\").remove();\r\n $(\"#broker-list-search-result-wrapper [data-toggle=tooltip]\").tooltip('dispose').tooltip({ boundary: 'window' });\r\n\r\n $(\"#filtered-companies-count\").html(window.companiesFoundString.replace(\"{0}\", res.ItemsFound));\r\n }\r\n },\r\n complete: function () {\r\n $(\"#broker-list-loading\").hide();\r\n }\r\n })\r\n if (window.location.search != undefined && window.location.search != \"\")\r\n $('#broker-search-form > div.head-line > span.filter-reset').show();\r\n else $('#broker-search-form > div.head-line > span.filter-reset').hide();\r\n}\r\n\r\nfunction LoadMoreBrokers() {\r\n\r\n $('.broker-list-table.clone tr[data-trigger=\"load-more\"]').data(\"loading\", true);\r\n $(\"#broker-list-loading\").show();\r\n\r\n var targetPage = $('.broker-list-table.clone tr[data-trigger=\"load-more\"]').data(\"next-page\");\r\n\r\n var query = $(\"#dynamic-query\").val();\r\n if ($(\"#guide-id\").val() != \"\") {\r\n if (query.includes(\"?\")) query += \"&guide=\" + $(\"#guide-id\").val();\r\n else query += \"?guide=\" + $(\"#guide-id\").val();\r\n }\r\n \r\n $.ajax({\r\n type: 'POST',\r\n url: loadMoreBrokerListUrl,\r\n data: { query: query, page: targetPage},\r\n success: function (res) {\r\n if (res.Success) {\r\n if (res.HasNextPage) {\r\n $('table.broker-list-table tr[data-trigger=\"load-more\"]').data(\"next-page\", res.PageNumber + 1);\r\n } else {\r\n $('.broker-list-table tr[data-trigger=\"load-more\"]').remove();\r\n }\r\n $(\"table.broker-list-table tbody\").append(res.BrokerListRowsContent);\r\n $('.broker-list-table [data-toggle=\"tooltip\"]').tooltip();\r\n\r\n InitializeBrokerListTableShadow();\r\n InitializePopLabelList();\r\n LoadBrokerListForumPostsNum();\r\n }\r\n },\r\n complete: function () {\r\n $(\"#broker-list-loading\").hide();\r\n $('.broker-list-table.clone tr[data-trigger=\"load-more\"]').data(\"loading\", false);\r\n }\r\n })\r\n if (window.location.search != undefined && window.location.search != \"\")\r\n $('#broker-search-form > div.head-line > span.filter-reset').show();\r\n else $('#broker-search-form > div.head-line > span.filter-reset').hide();\r\n}\r\nfunction GuideBrokerListFormStateChange(element, excludeParam, onlyUpdateUrl) {\r\n\r\n var filterForm = $(\"form#broker-search-form\");\r\n var searchForm = $(\"form#broker-list-search-bar\");\r\n\r\n var query = filterForm.serializeArray().concat(searchForm.serializeArray()).filter(function (i) {\r\n\r\n var elem = $('select[name=' + i.name + ']');\r\n\r\n var e = $('[name=' + i.name + ']');\r\n if (i.value != \"\" && i.value != \"-1\" && i.name !== excludeParam && i.value != e.data('ignore-value')) {\r\n elem.addClass(\"active\");\r\n if (i.name == \"sort\") {\r\n if (!!elem.attr(\"sort-dir\")) {\r\n var sortDir = elem.attr(\"sort-dir\");\r\n if ((sortDir == \"desc\" && !i.value.includes(\"name\")) || (sortDir == \"asce\" && i.value.includes(\"name\"))) {\r\n return i.value;\r\n } else {\r\n return i.value += \"-\" + elem.attr(\"sort-dir\");\r\n }\r\n }\r\n }\r\n return i.value;\r\n } else {\r\n elem.removeClass(\"active\");\r\n }\r\n });\r\n\r\n var guideUpdated = false;\r\n\r\n var string = \"?\";\r\n $.each(query,\r\n function (i, v) {\r\n if (string.includes(v.name + \"=\")) {\r\n\r\n var splitOne = string.lastIndexOf(v.name + \"=\");\r\n var splitTwo = string.substring(splitOne).indexOf(\"&\") + 1;\r\n splitTwo = splitTwo === 0 ? string.length : splitTwo;\r\n\r\n var currentEntry = string.substring(splitOne, splitTwo);\r\n var newEntry = currentEntry + \",\" + v.value;\r\n\r\n string = string.replace(currentEntry, newEntry);\r\n\r\n } else {\r\n if (string !== \"?\") {\r\n string += \"&\";\r\n }\r\n string += v.name + \"=\" + v.value;\r\n }\r\n\r\n });\r\n\r\n string = string.toLowerCase();\r\n\r\n if (string === \"?\") {\r\n string = document.location.pathname;\r\n $('#dynamic-query').val('');\r\n } else {\r\n $('#dynamic-query').val(string);\r\n\r\n }\r\n\r\n if (onlyUpdateUrl == true) {\r\n window.history.pushState(\"\", \"\", string);\r\n return true;\r\n }\r\n\r\n var hasChanged = (window.dynamicState !== string);\r\n\r\n var oldUrlParams = new URLSearchParams(window.location.search);\r\n var newUrlParams = new URLSearchParams(string);\r\n\r\n var needUpdateFilter = false;\r\n if (oldUrlParams.get(\"categories\") != newUrlParams.get(\"categories\")) {\r\n needUpdateFilter = true;\r\n }\r\n\r\n window.dynamicState = string;\r\n\r\n if (hasChanged && !guideUpdated) {\r\n window.history.pushState(\"\", \"\", string);\r\n FilterBrokers(needUpdateFilter, needUpdateFilter);\r\n }\r\n\r\n return hasChanged;\r\n}\r\nvar retries = 0;\r\nfunction triggerSearchColReize() {\r\n if (window.BrokerCompare == undefined) {\r\n\r\n retries++;\r\n if (retries < 10) {\r\n setTimeout(function () { triggerSearchColReize() }, 300);\r\n }\r\n } else {\r\n\r\n window.BrokerCompare.resetSearchColWidth(false);\r\n }\r\n}\r\n\r\nfunction ResetFilter() {\r\n\r\n window.history.pushState(\"\", \"\", window.location.pathname);\r\n $(\"#dynamic-query\").val('');\r\n $(\"#show-guide-filter-dialog\").modal(\"hide\");\r\n $(\"#show-guide-filter-dialog-body\").html('');\r\n FilterBrokers(true, true);\r\n}\r\n\r\nfunction RefreshFilterOptions() {\r\n\r\n // refresh faux multi select\r\n $('div.faux-multi-select-wrap').append(\"
\");\r\n\r\n $(\"li.trigger-click\").each(function (i, e) {\r\n\r\n $option = $(e)\r\n var $optionVal = $($option.find('input:checkbox'));\r\n $optionVal.is(':checked') ? $optionVal.prop('checked', false) : $optionVal.prop('checked', true);\r\n $option.hasClass('active') ? $option.removeClass('active') : $option.addClass('active');\r\n\r\n\r\n var $selectorDiv = $(this).closest(\"div.faux-multi-select-wrap\")\r\n .find(\"div.faux-multi-select.frn-override\");\r\n\r\n var selectedOptionsOutputDiv = $(this).closest(\"div.faux-multi-select-wrap\")\r\n .find(\"div.selected-options\");\r\n var selectedOptionsCountDiv = $(this).closest(\"div.faux-multi-select-wrap\")\r\n .find(\"span.multi-num\");\r\n var labelText = $optionVal.parent().find('label').text();\r\n\r\n if ($optionVal.is(':checked')) {\r\n\r\n selectedOptionsOutputDiv.append(\"
\" + labelText + \"
\");\r\n } else {\r\n\r\n selectedOptionsOutputDiv.find('div:contains(\"' + labelText + '\")').remove();\r\n };\r\n\r\n var count = selectedOptionsOutputDiv.children().length;\r\n if (count > 0) {\r\n $selectorDiv.addClass(\"active\");\r\n\r\n if (selectedOptionsCountDiv.attr('no-bracket') !== undefined)\r\n selectedOptionsCountDiv.html(count);\r\n else selectedOptionsCountDiv.html(\"(\" + count + \")\");\r\n } else {\r\n $selectorDiv.removeClass(\"active\");\r\n selectedOptionsCountDiv.html(\"\");\r\n }\r\n\r\n if ($option.data('callback') !== undefined) {\r\n var callback = $option.data('callback');\r\n $(\"#panel\").slideToggle();\r\n if (typeof callback == \"string\") {\r\n window[callback]();\r\n }\r\n }\r\n\r\n $optionVal.removeClass('trigger-click');\r\n });\r\n\r\n if (window.location.search != undefined && window.location.search != \"\")\r\n $('#broker-search-form > div.head-line > span.filter-reset').show();\r\n else $('#broker-search-form > div.head-line > span.filter-reset').hide();\r\n}\r\nfunction dataFilter(item, query) {\r\n return (\r\n item.Name.toLowerCase().indexOf(query) > -1 ||\r\n item.WebsiteLink.toLowerCase().indexOf(query) > -1 ||\r\n item.AlternativeWebsites.toLowerCase().indexOf(query) > -1\r\n );\r\n};\r\nfunction displayValue(item) {\r\n return item.Name;\r\n}\r\nfunction RefreshSearchBarOptions() { \r\n if ($(\"#broker-search-input\").parent().find('ul'))\r\n $(\"#broker-search-input\").parent().find('ul').remove();\r\n\r\n if (!Array.isArray(window.availableBrokerNames)) {\r\n var brokerNames = [];\r\n var e = document.querySelectorAll(\"td[data-broker-name] a span\");\r\n for (var i = 0; i < e.length; i++) {\r\n brokerNames.push($(e[i]).text());\r\n }\r\n } else {\r\n brokerNames = window.availableBrokerNames;\r\n }\r\n var brokerListForSearch = [];\r\n if (!Array.isArray(window.availableBrokerNames)) { \r\n var e = document.querySelectorAll(\"td[data-broker-name] a span\");\r\n var websiteLink = document.querySelectorAll(\"td[data-broker-websitelink]\");\r\n var altenativeWebsites = document.querySelectorAll(\"td[data-broker-alternativewebsites]\");\r\n for (var i = 0; i < e.length; i++) {\r\n brokerListForSearch.push({\r\n Name: $(e[i]).text(),\r\n WebsiteLink: $(websiteLink[i]).text(),\r\n AlternativeWebsites: $(altenativeWebsites[i]).text(),\r\n });\r\n }\r\n } else {\r\n brokerListForSearch = window.availableBrokerInfos;\r\n }\r\n if (brokerNames.length > 0) {\r\n $(\"#broker-search-input\").custom_autocomplete({\r\n data: brokerListForSearch,\r\n filter: dataFilter,\r\n displayValue: displayValue\r\n });\r\n }\r\n}\r\n\r\nfunction InitializeImages() {\r\n\r\n var images = $('.article-body img:not(.lightbox-image)');\r\n for (var i = 0; i < images.length; i++) {\r\n if ($(images[i]).parent().is('a')) continue;\r\n\r\n if (images[i].naturalWidth > $('.article-body').width()) {\r\n var srcLink = $(images[i]).attr('src');\r\n $(images[i]).wrap('');\r\n }\r\n }\r\n\r\n $('[data-toggle=\"article-lightbox-image\"]').on('click', function (e) {\r\n\r\n e.preventDefault();\r\n var id = $(this).data(\"target-id\");;\r\n var srclink = $(this).attr('href');\r\n $('#' + id + \" img.lightbox-image\").attr('src', srclink);\r\n setTimeout(function () {\r\n $('#' + id).modal('show');\r\n }, 100);\r\n return false;\r\n });\r\n}\r\nfunction InitializeRealTimeFilter() {\r\n\r\n $(document).on('input', 'input[data-trigger=\"realtime-filter\"]', function () {\r\n\r\n var that = this;\r\n var value = $(this).val().toLowerCase();\r\n\r\n if ($(this).data(\"lastval\") != value) {\r\n\r\n $(this).data(\"lastval\", value);\r\n\r\n if (window.tid != undefined)\r\n clearTimeout(window.tid);\r\n\r\n window.tid = setTimeout(function () {\r\n //your change action goes here\r\n var targetId = $(that).data('target');\r\n\r\n $('#' + targetId + ' [data-text]').each(function (index, elem) {\r\n if (!value || $(elem).data('text').includes(value)) {\r\n $(elem).show();\r\n } else {\r\n $(elem).hide();\r\n }\r\n });\r\n }, 200);\r\n };\r\n });\r\n\r\n $(document).on('click', 'a[data-trigger=coin-cap-filter]', function () {\r\n var that = this;\r\n $(that).parent().find('[data-trigger=coin-cap-filter]').removeClass('active');\r\n var target = $(that).data('target');\r\n var filter = $(that).data('filter');\r\n var query = $('input[data-trigger=\"realtime-filter\"][data-target=\"' + target + '\"]').val().toLowerCase();\r\n\r\n if (filter == -1) {\r\n $(\"#\" + target + \" [data-market-cap]\").each(function (index, elem) {\r\n if (!query || $(elem).data('text').includes(query)) {\r\n $(elem).show();\r\n } else {\r\n $(elem).hide();\r\n }\r\n });\r\n } else {\r\n $(\"#\" + target + ' [data-market-cap]:not([data-market-cap=' + filter + '])').hide();\r\n $(\"#\" + target + ' [data-market-cap = ' + filter + ']').each(function (index, elem) {\r\n if (!query || $(elem).data('text').includes(query)) {\r\n $(elem).show();\r\n } else {\r\n $(elem).hide();\r\n }\r\n });\r\n }\r\n $(that).addClass('active');\r\n })\r\n}\r\n\r\nfunction InitializeBrokerListScrollableTable() {\r\n\r\n jQuery(\".fixed-column-table\").clone(true).appendTo('#fixed-column-table-container').addClass('clone');\r\n\r\n InitialzeTableSort();\r\n InitializePopLabelList();\r\n // $(\".fixed-column-table [data-toggle=tooltip]\").tooltip();\r\n}\r\n\r\nfunction ShowBrokerListFilter() {\r\n\r\n var searchEle = $('#broker-search').remove();\r\n searchEle.appendTo('#show-guide-filter-dialog-body');\r\n $(\"#exchange-list-cyptos-filter\").infiniteselect('refresh');\r\n $('#show-guide-filter-dialog').modal('show');\r\n}\r\n\r\nfunction InitializePopLabelList() {\r\n $('[data-toggle=\"pop-label-list\"]')\r\n .popover({\r\n html: true,\r\n trigger: \"manual\",\r\n template: '
',\r\n content: function () {\r\n\r\n var data = $(this).data('text');\r\n var out = '
' + data + '
';\r\n\r\n return out;\r\n }\r\n }).on(\"mouseenter\", function () {\r\n var _this = this;\r\n $(this).popover(\"show\");\r\n $(\".popover\").on(\"mouseleave\", function () {\r\n $(_this).popover('hide');\r\n });\r\n }).on(\"mouseleave\", function () {\r\n var _this = this;\r\n setTimeout(function () {\r\n if (!$(\".popover:hover\").length) {\r\n $(_this).popover(\"hide\");\r\n }\r\n }, 100);\r\n });\r\n}\r\n\r\nfunction InitializeSupportCryptosFilter() {\r\n\r\n if ($(\"#exchange-list-cyptos-filter\").length > 0) {\r\n $(\"#exchange-list-cyptos-filter\").infiniteselect({\r\n types: [\r\n { option: '-1', text: 'All' },\r\n { option: '0', text: 'Major' },\r\n { option: '1', text: 'Minor' },\r\n { option: '2', text: 'Exotic' }],\r\n url: '/api/widgets/cryptos',\r\n showDescription: false,\r\n multiSelect: true,\r\n culture: window.CURRENT_LANG,\r\n btnClass: '',\r\n inputClass: 'form-control',\r\n });\r\n document.getElementById('exchange-list-cyptos-filter').addEventListener('change', function () {\r\n GuideBrokerListFormStateChange(this);\r\n });\r\n }\r\n}\r\n\r\nfunction InitializeImageLazyLoading() {\r\n var lazyloadImages;\r\n\r\n if (\"IntersectionObserver\" in window) {\r\n lazyloadImages = document.querySelectorAll(\".lazy-load\");\r\n var imageObserver = new IntersectionObserver(function (entries, observer) {\r\n // console.log(observer);\r\n entries.forEach(function (entry) {\r\n if (entry.isIntersecting) {\r\n var image = entry.target;\r\n image.src = image.dataset.src;\r\n image.classList.remove(\"lazy-load\");\r\n imageObserver.unobserve(image);\r\n }\r\n });\r\n }, {\r\n root: null,\r\n rootMargin: \"0px\",\r\n threshold: 0.01\r\n });\r\n\r\n lazyloadImages.forEach(function (image) {\r\n imageObserver.observe(image);\r\n });\r\n } else {\r\n var lazyloadThrottleTimeout;\r\n lazyloadImages = $(\".lazy\");\r\n\r\n function lazyload() {\r\n if (lazyloadThrottleTimeout) {\r\n clearTimeout(lazyloadThrottleTimeout);\r\n }\r\n\r\n lazyloadThrottleTimeout = setTimeout(function () {\r\n var scrollTop = $(window).scrollTop();\r\n lazyloadImages.each(function () {\r\n var el = $(this);\r\n if (el.offset().top < window.innerHeight + scrollTop + 500) {\r\n var url = el.attr(\"data-src\");\r\n el.attr(\"src\", url);\r\n el.removeClass(\"lazy-load\");\r\n lazyloadImages = $(\".lazy-load\");\r\n }\r\n });\r\n if (lazyloadImages.length == 0) {\r\n $(document).off(\"scroll\");\r\n $(window).off(\"resize\");\r\n }\r\n }, 20);\r\n }\r\n\r\n $(document).on(\"scroll\", lazyload);\r\n $(window).on(\"resize\", lazyload);\r\n }\r\n}\r\nfunction InitializeBrokerListCopyableFields() {\r\n $(\"#broker-list-table td.copyable\").on('click', function (e) {\r\n var text = $(this).find('span').text();\r\n if (text != '') {\r\n var textArea = document.createElement(\"textarea\");\r\n textArea.value = text;\r\n\r\n // Avoid scrolling to bottom\r\n textArea.style.top = \"0\";\r\n textArea.style.left = \"0\";\r\n textArea.style.position = \"fixed\";\r\n\r\n document.body.appendChild(textArea);\r\n textArea.focus();\r\n textArea.select();\r\n\r\n if (document.execCommand(\"copy\")) {\r\n toastr.success(window.CodeCopiedMessage);\r\n } else {\r\n toastr.error(\"Failed to copy code\");\r\n }\r\n document.body.removeChild(textArea);\r\n }\r\n })\r\n}\r\n\r\nfunction ReadBrokerListArticle(e) {\r\n if ($(\"#article\").length > 0) {\r\n var height = $(\"#article\")[0].scrollHeight;\r\n $(\"#article-accordion\").append($(\"#article #primary\").clone(true));\r\n $(\"#article-accordion\")[0].style.maxHeight = height + \"px\";\r\n }\r\n $(\"#article\").remove();\r\n\r\n e.classList.toggle(\"active\");\r\n\r\n if (e.classList.contains(\"active\")) {\r\n $(e).html(window.HideArticleString);\r\n $(\"#article-accordion\").removeClass(\"ac-hidden\");\r\n } else {\r\n $(e).html(window.ReadArticleString);\r\n $(\"#article-accordion\").addClass(\"ac-hidden\");\r\n }\r\n}\r\n\r\nfunction NeedLoadMore() {\r\n\r\n var $elem = $('.broker-list-table.clone tr[data-trigger=\"load-more\"]');\r\n if ($elem.length == 0) return false;\r\n\r\n var elementPos = $elem.offset().top;\r\n\r\n var viewportTop = $(window).scrollTop();\r\n var viewportBottom = viewportTop + $(window).height();\r\n\r\n var height = $(window).height();\r\n return viewportTop < elementPos && elementPos < viewportBottom + height;\r\n}\r\nfunction LoadBrokerListForumPostsNum() {\r\n // Find all links with the data-action 'forum-post-link'\r\n var brokerIds = $('.broker-list-table.clone a[data-action=\"forum-post-link\"]').map(function () {\r\n // For each link\r\n // Parse the 'data-broker-id' attribute as an integer\r\n return parseInt($(this).data('broker-id'), 10);\r\n }).get(); // Convert the result to a regular array\r\n\r\n if (brokerIds.length == 0) return;\r\n\r\n var dataToSend = {\r\n entityType: 'BrokerView',\r\n entityIds: brokerIds\r\n };\r\n\r\n $.ajax({\r\n url: '/api/forum/get/entity/ids',\r\n type: 'POST',\r\n contentType: 'application/json',\r\n data: JSON.stringify(dataToSend),\r\n success: function (jsonResponse) {\r\n\r\n var postNumbersLookup = {};\r\n jsonResponse.topicResponse.PostNumbers.forEach(function (postNumber) {\r\n\r\n postNumbersLookup[postNumber.EntityId] = postNumber.PostCount;\r\n });\r\n \r\n $('.broker-list-table a[data-action=\"forum-post-link\"]').each(function () {\r\n var link = $(this);\r\n var brokerId = link.data('broker-id');\r\n\r\n // Check if the brokerId exists in the mapping\r\n if (postNumbersLookup.hasOwnProperty(brokerId)) {\r\n // Update the link's text with the PostCount from the mapping\r\n link.text(postNumbersLookup[brokerId]);\r\n link.attr('data-action', '');\r\n }\r\n });\r\n\r\n },\r\n error: function (xhr, status, error) {\r\n console.error('Error posting data: ', error);\r\n // Handle errors here\r\n }\r\n });\r\n}\r\n\r\nfunction InitializeRangeFilter(selector) {\r\n\r\n var filters = document.querySelectorAll(selector);\r\n\r\n filters.forEach(function (filterElement, key) {\r\n\r\n const slider = filterElement.querySelector(\".slider\");\r\n\r\n const range = filterElement.querySelector(\".range\");\r\n const thumbLeft = filterElement.querySelector(\".thumb.left\");\r\n const thumbRight = filterElement.querySelector(\".thumb.right\");\r\n\r\n const fromInput = document.querySelector('input[name=' + slider.getAttribute('data-input-name') + \"-min\" + ']');\r\n const toInput = document.querySelector('input[name=' + slider.getAttribute('data-input-name') + \"-max\" + ']');\r\n\r\n\r\n const min = parseFloat(slider.getAttribute('data-min'));\r\n const max = parseFloat(slider.getAttribute('data-max'));\r\n var from = min;\r\n var to = max;\r\n\r\n if (fromInput.value) from = parseFloat(fromInput.value);\r\n if (toInput.value) to = parseFloat(toInput.value);\r\n\r\n fromInput.setAttribute('data-ignore-value', min);\r\n toInput.setAttribute('data-ignore-value', max);\r\n\r\n function updateUI() {\r\n if (min == max) {\r\n thumbLeft.style.left = '0%';\r\n thumbRight.style.left = '100%';\r\n range.style.left = '0%';\r\n range.style.width = '100%';\r\n\r\n return;\r\n }\r\n var percentFrom = ((from - min) / (max - min)) * 100;\r\n var percentTo = ((to - min) / (max - min)) * 100;\r\n\r\n thumbLeft.style.left = percentFrom + '%';\r\n thumbRight.style.left = percentTo + '%';\r\n range.style.left = percentFrom + '%';\r\n range.style.width = (percentTo - percentFrom) + '%';\r\n\r\n fromInput.value = from;\r\n toInput.value = to;\r\n }\r\n\r\n function moveThumb(e, isLeft) {\r\n\r\n if (min == max) return;\r\n\r\n var clientX = e.clientX || e.touches[0].clientX;\r\n var rect = slider.getBoundingClientRect();\r\n var percent = ((clientX - rect.left) / rect.width) * 100;\r\n\r\n var value = Math.round(min + ((percent / 100) * (max - min)));\r\n\r\n if (isLeft) {\r\n from = Math.min(Math.max(min, value), to - 1);\r\n } else {\r\n to = Math.max(Math.min(max, value), from + 1);\r\n }\r\n\r\n updateUI();\r\n }\r\n\r\n function onMouseMoveLeft(e) {\r\n moveThumb(e, true);\r\n }\r\n\r\n function onMouseMoveRight(e) {\r\n moveThumb(e, false);\r\n }\r\n\r\n function onMouseUp() {\r\n document.removeEventListener('mousemove', onMouseMoveLeft);\r\n document.removeEventListener('mousemove', onMouseMoveRight);\r\n document.removeEventListener('touchmove', onMouseMoveLeft);\r\n document.removeEventListener('touchmove', onMouseMoveRight);\r\n document.removeEventListener('mouseup', onMouseUp);\r\n document.removeEventListener('touchend', onMouseUp);\r\n }\r\n\r\n thumbLeft.addEventListener(\"mousedown\", function (e) {\r\n e.preventDefault();\r\n document.addEventListener('mousemove', onMouseMoveLeft);\r\n document.addEventListener('mouseup', onMouseUp);\r\n });\r\n\r\n thumbLeft.addEventListener(\"touchstart\", function (e) {\r\n e.preventDefault();\r\n document.addEventListener('touchmove', onMouseMoveLeft);\r\n document.addEventListener('touchend', onMouseUp);\r\n });\r\n\r\n thumbRight.addEventListener(\"mousedown\", function (e) {\r\n e.preventDefault();\r\n document.addEventListener('mousemove', onMouseMoveRight);\r\n document.addEventListener('mouseup', onMouseUp);\r\n });\r\n\r\n thumbRight.addEventListener(\"touchstart\", function (e) {\r\n e.preventDefault();\r\n document.addEventListener('touchmove', onMouseMoveRight);\r\n document.addEventListener('touchend', onMouseUp);\r\n });\r\n\r\n fromInput.addEventListener('change', function (e) {\r\n const value = parseFloat(e.target.value);\r\n if (!isNaN(value)) {\r\n from = Math.min(Math.max(min, value), to - 1);\r\n updateUI();\r\n }\r\n })\r\n toInput.addEventListener('change', function (e) {\r\n const value = parseFloat(e.target.value);\r\n if (!isNaN(value)) {\r\n to = Math.max(Math.min(max, value), from + 1);\r\n updateUI();\r\n }\r\n })\r\n\r\n updateUI(); // Initialize positions\r\n })\r\n}\n\r\nfunction OnChangeSymbolGroup() {\r\n var value = $(\"#broker-symbols-tab-group-selection\").val();\r\n\r\n $('#broker-symbols-table [data-group]').each(function (index, elem) {\r\n if (!value || $(elem).data('group') == value) {\r\n $(elem).show();\r\n } else {\r\n $(elem).hide();\r\n }\r\n });\r\n}\r\n\r\n\r\nfunction OnChangeSymbolPlatform() {\r\n var value = $(\"#broker-symbols-tab-platform-selection\").val();\r\n\r\n $('#broker-symbols-table [data-platform]').each(function (index, elem) {\r\n if (!value || $(elem).data('platform').includes(value)) {\r\n $(elem).show();\r\n } else {\r\n $(elem).hide();\r\n }\r\n });\r\n}\r\n\r\nfunction InitBrokerContentTabs(brokerId, brokerName) {\r\n if ($('#broker-content-tabs').length == 0) return;\r\n\r\n const queryParams = new URLSearchParams(window.location.search);\r\n var defaultTab = 'tab-review';\r\n if (window.PORTAL_CODE == \"CBF\" || window.PORTAL_CODE == \"RKFX\")\r\n defaultTab = \"tab-rebates\";\r\n\r\n if (queryParams.get('tab')) {\r\n var tab = 'tab-' + queryParams.get('tab');\r\n\r\n if ($(\"#\" + tab).length > 0) {\r\n defaultTab = tab;\r\n }\r\n }\r\n window.Tabs.InitTabs('#broker-content-tabs',\r\n {\r\n localStoreName: 'broker-content-tabs',\r\n ignoreHash: true,\r\n setTabLink: true,\r\n postRenderCallback: function () {\r\n UpdateBrokerTabSEO(brokerId, brokerName);\r\n },\r\n defaultTab: defaultTab\r\n });\r\n}\r\n\r\nfunction GetOverallRating() {\r\n\r\n if (window.brokerRatings && window.brokerRatings.OverallRating)\r\n return window.brokerRatings.OverallRating;\r\n\r\n var rating = $($(\"#tab-review-box .broker-detail-page-rating-num\")[0]).text();\r\n if ($(\"[data-action=startup-update][data-key=overall-rating-value]\").length > 0)\r\n rating = $($(\"[data-action=startup-update][data-key=overall-rating-value]\")[0]).text();\r\n \r\n return rating;\r\n}\r\n\r\nfunction GetUserRating() {\r\n\r\n if (window.brokerRatings) {\r\n return window.brokerRatings.UserRating;\r\n }\r\n\r\n var rating = $($(\"#tab-user-reviews-box .broker-detail-page-rating-num\")[0]).text();\r\n\r\n if ($(\"[data-action=startup-update][data-key=user-rating-value]\").length > 0) {\r\n rating = $($(\"[data-action=startup-update][data-key=user-rating-value]\")[0]).text();\r\n }\r\n\r\n return rating;\r\n}\r\n\r\n\r\nfunction GetUserReviewCount() {\r\n\r\n if (window.brokerRatings) {\r\n return window.brokerRatings.UserReviewCount;\r\n }\r\n\r\n var count = $($(\"#tab-user-reviews-box .broker-detail-page-rating-stars+a\")[0]).text().trim().replaceAll('(', '').replaceAll(')', '');\r\n\r\n if ($(\"[data-action=startup-update][data-key=user-rating-review-count]\").length > 0) {\r\n count = $($(\"[data-action=startup-update][data-key=user-rating-review-count]\")[0]).text();\r\n }\r\n\r\n return count;\r\n}\r\n\r\nfunction UpdateBrokerTabSEO(brokerId, brokerName) {\r\n var tabId = window.Tabs.GetCurrentTab(\"#broker-content-tabs\");\r\n\r\n TryLoadSymbolsTabContent(brokerId);\r\n \r\n\r\n var h1Title = window.brokerSEOStrings[tabId]['h1'].replaceAll('{0}', brokerName);\r\n $(\"h1\").html(h1Title);\r\n\r\n var pageTitle = window.brokerSEOStrings[tabId]['title'].replaceAll('{0}', brokerName);\r\n $(\"title\").html(pageTitle);\r\n $(\"meta[name=title]\").attr('content', pageTitle);\r\n\r\n var metaDesc = window.brokerSEOStrings[tabId]['meta'].replaceAll('{0}', brokerName);\r\n if (tabId == 'tab-review') {\r\n var rating = GetOverallRating();\r\n\r\n metaDesc = metaDesc.replaceAll('{1}', RatingValue(rating));\r\n\r\n } else if (tabId == 'tab-user-reviews') {\r\n var rating = GetUserRating();\r\n var count = GetUserReviewCount();\r\n\r\n metaDesc = metaDesc.replaceAll('{1}', RatingValue(rating));\r\n metaDesc = metaDesc.replaceAll('{2}', count);\r\n\r\n } else if (tabId == 'tab-regulation') {\r\n var cnt = 0;\r\n if ($(\"#high-rated-regulator-count\").length > 0) cnt = $(\"#high-rated-regulator-count\").val();\r\n metaDesc = metaDesc.replaceAll('{1}', cnt);\r\n }\r\n\r\n $(\"meta[name=description]\").attr('content', metaDesc);\r\n $(\"#broker-subtext\").html(metaDesc);\r\n\r\n UpdateBrokerPageHrefs(tabId);\r\n\r\n if (tabId == 'tab-user-reviews') {\r\n $('.broker-authors .broker-author').hide();\r\n $('.broker-authors .broker-author[data-author-role=\"human-moderator\"').show();\r\n } else if (tabId == 'tab-rebates' || tabId == 'tab-review') {\r\n $('.broker-authors .broker-author').show();\r\n $('.broker-authors .broker-author[data-author-role=\"human-moderator\"').hide();\r\n } else {\r\n $('.broker-authors .broker-author').hide();\r\n }\r\n\r\n if (tabId == \"tab-review\") {\r\n window.schemaTemplate = window.brokerExpertReviewSchemaTemplate;\r\n } else if (tabId == \"tab-rebates\" || tabId == \"tab-user-reviews\") {\r\n window.schemaTemplate = window.brokerAggregateSchemaTemplate;\r\n } else {\r\n window.schemaTemplate = undefined;\r\n }\r\n\r\n UpdateSchemaTemplate();\r\n}\r\n\r\nfunction UpdateBrokerPageHrefs(tabId) {\r\n var queryString = \"?tab=\" + tabId.substr(4);\r\n\r\n if ($(\"link[rel='canonical']\").length > 0) {\r\n var baseCanonical = $(\"link[rel='canonical']\").attr('href');\r\n\r\n if (tabId == 'tab-rebates') {\r\n baseCanonical = baseCanonical.replace(\"https://fxverify.com\", \"\");\r\n } else if (window.PORTAL_CODE == \"CBF\" || window.PORTAL_CODE == \"RKFX\" || window.PORTAL_CODE == \"HFT\") {\r\n if (!baseCanonical.includes(\"https://fxverify.com\")) {\r\n baseCanonical = \"https://fxverify.com\" + baseCanonical;\r\n }\r\n }\r\n\r\n\r\n baseCanonical = baseCanonical.split('?')[0] + queryString;\r\n $(\"link[rel='canonical']\").attr('href', baseCanonical);\r\n }\r\n var hreflangs = $(\"link[hreflang]\");\r\n for (var i = 0; i < hreflangs.length; i++) {\r\n hreflangs[i].href = hreflangs[i].href.split('?')[0] + queryString;\r\n }\r\n\r\n var langSelectors = $(\"#lang-select li a\")\r\n for (var i = 0; i < langSelectors.length; i++) {\r\n\r\n var newLink = langSelectors[i].href.split('?')[0] + queryString;\r\n\r\n var langCode = $(\"#lang-select li a i\")[i].getAttribute(\"data-id\").split('-')[0];\r\n\r\n langSelectors[i].href = newLink;\r\n if (langCode == \"en\")\r\n $(langSelectors[i]).attr(\"onclick\", \"return window.Language.Select('\" + newLink + \"','\" + langCode + \"')\");\r\n else\r\n $(langSelectors[i]).attr(\"onclick\", \"return window.Language.Select('\" + newLink + \"','\" + langCode + \"')\");\r\n }\r\n}\r\n\r\nfunction OpenCountryAvailabilityDialog() {\r\n if (!window.brokerCountries) return;\r\n\r\n var html = '';\r\n for (var i = 0; i < window.brokerCountries.length; i++) {\r\n var text = window.brokerCountries[i].CountryName + ' - ';\r\n if (window.brokerCountries[i].Availability == 0) text += window.brokerResxStrings['Unknown'];\r\n else if (window.brokerCountries[i].Availability == 1) text += window.brokerResxStrings['Accepted'];\r\n else text += window.brokerResxStrings['NotAccepted'];\r\n\r\n html += '' + text + '';\r\n }\r\n\r\n $(\"#broker-countries-dialog-payload\").html(html);\r\n\r\n $(\"#broker-countries-dialog\").modal('show');\r\n}\r\n\r\nfunction UpdateRatings(brokerId, brokerName) {\r\n\r\n $.ajax({\r\n url: '/' + window.CURRENT_LANG + '/api/brokers/ratings/' + brokerId,\r\n type: 'POST',\r\n cache: false,\r\n async: true,\r\n success: function (result) {\r\n window.brokerRatings = result;\r\n\r\n if (result.UserCountryAvailability) {\r\n\r\n window.brokerCountries = result.AllCountries;\r\n\r\n var text;\r\n if (result.UserCountryAvailability.Availability == 2) { // Not accepted\r\n text = window.brokerResxStrings['NotAvailableIn0'].replace(\"{0}\", '
' + result.UserCountryAvailability.CountryName + '');\r\n $(\"#broker-availability\").html(\" \" + text);\r\n } else if (result.UserCountryAvailability.Availability == 0) { // Unknown\r\n text = window.brokerResxStrings['UnknownAvailabilityIn0'].replace(\"{0}\", '' + result.UserCountryAvailability.CountryName + '');\r\n $(\"#broker-availability\").html(\" \" + text);\r\n } else if (result.UserCountryAvailability.Availability == 1) {\r\n text = window.brokerResxStrings['AvailableIn0'].replace(\"{0}\", '' + result.UserCountryAvailability.CountryName + '');\r\n $(\"#broker-availability\").html(\" \" + text);\r\n }\r\n\r\n $(\"#broker-availability\").show();\r\n }\r\n if (!window.brokerInfo) return;\r\n\r\n // $(\"[data-action=startup-update]\").html('');\r\n\r\n $(\"[data-action=startup-update][data-key=overall-rating-value]\").html(RatingValue(window.brokerRatings.OverallRating));\r\n $(\"[data-action=startup-update][data-key=overall-rating-stars]\").html(GetRatingStarsHtml(window.brokerRatings.OverallRating));\r\n\r\n var primaryCategory = window.brokerInfo['primaryCategory'];\r\n var overallRankDesc = window.brokerResxStrings['Ranked0OutOf12'].replaceAll(\"{0}\", window.brokerRatings.OverallRatingRank)\r\n .replaceAll(\"{1}\", window.brokerRatings.PrimaryCategoryBrokers)\r\n .replaceAll(\"{2}\", primaryCategory);\r\n $(\"[data-action=startup-update][data-key=overall-rating-rank-description]\").html(overallRankDesc);\r\n $(\"[data-action=startup-update][data-key=overall-rating-table]\").html(GetRatingsTableHtml(window.brokerRatings));\r\n\r\n\r\n $(\"[data-action=startup-update][data-key=user-rating-value]\").html(RatingValue(window.brokerRatings.UserRating));\r\n $(\"[data-action=startup-update][data-key=user-rating-stars]\").html(GetRatingStarsHtml(window.brokerRatings.UserRating));\r\n\r\n $(\"[data-action=startup-update][data-key=user-rating-stars]\").removeClass(\"verified-rating\");\r\n $(\"[data-action=startup-update][data-key=user-rating-stars]\").removeClass(\"unverified-rating\");\r\n\r\n if (window.brokerRatings.VerifiedReviewCount > 30) {\r\n $(\"[data-action=startup-update][data-key=user-rating-stars]\").addClass(\"verified-rating\");\r\n } else {\r\n $(\"[data-action=startup-update][data-key=user-rating-stars]\").addClass(\"unverified-rating\");\r\n }\r\n\r\n $(\"[data-action=startup-update][data-key=user-rating-review-count]\").html(window.brokerRatings.UserReviewCount);\r\n\r\n var reviewMark = '(' + window.brokerRatings.UserReviewCount + '';\r\n if (window.brokerRatings.VerifiedReviewCount > 30) {\r\n reviewMark += ' ';\r\n }\r\n reviewMark += ')';\r\n\r\n $(\"[data-action=startup-update][data-key=user-rating-review-count-with-mark]\").html(reviewMark);\r\n\r\n $(\"[data-action=startup-update][data-key=user-rating-review-count-full-link]\").html(GetUserReviewCountWithFullLink(window.brokerRatings.VerifiedReviewCount, window.brokerRatings.UserReviewCount));\r\n $(\"[data-action=startup-update][data-key=user-rating-review-count-with-popover]\").html(GetUserReviewCountWithPopover(window.brokerRatings.VerifiedReviewCount, window.brokerRatings.UserReviewCount));\r\n\r\n if (window.brokerRatings.UserRatingRank > 0) {\r\n var userRankDesc = window.brokerResxStrings['Ranked0OutOf12'].replaceAll(\"{0}\", window.brokerRatings.UserRatingRank)\r\n .replaceAll(\"{1}\", window.brokerRatings.PrimaryCategoryBrokers)\r\n .replaceAll(\"{2}\", primaryCategory);\r\n $(\"[data-action=startup-update][data-key=user-rating-rank-description]\").html(userRankDesc);\r\n } else {\r\n $(\"[data-action=startup-update][data-key=user-rating-rank-description]\").html(\"Not Ranked (\" + primaryCategory + \")\");\r\n }\r\n\r\n $(\"[data-action=startup-update] [data-toggle=tooltip]\").tooltip('dispose').tooltip({ boundary: 'window' });\r\n\r\n UpdateBrokerTabSEO(brokerId, brokerName);\r\n }\r\n });\r\n}\r\n\r\nfunction RatingValue(number) {\r\n if (!number) number = 0;\r\n var localeCode = window.CURRENT_CULTURE;\r\n return number.toLocaleString(localeCode, { minimumFractionDigits: 1, maximumFractionDigits: 1 });\r\n}\r\n\r\nfunction GetRatingStarsHtml(number) {\r\n if (!number) number = 0;\r\n\r\n var stars = Math.round(number);\r\n var half = 0;\r\n if (Math.floor(number) == stars && number > stars) half = 1;\r\n\r\n var content = '
';\r\n if (stars > 0) {\r\n content += '';\r\n }\r\n if (half) {\r\n content += '';\r\n }\r\n var remain = 5 - stars - half;\r\n content += '';\r\n content += '
';\r\n return content;\r\n}\r\n\r\nfunction GetRatingsTableHtml(ratings) {\r\n var ratingList = [];\r\n var fxvLink = window.brokerInfo['fxvLink'];\r\n\r\n if (ratings.IsCryptoExchange) {\r\n ratingList.push({ title: window.brokerResxStrings['Regulation'], popover: window.brokerResxStrings['RegulationRatingPopover'], rating: ratings.RegulationRating || 0, weight: 1 });\r\n } else {\r\n ratingList.push({ title: window.brokerResxStrings['Regulation'], popover: window.brokerResxStrings['RegulationRatingPopover'], rating: ratings.RegulationRating || 0, weight: 2 });\r\n }\r\n\r\n if (!ratings.IsCryptoExchange) {\r\n ratingList.push({ title: window.brokerResxStrings['UserRating'], popover: window.brokerResxStrings['UserRatingPopoverText'], rating: ratings.UserRating, weight: 3, isUserRating: 1 });\r\n }\r\n\r\n ratingList.push({ title: window.brokerResxStrings['Popularity'], popover: window.brokerResxStrings['PopularityRatingPopover'], rating: ratings.PopularityRating, weight: 3 });\r\n\r\n if (ratings.IsCryptoExchange) {\r\n ratingList.push({ title: window.brokerResxStrings['Liquidity'], popover: window.brokerResxStrings['LiquidityRatingPopover'], rating: ratings.LiquidityRating || 1, weight: 1 });\r\n }\r\n\r\n ratingList.push({ title: window.brokerResxStrings['PricingRating'], popover: null, rating: ratings.PricingRating, weight: 1 });\r\n ratingList.push({ title: window.brokerResxStrings['Features'], popover: null, rating: ratings.FeaturesRating, weight: 1 });\r\n ratingList.push({ title: window.brokerResxStrings['CustomerSupport'], popover: null, rating: ratings.CustomerSupportRating, weight: 1 });\r\n\r\n ratingList.sort(function (a, b) {\r\n if (a.rating && !b.rating) return -1;\r\n if (!a.rating && b.rating) return 1;\r\n return b.weight - a.weight;\r\n });\r\n\r\n var content = '';\r\n\r\n ratingList.forEach(function (rating) {\r\n if (rating.rating)\r\n content += '';\r\n else content += '';\r\n\r\n content += '';\r\n if (rating.popover) {\r\n content += '' + rating.title + '';\r\n } else {\r\n content += '' + rating.title + '';\r\n }\r\n content += '';\r\n\r\n content += '';\r\n if (rating.rating) {\r\n content += '
';\r\n content += '
';\r\n content += GetRatingStarsHtml(rating.rating);\r\n content += '
';\r\n if (rating.isUserRating === 1) {\r\n content += \"
\" + RatingValue(rating.rating) + \" (\" + ratings.UserReviewCount + \" \" + window.brokerResxStrings['Reviews'] + \")
\";\r\n } else {\r\n content += \"\" + RatingValue(rating.rating) + \"\";\r\n }\r\n\r\n content += '
';\r\n } else {\r\n content += '
' + window.brokerResxStrings['NotRated'] + '
';\r\n }\r\n content += '';\r\n\r\n content += '' + rating.weight + '';\r\n\r\n content += '';\r\n });\r\n\r\n return content;\r\n}\r\n\r\nfunction GetUserReviewCountWithFullLink(verifiedReviewCount, totalReviewCount) {\r\n var content = '';\r\n\r\n var popoverTemplate = \"\";\r\n if (window.PORTAL_CODE === 'FXV') {\r\n if (verifiedReviewCount >= 30) {\r\n var popoverText = window.brokerResxStrings['UserReviewCountPopoverVerifiedText'];\r\n popoverText = popoverText.replaceAll('{0}', verifiedReviewCount);\r\n content = '(' + totalReviewCount + ' ' + window.brokerResxStrings[\"Reviews\"] + ' )';\r\n } else if (totalReviewCount > 0) {\r\n var popoverText = window.brokerResxStrings['ReviewCountPopoverUnverified'];\r\n popoverText = popoverText.replaceAll('{0}', verifiedReviewCount).replaceAll('{1}', totalReviewCount - verifiedReviewCount);\r\n content = '(' + totalReviewCount + ' ' + window.brokerResxStrings[\"Reviews\"] + ')';\r\n } else {\r\n content = '(0 ' + window.brokerResxStrings[\"Reviews\"] + ')';\r\n }\r\n } else {\r\n var fxvLink = window.brokerInfo['fxvLink'];\r\n if (verifiedReviewCount > 30) {\r\n var popoverText = window.brokerResxStrings['UserReviewCountPopoverVerifiedText'];\r\n popoverText = popoverText.replaceAll('{0}', verifiedReviewCount);\r\n content = '(' + totalReviewCount + ' ' + window.brokerResxStrings[\"Reviews\"] + ' ) ';\r\n } else if (totalReviewCount > 0) {\r\n var popoverText = window.brokerResxStrings['ReviewCountPopoverUnverified'];\r\n popoverText = popoverText.replaceAll('{0}', verifiedReviewCount).replaceAll('{1}', totalReviewCount - verifiedReviewCount);\r\n content = '(' + totalReviewCount + ' ' + window.brokerResxStrings[\"Reviews\"] + ') ';\r\n } else {\r\n content = '(0 ' + window.brokerResxStrings[\"Reviews\"] + ') ';\r\n }\r\n }\r\n\r\n return content;\r\n}\r\n\r\nfunction GetUserReviewCountWithPopover(verifiedReviewCount, totalReviewCount) {\r\n var content = '';\r\n if (verifiedReviewCount >= 30) {\r\n var popoverText = window.brokerResxStrings['UserReviewCountPopoverVerifiedText'];\r\n popoverText = popoverText.replaceAll(\"{0}\", verifiedReviewCount);\r\n content = \"(\" + totalReviewCount + \" )\";\r\n } else if (totalReviewCount > 0) {\r\n var popoverText = window.brokerResxStrings['ReviewCountPopoverUnverified'];\r\n popoverText = popoverText.replaceAll(\"{0}\", verifiedReviewCount).replaceAll(\"{1}\", totalReviewCount - verifiedReviewCount);\r\n content = \"(\" + totalReviewCount + \")\";\r\n } else {\r\n content = \"(0)\";\r\n }\r\n return content;\r\n}\r\n\r\n\r\nfunction ToggleWidgetsTheme(btn) {\r\n var baseUrl = window.location.origin;\r\n $(\".thememode-toggle-btn\").removeClass('active');\r\n $(btn).addClass('active');\r\n var theme = $(btn).html();\r\n if (theme.toLowerCase() == 'light') {\r\n $(\".widgets-form\").children().addClass(\"light\");\r\n $(\".widgets-form\").addClass(\"light\");\r\n $(\".widgets-form img\").attr('src', baseUrl + '/Content/dist/images/PageElements/FXV/FXVERIFY_widgets_black_logo.svg')\r\n }\r\n else {\r\n $(\".widgets-form\").children().removeClass(\"light\");\r\n $(\".widgets-form\").removeClass(\"light\");\r\n $(\".widgets-form img\").attr('src', baseUrl + '/Content/dist/images/PageElements/FXV/FXVERIFY_widgets_white_logo.svg')\r\n }\r\n GenerateReivewsWidgetRemoteScript();\r\n}\r\n\r\nfunction parseFloatOpts(str) {\r\n\r\n if (typeof str === \"number\") {\r\n return str;\r\n }\r\n if (str != undefined && str != null && str != \"\") {\r\n str = str.toString();\r\n } else {\r\n return str;\r\n }\r\n var ar = str.split(/\\.|,/);\r\n\r\n var value = '';\r\n for (var i in ar) {\r\n if (i > 0 && i == ar.length - 1) {\r\n value += \".\";\r\n }\r\n value += ar[i];\r\n }\r\n return Number(value);\r\n}\r\n\r\nfunction GenerateReviewWidgetsConfigModel() {\r\n var ReviewWidgetsConfig = new Object();\r\n ReviewWidgetsConfig.OverallRating = parseFloatOpts($(\"input[name='overall-rating']\").val());\r\n ReviewWidgetsConfig.UserRating = parseFloatOpts($(\"input[name='user-rating']\").val());\r\n ReviewWidgetsConfig.OverallRank = Number($(\"input[name='overall-rank']\").val());\r\n ReviewWidgetsConfig.UserRank = Number($(\"input[name='user-rank']\").val());\r\n ReviewWidgetsConfig.RegulationRating = parseFloatOpts($(\"input[name='regulation-rating']\").val());\r\n ReviewWidgetsConfig.UserReivewsNum = Number($(\"input[name='review-count']\").val());\r\n ReviewWidgetsConfig.BrokerId = Number($(\"input[name='broker-id']\").val());\r\n ReviewWidgetsConfig.UrlSlug = $(\"input[name='url-slug']\").val();\r\n return ReviewWidgetsConfig;\r\n}\r\n\r\nfunction FetchReviewWidgetsLocalizedContent(lang) {\r\n if (lang === \"browser\") {\r\n lang = window.navigator.userLanguage || window.navigator.language;\r\n lang = lang.substring(0, 2);\r\n }\r\n else if (lang === \"page\") {\r\n lang = window.CURRENT_LANG;\r\n }\r\n\r\n\r\n var url = '/widgets/fxv-user-review-widgets-content';\r\n if (lang !== '') {\r\n url = '/' + lang + url;\r\n }\r\n\r\n var ReviewWidgetsConfigModel = GenerateReviewWidgetsConfigModel();\r\n\r\n $.ajax({\r\n type: \"POST\",\r\n url: url,\r\n data: {\r\n bodyFileName: \"_FXVReivewsWidgetBody.cshtml\",\r\n lang: lang,\r\n model: JSON.stringify(ReviewWidgetsConfigModel)\r\n },\r\n success: function (data) {\r\n $(\".user-reviews-widgets-content\").html(data.content);\r\n $('input[type=radio][name=widgets-form]').change(function () {\r\n GenerateReivewsWidgetRemoteScript();\r\n });\r\n GenerateReivewsWidgetRemoteScript();\r\n },\r\n error: function () {\r\n\r\n }\r\n })\r\n}\r\n\r\nfunction OnChangedReviewsWidgetLanguage(e) {\r\n FetchReviewWidgetsLocalizedContent(e.value);\r\n}\r\n\r\nfunction UpdateReviewWidgetsStyle(e) {\r\n var width = e.value;\r\n $(\".user-reviews-widgets-content .broker-detail-page-rating-stars\").css(\"font-size\", 18 * width / 100);\r\n $(\".user-reviews-widgets-content .rank-span\").css(\"font-size\", 13 * width / 100);\r\n $(\".user-reviews-widgets-content .rating-span\").css(\"font-size\", 13 * width / 100);\r\n $(\".user-reviews-widgets-content img\").css(\"width\", 100 * width / 100);\r\n $(\".user-reviews-widgets-content img\").css(\"height\", 30 * width / 100);\r\n $(\".user-reviews-widgets-content .rating-num\").css(\"font-size\", 20 * width / 100);\r\n GenerateReivewsWidgetRemoteScript();\r\n}\r\n\r\nfunction OnCopyReviewWidgetEmbedScript() {\r\n var calendarPreviewEl = document.getElementById('embed-script-preview-output');\r\n if (calendarPreviewEl) {\r\n var scriptVal = calendarPreviewEl.value;\r\n var dummy = document.createElement(\"textarea\");\r\n document.body.appendChild(dummy);\r\n dummy.value = scriptVal;\r\n dummy.select();\r\n document.execCommand(\"copy\");\r\n document.body.removeChild(dummy);\r\n\r\n var notificationEl = document.getElementById('review-widget-embed-copy-notification-panel');\r\n if (notificationEl) {\r\n notificationEl.style.display = 'block';\r\n setTimeout(function () {\r\n notificationEl.style.display = 'none';\r\n }, 3000);\r\n }\r\n }\r\n\r\n GenerateReivewsWidgetRemoteScript();\r\n}\r\n\r\nfunction GenerateReivewsWidgetRemoteScript() {\r\n var ReviewsWidgetConfig = new Object();\r\n var language = \"browser\";\r\n if (document.getElementById('reviews-widget-language-select') != null) {\r\n language = document.getElementById('reviews-widget-language-select').value;\r\n }\r\n\r\n if (language != \"browser\") ReviewsWidgetConfig.Lang = language;\r\n\r\n var hostUrl = window.location.protocol + \"//\" + window.location.hostname;\r\n if (window.location.port !== \"\")\r\n hostUrl += \":\" + window.location.port;\r\n\r\n var hostUrlSrc = window.widgetsClearapiUrl;\r\n if (!hostUrlSrc) {\r\n hostUrlSrc = \"https://widgets.clearapi.io\";\r\n }\r\n\r\n ReviewsWidgetConfig.Url = hostUrl;\r\n ReviewsWidgetConfig.UrlSrc = hostUrlSrc;\r\n ReviewsWidgetConfig.Calculator = \"reviews\";\r\n\r\n var defaultThemeMode = $(\"#theme-mode .active\").html();\r\n ReviewsWidgetConfig.DefaultThemeMode = defaultThemeMode;\r\n\r\n var width = $(\"#maximum-width\").val();\r\n ReviewsWidgetConfig.Width = width;\r\n if ($(\"input[name='widgets-form']:checked\").length) {\r\n var widgetProperties = JSON.parse($(\"input[name='widgets-form']:checked\").val());\r\n ReviewsWidgetConfig.WidgetProperties = widgetProperties;\r\n } else {\r\n ReviewsWidgetConfig.WidgetProperties = undefined;\r\n }\r\n if ($('#embed-script-preview-output').length) {\r\n document.getElementById('embed-script-preview-output').value = GenerateReviewsWidgetScript(ReviewsWidgetConfig);\r\n }\r\n}\r\n\r\nfunction GenerateReviewsWidgetScript(WidgetConfig) {\r\n var containerId = WidgetConfig.Calculator + \"-\" + Math.ceil(Math.random() * 1000000);\r\n\r\n var linkUrl = WidgetConfig.Url + window.location.pathname + \"?tab=\";\r\n\r\n if (WidgetConfig.WidgetProperties.ReviewType == \"OverallRank\" || WidgetConfig.WidgetProperties.ReviewType == \"OverallRating\") {\r\n linkUrl += \"review\";\r\n }\r\n else if (WidgetConfig.WidgetProperties.ReviewType == \"UserRank\" || WidgetConfig.WidgetProperties.ReviewType == \"UserRating\") {\r\n linkUrl += \"user-reviews\";\r\n }\r\n else {\r\n linkUrl += \"regulation\";\r\n }\r\n\r\n var previewScript = \"\" + \"
\";\r\n\r\n previewScript += \"