I finally got around to doing a Danish translation for ZM except to the options pages.
If we have any other danish ppl that uses ZM pls download it and post reply´s here.
Code: Select all
<?php
//
// ZoneMinder web UK English language file, $Date: 2004/12/28 18:20:11 $, $Revision: 1.30 $
// Copyright (C) 2003 Philip Coombes
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
//
// ZoneMinder Danish Translation by Tom Stage
// Notes for Translators
// 0. Get some credit, put your name in the line above (optional)
// 1. When composing the language tokens in your language you should try and keep to roughly the
// same length text if possible. Abbreviate where necessary as spacing is quite close in a number of places.
// 2. There are four types of string replacement
// a) Simple replacements are words or short phrases that are static and used directly. This type of
// replacement can be used 'as is'.
// b) Complex replacements involve some dynamic element being included and so may require substitution
// or changing into a different order. The token listed in this file will be passed through sprintf as
// a formatting string. If the dynamic element is a number you will usually need to use a variable
// replacement also as described below.
// c) Variable replacements are used in conjunction with complex replacements and involve the generation
// of a singular or plural noun depending on the number passed into the zmVlang function. See the
// the zmVlang section below for a further description of this.
// d) Optional strings which can be used to replace the prompts and/or help text for the Options section
// of the web interface. These are not listed below as they are quite large and held in the database
// so that they can also be used by the zmconfig.pl script. However you can build up your own list
// quite easily from the Config table in the database if necessary.
// 3. The tokens listed below are not used to build up phrases or sentences from single words. Therefore
// you can safely assume that a single word token will only be used in that context.
// 4. In new language files, or if you are changing only a few words or phrases it makes sense from a
// maintenance point of view to include the original language file and override the old definitions rather
// than copy all the language tokens across. To do this change the line below to whatever your base language
// is and uncomment it.
// require_once( 'zm_lang_en_gb.php' );
// You may need to change the character set here, if your web server does not already
// do this by default, uncomment this if required.
//
// Example
// header( "Content-Type: text/html; charset=iso-8859-1" );
header( "Content-Type: text/html; charset=windows-1252" );
// You may need to change your locale here if your default one is incorrect for the
// language described in this file, or if you have multiple languages supported.
// If you do need to change your locale, be aware that the format of this function
// is subtlely different in versions of PHP before and after 4.3.0, see
// http://uk2.php.net/manual/en/function.setlocale.php for details.
// Also be aware that changing the whole locale may affect some floating point or decimal
// arithmetic in the database, if this is the case change only the individual locale areas
// that don't affect this rather than all at once. See the examples below.
// Finally, depending on your setup, PHP may not enjoy have multiple locales in a shared
// threaded environment, if you get funny errors it may be this.
//
// Examples
// setlocale( 'LC_ALL', 'en_GB' ); All locale settings pre-4.3.0
// setlocale( LC_ALL, 'en_GB' ); All locale settings 4.3.0 and after
// setlocale( LC_CTYPE, 'en_GB' ); Character class settings 4.3.0 and after
// setlocale( LC_TIME, 'en_GB' ); Date and time formatting 4.3.0 and after
// Simple String Replacements
$zmSlang24BitColour = '24 bit farver';
$zmSlang8BitGrey = '8 bit greyscale';
$zmSlangActual = 'Aktuel';
$zmSlangAddNewMonitor = 'Tilføj ny Monitor';
$zmSlangAddNewUser = 'Tilføj NY Bruger';
$zmSlangAddNewZone = 'Tilføj Ny Zone';
$zmSlangAlarm = 'Alarm';
$zmSlangAlarmBrFrames = 'Alarm<br/>Billeder';
$zmSlangAlarmFrame = 'Alarm Billede';
$zmSlangAlarmFrameCount = 'Alarm Billede Tæller';
$zmSlangAlarmLimits = 'Alarm Begrændsing';
$zmSlangAlarmPx = 'Alarm Px';
$zmSlangAlert = 'Advarsel';
$zmSlangAll = 'Alle';
$zmSlangApply = 'Aktiver';
$zmSlangApplyingStateChange = 'Aktivere State Ændring';
$zmSlangArchArchived = 'Kun Arkiverede';
$zmSlangArchive = 'Arkiver';
$zmSlangArchUnarchived = 'Kun Ikke Arkiverede';
$zmSlangAttrAlarmFrames = 'Alarm Billeder';
$zmSlangAttrArchiveStatus = 'Arkiverings Status';
$zmSlangAttrAvgScore = 'Avg. Skore';
$zmSlangAttrCause = 'Årsag';
$zmSlangAttrDate = 'Dato';
$zmSlangAttrDateTime = 'Dato/Tid';
$zmSlangAttrDiskBlocks = 'Disk Blocks';
$zmSlangAttrDiskPercent = 'Disk Procent';
$zmSlangAttrDuration = 'Forløb';
$zmSlangAttrFrames = 'Billeder';
$zmSlangAttrId = 'Id';
$zmSlangAttrMaxScore = 'Max. Skore';
$zmSlangAttrMonitorId = 'Monitor Id';
$zmSlangAttrMonitorName = 'Monitor Navn';
$zmSlangAttrName = 'Navn';
$zmSlangAttrTime = 'Tid';
$zmSlangAttrTotalScore = 'Total Skore';
$zmSlangAttrWeekday = 'Uge Dag';
$zmSlangAutoArchiveEvents = 'Automatisk arkiver alle matchende';
$zmSlangAutoDeleteEvents = 'Automatisk slet alle matchende';
$zmSlangAutoEmailEvents = 'Automatisk email detalier af alle matchende';
$zmSlangAutoExecuteEvents = 'Automatisk kør kommando på alle matchende';
$zmSlangAutoMessageEvents = 'Send Automatisk detalier af alle matchende';
$zmSlangAutoUploadEvents = 'Upload Automatisk alle matchende';
$zmSlangAvgBrScore = 'Avg.<br/>Skore';
$zmSlangBadMonitorChars = 'Monitor Navn må kun indeholde alphanumeriske karaktere plus hyphen og underscore';
$zmSlangBandwidth = 'Båndbrede';
$zmSlangBlobPx = 'Blob Px';
$zmSlangBlobs = 'Blobs';
$zmSlangBlobSizes = 'Blob Størelse';
$zmSlangBrightness = 'Brightness';
$zmSlangBuffers = 'Buffere';
$zmSlangCancel = 'Fortryd';
$zmSlangCancelForcedAlarm = 'Fortryd Forced Alarm';
$zmSlangCaptureHeight = 'Capture Height';
$zmSlangCapturePalette = 'Capture Palette';
$zmSlangCaptureWidth = 'Capture Width';
$zmSlangCause = 'Årsag';
$zmSlangCheckAll = 'Marker Alle';
$zmSlangCheckMethod = 'Alarm Check Methode';
$zmSlangChooseFilter = 'Vælg Filter';
$zmSlangClose = 'Luk';
$zmSlangColour = 'Farve';
$zmSlangConfig = 'Konfig';
$zmSlangConfiguredFor = 'Konfigureret for';
$zmSlangConfirmPassword = 'Verifiser Password';
$zmSlangConjAnd = 'og';
$zmSlangConjOr = 'eller';
$zmSlangConsole = 'Konsol';
$zmSlangContactAdmin = 'Kontakt Din adminstrator for detalier.';
$zmSlangContinue = 'Fortsæt';
$zmSlangContrast = 'Kontrast';
$zmSlangCycle = 'Cycle';
$zmSlangCycleWatch = 'Cycle Watch';
$zmSlangDay = 'Dag';
$zmSlangDeleteAndNext = 'Slet & Næste';
$zmSlangDeleteAndPrev = 'Slet & Forrige';
$zmSlangDelete = 'Slet';
$zmSlangDeleteSavedFilter = 'Slet gemte filter';
$zmSlangDescription = 'Beskrivelse';
$zmSlangDeviceChannel = 'Enheds Kanal';
$zmSlangDeviceFormat = 'Enheds Format (0=PAL,1=NTSC etc)';
$zmSlangDeviceNumber = 'Enheds Nummer (/dev/video?)';
$zmSlangDimensions = 'Dimentioner';
$zmSlangDisk = 'Disk';
$zmSlangDuration = 'Forløb';
$zmSlangEdit = 'Edit';
$zmSlangEmail = 'Email';
$zmSlangEnabled = 'Aktiveret';
$zmSlangEnterNewFilterName = 'Skriv nyt filter navn';
$zmSlangErrorBrackets = 'Fejl, check at du har lige antal af Åbnings og Lukkende brackets';
$zmSlangError = 'Fejl';
$zmSlangErrorValidValue = 'Fejl, check at alle terms har en valid værdig';
$zmSlangEtc = 'etc';
$zmSlangEvent = 'Event';
$zmSlangEventFilter = 'Event Filter';
$zmSlangEventId = 'Event Id';
$zmSlangEventName = 'Event Navn';
$zmSlangEventPrefix = 'Event Prefix';
$zmSlangEvents = 'Events';
$zmSlangExclude = 'Exclude';
$zmSlangFeed = 'Feed';
$zmSlangFilterPx = 'Filter Px';
$zmSlangFirst = 'Første';
$zmSlangForceAlarm = 'Force Alarm';
$zmSlangFPS = 'fps';
$zmSlangFPSReportInterval = 'FPS Report Interval';
$zmSlangFrame = 'Billed';
$zmSlangFrameId = 'Billed Id';
$zmSlangFrameRate = 'Billed Hastighed';
$zmSlangFrames = 'Billeder';
$zmSlangFrameSkip = 'Billede Skip';
$zmSlangFTP = 'FTP';
$zmSlangFunc = 'Func';
$zmSlangFunction = 'Funktion';
$zmSlangGenerateVideo = 'Generer Video';
$zmSlangGeneratingVideo = 'Generere Video';
$zmSlangGoToZoneMinder = 'Gå til ZoneMinder.com';
$zmSlangGrey = 'Grå';
$zmSlangGroups = 'Gruppe';
$zmSlangHighBW = 'Høj B/W';
$zmSlangHigh = 'Høj';
$zmSlangHour = 'Time';
$zmSlangHue = 'Hue';
$zmSlangId = 'Id';
$zmSlangIdle = 'Idle';
$zmSlangIgnore = 'Ignorer';
$zmSlangImageBufferSize = 'Billed Buffer Størelse (frames)';
$zmSlangImage = 'Billed';
$zmSlangInclude = 'Includer';
$zmSlangInverted = 'Inverter';
$zmSlangLanguage = 'Sprog';
$zmSlangLast = 'Sidste';
$zmSlangLimitResultsPost = 'results only;'; // This is used at the end of the phrase 'Limit to first N results only'
$zmSlangLimitResultsPre = 'Limit to first'; // This is used at the beginning of the phrase 'Limit to first N results only'
$zmSlangLoad = 'Load';
$zmSlangLocal = 'Local';
$zmSlangLoggedInAs = 'Logget Ind Som';
$zmSlangLoggingIn = 'Logger Ind';
$zmSlangLogin = 'Logind';
$zmSlangLogout = 'Log Ud';
$zmSlangLowBW = 'Lav B/W';
$zmSlangLow = 'Lav';
$zmSlangMark = 'Marker';
$zmSlangMaxBrScore = 'Max.<br/>Skore';
$zmSlangMaximumFPS = 'Maximum FPS';
$zmSlangMax = 'Max';
$zmSlangMediumBW = 'Medium B/W';
$zmSlangMedium = 'Medium';
$zmSlangMinAlarmGeMinBlob = 'Minimum alarm pixels bør være støre end eller ligmed til minimum blob pixels';
$zmSlangMinAlarmGeMinFilter = 'Minimum alarm pixels bør være støre end eller ligmed til minimum filter pixels';
$zmSlangMinAlarmPixelsLtMax = 'Minimum alarm pixels bør være mindre end maximum alarm pixels';
$zmSlangMinBlobAreaLtMax = 'Minimum blob område bør være mindre end maximum blob ømråde';
$zmSlangMinBlobsLtMax = 'Minimum blobs bør være mindre end maximum blobs';
$zmSlangMinFilterPixelsLtMax = 'Minimum filter pixels bør være mindre end maximum filter pixels';
$zmSlangMinPixelThresLtMax = 'Minimum pixel threshold bør være mindre end maximum pixel threshold';
$zmSlangMisc = 'Misc';
$zmSlangMonitorIds = 'Monitor Ids';
$zmSlangMonitor = 'Monitor';
$zmSlangMonitors = 'Monitore';
$zmSlangMontage = 'Montage';
$zmSlangMonth = 'Måned';
$zmSlangMustBeGe = 'skal være støre end eller ligmed';
$zmSlangMustBeLe = 'must be less than or equal to';
$zmSlangMustConfirmPassword = 'Du skal konfimere password';
$zmSlangMustSupplyPassword = 'Du skal angive et password';
$zmSlangMustSupplyUsername = 'Du skal opgive et username';
$zmSlangName = 'Navn';
$zmSlangNetwork = 'Netværk';
$zmSlangNew = 'Ny';
$zmSlangNewGroup = 'Ny Gruppe';
$zmSlangNewPassword = 'Nyt Password';
$zmSlangNewState = 'Ny State';
$zmSlangNewUser = 'Ny User';
$zmSlangNext = 'Næste';
$zmSlangNoFramesRecorded = 'Der er ingen frames optaget for denne event';
$zmSlangNoneAvailable = 'Ingen Tilstede';
$zmSlangNone = 'Ingen';
$zmSlangNo = 'Nej';
$zmSlangNoGroups = 'Ingen gruppe er defineret';
$zmSlangNormal = 'Normal';
$zmSlangNoSavedFilters = 'NoSavedFilters';
$zmSlangNoStatisticsRecorded = 'Der er ingen statestikker optaget for denne event/frame';
$zmSlangOpEq = 'ligmed';
$zmSlangOpGtEq = 'støre end eller ligmed';
$zmSlangOpGt = 'støre end';
$zmSlangOpIn = 'i sættet';
$zmSlangOpLtEq = 'mindre end eller ligmed';
$zmSlangOpLt = 'mindre end';
$zmSlangOpMatches = 'matches';
$zmSlangOpNe = 'ikke ligmed';
$zmSlangOpNotIn = 'ikke i sættet';
$zmSlangOpNotMatches = 'does not match';
$zmSlangOptionHelp = 'OptionHelp';
$zmSlangOptionRestartWarning = 'Disse ændringer træder ikke i fuld effect\nmens systemt køre. Når du har\nafsluttet ændringer bedes du\ngenstarte ZoneMinder.';
$zmSlangOptions = 'Indstillinger';
$zmSlangOrEnterNewName = 'eller skriv nyt navn';
$zmSlangOrientation = 'Orientation';
$zmSlangOverwriteExisting = 'Overskriv Eksisterende';
$zmSlangPaged = 'Paged';
$zmSlangParameter = 'Parameter';
$zmSlangPassword = 'Password';
$zmSlangPasswordsDifferent = 'Det nye og konfimerede passwords er forskellige';
$zmSlangPaths = 'Stig';
$zmSlangPlayAll = 'Afspil Alle';
$zmSlangPhone = 'Telefon';
$zmSlangPhoneBW = 'Telefon B/W';
$zmSlangPixels = 'pixels';
$zmSlangPleaseWait = 'Vent venligst';
$zmSlangPostEventImageBuffer = 'Post Event Billed Buffer';
$zmSlangPreEventImageBuffer = 'Pre Event Billed Buffer';
$zmSlangPrev = 'Forige';
$zmSlangRate = 'Rate';
$zmSlangReal = 'Real';
$zmSlangRecord = 'Optag';
$zmSlangRefImageBlendPct = 'Reference Billed Blend %ge';
$zmSlangRefresh = 'Opdater';
$zmSlangRemoteHostName = 'Remote Host Navn';
$zmSlangRemoteHostPath = 'Remote Host Stig';
$zmSlangRemoteHostPort = 'Remote Host Port';
$zmSlangRemoteImageColours = 'Remote Billed Farve';
$zmSlangRemote = 'Remote';
$zmSlangRename = 'Omdøb';
$zmSlangReplay = 'Spil igen';
$zmSlangReset = 'Reset';
$zmSlangResetEventCounts = 'Reset Event Counts';
$zmSlangRestarting = 'Genstarter';
$zmSlangRestart = 'Genstart';
$zmSlangRestrictedCameraIds = 'Restricted Camera Ids';
$zmSlangRotateLeft = 'Rotate Left';
$zmSlangRotateRight = 'Rotate Right';
$zmSlangRunMode = 'Kørsels Metode';
$zmSlangRunning = 'Køre';
$zmSlangRunState = 'Run State';
$zmSlangSaveAs = 'Gem som';
$zmSlangSaveFilter = 'Gem Filter';
$zmSlangSave = 'Gem';
$zmSlangScale = 'Scale';
$zmSlangScore = 'Skore';
$zmSlangSecs = 'Sekunder';
$zmSlangSelect = 'Vælg';
$zmSlangSectionlength = 'Sektion længde';
$zmSlangSetLearnPrefs = 'Set Learn Prefs'; // This can be ignored for now
$zmSlangSetNewBandwidth = 'Set Ny Båndbrede';
$zmSlangSettings = 'Indstillinger';
$zmSlangShowFilterWindow = 'HvisFilterVindue';
$zmSlangSortAsc = 'Asc';
$zmSlangSortBy = 'Sort by';
$zmSlangSortDesc = 'Desc';
$zmSlangSource = 'Enhed';
$zmSlangSourceType = 'Enheds Type';
$zmSlangStart = 'Start';
$zmSlangState = 'State';
$zmSlangStats = 'Stats';
$zmSlangStatus = 'Status';
$zmSlangStills = 'Stills';
$zmSlangStopped = 'Stopped';
$zmSlangStop = 'Stop';
$zmSlangStream = 'Stream';
$zmSlangSubmit = 'Submit';
$zmSlangSystem = 'System';
$zmSlangThumbnail = 'Thumbnail';
$zmSlangTimeDelta = 'Time Delta';
$zmSlangTimestampLabelFormat = 'Tidsstempel Mærkning´s Format';
$zmSlangTimestampLabelX = 'Tidsstempel Mærkning X';
$zmSlangTimestampLabelY = 'Tidsstempel Mærkning Y';
$zmSlangTimestamp = 'Tidsstempel';
$zmSlangTimeStamp = 'Tids Stæmpel';
$zmSlangTime = 'Tid';
$zmSlangToday = 'I Dag';
$zmSlangTools = 'Tools';
$zmSlangTotalBrScore = 'Total<br/>Skore';
$zmSlangTriggers = 'Triggers';
$zmSlangType = 'Type';
$zmSlangUnarchive = 'Unarchive';
$zmSlangUnits = 'Units';
$zmSlangUnknown = 'Unknown';
$zmSlangUpdateAvailable = 'En updatering til ZoneMinder er tilstede.';
$zmSlangUpdateNotNecessary = 'Ingen updatering er nødvendig.';
$zmSlangUseFilterExprsPost = ' filter expressions'; // This is used at the end of the phrase 'use N filter expressions'
$zmSlangUseFilterExprsPre = 'Brug '; // This is used at the beginning of the phrase 'use N filter expressions'
$zmSlangUseFilter = 'Brug Filter';
$zmSlangUsername = 'Bruger Navn';
$zmSlangUsers = 'Brugere';
$zmSlangUser = 'Bruger';
$zmSlangValue = 'Værdig';
$zmSlangVersionIgnore = 'Ignorer denne version';
$zmSlangVersionRemindDay = 'Påmind igen om 1 dag';
$zmSlangVersionRemindHour = 'Påmind igen om 1 time';
$zmSlangVersionRemindNever = 'Mind ikke om nye versioner';
$zmSlangVersionRemindWeek = 'Påmind igen om 1 uge';
$zmSlangVersion = 'Version';
$zmSlangVideoGenFailed = 'Video Generering Fejlede!';
$zmSlangVideoGenParms = 'Video Generaring Parametre';
$zmSlangVideoSize = 'Video Størelse';
$zmSlangVideo = 'Video';
$zmSlangViewAll = 'Vis Alle';
$zmSlangViewPaged = 'View Paged';
$zmSlangView = 'Vis';
$zmSlangWarmupFrames = 'Varmop Billeder';
$zmSlangWatch = 'Se';
$zmSlangWeb = 'Web';
$zmSlangWeek = 'Uge';
$zmSlangX10ActivationString = 'X10 Aktiverings Streng';
$zmSlangX10InputAlarmString = 'X10 Input Alarm Streng';
$zmSlangX10OutputAlarmString = 'X10 Output Alarm Streng';
$zmSlangX10 = 'X10';
$zmSlangYes = 'Ja';
//$zmSlangYouNoPerms = 'You do not have permissions to access this resource.';
$zmSlangYouNoPerms = 'Du har ikke adgang til denne enhed.';
$zmSlangZoneAlarmColour = 'Alarm Farve (RGB)';
$zmSlangZoneFilterHeight = 'Filter Højde (pixels)';
$zmSlangZoneFilterWidth = 'Filter Brede (pixels)';
$zmSlangZoneMaxAlarmedArea = 'Maximum Alarm Område';
$zmSlangZoneMaxBlobArea = 'Maximum Blob Område';
$zmSlangZoneMaxBlobs = 'Maximum Blobs';
$zmSlangZoneMaxFilteredArea = 'Maximum Filtreret Område';
$zmSlangZoneMaxPixelThres = 'Maximum Pixel Threshold (0>=?<=255)';
$zmSlangZoneMaxX = 'Maximum X (right)';
$zmSlangZoneMaxY = 'Maximum Y (bottom)';
$zmSlangZoneMinAlarmedArea = 'Minimum Alarmed Område';
$zmSlangZoneMinBlobArea = 'Minimum Blob Område';
$zmSlangZoneMinBlobs = 'Minimum Blobs';
$zmSlangZoneMinFilteredArea = 'Minimum Filtreret Område';
$zmSlangZoneMinPixelThres = 'Minimum Pixel Threshold (0>=?<=255)';
$zmSlangZoneMinX = 'Minimum X (left)';
$zmSlangZoneMinY = 'Minimum Y (top)';
$zmSlangZones = 'Zoner';
$zmSlangZone = 'Zone';
// Complex replacements with formatting and/or placements, must be passed through sprintf
$zmClangCurrentLogin = 'Nuværende login er \'%1$s\'';
$zmClangEventCount = '%1$s %2$s'; // For example '37 Events' (from Vlang below)
$zmClangLastEvents = 'Sidste %1$s %2$s'; // For example 'Last 37 Events' (from Vlang below)
$zmClangLatestRelease = 'Den Seneste version er v%1$s, du har v%2$s.';
$zmClangMonitorCount = '%1$s %2$s'; // For example '4 Monitors' (from Vlang below)
$zmClangMonitorFunction = 'Monitor %1$s Funktion';
$zmClangRunningRecentVer = 'Du Køre med seneste version af ZoneMinder, v%s.';
// The next section allows you to describe a series of word ending and counts used to
// generate the correctly conjugated forms of words depending on a count that is associated
// with that word.
// This intended to allow phrases such a '0 potatoes', '1 potato', '2 potatoes' etc to
// conjugate correctly with the associated count.
// In some languages such as English this is fairly simple and can be expressed by assigning
// a count with a singular or plural form of a word and then finding the nearest (lower) value.
// So '0' of something generally ends in 's', 1 of something is singular and has no extra
// ending and 2 or more is a plural and ends in 's' also. So to find the ending for '187' of
// something you would find the nearest lower count (2) and use that ending.
//
// So examples of this would be
// $zmVlangPotato = array( 0=>'Potatoes', 1=>'Potato', 2=>'Potatoes' );
// $zmVlangSheep = array( 0=>'Sheep' );
//
// where you can have as few or as many entries in the array as necessary
// If your language is similar in form to this then use the same format and choose the
// appropriate zmVlang function below.
// If however you have a language with a different format of plural endings then another
// approach is required . For instance in Russian the word endings change continuously
// depending on the last digit (or digits) of the numerator. In this case then zmVlang
// arrays could be written so that the array index just represents an arbitrary 'type'
// and the zmVlang function does the calculation about which version is appropriate.
//
// So an example in Russian might be (using English words, and made up endings as I
// don't know any Russian!!)
// $zmVlangPotato = array( 1=>'Potati', 2=>'Potaton', 3=>'Potaten' );
//
// and the zmVlang function decides that the first form is used for counts ending in
// 0, 5-9 or 11-19 and the second form when ending in 1 etc.
//
// Variable arrays expressing plurality, see the zmVlang description above
$zmVlangEvent = array( 0=>'Events', 1=>'Event', 2=>'Events' );
$zmVlangMonitor = array( 0=>'Monitors', 1=>'Monitor', 2=>'Monitors' );
// You will need to choose or write a function that can correlate the plurality string arrays
// with variable counts. This is used to conjugate the Vlang arrays above with a number passed
// in to generate the correct noun form.
//
// In languages such as English this is fairly simple
// Note this still has to be used with printf etc to get the right formating
function zmVlang( $lang_var_array, $count )
{
krsort( $lang_var_array );
foreach ( $lang_var_array as $key=>$value )
{
if ( abs($count) >= $key )
{
return( $value );
}
}
die( 'Error, unable to correlate variable language string' );
}
// This is an version that could be used in the Russian example above
// The rules are that the first word form is used if the count ends in
// 0, 5-9 or 11-19. The second form is used then the count ends in 1
// (not including 11 as above) and the third form is used when the
// count ends in 2-4, again excluding any values ending in 12-14.
//
// function zmVlang( $lang_var_array, $count )
// {
// $secondlastdigit = substr( $count, -2, 1 );
// $lastdigit = substr( $count, -1, 1 );
// // or
// // $secondlastdigit = ($count/10)%10;
// // $lastdigit = $count%10;
//
// // Get rid of the special cases first, the teens
// if ( $secondlastdigit == 1 && $lastdigit != 0 )
// {
// return( $lang_var_array[1] );
// }
// switch ( $lastdigit )
// {
// case 0 :
// case 5 :
// case 6 :
// case 7 :
// case 8 :
// case 9 :
// {
// return( $lang_var_array[1] );
// break;
// }
// case 1 :
// {
// return( $lang_var_array[2] );
// break;
// }
// case 2 :
// case 3 :
// case 4 :
// {
// return( $lang_var_array[3] );
// break;
// }
// }
// die( 'Error, unable to correlate variable language string' );
// }
// This is an example of how the function is used in the code which you can uncomment and
// use to test your custom function.
//$monitors = array();
//$monitors[] = 1; // Choose any number
//echo sprintf( $zmClangMonitorCount, count($monitors), zmVlang( $zmVlangMonitor, count($monitors) ) );
// In this section you can override the default prompt and help texts for the options area
// These overrides are in the form of $zmOlangPrompt<option> and $zmOlangHelp<option>
// where <option> represents the option name minus the initial ZM_
// So for example, to override the help text for ZM_LANG_DEFAULT do
//$zmOlangPromptLANG_DEFAULT = "This is a new prompt for this option";
//$zmOlangHelpLANG_DEFAULT = "This is some new help for this option which will be displayed in the popup window when the ? is clicked";
//
?>
http://dvss.voronwe.dk/zm/zm_lang_dk_dk.php
Any and all input for this are welcome.