de.ts 151 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760
  1. export default {
  2. // Navigation
  3. nav: {
  4. printers: 'Drucker',
  5. archives: 'Archiv',
  6. queue: 'Warteschlange',
  7. stats: 'Statistiken',
  8. profiles: 'Profile',
  9. maintenance: 'Wartung',
  10. projects: 'Projekte',
  11. inventory: 'Filament',
  12. files: 'Dateimanager',
  13. settings: 'Einstellungen',
  14. system: 'System',
  15. collapseSidebar: 'Seitenleiste einklappen',
  16. expandSidebar: 'Seitenleiste ausklappen',
  17. update: 'Update',
  18. updateAvailable: 'Update verfügbar: v{{version}}',
  19. updateAvailableBanner: 'Version {{version}} ist verfügbar!',
  20. viewUpdate: 'Update anzeigen',
  21. viewOnGithub: 'Auf GitHub ansehen',
  22. keyboardShortcuts: 'Tastaturkürzel (?)',
  23. switchToLight: 'Zum hellen Modus wechseln',
  24. switchToDark: 'Zum dunklen Modus wechseln',
  25. smartSwitches: 'Smart Switches',
  26. logout: 'Abmelden',
  27. },
  28. // Common
  29. common: {
  30. save: 'Speichern',
  31. saving: 'Speichern...',
  32. cancel: 'Abbrechen',
  33. delete: 'Löschen',
  34. edit: 'Bearbeiten',
  35. add: 'Hinzufügen',
  36. close: 'Schließen',
  37. confirm: 'Bestätigen',
  38. loading: 'Lädt...',
  39. error: 'Fehler',
  40. success: 'Erfolg',
  41. warning: 'Warnung',
  42. enabled: 'Aktiviert',
  43. disabled: 'Deaktiviert',
  44. yes: 'Ja',
  45. no: 'Nein',
  46. on: 'An',
  47. off: 'Aus',
  48. all: 'Alle',
  49. none: 'Keine',
  50. search: 'Suchen',
  51. filter: 'Filtern',
  52. sort: 'Sortieren',
  53. refresh: 'Aktualisieren',
  54. download: 'Herunterladen',
  55. upload: 'Hochladen',
  56. actions: 'Aktionen',
  57. status: 'Status',
  58. name: 'Name',
  59. description: 'Beschreibung',
  60. date: 'Datum',
  61. time: 'Zeit',
  62. hours: 'Stunden',
  63. minutes: 'Minuten',
  64. seconds: 'Sekunden',
  65. days: 'Tage',
  66. enable: 'Aktivieren',
  67. disable: 'Deaktivieren',
  68. permissions: 'Berechtigungen',
  69. noPrinters: 'Keine Drucker konfiguriert',
  70. noData: 'Keine Daten verfügbar',
  71. linkNotFound: 'Link nicht gefunden',
  72. required: 'Erforderlich',
  73. optional: 'Optional',
  74. dismiss: 'Schließen',
  75. apply: 'Anwenden',
  76. reset: 'Zurücksetzen',
  77. export: 'Exportieren',
  78. import: 'Importieren',
  79. clear: 'Leeren',
  80. selectAll: 'Alle auswählen',
  81. deselectAll: 'Auswahl aufheben',
  82. noChange: '— Keine Änderung —',
  83. unchanged: 'Unverändert',
  84. unassigned: 'Nicht zugewiesen',
  85. unknown: 'Unbekannt',
  86. unknownError: 'Unbekannter Fehler',
  87. today: 'Heute',
  88. tomorrow: 'Morgen',
  89. asap: 'Sofort',
  90. overdue: 'Überfällig',
  91. now: 'Jetzt',
  92. collapse: 'Einklappen',
  93. expand: 'Ausklappen',
  94. viewArchive: 'Archiv anzeigen',
  95. viewInFileManager: 'Im Dateimanager anzeigen',
  96. addedBy: 'Hinzugefügt von {{username}}',
  97. prints: 'Drucke',
  98. more: '+{{count}} weitere',
  99. ascending: 'Aufsteigend',
  100. descending: 'Absteigend',
  101. printer: 'Drucker',
  102. remove: 'Entfernen',
  103. type: 'Typ',
  104. print: 'Drucken',
  105. rename: 'Umbenennen',
  106. move: 'Verschieben',
  107. create: 'Erstellen',
  108. duplicate: 'Duplizieren',
  109. left: 'Links',
  110. right: 'Rechts',
  111. },
  112. // Printers page
  113. printers: {
  114. title: 'Drucker',
  115. addPrinter: 'Drucker hinzufügen',
  116. editPrinter: 'Drucker bearbeiten',
  117. deletePrinter: 'Drucker löschen',
  118. printerName: 'Druckername',
  119. serialNumber: 'Seriennummer',
  120. ipAddress: 'IP-Adresse / Hostname',
  121. accessCode: 'Zugangscode',
  122. model: 'Modell',
  123. nozzleCount: 'Düsenanzahl',
  124. autoArchive: 'Automatische Archivierung',
  125. status: {
  126. available: 'Verfügbar',
  127. idle: 'Bereit',
  128. printing: 'Druckt',
  129. paused: 'Pausiert',
  130. offline: 'Offline',
  131. error: 'Fehler',
  132. finished: 'Fertig',
  133. unknown: 'Unbekannt',
  134. },
  135. temperatures: {
  136. nozzle: 'Düse',
  137. bed: 'Druckbett',
  138. chamber: 'Kammer',
  139. },
  140. progress: '{{percent}}% abgeschlossen',
  141. timeRemaining: 'Noch {{time}}',
  142. deleteConfirm: 'Möchten Sie "{{name}}" wirklich löschen?',
  143. maintenanceOk: 'Wartung OK',
  144. maintenanceWarning: '{{count}} Warnung',
  145. maintenanceWarning_plural: '{{count}} Warnungen',
  146. maintenanceDue: '{{count}} fällig',
  147. maintenanceDue_plural: '{{count}} fällig',
  148. // Sort options
  149. sort: {
  150. name: 'Name',
  151. status: 'Status',
  152. model: 'Modell',
  153. location: 'Standort',
  154. ascending: 'Aufsteigend sortieren',
  155. descending: 'Absteigend sortieren',
  156. },
  157. // Card size
  158. cardSize: {
  159. small: 'Kleine Karten',
  160. medium: 'Mittlere Karten',
  161. large: 'Große Karten',
  162. extraLarge: 'Extra große Karten',
  163. },
  164. // Controls
  165. hideOffline: 'Offline ausblenden',
  166. nextAvailable: 'Nächster verfügbar',
  167. powerOn: 'Einschalten',
  168. offlinePrintersWithPlugs: 'Offline-Drucker mit Smart-Plugs',
  169. noPrintersConfigured: 'Noch keine Drucker konfiguriert',
  170. // Printer card
  171. readyToPrint: 'Druckbereit',
  172. external: 'Extern',
  173. extL: 'Ext-L',
  174. extR: 'Ext-R',
  175. deleteArchives: 'Druckarchive löschen',
  176. noLabel: 'Keine Bezeichnung',
  177. printPreview: 'Druckvorschau',
  178. width: 'Breite',
  179. height: 'Höhe',
  180. noObjectsFound: 'Keine Objekte gefunden',
  181. objectsLoadedOnPrintStart: 'Objekte werden beim Druckstart geladen',
  182. willBeSkipped: 'Wird übersprungen',
  183. name: 'Name',
  184. serialCannotBeChanged: 'Seriennummer kann nicht geändert werden',
  185. locationHelp: 'Dient zur Gruppierung von Druckern und zum Filtern von Warteschlangenaufträgen',
  186. // WiFi signal strength
  187. wifiSignal: {
  188. veryWeak: 'Sehr schwach',
  189. weak: 'Schwach',
  190. fair: 'Ausreichend',
  191. good: 'Gut',
  192. excellent: 'Ausgezeichnet',
  193. },
  194. // Maintenance
  195. maintenanceUpToDate: 'Alle Wartungen aktuell - Klicken zum Anzeigen',
  196. // Chamber light
  197. chamberLightOn: 'Kammerbeleuchtung einschalten',
  198. chamberLightOff: 'Kammerbeleuchtung ausschalten',
  199. // Files
  200. browseFiles: 'Druckerdateien durchsuchen',
  201. // Smart plug
  202. autoOffAfterPrint: 'Automatisches Ausschalten nach Druck',
  203. autoOffExecuted: 'Auto-off wurde ausgeführt - Drucker einschalten zum Zurücksetzen',
  204. // HMS errors
  205. hmsErrors: 'HMS-Fehler',
  206. viewHmsErrors: '{{count}} HMS-Fehler anzeigen',
  207. // Actions
  208. resume: 'Fortsetzen',
  209. pause: 'Pausieren',
  210. stop: 'Stoppen',
  211. camera: 'Kamera',
  212. skipObject: 'Objekt überspringen',
  213. reconnect: 'Neu verbinden',
  214. mqttDebug: 'MQTT-Debug',
  215. activeNozzle: 'Aktiv: {{nozzle}} Düse',
  216. nozzleRack: 'Düsenhalter',
  217. nozzleDocked: 'Angedockt',
  218. nozzleMounted: 'Montiert',
  219. nozzleActive: 'Aktiv',
  220. nozzleIdle: 'Inaktiv',
  221. nozzleDiameter: 'Durchmesser',
  222. nozzleType: 'Typ',
  223. nozzleStatus: 'Status',
  224. nozzleFilament: 'Filament',
  225. nozzleWear: 'Verschleiß',
  226. nozzleMaxTemp: 'Max Temp',
  227. nozzleSerial: 'Seriennr.',
  228. nozzleHardenedSteel: 'Gehärteter Stahl',
  229. nozzleStainlessSteel: 'Edelstahl',
  230. nozzleTungstenCarbide: 'Wolframkarbid',
  231. nozzleFlow: 'Durchfluss',
  232. nozzleHighFlow: 'High Flow',
  233. nozzleStandardFlow: 'Standard',
  234. // Firmware
  235. firmwareUpdate: 'Firmware-Update',
  236. firmwareInstructions: 'Gehen Sie auf dem Touchscreen des Druckers zu',
  237. firmwareNav: 'Navigieren Sie zu',
  238. settings: 'Einstellungen',
  239. firmware: 'Firmware',
  240. // Discovery
  241. discoverPrinters: 'Drucker entdecken',
  242. searching: 'Suche...',
  243. manualEntry: 'Manuelle Eingabe',
  244. addFromCloud: 'Aus Cloud hinzufügen',
  245. // Toast messages
  246. toast: {
  247. printerDeleted: 'Drucker gelöscht',
  248. printerAdded: 'Drucker hinzugefügt',
  249. printerUpdated: 'Drucker aktualisiert',
  250. failedToDelete: 'Drucker konnte nicht gelöscht werden',
  251. failedToAdd: 'Drucker konnte nicht hinzugefügt werden',
  252. failedToUpdate: 'Drucker konnte nicht aktualisiert werden',
  253. commandSent: 'Befehl gesendet',
  254. failedToSendCommand: 'Befehl konnte nicht gesendet werden',
  255. turnedOn: '{{name}} eingeschaltet',
  256. failedToPowerOn: '{{name}} konnte nicht eingeschaltet werden',
  257. scriptTriggered: 'Skript ausgelöst',
  258. printStopped: 'Druck gestoppt',
  259. printPaused: 'Druck pausiert',
  260. printResumed: 'Druck fortgesetzt',
  261. referenceDeleted: 'Referenz gelöscht',
  262. detectionAreaSaved: 'Erkennungsbereich gespeichert',
  263. failedToRunScript: 'Skript konnte nicht ausgeführt werden',
  264. failedToStopPrint: 'Druck konnte nicht gestoppt werden',
  265. failedToPausePrint: 'Druck konnte nicht pausiert werden',
  266. failedToResumePrint: 'Druck konnte nicht fortgesetzt werden',
  267. failedToControlChamberLight: 'Kammerbeleuchtung konnte nicht gesteuert werden',
  268. failedToUpdateSetting: 'Einstellung konnte nicht aktualisiert werden',
  269. failedToSkipObjects: 'Objekte konnten nicht übersprungen werden',
  270. failedToRereadRfid: 'RFID konnte nicht erneut gelesen werden',
  271. failedToCheckPlate: 'Platte konnte nicht überprüft werden',
  272. failedToUpdateLabel: 'Bezeichnung konnte nicht aktualisiert werden',
  273. failedToDeleteReference: 'Referenz konnte nicht gelöscht werden',
  274. failedToSaveDetectionArea: 'Erkennungsbereich konnte nicht gespeichert werden',
  275. plateCheckEnabled: 'Plattenprüfung aktiviert',
  276. plateCheckDisabled: 'Plattenprüfung deaktiviert',
  277. calibrationSaved: 'Kalibrierung gespeichert!',
  278. calibrationFailed: 'Kalibrierung fehlgeschlagen',
  279. rfidRereadInitiated: 'RFID-Neueinlesen gestartet',
  280. },
  281. // Connection status
  282. connection: {
  283. connected: 'Verbunden',
  284. offline: 'Offline',
  285. },
  286. // Queue info
  287. queue: {
  288. inQueue: '{{count}} Druck in Warteschlange',
  289. inQueue_plural: '{{count}} Drucke in Warteschlange',
  290. },
  291. // Controls section
  292. controls: 'Steuerung',
  293. // RFID
  294. rfid: {
  295. reread: 'RFID neu lesen',
  296. },
  297. // Permissions
  298. permission: {
  299. noAdd: 'Sie haben keine Berechtigung, Drucker hinzuzufügen',
  300. noEdit: 'Sie haben keine Berechtigung, Drucker zu bearbeiten',
  301. noDelete: 'Sie haben keine Berechtigung, Drucker zu löschen',
  302. noControl: 'Sie haben keine Berechtigung, Drucker zu steuern',
  303. noFiles: 'Sie haben keine Berechtigung, auf Druckerdateien zuzugreifen',
  304. noAmsRfid: 'Sie haben keine Berechtigung, AMS-RFID erneut zu lesen',
  305. noSmartPlugControl: 'Sie haben keine Berechtigung, Smart Plugs zu steuern',
  306. noCamera: 'Sie haben keine Berechtigung, Kameras anzuzeigen',
  307. },
  308. // Add/Edit modal
  309. modal: {
  310. addTitle: 'Drucker hinzufügen',
  311. editTitle: 'Drucker bearbeiten',
  312. myPrinter: 'Mein Drucker',
  313. selectModel: 'Modell auswählen...',
  314. locationGroup: 'Standort / Gruppe (optional)',
  315. locationPlaceholder: 'z.B. Werkstatt, Büro, Keller',
  316. autoArchiveLabel: 'Abgeschlossene Drucke automatisch archivieren',
  317. fromPrinterSettings: 'Aus Druckereinstellungen',
  318. modelOptional: 'Modell (optional)',
  319. saveChanges: 'Änderungen speichern',
  320. },
  321. // Skip objects
  322. skipObjects: {
  323. tooltip: 'Objekte überspringen',
  324. onlyWhilePrinting: 'Objekte überspringen (nur während des Drucks)',
  325. requiresMultiple: 'Objekte überspringen (erfordert 2+ Objekte)',
  326. title: 'Objekte überspringen',
  327. matchIdsInfo: 'IDs mit Drucker-Display abgleichen',
  328. printerShowsIds: 'Der Druckerbildschirm zeigt Objekt-IDs auf der Bauplatte',
  329. skipSelected: 'Ausgewählte überspringen',
  330. skipping: 'Überspringe...',
  331. noObjectsSelected: 'Keine Objekte ausgewählt',
  332. selectObjectsToSkip: 'Wählen Sie Objekte aus, die Sie vom aktuellen Druck überspringen möchten',
  333. skipped: 'übersprungen',
  334. objectsSkipped: 'Objekte übersprungen',
  335. activeCount: '{{count}} aktiv',
  336. waitForLayer: 'Warten Sie auf Schicht 2+ zum Überspringen von Objekten (aktuell Schicht {{layer}})',
  337. skip: 'Überspringen',
  338. confirmTitle: 'Objekt überspringen?',
  339. confirmMessage: 'Möchten Sie "{{name}}" wirklich überspringen? Dies kann nicht rückgängig gemacht werden.',
  340. },
  341. // Confirm modals
  342. confirm: {
  343. deleteTitle: 'Drucker löschen',
  344. deleteMessage: 'Möchten Sie "{{name}}" wirklich löschen? Alle Verbindungseinstellungen werden entfernt.',
  345. deleteArchivesNote: 'Der gesamte Druckverlauf für diesen Drucker wird dauerhaft gelöscht.',
  346. keepArchivesNote: 'Der Druckverlauf wird beibehalten, aber nicht mehr mit diesem Drucker verknüpft.',
  347. stopTitle: 'Druck stoppen',
  348. stopMessage: 'Möchten Sie den aktuellen Druck auf "{{name}}" wirklich stoppen? Der Druckauftrag wird abgebrochen.',
  349. stopButton: 'Druck stoppen',
  350. pauseTitle: 'Druck pausieren',
  351. pauseMessage: 'Möchten Sie den aktuellen Druck auf "{{name}}" wirklich pausieren?',
  352. pauseButton: 'Druck pausieren',
  353. resumeTitle: 'Druck fortsetzen',
  354. resumeMessage: 'Möchten Sie den Druck auf "{{name}}" fortsetzen?',
  355. resumeButton: 'Druck fortsetzen',
  356. powerOnTitle: 'Drucker einschalten',
  357. powerOnMessage: 'Möchten Sie die Stromversorgung für "{{name}}" wirklich EINSCHALTEN?',
  358. powerOnButton: 'Einschalten',
  359. powerOffTitle: 'Drucker ausschalten',
  360. powerOffMessage: 'Möchten Sie die Stromversorgung für "{{name}}" wirklich AUSSCHALTEN?',
  361. powerOffWarning: 'WARNUNG: "{{name}}" druckt gerade! Möchten Sie die Stromversorgung wirklich AUSSCHALTEN? Dies unterbricht den Druck und kann den Drucker beschädigen.',
  362. powerOffButton: 'Ausschalten',
  363. },
  364. // Discovery
  365. discovery: {
  366. title: 'Drucker entdecken',
  367. searching: 'Suche...',
  368. scanning: 'Scanne...',
  369. scanProgress: 'Scanne... {{scanned}}/{{total}}',
  370. foundPrinters: '{{count}} Drucker gefunden',
  371. noPrintersFound: 'Keine Drucker gefunden',
  372. noPrintersFoundSubnet: 'Keine Drucker im angegebenen Subnetz gefunden.',
  373. noPrintersFoundNetwork: 'Keine Drucker im Netzwerk gefunden.',
  374. allConfigured: 'Alle erkannten Drucker sind bereits konfiguriert.',
  375. alreadyAdded: 'Bereits hinzugefügt',
  376. select: 'Auswählen',
  377. manualEntry: 'Manuelle Eingabe',
  378. addFromCloud: 'Aus Cloud hinzufügen',
  379. subnetToScan: 'Zu scannendes Subnetz',
  380. dockerNote: 'Docker erkannt. Geben Sie das Subnetz Ihres Druckers in CIDR-Notation ein. Erfordert network_mode: host in docker-compose.yml.',
  381. scanSubnet: 'Subnetz nach Druckern scannen',
  382. discoverNetwork: 'Drucker im Netzwerk suchen',
  383. scanningSubnet: 'Subnetz wird nach Bambu-Druckern gescannt...',
  384. scanningNetwork: 'Netzwerk wird gescannt...',
  385. serialRequired: 'Seriennummer erforderlich',
  386. unknown: 'Unbekannt',
  387. failedToStart: 'Erkennung konnte nicht gestartet werden',
  388. },
  389. // Filaments section
  390. filaments: 'Filamente',
  391. // Camera
  392. openCameraOverlay: 'Kamera-Overlay öffnen',
  393. openCameraWindow: 'Kamera in neuem Fenster öffnen',
  394. // Firmware
  395. firmwareUpdateAvailable: 'Firmware-Update verfügbar: {{current}} → {{latest}}',
  396. firmwareUpToDate: 'Firmware {{version}} — Aktuell',
  397. firmwareUpdateButton: 'Update',
  398. // Plate detection
  399. plateDetection: {
  400. noPermission: 'Sie haben keine Berechtigung, Drucker zu aktualisieren',
  401. enabledClick: 'Plattenprüfung aktiviert - Klicken zum Deaktivieren',
  402. disabledClick: 'Plattenprüfung deaktiviert - Klicken zum Aktivieren',
  403. manageCalibration: 'Platten-Erkennungskalibrierung verwalten',
  404. calibrationRequired: 'Kalibrierung erforderlich',
  405. calibrationInstructions: 'Bitte stellen Sie sicher, dass die Druckplatte <strong>vollständig leer</strong> ist, und klicken Sie dann auf Kalibrieren.',
  406. calibrationDescription: 'Die Kalibrierung erfasst ein Referenzbild der leeren Platte. Zukünftige Prüfungen vergleichen mit dieser Referenz, um Objekte zu erkennen.',
  407. calibrationTip: '<strong>Tipp:</strong> Sie können bis zu 5 Kalibrierungen für verschiedene Platten speichern. Das System verwendet automatisch die beste Übereinstimmung bei der Prüfung.',
  408. plateEmpty: 'Platte erscheint leer',
  409. objectsDetected: 'Objekte auf Platte erkannt',
  410. confidence: 'Konfidenz',
  411. difference: 'Differenz',
  412. analysisPreview: 'Analysevorschau:',
  413. analysisLegend: 'Grüner Rahmen = Erkennungsbereich, Rote Überlagerung = Unterschiede zur Kalibrierung',
  414. savedReferences: 'Gespeicherte Referenzen ({{count}}/{{max}})',
  415. deleteReference: 'Referenz löschen',
  416. labelPlaceholder: 'Bezeichnung...',
  417. clickToEdit: '{{label}} - Zum Bearbeiten klicken',
  418. clickToAddLabel: 'Zum Hinzufügen einer Bezeichnung klicken',
  419. },
  420. // Fans
  421. fans: {
  422. partCooling: 'Bauteilkühlung',
  423. auxiliary: 'Hilfsventilator',
  424. chamber: 'Kammerventilator',
  425. },
  426. // HMS errors
  427. clickToViewHmsErrors: 'Klicken, um HMS-Fehler anzuzeigen',
  428. estimatedCompletion: 'Geschätzte Fertigstellungszeit',
  429. slotOptions: 'Slot-Optionen',
  430. // Firmware modal
  431. firmwareModal: {
  432. title: 'Firmware-Update',
  433. titleUpToDate: 'Firmware-Info',
  434. currentVersion: 'Aktuell:',
  435. latestVersion: 'Neueste:',
  436. releaseNotes: 'Versionshinweise',
  437. checkingPrereqs: 'Prüfe Voraussetzungen...',
  438. sdCardReady: 'SD-Karte bereit. Klicken Sie unten, um die Firmware hochzuladen.',
  439. uploadedSuccess: 'Firmware auf SD-Karte hochgeladen!',
  440. applyInstructions: 'So wenden Sie das Update auf Ihrem Drucker an:',
  441. step1: 'Gehen Sie auf dem Touchscreen des Druckers zu <strong>Einstellungen</strong>',
  442. step2: 'Navigieren Sie zu <strong>Firmware</strong>',
  443. step3: 'Wählen Sie <strong>Update von SD-Karte</strong>',
  444. step4: 'Das Update dauert 10-20 Minuten',
  445. done: 'Fertig',
  446. starting: 'Starte...',
  447. uploadFirmware: 'Firmware hochladen',
  448. uploadFailed: 'Upload fehlgeschlagen: {{error}}',
  449. uploadedToast: 'Firmware hochgeladen! Starten Sie das Update vom Druckerbildschirm.',
  450. },
  451. accessCodePlaceholder: 'Leer lassen, um den aktuellen zu behalten',
  452. // ROI editor
  453. roi: {
  454. title: 'Erkennungsbereich (ROI)',
  455. xStart: 'X-Start',
  456. yStart: 'Y-Start',
  457. width: 'Breite',
  458. height: 'Höhe',
  459. instruction: 'Passen Sie den Erkennungsbereich an, um sich auf die Druckplatte zu konzentrieren. Der grüne Rahmen in der Vorschau zeigt den aktuellen Bereich.',
  460. },
  461. developerModeWarning: 'Der Entwickler-LAN-Modus ist nicht aktiviert auf: {{names}}. Einige Funktionen funktionieren möglicherweise nicht.',
  462. howToEnable: 'Aktivieren',
  463. },
  464. // Archives page
  465. archives: {
  466. title: 'Druckarchiv',
  467. searchPlaceholder: 'Archiv durchsuchen...',
  468. filterByPrinter: 'Nach Drucker filtern',
  469. filterByStatus: 'Nach Status filtern',
  470. sortBy: 'Sortieren nach',
  471. sortNewest: 'Neueste zuerst',
  472. sortOldest: 'Älteste zuerst',
  473. sortName: 'Name',
  474. sortDuration: 'Dauer',
  475. sortLargest: 'Größte zuerst',
  476. sortSmallest: 'Kleinste zuerst',
  477. sortSize: 'Größe',
  478. noArchives: 'Keine Archive gefunden',
  479. noArchivesSearch: 'Keine Archive entsprechen Ihrer Suche',
  480. noArchivesYet: 'Noch keine Archive',
  481. loadingArchives: 'Lade Archive...',
  482. releaseToUpload: 'Loslassen zum Hochladen',
  483. showAll: 'Alle anzeigen',
  484. showFavoritesOnly: 'Nur Favoriten anzeigen',
  485. gridView: 'Rasteransicht',
  486. listView: 'Listenansicht',
  487. calendarView: 'Kalenderansicht',
  488. logView: 'Druckprotokoll',
  489. manageTags: 'Tags verwalten',
  490. showFailedPrints: 'Fehlgeschlagene Drucke anzeigen',
  491. hideFailedPrints: 'Fehlgeschlagene Drucke ausblenden',
  492. printTime: 'Druckzeit',
  493. filamentUsed: 'Verbrauchtes Filament',
  494. cost: 'Kosten',
  495. reprint: 'Drucken',
  496. preview: 'Vorschau',
  497. deleteArchive: 'Archiv löschen',
  498. deleteConfirm: 'Möchten Sie dieses Archiv wirklich löschen?',
  499. favorite: 'Favorit',
  500. unfavorite: 'Aus Favoriten entfernen',
  501. viewDetails: 'Details anzeigen',
  502. status: {
  503. completed: 'Abgeschlossen',
  504. failed: 'Fehlgeschlagen',
  505. stopped: 'Gestoppt',
  506. },
  507. toast: {
  508. source3mfAttached: 'Quell-3MF angehängt: {{filename}}',
  509. failedUploadSource3mf: 'Fehler beim Hochladen der Quell-3MF',
  510. source3mfRemoved: 'Quell-3MF entfernt',
  511. failedRemoveSource3mf: 'Fehler beim Entfernen der Quell-3MF',
  512. f3dAttached: 'F3D angehängt: {{filename}}',
  513. failedUploadF3d: 'Fehler beim Hochladen der F3D',
  514. f3dRemoved: 'F3D entfernt',
  515. failedRemoveF3d: 'Fehler beim Entfernen der F3D',
  516. timelapseAttached: 'Zeitraffer angehängt: {{filename}}',
  517. timelapseAlreadyAttached: 'Zeitraffer bereits angehängt',
  518. noMatchingTimelapse: 'Kein passender Zeitraffer gefunden',
  519. failedScanTimelapse: 'Fehler beim Suchen nach Zeitraffer',
  520. failedAttachTimelapse: 'Fehler beim Anhängen des Zeitraffers',
  521. timelapseRemoved: 'Zeitraffer entfernt',
  522. failedRemoveTimelapse: 'Fehler beim Entfernen des Zeitraffers',
  523. timelapseUploaded: 'Zeitraffer hochgeladen: {{filename}}',
  524. failedUploadTimelapse: 'Fehler beim Hochladen des Zeitraffers',
  525. archiveDeleted: 'Archiv gelöscht',
  526. failedDeleteArchive: 'Fehler beim Löschen des Archivs',
  527. addedToFavorites: 'Zu Favoriten hinzugefügt',
  528. removedFromFavorites: 'Aus Favoriten entfernt',
  529. projectUpdated: 'Projekt aktualisiert',
  530. failedUpdateProject: 'Fehler beim Aktualisieren des Projekts',
  531. linkCopied: 'Link in die Zwischenablage kopiert',
  532. failedCopyLink: 'Fehler beim Kopieren des Links',
  533. photoDeleted: 'Foto gelöscht',
  534. failedDeletePhoto: 'Fehler beim Löschen des Fotos',
  535. failedDeleteArchives: 'Fehler beim Löschen der Archive',
  536. failedUpdateFavorites: 'Fehler beim Aktualisieren der Favoriten',
  537. exportDownloaded: 'Export heruntergeladen',
  538. exportFailed: 'Export fehlgeschlagen',
  539. },
  540. menu: {
  541. print: 'Drucken',
  542. schedule: 'Planen',
  543. openInBambuStudio: 'Im Slicer öffnen',
  544. slice: 'Slicen',
  545. externalLink: 'Externer Link',
  546. viewOnMakerWorld: 'Auf MakerWorld ansehen',
  547. preview3d: '3D-Vorschau',
  548. viewTimelapse: 'Zeitraffer ansehen',
  549. scanForTimelapse: 'Nach Zeitraffer suchen',
  550. uploadTimelapse: 'Zeitraffer hochladen',
  551. removeTimelapse: 'Zeitraffer entfernen',
  552. downloadSource3mf: 'Quell-3MF herunterladen',
  553. uploadSource3mf: 'Quell-3MF hochladen',
  554. replaceSource3mf: 'Quell-3MF ersetzen',
  555. removeSource3mf: 'Quell-3MF entfernen',
  556. uploadF3d: 'F3D hochladen',
  557. replaceF3d: 'F3D ersetzen',
  558. downloadF3d: 'F3D herunterladen',
  559. removeF3d: 'F3D entfernen',
  560. download: 'Herunterladen',
  561. copyDownloadLink: 'Download-Link kopieren',
  562. qrCode: 'QR-Code',
  563. viewPhotos: 'Fotos ansehen',
  564. viewPhotosCount: 'Fotos ansehen ({{count}})',
  565. projectPage: 'Projektseite',
  566. addToFavorites: 'Zu Favoriten hinzufügen',
  567. removeFromFavorites: 'Aus Favoriten entfernen',
  568. edit: 'Bearbeiten',
  569. goToProject: 'Zum Projekt: {{name}}',
  570. addToProject: 'Zu Projekt hinzufügen',
  571. removeFromProject: 'Aus Projekt entfernen',
  572. loading: 'Laden...',
  573. noProjectsAvailable: 'Keine Projekte verfügbar',
  574. select: 'Auswählen',
  575. deselect: 'Abwählen',
  576. delete: 'Löschen',
  577. },
  578. permission: {
  579. noReprint: 'Sie haben keine Berechtigung, dieses Archiv erneut zu drucken',
  580. noAddToQueue: 'Sie haben keine Berechtigung, zur Warteschlange hinzuzufügen',
  581. noUpdateArchives: 'Sie haben keine Berechtigung, Archive zu aktualisieren',
  582. noUploadFiles: 'Sie haben keine Berechtigung, Dateien hochzuladen',
  583. noDownload: 'Sie haben keine Berechtigung, Archive herunterzuladen',
  584. noCopyLink: 'Sie haben keine Berechtigung, Download-Links zu kopieren',
  585. noDelete: 'Sie haben keine Berechtigung, dieses Archiv zu löschen',
  586. noCreate: 'Sie haben keine Berechtigung, Archive zu erstellen',
  587. },
  588. card: {
  589. previousPlate: 'Vorherige Platte',
  590. nextPlate: 'Nächste Platte',
  591. plateNumber: 'Platte {{index}}',
  592. moreOptions: 'Rechtsklick für mehr Optionen',
  593. addToFavorites: 'Zu Favoriten hinzufügen',
  594. removeFromFavorites: 'Aus Favoriten entfernen',
  595. cancelled: 'abgebrochen',
  596. failed: 'fehlgeschlagen',
  597. duplicate: 'Duplikat',
  598. duplicateTitle: 'Dieses Modell wurde bereits zuvor gedruckt',
  599. openSource3mf: 'Quell-3MF in Bambu Studio öffnen (Rechtsklick für mehr Optionen)',
  600. downloadF3d: 'Fusion 360 Designdatei herunterladen',
  601. viewTimelapse: 'Zeitraffer ansehen',
  602. viewPhoto: '1 Foto ansehen',
  603. viewPhotos: '{{count}} Fotos ansehen',
  604. openFolder: 'Ordner öffnen: {{name}}',
  605. slicedFile: 'Geslicte Datei - druckbereit',
  606. sourceFile: 'Nur Quelldatei - keine AMS-Zuordnung verfügbar',
  607. gcode: 'GCODE',
  608. source: 'QUELLE',
  609. project: 'Projekt: {{name}}',
  610. estimated: 'Geschätzt: {{time}}',
  611. actual: 'Tatsächlich: {{time}}',
  612. accuracy: 'Genauigkeit: {{percent}}%',
  613. filament: '{{weight}}g',
  614. layer: '{{count}} Schicht',
  615. layers: '{{count}} Schichten',
  616. object: '{{count}} Objekt',
  617. objects: '{{count}} Objekte',
  618. slicedFor: 'Geslict für {{model}}',
  619. uploadedBy: 'Hochgeladen von',
  620. noPermissionReprint: 'Sie haben keine Berechtigung, erneut zu drucken',
  621. noFileForReprint: 'Keine 3MF-Datei verfügbar — die Datei konnte beim Aufzeichnen des Drucks nicht vom Drucker heruntergeladen werden',
  622. noPermissionEdit: 'Sie haben keine Berechtigung, Archive zu bearbeiten',
  623. noPermissionDelete: 'Sie haben keine Berechtigung, Archive zu löschen',
  624. reprint: 'Drucken',
  625. schedulePrint: 'Druck planen',
  626. schedule: 'Planen',
  627. openInBambuStudio: 'Im Slicer öffnen',
  628. openInBambuStudioToSlice: 'Im Slicer öffnen zum Slicen',
  629. slice: 'Slicen',
  630. externalLink: 'Externer Link',
  631. makerWorld: 'MakerWorld: {{designer}}',
  632. viewProject: 'Projekt ansehen',
  633. noExternalLink: 'Kein externer Link',
  634. preview3d: '3D-Vorschau',
  635. download: 'Herunterladen',
  636. edit: 'Bearbeiten',
  637. delete: 'Löschen',
  638. },
  639. modal: {
  640. deleteArchive: 'Archiv löschen',
  641. deleteConfirm: 'Möchten Sie "{{name}}" wirklich löschen? Diese Aktion kann nicht rückgängig gemacht werden.',
  642. deleteButton: 'Löschen',
  643. removeSource3mf: 'Quell-3MF entfernen',
  644. removeSource3mfConfirm: 'Möchten Sie die Quell-3MF-Datei wirklich von "{{name}}" entfernen? Die ursprüngliche Slicer-Projektdatei wird gelöscht.',
  645. removeButton: 'Entfernen',
  646. removeF3d: 'F3D entfernen',
  647. removeF3dConfirm: 'Möchten Sie die Fusion 360 Designdatei wirklich von "{{name}}" entfernen?',
  648. removeTimelapse: 'Zeitraffer entfernen',
  649. removeTimelapseConfirm: 'Möchten Sie das Zeitraffervideo wirklich von "{{name}}" entfernen?',
  650. timelapse: '{{name}} - Zeitraffer',
  651. selectTimelapse: 'Zeitraffer auswählen',
  652. selectTimelapseDesc: 'Keine automatische Übereinstimmung gefunden. Wählen Sie den Zeitraffer für diesen Druck:',
  653. deleteArchives: 'Archive löschen',
  654. deleteArchivesConfirm: 'Möchten Sie wirklich {{count}} Archiv(e) löschen? Diese Aktion kann nicht rückgängig gemacht werden.',
  655. deleteCount: '{{count}} löschen',
  656. },
  657. page: {
  658. title: 'Archive',
  659. printsCount: '{{filtered}} von {{total}} Drucken',
  660. dropFilesHere: '.3mf-Dateien hier ablegen',
  661. releaseToUpload: 'Loslassen zum Hochladen',
  662. only3mfSupported: 'Nur .3mf-Dateien werden unterstützt',
  663. close: 'Schließen',
  664. selected: '{{count}} ausgewählt',
  665. selectAll: 'Alle auswählen',
  666. tags: 'Tags',
  667. project: 'Projekt',
  668. favorite: 'Favorit',
  669. delete: 'Löschen',
  670. toggledFavorites: 'Favoriten für {{count}} Archiv(e) umgeschaltet',
  671. failedUpdateFavorites: 'Fehler beim Aktualisieren der Favoriten',
  672. archivesDeleted: '{{count}} Archiv(e) gelöscht',
  673. failedDeleteArchives: 'Fehler beim Löschen der Archive',
  674. photoDeleted: 'Foto gelöscht',
  675. failedDeletePhoto: 'Fehler beim Löschen des Fotos',
  676. },
  677. list: {
  678. name: 'Name',
  679. printer: 'Drucker',
  680. date: 'Datum',
  681. size: 'Größe',
  682. actions: 'Aktionen',
  683. hasTimelapse: 'Hat Zeitraffer',
  684. },
  685. log: {
  686. date: 'Datum',
  687. printName: 'Druckname',
  688. printer: 'Drucker',
  689. user: 'Benutzer',
  690. status: 'Status',
  691. duration: 'Dauer',
  692. filament: 'Filament',
  693. allPrinters: 'Alle Drucker',
  694. allUsers: 'Alle Benutzer',
  695. allStatuses: 'Alle Status',
  696. cancelled: 'Abgebrochen',
  697. skipped: 'Übersprungen',
  698. dateFrom: 'Von',
  699. dateTo: 'Bis',
  700. noEntries: 'Keine Druckprotokolleinträge gefunden',
  701. showing: '{{count}} von {{total}} Einträgen',
  702. rowsPerPage: 'Zeilen',
  703. page: 'Seite',
  704. prev: 'Zurück',
  705. next: 'Weiter',
  706. clearLog: 'Protokoll löschen',
  707. clearLogTitle: 'Druckprotokoll löschen',
  708. clearLogConfirm: 'Alle Druckprotokolleinträge werden dauerhaft gelöscht. Archive und Warteschlangeneinträge sind nicht betroffen. Diese Aktion kann nicht rückgängig gemacht werden. Sind Sie sicher?',
  709. clearLogButton: 'Alle löschen',
  710. cleared: '{{count}} Protokolleinträge gelöscht',
  711. clearFailed: 'Druckprotokoll konnte nicht gelöscht werden',
  712. },
  713. },
  714. // Queue page
  715. queue: {
  716. title: 'Druckwarteschlange',
  717. subtitle: 'Planen und verwalten Sie Ihre Druckaufträge',
  718. addToQueue: 'Zur Warteschlange hinzufügen',
  719. // Print modal
  720. print: 'Drucken',
  721. reprint: 'Erneut drucken',
  722. schedulePrint: 'Druck planen',
  723. editQueueItem: 'Warteschlangeneintrag bearbeiten',
  724. printToPrinters: 'Auf {{count}} Druckern drucken',
  725. queueToPrinters: 'Zu {{count}} Druckern hinzufügen',
  726. sending: 'Wird gesendet...',
  727. sendingProgress: 'Sende {{current}}/{{total}}...',
  728. adding: 'Wird hinzugefügt...',
  729. addingProgress: 'Füge hinzu {{current}}/{{total}}...',
  730. savingProgress: 'Speichere {{current}}/{{total}}...',
  731. clearQueue: 'Warteschlange leeren',
  732. clearHistory: 'Verlauf löschen',
  733. emptyQueue: 'Warteschlange ist leer',
  734. position: 'Position',
  735. scheduledTime: 'Geplante Zeit',
  736. moveUp: 'Nach oben',
  737. moveDown: 'Nach unten',
  738. startNow: 'Jetzt starten',
  739. printingInProgress: 'Druck läuft...',
  740. viewArchive: 'Archiv anzeigen',
  741. viewInFileManager: 'Im Dateimanager anzeigen',
  742. itemCount: '{{count}} Element',
  743. itemCount_plural: '{{count}} Elemente',
  744. dragToReorder: 'Ziehen zum Neuordnen (nur Sofort)',
  745. reorderHint: 'Position betrifft nur Sofort-Elemente. Geplante Elemente werden zur festgelegten Zeit ausgeführt.',
  746. addedBy: 'Hinzugefügt von {{name}}',
  747. nextInQueue: 'Nächster in der Warteschlange',
  748. clearPlate: 'Druckplatte freigeben & Nächsten starten',
  749. clearPlateSuccess: 'Druckplatte freigegeben — bereit für nächsten Druck',
  750. plateReady: 'Druckplatte freigegeben — bereit für nächsten Druck',
  751. plateNumber: 'Platte {{index}}',
  752. // Sections
  753. sections: {
  754. currentlyPrinting: 'Aktuell druckend',
  755. queued: 'In Warteschlange',
  756. history: 'Verlauf',
  757. },
  758. // Status
  759. status: {
  760. pending: 'Ausstehend',
  761. waiting: 'Wartend',
  762. printing: 'Druckt',
  763. paused: 'Pausiert',
  764. completed: 'Abgeschlossen',
  765. failed: 'Fehlgeschlagen',
  766. skipped: 'Übersprungen',
  767. cancelled: 'Abgebrochen',
  768. },
  769. // Summary cards
  770. summary: {
  771. printing: 'Druckt',
  772. queued: 'In Warteschlange',
  773. totalTime: 'Gesamte Wartezeit',
  774. totalWeight: 'Gesamtgewicht der Warteschlange',
  775. history: 'Verlauf',
  776. },
  777. // Filters
  778. filter: {
  779. allPrinters: 'Alle Drucker',
  780. unassigned: 'Nicht zugewiesen',
  781. allStatus: 'Alle Status',
  782. allLocations: 'Alle Standorte',
  783. any: 'Beliebig',
  784. },
  785. // Sort
  786. sort: {
  787. byPosition: 'Nach Position sortieren',
  788. byName: 'Nach Name sortieren',
  789. byPrinter: 'Nach Drucker sortieren',
  790. bySchedule: 'Nach Zeitplan sortieren',
  791. byDate: 'Nach Datum sortieren',
  792. ascendingOldest: 'Aufsteigend (älteste zuerst)',
  793. descendingNewest: 'Absteigend (neueste zuerst)',
  794. },
  795. // Badges
  796. badges: {
  797. staged: 'Bereitgestellt',
  798. requiresPrevious: 'Erfordert vorherigen Erfolg',
  799. autoPowerOff: 'Automatisch ausschalten',
  800. },
  801. // Empty state
  802. empty: {
  803. title: 'Keine Drucke geplant',
  804. description: 'Planen Sie einen Druck von der Archivseite über die Option "Planen" im Kontextmenü oder ziehen Sie Dateien hierher.',
  805. },
  806. // Time
  807. time: {
  808. asap: 'Sofort',
  809. overdue: 'Überfällig',
  810. now: 'Jetzt',
  811. lessThanMinute: 'In weniger als einer Minute',
  812. inMinutes: 'In {{count}} Min',
  813. inHours: 'In {{count}} Stunden',
  814. },
  815. // Actions
  816. actions: {
  817. stopPrint: 'Druck stoppen',
  818. startPrint: 'Druck starten',
  819. requeue: 'Erneut einreihen',
  820. },
  821. // Bulk edit
  822. bulkEdit: {
  823. title: '{{count}} Element bearbeiten',
  824. title_plural: '{{count}} Elemente bearbeiten',
  825. description: 'Nur geänderte Einstellungen werden auf ausgewählte Elemente angewendet.',
  826. printer: 'Drucker',
  827. noChange: '— Keine Änderung —',
  828. queueOptions: 'Warteschlangenoptionen',
  829. staged: 'Bereitgestellt (manueller Start)',
  830. autoPowerOff: 'Nach Druck automatisch ausschalten',
  831. requirePrevious: 'Vorherigen Erfolg erfordern',
  832. printOptions: 'Druckoptionen',
  833. bedLevelling: 'Bett-Nivellierung',
  834. flowCalibration: 'Fluss-Kalibrierung',
  835. vibrationCalibration: 'Vibrations-Kalibrierung',
  836. layerInspection: 'Erste-Schicht-Prüfung',
  837. timelapse: 'Zeitraffer',
  838. useAms: 'AMS verwenden',
  839. applyChanges: 'Änderungen übernehmen',
  840. selectAll: 'Alle auswählen',
  841. deselectAll: 'Auswahl aufheben',
  842. selected: '{{count}} ausgewählt',
  843. editSelected: 'Ausgewählte bearbeiten',
  844. cancelSelected: 'Ausgewählte abbrechen',
  845. },
  846. // Confirmations
  847. confirm: {
  848. cancelTitle: 'Geplanten Druck abbrechen',
  849. cancelMessage: 'Möchten Sie "{{name}}" wirklich abbrechen?',
  850. stopTitle: 'Druck stoppen',
  851. stopMessage: 'Möchten Sie den aktuellen Druck "{{name}}" wirklich stoppen? Der Druckauftrag wird am Drucker abgebrochen.',
  852. removeTitle: 'Aus Verlauf entfernen',
  853. removeMessage: 'Möchten Sie "{{name}}" wirklich aus dem Warteschlangenverlauf entfernen?',
  854. clearHistoryTitle: 'Verlauf löschen',
  855. clearHistoryMessage: 'Möchten Sie alle {{count}} Element(e) aus dem Verlauf entfernen?',
  856. cancelButton: 'Druck abbrechen',
  857. stopButton: 'Druck stoppen',
  858. thisPrint: 'diesen Druck',
  859. thisItem: 'dieses Element',
  860. },
  861. // Toast messages
  862. toast: {
  863. cancelled: 'Warteschlangenelement abgebrochen',
  864. cancelFailed: 'Element konnte nicht abgebrochen werden',
  865. removed: 'Warteschlangenelement entfernt',
  866. removeFailed: 'Element konnte nicht entfernt werden',
  867. stopped: 'Druck gestoppt',
  868. stopFailed: 'Druck konnte nicht gestoppt werden',
  869. released: 'Druck in Warteschlange freigegeben',
  870. startFailed: 'Druck konnte nicht gestartet werden',
  871. reorderFailed: 'Warteschlange konnte nicht neu geordnet werden',
  872. historyCleared: '{{count}} Verlaufselement(e) gelöscht',
  873. clearHistoryFailed: 'Verlauf konnte nicht gelöscht werden',
  874. updateFailed: 'Elemente konnten nicht aktualisiert werden',
  875. bulkCancelled: '{{count}} Element(e) abgebrochen',
  876. bulkCancelFailed: 'Elemente konnten nicht abgebrochen werden',
  877. },
  878. // Permissions
  879. permissions: {
  880. noStopPrint: 'Sie haben keine Berechtigung, Drucke zu stoppen',
  881. noStartPrint: 'Sie haben keine Berechtigung, Drucke zu starten',
  882. noEdit: 'Sie haben keine Berechtigung, dieses Warteschlangenelement zu bearbeiten',
  883. noCancel: 'Sie haben keine Berechtigung, dieses Warteschlangenelement abzubrechen',
  884. noRequeue: 'Sie haben keine Berechtigung, Elemente erneut einzureihen',
  885. noRemove: 'Sie haben keine Berechtigung, dieses Warteschlangenelement zu entfernen',
  886. noClearHistory: 'Sie haben keine Berechtigung, den gesamten Verlauf zu löschen',
  887. noEditItems: 'Sie haben keine Berechtigung, Warteschlangenelemente zu bearbeiten',
  888. noCancelItems: 'Sie haben keine Berechtigung, Warteschlangenelemente abzubrechen',
  889. },
  890. },
  891. backgroundDispatch: {
  892. unknownFile: 'Unbekannte Datei',
  893. unknownPrinter: 'Unbekannter Drucker',
  894. startingPrints: 'Starte Drucke',
  895. progressSummary: '{{complete}}/{{total}} abgeschlossen • Geplant: {{dispatched}} • In Bearbeitung: {{processing}}',
  896. expandDetails: 'Dispatch-Details ausklappen',
  897. collapseDetails: 'Dispatch-Details einklappen',
  898. dismissToast: 'Dispatch-Hinweis schließen',
  899. cancelDispatchJob: 'Dispatch-Job abbrechen',
  900. cancel: 'Abbrechen',
  901. cancelling: 'Wird abgebrochen…',
  902. status: {
  903. dispatched: 'Geplant',
  904. processing: 'In Bearbeitung',
  905. completed: 'Abgeschlossen',
  906. failed: 'Fehlgeschlagen',
  907. cancelled: 'Abgebrochen',
  908. },
  909. toast: {
  910. cancellingUpload: 'Upload wird abgebrochen...',
  911. cancelled: 'Dispatch abgebrochen',
  912. cancelFailed: 'Dispatch konnte nicht abgebrochen werden',
  913. completeWithFailures: 'Background Dispatch abgeschlossen: {{completed}} erfolgreich, {{failed}} fehlgeschlagen',
  914. completeSuccess: 'Background Dispatch abgeschlossen: {{completed}} erfolgreich',
  915. },
  916. },
  917. // Statistics page
  918. stats: {
  919. title: 'Dashboard',
  920. subtitle: 'Widgets zum Neuanordnen ziehen. Auf das Augensymbol klicken zum Ausblenden.',
  921. overview: 'Übersicht',
  922. totalPrints: 'Gesamtdrucke',
  923. successRate: 'Erfolgsrate',
  924. totalPrintTime: 'Gesamtdruckzeit',
  925. printTime: 'Druckzeit',
  926. totalFilament: 'Gesamtverbrauch Filament',
  927. filamentUsed: 'Filamentverbrauch',
  928. filamentCost: 'Filamentkosten',
  929. totalCost: 'Gesamtkosten',
  930. energyUsed: 'Energieverbrauch',
  931. energyCost: 'Energiekosten',
  932. averagePrintTime: 'Durchschnittliche Druckzeit',
  933. printsPerDay: 'Drucke pro Tag',
  934. byPrinter: 'Nach Drucker',
  935. printsByPrinter: 'Drucke nach Drucker',
  936. byMaterial: 'Nach Material',
  937. byMonth: 'Nach Monat',
  938. last7Days: 'Letzte 7 Tage',
  939. last30Days: 'Letzte 30 Tage',
  940. last90Days: 'Letzte 90 Tage',
  941. allTime: 'Gesamt',
  942. // Widgets
  943. quickStats: 'Schnellstatistiken',
  944. printActivity: 'Druckaktivität',
  945. filamentTypes: 'Filamenttypen',
  946. filamentTrends: 'Filamenttrends',
  947. failureAnalysis: 'Fehleranalyse',
  948. timeAccuracy: 'Zeitgenauigkeit',
  949. successful: 'Erfolgreich:',
  950. failed: 'Fehlgeschlagen:',
  951. perfectEstimate: '100% = perfekte Schätzung',
  952. noTimeAccuracyData: 'Noch keine Zeitgenauigkeitsdaten',
  953. noFilamentData: 'Keine Filamentdaten verfügbar',
  954. noPrinterData: 'Keine Druckerdaten verfügbar',
  955. noPrintData: 'Keine Druckdaten verfügbar',
  956. noPrintDataLast30Days: 'Keine Druckdaten in den letzten 30 Tagen',
  957. failureReasons: 'Fehlerursachen',
  958. topFailureReasons: 'Häufigste Fehlerursachen',
  959. failedPrintsCount: '{{failed}} / {{total}} Drucke fehlgeschlagen',
  960. lastWeekRate: 'Letzte Woche: {{rate}}%',
  961. // Actions
  962. resetLayout: 'Layout zurücksetzen',
  963. recalculateCosts: 'Kosten neu berechnen',
  964. recalculateCostsHint: 'Alle Archivkosten mit aktuellen Filamentpreisen neu berechnen',
  965. exportStats: 'Statistiken exportieren',
  966. exportAsCsv: 'Als CSV exportieren',
  967. exportAsExcel: 'Als Excel exportieren',
  968. hiddenCount: '{{count}} ausgeblendet',
  969. // Toast
  970. exportDownloaded: 'Export heruntergeladen',
  971. exportFailed: 'Export fehlgeschlagen',
  972. layoutReset: 'Layout zurückgesetzt',
  973. recalculatedCosts: 'Kosten für {{count}} Archive neu berechnet',
  974. recalculateFailed: 'Kosten konnten nicht neu berechnet werden',
  975. // Loading
  976. loadingStats: 'Statistiken werden geladen...',
  977. // Permissions
  978. noPermissionResetLayout: 'Sie haben keine Berechtigung, das Layout zurückzusetzen',
  979. noPermissionRecalculate: 'Sie haben keine Berechtigung, Kosten neu zu berechnen',
  980. noPrintDataInRange: 'Keine Druckdaten im ausgewählten Zeitraum',
  981. periodFilament: 'Filamentverbrauch',
  982. periodCost: 'Kosten',
  983. avgPerPrint: 'Durchschnitt pro Druck',
  984. usageOverTime: 'Verbrauch im Zeitverlauf',
  985. filamentByWeight: 'Gewicht',
  986. printDuration: 'Druckdauer',
  987. printerUtilization: 'Druckerauslastung',
  988. filamentSuccess: 'Erfolg nach Material',
  989. printHabits: 'Druckgewohnheiten',
  990. printTimeOfDay: 'Druck-Tageszeit',
  991. colorDistribution: 'Farbverteilung',
  992. noColorData: 'Keine Farbdaten verfügbar',
  993. records: 'Rekorde',
  994. longestPrint: 'Längster Druck',
  995. heaviestPrint: 'Schwerster Druck',
  996. mostExpensivePrint: 'Teuerster Druck',
  997. busiestDay: 'Aktivster Tag',
  998. successStreak: 'Erfolgsserie',
  999. streakPrint: 'aufeinanderfolgender Druck',
  1000. streakPrints: '{{count}} aufeinanderfolgende Drucke',
  1001. printerStats: 'Druckerstatistiken',
  1002. hours: 'Stunden',
  1003. avgPrints: 'Ø Drucke',
  1004. noArchiveData: 'Keine Druckdaten verfügbar',
  1005. filamentByTime: 'Zeitverlauf',
  1006. avgWeight: 'Ø Gewicht',
  1007. avgTime: 'Ø Zeit',
  1008. filamentByPrints: 'Drucke',
  1009. timeframe: {
  1010. 'today': 'Heute',
  1011. 'this-week': 'Diese Woche',
  1012. 'this-month': 'Dieser Monat',
  1013. 'last-7': 'Letzte 7 Tage',
  1014. 'last-30': 'Letzte 30 Tage',
  1015. 'last-90': 'Letzte 90 Tage',
  1016. 'this-year': 'Dieses Jahr',
  1017. 'all-time': 'Gesamt',
  1018. 'custom': 'Benutzerdefiniert',
  1019. from: 'Von',
  1020. to: 'Bis',
  1021. },
  1022. },
  1023. // Maintenance page
  1024. maintenance: {
  1025. title: 'Wartung',
  1026. overview: 'Übersicht',
  1027. allOk: 'Alle Wartungen aktuell',
  1028. dueCount: '{{count}} Aufgabe fällig',
  1029. dueCount_plural: '{{count}} Aufgaben fällig',
  1030. warningCount: '{{count}} Warnung',
  1031. warningCount_plural: '{{count}} Warnungen',
  1032. totalPrintTime: 'Gesamtdruckzeit',
  1033. nextMaintenance: 'Nächste Wartung',
  1034. nothingDue: 'Nichts fällig',
  1035. tasks: 'Aufgaben',
  1036. lastPerformed: 'Zuletzt durchgeführt',
  1037. interval: 'Intervall',
  1038. hoursRemaining: '{{hours}}h verbleibend',
  1039. hoursOverdue: '{{hours}}h überfällig',
  1040. markDone: 'Als erledigt markieren',
  1041. performMaintenance: 'Wartung durchführen',
  1042. history: 'Verlauf',
  1043. noHistory: 'Kein Wartungsverlauf',
  1044. editPrintHours: 'Druckstunden bearbeiten',
  1045. currentHours: 'Aktuelle Stunden',
  1046. // Tabs
  1047. statusTab: 'Status',
  1048. settingsTab: 'Einstellungen',
  1049. // Status
  1050. overdueCount: '{{count}} überfällig',
  1051. dueSoonCount: '{{count}} bald fällig',
  1052. dueSoon: 'Bald fällig',
  1053. allGood: 'Alles in Ordnung',
  1054. overdueBy: 'Überfällig um {{duration}}',
  1055. dueIn: 'Fällig in {{duration}}',
  1056. timeLeft: '{{duration}} verbleibend',
  1057. // Duration formats
  1058. day: '1 Tag',
  1059. days: '{{count}} Tage',
  1060. week: '1 Woche',
  1061. weeks: '{{count}} Wochen',
  1062. month: '1 Monat',
  1063. months: '{{count}} Monate',
  1064. year: '1 Jahr',
  1065. // Settings
  1066. maintenanceTypes: 'Wartungstypen',
  1067. maintenanceTypesDescription: 'Systemtypen und Ihre benutzerdefinierten Wartungsaufgaben',
  1068. addCustomType: 'Benutzerdefinierten Typ hinzufügen',
  1069. restoreDefaults: 'Standardaufgaben wiederherstellen',
  1070. intervalType: 'Intervalltyp',
  1071. intervalValue: 'Intervall ({{type}})',
  1072. icon: 'Symbol',
  1073. documentationLink: 'Dokumentationslink (optional)',
  1074. assignToPrinters: 'Druckern zuweisen',
  1075. selectAtLeastOnePrinter: 'Wählen Sie mindestens einen Drucker',
  1076. addType: 'Typ hinzufügen',
  1077. custom: 'Benutzerdefiniert',
  1078. printHours: 'Druckstunden',
  1079. calendarDays: 'Kalendertage',
  1080. exampleName: 'z.B. HEPA-Filter ersetzen',
  1081. viewDocumentation: 'Dokumentation anzeigen',
  1082. timeBasedInterval: 'Zeitbasiertes Intervall',
  1083. // Interval overrides
  1084. intervalOverrides: 'Intervall-Überschreibungen',
  1085. intervalOverridesDescription: 'Intervalle für bestimmte Drucker anpassen',
  1086. // Printer assignment
  1087. assignedToPrinters: 'Druckern zugewiesen:',
  1088. noPrintersAssigned: 'Keine Drucker zugewiesen',
  1089. addPrinterShort: 'Hinzufügen:',
  1090. printersAssignedClick: '{{count}} Drucker zugewiesen - klicken zum Verwalten',
  1091. removeFromPrinter: 'Von diesem Drucker entfernen',
  1092. // Types
  1093. types: {
  1094. lubricateCarbonRods: 'Karbonstäbe schmieren',
  1095. lubricateRails: 'Linearschienen schmieren',
  1096. cleanNozzle: 'Düse/Hotend reinigen',
  1097. checkBelts: 'Riemenspannung prüfen',
  1098. cleanBuildPlate: 'Druckbett reinigen',
  1099. checkExtruder: 'Extruderzahnräder prüfen',
  1100. checkCooling: 'Kühlungslüfter prüfen',
  1101. generalInspection: 'Allgemeine Inspektion',
  1102. cleanCarbonRods: 'Kohlenstoffstangen reinigen',
  1103. cleanLinearRails: 'Linearschienen reinigen',
  1104. checkPtfeTube: 'PTFE-Schlauch prüfen',
  1105. replaceHepaFilter: 'HEPA-Filter ersetzen',
  1106. replaceCarbonFilter: 'Aktivkohlefilter ersetzen',
  1107. lubricateLeftNozzleRail: 'Linke Düsenschiene schmieren',
  1108. },
  1109. // Toast
  1110. maintenanceComplete: 'Wartung als abgeschlossen markiert',
  1111. typeUpdated: 'Wartungstyp aktualisiert',
  1112. typeDeleted: 'Wartungstyp gelöscht',
  1113. defaultsRestored: '{{count}} Standardaufgabe(n) wiederhergestellt',
  1114. printHoursUpdated: 'Druckstunden aktualisiert',
  1115. printerAssigned: 'Drucker zugewiesen',
  1116. printerRemoved: 'Drucker entfernt',
  1117. // Confirmation
  1118. deleteTypeConfirm: '"{{name}}" löschen?',
  1119. deleteSystemTypeTitle: 'Standard-Wartungsaufgabe löschen?',
  1120. deleteSystemTypeMessage: 'Möchten Sie die Standard-Wartungsaufgabe "{{name}}" wirklich löschen?',
  1121. // Permissions
  1122. noPermissionUpdate: 'Sie haben keine Berechtigung, Wartungselemente zu aktualisieren',
  1123. noPermissionPerform: 'Sie haben keine Berechtigung, Wartungen durchzuführen',
  1124. noPermissionEditTypes: 'Sie haben keine Berechtigung, Wartungstypen zu bearbeiten',
  1125. noPermissionDeleteTypes: 'Sie haben keine Berechtigung, Wartungstypen zu löschen',
  1126. noPermissionEditHours: 'Sie haben keine Berechtigung, Druckstunden zu bearbeiten',
  1127. noPermissionRemovePrinter: 'Sie haben keine Berechtigung, Druckerzuweisungen zu entfernen',
  1128. noPermissionAssignPrinter: 'Sie haben keine Berechtigung, Drucker zuzuweisen',
  1129. noPermissionEditIntervals: 'Sie haben keine Berechtigung, Intervalle zu bearbeiten',
  1130. // Configure link
  1131. configureSettings: 'Wartungstypen und Intervalle konfigurieren',
  1132. },
  1133. // Settings page
  1134. settings: {
  1135. title: 'Einstellungen',
  1136. general: 'Allgemein',
  1137. // Tab names
  1138. tabs: {
  1139. general: 'Allgemein',
  1140. smartPlugs: 'Smart Plugs',
  1141. notifications: 'Benachrichtigungen',
  1142. filament: 'Filament',
  1143. network: 'Netzwerk',
  1144. apiKeys: 'API-Schlüssel',
  1145. virtualPrinter: 'Virtueller Drucker',
  1146. users: 'Authentifizierung',
  1147. backup: 'Sicherung',
  1148. emailAuth: 'E-Mail-Authentifizierung',
  1149. },
  1150. // Email settings
  1151. email: {
  1152. smtpSettings: 'SMTP-Konfiguration',
  1153. smtpHost: 'SMTP-Server',
  1154. smtpPort: 'SMTP-Port',
  1155. security: 'Sicherheit',
  1156. authentication: 'Authentifizierung',
  1157. username: 'Benutzername',
  1158. password: 'Passwort',
  1159. fromEmail: 'Absender-E-Mail',
  1160. fromName: 'Absendername',
  1161. testConnection: 'SMTP-Verbindung testen',
  1162. testRecipient: 'Test-Empfänger-E-Mail',
  1163. sendTest: 'Test-E-Mail senden',
  1164. sending: 'Wird gesendet...',
  1165. save: 'Einstellungen speichern',
  1166. saving: 'Wird gespeichert...',
  1167. advancedAuth: 'Erweiterte Authentifizierung',
  1168. advancedAuthEnabled: 'Erweiterte Authentifizierung ist aktiviert',
  1169. advancedAuthEnabledDesc: 'E-Mail-basierte Benutzerverwaltungsfunktionen sind aktiv. Neue Benutzer erhalten automatisch generierte Passwörter per E-Mail und können ihr Passwort über die Passwort vergessen Funktion zurücksetzen.',
  1170. advancedAuthDisabled: 'Erweiterte Authentifizierung ist deaktiviert',
  1171. advancedAuthDisabledDesc: 'Aktivieren Sie die erweiterte Authentifizierung, um E-Mail-basierte Funktionen für die Benutzerverwaltung zu aktivieren.',
  1172. enable: 'Aktivieren',
  1173. disable: 'Deaktivieren',
  1174. feature1: 'Passwörter werden automatisch generiert und an neue Benutzer gesendet',
  1175. feature2: 'Benutzer können sich mit Benutzername oder E-Mail anmelden',
  1176. feature3: 'Passwort vergessen Funktion ist verfügbar',
  1177. feature4: 'Administratoren können Benutzerpasswörter per E-Mail zurücksetzen',
  1178. // Error messages
  1179. errors: {
  1180. requiredFields: 'Bitte füllen Sie alle Pflichtfelder aus',
  1181. usernameRequired: 'Benutzername ist erforderlich, wenn Authentifizierung aktiviert ist',
  1182. enterTestEmail: 'Bitte geben Sie eine Test-E-Mail-Adresse ein',
  1183. smtpServerAndEmail: 'Bitte füllen Sie SMTP-Server und Absender-E-Mail aus, bevor Sie testen',
  1184. usernamePasswordRequired: 'Benutzername und Passwort sind erforderlich, wenn Authentifizierung aktiviert ist',
  1185. configureSmtpFirst: 'Bitte konfigurieren und testen Sie zuerst die SMTP-Einstellungen',
  1186. },
  1187. // Success messages
  1188. success: {
  1189. settingsSaved: 'SMTP-Einstellungen erfolgreich gespeichert',
  1190. },
  1191. // Security options
  1192. securityOptions: {
  1193. starttls: 'STARTTLS (Port 587)',
  1194. ssl: 'SSL/TLS (Port 465)',
  1195. none: 'Keine (Port 25)',
  1196. },
  1197. // Authentication options
  1198. authOptions: {
  1199. enabled: 'Aktiviert',
  1200. disabled: 'Deaktiviert',
  1201. },
  1202. },
  1203. appearance: 'Erscheinungsbild',
  1204. notifications: 'Benachrichtigungen',
  1205. smartPlugs: 'Smart Plugs',
  1206. spoolman: 'Spoolman',
  1207. updates: 'Updates',
  1208. language: 'Sprache',
  1209. languageDescription: 'Wählen Sie Ihre bevorzugte Sprache',
  1210. theme: 'Design',
  1211. themeLight: 'Hell',
  1212. themeDark: 'Dunkel',
  1213. themeSystem: 'System',
  1214. defaultView: 'Standardansicht',
  1215. defaultViewDescription: 'Seite, die beim Öffnen der App angezeigt wird',
  1216. checkForUpdates: 'Nach Updates suchen',
  1217. autoUpdate: 'Automatische Updates',
  1218. currentVersion: 'Aktuelle Version',
  1219. latestVersion: 'Neueste Version',
  1220. upToDate: 'Sie sind auf dem neuesten Stand',
  1221. updateAvailable: 'Update verfügbar',
  1222. // Notifications
  1223. notificationLanguage: 'Benachrichtigungssprache',
  1224. notificationLanguageDescription: 'Sprache für Push-Benachrichtigungen',
  1225. bedCooledThreshold: 'Bett-Abkühlung Schwellenwert',
  1226. bedCooledThresholdDescription: 'Temperatur, unter der das Bett nach einem Druck als abgekühlt gilt',
  1227. notificationProviders: 'Benachrichtigungsanbieter',
  1228. addProvider: 'Anbieter hinzufügen',
  1229. editProvider: 'Anbieter bearbeiten',
  1230. providerType: 'Anbietertyp',
  1231. testNotification: 'Testbenachrichtigung',
  1232. testSuccess: 'Testbenachrichtigung erfolgreich gesendet',
  1233. testFailed: 'Testbenachrichtigung konnte nicht gesendet werden',
  1234. quietHours: 'Ruhezeiten',
  1235. quietHoursDescription: 'Keine Störungen während dieser Zeiten',
  1236. quietHoursStart: 'Beginn',
  1237. quietHoursEnd: 'Ende',
  1238. events: {
  1239. title: 'Benachrichtigungsereignisse',
  1240. printStart: 'Druck gestartet',
  1241. printComplete: 'Druck abgeschlossen',
  1242. printFailed: 'Druck fehlgeschlagen',
  1243. printStopped: 'Druck gestoppt',
  1244. printProgress: 'Fortschrittsmeldungen',
  1245. printProgressDescription: 'Bei 25%, 50%, 75% benachrichtigen',
  1246. printerOffline: 'Drucker offline',
  1247. printerError: 'Druckerfehler',
  1248. filamentLow: 'Filament niedrig',
  1249. maintenanceDue: 'Wartung fällig',
  1250. maintenanceDueDescription: 'Benachrichtigen, wenn Wartung erforderlich',
  1251. },
  1252. // Smart Plugs
  1253. smartPlug: {
  1254. title: 'Smart Plugs',
  1255. add: 'Smart Plug hinzufügen',
  1256. edit: 'Smart Plug bearbeiten',
  1257. name: 'Name',
  1258. ipAddress: 'IP-Adresse',
  1259. linkedPrinter: 'Verknüpfter Drucker',
  1260. autoOn: 'Automatisch einschalten',
  1261. autoOnDescription: 'Einschalten beim Druckstart',
  1262. autoOff: 'Automatisch ausschalten',
  1263. autoOffDescription: 'Ausschalten nach Druckende',
  1264. offDelay: 'Ausschaltverzögerung',
  1265. offDelayMinutes: 'Minuten nach Druck',
  1266. offDelayTemp: 'Wenn Düse unter Temperatur',
  1267. currentState: 'Aktueller Status',
  1268. turnOn: 'Einschalten',
  1269. turnOff: 'Ausschalten',
  1270. },
  1271. // Filament Tracking Mode
  1272. filamentTracking: 'Filament-Verfolgung',
  1273. filamentTrackingDesc: 'Wählen Sie, wie Sie Ihre Filamentspulen verfolgen möchten. Sie können das integrierte Inventar oder einen externen Spoolman-Server verwenden.',
  1274. trackingModeBuiltIn: 'Integriertes Inventar',
  1275. trackingModeBuiltInDesc: 'RFID-Erkennung und Verbrauchserfassung inklusive',
  1276. trackingModeSpoolmanDesc: 'Externer Filament-Management-Server',
  1277. builtInFeatureRfid: 'Erkennt automatisch Bambu Lab RFID-Spulen im AMS',
  1278. builtInFeatureUsage: 'Erfasst den Filamentverbrauch pro Druck',
  1279. builtInFeatureCatalog: 'Spulen, Farben und K-Faktor-Profile verwalten',
  1280. builtInFeatureThirdParty: 'Drittanbieter-Spulen können Inventarspulen zugewiesen werden',
  1281. amsSyncButton: 'Gewichte vom AMS synchronisieren',
  1282. amsSyncTitle: 'Spulengewichte vom AMS synchronisieren',
  1283. amsSyncMessage: 'Alle Inventar-Spulengewichte werden mit den aktuellen AMS-Restwerten der verbundenen Drucker überschrieben. Verwenden Sie dies zur Wiederherstellung beschädigter Gewichtsdaten. Drucker müssen online sein.',
  1284. amsSyncing: 'Synchronisiere...',
  1285. amsSyncSuccess: '{{synced}} Spule(n) synchronisiert, {{skipped}} übersprungen',
  1286. amsSyncError: 'Synchronisierung der Gewichte vom AMS fehlgeschlagen',
  1287. // Spoolman settings
  1288. spoolmanUrl: 'Spoolman URL',
  1289. spoolmanUrlHint: 'URL Ihres Spoolman-Servers (z.B. http://localhost:7912)',
  1290. spoolmanConnected: 'Verbunden',
  1291. spoolmanDisconnected: 'Nicht verbunden',
  1292. status: 'Status',
  1293. connect: 'Verbinden',
  1294. disconnect: 'Trennen',
  1295. howSyncWorks: 'So funktioniert die Synchronisierung',
  1296. syncInfoRfidOnly: 'Nur offizielle Bambu Lab Spulen mit RFID werden synchronisiert',
  1297. syncInfoAutoCreate: 'Neue Spulen werden bei der ersten Synchronisierung automatisch in Spoolman erstellt',
  1298. syncInfoThirdPartySkipped: 'Nicht-Bambu-Lab-Spulen (Drittanbieter, nachgefüllt) werden übersprungen',
  1299. linkingExistingSpools: 'Vorhandene Spulen verknüpfen',
  1300. linkingExistingSpoolsDesc: 'Um vorhandene Spoolman-Spulen mit Ihrem AMS zu verknüpfen, fahren Sie über einen AMS-Slot und klicken Sie auf "Mit Spoolman verknüpfen".',
  1301. syncMode: 'Synchronisierungsmodus',
  1302. syncModeAuto: 'Automatisch',
  1303. syncModeManual: 'Nur manuell',
  1304. syncModeAutoDesc: 'AMS-Daten werden automatisch synchronisiert, wenn Änderungen erkannt werden',
  1305. syncModeManualDesc: 'Nur bei manueller Auslösung synchronisieren',
  1306. syncAmsData: 'AMS-Daten synchronisieren',
  1307. syncAmsDataDesc: 'AMS-Daten des Druckers manuell mit Spoolman synchronisieren',
  1308. allPrinters: 'Alle Drucker',
  1309. // Default printer
  1310. noDefaultPrinter: 'Kein Standard (jedes Mal fragen)',
  1311. // Sidebar
  1312. sidebarOrder: 'Seitenleisten-Reihenfolge',
  1313. // Camera
  1314. saveThumbnails: 'Vorschaubilder speichern',
  1315. captureFinishPhoto: 'Abschlussfoto aufnehmen',
  1316. noPrintersConfigured: 'Keine Drucker konfiguriert',
  1317. // Archive settings
  1318. archiveMode: {
  1319. always: 'Immer Archiveintrag erstellen',
  1320. never: 'Nie Archiveintrag erstellen',
  1321. ask: 'Jedes Mal fragen',
  1322. },
  1323. // Updates
  1324. checkForUpdatesLabel: 'Nach Updates suchen',
  1325. checkPrinterFirmware: 'Drucker-Firmware prüfen',
  1326. includeBetaUpdates: 'Beta-Versionen einschließen',
  1327. includeBetaUpdatesDesc: 'Über Beta- und Vorabversionen bei der Updateprüfung benachrichtigen',
  1328. // Queue
  1329. enableRetry: 'Wiederholung aktivieren',
  1330. // Home Assistant
  1331. homeAssistantDescription: 'Smart Plugs über Home Assistant steuern',
  1332. environmentManagedLabel: '(Umgebungsvariable)',
  1333. autoEnabledViaEnv: 'Automatisch über Umgebungsvariablen aktiviert',
  1334. urlFromEnvReadOnly: 'Wert wird über HA_URL Umgebungsvariable gesetzt (schreibgeschützt)',
  1335. tokenFromEnvReadOnly: 'Wert wird über HA_TOKEN Umgebungsvariable gesetzt (schreibgeschützt)',
  1336. // MQTT
  1337. mqttConnectedTo: 'Verbunden mit',
  1338. // Prometheus
  1339. prometheusDescription: 'Druckerdaten im Prometheus-Format bereitstellen',
  1340. // Smart plugs empty state
  1341. noSmartPlugsTitle: 'Keine Smart Plugs konfiguriert',
  1342. noSmartPlugsDescription: 'Fügen Sie einen Tasmota-basierten Smart Plug hinzu, um den Energieverbrauch zu verfolgen und die Stromsteuerung zu automatisieren.',
  1343. // Notifications empty state
  1344. noProvidersTitle: 'Keine Anbieter konfiguriert',
  1345. noProvidersDescription: 'Fügen Sie einen Anbieter hinzu, um Benachrichtigungen zu erhalten.',
  1346. noTemplatesAvailable: 'Keine Vorlagen verfügbar. Starten Sie das Backend neu, um Standardvorlagen zu laden.',
  1347. // API permissions
  1348. apiPermissionView: 'Druckerstatus und Warteschlange anzeigen',
  1349. apiPermissionEdit: 'Elemente zur Druckwarteschlange hinzufügen und entfernen',
  1350. // API keys
  1351. apiKeysEmptyTitle: 'Keine API-Schlüssel',
  1352. apiKeysEmptyDescription: 'Erstellen Sie einen API-Schlüssel zur Integration mit externen Diensten.',
  1353. // Users
  1354. noUsersFound: 'Keine Benutzer gefunden',
  1355. noGroupsFound: 'Keine Gruppen gefunden',
  1356. noGroupsAvailable: 'Keine Gruppen verfügbar',
  1357. passwordsDoNotMatch: 'Passwörter stimmen nicht überein',
  1358. systemGroupWarning: 'System-Gruppennamen können nicht geändert werden',
  1359. // Auth disabled
  1360. authDisabledTitle: 'Authentifizierung ist deaktiviert',
  1361. authDisabledFeature1: 'Anmeldung zum Zugriff auf das System erforderlich',
  1362. authDisabledFeature2: 'Mehrere Benutzer mit gruppenbasierten Berechtigungen erstellen',
  1363. authDisabledFeature3: 'Zugriff mit über 50 granularen Berechtigungen steuern',
  1364. // User deletion
  1365. userHasCreated: 'Dieser Benutzer hat erstellt:',
  1366. userItemsQuestion: 'Was möchten Sie mit diesen Elementen tun?',
  1367. deleteUserConfirm: 'Möchten Sie diesen Benutzer wirklich löschen?',
  1368. actionCannotBeUndone: 'Diese Aktion kann nicht rückgängig gemacht werden.',
  1369. // Smart plugs
  1370. addFirstSmartPlug: 'Ersten Smart Plug hinzufügen',
  1371. // Notifications
  1372. providers: 'Anbieter',
  1373. log: 'Protokoll',
  1374. testAll: 'Alle testen',
  1375. testResults: 'Testergebnisse',
  1376. testPassedCount: '{{count}} bestanden',
  1377. testFailedCount: '{{count}} fehlgeschlagen',
  1378. messageTemplates: 'Nachrichtenvorlagen',
  1379. messageTemplatesDescription: 'Passen Sie Benachrichtigungen für jedes Ereignis an.',
  1380. // API Keys section
  1381. apiKeys: 'API-Schlüssel',
  1382. apiKeysDescription: 'Erstellen Sie API-Schlüssel für externe Integrationen und Webhooks.',
  1383. createKey: 'Schlüssel erstellen',
  1384. apiKeyCreated: 'API-Schlüssel erfolgreich erstellt',
  1385. apiKeyCopyWarning: 'Kopieren Sie diesen Schlüssel jetzt - er wird nicht mehr angezeigt!',
  1386. useInApiBrowser: 'Im API-Browser verwenden',
  1387. createNewApiKey: 'Neuen API-Schlüssel erstellen',
  1388. keyName: 'Schlüsselname',
  1389. keyNamePlaceholder: 'z.B. Home Assistant, OctoPrint',
  1390. readStatus: 'Status lesen',
  1391. readStatusDescription: 'Druckerstatus und Warteschlange anzeigen',
  1392. manageQueue: 'Warteschlange verwalten',
  1393. manageQueueDescription: 'Elemente zur Druckwarteschlange hinzufügen und entfernen',
  1394. controlPrinter: 'Drucker steuern',
  1395. controlPrinterDescription: 'Drucke pausieren, fortsetzen und stoppen',
  1396. unnamedKey: 'Unbenannter Schlüssel',
  1397. lastUsed: 'Zuletzt verwendet',
  1398. read: 'Lesen',
  1399. control: 'Steuern',
  1400. createFirstKey: 'Ersten Schlüssel erstellen',
  1401. webhookEndpoints: 'Webhook-Endpunkte',
  1402. webhookApiKeyHint: 'Verwenden Sie Ihren API-Schlüssel im X-API-Key-Header.',
  1403. webhook: {
  1404. getAllStatus: 'Alle Druckerstatus abrufen',
  1405. getSpecificStatus: 'Spezifischen Druckerstatus abrufen',
  1406. addToQueue: 'Zur Druckwarteschlange hinzufügen',
  1407. pausePrint: 'Druck pausieren',
  1408. resumePrint: 'Druck fortsetzen',
  1409. stopPrint: 'Druck stoppen',
  1410. },
  1411. apiBrowser: 'API-Browser',
  1412. apiBrowserDescription: 'Erkunden und testen Sie alle verfügbaren API-Endpunkte.',
  1413. apiKeyForTesting: 'API-Schlüssel zum Testen',
  1414. apiKeyPlaceholder: 'Fügen Sie hier Ihren API-Schlüssel ein, um authentifizierte Endpunkte zu testen...',
  1415. apiKeyHint: 'Dieser Schlüssel wird als X-API-Key-Header mit Anfragen gesendet.',
  1416. deleteApiKeyTitle: 'API-Schlüssel löschen',
  1417. deleteApiKeyMessage: 'Möchten Sie diesen API-Schlüssel wirklich löschen? Alle Integrationen, die diesen Schlüssel verwenden, funktionieren nicht mehr.',
  1418. deleteKey: 'Schlüssel löschen',
  1419. // Filament tab
  1420. amsDisplayThresholds: 'AMS-Anzeigeschwellenwerte',
  1421. amsThresholdsDescription: 'Konfigurieren Sie Farbschwellenwerte für AMS-Feuchtigkeits- und Temperaturanzeigen.',
  1422. humidity: 'Luftfeuchtigkeit',
  1423. goodGreen: 'Gut (grün)',
  1424. fairOrange: 'Mittel (orange)',
  1425. aboveFairBad: 'Über dem mittleren Schwellenwert wird rot angezeigt (schlecht)',
  1426. temperature: 'Temperatur',
  1427. goodBlue: 'Gut (blau)',
  1428. aboveFairHot: 'Über dem mittleren Schwellenwert wird rot angezeigt (heiß)',
  1429. historyRetention: 'Verlaufsaufbewahrung',
  1430. keepSensorHistory: 'Sensorverlauf behalten für',
  1431. historyRetentionDescription: 'Ältere Feuchtigkeits- und Temperaturdaten werden automatisch gelöscht',
  1432. printModal: 'Druckdialog',
  1433. expandCustomMapping: 'Benutzerdefinierte Zuordnung standardmäßig erweitern',
  1434. expandCustomMappingDescription: 'Bei Druck auf mehrere Drucker die AMS-Zuordnung pro Drucker erweitert anzeigen',
  1435. // User management
  1436. authentication: 'Authentifizierung',
  1437. authEnabledDescription: 'Ihre Instanz ist mit Benutzerauthentifizierung gesichert',
  1438. authDisabledDescription: 'Aktivieren Sie die Anmeldepflicht und verwalten Sie den Benutzerzugriff',
  1439. authDisabledMessage: 'Aktivieren Sie die Authentifizierung, um Benutzerkonten zu erstellen, Berechtigungen zu verwalten und Ihre Bambuddy-Instanz zu sichern.',
  1440. enableAuthentication: 'Authentifizierung aktivieren',
  1441. currentUser: 'Aktueller Benutzer',
  1442. changePassword: 'Passwort ändern',
  1443. admin: 'Admin',
  1444. users: 'Benutzer',
  1445. addUser: 'Benutzer hinzufügen',
  1446. groups: 'Gruppen',
  1447. addGroup: 'Gruppe hinzufügen',
  1448. system: 'System',
  1449. noDescription: 'Keine Beschreibung',
  1450. userCount: '{{count}} Benutzer',
  1451. permissionCount: '{{count}} Berechtigungen',
  1452. createUser: 'Benutzer erstellen',
  1453. username: 'Benutzername',
  1454. enterUsername: 'Benutzername eingeben',
  1455. password: 'Passwort',
  1456. enterPassword: 'Passwort eingeben (min. 6 Zeichen)',
  1457. confirmPassword: 'Passwort bestätigen',
  1458. confirmPasswordPlaceholder: 'Passwort bestätigen',
  1459. // Title tooltips
  1460. viewReleaseOnGitHub: 'Release auf GitHub anzeigen',
  1461. turnAllPlugsOn: 'Alle Stecker einschalten',
  1462. turnAllPlugsOff: 'Alle Stecker ausschalten',
  1463. // Modal: Clear logs
  1464. clearNotificationLogs: 'Benachrichtigungsprotokolle löschen',
  1465. clearLogsMessage: 'Dadurch werden alle Benachrichtigungsprotokolle, die älter als 30 Tage sind, dauerhaft gelöscht. Diese Aktion kann nicht rückgängig gemacht werden.',
  1466. clearLogs: 'Protokolle löschen',
  1467. // Modal: Reset UI
  1468. resetUiPreferences: 'UI-Einstellungen zurücksetzen',
  1469. resetUiPreferencesMessage: 'Dadurch werden alle UI-Einstellungen auf Standardwerte zurückgesetzt: Seitenleisten-Reihenfolge, Theme, Dashboard-Layout, Ansichtsmodi und Sortiereinstellungen. Ihre Drucker, Archive und Servereinstellungen werden NICHT beeinträchtigt. Die Seite wird nach dem Löschen neu geladen.',
  1470. resetPreferences: 'Einstellungen zurücksetzen',
  1471. // Modal: Delete group
  1472. deleteGroupTitle: 'Gruppe löschen',
  1473. deleteGroupMessage: 'Möchten Sie diese Gruppe wirklich löschen? Benutzer in dieser Gruppe verlieren diese Berechtigungen.',
  1474. deleteGroup: 'Gruppe löschen',
  1475. // Modal: Disable auth
  1476. disableAuthenticationTitle: 'Authentifizierung deaktivieren',
  1477. disableAuthenticationMessage: 'Möchten Sie die Authentifizierung wirklich deaktivieren? Dadurch wird Ihre Bambuddy-Instanz ohne Anmeldung zugänglich. Alle Benutzer bleiben in der Datenbank, aber die Authentifizierung wird deaktiviert.',
  1478. disableAuthentication: 'Authentifizierung deaktivieren',
  1479. // Additional settings
  1480. configureBambuddy: 'Bambuddy konfigurieren',
  1481. systemDefault: 'Systemstandard',
  1482. archiveSettings: 'Archiv-Einstellungen',
  1483. newWindow: 'Neues Fenster',
  1484. embeddedOverlay: 'Eingebettetes Overlay',
  1485. preferredSlicer: 'Bevorzugter Slicer',
  1486. preferredSlicerDescription: 'Wähle die Slicer-Anwendung zum Öffnen von Dateien',
  1487. externalCameras: 'Externe Kameras',
  1488. costTracking: 'Kostenverfolgung',
  1489. printsOnly: 'Nur Drucke',
  1490. totalConsumption: 'Gesamtverbrauch',
  1491. dataManagement: 'Datenverwaltung',
  1492. storageUsage: 'Speichernutzung',
  1493. storageUsageDescription: 'Aufschlüsselung der Datennutzung nach Kategorie',
  1494. storageUsageTotal: 'Gesamt',
  1495. storageUsageErrors: 'Fehler',
  1496. storageUsageOtherBreakdown: 'Sonstiges (enthält statische Assets, Skripte und Konfigurationsdateien)',
  1497. storageUsageSystem: 'System',
  1498. storageUsageData: 'Daten',
  1499. storageUsageUnavailable: 'Speichernutzungsinformationen nicht verfügbar',
  1500. clearNotificationLogsDescription: 'Benachrichtigungsprotokolle älter als 30 Tage löschen',
  1501. resetUiPreferencesDescription: 'Seitenleisten-Reihenfolge, Theme, Ansichtsmodi und Layout-Einstellungen zurücksetzen. Drucker, Archive und Einstellungen werden nicht beeinflusst.',
  1502. enableHomeAssistant: 'Home Assistant aktivieren',
  1503. enableMqtt: 'MQTT aktivieren',
  1504. useTls: 'TLS verwenden',
  1505. enableMetricsEndpoint: 'Metrik-Endpunkt aktivieren',
  1506. availableMetrics: 'Verfügbare Metriken',
  1507. editUser: 'Benutzer bearbeiten',
  1508. deleteUserTitle: 'Benutzer löschen',
  1509. groupName: 'Gruppenname',
  1510. // Placeholders
  1511. leaveEmptyForAnonymous: 'Leer lassen für anonym',
  1512. leaveEmptyForNoAuth: 'Leer lassen für keine Authentifizierung',
  1513. enterNewPassword: 'Neues Passwort eingeben',
  1514. confirmNewPassword: 'Neues Passwort bestätigen',
  1515. enterGroupName: 'Gruppenname eingeben',
  1516. enterDescriptionOptional: 'Beschreibung eingeben (optional)',
  1517. enterCurrentPassword: 'Aktuelles Passwort eingeben',
  1518. enterNewPasswordMin6: 'Neues Passwort eingeben (min. 6 Zeichen)',
  1519. toast: {
  1520. keyCopied: 'Schlüssel in Zwischenablage kopiert',
  1521. copyFailed: 'Schlüssel konnte nicht kopiert werden',
  1522. keyAddedToBrowser: 'Schlüssel zum API-Browser hinzugefügt',
  1523. clearLogsFailed: 'Protokolle konnten nicht gelöscht werden',
  1524. uiPreferencesReset: 'UI-Einstellungen zurückgesetzt. Wird neu geladen...',
  1525. authDisabled: 'Authentifizierung erfolgreich deaktiviert',
  1526. authDisableFailed: 'Authentifizierung konnte nicht deaktiviert werden',
  1527. apiKeyCreated: 'API-Schlüssel erstellt',
  1528. apiKeyDeleted: 'API-Schlüssel gelöscht',
  1529. userCreated: 'Benutzer erfolgreich erstellt',
  1530. userUpdated: 'Benutzer erfolgreich aktualisiert',
  1531. userDeleted: 'Benutzer erfolgreich gelöscht',
  1532. groupCreated: 'Gruppe erfolgreich erstellt',
  1533. groupUpdated: 'Gruppe erfolgreich aktualisiert',
  1534. groupDeleted: 'Gruppe erfolgreich gelöscht',
  1535. fillRequiredFields: 'Bitte füllen Sie alle erforderlichen Felder aus',
  1536. passwordsDoNotMatch: 'Passwörter stimmen nicht überein',
  1537. passwordTooShort: 'Passwort muss mindestens 6 Zeichen lang sein',
  1538. enterGroupName: 'Bitte geben Sie einen Gruppennamen ein',
  1539. settingsSaved: 'Einstellungen gespeichert',
  1540. cameraSettingsSaved: 'Kamera-Einstellungen gespeichert',
  1541. enterCameraUrl: 'Bitte geben Sie eine Kamera-URL ein',
  1542. passwordChanged: 'Passwort erfolgreich geändert',
  1543. connectionFailed: 'Verbindung fehlgeschlagen',
  1544. testFailed: 'Test fehlgeschlagen',
  1545. cameraConnected: 'Kamera verbunden{{resolution}}',
  1546. },
  1547. testConnection: 'Verbindung testen',
  1548. catalog: {
  1549. spoolCatalog: 'Spulenkatalog',
  1550. spoolCatalogDescription: 'Leerspulengewichte nach Marke/Typ. Wird für die automatische Gewichtssuche beim Hinzufügen von Spulen verwendet.',
  1551. searchCatalog: 'Katalog durchsuchen...',
  1552. addNewEntry: 'Neuen Eintrag hinzufügen',
  1553. namePlaceholder: 'Name (z.B. Bambu Lab - Plastik)',
  1554. weight: 'Gewicht',
  1555. type: 'Typ',
  1556. default: 'Standard',
  1557. custom: 'Benutzerdefiniert',
  1558. noMatch: 'Keine Einträge entsprechen Ihrer Suche',
  1559. empty: 'Keine Einträge im Katalog',
  1560. deleteEntry: 'Eintrag löschen',
  1561. deleteConfirm: 'Möchten Sie "{{name}}" wirklich löschen?',
  1562. resetCatalog: 'Katalog zurücksetzen',
  1563. resetConfirm: 'Katalog auf Standardwerte zurücksetzen? Alle benutzerdefinierten Einträge werden entfernt.',
  1564. loadFailed: 'Spulenkatalog konnte nicht geladen werden',
  1565. nameWeightRequired: 'Name und Gewicht sind erforderlich',
  1566. entryAdded: 'Eintrag hinzugefügt',
  1567. addFailed: 'Eintrag konnte nicht hinzugefügt werden',
  1568. entryUpdated: 'Eintrag aktualisiert',
  1569. updateFailed: 'Eintrag konnte nicht aktualisiert werden',
  1570. entryDeleted: 'Eintrag gelöscht',
  1571. deleteFailed: 'Eintrag konnte nicht gelöscht werden',
  1572. resetSuccess: 'Katalog auf Standardwerte zurückgesetzt',
  1573. resetFailed: 'Katalog konnte nicht zurückgesetzt werden',
  1574. exported: '{{count}} Einträge exportiert',
  1575. imported: '{{added}} Einträge importiert ({{skipped}} übersprungen)',
  1576. importFailed: 'Import fehlgeschlagen: ungültiges JSON-Format',
  1577. exportTooltip: 'Katalog als JSON exportieren',
  1578. importTooltip: 'Katalog aus JSON importieren',
  1579. resetTooltip: 'Auf Standardwerte zurücksetzen',
  1580. },
  1581. colorCatalog: {
  1582. title: 'Farbkatalog',
  1583. description: 'Filamentfarben nach Hersteller/Material. Wird für die automatische Farbsuche beim Hinzufügen von Spulen verwendet.',
  1584. searchColors: 'Farben durchsuchen...',
  1585. allManufacturers: 'Alle Hersteller',
  1586. addNewColor: 'Neue Farbe hinzufügen',
  1587. manufacturer: 'Hersteller',
  1588. colorName: 'Farbname',
  1589. hex: 'Hex',
  1590. materialOptional: 'Material (optional)',
  1591. showing: '{{filtered}} von {{total}} Farben angezeigt',
  1592. noMatch: 'Keine Farben entsprechen Ihrer Suche',
  1593. empty: 'Keine Farben im Katalog',
  1594. deleteColor: 'Farbe löschen',
  1595. deleteConfirm: 'Möchten Sie "{{name}}" wirklich löschen?',
  1596. resetCatalog: 'Farbkatalog zurücksetzen',
  1597. resetConfirm: 'Katalog auf Standardwerte zurücksetzen? Alle benutzerdefinierten Farben werden entfernt.',
  1598. sync: 'Sync',
  1599. starting: 'Starten...',
  1600. syncTooltip: 'Von FilamentColors.xyz synchronisieren (2000+ Farben)',
  1601. loadFailed: 'Farbkatalog konnte nicht geladen werden',
  1602. fieldsRequired: 'Hersteller, Farbname und Hex-Farbe sind erforderlich',
  1603. colorAdded: 'Farbe hinzugefügt',
  1604. addFailed: 'Farbe konnte nicht hinzugefügt werden',
  1605. colorUpdated: 'Farbe aktualisiert',
  1606. updateFailed: 'Farbe konnte nicht aktualisiert werden',
  1607. colorDeleted: 'Farbe gelöscht',
  1608. deleteFailed: 'Farbe konnte nicht gelöscht werden',
  1609. resetSuccess: 'Farbkatalog auf Standardwerte zurückgesetzt',
  1610. resetFailed: 'Katalog konnte nicht zurückgesetzt werden',
  1611. syncUpToDate: 'Bereits aktuell ({{count}} Farben geprüft)',
  1612. syncComplete: '{{added}} neue Farben hinzugefügt ({{skipped}} bereits vorhanden)',
  1613. syncError: 'Sync-Fehler',
  1614. syncFailed: 'Synchronisierung von FilamentColors.xyz fehlgeschlagen',
  1615. exported: '{{count}} Farben exportiert',
  1616. imported: '{{added}} Farben importiert ({{skipped}} übersprungen)',
  1617. importFailed: 'Import fehlgeschlagen: ungültiges JSON-Format',
  1618. },
  1619. },
  1620. // Notifications (for push notifications)
  1621. notification: {
  1622. printStarted: {
  1623. title: 'Druck gestartet',
  1624. body: '{{printer}}: {{filename}} wird gedruckt',
  1625. },
  1626. printCompleted: {
  1627. title: 'Druck abgeschlossen',
  1628. body: '{{printer}}: {{filename}} erfolgreich abgeschlossen',
  1629. },
  1630. printFailed: {
  1631. title: 'Druck fehlgeschlagen',
  1632. body: '{{printer}}: {{filename}} ist fehlgeschlagen',
  1633. },
  1634. printStopped: {
  1635. title: 'Druck gestoppt',
  1636. body: '{{printer}}: {{filename}} wurde gestoppt',
  1637. },
  1638. printProgress: {
  1639. title: 'Druckfortschritt',
  1640. body: '{{printer}}: {{filename}} ist zu {{percent}}% abgeschlossen',
  1641. },
  1642. printerOffline: {
  1643. title: 'Drucker offline',
  1644. body: '{{printer}} ist offline',
  1645. },
  1646. printerError: {
  1647. title: 'Druckerfehler',
  1648. body: '{{printer}}: {{error}}',
  1649. },
  1650. filamentLow: {
  1651. title: 'Filament niedrig',
  1652. body: '{{printer}}: Filament geht zur Neige',
  1653. },
  1654. maintenanceDue: {
  1655. title: 'Wartung fällig',
  1656. body: '{{printer}}: {{items}} benötigen Aufmerksamkeit',
  1657. },
  1658. },
  1659. // Errors
  1660. errors: {
  1661. generic: 'Etwas ist schiefgelaufen',
  1662. networkError: 'Netzwerkfehler. Bitte überprüfen Sie Ihre Verbindung.',
  1663. notFound: 'Nicht gefunden',
  1664. unauthorized: 'Nicht autorisiert',
  1665. serverError: 'Serverfehler',
  1666. validationError: 'Bitte überprüfen Sie Ihre Eingabe',
  1667. printerConnectionFailed: 'Verbindung zum Drucker fehlgeschlagen',
  1668. saveFailed: 'Speichern fehlgeschlagen',
  1669. deleteFailed: 'Löschen fehlgeschlagen',
  1670. loadFailed: 'Laden der Daten fehlgeschlagen',
  1671. },
  1672. // HMS Errors modal
  1673. hmsErrors: {
  1674. title: 'Fehler - {{name}}',
  1675. noErrors: 'Keine Fehler',
  1676. viewOnWiki: 'Im Bambu Lab Wiki ansehen',
  1677. clearInstructions: 'Löschen Sie die Fehler am Drucker, um sie hier zu entfernen.',
  1678. clearErrors: 'Fehler löschen',
  1679. clearSuccess: 'HMS-Fehler gelöscht',
  1680. clearFailed: 'HMS-Fehler konnten nicht gelöscht werden',
  1681. },
  1682. // MQTT Debug modal
  1683. mqttDebug: {
  1684. title: 'MQTT-Debug-Protokoll',
  1685. searchPlaceholder: 'Topic oder Payload suchen...',
  1686. noMessages: 'Noch keine Nachrichten protokolliert',
  1687. startLoggingHint: 'Klicken Sie auf "Protokollierung starten", um MQTT-Nachrichten aufzuzeichnen',
  1688. noMessagesMatch: 'Keine Nachrichten entsprechen Ihrem Filter',
  1689. adjustFilterHint: 'Versuchen Sie, Ihre Such- oder Filterkriterien anzupassen',
  1690. incoming: 'Eingehend',
  1691. outgoing: 'Ausgehend',
  1692. loggingStopped: 'Protokollierung gestoppt',
  1693. loggingActive: 'Protokollierung aktiv - Nachrichten werden automatisch aktualisiert',
  1694. startLogging: 'Protokollierung starten',
  1695. stopLogging: 'Protokollierung stoppen',
  1696. clearLog: 'Protokoll löschen',
  1697. topic: 'Topic',
  1698. timestamp: 'Zeitstempel',
  1699. direction: 'Richtung',
  1700. all: 'Alle',
  1701. },
  1702. // Printer File Manager modal (printer internal storage)
  1703. printerFiles: {
  1704. title: 'Dateimanager',
  1705. storageUsed: 'Belegt:',
  1706. storageFree: 'Frei:',
  1707. filterPlaceholder: 'Dateien filtern...',
  1708. deleteButton: 'Löschen',
  1709. deleteFiles: '{{count}} Dateien löschen',
  1710. deleteFileConfirm: '"{{name}}" löschen? Dies kann nicht rückgängig gemacht werden.',
  1711. deleteFilesConfirm: '{{count}} ausgewählte Dateien löschen? Dies kann nicht rückgängig gemacht werden.',
  1712. noFiles: 'Keine Dateien auf dem Drucker',
  1713. loadingFiles: 'Dateien werden geladen...',
  1714. failedToLoad: 'Dateien konnten nicht geladen werden',
  1715. toast: {
  1716. filesDeleted: '{{count}} Datei(en) gelöscht',
  1717. deleteFailed: 'Löschen fehlgeschlagen: {{error}}',
  1718. },
  1719. },
  1720. // Confirmations
  1721. confirm: {
  1722. delete: 'Möchten Sie dies wirklich löschen?',
  1723. unsavedChanges: 'Sie haben ungespeicherte Änderungen. Möchten Sie wirklich verlassen?',
  1724. clearQueue: 'Möchten Sie die Warteschlange wirklich leeren?',
  1725. },
  1726. // Login page
  1727. login: {
  1728. title: 'Bambuddy Anmeldung',
  1729. subtitle: 'Melden Sie sich bei Ihrem Konto an',
  1730. username: 'Benutzername',
  1731. usernamePlaceholder: 'Benutzername eingeben',
  1732. usernameOrEmail: 'Benutzername oder E-Mail',
  1733. usernameOrEmailPlaceholder: 'Benutzername oder @ E-Mail',
  1734. password: 'Passwort',
  1735. passwordPlaceholder: 'Passwort eingeben',
  1736. signIn: 'Anmelden',
  1737. signingIn: 'Anmeldung läuft...',
  1738. forgotPassword: 'Passwort vergessen?',
  1739. loginSuccess: 'Erfolgreich angemeldet',
  1740. loginFailed: 'Anmeldung fehlgeschlagen',
  1741. enterCredentials: 'Bitte Benutzername und Passwort eingeben',
  1742. forgotPasswordTitle: 'Passwort vergessen',
  1743. forgotPasswordMessage: 'Wenn Sie Ihr Passwort vergessen haben, wenden Sie sich bitte an Ihren Systemadministrator.',
  1744. forgotPasswordEmailMessage: 'Geben Sie Ihre E-Mail-Adresse ein und wir senden Ihnen ein neues Passwort.',
  1745. emailAddress: 'E-Mail-Adresse',
  1746. emailPlaceholder: 'ihre.email@beispiel.de',
  1747. cancel: 'Abbrechen',
  1748. sending: 'Wird gesendet...',
  1749. sendResetEmail: 'Zurücksetzungs-E-Mail senden',
  1750. howToReset: 'So setzen Sie Ihr Passwort zurück:',
  1751. resetStep1: 'Kontaktieren Sie Ihren Bambuddy-Administrator',
  1752. resetStep2: 'Bitten Sie ihn, Ihr Passwort in der Benutzerverwaltung zurückzusetzen',
  1753. resetStep3: 'Er kann ein neues temporäres Passwort für Sie festlegen',
  1754. resetStep4: 'Melden Sie sich mit dem neuen Passwort an und ändern Sie es in den Einstellungen',
  1755. gotIt: 'Verstanden',
  1756. },
  1757. // Setup page
  1758. setup: {
  1759. title: 'Bambuddy Einrichtung',
  1760. subtitle: 'Konfigurieren Sie die Authentifizierung für Ihre Bambuddy-Instanz',
  1761. enableAuth: 'Authentifizierung aktivieren',
  1762. adminAccount: 'Admin-Konto',
  1763. adminAccountDesc: 'Wenn bereits Admin-Benutzer existieren, wird die Authentifizierung mit den vorhandenen Admin-Konten aktiviert. Lassen Sie die Felder unten leer, um vorhandene Admins zu verwenden, oder geben Sie neue Anmeldedaten ein, um einen neuen Admin-Benutzer zu erstellen.',
  1764. adminUsername: 'Admin-Benutzername',
  1765. adminPassword: 'Admin-Passwort',
  1766. optionalIfAdminExists: '(optional, wenn Admin-Benutzer existieren)',
  1767. adminUsernamePlaceholder: 'Admin-Benutzernamen eingeben (optional)',
  1768. adminPasswordPlaceholder: 'Admin-Passwort eingeben (optional)',
  1769. confirmPassword: 'Passwort bestätigen',
  1770. confirmPasswordPlaceholder: 'Admin-Passwort bestätigen',
  1771. settingUp: 'Einrichtung läuft...',
  1772. completeSetup: 'Einrichtung abschließen',
  1773. toast: {
  1774. authEnabledAdminCreated: 'Authentifizierung aktiviert und Admin-Benutzer erstellt',
  1775. authEnabledExistingAdmins: 'Authentifizierung mit vorhandenen Admin-Benutzern aktiviert',
  1776. setupCompleted: 'Einrichtung abgeschlossen',
  1777. enterBothCredentials: 'Bitte geben Sie sowohl Admin-Benutzernamen als auch Passwort ein, oder lassen Sie beide leer, um vorhandene Admin-Benutzer zu verwenden',
  1778. passwordsDoNotMatch: 'Passwörter stimmen nicht überein',
  1779. passwordTooShort: 'Passwort muss mindestens 6 Zeichen lang sein',
  1780. },
  1781. },
  1782. // Password change
  1783. changePassword: {
  1784. title: 'Passwort ändern',
  1785. currentPassword: 'Aktuelles Passwort',
  1786. currentPasswordPlaceholder: 'Aktuelles Passwort eingeben',
  1787. newPassword: 'Neues Passwort',
  1788. newPasswordPlaceholder: 'Neues Passwort eingeben (min. 6 Zeichen)',
  1789. confirmPassword: 'Neues Passwort bestätigen',
  1790. confirmPasswordPlaceholder: 'Neues Passwort bestätigen',
  1791. passwordsDoNotMatch: 'Passwörter stimmen nicht überein',
  1792. passwordTooShort: 'Passwort muss mindestens 6 Zeichen lang sein',
  1793. changing: 'Wird geändert...',
  1794. success: 'Passwort erfolgreich geändert',
  1795. failed: 'Passwortänderung fehlgeschlagen',
  1796. },
  1797. // Plate detection alert
  1798. plateAlert: {
  1799. title: 'Druck pausiert!',
  1800. message: 'Objekte auf dem Druckbett erkannt. Der Druck wurde automatisch pausiert. Bitte räumen Sie das Druckbett und setzen Sie den Druck fort.',
  1801. understand: 'Verstanden',
  1802. },
  1803. // Camera page
  1804. camera: {
  1805. title: 'Kameraansicht',
  1806. invalidPrinterId: 'Ungültige Drucker-ID',
  1807. live: 'Live',
  1808. snapshot: 'Schnappschuss',
  1809. restartStream: 'Stream neu starten',
  1810. refreshSnapshot: 'Schnappschuss aktualisieren',
  1811. fullscreen: 'Vollbild',
  1812. exitFullscreen: 'Vollbild beenden',
  1813. connectingToCamera: 'Verbinde mit Kamera...',
  1814. capturingSnapshot: 'Schnappschuss wird aufgenommen...',
  1815. connectionLost: 'Verbindung verloren',
  1816. connectionFailed: 'Kameraverbindung fehlgeschlagen',
  1817. reconnecting: 'Neuverbindung in {{countdown}}s... (Versuch {{attempt}}/{{max}})',
  1818. reconnectNow: 'Jetzt verbinden',
  1819. cameraUnavailable: 'Kamera nicht verfügbar',
  1820. cameraUnavailableDesc: 'Stellen Sie sicher, dass der Drucker eingeschaltet und verbunden ist.',
  1821. noCamera: 'Keine Kamera verfügbar',
  1822. retry: 'Erneut versuchen',
  1823. cameraStream: 'Kamera-Stream',
  1824. zoomOut: 'Verkleinern',
  1825. zoomIn: 'Vergrößern',
  1826. resetZoom: 'Zoom zurücksetzen',
  1827. recording: 'Aufnahme',
  1828. startRecording: 'Aufnahme starten',
  1829. stopRecording: 'Aufnahme stoppen',
  1830. chamberLight: 'Kammerbeleuchtung umschalten',
  1831. },
  1832. // Groups management
  1833. groups: {
  1834. title: 'Gruppenverwaltung',
  1835. subtitle: 'Berechtigungsgruppen für Zugriffskontrolle verwalten',
  1836. backToSettings: 'Zurück zu Einstellungen',
  1837. createGroup: 'Gruppe erstellen',
  1838. noPermission: 'Sie haben keine Berechtigung, auf diese Seite zuzugreifen.',
  1839. system: 'System',
  1840. noDescription: 'Keine Beschreibung',
  1841. usersCount: '{{count}} Benutzer',
  1842. permissionsCount: '{{count}} Berechtigungen',
  1843. edit: 'Bearbeiten',
  1844. delete: 'Löschen',
  1845. toast: {
  1846. created: 'Gruppe erfolgreich erstellt',
  1847. updated: 'Gruppe erfolgreich aktualisiert',
  1848. deleted: 'Gruppe erfolgreich gelöscht',
  1849. enterGroupName: 'Bitte geben Sie einen Gruppennamen ein',
  1850. },
  1851. modal: {
  1852. editGroup: 'Gruppe bearbeiten',
  1853. createGroup: 'Gruppe erstellen',
  1854. cancel: 'Abbrechen',
  1855. saving: 'Speichern...',
  1856. creating: 'Erstellen...',
  1857. saveChanges: 'Änderungen speichern',
  1858. },
  1859. form: {
  1860. groupName: 'Gruppenname',
  1861. groupNamePlaceholder: 'Gruppennamen eingeben',
  1862. systemGroupWarning: 'Systemgruppennamen können nicht geändert werden',
  1863. description: 'Beschreibung',
  1864. descriptionPlaceholder: 'Beschreibung eingeben (optional)',
  1865. permissions: 'Berechtigungen ({{count}} ausgewählt)',
  1866. },
  1867. deleteModal: {
  1868. title: 'Gruppe löschen',
  1869. message: 'Sind Sie sicher, dass Sie diese Gruppe löschen möchten? Benutzer in dieser Gruppe verlieren diese Berechtigungen.',
  1870. confirm: 'Gruppe löschen',
  1871. },
  1872. editor: {
  1873. title: 'Gruppe bearbeiten',
  1874. createTitle: 'Gruppe erstellen',
  1875. search: 'Berechtigungen suchen...',
  1876. selectAll: 'Alle auswählen',
  1877. clearAll: 'Alle abwählen',
  1878. permissionsSelected: '{{count}} ausgewählt',
  1879. noResults: 'Keine Berechtigungen entsprechen Ihrer Suche',
  1880. },
  1881. },
  1882. // Users management
  1883. users: {
  1884. title: 'Benutzerverwaltung',
  1885. subtitle: 'Benutzer und deren Zugriff auf Ihre Bambuddy-Instanz verwalten',
  1886. backToSettings: 'Zurück zu Einstellungen',
  1887. createUser: 'Benutzer erstellen',
  1888. noPermission: 'Sie haben keine Berechtigung, auf diese Seite zuzugreifen.',
  1889. admin: 'Admin',
  1890. noGroups: 'Keine Gruppen',
  1891. active: 'Aktiv',
  1892. inactive: 'Inaktiv',
  1893. edit: 'Bearbeiten',
  1894. delete: 'Löschen',
  1895. system: 'System',
  1896. noGroupsAvailable: 'Keine Gruppen verfügbar',
  1897. table: {
  1898. username: 'Benutzername',
  1899. groups: 'Gruppen',
  1900. status: 'Status',
  1901. actions: 'Aktionen',
  1902. },
  1903. toast: {
  1904. created: 'Benutzer erfolgreich erstellt',
  1905. updated: 'Benutzer erfolgreich aktualisiert',
  1906. deleted: 'Benutzer erfolgreich gelöscht',
  1907. fillRequired: 'Bitte füllen Sie alle Pflichtfelder aus',
  1908. passwordsDoNotMatch: 'Passwörter stimmen nicht überein',
  1909. passwordTooShort: 'Passwort muss mindestens 6 Zeichen lang sein',
  1910. },
  1911. modal: {
  1912. createUser: 'Benutzer erstellen',
  1913. editUser: 'Benutzer bearbeiten',
  1914. cancel: 'Abbrechen',
  1915. creating: 'Erstellen...',
  1916. saving: 'Speichern...',
  1917. saveChanges: 'Änderungen speichern',
  1918. advancedAuthSubtitle: 'mit erweiterter Authentifizierung',
  1919. },
  1920. form: {
  1921. username: 'Benutzername',
  1922. usernamePlaceholder: 'Benutzernamen eingeben',
  1923. email: 'E-Mail',
  1924. emailPlaceholder: 'benutzer@beispiel.de',
  1925. password: 'Passwort',
  1926. passwordPlaceholder: 'Passwort eingeben',
  1927. confirmPassword: 'Passwort bestätigen',
  1928. confirmPasswordPlaceholder: 'Passwort bestätigen',
  1929. newPasswordPlaceholder: 'Neues Passwort eingeben',
  1930. confirmNewPasswordPlaceholder: 'Neues Passwort bestätigen',
  1931. leaveBlankToKeep: 'leer lassen, um das aktuelle zu behalten',
  1932. groups: 'Gruppen',
  1933. optional: 'optional',
  1934. autoGeneratedPassword: 'Ein sicheres Passwort wird automatisch generiert und per E-Mail an den Benutzer gesendet.',
  1935. passwordManagedByAdvancedAuth: 'Das Passwort wird durch erweiterte Authentifizierung verwaltet. Verwenden Sie "Passwort zurücksetzen", um ein neues Passwort per E-Mail an den Benutzer zu senden.',
  1936. resetPassword: 'Passwort zurücksetzen',
  1937. resettingPassword: 'Passwort wird zurückgesetzt...',
  1938. },
  1939. deleteModal: {
  1940. title: 'Benutzer löschen',
  1941. message: 'Sind Sie sicher, dass Sie diesen Benutzer löschen möchten? Diese Aktion kann nicht rückgängig gemacht werden.',
  1942. confirm: 'Benutzer löschen',
  1943. },
  1944. },
  1945. // Stream overlay
  1946. streamOverlay: {
  1947. title: 'Stream-Overlay',
  1948. invalidPrinterId: 'Ungültige Drucker-ID',
  1949. cameraStream: 'Kamera-Stream',
  1950. progress: 'Fortschritt',
  1951. eta: 'ETA',
  1952. printerIdle: 'Drucker ist inaktiv',
  1953. printerOffline: 'Drucker offline',
  1954. status: {
  1955. printing: 'Druckt',
  1956. paused: 'Pausiert',
  1957. finished: 'Fertig',
  1958. failed: 'Fehlgeschlagen',
  1959. idle: 'Inaktiv',
  1960. unknown: 'Unbekannt',
  1961. },
  1962. },
  1963. // Profiles
  1964. profiles: {
  1965. title: 'Profile',
  1966. subtitle: 'Verwalten Sie Ihre Slicer-Voreinstellungen und Druckvorschub-Kalibrierungen',
  1967. tabs: {
  1968. cloud: 'Cloud-Profile',
  1969. local: 'Lokale Profile',
  1970. kprofiles: 'K-Profile',
  1971. },
  1972. localProfiles: {
  1973. title: 'Lokale Profile',
  1974. subtitle: 'Slicer-Voreinstellungen aus OrcaSlicer importieren und verwalten',
  1975. import: 'Profile importieren',
  1976. importDesc: '.bbscfg-, .bbsflmt-, .orca_filament-, .zip- oder .json-Dateien hier ablegen',
  1977. importing: 'Importiere...',
  1978. search: 'Lokale Voreinstellungen durchsuchen...',
  1979. noPresets: 'Noch keine lokalen Voreinstellungen',
  1980. badge: 'Lokal',
  1981. edit: 'Bearbeiten',
  1982. delete: 'Löschen',
  1983. cancel: 'Abbrechen',
  1984. deleteConfirmTitle: 'Voreinstellung löschen',
  1985. deleteConfirm: 'Möchten Sie diese Voreinstellung wirklich löschen? Dies kann nicht rückgängig gemacht werden.',
  1986. source: 'Quelle',
  1987. inheritsFrom: 'Erbt von',
  1988. filamentType: 'Typ',
  1989. vendor: 'Hersteller',
  1990. compatiblePrinters: 'Drucker',
  1991. nozzleTemp: 'Düsentemperatur',
  1992. cost: 'Kosten',
  1993. density: 'Dichte',
  1994. pressureAdvance: 'Druckvorschub',
  1995. filament: 'Filament',
  1996. process: 'Prozess',
  1997. printer: 'Drucker',
  1998. toast: {
  1999. importSuccess: '{{count}} Voreinstellung(en) importiert',
  2000. importSkipped: '{{count}} Voreinstellung(en) übersprungen (Duplikate)',
  2001. importError: '{{count}} Fehler beim Import',
  2002. deleted: 'Voreinstellung gelöscht',
  2003. updated: 'Voreinstellung aktualisiert',
  2004. },
  2005. },
  2006. connectedAs: 'Verbunden als',
  2007. logout: 'Abmelden',
  2008. noLogoutPermission: 'Sie haben keine Berechtigung zum Abmelden',
  2009. failedToLoad: 'Profile konnten nicht geladen werden',
  2010. retry: 'Erneut versuchen',
  2011. time: {
  2012. justNow: 'Gerade eben',
  2013. minsAgo: 'vor {{count}}m',
  2014. hoursAgo: 'vor {{count}}h',
  2015. daysAgo: 'vor {{count}}d',
  2016. },
  2017. toast: {
  2018. loggedOut: 'Abgemeldet',
  2019. },
  2020. login: {
  2021. title: 'Mit Bambu Cloud verbinden',
  2022. subtitle: 'Synchronisieren Sie Ihre Slicer-Voreinstellungen geräteübergreifend',
  2023. email: 'E-Mail',
  2024. password: 'Passwort',
  2025. region: 'Region',
  2026. regionGlobal: 'Global',
  2027. regionChina: 'China',
  2028. verificationCode: 'Bestätigungscode',
  2029. totpCode: 'Authenticator-Code',
  2030. checkEmail: 'Prüfen Sie Ihre E-Mail ({{email}}) für einen 6-stelligen Code',
  2031. enterTotpHint: 'Geben Sie den 6-stelligen Code aus Ihrer Authenticator-App ein',
  2032. accessToken: 'Zugriffstoken',
  2033. accessTokenHint: 'Fügen Sie Ihr Bambu Lab Zugriffstoken ein (aus Bambu Studio)',
  2034. back: 'Zurück',
  2035. loginButton: 'Anmelden',
  2036. verifyButton: 'Bestätigen',
  2037. setTokenButton: 'Token setzen',
  2038. useToken: 'Stattdessen Zugriffstoken verwenden',
  2039. useEmail: 'Stattdessen mit E-Mail anmelden',
  2040. toast: {
  2041. loggedIn: 'Erfolgreich angemeldet',
  2042. codeSent: 'Bestätigungscode an Ihre E-Mail gesendet',
  2043. enterTotp: 'Geben Sie den Code aus Ihrer Authenticator-App ein',
  2044. tokenSet: 'Token erfolgreich gesetzt',
  2045. },
  2046. },
  2047. presets: {
  2048. myPreset: 'Mein Profil (bearbeitbar)',
  2049. duplicate: 'Duplizieren',
  2050. editable: 'Bearbeitbar',
  2051. failedToLoadDetails: 'Profil-Details konnten nicht geladen werden',
  2052. deleteConfirm: 'Dieses Profil löschen?',
  2053. deleteWarning: '"{{name}}" wird dauerhaft aus Bambu Cloud gelöscht. Dies kann nicht rückgängig gemacht werden.',
  2054. noDuplicatePermission: 'Sie haben keine Berechtigung zum Duplizieren von Profilen',
  2055. noEditPermission: 'Sie haben keine Berechtigung zum Bearbeiten von Profilen',
  2056. noDeletePermission: 'Sie haben keine Berechtigung zum Löschen von Profilen',
  2057. types: {
  2058. filament: 'Filament-Profil',
  2059. printer: 'Drucker-Profil',
  2060. process: 'Prozess-Profil',
  2061. },
  2062. toast: {
  2063. deleted: 'Profil gelöscht',
  2064. created: 'Profil erstellt',
  2065. updated: 'Profil aktualisiert',
  2066. duplicated: 'Profil dupliziert',
  2067. fieldAdded: 'Feld "{{key}}" hinzugefügt',
  2068. exported: 'Profil exportiert',
  2069. },
  2070. baseLabel: 'Basis: {{name}}',
  2071. currentLabel: 'Aktuell: {{name}}',
  2072. newPreset: 'Neues Profil',
  2073. editPreset: 'Profil bearbeiten',
  2074. duplicatePreset: 'Profil duplizieren',
  2075. createNewPreset: 'Neues Profil erstellen',
  2076. customizeSettings: 'Passen Sie die Einstellungen für Ihr neues Profil an',
  2077. compareWithBase: 'Mit Basis-Profil vergleichen',
  2078. compare: 'Vergleichen',
  2079. // CreatePresetModal - Basic Info
  2080. basePreset: 'Basis-Profil',
  2081. selectBasePreset: 'Basis-Profil auswählen...',
  2082. presetName: 'Profilname',
  2083. myCustomPreset: 'Mein eigenes Profil',
  2084. inheritsFrom: 'Erbt von',
  2085. dropJsonToImport: 'JSON zum Importieren ablegen',
  2086. // CreatePresetModal - Tabs
  2087. tabs: {
  2088. common: 'Allgemein',
  2089. allFields: 'Alle Felder',
  2090. },
  2091. // CreatePresetModal - All Fields Tab
  2092. availableFields: 'Verfügbare Felder',
  2093. searchFieldsPlaceholder: 'Felder suchen...',
  2094. noMatchingFields: 'Keine passenden Felder',
  2095. allFieldsAdded: 'Alle Felder hinzugefügt',
  2096. addCustomField: 'Eigenes Feld hinzufügen',
  2097. yourOverrides: 'Ihre Überschreibungen',
  2098. noOverridesYet: 'Noch keine Überschreibungen',
  2099. clickFieldsToAdd: 'Klicken Sie links auf Felder, um sie hinzuzufügen',
  2100. saveAsTemplate: 'Als Vorlage speichern',
  2101. jsonTip: 'Tipp: Ziehen Sie eine .json-Datei auf dieses Fenster, um Einstellungen zu importieren',
  2102. },
  2103. cloudView: {
  2104. searchPlaceholder: 'Profile suchen...',
  2105. templates: 'Vorlagen',
  2106. refresh: 'Aktualisieren',
  2107. newPreset: 'Neues Profil',
  2108. clearFilters: 'Filter zurücksetzen',
  2109. // Compare mode
  2110. compareMode: 'Vergleichsmodus',
  2111. selectAnotherPreset: 'Wählen Sie ein weiteres {{type}}-Profil',
  2112. clickTwoPresets: 'Klicken Sie auf zwei Profile des gleichen Typs zum Vergleichen',
  2113. selectFirst: '1. Erstes auswählen',
  2114. selectSecond: '2. Zweites auswählen',
  2115. compareNow: 'Jetzt vergleichen',
  2116. // Status row
  2117. lastSynced: 'Zuletzt synchronisiert:',
  2118. showingCount: '{{showing}} von {{total}} Profilen',
  2119. noPresetsFound: 'Keine Profile gefunden',
  2120. // Column headers
  2121. columns: {
  2122. filament: 'Filament',
  2123. process: 'Prozess',
  2124. printer: 'Drucker',
  2125. },
  2126. noFilamentPresets: 'Keine Filament-Profile',
  2127. noProcessPresets: 'Keine Prozess-Profile',
  2128. noPrinterPresets: 'Keine Drucker-Profile',
  2129. // Filters
  2130. filters: {
  2131. type: 'Typ',
  2132. owner: 'Besitzer',
  2133. printer: 'Drucker',
  2134. nozzle: 'Düse',
  2135. filament: 'Filament',
  2136. layer: 'Schicht',
  2137. all: 'Alle',
  2138. myPresets: 'Meine Profile',
  2139. builtIn: 'Voreingestellt',
  2140. process: 'Prozess',
  2141. },
  2142. // Permissions
  2143. noTemplatesPermission: 'Sie haben keine Berechtigung, Vorlagen zu verwalten',
  2144. noRefreshPermission: 'Sie haben keine Berechtigung, Profile zu aktualisieren',
  2145. noCreatePermission: 'Sie haben keine Berechtigung, Profile zu erstellen',
  2146. },
  2147. templates: {
  2148. title: 'Schnellvorlagen',
  2149. noTemplates: 'Noch keine Vorlagen',
  2150. createFirst: 'Erstellen Sie Vorlagen aus dem Preset-Editor',
  2151. typeFilter: 'Typ:',
  2152. deleteTitle: 'Vorlage löschen',
  2153. deleteWarning: 'Diese Aktion kann nicht rückgängig gemacht werden',
  2154. deleteConfirm: 'Möchten Sie "{{name}}" wirklich löschen?',
  2155. namePlaceholder: 'Vorlagenname',
  2156. descriptionPlaceholder: 'Beschreibung',
  2157. settingsJson: 'Einstellungen (JSON)',
  2158. fieldsCount: '{{count}} Felder',
  2159. shownInModals: 'In Dialogen angezeigt',
  2160. hiddenInModals: 'In Dialogen ausgeblendet',
  2161. apply: 'Anwenden',
  2162. toast: {
  2163. deleted: 'Vorlage gelöscht',
  2164. updated: 'Vorlage aktualisiert',
  2165. created: 'Vorlage erstellt',
  2166. applied: 'Vorlage angewendet',
  2167. },
  2168. },
  2169. },
  2170. // Support/Debug
  2171. support: {
  2172. debugLoggingActive: 'Debug-Protokollierung ist aktiv',
  2173. manageLogs: 'Verwalten',
  2174. collectItem7: 'Drucker-Verbindungsstatus und Firmware-Versionen',
  2175. collectItem8: 'Integrationsstatus (Spoolman, MQTT, HA)',
  2176. collectItem9: 'Netzwerkschnittstellen (nur Subnetze)',
  2177. collectItem10: 'Python-Paketversionen',
  2178. collectItem11: 'Datenbankzustandsprüfungen',
  2179. collectItem12: 'Docker-Umgebungsdetails',
  2180. },
  2181. // File manager
  2182. fileManager: {
  2183. title: 'Dateimanager',
  2184. subtitle: 'Organisieren und verwalten Sie Ihre Druckdateien',
  2185. uploadFiles: 'Dateien hochladen',
  2186. newFolder: 'Neuer Ordner',
  2187. folderName: 'Ordnername',
  2188. folderNamePlaceholder: 'z.B. Funktionsteile',
  2189. renameFile: 'Datei umbenennen',
  2190. renameFolder: 'Ordner umbenennen',
  2191. moveFiles: '{{count}} Datei(en) verschieben',
  2192. rootNoFolder: 'Stammverzeichnis (Kein Ordner)',
  2193. current: 'aktuell',
  2194. linkFolder: 'Ordner verknüpfen',
  2195. linkFolderDescription: '"{{name}}" mit einem Projekt oder Archiv verknüpfen für schnellen Zugriff.',
  2196. project: 'Projekt',
  2197. archive: 'Archiv',
  2198. noProjectsFound: 'Keine Projekte gefunden',
  2199. noArchivesFound: 'Keine Archive gefunden',
  2200. unlink: 'Verknüpfung aufheben',
  2201. link: 'Verknüpfen',
  2202. dragDropFiles: 'Dateien hierher ziehen',
  2203. dropFilesHere: 'Dateien hier ablegen',
  2204. orClickToBrowse: 'oder klicken zum Durchsuchen',
  2205. allFileTypesSupported: 'Alle Dateitypen werden unterstützt. ZIP-Dateien werden extrahiert.',
  2206. zipFilesDetected: 'ZIP-Dateien erkannt',
  2207. zipExtractOptions: 'ZIP-Dateien werden extrahiert. Wählen Sie, wie die Ordnerstruktur behandelt werden soll:',
  2208. preserveZipStructure: 'Ordnerstruktur aus ZIP beibehalten',
  2209. createFolderFromZip: 'Ordner aus ZIP-Dateiname erstellen',
  2210. stlThumbnailGeneration: 'STL-Vorschaubildgenerierung',
  2211. zipMayContainStl: 'ZIP-Dateien können STL-Dateien enthalten. Vorschaubilder können während der Extraktion generiert werden.',
  2212. thumbnailsCanBeGenerated: 'Vorschaubilder können für STL-Dateien generiert werden. Große Modelle benötigen möglicherweise mehr Zeit.',
  2213. generateThumbnailsForStl: 'Vorschaubilder für STL-Dateien generieren',
  2214. threemfDetected: '3MF-Dateien erkannt',
  2215. threemfExtractionInfo: 'Druckermodell, Material, Farbe und Druckeinstellungen werden automatisch aus 3MF-Dateien extrahiert.',
  2216. willBeExtracted: 'Wird extrahiert',
  2217. filesExtracted: '{{count}} Dateien extrahiert',
  2218. uploadComplete: 'Upload abgeschlossen: {{succeeded}} erfolgreich',
  2219. uploadFailed: '{{count}} fehlgeschlagen',
  2220. uploading: 'Hochladen...',
  2221. changeLink: 'Verknüpfung ändern...',
  2222. linkTo: 'Verknüpfen mit...',
  2223. linkToProjectOrArchive: 'Mit Projekt oder Archiv verknüpfen',
  2224. addToQueue: 'Zur Warteschlange',
  2225. schedulePrint: 'Planen',
  2226. generateThumbnail: 'Vorschaubild generieren',
  2227. generateThumbnails: 'Vorschaubilder generieren',
  2228. generateThumbnailsForMissing: 'Vorschaubilder für STL-Dateien ohne Vorschau generieren',
  2229. gridView: 'Rasteransicht',
  2230. listView: 'Listenansicht',
  2231. lowDiskSpaceWarning: 'Warnung: Wenig Speicherplatz',
  2232. lowDiskSpaceDetails: 'Nur {{free}} frei von {{total}} gesamt. Schwellenwert ist auf {{threshold}} GB eingestellt.',
  2233. files: 'Dateien',
  2234. folders: 'Ordner',
  2235. size: 'Größe',
  2236. free: 'Frei',
  2237. allFiles: 'Alle Dateien',
  2238. wrap: 'Umbrechen',
  2239. enableTextWrapping: 'Textumbruch aktivieren',
  2240. disableTextWrapping: 'Textumbruch deaktivieren',
  2241. dragToResizeTooltip: 'Ziehen zum Ändern der Größe, Doppelklick zum Zurücksetzen',
  2242. searchFiles: 'Dateien suchen...',
  2243. allTypes: 'Alle Typen',
  2244. prints: 'Drucke',
  2245. ascending: 'Aufsteigend',
  2246. descending: 'Absteigend',
  2247. resultsCount: '{{showing}} von {{total}} Dateien',
  2248. selectAll: 'Alle auswählen',
  2249. deselectAll: 'Auswahl aufheben',
  2250. selected: '{{count}} ausgewählt',
  2251. adding: 'Hinzufügen...',
  2252. loadingFiles: 'Dateien werden geladen...',
  2253. folderIsEmpty: 'Ordner ist leer',
  2254. noFilesYet: 'Noch keine Dateien',
  2255. folderEmptyDescription: 'Laden Sie Dateien hoch oder verschieben Sie Dateien in diesen Ordner.',
  2256. noFilesDescription: 'Laden Sie Dateien hoch, um Ihre Druckdateien zu organisieren.',
  2257. noMatchingFiles: 'Keine passenden Dateien',
  2258. noMatchingFilesDescription: 'Keine Dateien entsprechen Ihren aktuellen Such- oder Filterkriterien.',
  2259. clearFilters: 'Filter zurücksetzen',
  2260. printedCount: '{{count}}x gedruckt',
  2261. uploadedBy: 'Hochgeladen von',
  2262. deleteFolder: 'Ordner löschen',
  2263. deleteFile: 'Datei löschen',
  2264. deleteFilesCount: '{{count}} Dateien löschen',
  2265. deleteFolderConfirm: 'Möchten Sie diesen Ordner wirklich löschen? Alle Dateien darin werden ebenfalls gelöscht.',
  2266. deleteFileConfirm: 'Möchten Sie diese Datei wirklich löschen?',
  2267. deleteFilesConfirm: 'Möchten Sie {{count}} ausgewählte Dateien wirklich löschen? Diese Aktion kann nicht rückgängig gemacht werden.',
  2268. deleting: 'Wird gelöscht...',
  2269. noPermissionRenameFolder: 'Sie haben keine Berechtigung, Ordner umzubenennen',
  2270. noPermissionLinkFolder: 'Sie haben keine Berechtigung, Ordner zu verknüpfen',
  2271. noPermissionDeleteFolder: 'Sie haben keine Berechtigung, Ordner zu löschen',
  2272. noPermissionPrint: 'Sie haben keine Berechtigung zum Drucken',
  2273. noPermissionAddToQueue: 'Sie haben keine Berechtigung, zur Warteschlange hinzuzufügen',
  2274. noPermissionDownload: 'Sie haben keine Berechtigung, Dateien herunterzuladen',
  2275. noPermissionRenameFile: 'Sie haben keine Berechtigung, diese Datei umzubenennen',
  2276. noPermissionGenerateThumbnail: 'Sie haben keine Berechtigung, Vorschaubilder zu generieren',
  2277. noPermissionDeleteFile: 'Sie haben keine Berechtigung, diese Datei zu löschen',
  2278. noPermissionCreateFolder: 'Sie haben keine Berechtigung, Ordner zu erstellen',
  2279. noPermissionUpload: 'Sie haben keine Berechtigung, Dateien hochzuladen',
  2280. noPermissionMoveFiles: 'Sie haben keine Berechtigung, Dateien zu verschieben',
  2281. noPermissionDeleteFiles: 'Sie haben keine Berechtigung, Dateien zu löschen',
  2282. toast: {
  2283. folderCreated: 'Ordner erstellt',
  2284. folderDeleted: 'Ordner gelöscht',
  2285. fileDeleted: 'Datei gelöscht',
  2286. filesDeleted: '{{count}} Dateien gelöscht',
  2287. filesMoved: 'Dateien verschoben',
  2288. folderLinked: 'Ordner verknüpft',
  2289. folderUnlinked: 'Ordnerverknüpfung aufgehoben',
  2290. addedToQueue: '{{count}} Datei(en) zur Warteschlange hinzugefügt',
  2291. addedToQueuePartial: '{{added}} Datei(en) hinzugefügt, {{failed}} fehlgeschlagen',
  2292. failedToAddToQueue: 'Fehler beim Hinzufügen: {{error}}',
  2293. fileRenamed: 'Datei umbenannt',
  2294. folderRenamed: 'Ordner umbenannt',
  2295. thumbnailsGenerated: '{{count}} Vorschaubild(er) generiert',
  2296. thumbnailsGeneratedPartial: '{{succeeded}} Vorschaubild(er) generiert, {{failed}} fehlgeschlagen',
  2297. noStlMissingThumbnails: 'Keine STL-Dateien ohne Vorschaubild',
  2298. failedToGenerateThumbnails: 'Fehler beim Generieren der Vorschaubilder: {{error}}',
  2299. thumbnailGenerated: 'Vorschaubild generiert',
  2300. failedToGenerateThumbnail: 'Fehler beim Generieren des Vorschaubildes: {{error}}',
  2301. },
  2302. },
  2303. // Projects
  2304. projects: {
  2305. title: 'Projekte',
  2306. subtitle: 'Organisieren und verfolgen Sie Ihre 3D-Druckprojekte',
  2307. newProject: 'Neues Projekt',
  2308. editProject: 'Projekt bearbeiten',
  2309. deleteProject: 'Projekt löschen',
  2310. projectName: 'Projektname',
  2311. description: 'Beschreibung',
  2312. noProjects: 'Noch keine Projekte',
  2313. noProjectsFiltered: 'Keine {{status}} Projekte',
  2314. noProjectsFilteredHelp: 'Sie haben keine {{status}} Projekte. Projekte werden hier angezeigt, wenn sich ihr Status ändert.',
  2315. createFirst: 'Erstellen Sie Ihr erstes Projekt, um verwandte Drucke zu organisieren, den Fortschritt zu verfolgen und Ihre Builds zu verwalten.',
  2316. createFirstButton: 'Erstes Projekt erstellen',
  2317. create: 'Erstellen',
  2318. files: 'Dateien',
  2319. prints: 'Drucke',
  2320. plates: 'Platten',
  2321. parts: 'Teile',
  2322. lastModified: 'Zuletzt geändert',
  2323. deleteConfirm: 'Möchten Sie dieses Projekt wirklich löschen? Archive und Warteschlangenelemente werden getrennt, aber nicht gelöscht.',
  2324. addFiles: 'Dateien hinzufügen',
  2325. removeFile: 'Datei entfernen',
  2326. viewDetails: 'Details anzeigen',
  2327. // Modal fields
  2328. namePlaceholder: 'z.B. Voron 2.4 Build',
  2329. descriptionPlaceholder: 'Optionale Beschreibung...',
  2330. color: 'Farbe',
  2331. targetPlates: 'Ziel-Platten',
  2332. targetPlatesPlaceholder: 'z.B. 25',
  2333. targetPlatesHelp: 'Anzahl der Druckaufträge',
  2334. targetParts: 'Ziel-Teile',
  2335. targetPartsPlaceholder: 'z.B. 150',
  2336. targetPartsHelp: 'Benötigte Objekte insgesamt',
  2337. tagsLabel: 'Tags (kommagetrennt)',
  2338. tagsPlaceholder: 'z.B. voron, funktional, geschenk',
  2339. dueDate: 'Fälligkeitsdatum',
  2340. priority: 'Priorität',
  2341. priorityLow: 'Niedrig',
  2342. priorityNormal: 'Normal',
  2343. priorityHigh: 'Hoch',
  2344. priorityUrgent: 'Dringend',
  2345. // Status
  2346. statusActive: 'Aktiv',
  2347. statusCompleted: 'Abgeschlossen',
  2348. statusArchived: 'Archiviert',
  2349. done: 'Fertig',
  2350. completed: 'abgeschlossen',
  2351. failed: 'fehlgeschlagen',
  2352. inQueue: 'in Warteschlange',
  2353. noPrintsYet: 'Noch keine Drucke',
  2354. // Footer stats
  2355. printJobs: 'Druckaufträge (Platten)',
  2356. partsPrinted: 'Gedruckte Teile',
  2357. failedParts: 'Fehlgeschlagene Teile',
  2358. // Actions
  2359. import: 'Importieren',
  2360. export: 'Exportieren',
  2361. importProject: 'Projekt importieren',
  2362. exportAll: 'Alle Projekte exportieren',
  2363. loading: 'Projekte werden geladen...',
  2364. // Permissions
  2365. noEditPermission: 'Sie haben keine Berechtigung, Projekte zu bearbeiten',
  2366. noDeletePermission: 'Sie haben keine Berechtigung, Projekte zu löschen',
  2367. noCreatePermission: 'Sie haben keine Berechtigung, Projekte zu erstellen',
  2368. noImportPermission: 'Sie haben keine Berechtigung, Projekte zu importieren',
  2369. noExportPermission: 'Sie haben keine Berechtigung, Projekte zu exportieren',
  2370. // Toast
  2371. toast: {
  2372. created: 'Projekt erstellt',
  2373. updated: 'Projekt aktualisiert',
  2374. deleted: 'Projekt gelöscht',
  2375. imported: 'Projekt importiert',
  2376. multipleImported: '{{count}} Projekte importiert',
  2377. importFailed: 'Import fehlgeschlagen',
  2378. exported: 'Projekte exportiert (nur Metadaten)',
  2379. },
  2380. },
  2381. // Project detail page
  2382. projectDetail: {
  2383. notFound: 'Projekt nicht gefunden',
  2384. backToProjects: 'Zurück zu Projekten',
  2385. export: 'Exportieren',
  2386. exportProject: 'Projekt exportieren',
  2387. noExportPermission: 'Sie haben keine Berechtigung, Projekte zu exportieren',
  2388. noEditPermission: 'Sie haben keine Berechtigung, Projekte zu bearbeiten',
  2389. partOf: 'Teil von:',
  2390. priorityLabel: 'Priorität:',
  2391. noPrints: 'Noch keine Drucke in diesem Projekt',
  2392. status: {
  2393. active: 'Aktiv',
  2394. completed: 'Abgeschlossen',
  2395. archived: 'Archiviert',
  2396. },
  2397. priority: {
  2398. low: 'Niedrig',
  2399. normal: 'Normal',
  2400. high: 'Hoch',
  2401. urgent: 'Dringend',
  2402. },
  2403. dueDate: {
  2404. overdue: 'Überfällig',
  2405. today: 'Heute fällig',
  2406. daysLeft: '{{count}} Tage übrig',
  2407. },
  2408. progress: {
  2409. platesProgress: 'Platten-Fortschritt',
  2410. partsProgress: 'Teile-Fortschritt',
  2411. printJobs: 'Druckaufträge',
  2412. parts: 'Teile',
  2413. percentComplete: '{{percent}}% abgeschlossen',
  2414. remaining: '{{count}} verbleibend',
  2415. },
  2416. stats: {
  2417. printJobs: 'Druckaufträge',
  2418. total: 'gesamt',
  2419. failed: '{{count}} fehlgeschlagen',
  2420. partsPrinted: '{{count}} Teile gedruckt',
  2421. printTime: 'Druckzeit',
  2422. filamentUsed: 'Filament verbraucht',
  2423. },
  2424. cost: {
  2425. title: 'Kostenverfolgung',
  2426. filamentCost: 'Filamentkosten',
  2427. energy: 'Energie',
  2428. budget: 'Budget',
  2429. remaining: 'Verbleibend',
  2430. },
  2431. subProjects: {
  2432. title: 'Unterprojekte ({{count}})',
  2433. },
  2434. notes: {
  2435. title: 'Notizen',
  2436. noEditPermission: 'Sie haben keine Berechtigung, Notizen zu bearbeiten',
  2437. placeholder: 'Notizen zu diesem Projekt hinzufügen...',
  2438. empty: 'Noch keine Notizen. Klicken Sie auf Bearbeiten, um Notizen hinzuzufügen.',
  2439. },
  2440. files: {
  2441. title: 'Dateien',
  2442. linkFolders: 'Ordner aus dem Dateimanager verknüpfen',
  2443. forQuickAccess: 'für schnellen Zugriff auf dieses Projekt.',
  2444. fileCount: '{{count}} Datei(en)',
  2445. empty: 'Keine Ordner verknüpft. Gehen Sie zum Dateimanager und verknüpfen Sie einen Ordner mit diesem Projekt.',
  2446. },
  2447. bom: {
  2448. title: 'Stückliste',
  2449. acquired: '{{completed}}/{{total}} beschafft',
  2450. showAll: 'Alle anzeigen',
  2451. hideDone: 'Erledigte ausblenden',
  2452. addPart: 'Teil hinzufügen',
  2453. noAddPermission: 'Sie haben keine Berechtigung, Teile hinzuzufügen',
  2454. partNamePlaceholder: 'Teilename (z.B. M3x8 Schrauben)',
  2455. partName: 'Teilename',
  2456. qty: 'Menge',
  2457. price: 'Preis ({{currency}})',
  2458. sourcingUrlPlaceholder: 'Bezugsquelle-URL (optional)',
  2459. remarksPlaceholder: 'Bemerkungen (optional)',
  2460. deletePart: 'Teil löschen',
  2461. deleteConfirm: 'Möchten Sie "{{name}}" wirklich löschen?',
  2462. noUpdatePermission: 'Sie haben keine Berechtigung, Teile zu aktualisieren',
  2463. noEditPermission: 'Sie haben keine Berechtigung, Teile zu bearbeiten',
  2464. noDeletePermission: 'Sie haben keine Berechtigung, Teile zu löschen',
  2465. totalCost: 'Gesamtkosten:',
  2466. empty: 'Keine Teile in der Stückliste. Fügen Sie Hardware, Elektronik oder andere Komponenten hinzu, um zu verfolgen, was beschafft werden muss.',
  2467. },
  2468. timeline: {
  2469. title: 'Aktivitätsverlauf',
  2470. empty: 'Noch keine Aktivität.',
  2471. },
  2472. template: {
  2473. saveAsTemplate: 'Als Vorlage speichern',
  2474. noCreatePermission: 'Sie haben keine Berechtigung, Vorlagen zu erstellen',
  2475. },
  2476. queue: {
  2477. title: 'Warteschlange',
  2478. viewAll: 'Alle anzeigen',
  2479. printing: '{{count}} druckend',
  2480. queued: '{{count}} in Warteschlange',
  2481. },
  2482. prints: {
  2483. title: 'Drucke ({{count}})',
  2484. },
  2485. toast: {
  2486. projectUpdated: 'Projekt aktualisiert',
  2487. partAdded: 'Teil hinzugefügt',
  2488. partRemoved: 'Teil entfernt',
  2489. exportFailed: 'Export fehlgeschlagen',
  2490. projectExported: 'Projekt exportiert',
  2491. templateCreated: 'Vorlage erstellt',
  2492. },
  2493. },
  2494. // System info
  2495. system: {
  2496. title: 'Systeminformationen',
  2497. version: 'Version',
  2498. uptime: 'Laufzeit',
  2499. cpuUsage: 'CPU-Auslastung',
  2500. memoryUsage: 'Speicherauslastung',
  2501. diskUsage: 'Festplattenauslastung',
  2502. networkInfo: 'Netzwerkinformationen',
  2503. logs: 'Protokolle',
  2504. debugMode: 'Debug-Modus',
  2505. enableDebug: 'Debug-Protokollierung aktivieren',
  2506. disableDebug: 'Debug-Protokollierung deaktivieren',
  2507. downloadLogs: 'Protokolle herunterladen',
  2508. clearLogs: 'Protokolle löschen',
  2509. dockerInfo: 'Docker-Info',
  2510. containerName: 'Container-Name',
  2511. imageName: 'Image-Name',
  2512. platform: 'Plattform',
  2513. architecture: 'Architektur',
  2514. },
  2515. // Library (K Profiles)
  2516. library: {
  2517. title: 'Filament-Bibliothek',
  2518. addFilament: 'Filament hinzufügen',
  2519. editFilament: 'Filament bearbeiten',
  2520. deleteFilament: 'Filament löschen',
  2521. vendor: 'Hersteller',
  2522. material: 'Material',
  2523. color: 'Farbe',
  2524. kFactor: 'K-Faktor',
  2525. temperature: 'Temperatur',
  2526. noFilaments: 'Keine Filamente in der Bibliothek',
  2527. deleteConfirm: 'Möchten Sie dieses Filament wirklich löschen?',
  2528. importFromPrinter: 'Vom Drucker importieren',
  2529. exportToFile: 'In Datei exportieren',
  2530. },
  2531. // Spoolman
  2532. spoolman: {
  2533. title: 'Spoolman-Integration',
  2534. enabled: 'Spoolman aktiviert',
  2535. url: 'Spoolman URL',
  2536. connected: 'Verbunden',
  2537. disconnected: 'Nicht verbunden',
  2538. testConnection: 'Verbindung testen',
  2539. sync: 'Synchronisieren',
  2540. syncing: 'Synchronisiert...',
  2541. lastSync: 'Letzte Synchronisierung',
  2542. linkToSpoolman: 'Mit Spoolman verknüpfen',
  2543. openInSpoolman: 'In Spoolman öffnen',
  2544. unlinkSpool: 'Spule trennen',
  2545. selectSpool: 'Spule auswählen',
  2546. noUnlinkedSpools: 'Keine nicht verknüpften Spulen verfügbar',
  2547. linkSuccess: 'Spule erfolgreich mit Spoolman verknüpft',
  2548. linkFailed: 'Verknüpfung mit Spoolman fehlgeschlagen',
  2549. spoolId: 'Spulen-ID',
  2550. fillSourceLabel: '(Spoolman)',
  2551. weight: 'Gewicht',
  2552. remaining: 'Verbleibend',
  2553. disableWeightSync: 'AMS-Gewichtsschätzung deaktivieren',
  2554. disableWeightSyncDesc: 'Verbleibende Kapazität nicht aus AMS-Schätzungen aktualisieren. Verwenden Sie dies, wenn Sie die Verbrauchserfassung von Spoolman gegenüber den prozentualen AMS-Schätzungen bevorzugen. Neue Spulen verwenden weiterhin die AMS-Schätzung als Anfangsgewicht.',
  2555. reportPartialUsage: 'Teilverbrauch bei fehlgeschlagenen Drucken melden',
  2556. reportPartialUsageDesc: 'Wenn ein Druck fehlschlägt oder abgebrochen wird, den geschätzten Filamentverbrauch bis zu diesem Zeitpunkt basierend auf dem Schichtfortschritt melden.',
  2557. },
  2558. // Inventar
  2559. inventory: {
  2560. title: 'Spulen-Inventar',
  2561. addSpool: 'Spule hinzufügen',
  2562. editSpool: 'Spule bearbeiten',
  2563. material: 'Material',
  2564. selectMaterial: 'Material auswählen...',
  2565. subtype: 'Untertyp',
  2566. brand: 'Marke',
  2567. searchBrand: 'Marke suchen...',
  2568. useCustomBrand: '"{{brand}}" verwenden',
  2569. useCustomMaterial: 'Benutzerdefiniertes Material verwenden: {{material}}',
  2570. colorName: 'Farbname',
  2571. colorNamePlaceholder: 'Jade White, Fire Red...',
  2572. color: 'Farbe',
  2573. hexColor: 'Hex-Farbe',
  2574. pickColor: 'Benutzerdefinierte Farbe wählen',
  2575. labelWeight: 'Nenngewicht',
  2576. coreWeight: 'Leergewicht der Spule',
  2577. searchSpoolWeight: 'Spulengewicht suchen...',
  2578. weightUsed: 'Verbraucht',
  2579. currentWeight: 'Restgewicht',
  2580. measuredWeight: 'Gemessenes Gewicht',
  2581. costPerKg: 'Kosten pro kg',
  2582. measuredWeightError: 'Das gemessene Gewicht muss zwischen {{min}}g und {{max}}g liegen.',
  2583. slicerFilament: 'Slicer-Filament',
  2584. slicerFilamentName: 'Slicer-Preset-Name',
  2585. slicerPreset: 'Slicer-Preset',
  2586. searchPresets: 'Filament-Presets suchen...',
  2587. selectedPreset: 'Ausgewählt',
  2588. noPresetsFound: 'Keine Presets gefunden',
  2589. tempOverrides: 'Temperatur-Überschreibungen',
  2590. note: 'Notiz',
  2591. notePlaceholder: 'Zusätzliche Notizen zu dieser Spule...',
  2592. archive: 'Archivieren',
  2593. restore: 'Wiederherstellen',
  2594. noSpools: 'Noch keine Spulen. Fügen Sie Ihre erste Spule hinzu.',
  2595. noManualSpools: 'Keine manuell hinzugefügten Spulen verfügbar. Fügen Sie zuerst eine Spule zum Inventar hinzu.',
  2596. kProfiles: 'K-Profile',
  2597. addKProfile: 'K-Profil hinzufügen',
  2598. assignSpool: 'Spule zuweisen',
  2599. unassignSpool: 'Zuweisung aufheben',
  2600. assignSuccess: 'Spule zugewiesen und AMS-Slot konfiguriert',
  2601. assignFailed: 'Spulenzuweisung fehlgeschlagen',
  2602. selectSpool: 'Wählen Sie eine Spule für diesen Slot',
  2603. assigned: 'Zugewiesen',
  2604. assigning: 'Wird zugewiesen...',
  2605. searchSpools: 'Spulen suchen...',
  2606. allMaterials: 'Alle Materialien',
  2607. filterByBrand: 'Nach Marke filtern...',
  2608. showArchived: 'Archivierte anzeigen',
  2609. quickAdd: 'Schnellerfassung (Lager)',
  2610. quantity: 'Menge',
  2611. stock: 'Lager',
  2612. configured: 'Konfiguriert',
  2613. spoolsCreated: '{{count}} Spulen erstellt',
  2614. spoolCreated: 'Spule erstellt',
  2615. spoolUpdated: 'Spule aktualisiert',
  2616. spoolDeleted: 'Spule gelöscht',
  2617. spoolArchived: 'Spule archiviert',
  2618. spoolRestored: 'Spule wiederhergestellt',
  2619. deleteConfirm: 'Möchten Sie diese Spule wirklich löschen? Dies kann nicht rückgängig gemacht werden.',
  2620. archiveConfirm: 'Möchten Sie diese Spule wirklich archivieren?',
  2621. advancedSettings: 'Erweiterte Einstellungen',
  2622. filamentInfoTab: 'Filament-Info',
  2623. paProfileTab: 'PA-Profil',
  2624. filamentInfo: 'Filament',
  2625. additional: 'Zusätzlich',
  2626. loadingPresets: 'Cloud-Presets werden geladen...',
  2627. cloudConnected: 'Cloud verbunden',
  2628. cloudNotConnected: 'Cloud nicht verbunden (Standardwerte)',
  2629. recentColors: 'Zuletzt',
  2630. searchColors: 'Farben suchen...',
  2631. searchResults: 'Suchergebnisse',
  2632. allColors: 'Alle Farben',
  2633. commonColors: 'Häufige Farben',
  2634. showLess: 'Weniger',
  2635. showAll: 'Alle',
  2636. noColorsFound: 'Keine Farben gefunden',
  2637. noResults: 'Keine Ergebnisse',
  2638. selectMaterialFirst: 'Bitte zuerst ein Material im Filament-Info Tab auswählen.',
  2639. noPrintersConfigured: 'Keine Drucker konfiguriert. Fügen Sie Drucker hinzu.',
  2640. matchingFilter: 'Filter',
  2641. anyBrand: 'Jede Marke',
  2642. anyVariant: 'Jede Variante',
  2643. autoSelect: 'Auto-Auswahl',
  2644. matches: 'Treffer',
  2645. match: 'Treffer',
  2646. noMatches: 'Keine Treffer',
  2647. connected: 'Verbunden',
  2648. offline: 'Offline',
  2649. printerOffline: 'Drucker ist offline. Verbinden Sie ihn, um Kalibrierungsprofile anzuzeigen.',
  2650. noKProfilesMatch: 'Keine K-Profile stimmen mit dem gewählten Filament überein.',
  2651. leftNozzle: 'Linke Düse',
  2652. rightNozzle: 'Rechte Düse',
  2653. profilesSelected: 'Kalibrierungsprofil(e) ausgewählt',
  2654. // Stats & enhanced table
  2655. totalInventory: 'Gesamtbestand',
  2656. totalConsumed: 'Gesamtverbrauch',
  2657. byMaterial: 'Nach Material',
  2658. inPrinter: 'Im Drucker',
  2659. lowStock: 'Niedriger Bestand',
  2660. sinceTracking: 'Seit Beginn der Erfassung',
  2661. loadedInAms: 'Im AMS/Ext geladen',
  2662. remaining: 'Verbleibend',
  2663. weightCheck: 'Gewichtskontrolle',
  2664. lastWeighed: 'Zuletzt gewogen',
  2665. neverWeighed: 'Nie gewogen',
  2666. search: 'Spulen suchen...',
  2667. showing: 'Zeige',
  2668. to: 'bis',
  2669. of: 'von',
  2670. show: 'Zeige',
  2671. spools: 'Spulen',
  2672. spool: 'Spule',
  2673. page: 'Seite',
  2674. noSpoolsMatch: 'Keine Ergebnisse',
  2675. noSpoolsMatchDesc: 'Versuchen Sie, Ihre Suche oder Filter anzupassen.',
  2676. active: 'Aktiv',
  2677. archived: 'Archiviert',
  2678. all: 'Alle',
  2679. used: 'Verwendet',
  2680. new: 'Neu',
  2681. clearFilters: 'Filter löschen',
  2682. table: 'Tabelle',
  2683. cards: 'Karten',
  2684. net: 'Netto',
  2685. // Grouping
  2686. groupSimilar: 'Gruppieren',
  2687. groupedSpools: '{{count}} identische Spulen',
  2688. groupedRows: 'Zeilen',
  2689. // Column config
  2690. columns: 'Spalten',
  2691. configureColumns: 'Spalten konfigurieren',
  2692. configureColumnsDesc: 'Ziehen zum Neuordnen oder Pfeile verwenden. Sichtbarkeit mit dem Augensymbol umschalten.',
  2693. visible: 'sichtbar',
  2694. reset: 'Zurücksetzen',
  2695. cancel: 'Abbrechen',
  2696. applyChanges: 'Änderungen anwenden',
  2697. moveUp: 'Nach oben',
  2698. moveDown: 'Nach unten',
  2699. hideColumn: 'Spalte ausblenden',
  2700. showColumn: 'Spalte einblenden',
  2701. // Tag-Verknüpfung
  2702. linkToSpool: 'Mit Spule verknüpfen',
  2703. tagLinked: 'Tag mit Spule verknüpft',
  2704. tagLinkFailed: 'Tag-Verknüpfung fehlgeschlagen',
  2705. tagAlreadyLinked: 'Tag bereits mit anderer Spule verknüpft',
  2706. unknownTag: 'Unbekannter RFID-Tag erkannt',
  2707. // Verbrauchshistorie
  2708. usageHistory: 'Verbrauchshistorie',
  2709. noUsageHistory: 'Noch kein Verbrauch erfasst',
  2710. printName: 'Druckname',
  2711. weightConsumed: 'Verbrauchtes Gewicht',
  2712. clearHistory: 'Löschen',
  2713. historyCleared: 'Verbrauchshistorie gelöscht',
  2714. fillSourceLabel: '(Inv)',
  2715. lowStockThresholdError: 'Der Schwellenwert muss zwischen 0.1 und 99.9 liegen',
  2716. },
  2717. // Timelapse
  2718. timelapse: {
  2719. title: 'Zeitraffer',
  2720. create: 'Zeitraffer erstellen',
  2721. download: 'Herunterladen',
  2722. delete: 'Löschen',
  2723. preview: 'Vorschau',
  2724. frameRate: 'Bildrate',
  2725. quality: 'Qualität',
  2726. processing: 'Wird verarbeitet...',
  2727. noTimelapses: 'Keine Zeitraffer verfügbar',
  2728. },
  2729. // AMS
  2730. ams: {
  2731. title: 'AMS',
  2732. slot: 'Slot',
  2733. empty: 'Leer',
  2734. emptySlot: 'Leerer Slot',
  2735. unknown: 'Unbekannt',
  2736. humidity: 'Luftfeuchtigkeit',
  2737. temperature: 'Temperatur',
  2738. filamentType: 'Filamenttyp',
  2739. filamentColor: 'Farbe',
  2740. remaining: 'Verbleibend',
  2741. history: 'AMS-Verlauf',
  2742. noHistory: 'Kein Verlauf verfügbar',
  2743. configureSlot: 'Slot konfigurieren',
  2744. externalSpool: 'Externe Spule',
  2745. profile: 'Profil',
  2746. kFactor: 'K-Faktor',
  2747. fill: 'Füllstand',
  2748. configure: 'Konfigurieren',
  2749. used: 'verwendet',
  2750. remainingUnit: 'verbleibend',
  2751. },
  2752. // Print modal
  2753. printModal: {
  2754. title: 'Druck starten',
  2755. selectPrinter: 'Drucker auswählen',
  2756. selectPlate: 'Platte auswählen',
  2757. filamentMapping: 'Filamentzuordnung',
  2758. totalCost: 'Gesamtkosten:',
  2759. slotRemainingShort: ' - {{grams}}g übrig',
  2760. printSettings: 'Druckeinstellungen',
  2761. bedLeveling: 'Bett-Nivellierung',
  2762. flowCalibration: 'Fluss-Kalibrierung',
  2763. vibrationCalibration: 'Vibrations-Kalibrierung',
  2764. layerInspection: 'Erste-Schicht-Prüfung',
  2765. timelapse: 'Zeitraffer',
  2766. startPrint: 'Druck starten',
  2767. addToQueue: 'Zur Warteschlange hinzufügen',
  2768. cancel: 'Abbrechen',
  2769. noPrintersAvailable: 'Keine Drucker verfügbar',
  2770. printerBusy: 'Drucker ist beschäftigt',
  2771. printerOffline: 'Drucker ist offline',
  2772. sameTypeDifferentColor: 'Gleicher Typ, andere Farbe',
  2773. filamentTypeNotLoaded: 'Filamenttyp nicht geladen',
  2774. openCalendar: 'Kalender öffnen',
  2775. leftNozzle: 'L',
  2776. rightNozzle: 'R',
  2777. leftNozzleTooltip: 'Linke Düse',
  2778. rightNozzleTooltip: 'Rechte Düse',
  2779. filamentOverride: 'Filament-Überschreibung',
  2780. filamentOverrideHint: 'Filamente für modellbasierte Zuweisung optional überschreiben. Der Planer wird gegen die ausgewählten Filamente statt der ursprünglichen 3MF-Werte abgleichen.',
  2781. originalFilament: 'Original',
  2782. overrideWith: 'Ersetzen mit',
  2783. resetToOriginal: 'Auf Original zurücksetzen',
  2784. },
  2785. // Backup
  2786. backup: {
  2787. title: 'Sichern & Wiederherstellen',
  2788. createBackup: 'Sicherung erstellen',
  2789. restoreBackup: 'Sicherung wiederherstellen',
  2790. restoreDescription: 'Alle Daten aus einer Sicherungsdatei ersetzen',
  2791. downloadBackup: 'Sicherung herunterladen',
  2792. uploadBackup: 'Sicherung hochladen',
  2793. lastBackup: 'Letzte Sicherung',
  2794. autoBackup: 'Automatische Sicherung',
  2795. backupNow: 'Jetzt sichern',
  2796. restoreWarning: 'Warnung: Das Wiederherstellen einer Sicherung überschreibt alle aktuellen Daten.',
  2797. includeArchives: 'Archive einschließen',
  2798. includeSettings: 'Einstellungen einschließen',
  2799. includeProfiles: 'Profile einschließen',
  2800. backupSuccess: 'Sicherung erfolgreich erstellt',
  2801. restoreSuccess: 'Sicherung erfolgreich wiederhergestellt',
  2802. backupFailed: 'Sicherung fehlgeschlagen',
  2803. restoreFailed: 'Wiederherstellung fehlgeschlagen',
  2804. restoreNote: 'Virtueller Drucker wird während der Wiederherstellung gestoppt',
  2805. },
  2806. // Tags
  2807. tags: {
  2808. title: 'Tags',
  2809. addTag: 'Tag hinzufügen',
  2810. editTag: 'Tag bearbeiten',
  2811. deleteTag: 'Tag löschen',
  2812. tagName: 'Tag-Name',
  2813. tagColor: 'Tag-Farbe',
  2814. noTags: 'Keine Tags',
  2815. deleteConfirm: 'Möchten Sie diesen Tag wirklich löschen?',
  2816. manageTags: 'Tags verwalten',
  2817. },
  2818. // Upload modal (archives)
  2819. uploadModal: {
  2820. title: '3MF-Dateien hochladen',
  2821. dragDrop: '3MF-Dateien hierher ziehen',
  2822. or: 'oder',
  2823. browseFiles: 'Dateien durchsuchen',
  2824. extractionInfo: 'Das Druckermodell wird automatisch aus den 3MF-Datei-Metadaten extrahiert.',
  2825. uploaded: 'hochgeladen',
  2826. failed: 'fehlgeschlagen',
  2827. uploading: 'Wird hochgeladen...',
  2828. upload: 'Hochladen',
  2829. uploadFailed: 'Hochladen fehlgeschlagen',
  2830. },
  2831. // Edit archive modal
  2832. editArchive: {
  2833. title: 'Archiv bearbeiten',
  2834. name: 'Name',
  2835. namePlaceholder: 'Druckname',
  2836. printer: 'Drucker',
  2837. noPrinter: 'Kein Drucker',
  2838. project: 'Projekt',
  2839. noProject: 'Kein Projekt',
  2840. itemsPrinted: 'Gedruckte Teile',
  2841. itemsPrintedHelp: 'Anzahl der in diesem Druckauftrag produzierten Teile',
  2842. notes: 'Notizen',
  2843. notesPlaceholder: 'Notizen zu diesem Druck hinzufügen...',
  2844. externalLink: 'Externer Link',
  2845. externalLinkPlaceholder: 'https://printables.com/model/...',
  2846. externalLinkHelp: 'Link zu Printables, Thingiverse oder anderer Quelle',
  2847. tags: 'Tags',
  2848. tagsPlaceholder: 'Tags hinzufügen...',
  2849. addMoreTags: 'Weitere Tags hinzufügen...',
  2850. matchingTags: 'Übereinstimmend mit "{{query}}"',
  2851. existingTags: 'Vorhandene Tags',
  2852. clickToAdd: '(zum Hinzufügen klicken)',
  2853. status: 'Status',
  2854. failureReason: 'Fehlergrund',
  2855. selectReason: 'Grund auswählen...',
  2856. photos: 'Fotos des Druckergebnisses',
  2857. photosHelp: 'Klicken Sie auf + um Fotos Ihres Druckergebnisses hinzuzufügen',
  2858. printResult: 'Druckergebnis',
  2859. saving: 'Wird gespeichert...',
  2860. // Failure reasons
  2861. failureReasons: {
  2862. adhesionFailure: 'Haftungsfehler',
  2863. spaghettiDetached: 'Spaghetti / Abgelöst',
  2864. layerShift: 'Schichtversatz',
  2865. cloggedNozzle: 'Verstopfte Düse',
  2866. filamentRunout: 'Filament aufgebraucht',
  2867. warping: 'Verformung',
  2868. stringing: 'Fadenziehen',
  2869. underExtrusion: 'Unterextrusion',
  2870. powerFailure: 'Stromausfall',
  2871. userCancelled: 'Vom Benutzer abgebrochen',
  2872. other: 'Sonstiges',
  2873. },
  2874. // Archive statuses
  2875. statuses: {
  2876. completed: 'Abgeschlossen',
  2877. failed: 'Fehlgeschlagen',
  2878. aborted: 'Abgebrochen',
  2879. printing: 'Druckt',
  2880. },
  2881. },
  2882. // K-Profiles
  2883. kProfiles: {
  2884. title: 'K-Profile',
  2885. noPrintersConfigured: 'Keine Drucker konfiguriert',
  2886. addPrinterInSettings: 'Fügen Sie einen Drucker in den Einstellungen hinzu, um K-Profile zu verwalten',
  2887. noActivePrinters: 'Keine aktiven Drucker',
  2888. enablePrinterConnection: 'Aktivieren Sie eine Druckerverbindung, um K-Profile anzuzeigen',
  2889. loadingProfiles: 'Lade K-Profile...',
  2890. printerOffline: 'Drucker offline',
  2891. printerOfflineDesc: 'Der ausgewählte Drucker ist nicht verbunden. Schalten Sie ihn ein, um K-Profile anzuzeigen.',
  2892. noMatchingProfiles: 'Keine passenden Profile',
  2893. noMatchingProfilesDesc: 'Keine Profile entsprechen Ihren Suchkriterien',
  2894. noKProfiles: 'Keine K-Profile',
  2895. noKProfilesDesc: 'Keine Druckvorschub-Profile für {{diameter}}mm Düse gefunden',
  2896. createFirstProfile: 'Erstes Profil erstellen',
  2897. // Controls
  2898. printer: 'Drucker',
  2899. nozzle: 'Düse',
  2900. refresh: 'Aktualisieren',
  2901. addProfile: 'Profil hinzufügen',
  2902. export: 'Exportieren',
  2903. import: 'Importieren',
  2904. select: 'Auswählen',
  2905. selectAll: 'Alle auswählen',
  2906. delete: 'Löschen',
  2907. // Filters
  2908. searchPlaceholder: 'Nach Name oder Filament suchen...',
  2909. allExtruders: 'Alle Extruder',
  2910. leftOnly: 'Nur links',
  2911. rightOnly: 'Nur rechts',
  2912. allFlow: 'Alle Flusstypen',
  2913. hfOnly: 'Nur HF',
  2914. sOnly: 'Nur S',
  2915. sortName: 'Sortieren: Name',
  2916. sortKValue: 'Sortieren: K-Wert',
  2917. sortFilament: 'Sortieren: Filament',
  2918. // Dual extruder labels
  2919. leftExtruder: 'Linker Extruder',
  2920. rightExtruder: 'Rechter Extruder',
  2921. // Modal
  2922. modal: {
  2923. addTitle: 'K-Profil hinzufügen',
  2924. editTitle: 'K-Profil bearbeiten',
  2925. profileName: 'Profilname',
  2926. profileNamePlaceholder: 'Mein PLA-Profil',
  2927. kValue: 'K-Wert',
  2928. kValuePlaceholder: '0,020',
  2929. kValueHelp: 'Typischer Bereich: 0,01 - 0,06 für PLA, 0,02 - 0,10 für PETG',
  2930. filament: 'Filament',
  2931. selectFilament: 'Filament auswählen...',
  2932. noFilamentsHelp: 'Keine Filamente gefunden. Erstellen Sie zuerst ein K-Profil in Bambu Studio.',
  2933. flowType: 'Flusstyp',
  2934. highFlow: 'High Flow',
  2935. standard: 'Standard',
  2936. nozzleSize: 'Düsengröße',
  2937. extruder: 'Extruder',
  2938. extruders: 'Extruder',
  2939. left: 'Links',
  2940. right: 'Rechts',
  2941. notes: 'Notizen (lokal gespeichert)',
  2942. notesPlaceholder: 'Notizen zu diesem Profil hinzufügen...',
  2943. notesHelp: 'Notizen werden in Bambuddy gespeichert, nicht auf dem Drucker',
  2944. syncing: 'Synchronisiert mit Drucker...',
  2945. savingExtruder: 'Speichern auf Extruder {{current}}/{{total}}...',
  2946. pleaseWait: 'Bitte warten',
  2947. },
  2948. // Delete confirmation
  2949. deleteConfirm: {
  2950. title: 'Profil löschen',
  2951. cannotUndo: 'Dies kann nicht rückgängig gemacht werden',
  2952. message: 'Möchten Sie "{{name}}" wirklich vom Drucker löschen?',
  2953. },
  2954. // Bulk delete
  2955. bulkDelete: {
  2956. title: 'Profile löschen',
  2957. cannotUndo: 'Dies kann nicht rückgängig gemacht werden',
  2958. message: 'Möchten Sie wirklich {{count}} ausgewählte Profile vom Drucker löschen?',
  2959. },
  2960. // Toast
  2961. toast: {
  2962. profileSaved: 'K-Profil gespeichert',
  2963. profilesSaved: 'K-Profil auf {{count}} Extrudern gespeichert',
  2964. selectAtLeastOneExtruder: 'Bitte wählen Sie mindestens einen Extruder aus',
  2965. profileDeleted: 'K-Profil gelöscht',
  2966. profilesDeleted: '{{count}} Profile gelöscht',
  2967. exportedProfiles: '{{count}} Profile exportiert',
  2968. importedProfiles: '{{count}} von {{total}} Profilen importiert',
  2969. noProfilesToExport: 'Keine Profile zum Exportieren',
  2970. invalidFileFormat: 'Ungültiges Dateiformat',
  2971. failedToParseImport: 'Import-Datei konnte nicht gelesen werden',
  2972. failedToSaveBatch: 'K-Profile konnten nicht gespeichert werden',
  2973. noteSaved: 'Notiz gespeichert',
  2974. failedToSaveNote: 'Notiz konnte nicht gespeichert werden',
  2975. },
  2976. // Permissions
  2977. permission: {
  2978. noRead: 'Sie haben keine Berechtigung, Profile zu aktualisieren',
  2979. noCreate: 'Sie haben keine Berechtigung, Profile hinzuzufügen',
  2980. noUpdate: 'Sie haben keine Berechtigung, K-Profile zu aktualisieren',
  2981. noDelete: 'Sie haben keine Berechtigung, K-Profile zu löschen',
  2982. noExport: 'Sie haben keine Berechtigung, Profile zu exportieren',
  2983. noImport: 'Sie haben keine Berechtigung, Profile zu importieren',
  2984. },
  2985. },
  2986. // Virtual Printer
  2987. virtualPrinter: {
  2988. title: 'Virtueller Drucker',
  2989. running: 'Läuft',
  2990. stopped: 'Gestoppt',
  2991. description: {
  2992. default: 'Aktiviere einen virtuellen Drucker, der in Bambu Studio und OrcaSlicer erscheint. Dateien, die an diesen Drucker gesendet werden, werden direkt archiviert ohne zu drucken.',
  2993. proxy: 'Aktiviere einen Proxy, der Slicer-Datenverkehr an einen echten Drucker weiterleitet, um Ferndruck über jedes Netzwerk zu ermöglichen.',
  2994. },
  2995. enable: {
  2996. title: 'Virtuellen Drucker aktivieren',
  2997. visibleInSlicer: 'Sichtbar als "Bambuddy" in der Slicer-Erkennung',
  2998. proxyingTo: 'Proxy zu {{name}}',
  2999. notActive: 'Nicht aktiv',
  3000. },
  3001. model: {
  3002. title: 'Druckermodell',
  3003. description: 'Wähle welches Druckermodell emuliert werden soll.',
  3004. restartWarning: 'Das Ändern des Modells startet den virtuellen Drucker neu',
  3005. },
  3006. accessCode: {
  3007. title: 'Zugangscode',
  3008. isSet: 'Zugangscode ist gesetzt',
  3009. notSet: 'Kein Zugangscode gesetzt - erforderlich zum Aktivieren',
  3010. placeholder: '8-Zeichen-Code eingeben',
  3011. placeholderChange: 'Neuen Code eingeben zum Ändern',
  3012. hint: 'Muss genau 8 Zeichen lang sein. Wird von Slicern zur Authentifizierung verwendet.',
  3013. charCount: '({{count}}/8)',
  3014. },
  3015. targetPrinter: {
  3016. title: 'Zieldrucker',
  3017. configured: 'Proxy-Ziel konfiguriert',
  3018. notConfigured: 'Kein Zieldrucker ausgewählt - erforderlich für Proxy-Modus',
  3019. placeholder: 'Drucker auswählen...',
  3020. hint: 'Wähle den Drucker aus, an den der Slicer-Datenverkehr weitergeleitet werden soll. Der Drucker muss im LAN-Modus sein.',
  3021. noPrinters: 'Keine Drucker konfiguriert. Füge zuerst einen Drucker hinzu, um den Proxy-Modus zu verwenden.',
  3022. },
  3023. remoteInterface: {
  3024. title: 'Netzwerkschnittstelle überschreiben',
  3025. configured: 'Schnittstellenüberschreibung aktiv',
  3026. optional: 'Optional - verwenden wenn die automatisch erkannte IP falsch ist (z.B. mehrere NICs, Docker, VPN)',
  3027. placeholder: 'Automatisch erkennen (Standard)...',
  3028. hint: 'Überschreibt die per SSDP beworbene und im TLS-Zertifikat verwendete IP-Adresse. Nützlich wenn Bambuddy mehrere Netzwerkschnittstellen hat.',
  3029. },
  3030. mode: {
  3031. title: 'Modus',
  3032. archive: 'Archivieren',
  3033. archiveDesc: 'Dateien sofort archivieren',
  3034. review: 'Überprüfen',
  3035. reviewDesc: 'Vor dem Archivieren überprüfen',
  3036. queue: 'Warteschlange',
  3037. queueDesc: 'Archivieren und zur Warteschlange hinzufügen',
  3038. proxy: 'Proxy',
  3039. proxyDesc: 'An echten Drucker weiterleiten',
  3040. },
  3041. setupRequired: {
  3042. title: 'Einrichtung erforderlich',
  3043. description: 'Die virtuelle Druckerfunktion erfordert zusätzliche Systemkonfiguration, bevor sie funktioniert. Dies beinhaltet Portweiterleitung, Firewall-Regeln und plattformspezifische Einstellungen.',
  3044. readGuide: 'Lese die Einrichtungsanleitung vor dem Aktivieren',
  3045. },
  3046. howItWorks: {
  3047. title: 'So funktioniert es',
  3048. step1: 'Im selben LAN erscheinen virtuelle Drucker automatisch in deinem Slicer (Bambu Studio / OrcaSlicer). Aus anderen Netzwerken füge sie manuell per IP-Adresse und Zugangscode hinzu.',
  3049. step2: 'Im Archiv-, Überprüfungs- und Warteschlangen-Modus verwende die "Senden"-Funktion im Slicer, um 3MF-Dateien an Bambuddy zu senden. Der Slicer zeigt "Druck erfolgreich" — die Datei wird gespeichert, nicht gedruckt.',
  3050. step3: 'Im Proxy-Modus leitet der virtuelle Drucker den gesamten Datenverkehr an einen echten Drucker weiter — Drucke starten sofort wie bei einer direkten Verbindung.',
  3051. },
  3052. status: {
  3053. title: 'Status-Details',
  3054. printerName: 'Druckername',
  3055. model: 'Modell',
  3056. serialNumber: 'Seriennummer',
  3057. mode: 'Modus',
  3058. pendingFiles: 'Ausstehende Dateien',
  3059. targetPrinter: 'Zieldrucker',
  3060. ftpPort: 'FTP-Port',
  3061. mqttPort: 'MQTT-Port',
  3062. ftpConnections: 'FTP-Verbindungen',
  3063. mqttConnections: 'MQTT-Verbindungen',
  3064. },
  3065. toast: {
  3066. updated: 'Virtuelle Druckereinstellungen aktualisiert',
  3067. failedToUpdate: 'Einstellungen konnten nicht aktualisiert werden',
  3068. accessCodeRequired: 'Bitte zuerst einen Zugangscode setzen',
  3069. targetPrinterRequired: 'Bitte zuerst einen Zieldrucker auswählen',
  3070. bindIpRequired: 'Bitte zuerst eine Bind-IP setzen',
  3071. accessCodeEmpty: 'Zugangscode darf nicht leer sein',
  3072. accessCodeLength: 'Zugangscode muss genau 8 Zeichen lang sein',
  3073. created: 'Virtueller Drucker erstellt',
  3074. failedToCreate: 'Virtueller Drucker konnte nicht erstellt werden',
  3075. deleted: 'Virtueller Drucker gelöscht',
  3076. failedToDelete: 'Virtueller Drucker konnte nicht gelöscht werden',
  3077. },
  3078. list: {
  3079. title: 'Virtuelle Drucker',
  3080. add: 'Hinzufügen',
  3081. addFirst: 'Virtuellen Drucker hinzufügen',
  3082. empty: 'Keine virtuellen Drucker konfiguriert. Fügen Sie einen hinzu, um zu beginnen.',
  3083. },
  3084. bindIp: {
  3085. title: 'Bind-Interface',
  3086. placeholder: 'Interface auswählen...',
  3087. hint: 'Netzwerkinterface, an das dieser virtuelle Drucker gebunden wird. Muss pro Drucker eindeutig sein.',
  3088. },
  3089. proxy: {
  3090. accessCodeHint: 'Im Proxy-Modus den Zugangscode des Zieldruckers im Slicer verwenden. Die Verbindung wird transparent zum echten Drucker weitergeleitet.',
  3091. },
  3092. addDialog: {
  3093. title: 'Virtuellen Drucker hinzufügen',
  3094. name: 'Name',
  3095. hint: 'Sie können Zugangscode, Zieldrucker und andere Einstellungen nach dem Erstellen konfigurieren.',
  3096. create: 'Erstellen',
  3097. },
  3098. deleteConfirm: {
  3099. title: 'Virtuellen Drucker löschen',
  3100. message: 'Möchten Sie "{{name}}" wirklich löschen? Dies stoppt alle Dienste für diesen Drucker.',
  3101. },
  3102. },
  3103. // Model Viewer
  3104. modelViewer: {
  3105. openInSlicer: 'Im Slicer öffnen',
  3106. tabs: {
  3107. model: '3D-Modell',
  3108. gcode: 'G-Code Vorschau',
  3109. },
  3110. notAvailable: 'nicht verfügbar',
  3111. notSliced: 'nicht geslicet',
  3112. plates: 'Platten',
  3113. allPlates: 'Alle Platten',
  3114. plateNumber: 'Platte {{number}}',
  3115. plateCount: '{{count}} Platte',
  3116. plateCount_other: '{{count}} Platten',
  3117. objectCount: '{{count}} Objekt',
  3118. objectCount_other: '{{count}} Objekte',
  3119. filamentCount: '{{count}} Filament',
  3120. filamentCount_other: '{{count}} Filamente',
  3121. eta: 'ETA {{minutes}} Min',
  3122. noPreview: 'Keine Vorschau für diese Datei verfügbar',
  3123. pagination: {
  3124. pageOf: 'Seite {{current}} von {{total}}',
  3125. prev: 'Zurück',
  3126. next: 'Weiter',
  3127. },
  3128. errors: {
  3129. failedToLoad: 'Datei konnte nicht geladen werden',
  3130. noMeshes: 'Keine Meshes in 3MF-Datei gefunden',
  3131. unsupportedFormat: 'Nicht unterstütztes Dateiformat',
  3132. },
  3133. },
  3134. // Maintenance type descriptions (built-in)
  3135. maintenanceDescriptions: {
  3136. lubricateCarbonRods: 'Schmiermittel auf Karbonstäbe für sanfte Bewegung auftragen',
  3137. lubricateRails: 'Schmiermittel auf Linearschienen für sanfte Bewegung auftragen',
  3138. cleanNozzle: 'Hotend und Düse reinigen, um Verstopfungen zu verhindern',
  3139. checkBelts: 'Riemenspannung für präzise Drucke überprüfen',
  3140. cleanBuildPlate: 'Druckplatte für bessere Haftung reinigen',
  3141. checkExtruder: 'Extruderzahnräder auf Verschleiß prüfen',
  3142. checkCooling: 'Sicherstellen, dass Lüfter ordnungsgemäß funktionieren',
  3143. generalInspection: 'Allgemeine Druckerinspektion',
  3144. cleanCarbonRods: 'Karbonstäbe reinigen, um Reibung zu reduzieren',
  3145. cleanLinearRails: 'Linearschienen abwischen, um Staub und Schmutz zu entfernen',
  3146. checkPtfeTube: 'PTFE-Schlauch auf Verschleiß oder Beschädigung prüfen',
  3147. replaceHepaFilter: 'HEPA-Filter für Luftqualität ersetzen',
  3148. replaceCarbonFilter: 'Aktivkohlefilter ersetzen',
  3149. lubricateLeftNozzleRail: 'Linke Düsenschiene schmieren (H2-Serie)',
  3150. },
  3151. // Smart Plugs
  3152. smartPlugs: {
  3153. offline: 'Offline',
  3154. admin: 'Admin',
  3155. openPlugAdminPage: 'Plug-Admin-Seite öffnen',
  3156. deleteSmartPlug: 'Smart Plug löschen',
  3157. turnOnSmartPlug: 'Smart Plug einschalten',
  3158. turnOffSmartPlug: 'Smart Plug ausschalten',
  3159. turnOn: 'Einschalten',
  3160. turnOff: 'Ausschalten',
  3161. addSmartPlug: {
  3162. scanningNetwork: 'Netzwerk wird durchsucht...',
  3163. chooseEntity: 'Entität auswählen...',
  3164. connectionFailed: 'Verbindung fehlgeschlagen',
  3165. searchEntities: 'Entitäten suchen...',
  3166. searchPowerSensors: 'Leistungssensoren suchen...',
  3167. searchEnergySensors: 'Energiesensoren suchen...',
  3168. placeholders: {
  3169. plugName: 'Wohnzimmer Steckdose',
  3170. mqttStateOnValue: 'ON, true, 1',
  3171. mqttSameAsPower: 'Gleich wie Leistungs-Topic oder anders',
  3172. },
  3173. },
  3174. },
  3175. // Rich Text Editor
  3176. richTextEditor: {
  3177. bold: 'Fett',
  3178. italic: 'Kursiv',
  3179. underline: 'Unterstrichen',
  3180. bulletList: 'Aufzählungsliste',
  3181. numberedList: 'Nummerierte Liste',
  3182. alignLeft: 'Linksbündig',
  3183. alignCenter: 'Zentriert',
  3184. alignRight: 'Rechtsbündig',
  3185. addLink: 'Link hinzufügen',
  3186. removeLink: 'Link entfernen',
  3187. },
  3188. // External Links
  3189. externalLinks: {
  3190. noLinksConfigured: 'Keine externen Links konfiguriert',
  3191. deleteLink: 'Link löschen',
  3192. removeCustomIcon: 'Benutzerdefiniertes Symbol entfernen',
  3193. openInNewTab: 'In neuem Tab öffnen',
  3194. placeholders: {
  3195. linkName: 'Mein Link',
  3196. },
  3197. },
  3198. // Keyboard Shortcuts Modal
  3199. keyboardShortcuts: {
  3200. title: 'Tastaturkürzel',
  3201. navigation: 'Navigation',
  3202. archivesSection: 'Archive',
  3203. kProfilesSection: 'K-Profile',
  3204. generalSection: 'Allgemein',
  3205. shortcuts: {
  3206. goToPrinters: 'Zu Drucker gehen',
  3207. goToArchives: 'Zu Archiv gehen',
  3208. goToQueue: 'Zur Warteschlange gehen',
  3209. goToStats: 'Zu Statistiken gehen',
  3210. goToProfiles: 'Zu Cloud-Profilen gehen',
  3211. goToSettings: 'Zu Einstellungen gehen',
  3212. focusSearch: 'Suche fokussieren',
  3213. openUploadModal: 'Upload-Modal öffnen',
  3214. clearSelection: 'Auswahl löschen / Eingabe aufheben',
  3215. contextMenu: 'Kontextmenü auf Karten',
  3216. refreshProfiles: 'Profile aktualisieren',
  3217. newProfile: 'Neues Profil',
  3218. exitSelectionMode: 'Auswahlmodus beenden',
  3219. showHelp: 'Diese Hilfe anzeigen',
  3220. },
  3221. footer: 'Drücken Sie Esc oder klicken Sie außerhalb, um zu schließen',
  3222. },
  3223. // Notification Log
  3224. notificationLog: {
  3225. title: 'Benachrichtigungsprotokoll',
  3226. events: {
  3227. printStarted: 'Druck gestartet',
  3228. printComplete: 'Druck abgeschlossen',
  3229. printFailed: 'Druck fehlgeschlagen',
  3230. printStopped: 'Druck gestoppt',
  3231. progress: 'Fortschritt',
  3232. printerOffline: 'Drucker offline',
  3233. printerError: 'Druckerfehler',
  3234. lowFilament: 'Wenig Filament',
  3235. maintenanceDue: 'Wartung fällig',
  3236. test: 'Test',
  3237. },
  3238. timeAgo: {
  3239. justNow: 'Gerade eben',
  3240. minutesAgo: 'vor {{minutes}}m',
  3241. hoursAgo: 'vor {{hours}}h',
  3242. },
  3243. },
  3244. // Restore/Backup Modal
  3245. restoreBackup: {
  3246. title: 'Backup wiederherstellen',
  3247. restoring: 'Wird wiederhergestellt...',
  3248. restoreComplete: 'Wiederherstellung abgeschlossen',
  3249. restoreFailed: 'Wiederherstellung fehlgeschlagen',
  3250. importSettings: 'Einstellungen aus Backup-Datei importieren',
  3251. pleaseWait: 'Bitte warten Sie, während Ihre Daten wiederhergestellt werden',
  3252. clickToSelect: 'Klicken Sie, um Backup-Datei auszuwählen (.json oder .zip)',
  3253. howDuplicateHandling: 'So funktioniert die Duplikatbehandlung:',
  3254. categories: {
  3255. printers: 'Drucker',
  3256. smartPlugs: 'Smart Plugs',
  3257. notificationProviders: 'Benachrichtigungsanbieter',
  3258. filaments: 'Filamente',
  3259. archives: 'Archive',
  3260. pendingUploads: 'Ausstehende Uploads',
  3261. settingsTemplates: 'Einstellungen & Vorlagen',
  3262. },
  3263. matchingInfo: {
  3264. printers: 'abgeglichen nach Seriennummer',
  3265. smartPlugs: 'abgeglichen nach IP-Adresse',
  3266. notificationProviders: 'abgeglichen nach Name',
  3267. filaments: 'abgeglichen nach Name + Typ + Marke',
  3268. archives: 'abgeglichen nach Inhalts-Hash',
  3269. pendingUploads: 'abgeglichen nach Dateiname',
  3270. settingsTemplates: 'immer überschrieben',
  3271. },
  3272. replaceExisting: 'Vorhandene Daten ersetzen',
  3273. keepExisting: 'Vorhandene Daten behalten',
  3274. replaceDescription: 'Bereits vorhandene Elemente mit Backup-Daten überschreiben',
  3275. keepDescription: 'Nur Elemente wiederherstellen, die noch nicht existieren',
  3276. caution: 'Vorsicht:',
  3277. cautionText: 'Das Überschreiben ersetzt Ihre aktuellen Konfigurationen durch Backup-Daten. Drucker-Zugangscodes werden aus Sicherheitsgründen niemals überschrieben.',
  3278. itemsRestored: 'Wiederhergestellte Elemente',
  3279. itemsSkipped: 'Übersprungene Elemente',
  3280. restored: 'Wiederhergestellt',
  3281. skipped: 'Übersprungen (existieren bereits)',
  3282. filesLabel: 'Dateien (3MF, Thumbnails, etc.)',
  3283. newApiKeysGenerated: 'Neue API-Schlüssel generiert',
  3284. newApiKeysWarning: 'Diese Schlüssel werden nur einmal angezeigt. Kopieren Sie sie jetzt!',
  3285. processingBackup: 'Backup-Datei wird verarbeitet...',
  3286. noDataFound: 'In der Backup-Datei wurden keine wiederherzustellenden Daten gefunden.',
  3287. failedToRestore: 'Backup konnte nicht wiederhergestellt werden. Bitte überprüfen Sie das Dateiformat.',
  3288. },
  3289. // Backup Export Modal
  3290. backupExport: {
  3291. title: 'Backup exportieren',
  3292. selectData: 'Zu exportierende Daten auswählen',
  3293. selectAll: 'Alle auswählen',
  3294. selectNone: 'Keine auswählen',
  3295. categoryDescriptions: {
  3296. settings: 'Sprache, Theme, Update-Einstellungen',
  3297. notifications: 'ntfy, Pushover, Discord, usw.',
  3298. templates: 'Benutzerdefinierte Nachrichtenvorlagen',
  3299. smartPlugs: 'Tasmota-Plug-Konfigurationen',
  3300. externalLinks: 'Seitenleiste Links zu externen Diensten',
  3301. printers: 'Druckerinformationen (Zugangscodes ausgeschlossen)',
  3302. plateDetection: 'Leere Platten-Referenzbilder',
  3303. filaments: 'Filamenttypen und -kosten',
  3304. maintenance: 'Benutzerdefinierte Wartungspläne',
  3305. archives: 'Alle Druckdaten + Dateien (3MF, Thumbnails, Fotos)',
  3306. projects: 'Projekte, BOM-Elemente und Anhänge',
  3307. pendingUploads: 'Virtueller Drucker-Uploads zur Überprüfung',
  3308. apiKeys: 'Webhook-API-Schlüssel (neue Schlüssel bei Import generiert)',
  3309. },
  3310. requiresPrinters: 'Drucker müssen ausgewählt sein',
  3311. zipFileWarning: 'ZIP-Datei wird erstellt.',
  3312. zipFileDescription: 'Enthält alle 3MF-Dateien, Thumbnails, Zeitraffer und Fotos. Dies kann eine Weile dauern und zu einer großen Datei führen.',
  3313. includeAccessCodes: 'Zugangscodes einschließen',
  3314. includeAccessCodesDescription: 'Für die Übertragung auf eine andere Maschine',
  3315. includeAccessCodesWarning: 'Zugangscodes werden im Klartext eingeschlossen. Bewahren Sie diese Backup-Datei sicher auf!',
  3316. categoriesSelected: '{{selectedCount}} Kategorien ausgewählt',
  3317. },
  3318. // Pending Uploads Panel
  3319. pendingUploads: {
  3320. placeholders: {
  3321. notes: 'Notizen zu diesem Druck hinzufügen...',
  3322. },
  3323. discardUpload: 'Upload verwerfen',
  3324. archiveAllUploads: 'Alle Uploads archivieren',
  3325. discardAllUploads: 'Alle Uploads verwerfen',
  3326. archive: 'Archivieren',
  3327. timeAgo: {
  3328. justNow: 'Gerade eben',
  3329. minutesAgo: 'vor {{minutes}}m',
  3330. hoursAgo: 'vor {{hours}}h',
  3331. daysAgo: 'vor {{days}}d',
  3332. },
  3333. },
  3334. // API Browser
  3335. apiBrowser: {
  3336. placeholders: {
  3337. requestBody: 'JSON-Anforderungstext...',
  3338. searchEndpoints: 'Endpunkte suchen...',
  3339. },
  3340. },
  3341. // Configure AMS Slot Modal
  3342. configureAmsSlot: {
  3343. title: 'AMS-Slot konfigurieren',
  3344. slotConfigured: 'Slot konfiguriert!',
  3345. configuringSlot: 'Slot wird konfiguriert:',
  3346. slotLabel: '{{ams}} Slot {{slot}}',
  3347. searchPresets: 'Voreinstellungen suchen...',
  3348. colorPlaceholder: 'Farbname oder Hex (z.B. braun, FF8800)',
  3349. clearCustomColor: 'Benutzerdefinierte Farbe löschen',
  3350. noCloudPresets: 'Keine Cloud-Voreinstellungen. Melden Sie sich bei Bambu Cloud an, um zu synchronisieren.',
  3351. noPresetsAvailable: 'Keine Voreinstellungen verfügbar. Melden Sie sich bei Bambu Cloud an oder importieren Sie lokale Profile.',
  3352. noMatchingPresets: 'Keine passenden Voreinstellungen gefunden.',
  3353. custom: 'Benutzerdefiniert',
  3354. builtin: 'Integriert',
  3355. settingsSentToPrinter: 'Einstellungen an Drucker gesendet',
  3356. filamentProfile: 'Filamentprofil',
  3357. kProfileLabel: 'K-Profil (Pressure Advance)',
  3358. filteringFor: 'Filtern nach: {{material}}',
  3359. noKProfile: 'Kein K-Profil (Standard 0.020 verwenden)',
  3360. noMatchingKProfiles: 'Keine passenden K-Profile gefunden. Standard K=0.020 wird verwendet.',
  3361. selectFilamentFirst: 'Zuerst ein Filamentprofil auswählen',
  3362. kFromCalibration: 'K={{value}} aus Druckerkalibrierung',
  3363. customColorLabel: 'Benutzerdefinierte Farbe (optional)',
  3364. presetColors: '{{name}} Farben:',
  3365. showLessColors: 'Weniger Farben anzeigen',
  3366. showMoreColors: 'Mehr Farben anzeigen',
  3367. clear: 'Löschen',
  3368. hexLabel: 'Hex: #{{hex}}',
  3369. resetting: 'Wird zurückgesetzt...',
  3370. resetSlot: 'Slot zurücksetzen',
  3371. cancel: 'Abbrechen',
  3372. configuring: 'Wird konfiguriert...',
  3373. configureSlot: 'Slot konfigurieren',
  3374. },
  3375. // GitHub Backup Settings
  3376. githubBackup: {
  3377. title: 'GitHub-Backup',
  3378. history: 'Verlauf',
  3379. downloadBackup: 'Backup herunterladen',
  3380. restoreBackup: 'Backup wiederherstellen',
  3381. noBackupsYet: 'Noch keine Backups',
  3382. },
  3383. // Email Settings
  3384. emailSettings: {
  3385. placeholders: {
  3386. fromName: 'BamBuddy',
  3387. },
  3388. },
  3389. // Tag Management Modal
  3390. tagManagement: {
  3391. searchTags: 'Tags suchen...',
  3392. renameTag: 'Tag umbenennen',
  3393. deleteTag: 'Tag löschen',
  3394. },
  3395. // Notification Template Editor
  3396. notificationTemplates: {
  3397. placeholders: {
  3398. title: 'Benachrichtigungstitel...',
  3399. body: 'Benachrichtigungstext...',
  3400. },
  3401. },
  3402. // Batch Tag Modal
  3403. batchTag: {
  3404. placeholders: {
  3405. newTag: 'Neuen Tag eingeben...',
  3406. },
  3407. },
  3408. // Photo Gallery Modal
  3409. photoGallery: {
  3410. deletePhoto: 'Foto löschen',
  3411. },
  3412. // Filament Hover Card
  3413. filamentHoverCard: {
  3414. copySpoolUuid: 'Spulen-UUID kopieren',
  3415. },
  3416. // K Profiles View
  3417. kProfilesView: {
  3418. hasNote: 'Hat Notiz',
  3419. copyProfile: 'Profil kopieren',
  3420. },
  3421. // Layout/Navigation
  3422. layout: {
  3423. openMenu: 'Menü öffnen',
  3424. noPermissionSystemInfo: 'Sie haben keine Berechtigung zum Anzeigen von Systeminformationen',
  3425. },
  3426. // Dashboard
  3427. dashboard: {
  3428. dragToReorder: 'Ziehen zum Neuordnen',
  3429. hideWidget: 'Widget ausblenden',
  3430. },
  3431. // Notification Provider Card
  3432. notificationProviderCard: {
  3433. deleteNotificationProvider: 'Benachrichtigungsanbieter löschen',
  3434. },
  3435. // File Manager Modal
  3436. fileManagerModal: {
  3437. closeFileManager: 'Dateimanager schließen',
  3438. sortFiles: 'Dateien sortieren',
  3439. goToParentFolder: 'Zum übergeordneten Ordner gehen',
  3440. threeView: '3D-Ansicht',
  3441. },
  3442. // Embedded Camera Viewer
  3443. embeddedCameraViewer: {
  3444. refreshStream: 'Stream aktualisieren',
  3445. close: 'Schließen',
  3446. zoomOut: 'Verkleinern',
  3447. resetZoom: 'Zoom zurücksetzen',
  3448. zoomIn: 'Vergrößern',
  3449. dragToResize: 'Ziehen zum Größe ändern',
  3450. },
  3451. // Timelapse Viewer
  3452. timelapseViewer: {
  3453. skipBack5s: '5s zurückspringen',
  3454. skipForward5s: '5s vorspringen',
  3455. },
  3456. // Notification Providers
  3457. notificationProviders: {
  3458. descriptions: {
  3459. email: 'SMTP-E-Mail-Benachrichtigungen',
  3460. telegram: 'Benachrichtigungen über Telegram-Bot',
  3461. discord: 'An Discord-Kanal über Webhook senden',
  3462. ntfy: 'Kostenlose, selbst hostbare Push-Benachrichtigungen',
  3463. pushover: 'Einfache, zuverlässige Push-Benachrichtigungen',
  3464. callmebot: 'Kostenlose WhatsApp-Benachrichtigungen über CallMeBot',
  3465. webhook: 'Generischer HTTP POST zu beliebiger URL',
  3466. },
  3467. },
  3468. // Log Viewer
  3469. logViewer: {
  3470. searchPlaceholder: 'Nachricht oder Logger-Name suchen...',
  3471. noLogEntries: 'Keine Logeinträge gefunden',
  3472. },
  3473. // Switchbar Popover
  3474. switchbarPopover: {
  3475. noSwitchesInSwitchbar: 'Keine Schalter in Schalterleiste',
  3476. },
  3477. // Project Page Modal
  3478. projectPageModal: {
  3479. placeholders: {
  3480. title: 'Titel',
  3481. designer: 'Designer',
  3482. license: 'Lizenz',
  3483. description: 'Beschreibung eingeben...',
  3484. profileTitle: 'Profil-Titel',
  3485. profileDescription: 'Profilbeschreibung...',
  3486. },
  3487. },
  3488. // Spoolman Settings
  3489. spoolmanSettings: {},
  3490. // Time
  3491. time: {
  3492. unknown: '-',
  3493. waiting: 'Wartend',
  3494. justNow: 'Gerade eben',
  3495. now: 'Jetzt',
  3496. minsAgo: 'vor {{count}}m',
  3497. inMins: 'in {{count}}m',
  3498. hoursAgo: 'vor {{count}}h',
  3499. inHours: 'in {{count}}h',
  3500. daysAgo: 'vor {{count}}d',
  3501. inDays: 'in {{count}}d',
  3502. },
  3503. // SpoolBuddy Kiosk
  3504. spoolbuddy: {
  3505. nav: {
  3506. dashboard: 'Dashboard',
  3507. ams: 'AMS',
  3508. inventory: 'Inventar',
  3509. writeTag: 'Schreiben',
  3510. settings: 'Einstellungen',
  3511. },
  3512. status: {
  3513. nfcReady: 'NFC bereit',
  3514. nfcOff: 'NFC aus',
  3515. offline: 'Offline',
  3516. online: 'Online',
  3517. noPrinters: 'Keine Drucker',
  3518. deviceOffline: 'Gerät offline',
  3519. waitingConnection: 'Warte auf Geräteverbindung...',
  3520. systemReady: 'System bereit',
  3521. status: 'Status',
  3522. },
  3523. dashboard: {
  3524. readyToScan: 'Bereit zum Scannen',
  3525. idleMessage: 'Spule auf die Waage legen zum Identifizieren',
  3526. nfcHint: 'NFC-Tag wird automatisch gelesen',
  3527. device: 'Gerät',
  3528. syncWeight: 'Gewicht sync.',
  3529. weightSynced: 'Synchronisiert!',
  3530. unknownTag: 'Unbekannter Tag',
  3531. newTag: 'Neuer Tag erkannt',
  3532. onScale: 'auf der Waage',
  3533. linkSpool: 'Mit Spule verknüpfen',
  3534. linkTagTitle: 'Tag mit Spule verknüpfen',
  3535. linkTag: 'Tag verknüpfen',
  3536. selectSpool: 'Spule zum Verknüpfen auswählen:',
  3537. noUntagged: 'Keine Spulen ohne Tags gefunden',
  3538. tagDetected: 'Tag erkannt',
  3539. noTag: 'Kein Tag',
  3540. tagId: 'Tag',
  3541. grossWeight: 'Bruttogewicht',
  3542. spoolSize: 'Spulengröße',
  3543. close: 'Schließen',
  3544. currentSpool: 'Aktuelle Spule',
  3545. },
  3546. modal: {
  3547. spoolDetected: 'Spule erkannt',
  3548. assignToAms: 'AMS zuweisen',
  3549. syncWeight: 'Gewicht sync.',
  3550. weightSynced: 'Synchronisiert!',
  3551. syncing: 'Synchronisiere...',
  3552. newTagDetected: 'Neuer Tag erkannt',
  3553. addToInventory: 'Zum Inventar hinzufügen',
  3554. assignToAmsTitle: 'AMS zuweisen',
  3555. selectSlot: 'Slot auswählen',
  3556. assign: 'Zuweisen',
  3557. assigning: 'Zuweisen...',
  3558. assignSuccess: 'Zugewiesen!',
  3559. assignError: 'Fehler beim Zuweisen. Bitte erneut versuchen.',
  3560. noPrinterSelected: 'Drucker auswählen...',
  3561. noAmsDetected: 'Kein AMS an diesem Drucker erkannt',
  3562. slot: 'Slot',
  3563. },
  3564. weight: {
  3565. noReading: 'Kein Messwert',
  3566. stable: 'Stabil',
  3567. measuring: 'Messen...',
  3568. tare: 'Tarieren',
  3569. calibrate: 'Kalibrieren',
  3570. },
  3571. spool: {
  3572. remaining: 'Verbleibend',
  3573. material: 'Material',
  3574. brand: 'Marke',
  3575. color: 'Farbe',
  3576. coreWeight: 'Kern',
  3577. labelWeight: 'Etikett',
  3578. scaleWeight: 'Waage',
  3579. netWeight: 'Netto',
  3580. lastUsed: 'Zuletzt verwendet',
  3581. },
  3582. ams: {
  3583. noData: 'Kein AMS erkannt',
  3584. connectAms: 'AMS anschließen um Filament-Slots zu sehen',
  3585. noPrinter: 'Kein Drucker ausgewählt',
  3586. selectPrinter: 'Drucker in der oberen Leiste auswählen',
  3587. printerDisconnected: 'Drucker getrennt',
  3588. humidity: 'Feuchtigkeit',
  3589. level: 'Stufe',
  3590. active: 'Aktiv',
  3591. slot: 'Slot',
  3592. empty: 'Leer',
  3593. },
  3594. inventory: {
  3595. search: 'Spulen suchen...',
  3596. empty: 'Keine Spulen im Inventar',
  3597. noResults: 'Keine passenden Spulen',
  3598. spools: 'Spulen',
  3599. addSpool: 'Spule hinzufügen',
  3600. },
  3601. settings: {
  3602. // Tabs
  3603. tabDevice: 'Gerät',
  3604. tabDisplay: 'Anzeige',
  3605. tabScale: 'Waage',
  3606. tabUpdates: 'Updates',
  3607. // Device tab
  3608. nfcReader: 'NFC-Leser',
  3609. type: 'Typ',
  3610. connection: 'Verbindung',
  3611. notConnected: 'N/A',
  3612. deviceInfo: 'Geräteinfo',
  3613. hostname: 'Host',
  3614. uptime: 'Betriebszeit',
  3615. // Display tab
  3616. brightness: 'Helligkeit',
  3617. saved: 'Gespeichert',
  3618. noBacklight: 'Keine DSI-Hintergrundbeleuchtung erkannt. Helligkeitssteuerung erfordert ein DSI-Display.',
  3619. screenBlank: 'Bildschirm-Abschaltzeit',
  3620. screenBlankDesc: 'Bildschirm schaltet sich nach Inaktivität ab. Zum Aufwecken berühren.',
  3621. displayNote: 'Helligkeit wird als Software-Filter angewendet.',
  3622. // Scale tab
  3623. scaleCalibration: 'Waagen-Kalibrierung',
  3624. currentWeight: 'Aktuelles Gewicht',
  3625. tareOffset: 'Tara',
  3626. calFactor: 'Faktor',
  3627. knownWeight: 'Bekanntes Gewicht',
  3628. calStep1: 'Alle Gegenstände von der Waage entfernen und Nullpunkt setzen.',
  3629. calStep2: 'Bekanntes Gewicht auf die Waage legen.',
  3630. setZero: 'Nullpunkt setzen',
  3631. calibrateNow: 'Kalibrieren',
  3632. calibrated: 'Kalibriert',
  3633. tareSet: 'Tara-Befehl gesendet. Warte auf Gerät...',
  3634. tareFailed: 'Tara-Befehl fehlgeschlagen',
  3635. zeroSet: 'Nullpunkt gesetzt. Bekanntes Gewicht auf die Waage legen.',
  3636. calibrationDone: 'Kalibrierung abgeschlossen!',
  3637. calibrationFailed: 'Kalibrierung fehlgeschlagen',
  3638. lastCalibrated: 'Zuletzt kalibriert',
  3639. stable: 'Stabil',
  3640. settling: 'Stabilisierung...',
  3641. firmware: 'Firmware',
  3642. scale: 'Waage',
  3643. noDevice: 'Kein SpoolBuddy-Gerät gefunden',
  3644. // Updates tab
  3645. daemonVersion: 'Daemon-Version',
  3646. currentVersion: 'Aktuell',
  3647. versionPending: 'Warte auf Daemon...',
  3648. checking: 'Prüfe...',
  3649. checkUpdates: 'Nach Updates suchen',
  3650. updateAvailable: 'Update verfügbar',
  3651. updateInstructions: 'Update per SSH: SpoolBuddy-Installationsskript ausführen.',
  3652. upToDate: 'Aktuell',
  3653. includeBeta: 'Beta-Versionen einschließen',
  3654. },
  3655. writeTag: {
  3656. tabExisting: 'Vorhandene Spule',
  3657. tabNew: 'Neue Spule',
  3658. tabReplace: 'Tag ersetzen',
  3659. searchPlaceholder: 'Suche nach Material, Farbe, Marke...',
  3660. noUntaggedSpools: 'Keine Spulen ohne Tags',
  3661. noTaggedSpools: 'Keine Spulen mit Tags',
  3662. selectSpool: 'Spule auswählen, dann einen NTAG auf den Leser legen',
  3663. placeTag: 'NTAG auf den Leser legen',
  3664. tagReady: 'Tag erkannt — bereit zum Schreiben',
  3665. writeTag: 'Tag beschreiben',
  3666. replaceTag: 'Tag ersetzen',
  3667. writing: 'Tag wird beschrieben...',
  3668. waiting: 'Warte auf SpoolBuddy...',
  3669. writeSuccess: 'Tag erfolgreich beschrieben!',
  3670. writeFailed: 'Schreiben fehlgeschlagen',
  3671. queueFailed: 'Schreibbefehl konnte nicht eingereiht werden',
  3672. tryAgain: 'Erneut versuchen',
  3673. cancel: 'Abbrechen',
  3674. replaceWarning: 'Alter Tag wird getrennt. Neuer Tag ersetzt ihn.',
  3675. deviceOffline: 'SpoolBuddy ist offline',
  3676. material: 'Material',
  3677. colorName: 'Farbname',
  3678. color: 'Farbe',
  3679. brand: 'Marke',
  3680. weight: 'Gewicht (g)',
  3681. createSpool: 'Spule erstellen',
  3682. creating: 'Wird erstellt...',
  3683. spoolCreated: 'Spule erstellt! Bereit zum Schreiben.',
  3684. createFailed: 'Spule konnte nicht erstellt werden',
  3685. },
  3686. },
  3687. };