Skip to content
Snippets Groups Projects
en.js 15.7 KiB
Newer Older
  • Learn to ignore specific revisions
  • export default {
    
      helloWorld: 'Hello, World',
    
      // Pages
      home: {
        welcome: 'Welcome',
        introduction:
          'AURA is radio automation software for the special needs of community radios. AURA has been developed in several Austrian community radios and it is open source.',
        notLoggedIn: 'You are not logged in yet.',
      },
    
      showManager: {
        title: 'Radio shows',
        generalSettings: 'General settings for show',
      },
    
      filePlaylistManager: {
    
        title: 'Media',
    
        files: 'Files',
        playlists: 'Playlists',
      },
    
      credits: {
        title: 'Credits',
        intro:
          'AURA is developed under the GNU Affero General Public License v3. Current and former developers are',
    
        graphicsIcons: 'Graphics & Icons',
    
        loadingIcon: 'Animated loading icon',
        otherIcons: 'All other icons',
    
        moreInfo:
          'For more infos visit the <a href="https://gitlab.servus.at/aura/dashboard">Dashboard repository</a>.<br>To get started with AURA, visit <a href="https://aura.radio">aura.radio</a>.<br>All AURA repositories can be found at <a href="https://code.aura.radio">https://code.aura.radio</a>.',
      },
    
      help: {
        title: 'Help',
        generalDocumentation: 'You can find the general AURA documentation here: ',
      },
    
      // Layout
      loading: 'Loading..',
      cancel: 'Cancel',
      delete: 'Delete',
      new: 'New',
      add: 'Add',
      save: 'Save',
      browse: 'Browse',
      drop: 'Drop file here',
      edit: 'Edit',
      slug: 'Slug',
      unimplemented:
        'By the mighty witchcraftry of the mother of time!\n\nThis feature is not implemented yet.',
      noneSetMasculine: '(none set)',
      noneSetFeminine: '(none set)',
      noneSetNeuter: '(none set)',
      noAssignedShows:
        'You have not been assigned any shows yet.<br>They can be assigned in the <a href="%{adminUrl}">administration interface</a>.',
    
      auth: {
        signOut: 'Sign out',
        signIn: 'Sign in',
        permissionError: 'You are not permitted to view this page',
      },
    
      navigation: {
        home: 'Home',
        shows: 'Shows',
    
        filesPlaylists: 'Media',
    
        calendar: 'Calendar',
        settings: 'Settings',
        profile: 'Profile',
        help: 'Help',
      },
    
      footer: {
        tagline: 'All the UI you need to run a community radio',
      },
    
      // Specific components
      header: {
        showMoreDesktop: 'Hit menu button for more',
        showMoreMobile: 'For more options tap the menu button on the right',
      },
    
      emissionTable: {
        title: 'Title of emission',
        start: 'Emission start',
        duration: 'Duration',
        playlist: 'Playlist',
        actions: 'Actions',
    
        missingPlaylistData:
          'Information for this playlist is currently not available. Switch to the show of this emission.',
    
      },
    
      fileManager: {
        noFilesAvailable: 'There are no files for this show yet',
        upload: 'Add or upload file',
        error: 'Error',
    
        importAborted: 'The import was aborted',
        importLogTooltip: 'Show import log',
      },
    
      fileAdder: {
        title: 'Add or upload file',
    
        link: 'Link',
        linkPlaceholder: 'Enter a HTTP(S) URL',
        download: 'Download from remote source instead of uploading file',
    
        editMeta: 'Edit metadata',
      },
    
      importLog: {
        title: 'File import log',
        availableLogs: 'Available logs',
    
    
    Konrad Mohrfeldt's avatar
    Konrad Mohrfeldt committed
        fetchError: 'Error: Could not fetch import log from Tank. Check browser console for more info',
    
        fetchLog: 'Fetch log',
        normalizeLog: 'Normalization Log',
      },
    
      playlistSelector: {
        title: 'Assign playlist',
    
    
    Konrad Mohrfeldt's avatar
    Konrad Mohrfeldt committed
        noPlaylistsAvailable: 'No playlists available. Use the buttons below to create some!',
    
        currentPlaylistLabel: 'Currently selected playlist ID',
    
        upload: 'Upload',
        uploadAudio: 'Upload audio file',
        goToFiles: "Switch to 'Files & Playlists'",
    
        mismatchedLength: 'The playlist and the timeslot have different durations',
        mismatchedLengthConfirmation:
          'You are about to assign a playlist with a mismatched duration. Are you sure?',
      },
    
      playlistManager: {
        noPlaylistsAvailable: 'There are no playlists for this show yet',
        create: 'Create playlist',
      },
    
      playlistEditor: {
        titleExisting: 'Editing playlist %{id} for show "%{show}"',
        titleNew: 'Add new playlist for show "%{show}"',
    
        noEntriesAvailable: 'There are no entries yet. Go ahead and add some!',
        saved: 'The playlist has been saved',
    
        unknownDuration: '(Unkown)',
        tooManyUnknowns:
          'There are two or more entries that have an unknown duration. Please fix this by clicking on the duration field in the table and entering one manually. A playlist may only contains one entry with an unknown duration.',
    
        types: {
          file: 'File',
          lineIn: 'Line-in',
          stream: 'Stream',
          other: 'Other',
    
        lineIns: {
          studio1: 'Studio 1',
          preProd: 'Preprod',
          line2: 'Line 2',
    
        addStream: 'Add stream to playlist',
    
    Konrad Mohrfeldt's avatar
    Konrad Mohrfeldt committed
        invalidDurationFormat: 'Please enter a duration in format mm:ss or hh:mm:ss',
    
      },
    
      playlistTable: {
        // Our translation framework automatically picks singular/plural
        items: '%{smart_count} item |||| %{smart_count} items',
        assign: 'Assign',
        unset: 'Unset',
    
        index: 'Nr',
        description: 'Description',
        entries: 'Entries',
        duration: 'Duration',
        lastEdit: 'Last edited',
        type: 'Type',
        source: 'Source',
        actions: 'Actions',
      },
    
      showSelector: {
    
        selectShowMany: 'Select show:',
        selectShow: 'Select a radio show',
    
        noData: 'No shows have been created yet.',
        noDataMatch: 'There are no shows that match your search criteria.',
        showState: {
          label: 'Show status',
          active: 'Active',
          inactive: 'Inactive',
        },
    
      },
    
      showJumbotron: {
        activateShow: 'Activate show',
        deactivateShow: 'Deactivate show',
        notActive: 'This show is not active at the moment',
        deactivationWarning: 'You are about to delete show <b>%{show}</b>!',
        continue: 'Are you sure you want to continue',
      },
    
      showSchedules: {
    
        title: 'Schedules',
        times: 'Airtime',
        rhythm: 'Rhythm',
        firstBroadcast: 'First airing',
        lastBroadcast: 'Last airing',
    
        noSchedulesAvailable: 'There are currently no schedules for this show',
    
        showAll: 'Show All',
        hide: 'Hide',
        scheduleDescription:
          '%{rhythm} beginning %{startDate} from %{startTime} to %{endTime} respectively.',
        scheduleDescriptionFinite:
          '%{rhythm} beginning %{startDate} through %{endDate} from %{startTime} to %{endTime} respectively.',
    
        title: 'Broadcasts',
        noTimeslotsScheduled: 'No broadcasts are scheduled within the given timeframe.',
        filter: 'Filter',
    
    
        editDescription: 'Edit description',
        editPlaylist: 'Edit playlist',
        openPlayer: 'Open player',
        downloadRecording: 'Download recording',
        uploadToCba: 'Upload recording to CBA',
    
        numberOfSlots: 'Number of slots',
        from: 'From',
        to: 'To (exclusive)',
      },
    
      showMeta: {
        email: 'Email',
        emailPlaceholder: 'Enter a contact address for this show',
        editEmail: 'Edit email',
        invalidEmail: 'Please enter a valid email',
    
        showName: 'Show name',
        showNamePlaceholder: 'Enter the name of the show',
        editShowName: 'Edit show name',
    
        description: 'Description',
        descriptionPlaceholder: 'Enter a description',
        editDescription: 'Edit description',
    
        shortDescription: 'Short description',
        shortDescriptionPlaceholder: 'Enter a short description of this show',
        editShortDescription: 'Edit short description',
    
    
        internalNote: 'Internal note',
    
    
        website: 'Website',
        websitePlaceholder: 'Enter a website for this show',
        editWebsite: 'Edit website',
        invalidWebsite: 'Please enter a valid URL',
    
        type: 'Show type',
        editType: 'Edit show type',
    
        fundingCategory: 'Funding category',
        fundingCategoryRtr: '(e.g. for RTR)',
        editFundingCategory: 'Edit funding category',
    
        predecessor: 'Predecessor',
        noPredecessor: 'This show has no predecessor',
        editPredecessor: 'Edit predecessor',
        noPredecessorName: 'The name of the predecessor is unavailable',
    
        cbaSeriesId: 'CBA Series ID',
        cbaSeriesIdPlaceholder: 'Enter a CBA Series ID for this show',
        editCbaSeriesId: 'Edit CBA Series ID',
        invalidCbaSeriesId: 'Please enter a valid integer as series ID',
    
    
        defaultPlaylist: 'Default show playlist ID',
        editDefaultPlaylist: 'Edit default show playlist ID',
    
    
        // Meta arrays
        categories: 'Categories',
        categoriesLabel: 'Select one or more categories',
        editCategories: 'Edit categories',
    
        topics: 'Topics',
        topicsLabel: 'Select one or more topics',
        editTopics: 'Edit topics',
    
        genres: 'Genres',
        genresLabel: 'Select one or more genres',
        editGenres: 'Edit genres',
    
        languages: 'Languages',
        languagesLabel: 'Select one or more languages',
        editLanguages: 'Edit languages',
    
        hosts: 'Hosts',
        hostsLabel: 'Select one or more hosts',
        editHosts: 'Edit hosts',
    
        owners: 'Owners',
        editOwners: 'Edit owners',
    
        accessAlreadyGiven: 'This user already has access for this show',
        usersWithAccess: 'Users with access to <b>%{show}</b>',
        addNewUsers: 'You can add new users using the table below',
    
        name: 'Name',
        username: 'Username',
        options: 'Options',
    
        logo: 'Logo',
        image: 'Image',
    
    
    Konrad Mohrfeldt's avatar
    Konrad Mohrfeldt committed
        multiselect: '<b>Hint:</b> use <code>CTRL+click</code> for multiple selection',
    
      },
    
      noteEditor: {
        editNote: 'Edit note',
        title: 'Title',
        titlePlaceholder: 'Enter a title',
        summary: 'Summary',
        summaryPlaceholder: 'Enter a summary',
        content: 'Content',
        contentPlaceholder: 'Describe the content of the show',
        image: 'Image',
    
        tags: 'Tags',
    
        contributors: 'Contributors',
    
        save: 'Save Note',
    
      error: {
        server: {
          unknown: 'An unknown error server error occurred.',
          null: 'This field cannot be empty.',
          blank: 'This field cannot be empty.',
    
          unique: 'The value of this field must be unique.',
    
      imagePicker: {
        title: 'Pick an Image',
        browseImages: 'Browse Images',
        editCurrentImage: 'Edit the current image',
        saveChanges: 'Save changes',
        useImage: 'Use this image',
        chooseAnImage: 'Choose image',
        uploadImage: 'Upload new image',
        abort: 'Abort',
        reset: 'Reset Image',
        error: {
          default: 'Could not upload image.',
          tooLarge: 'The image you’ve selected is too large in filesize.',
        },
      },
    
      image: {
        altText: 'Alternative Text (for screenreaders)',
        credits: 'Credits',
      },
    
    
      license: {
        validation: {
          requiresExpressPermissionForPublication:
            'The license requires explicit consent for publication on the part of the author.',
          requiresCredits:
            'The license requires attribution of the author. Please indicate their name.',
        },
      },
    
    
      showCreator: {
        title: 'Create new show',
    
        missingShowTypes:
          'No show types have been created yet. You can add them in the <a href="%{adminUrl}/program/type/add/" target="_blank">administration interface</a>.',
        missingShowFundingCategories:
          'No funding categories have been created yet. You can add them in the <a href="%{adminUrl}/program/fundingcategory/add/" target="_blank">administration interface</a>.',
    
      },
    
      conflictResolution: {
        title: 'Conflict resolution for new schedule',
        titleModal: 'Resolve a timeslot conflict',
    
        titleNoConflict: 'No conflict to resolve',
        noConflict: 'This timeslot does not have a conflict. Great!',
    
    
        conflictingSlot: 'New Timeslot',
    
        projectedSlot:
          'The new timeslot runs on <b>%{firstDate}</b> from <b>%{startTime}</b> to <b>%{endTime}</b>',
        conflictsWith: 'It conflicts with the following timeslots',
    
        newSchedule: 'from <b>%{firstDate}, %{startTime}</b> to <b>%{endTime}</b>',
    
    Konrad Mohrfeldt's avatar
    Konrad Mohrfeldt committed
        recurringSchedule: 'This schedule repeats <b>%{rrule}</b> until <b>%{lastDate}</b>',
    
        leftToResolve:
          '%{smart_count} conflicts left to resolve |||| %{smart_count} conflict left to resolve',
        noneLeftToResolve: 'No more conflicts to resolve!',
        applySolution: 'Apply solution',
    
        from: 'From',
        to: 'To',
        showName: 'Show name',
    
        whichStrategy: 'Which solution should be applied?',
        strategies: {
          ours: 'Insert new timeslot, delete old one',
          theirs: 'Delete new timeslot, keep old one',
          theirsStart: 'Insert new timeslot after old timeslot',
          theirsEnd: 'Insert new timeslot before old timeslot',
          theirsBoth: 'Insert new timeslot with interruption by old timeslot',
          oursStart: 'ours-start (TODO: Better description)',
          oursEnd: 'ours-end (TODO: Better description)',
          oursBoth: 'ours-both (TODO: Better description)',
    
      paginator: {
        gotoFirst: 'Go to first page',
        gotoPrev: 'Go to previous page',
        goto: 'Go to page %{page}',
        gotoNext: 'Go to next page',
        gotoLast: 'Go to last page',
        range: 'Showing %{start} to %{end} of %{count} entries.',
      },
    
    
      scheduleEditor: {
        titleCreate: 'Create new schedule for "%{show}"',
        titleEdit: 'Edit schedule for "%{show}"',
    
        timeslotRuns:
          'This timeslot runs on <b>%{firstDate}</b> from <b>%{startTime}</b> to <b>%{endTime}</b>',
    
    Konrad Mohrfeldt's avatar
    Konrad Mohrfeldt committed
        recurringSchedule: 'This schedule repeats from <b>%{rrule}</b> to <b>%{lastDate}</b>',
    
    
        singleEmission: 'This timeslot is a one-time emission.',
        coexistingTimeslot:
          'But due to a conflict resolution there is another timeslot on <b>%{firstDate}</b> from <b>%{startTime}</b> to <b>%{endTime}</b>',
    
        addFallbackTitle: 'Add fallback for schedule',
        currentlySelectedPlaylist: 'Currently selected playlist',
        assignPlaylist: 'Assign playlist',
    
        start: 'Start',
        end: 'End',
        projectedDuration: '<b>Projected duration:</b> %{duration}',
    
        pastEventWarning:
          'Past events will be ignored. Start date was set to today!<br>Try again or change the start date to something in the future.',
        from: 'From',
        to: 'To',
        fromDate: 'Starting',
        toDate: 'Until <span class="tw-font-normal tw-text-gray-500">(Date)</span>',
    
        addRepetition: 'Add repetition schedule',
        whenToRepeat: 'When to repeat?',
        useSameTime: 'Use same start and end time',
        repeatAt: 'Repeat at',
        addNoOfDays: 'How many days later?',
        onlyBusinessDays: 'Only count business days',
    
        delete: {
          delete: 'Delete',
          timeslotsTitle: 'Deleting timeslots',
          both: 'Delete both',
          scheduleTimeslots: 'Delete schedule and all timeslots',
          timeslot: 'Delete timeslot',
          allTimeslots: 'Delete all future timeslots',
    
        repetition: {
          followingDay: 'On the following day',
          followingBusinessDay: 'On the following business day',
          numberOfDaysLater: 'A number of days later',
    
      },
    
      calendar: {
        today: 'Today',
    
        empty: 'No playlist',
        fallback: 'Fallback playlist',
        repetition: 'Repetition',
    
        view: {
          day: 'Day view',
          week: 'Week view',
    
        switchShow: 'Switch to “%{show}” show',
        editTimeslot: 'Sendung bearbeiten',
        intermission: 'Program intermission',
        mismatchedLength: 'wrong duration',
        playing: 'Currently playing',
    
      },
    
      // Etc
      metadata: {
        artist: 'Artist',
        album: 'Album',
        title: 'Title',
        source: 'Source',
        size: 'File size',
      },
    
      // Etc
      rrule: {
        rrule: 'Repetition rule',
    
        rule: {
    
    Konrad Mohrfeldt's avatar
    Konrad Mohrfeldt committed
          1: 'once',
          2: 'daily',
          3: 'workdays',
          4: 'weekly',
          5: 'every two weeks',
          6: 'every four weeks',
          7: 'even calendar weeks',
          8: 'uneven calendar weeks',
          9: 'Every first week of the month',
          10: 'Every second week of the month',
          11: 'Every third week of the month',
          12: 'Every fourth week of the month',
          13: 'Every fifth week of the month',
    
      },
    
      steeringErrorCodes: {
        'no-start-after-end': 'The start date cannot be after the end date.',
    
    Konrad Mohrfeldt's avatar
    Konrad Mohrfeldt committed
        'no-same-day-start-and-end': 'The start and end date cannot be on the same day.',
    
        'one-solution-per-conflict':
          'Exactly one solution is required per conflict. You either submitted no or more than one solution.',
      },