{# GLOBAL TRANSLATIONS #}
<script type="text/javascript" nonce="{{ cspNonce }}">
    var translations = {{ translations|raw }};
    {% autoescape "js" %}
    translations.withselected = "{{ "With Selected"|trans }}";
    translations.selectAll = "{{ "Select All"|trans }}";
    translations.multiselect = "{{ "Multiple Items Selected"|trans }}";
    translations.indeterminate = "{{ "Indeterminate State"|trans }}";
    translations.multiselectNoItemsMessage = "{{ "Sorry, no items have been selected."|trans }}";
    translations.multiselectMessage = "{{ "Caution, you have selected %1 items. Clicking save will run the %2 transaction on all these items."|trans }}";
    translations.validExtensions = "{{ "Valid extensions are %s"|trans }}";
    translations.save = "{{ "Save"|trans }}";
    translations.cancel = "{{ "Cancel"|trans }}";
    translations.close = "{{ "Close"|trans }}";
    translations.success = "{{ "Success"|trans }}";
    translations.failure = "{{ "Failure"|trans }}";
    translations.enterText = "{{ "Enter text..."|trans }}";
    translations.rowMenu = "{{ "Row Menu"|trans }}";
    translations.noDataMessage = "{{ "No Data returned from the source"|trans }}";
    translations.statusPending = "{{ "Status Pending"|trans }}";
    translations.duplicate = "{{ "Duplicate"|trans }}";
    translations.deleteRecurring = "{{ "Delete from Schedule"|trans }}";
    translations.spacesWarning = "{{ "Warning - starts with or ends with a space, or contains double spaces"|trans }}";
    translations.done = "{{ "Done"|trans }}";
    translations.freeTextCommand = "{{ "Free Text"|trans }}";
    translations.editTags = "{{ "Edit Tags"|trans }}";
    translations.tagInputValueHelpText = "{{ "Provide an optional Value for this Tag. If no Value is required, this field can be left blank"|trans }}";
    translations.tagInputValueRequiredHelpText = "{{ "Please provide the value for this Tag and confirm by pressing enter on your keyboard."|trans }}";
    translations.videoImageCoverHelpText = "{{ "Before Uploading, scroll through the progress bar or play and pause to select a still to be used as the video file thumbnail."|trans }}";
    translations.canOnlyUploadMax = "{{ "You can only upload a maximum of %s files."|trans }}";
    translations.folderTreeCreate = "{{ "Create"|trans }}";
    translations.folderTreeEdit = "{{ "Rename"|trans }}";
    translations.folderTreeDelete = "{{ "Remove"|trans }}";
    translations.folderTreeShare = "{{ "Share"|trans }}";
    translations.folderTreeSetAsHome = "{{ "Set as Home"|trans }}";
    translations.folderTreeError = "{{ "Cannot modify root folder."|trans }}";
    translations.folderWithContent = "{{ "Cannot remove Folder with content"|trans }}";
    translations.folderNew = "{{ "New Folder"|trans }}";
    translations.folderTreeMove = "{{ "Move Folder"|trans }}";
    translations.folderRootTitle = "{{ "Right click a Folder for further Options"|trans }}";
    translations.dayPartExceptionErrorMessage = "{{ "You already set an exception for this day."|trans }}";
    translations.online = "{{ "Online"|trans }}";
    translations.offline = "{{ "Offline"|trans }}";
    translations.upToDate = "{{ "Up to date"|trans }}";
    translations.notUpToDate = "{{ "Not up to date"|trans }}";
    translations.publishedStatusFuture = "{{ "Publishing"|trans }}";
    translations.publishedStatusFailed = "{{ "Publish failed."|trans }}";
    translations.defaultSorting = "{{ "Default Sorting"|trans }}";
    translations.unlimited = "{{ "Unlimited"|trans }}";
    translations.imagePixelSizeTooLarge = "{{ "Warning : Image is too large and will not be displayed on the Players. Please check the allowed Resize Limit in Administration -> Settings"|trans }}";
    translations.triggerCodeLabel = "{{ "Trigger Code"|trans }}"
    translations.triggerCodeHelpText = "{{ "Enter the code associated with the web hook you wish to trigger. Please note that for this action to work, the webhook trigger code has to be added to Interactive Actions in scheduled content for this Player."|trans }}";
    translations.sendCommandLabel = "{{ "Command"|trans }}"
    translations.sendCommandHelpText = "{{ "Pick a command to send to the Player. If the CMS has XMR enabled this will be sent immediately, otherwise it will show an error."|trans }}";
    translations.schedule = {
        criteriaFields: {
            custom: "{{ "Custom"|trans }}",
            isSet: "{{ "Is set"|trans }}",
            lessThan: "{{ "Less than"|trans }}",
            lessThanOrEqualTo: "{{ "Less than or equal to"|trans }}",
            equalTo: "{{ "Equal to"|trans }}",
            notEqualTo: "{{ "Not equal to"|trans }}",
            greaterThanOrEqualTo: "{{ "Greater than or equal to"|trans }}",
            greaterThan: "{{ "Greater than"|trans }}",
            contains: "{{ "Contains"|trans }}",
            notContains: "{{ "Not contains"|trans }}",
        },
        fullscreen: {
            header: {
                media: "{{ "Select Media"|trans }}",
                playlist: "{{ "Select Playlist"|trans }}",
            },
            mediaInput: {
                title: "{{ "Media"|trans }}",
                helpText: "{{ "Select a Media file from the Library to use. The selected file will be shown full screen for this event."|trans }}",
            },
            playlistInput: {
                title: "{{ "Playlist"|trans }}",
                helpText: "{{ "Select a Playlist to use. The selected playlist will be shown full screen for this event."|trans }}",
            },
            resolutionInput: {
                title: "{{ "Resolution"|trans }}",
                helpText: "{{ "Optionally select a Resolution to use for the selected Media. Leave blank to match with an existing Resolution closest in size to the selected media."|trans }}",
                mediaHelp: "{{ "Optionally select a Resolution to use for the selected Media. Leave blank to match with an existing Resolution closest in size to the selected media."|trans }}",
                playlistHelp: "{{ "Optionally select a Resolution to use for the selected Playlist. Leave blank to default to a 1080p Resolution."|trans }}",
            },
            layoutDuration: {
                title: "{{ "Duration in loop"|trans }}",
                helpText: "{{ "Set how long this item should be shown each time it appears in the schedule. Leave blank to use the Media Duration set in the Library."|trans }}",
            },
            backgroundColor: {
                title: "{{ "Background Colour"|trans }}",
                helpText: "{{ "Optionally set a colour to use as a background for if the item selected does not fill the entire screen."|trans }}",
            },
            saveForm: "{{ "Save"|trans }}",
        },
        reminder: {
            type: {
                minute: "{{ "Minute"|trans }}",
                hour: "{{ "Hour"|trans }}",
                day: "{{ "Day"|trans }}",
                week: "{{ "Week"|trans }}",
                month: "{{ "Month"|trans }}",
            },
            option: {
                beforeScheduleStarts: "{{ "Before schedule starts"|trans }}",
                afterScheduleStarts: "{{ "After schedule starts"|trans }}",
                beforeScheduleEnds: "{{ "Before schedule ends"|trans }}",
                afterScheduleEnds: "{{ "After schedule ends"|trans }}",
            },
            notifyByEmail: "{{ "Notify by email?"|trans }}",
        },
        syncEventSelector: {
            lead: "{{ "Lead"|trans }}",
            mirror: "{{ "Mirror"|trans }}",
            setOnAllDisplays: "{{ "Set The same Layout on all displays?"|trans }}",
        },
        calendar: {
            campaigns: "{{ "Campaigns"|trans }}",
            id: "{{ "ID"|trans }}",
            name: "{{ "Name"|trans }}",
            cyclePlayback: "{{ "Cycle Playback?"|trans }}",
            displayGroups: "{{ "Display Groups"|trans }}",
            layoutName: "{{ "Layout Name"|trans }}",
            status: "{{ "Status"|trans }}",
            fromDate: "{{ "From Date"|trans }}",
            toDate: "{{ "To Date"|trans }}",
            layoutDuration: "{{ "Layout Duration"|trans }}",
            shareOfVoice: "{{ "Share of Voice"|trans }}",
            displayOrder: "{{ "Display Order"|trans }}",
            priority: "{{ "Priority"|trans }}",
            visible: "{{ "Visible"|trans }}",
            layouts: "{{ "Layouts"|trans }}",
            overlayLayouts: "{{ "Overlay Layouts"|trans }}",
            interruptLayouts: "{{ "Interrupt Layouts"|trans }}",
            campaignLayouts: "{{ "Campaign Layouts"|trans }}",
            fullscreenVideoImage: "{{ "Full Screen Video/Image"|trans }}",
            fullscreenPlaylist: "{{ "Full Screen Playlist"|trans }}",
            synchronised: "{{ "Synchronised"|trans }}",
            numberLayouts: "{{ "Number of Layouts"|trans }}",
            layoutWontBeShown: "{{ "This layout will not be shown as there are higher priority layouts scheduled at this time"|trans }}",
            always: "{{ "Always"|trans }}",
            displayNotSelected: "{{ "Display not selected!"|trans }}",
            showAllOptionsDNW: "{{ "Show All option does not work for this filter, one or more specific Display/Display Group need to be selected!"|trans }}",
            noEventsForTheChosen: "{{ "No events for the chosen Display/Display Group on the selected date!"|trans }}",
            dataRequestFailed: "{{ "Data request failed!"|trans }}",
            schedule: "{{ "Schedule"|trans }}",
            numberOfEvents: "{{ "Number of events"|trans }}",
        },
    };
    translations.commandInput = {
        showCommandPreview: "{{ "Show command preview!"|trans }}",
        invalidCommand: "{{ "Invalid command!"|trans }}",
        off: "{{ "Off"|trans }}",
        red: "{{ "Red"|trans }}",
        green: "{{ "Green"|trans }}",
        blue: "{{ "Blue"|trans }}",
        white: "{{ "White"|trans }}",
        name: "{{ "Name"|trans }}",
        key: "{{ "Key"|trans }}",
        value: "{{ "Value"|trans }}",
        type: "{{ "Type"|trans }}",
        intent: "{{ "Intent"|trans }}",
        extra: "{{ "Extra"|trans }}",
        deviceNameCOM: "{{ "Device Name/COM"|trans }}",
        baudRate: "{{ "Baud Rate"|trans }}",
        dateBits: "{{ "Data Bits"|trans }}",
        parity: "{{ "Parity"|trans }}",
        stopBits: "{{ "Stop Bits"|trans }}",
        handshake: "{{ "Handshake"|trans }}",
        hexSupport: "{{ "HexSupport"|trans }}",
        command: "{{ "Command"|trans }}",
        url: "{{ "URL"|trans }}",
        queryParamBuilder: "{{ "Query params builder"|trans }}",
        queryBuilder: "{{ "Query builder"|trans }}",
        queryParams: "{{ "Query params"|trans }}",
        requestMethod: "{{ "Request method"|trans }}",
        showRawHeaders: "{{ "Show raw headers"|trans }}",
        headers: "{{ "Headers"|trans }}",
        contentType: "{{ "Content Type"|trans }}",
        showRawBodyData: "{{ "Show raw body data"|trans }}",
        showRawData: "{{ "Show raw data"|trans }}",
        bodyData: "{{ "Body data"|trans }}",
    };
    translations.multiSelectTagEditForm = {
        newTags: "{{ "New tags"|trans }}",
        newTagsHelp: "{{ "A comma separated list of tags to add to the selected elements."|trans }}",
        tagValue: "{{ "Tag value"|trans }}",
        tagValueHelp: "{{ "Provide an optional Value for this Tag. If no Value is required, this field can be left blank."|trans }}",
        tagValueRequired: "{{ "This tag requires a set value, please select one from the Tag value dropdown or provide Tag value in the dedicated field."|trans }}",
        existingTags: "{{ "Existing tags"|trans }}",
        existingTagsHelp: "{{ "Remove tags from the list to remove them from elements that contain them."|trans }}",
    };
    translations.clearFilters = "{{ "Clear Filters"|trans }}";
    translations.folderTree = {
        selectFolder: "{{ "Select Folder"|trans }}",
        search: "{{ "Search"|trans }}",
        noFolderMatch: "{{ "No Folders matching the search term"|trans }}",
        done: "{{ "Done"|trans }}",
    };
    translations.autoSubmitField = {
        label: "{{ "Automatically submit this form?"|trans }}",
        helpText: "{{ "When enabled, this form will automatically submit in future. Reset this in your User Profile."|trans }}",
    };
    translations.miniPlayer = {
        play: "{{ "Play Preview"|trans }}",
        close: "{{ "Close Preview"|trans }}",
        changeSize: "{{ "Change window size"|trans }}",
        newWindow: "{{ "Preview in new window"|trans }}",
    };
    translations.helpPane = {
        helpCentre: "{{ "Help Centre"|trans }}",
        guides: "{{ "Guides"|trans }}",
        resources: "{{ "Resources"|trans }}",
        visitManual: "{{ "Visit the user manual"|trans }}",
        welcomeCardTitle: "{{ "Introduction to "|trans }}",
        welcomeCardDesc: "{{ "Get to know your CMS"|trans }}",
        feedbackCardTitle: "{{ "Feedback"|trans }}",
        feedbackCardDesc: "{{ "Help us improve"|trans }}",
        communityCardTitle: "{{ "Community"|trans }}",
        communityCardDesc: "{{ "Connect and Grow"|trans }}",
        trainingCardTitle: "{{ "Training"|trans }}",
        trainingCardDesc: "{{ "Access guides and tutorials"|trans }}",
        feedbackHeader: "{{ "Feedback"|trans }}",
        endPanelMessage: "{{ "Thank you for leaving your feedback!"|trans }}",
        form: {
            privacyNotice: "{{ "The feedback you provide, along with your name and email address are used by Xibo to improve our products and services."|trans }}",
            title: "{{ "We’d love to hear your thoughts"|trans }}",
            name: "{{ "Name"|trans }}",
            email: "{{ "Email"|trans }}",
            comments: "{{ "Comments and recommendations"|trans }}",
            attachments: "{{ "Attachments (optional)"|trans }}",
            uploadPlaceholder1: "{{ "Drag and drop files or"|trans }}",
            uploadPlaceholder2: "{{ "Browse files"|trans }}",
            fileTypes: "{{ "File types: .jpg, .png, .mov and .pdf"|trans }}",
            maxSize: "{{ "Max size: 15MB"|trans }}",
            sendFeedback: "{{ "Send feedback"|trans }}",
            maxUploadsMessage1: "{{ "Maximum file upload of 3 files."|trans }}",
            maxUploadsMessage2: "{{ "Remove one to add more."|trans }}",
            video: "{{ "Video"|trans }}",
            pdf: "{{ "PDF"|trans }}",
            image: "{{ "Image"|trans }}",
            reportingAnIssue: "{{ "Reporting an issue?"|trans }}",
            errors: {
                name: "{{ "Please provide a valid name"|trans }}",
                email: "{{ "Please provide a valid email"|trans }}",
                comments: "{{ "Please provide any comment or recommendation"|trans }}",
                form: "{{ "Please fill all required fields"|trans }}",
                request: "{{ "Something went wrong. Please try again"|trans }}",
                maxFiles: "{{ "Maximum file number exceeded"|trans }}",
                invalidFileType: "{{ "Invalid file type"|trans }}",
                fileTooLarge: "{{ "File too large"|trans }}",
            },
        },
    };

    var dataTablesLanguage = {
        "decimal":        "",
        "emptyTable":     "{{ "No data available in table"|trans }}",
        "info":           "{{ "Showing _START_ to _END_ of _TOTAL_ entries"|trans }}",
        "infoEmpty":      "{{ "Showing 0 to 0 of 0 entries"|trans }}",
        "infoFiltered":   "{{ "(filtered from _MAX_ total entries)"|trans }}",
        "infoPostFix":    "",
        "thousands":      ",",
        "lengthMenu":     "{{ "Show _MENU_ entries"|trans }}",
        "loadingRecords": "{{ "Loading..."|trans }}",
        "processing":     "{{ "Processing..."|trans }}",
        "search":         "{{ "Search:"|trans }}",
        "zeroRecords":    "{{ "No matching records found"|trans }}",
        "paginate": {
            "first":      "{{ "First"|trans }}",
            "last":       "{{ "Last"|trans }}",
            "next":       "{{ "Next"|trans }}",
            "previous":   "{{ "Previous"|trans }}"
        },
        "aria": {
            "sortAscending":  "{{ ": activate to sort column ascending"|trans }}",
            "sortDescending": "{{ ": activate to sort column descending"|trans }}"
        },
        "buttons": {
            "colvis":  "{{ "Column visibility"|trans }}",
            "print": "{{ "Print"|trans }}"
        }
    };
    {% endautoescape %}
</script>
