Match Quiz Management
Welcome to Fans United Match Quiz Management Widget. The widget allows staff members with sufficient permissions to create new Match Quiz games/editions. You can use this widget as it is and embed it in your platform, or you can use the Management Panel to create games. Match Quiz is a game where users must predict a specified number of fixtures for one match for a prize. With successful installation, you can create and edit a Match Quiz game or see the report about specific game.
Installation and usage
The easiest way to use Fans United Match Quiz Widget is to install it from npm as follows:
npm install fansunited-widget-match-quizor:
yarn add fansunited-widget-match-quizHere is an example how you can integrate Fans United Match Quiz Management Widget:
import 'fansunited-widget-match-quiz/style.css';
import { MatchQuizManager } from 'fansunited-widget-match-quiz';
const App = () => {
return <MatchQuizManager fansUnitedApiKey={'your-api-key'} fansUnitedClientId={'your-client-id'}/>
}Notes
-
The widget is bundled as a React component and its usage is as simple as the above example
-
Don't worry about your project's CSS. The widget's styling is done with Joy UI which is based on headless unstyle react components. This means that the widget's CSS will NOT affect yours. One important thing is that you need to import
style.cssfile from package folder:
import 'fansunited-widget-match-quiz/style.css';
N.B: If you are using an entry point for importing all your stylings, you need to import fansunited-widget-match-quiz/style.css there as well
- Easy translation in every language. For more information check our Translation heading.
Props
type MatchQuizManagerProps = {
fansUnitedApiKey: string;
fansUnitedClientId: string;
fansUnitedLanguage?: string;
fansUnitedEnvironment?: string;
labels?: LabelsModel;
sportal365Project?: string;
sportal365Infrastructure?: 'shared' | 'betway';
};Fans United Match Quiz Management Widget depends on Fans United JS SDK and Fans United Client API. Thats why fansUnitedApiKey and fansUnitedClientId are required. They will be provided to you from Fans United team. For other optional props here is some information:
-
fansUnitedLanguage- for our sports APIs FansUnited platform supports different languages. For now they are Bulgarian (bg), English (en), Romanian (ro), Greek (el), Slovak (sk), Serbian (sr) and Hungarian (hu). If no value given it will be set to English (en). -
fansUnitedEnvironment- You can run the widget in the following environments: staging and production. If no value given it will be set to production (prod). -
labels- you can easily translate all labels, UI messages, descriptions, placeholders and etc. with this prop. By default, Fans United Match Quiz Management Widget is available in English so if no value is given, the widget will be translated in English. -
sportal365Project- The Sportal365 project. Used as a request header when communicating with Sportal365 APIs. -
sportal365Infrastructure- The Sportal365 infrastructure. Used to determine what authorization should be used when communicating with Sportal365 APIs. If no value given (when sportal365Project props is provided) it will be set to shared . -
hideSignOutButton- By default on the top right corner of the widget will be displayed a sign out button. To hide that button set this prop to true.
Translation
You can easily translate Fans United Match Quiz Management Widget in your language! You just need to pass an object to labels prop with concrete keys and values and that's it! Here's an example how you can do it:
import 'fansunited-widget-match-quiz/style.css';
import { MatchQuizManager } from 'fansunited-widget-match-quiz';
const labels = {
userNotFound: 'User not found. Please try again.',
clientConfigErrorMessage: "There was a problem fetching client's configuration. Please check again your API key and client ID. For more information contact Fans United staff.",
featureDisabled: 'Feature disabled!',
noPermissionMessage: 'You have no permission for this feature!',
tryAgainButton: 'Try again',
noGamesFound: "No games were found. You can create a game by clicking the button 'Create game'",
signOut: 'Sign out',
name: 'Name',
status: 'Status',
participants: 'Participants',
acceptUntil: 'Accept Until',
actions: 'Actions',
pending: 'Pending',
settled: 'Settled',
live: 'Live',
open: 'Open',
canceled: 'Canceled',
closed: 'Closed',
edit: 'Edit',
timeFormat: 'DD-MM-YYYY HH:mm',
previous: 'Previous',
next: 'Next',
id: 'ID',
description: 'Description',
matchSelection: 'Match selection',
matchSelectionDescription: 'Search for a match by competitions or teams. When you choose a match the defaults market will be displayed.',
marketSelection: 'Market Selection',
chosenMarkets: 'Chosen markets',
otherMarkets: 'Other markets',
marketSelectionCreateGameDescription: 'Drag and drop what market users can predict for the specified match. The default markets are automatically dropped in chosen markets.',
marketFt1x2: 'Full time',
marketHt1x2: 'Half time',
marketBothTeamsScore: 'Both teams score',
marketDoubleChance: 'Double chance',
marketHtFt: 'Half time/Full time',
marketRedCardMatch: 'Red card in match',
marketPenaltyMatch: 'Pentalty in match',
marketCornersMatch: 'Corners in match',
marketCorrectScore: 'Correct score',
marketPlayerScoreFirstGoal: 'Player to score first goal',
marketOverZeroGoals: 'Over zero goals',
marketOverOneGoals: 'Over one goals',
marketOverTwoGoals: 'Over two goals',
marketOverThreeGoals: 'Over three goals',
marketOverFourGoals: 'Over four goals',
marketOverFiveGoals: 'Over five goals',
marketOverSixGoals: 'Over six goals',
marketOverSixCorners: 'Over six corners',
marketOverSevenCorners: 'Over seven corners',
marketOverEightCorners: 'Over eight corners',
marketOverNineCorners: 'Over nine corners',
marketOverTenCorners: 'Over ten corners',
marketOverElevenCorners: 'Over eleven corners',
marketOverTwelveCorners: 'Over twelve corners',
marketOverThirteenCorners: 'Over thirteen corners',
gameStatus: 'Game status',
timeTiebreaker: 'Time tiebreaker',
timeTiebreakerDescription: `When enabled the game's leaderboard will have a classic user ranking (1,2,3). In case of same points, the user who placed their predictions eariler will be infront. When disabled the current game's leaderboard behavour is used - when 2 or more people have same points, the ranking will be 1,1,3,4,5,5,7,8.`,
rules: 'Rules',
adContent: 'Ad content',
adContentDescription: 'Place your ad content in the game. It can be plain text or html tags.',
flags: 'Flags',
flagsPlaceholder: 'Type your flag and hit enter',
repeatedValueMessage: 'You have entered a repeated value. Please enter a different one.',
images: 'Images',
mainImage: 'Main',
coverImage: 'Cover',
mobileImage: 'Mobile',
related: 'Related',
games: 'Games',
templates: 'Templates',
cutoffTime: 'Cutoff time',
createCutoffTimeDescription: 'Predictions will be accepted until this time. If not provided it will be automatically generated 15 minutes from the first match played.',
editCutoffTimeDescription: "Predictions will be accepted until this time. You need to provide a cutoff time to be able to edit the game. Keep in mind that cutoff time should be ATLEAST 15 minutes before match's kickoff time.",
back: 'Back',
loadMore: 'Load more',
exportButton: 'Export',
position: 'Position',
points: 'Points',
csvModalTitle: 'Enter how many users should be exported',
csvModalDescription: 'Download a .csv file with the first 100 number of users.',
csvModalPlaceholder: 'Export the first X users...',
csvModalDownloadButton: 'Download as CSV file',
csvModalValidationMessage: 'Input value has to be an integer number between 1 and 100',
csvModalErrorMessage: "There was a problem with fetching game's report data",
createGameMessage: 'You have successfully created a game.',
editGameMessage: 'You have successfully edited a game.',
createGameErrorMessage: 'There was a problem with creating the game. Please try again.',
editGameErrorMessage: 'There was a problem with editing the game. Please try again.',
leaderboardErrorMessage: 'There was a problem with displaying leaderboard. Please try again.',
manageWinners: 'Manage winners',
title: 'Title',
winnersDescription: 'Describe the winners...',
note: 'Note',
tags: 'Tags',
tagsPlaceholder: 'Provide tags for the winner...',
save: 'Save',
preview: 'Preview',
positionAndWinnerRequiredMessage: 'Position and winner are required!',
sameChosenWinnerMessage: 'You have selected same winners. Each winner has to be unique!',
relatedEntitiesErrorMessage: 'There was a problem with fetching entities. Please try again.',
labelsHeading: 'Labels',
customFields: 'Custom fields',
keyDynamicFields: 'Key',
valueDynamicFields: 'Value',
gameByIdErrorMessage: 'There was a problem retrieving full information about the game.',
uploadingImageMessage: 'You have successfully uploaded image',
generateSignedInUrlErrorMessage: 'There was a problem generating signed in URL to store the image in bucket. Please try again',
uploadingImageErrorMessage: 'There was a problem with uploading image to bucket. Please try again',
encryptingImageErrorMessage: 'There was a problem with encrypting image before uploading it to bucket. Please try again',
searchSportal365ImagesErrorMessage: 'There was a problem with searching images from Sportal 365 API. Please try again',
searchImage: 'Search image',
hideFilters: 'Hide filters',
showFilters: 'Show filters',
exportAllUsers: 'Export all users',
usersExportMessage: 'All users have been exported successfully',
usersExportErrorMessage: 'There was a problem with exporting users. Please try again',
marketCorrectScoreHalfTime: 'Correct score at half-time',
marketCorrectScoreAdvanced: 'Advanced correct score',
schedule: 'Schedule',
scheduledTaskNotAvailable: 'To configure scheduled tasks you need to first create your game',
createScheduledTaskMessage: 'You have successfully created scheduled task',
createScheduledTaskErrorMessage: 'An error occurred while creating scheduled task. Please try again later',
updateScheduledTaskMessage: 'You have successfully updated scheduled task',
updateScheduledTaskErrorMessage: 'An error occurred while updating scheduled task. Please try again later',
deleteScheduledTaskMessage: 'You have successfully deleted scheduled task',
deleteScheduledTaskErrorMessage: 'An error occurred while deleting scheduled task. Please try again later',
changeStatusTo: 'Change status to:',
at: 'At:',
deleteScheduledTaskModalTitle: 'Delete scheduled task',
deleteScheduledTaskModalParagraph: 'Are you sure you want to delete the following scheduled task: ',
delete: 'Delete',
close: 'Close',
configuration: 'Configuration',
branding: 'Branding',
urls: 'URLs',
primaryUrl: 'Primary URL',
secondaryUrl: 'Secondary URL',
privacyPolicyUrl: 'Privacy Policy URL',
termsAndConditionsUrl: 'Terms and Conditions URL',
additionalUrl: 'Additional URL',
colors: 'Colors',
primaryColor: 'Primary Color',
secondaryColor: 'Secondary Color',
contentColor: 'Content Color',
backgroundColor: 'Background Color',
borderColor: 'Border Color',
additionalColor: 'Additional Color',
mainLogo: 'Main Logo',
mobileLogo: 'Mobile Logo',
backgroundImage: 'Background Image',
mobileBackgroundImage: 'Mobile Background Image',
additionalImage: 'Additional Image',
hideMoreImages: 'Hide more images',
showMoreImages: 'Show more images',
uploadImage: 'Upload Image',
sportal365Images: 'Sportal365 Images',
create: 'Create',
createdAt: 'Created at',
additionalInformation: 'Additional information',
sortOrder: 'Sort order',
ascending: 'Ascending',
descending: 'Descending',
itemsPerPage: 'Items per page',
clone: 'Clone',
pageNo: 'Page No',
winnersErrorMessage: 'There was a problem with fetching information about game winners. Please try again.',
createWinnersMessage: 'You have successfully created winners for the game.',
createWinnersErrorMessage: 'There was a problem with creating winners for the game. Please try again.',
editWinnersMessage: 'You have successfully edited winners for the game.',
editWinnersErrorMessage: 'There was a problem with editing winners for the game. Please try again.',
configureWinners: 'Configure Winners',
noStandingsAvailable: 'No standings available',
noStandingsAvailableExportUsers: 'Standings are currently not available, as not all matches have been played yet. However, you can still export all the users who have participated so far.',
predictions: 'Predictions',
nicknameAndName: 'Nickname & Name',
clearWinner: 'Clear winner',
search: 'Search',
clearImage: 'Clear image',
copyUrl: 'Copy URL',
viewImage: 'View image',
cropImage: 'Crop image',
aspectRatio: 'Aspect ratio',
crop: 'Crop',
reset: 'Reset',
urlCopiedToClipboardMessage: 'URL copied to clipboard',
imageDeletedMessage: 'Image deleted',
imageResetMessage: 'The initial size of the image has been restored',
fromDate: 'From Date',
toDate: 'To Date',
manageGameTitle: 'Manage Match Quiz',
manageGameDescription: 'Manage your Match Quiz game here',
cloneGameTitle: 'Clone Match Quiz game',
provideTitleGameErrorMessage: 'You need to provide a title to your game!',
filters: 'Filters',
competitionsSelectionPlaceholder: 'Search for competitions by their name',
teamsSelectionPlaceholder: 'Search for teams by their name',
searchCompetitionsErrorMessage: 'There was a problem searching for competitions',
searchTeamsErrorMessage: 'There was a problem searching for teams',
searchMatches: 'Search matches',
getMatchesErrorMessage: 'An error occurred while fetching the matches. Please try again.',
gameParticipationsReportErrorMessage: 'There was a problem with fetching information about game participation. Please try again',
reports: 'Reports',
performanceByDay: 'Performance by day',
participations: 'Participations',
standings: 'Standings',
noProfileInformationAvailableMessage: 'There is no profile information available',
showDetails: 'Show details',
noMatchesFound: 'No matches are found for the provided filters',
sortingFilterTooltip: 'Sort by earliest match kickoff time. Descending order shows games with the latest kickoffs first (newest to oldest). Ascending order shows games with the earliest kickoffs first (oldest to newest).',
noSetWinnersMessage: 'No winners are set for this game.',
getGamesErrorMessage: 'There was a problem retrieving information about the games.',
titleRequiredFieldValidationMessage: 'Title field is required!',
fixturesRequiredValidationMessage: 'You need to provide at least one fixture',
selectedMatch: 'Selected match',
usersLeadsExportMessage: 'All users leads have been exported successfully',
usersLeadsExportErrorMessage: 'There was a problem with exporting all users leads. Please try again',
exportAllUsersLeads: 'Export all users leads',
notVerified: 'Not verified',
updatedAt: 'Updated at',
userGamePredictionErrorMessage: "There was a problem with fetching user's game prediction. Please try again",
predictionBy: 'Prediction by',
noPredictionAvailable: 'No prediction available',
market: 'Market',
correct: 'Correct',
partiallyCorrect: 'Partially correct',
incorrect: 'Incorrect',
void: 'Void',
match: 'Match',
outcome: 'Outcome',
settledAt: 'Settled at',
resettledAt: 'Resettled at',
dates: 'Dates',
prediction: 'Prediction',
type: 'Type',
entity: 'Entity',
relationship: 'Relationship',
dynamicFieldsKeysValidationMessage: 'Only lowercase letters, numbers and underscore are accepted as keys!',
scheduledTaskInOpenGameNotAvailable: `Scheduling is only available for games that need to be opened at a future time.`,
noDataAvailable: 'No data available to display',
add: 'Add',
authRequirement: 'Auth Requirement',
authRequirementDescription: 'Choose the type of authentication to be used.',
free: 'Free',
lead: 'Lead',
registered: 'Registered',
paid: 'Paid',
widgetEmbedCodeTitle: 'Widget embed code',
copyToClipboard: 'Copy to clipboard',
divElementTextInfo: "The generated embed code can be copied directly into your website's HTML. For comprehensive implementation details, visit our documentation: ",
widgetEmbedCodeNotAvailable: 'To configure embed code you need to first create your match quiz.',
layoutTemplate: 'Layout template',
layoutTemplateDescription: 'Standard: image takes 30% width with configurable position. Split: image takes 50% width on the left. Overlay: image as background with content overlay.',
imagePosition: 'Image position',
imagePositionDescription: 'Position of the image relative to the main content (only available for Standard layout).',
showPredictionDetails: 'Show prediction details',
showPredictionDetailsTooltip: 'When enabled and the game predictions are resolved, the widget will show a tabular view where users can view their prediction outcomes.',
showCountdown: 'Show countdown',
showCountdownTooltip: 'When enabled, the widget will show a countdown to the game cutoff time.',
showPoints: 'Show points',
showPointsTooltip: 'When enabled, the widget will show the points for each fixture question.',
showTeamLabels: 'Show team labels',
showTeamLabelsTooltip: 'When enabled, the widget will the team names where applicable.',
configureAdditionalCta: 'Configure additional CTA',
configureAdditionalCtaTooltip: 'The additional CTA is shown after the user submits their answers.',
additionalCtaLabel: 'Label',
additionalCtaLabelInfoMessage: 'Custom text displayed on the additional CTA button.',
additionalCtaHandler: 'Handler',
additionalCtaHandlerInfoMessage: 'JavaScript function code that executes when users click the additional CTA button. To evaluate the function, provide only the function name. Example: redirectToHomePage().',
additionalCtaUrl: 'URL',
additionalCtaUrlInfoMessage: 'URL that users are redirected to when clicking the additional CTA button.',
additionalCtaTarget: 'Target',
copiedToClipboard: 'HTML div element copied to clipboard!',
configureLeads: 'Configure leads',
configureLeadsDisabledMessage: 'Configure leads is enabled only when the authentication requirement is set to "Lead".',
leadPosition: 'Lead position',
addCampaignInfo: 'Add campaign info',
campaignIdInfoMessage: 'Group multiple content items by a campaign ID. This field will be used for filtering later on, so make sure you have excatly the same ID across your multiple quizzes, polls and other games in general. We recommend using lowercase and -. Example: "adidas-december-2025"',
campaignNameInfoMessage: 'A label for your campaign that will appear in the reports. You can use anything here. Example: "Adidas (December 2025)"',
signInLabel: 'Label',
signInLabelInfoMessage: 'Custom text displayed on the sign-in button. If empty, defaults to "Sign in to vote".',
authenticationHandler: 'Authentication handler',
authenticationHandlerInfoMessage: 'JavaScript function code that executes when users click the sign-in button. To evaluate the function, provide only the function name. Example: showLoginModal() or window.openAuth(). The function is required otherwise the sign-in button will just log dummy message in the console.',
configureSignIn: 'Configure sign-in options',
configureSignInDisabledMessage: 'Configure sign-in options is enabled only when the authentication requirement is set to "Registered".',
signInUrl: 'URL',
signInUrlInfoMessage: 'URL that users are redirected to when clicking the sign-in button.',
signInTarget: 'Target',
syncWithProfile: 'Sync with profile',
syncWithProfileDescription: 'When enabled, the lead form data is synced with the user's profile data.',
configureRulesDisplayOptions: 'Configure rules display options',
configureRulesDisplayOptionsDisabledMessage: 'Rules display options are only available when match quiz has rules configured',
rulesDisplayType: 'Display type',
rulesDisplayUrl: 'URL',
rulesDisplayUrlInfoMessage: 'URL to open when the rules UI element is clicked',
rulesDisplayTarget: 'Target'
};
const App = () => {
return (
<MatchQuizManager fansUnitedApiKey={'your-api-key'} fansUnitedClientId={'your-client-id'} labels={labels}
/>
);
}Here is all information about LabelsModel:
| Key | Description | Default Value |
|---|---|---|
userNotFound | On login screen when client gives invalid information about email or password | User not found. Please try again. |
clientConfigErrorMessage | react-toastify error message when client is providing invalid value to fansUnitedApiKey or fansUnitedClientId prop | There was a problem fetching client's configuration. Please check again your API key and client ID. For more information contact Fans United staff. |
featureDisabled | Title for NoPermissionModal. This Modal is displayed when client does NOT have permission to use Fans United Match Quiz Widget | Feature disabled! |
noPermissionMessage | Description for NoPermissionModal. This Modal is displayed when client does NOT have permission to use Fans United Match Quiz Widget | You have no permission for this feature! |
tryAgainButton | Button for NoPermissionModal. This Modal is displayed when client does NOT have permission to use Fans United Match Quiz Widget. When clicking the button, client will be redirected to Login screen | Try again |
noGamesFound | When there are no created games for specific client, this message will appear on screen. | No games were found. You can create a game by clicking the button 'Create game'. |
signOut | Used as label on sign out button. | Sign out |
name | Label for name of a game or participant | Name |
status | Displayed in header of list of games. Status of a game | Status |
participants | Displayed in header of list of games. How many users have made prediction for the game | Participants |
manageWinners | Used as label in Winners screen heading. | Manage winners |
acceptUntil | Displayed in header of list of games. Date of predictions cutoff in same format as given for timeFormat prop | Accept until |
actions | Displayed in header of list of games. Two icon buttons with different actions. | Actions |
pending | Status for specific game. | Pending |
settled | Status for specific game. | Settled |
live | Status for specific game. | Live |
open | Status for specific game. | Open |
canceled | Status for specific game. | Canceled |
closed | Status for specific game. | Closed |
edit | Used as label on edit button, as a title on screen when editing a game and as a tooltip for icon button edit. | Edit |
timeFormat | Timeformat for displaying dates. Widgets uses dayjs as a date dependency. | DD.MM.YYYY, HH:mm |
previous | Label for pagination button. | Previous |
next | Label for pagination button. | Next |
id | Label for ID read only input field. | ID |
title | Label in Winners screen heading | Title |
description | Title for desciption input field when creating/editing a game. | Description |
matchSelection | Title for match selection section | Match selection |
matchSelectionDescription | Description about match selection section | Search for a match by competitions or teams. When you choose a match the defaults market will be displayed. |
marketSelection | Title for market selection section. | Market Selection |
marketSelectionCreateGameDescription | Description about market selection when client creates a game. | Drag and drop what market users can predict for the specified match. The default markets are automatically dropped in chosen markets. |
chosenMarkets | Title for default (or chosen) markets column when creating (or editing) a game. | Chosen markets |
otherMarkets | Title for other (not chosen) markets column when creating (or editing) a game. | Other markets |
marketFt1x2 | Label for market full Time | Full time |
marketHt1x2 | Label for market half Time | Half time |
marketBothTeamsScore | Label for market both teams score | Both teams score |
marketDoubleChance | Label for market double chance | Double chance |
marketHtFt | Label for market half time/full time | Half time/Full time |
marketRedCardMatch | Label for market read card match | Red card in match |
marketPenaltyMatch | Label for market penalty match | Pentalty in match |
marketCornersMatch | Label for market corners match | Corners in match |
marketCorrectScore | Label for market correct score | Correct score |
marketCorrectScoreHalfTime | Label for market half timecorrect score | Half time correct score |
marketCorrectScoreAdvanced | Label for market advanced correct score | Advanced correct score |
marketPlayerScoreFirstGoal | Label for market player score first goal | Player to score first goal |
marketOverZeroGoals | Label for market over zero goals | Over zero and a half goals |
marketOverOneGoals | Label for market over one goals | Over one and a half goals |
marketOverTwoGoals | Label for market over two goals | Over two and a half goals |
marketOverThreeGoals | Label for market over three goals | Over three and a half goals |
marketOverFourGoals | Label for market over four goals | Over four and a half goals |
marketOverFiveGoals | Label for market over five goals | Over five and a half goals |
marketOverSixGoals | Label for market over six goals | Over six and a half goals |
marketOverSixCorners | Label for market over six corners | Over six and a half corners |
marketOverSevenCorners | Label for market over seven corners | Over seven and a half corners |
marketOverEightCorners | Label for market over eight corners | Over eight and a half corners |
marketOverNineCorners | Label for market over nine corners | Over nine and a half corners |
marketOverTenCorners | Label for market over ten corners | Over ten and a half corners |
marketOverElevenCorners | Label for market over eleven corners | Over eleven and a half corners |
marketOverTwelveCorners | Label for market over twelve corners | Over twelve and a half corners |
marketOverThirteenCorners | Label for market over thirteen corners | Over thirteen and a half corners |
gameStatus | Title for choosing a game status. | Game status |
timeTiebreaker | Title for choosing a time tiebreaker option. | Time tiebreaker |
timeTiebreakerDescription | Description for choosing a time tiebreaker option. | When enabled the game's leaderboard will have a classic user ranking (1,2,3). In case of same points, the user who placed their predictions eariler will be infront. When disabled the current game's leaderboard behavour is used - when 2 or more people have same points, the ranking will be 1,1,3,4,5,5,7,8. |
rules | Title for game rules. | Rules |
adContent | Title for game's ad content. | Ad content |
adContentDescription | Description for game's ad content. | Place your ad content in the game. |
flags | Title for choosing game flags. | Flags |
flagsPlaceholder | Placeholder on input field for game flags | Type your flag and hit enter |
repeatedValueMessage | react-toastify warning message when client submits same value. | You have entered a repeated value. Please enter a different one. |
images | Title for images container | Images |
mainImage | Title for main image. | Main |
coverImage | Title for cover image. | Cover |
mobileImage | Title for mobile image. | Mobile |
related | Title for related container. | Related |
labelsHeading | Title for labels container. | Labels |
customFields | Title for custom fields container. | Custom fields |
keyDynamicFields | Label for key input. | Key |
valueDynamicFields | Label for value input. | Value |
games | Title for games select. | Games |
templates | Title for templates select. | Templates |
cutoffTime | Title for choosing a cutoff time for game. | Cutoff time |
createCutoffTimeDescription | Description about choosing a cutoff time for creating a game. | Predictions will be accepted until this time. If not provided it will be automatically generated 15 minutes from the first match played. |
editCutoffTimeDescription | Description about choosing a cutoff time for editing a game. | Predictions will be accepted until this time. You need to provide a cutoff time to be able to edit the game. Keep in mind that cutoff time should be ATLEAST 15 minutes before match`s kickoff time. |
back | Tooltip content for back button (left arrow positioned on top-right corner). You can go back when you create/edit a game or when you visit report screen. | Back |
loadMore | Label for Load More button. It is displayed when you choose the team for who you will be displayed next matches. | Load More |
position | Label in header's report table | Position |
points | Label in header's report table | Points |
winnersDescription | Description for winners description | Describe the winners... |
note | Label for note input | Note |
tags | Label for tags input | Tags |
tagsPlaceholder | Placeholder for tags input | Provide tags for the winner... |
save | Label for save button | Save |
preview | Heading for preview container | Preview |
exportButton | Label for button to open export modal screen on Report screen. | Export |
csvModalTitle | Title of the export modal. | Enter how many users should be exported |
csvModalDescription | Description of the export modal. | Download a .csv file with the first 100 number of users. |
csvModalPlaceholder | Placeholder for input on export modal. | Export the first X users... |
csvModalDownloadButton | Label for button to download report as CSV file. Keep in mind that this label is uppercase. | Download as CSV file |
csvModalValidationMessage | Error message when invalid value is provided in input. | Input value has to be an integer number between 1 and 100 |
csvModalErrorMessage | Error message when exporting leaderboard as CSV file. | There was a problem with fetching game's report data |
searchImage | Label for search image input | Search image |
hideFilters | Label for hyperlink to hide filters for image search | Hide filters |
showFilters | Label for hyperlink to show filters for image search | Show filters |
exportAllUsers | Label for export all users button | Export all users |
usersExportMessage | A react-toastify successful message for exported users | All users have been exported successfully |
usersExportErrorMessage | A react-toastify error message for exported users | There was a problem with exporting users. Please try again |
createGameMessage | When creating a game displaying a react-toastify successful message for created game. | You have successfully created a game. |
editGameMessage | When editing a game displaying a react-toastify successful message for edited game. | You have successfully edited a game. |
createGameErrorMessage | When creating a game displaying a react-toastify error message. | There was a problem with creating the game. Please try again. |
editGameErrorMessage | When editing a game displaying a react-toastify error message. | There was a problem with editing the game. Please try again. |
leaderboardErrorMessage | react-toastify error message when client goes to report screen and widget fails to load the leaderboard. | There was a problem with displaying leaderboard. Please try again. |
positionAndWinnerRequiredMessage | When managing winners for a game displaying a react-toastify validation error message. | Position and winner are required! |
sameChosenWinnerMessage | When managing winners for a game displaying a react-toastify validation error message. | You have selected same winners. Each winner has to be unique! |
relatedEntitiesErrorMessage | When creating or editing a game displaying a react-toastify error message when the request fails for fetching related entities. | There was a problem with fetching entities. Please try again. |
dynamicFieldsKeysValidationMessage | Warning react-toastify message when provided keys are invalid. | Only lowercase letters, numbers and underscore are accepted as keys! |
gameByIdErrorMessage | When editing a game displaying a react-toastify error message when request fails for retrieving full information about the game. | There was a problem retrieving full information about the game. |
uploadingImageMessage | react-toastify success message when uploading image to bucket | You have successfully uploaded image |
generateSignedInUrlErrorMessage | react-toastify error message when trying to receive a signed in URL. | There was a problem generating signed in URL to store the image in bucket. Please try again |
uploadingImageErrorMessage | react-toastify error message when uploading image to bucket | There was a problem with uploading image to bucket. Please try again |
encryptingImageErrorMessage | react-toastify error message when encrypting image before uploading it to bucket | There was a problem with encrypting image before uploading it to bucket. Please try again |
searchSportal365ImagesErrorMessage | react-toastify error message when searching images from Sportal 365 API | There was a problem with searching images from Sportal 365 API. Please try again |
schedule | Label for schedule accordion | Schedule |
createScheduledTaskMessage | Toast successful message when a new scheduled task is created | You have successfully created scheduled task |
createScheduledTaskErrorMessage | Toast error message when a new scheduled task is created | An error occurred while creating scheduled task. Please try again later |
updateScheduledTaskMessage | Toast successful message when a scheduled task is updated | You have successfully updated scheduled task |
updateScheduledTaskErrorMessage | Toast error message when a scheduled task is updated | An error occurred while updating scheduled task. Please try again later |
deleteScheduledTaskMessage | Toast successful message when a scheduled task is deleted | You have successfully deleted scheduled task |
deleteScheduledTaskErrorMessage | Toast error message when a scheduled task is deleted | An error occurred while deleting scheduled task. Please try again later |
changeStatusTo | Label for select input in schedule accordion | Change status to: |
at | Label for calendar input in schedule accordion | At: |
deleteScheduledTaskModalTitle | Title for delete scheduled task modal | Delete scheduled task |
deleteScheduledTaskModalParagraph | Paragraph for delete scheduled task modal | Are you sure you want to delete the following scheduled task: |
scheduledTaskNotAvailable | Paragraph when trying to configure scheduled task for a specific game | To configure scheduled tasks you need to edit your game |
competitionsSelectionPlaceholder | Placeholder for competitions search select in fixtures | Search for competitions by their name |
teamsSelectionPlaceholder | Placeholder for teams search select in fixtures | Search for teams by their name |
colors | Label for colors tab in branding accordion | Colors |
primaryColor | Label for primary color input in branding accordion | Primary color |
secondaryColor | Label for secondary color input in branding accordion | Secondary color |
contentColor | Label for content color input in branding accordion | Content color |
backgroundColor | Label for background color input in branding accordion | Background color |
borderColor | Label for border color input in branding accordion | Border color |
additionalColor | Label for additional color input in branding accordion | Additional color |
branding | Label for branding accordion | Branding |
configuration | Label for configuration accordion | Configuration |
urls | Label for urls tab in branding accordion | URLs |
primaryUrl | Label for primary url input in branding accordion | Primary URL |
secondaryUrl | Label for secondary url input in branding accordion | Secondary URL |
privacyPolicyUrl | Label for privacy policy url input in branding accordion | Privacy policy URL |
termsAndConditionsUrl | Label for terms and conditions url input in branding accordion | Terms and conditions URL |
additionalUrl | Label for additional url input in branding accordion | Additional URL |
mainLogo | Label for main logo input in branding accordion | Main Logo |
mobileLogo | Label for mobile logo input in branding accordion | Mobile logo |
backgroundImage | Label for background image input in branding accordion | Background image |
mobileBackgroundImage | Label for mobile background image input in branding accordion | Mobile background image |
additionalImage | Label for additional image input in branding accordion | Additional image |
hideMoreImages | Label for hide more images hyperlink | Hide more images |
showMoreImages | Label for show more images hyperlink | Show more images |
uploadImage | Label for upload button in images accordion | Upload Image |
sportal365Images | Label for sportal365 images button | Sportal365 Images |
manageGameTitle | Title on managing screen | Manage Match Quiz Game |
manageGameDescription | Description on managing screen | Using this form, you can manage Match Quiz games. |
cloneGameTitle | Title on cloning modal | Clone Match Quiz Game |
delete | Label for delete button | Delete |
close | Label for close button | Close |
create | Used as label on create button. | Create |
createdAt | Label for prediction created at paragraph | Created at |
additionalInformation | Label for tooltip button. | Additional information |
clearImage | Tooltip for clear image button | Clear image |
copyUrl | Tooltip for copy url image button | Copy URL |
viewImage | Tooltip for view image button | View image |
cropImage | Tooltip for crop image button | Crop image |
aspectRatio | Label for aspect ratio select | Aspect ratio |
crop | Label for crop button | Crop |
reset | Label for reset button | Reset |
notVerified | Label for prediction outcome. | Not verified |
correct | Label for prediction outcome. | Correct |
partiallyCorrect | Label for prediction outcome. | Partially correct |
incorrect | Label for prediction outcome. | Incorrect |
correctNumberOfFixtures | Successful alert message when the count of fixtures are is suitable per client's configuration. | You have set the correct number of fixtures |
sortOrder | Label for sort order select input | Sort order |
ascending | Label for ascending option | Ascending |
descending | Label for descending option | Descending |
itemsPerPage | Label for items per page select filter | Items per page |
clone | Used as label on clone button. | Clone |
pageNo | Label for pagination in report tab | Page No |
manageWinnersActionLabel | Label for manage winners button | Manage winners |
stats | Label for stats tab | Stats |
configureWinners | Title for configure winners screen. | Configure winners |
noDataAvailable | Paragraph on report 'Performance by day' when no data is available. | No data available to display |
scheduledTaskInOpenGameNotAvailable | Info alert message for schedule when the game is already set to open status. | Scheduling is only available for games that need to be opened at a future time. |
exportAllUsersLeads | Label for button export users leads | Export all users leads |
usersLeadsExportMessage | Success toast message when exporting users leads | All users leads have been exported successfully |
usersLeadsExportErrorMessage | Toast error message when exporting users leads operation fails | There was a problem with exporting all users leads. Please try again |
winnersErrorMessage | When fetching winners for a game displaying a toast error message when request fails. | There was a problem with fetching information about game winners. Please try again. |
createWinnersMessage | When creating winners for a game displaying a toast success message. | You have successfully created winners for the game. |
createWinnersErrorMessage | When creating winners for a game displaying a toast error message. | There was a problem with creating winners for the game. Please try again. |
editWinnersMessage | When editing winners for a game displaying a toast success message. | You have successfully edited winners for the game. |
editWinnersErrorMessage | When editing winners for a game displaying a toast error message. | There was a problem with editing winners for the game. Please try again. |
showDetails | Label for show details hyperlink | Show details |
noStandingsAvailable | Label for no leaderboard available for a game with status PENDING | No standings available |
noStandingsAvailableExportUsers | Label for no leaderboard available for a game with status different from PENDING | Standings are currently not available, as not all matches have been played yet. However, you can still export all the users who have participated so far. |
predictions | Label for predictions column | Predictions |
nicknameAndName | Label for nickname and name column | Nickname & Name |
clearWinner | Label for tooltip clearing winner button | Clear winner |
urlCopiedToClipboardMessage | Toast info message when image URL is copied | URL copied to clipboard |
imageDeletedMessage | Toast info message when image is deleted | Image deleted |
imageResetMessage | Toast info message when image size is restored | The initial size of the image has been restored |
fromDate | Label for from date date picker | From date |
toDate | Label for to date date picker | To date |
void | Status for fixture | Void |
match | Label for match column | Match |
outcome | Label for outcome column | Outcome |
settledAt | Label for tooltip | Settled at |
resettledAt | Label for tooltip | Resettled at |
filters | Label for filters | Filters |
searchProfilesErrorMessage | Toast error message when search for profiles fails | There was a problem searching for profiles |
searchTeamsErrorMessage | Toast error message when search for teams fails | There was a problem searching for teams |
searchCompetitionsErrorMessage | Toast error message when search for competitions fails | There was a problem searching for competitions |
gameParticipationsReportErrorMessage | Toast error message when fetching participations data fails. | There was a problem with fetching information about game participation. Please try again |
searchMatches | Label for search matches accordion | Search matches |
selectedMatch | Label for selected match column | Selected match |
getMatchesErrorMessage | Toast error message when fetching matches | An error occurred while fetching the matches. Please try again. |
standings | Label standings tab. | Standings |
reports | Label reports tab. | Reports |
performanceByDay | Label title performance by day chart. | Performance by day |
participations | Label in participations chart. | Participations |
provideTitleGameErrorMessage | Toast error validation message when managing a game with no title. | You need to provide a title to your game! |
noProfileInformationAvailableMessage | Label for disabled link on profile record in standings table view. | There is no profile information available |
updatedAt | Label for prediction updated at paragraph | Updated at |
userGamePredictionErrorMessage | Toast error message when fetching user's prediction for specific game | There was a problem with fetching user's game prediction. Please try again |
predictionBy | Label for title in prediction details modal | Prediction by |
noPredictionAvailable | Label for no prediction available paragraph | No prediction available |
market | Label for market paragraph | Market |
dates | Label for dates column | Dates |
prediction | Label for prediction column | Prediction |
type | Label for related entity type select. | Type |
relationship | Label for related relationship select. | Relationship |
entity | Label for related entity select. | Entity |
search | Title for search button. | Search |
noMatchesFound | Info message for search matches results | No matches are found for the provided filters |
sortingFilterTooltip | Tooltip text for games list sorting filter info | Sort by earliest match kickoff time. Descending order shows games with the latest kickoffs first (newest to oldest). Ascending order shows games with the earliest kickoffs first (oldest to newest). |
noSetWinnersMessage | Info message when no winners are not set | No winners are set for this game. |
getGamesErrorMessage | Toast error message when fetching games fails | There was a problem retrieving information about the games. |
titleRequiredFieldValidationMessage | Toast error validation message when no title is provided on game edit | Title field is required! |
fixturesRequiredValidationMessage | Toast error validation message when no fixtures are provided on game edit | You need to provide at least one fixture |
add | Label for add button | Add |
authRequirement | Title for configuration's auth requirement feature | Auth Requirement |
authRequirementDescription | Description for configuration's auth requirement feature | Choose the type of authentication to be used. |
free | Auth requirement type free | Free |
lead | Auth requirement type lead | Lead |
registered | Auth requirement type registered | Registered |
paid | Auth requirement type paid | Paid |
widgetEmbedCodeTitle | Title for widget embed code section | Widget embed code |
copyToClipboard | Label for copy to clipboard button | Copy to clipboard |
divElementTextInfo | Information text about the div element embed code | The generated embed code can be copied directly into your website's HTML. For comprehensive implementation details, visit our documentation: |
widgetEmbedCodeNotAvailable | Message when embed code is not available | To configure embed code you need to first create your match quiz. |
layoutTemplate | Label for layout template select | Layout template |
layoutTemplateDescription | Description for layout template options | Standard: image takes 30% width with configurable position. Split: image takes 50% width on the left. Overlay: image as background with content overlay. |
imagePosition | Label for image position select | Image position |
imagePositionDescription | Description for image position option | Position of the image relative to the main content (only available for Standard layout). |
showPredictionDetails | Label for show prediction details toggle | Show prediction details |
showPredictionDetailsTooltip | Tooltip for show prediction details toggle | When enabled and the game predictions are resolved, the widget will show a tabular view where users can view their prediction outcomes. |
showCountdown | Label for show countdown toggle | Show countdown |
showCountdownTooltip | Tooltip for show countdown toggle | When enabled, the widget will show a countdown to the game cutoff time. |
showPoints | Label for show points toggle | Show points |
showPointsTooltip | Tooltip for show points toggle | When enabled, the widget will show the points for each fixture question. |
showTeamLabels | Label for show team labels toggle | Show team labels |
showTeamLabelsTooltip | Tooltip for show team labels toggle | When enabled, the widget will the team names where applicable. |
configureAdditionalCta | Label for configure additional CTA section | Configure additional CTA |
configureAdditionalCtaTooltip | Tooltip for configure additional CTA section | The additional CTA is shown after the user submits their answers. |
additionalCtaLabel | Label for additional CTA label input | Label |
additionalCtaLabelInfoMessage | Info message for additional CTA label | Custom text displayed on the additional CTA button. |
additionalCtaHandler | Label for additional CTA handler input | Handler |
additionalCtaHandlerInfoMessage | Info message for additional CTA handler | JavaScript function code that executes when users click the additional CTA button. To evaluate the function, provide only the function name. Example: redirectToHomePage(). |
additionalCtaUrl | Label for additional CTA URL input | URL |
additionalCtaUrlInfoMessage | Info message for additional CTA URL | URL that users are redirected to when clicking the additional CTA button. |
additionalCtaTarget | Label for additional CTA target select | Target |
copiedToClipboard | Toast message when HTML div element is copied | HTML div element copied to clipboard! |
configureLeads | Label for configure leads section | Configure leads |
configureLeadsDisabledMessage | Message when configure leads is disabled | Configure leads is enabled only when the authentication requirement is set to "Lead". |
leadPosition | Label for lead position select | Lead position |
addCampaignInfo | Label for add campaign info section | Add campaign info |
campaignIdInfoMessage | Info message for campaign ID input | Group multiple content items by a campaign ID. This field will be used for filtering later on, so make sure you have excatly the same ID across your multiple quizzes, polls and other games in general. We recommend using lowercase and -. Example: "adidas-december-2025" |
campaignNameInfoMessage | Info message for campaign name input | A label for your campaign that will appear in the reports. You can use anything here. Example: "Adidas (December 2025)" |
signInLabel | Label for sign-in label input | Label |
signInLabelInfoMessage | Info message for sign-in label | Custom text displayed on the sign-in button. If empty, defaults to "Sign in to vote". |
authenticationHandler | Label for authentication handler input | Authentication handler |
authenticationHandlerInfoMessage | Info message for authentication handler | JavaScript function code that executes when users click the sign-in button. To evaluate the function, provide only the function name. Example: showLoginModal() or window.openAuth(). The function is required otherwise the sign-in button will just log dummy message in the console. |
configureSignIn | Label for configure sign-in section | Configure sign-in options |
configureSignInDisabledMessage | Message when configure sign-in is disabled | Configure sign-in options is enabled only when the authentication requirement is set to "Registered". |
signInUrl | Label for sign-in URL input | URL |
signInUrlInfoMessage | Info message for sign-in URL | URL that users are redirected to when clicking the sign-in button. |
signInTarget | Label for sign-in target select | Target |
syncWithProfile | Label for sync with profile toggle | Sync with profile |
syncWithProfileDescription | Description for sync with profile toggle | When enabled, the lead form data is synced with the user's profile data. |
configureRulesDisplayOptions | Label for configure rules display options switch | Configure rules display options |
configureRulesDisplayOptionsDisabledMessage | Info tooltip message when configure rules display options is disabled | Rules display options are only available when match quiz has rules configured |
rulesDisplayType | Label for rules display type select | Display type |
rulesDisplayUrl | Label for rules display URL input | URL |
rulesDisplayUrlInfoMessage | Info tooltip message for rules display URL input | URL to open when the rules UI element is clicked |
rulesDisplayTarget | Label for rules display target select | Target |
Updated 9 days ago
