#
# Copyright 2017-present Open Networking Foundation
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
#

# Text that appears in the navigation panel
nav_item_topo=Topologie

# Message when no devices are connected
no_devices_are_connected=Geen apparaten verbonden

# Action Key Toolbar Tooltips ...
tbtt_tog_instances=Toon/verberg ONOS Instanties-paneel
tbtt_tog_summary=Toon/verberg ONOS Overzichtspaneel
tbtt_tog_use_detail=Toon/verberg Details-paneel
tbtt_tog_host=Toon/verberg eindpunten
tbtt_tog_offline=Toon/verberg onbereikbare apparaten
tbtt_tog_porthi=Toon/verberg poortinformatie
tbtt_bad_links=Toon/verberg slechte verbindingen
tbtt_tog_map=Toon/verberg geografische achtergrondkaart
tbtt_sel_map=Selecteer geografische achtergrondkaart
tbtt_tog_sprite=Toon/verberg afbeeldingslaag
tbtt_reset_loc=Herstel knooppuntlocaties
tbtt_tog_oblique=Toon/verberg doorzichtige lagen (experimenteel)
tbtt_cyc_layers=Doorloop apparaatlagen
tbtt_cyc_dev_labs=Doorloop apparaatlabels
tbtt_cyc_host_labs=Doorloop eindpuntlabels
tbtt_unpin_node=Maak node los (beweeg er met de muiswijzer overheen)
tbtt_reset_zoom=Herstel verschuiven/zoom
tbtt_tog_toolbar=Toon/verberg taakbalk
tbtt_eq_master=Herverdeel eigenaarschap

# Quick Help Gestures
qh_gest_click=Selecteer het onderdeel en toon details
qh_gest_shift_click=Wijzig selectiestatus
qh_gest_drag=Herpositioneer apparaat of eindpunt
qh_gest_cmd_scroll=Zoom in/uit
qh_gest_cmd_drag=Verschuif

# Flash Messages
fl_background_map=achtergrondkaart
fl_sprite_layer=afbeeldingslaag
fl_pan_zoom_reset=Verschuiven en zoomen ongedaan gemaakt
fl_eq_masters=Eigenaarschap herverdeeld

fl_device_labels_hide=Verberg apparaatlabels
fl_device_labels_show_friendly=Toon korte apparaatlabels
fl_device_labels_show_id=Toon apparaat ID-labels
fl_host_labels_show_friendly=Toon korte eindpuntlabels
fl_host_labels_show_ip=Toon eindpunt IP-adressen
fl_host_labels_show_mac=Toon eindpunt MAC-adressen
fl_host_labels_hide=Verberg eindpuntlabels

fl_offline_devices=Onbereikbare apparaten
fl_bad_links=Slechte verbindingen
fl_reset_node_locations=Herstel Instantielocaties

fl_layer_all=Alle lagen aan
fl_layer_pkt=Pakket laag aan
fl_layer_opt=Optische laag aan

fl_panel_instances=Instanties-paneel
fl_panel_summary=Overzichtspaneel
fl_panel_details=Details-paneel

fl_port_highlighting=poortinformatie

fl_oblique_view=Doorzichtige lagen aan
fl_normal_view=Normaal beeld

fl_monitoring_canceled=Monitoren geannuleerd
fl_selecting_intent=Intentie selecteren

# Core Overlays
ov_tt_protected_intents=Beschermde Intenties bovenlaag
ov_tt_traffic=Verkeersbovenlaag
ov_tt_none=Verberg bovenlaag

# Traffic Overlay
tr_btn_create_h2h_flow=Creëer pad van eindpunt naar eindpunt
tr_btn_create_msrc_flow=Creëer Multi-Bron pad
tr_btn_show_device_flows=Toon apparaatpaden
tr_btn_show_related_traffic=Toon gerelateerd verkeer
tr_btn_cancel_monitoring=Annuleer monitoren van verkeer
tr_btn_monitor_all=Monitor al het verkeer
tr_btn_show_dev_link_flows=Toon paden over apparaatverbindingen
tr_btn_show_all_rel_intents=Toon alle gerelateerde intenties
tr_btn_show_prev_rel_intent=Toon vorige gerelateerde intentie
tr_btn_show_next_rel_intent=Toon volgende gerelateerde intentie
tr_btn_monitor_sel_intent=Monitor verkeer van de geselecteerde intentie
tr_fl_fstats_bytes=Pad statistieken (bytes)
tr_fl_pstats_bits=Poort statistieken (bits per seconde)
tr_fl_pstats_pkts=Poort statistieken (pakketten per seconde)
tr_fl_dev_flows=Apparaatpaden
tr_fl_rel_paths=Gerelateerde intenties
tr_fl_prev_rel_int=Vorige gerelateerde intentie
tr_fl_next_rel_int=Volgende gerelateerde intentie
tr_fl_traf_on_path=Verkeer op de geselecteerde intentie
tr_fl_h2h_flow_added=Pad van eindpunt naar eindpunt toegevoegd
tr_fl_multisrc_flow=Multi-Bron pad

# Button tooltips
btn_show_view_device=Naar apparaatlijst
btn_show_view_flow=Naar padlijst van dit apparaat
btn_show_view_port=Naar poortlijst van dit apparaat
btn_show_view_group=Naar groeplijst van dit apparaat
btn_show_view_meter=Naar meterlijst van dit apparaat

# Panel Titles
title_select_map=Selecteer een kaart
title_panel_summary=ONOS Overzicht
title_selected_items=Geselecteerde onderdelen
title_edge_link=Eindverbinding
title_infra_link=Infrastructuurverbinding

# Custom Panel Labels / Values
lp_label_friendly=Korte naam

lp_label_a_type=A type
lp_label_a_id=A ID
lp_label_a_friendly=A naam
lp_label_a_port=A poort

lp_label_b_type=B type
lp_label_b_id=B ID
lp_label_b_friendly=B naam
lp_label_b_port=B poort

lp_label_a2b=A naar B
lp_label_b2a=B naar A

lp_value_no_link=[geen verbinding]

