From 18fce8cb6c80ef5bd455f2c1766b8e572d70851d Mon Sep 17 00:00:00 2001 From: vanhofen Date: Thu, 2 Mar 2023 22:09:14 +0100 Subject: [PATCH] yWeb: rename Y_NI_NetFS-control.yhtm => Y_Tools_NetFS.yhtm Origin commit data ------------------ Branch: ni/coolstream Commit: https://github.com/neutrino-images/ni-neutrino/commit/ef396f48bf43995dafa33d47fb0de09b8eb3601e Author: vanhofen Date: 2023-03-02 (Thu, 02 Mar 2023) Origin message was: ------------------ - yWeb: rename Y_NI_NetFS-control.yhtm => Y_Tools_NetFS.yhtm ------------------ No further description and justification available within origin commit message! ------------------ This commit was generated by Migit --- data/y-web/Makefile.am | 8 +- data/y-web/Y_Blocks.txt | 6 +- data/y-web/Y_EPG.js.jQuery | 302 ++++++++++++++++++ data/y-web/Y_Tools_Menue.yhtm | 6 +- ..._NetFS-control.yhtm => Y_Tools_NetFS.yhtm} | 24 +- ...etFS-edit.yhtm => Y_Tools_NetFS_edit.yhtm} | 30 +- ...etFS-init.yhtm => Y_Tools_NetFS_init.yhtm} | 2 +- data/y-web/Y_Version.txt | 4 +- data/y-web/languages/Deutsch | 45 +-- data/y-web/languages/English | 45 +-- 10 files changed, 387 insertions(+), 85 deletions(-) create mode 100644 data/y-web/Y_EPG.js.jQuery rename data/y-web/{Y_NI_NetFS-control.yhtm => Y_Tools_NetFS.yhtm} (74%) rename data/y-web/{Y_NI_NetFS-edit.yhtm => Y_Tools_NetFS_edit.yhtm} (78%) rename data/y-web/{Y_NI_NetFS-init.yhtm => Y_Tools_NetFS_init.yhtm} (81%) diff --git a/data/y-web/Makefile.am b/data/y-web/Makefile.am index ab3212e7b..4eeba8c64 100644 --- a/data/y-web/Makefile.am +++ b/data/y-web/Makefile.am @@ -76,6 +76,9 @@ install_DATA = extensions.txt \ Y_Tools_Menue.yhtm \ Y_Tools_m3uConvert.yhtm \ Y_Tools_m3uConvert_help.yhtm \ + Y_Tools_NetFS.yhtm \ + Y_Tools_NetFS_edit.yhtm \ + Y_Tools_NetFS_init.yhtm \ Y_Tools_Rcsim.yhtm \ Y_Tools_Screenshot.yhtm \ Y_Tools_Screenshot_GraphLCD.yhtm \ @@ -85,11 +88,6 @@ install_DATA = extensions.txt \ Y_Wait.yhtm \ Y_yWeb.js -# NI-yWeb -install_DATA += Y_NI_NetFS-control.yhtm \ - Y_NI_NetFS-edit.yhtm \ - Y_NI_NetFS-init.yhtm - install-data-hook: @# Badass hack, I know. If anyone knows a better way -- please send patch! find $(DESTDIR)$(PRIVATE_HTTPDDIR)/ -type f -print0 | xargs --no-run-if-empty -0 \ diff --git a/data/y-web/Y_Blocks.txt b/data/y-web/Y_Blocks.txt index 99a197b42..348d7b09a 100644 --- a/data/y-web/Y_Blocks.txt +++ b/data/y-web/Y_Blocks.txt @@ -521,18 +521,18 @@ start-block~netfs_table_row {=var-get:local_dir_{=var-get:nr=}=} - + {=if-equal:{=mount_type=}~0~ {=if-equal:{=var-get:is_mount_{=var-get:nr=}=}~false~ - + ~ - + =} diff --git a/data/y-web/Y_EPG.js.jQuery b/data/y-web/Y_EPG.js.jQuery new file mode 100644 index 000000000..8b62433f0 --- /dev/null +++ b/data/y-web/Y_EPG.js.jQuery @@ -0,0 +1,302 @@ +/* yWeb EPG by yjogol +*/ + +/* EPG+ */ + +var g_width_px = 0; /* display width */ +var g_number_of_cols = 0; /* nr of cols */ +var g_width_all_items = 0; /* width without bouquet */ +var c_width_px_per_min = 3; /* px per minute */ +var c_min_per_col = 15; /* minutes per col */ +var c_width_px_bouquet = 100; /* width of bouquet */ +var c_slider_width = 25; +var epg_data; /* all EPG Data in 2-dim Array */ +var epg_data_index = 0; +var g_timer_eventids = new Array(); +var g_selected = 0; + +/* calc the dimension px and mins to display */ +function epg_plus_calc_dimensions() +{ + var show_dim = jQuery('#epg_plus').outerWidth(); + var usable_width_px = show_dim.width - c_slider_width; /*get display width*/ + var max_minutes_to_display = Math.round((usable_width_px - c_width_px_bouquet - c_width_px_per_min) / c_width_px_per_min); /* calc display minutes*/ + g_number_of_cols = Math.round(max_minutes_to_display / c_min_per_col); + g_width_px = g_number_of_cols * c_width_px_per_min * c_min_per_col + c_width_px_bouquet + c_width_px_per_min; + g_width_all_items = g_width_px - c_width_px_bouquet - c_width_px_per_min; + jQuery('#epg_plus').css('width', g_width_px); +} + +function do_zap(channelid) +{ + stb_zapto(channelid); +} + +function epg_zapto() +{ + stb_zapto(jQuery('#d_channel_id').text()); +} + +function epg_set_timer_rec() +{ + stb_set_timer_rec(jQuery("#d_channel_id").text(), jQuery("#d_start").text(), jQuery("#d_stop").text()); +} + +function epg_set_timer_zap() +{ + stb_set_timer_zap(jQuery("#d_channel_id").text(), jQuery("#d_start").text()); +} + +function build_epg_clear() +{ + var ep = jQuery("#epg_plus"); + obj_clear_all_childs(ep); +} + +/* set a layout box and content */ +function build_epg_setbox(_item, _starttime, _stoptime, _start, _stop) +{ + var d_start = Math.max(_start, _starttime); + var d_stop = Math.min(_stop, _stoptime); + var d_left = c_width_px_bouquet + c_width_px_per_min + Math.round((d_start - _starttime) * c_width_px_per_min / 60); + var d_width = Math.max(0, Math.round((d_stop - d_start) * c_width_px_per_min / 60) - 3); + d_width = Math.min(d_width, g_width_px - d_left); + if (d_start < _stoptime) + _item.css({ + 'position': 'absolute', + 'top': '0px', + 'left': d_left + 'px', + 'width': d_width + 'px' + }) +} + +/* show epg details */ +function show_epg_item(_index) +{ + g_selected=_index; + jQuery("#d_desc").html(epg_data[_index][4] + " " + epg_data[_index][0]); + jQuery("#d_info1").html(epg_data[_index][1]); + jQuery("#d_info2").html(epg_data[_index][2]); + jQuery("#d_start").html(epg_data[_index][3]); + jQuery("#d_stop").html(epg_data[_index][5]); + jQuery("#d_channel_id").html(epg_data[_index][6]); + var logo = epg_data[_index][7]; + jQuery("#d_logo").html((logo != "") ? "" : ""); + + var off= jQuery('#epg_plus').offset(); + jQuery('#epg_info').css({ + 'left': off.left + 50 + 'px', + 'top': off.top + 50 + 'px', + 'position': 'absolute' + }); + show_obj("epg_info",true); +} + +/* build one channel row */ +function build_epg_bouquet(__bdiv, __channel_id, _starttime, _stoptime, _logo) +{ + var xml = loadSyncURLxml("/control/epg?xml=true&channelid=" + __channel_id + "&details=true&stoptime=" + _stoptime); + if (xml) + { + var prog_list = xml.getElementsByTagName('prog'); + for (var i = 0; i < prog_list.length; i++) + { + var prog = prog_list[i]; + + var _stop = getXMLNodeItemValue(prog, "stop_sec"); + _stop = parseInt(_stop); + if (_stop > _starttime) + { + var _start_t = getXMLNodeItemValue(prog, "start_t"); + var _start = getXMLNodeItemValue(prog, "start_sec"); + _start = parseInt(_start); + var _stop_t = getXMLNodeItemValue(prog, "stop_t"); + var _desc = epg_de_qout(getXMLNodeItemValue(prog, "description")); + var _info1 = epg_de_qout(getXMLNodeItemValue(prog, "info1")); + var _info2 = epg_de_qout(getXMLNodeItemValue(prog, "info2")); + var __item = obj_createAt(__bdiv, "div", "ep_bouquet_item"); + + var epg_obj = new Array(_desc, _info1, _info2, _start, _start_t, _stop.toString(), __channel_id, _logo); + epg_data.push(epg_obj); + __item.innerHTML = "" + _desc + ""; + build_epg_setbox(__item, _starttime, _stoptime, _start, _stop); + epg_data_index++; + } + } + /* look for timers*/ + var fou = g_timer_eventids.findAll(function(e) { + return e.get('channelid') == __channel_id; + }); + if (fou) + { + jQuery(fou).each(function(i, e) { + var stTime="0"; + var tclass=""; + if (e.get('eventType') == 3) /* zap */ + { + stTime = e.get('alarmTime'); + stTime = parseInt(stTime, 10) + 200; + stTime = stTime.toString(); + tclass = "ep_bouquet_zap"; + } + else if (e.get('eventType') == 5) /* record */ + { + stTime = e.get('stopTime'); + tclass = "ep_bouquet_rec"; + } + var __item = obj_createAt(__bdiv, "div", tclass); + build_epg_setbox(__item, _starttime, _stoptime, e.get('alarmTime'), stTime); + }); + } + } +} + +/* build time row */ +function build_epg_time_bar(_tdiv, _starttime, _stoptime){ + var _start = _starttime; + for (var i = 0; i < g_number_of_cols; i++) + { + var __item = obj_createAt(_tdiv, "div", "ep_time_bar_item"); + __item.innerHTML = format_time(new Date(_start * 1000)); + var _stop = _start + (c_min_per_col * 60); + build_epg_setbox(__item, _starttime, _stoptime, _start, _stop); + _start = _stop; + } +} + +function get_timer() +{ + g_timer_eventids = new Array(); + var timer = loadSyncURL("/control/timer?format=id"); + var lines = timer.split("\n"); + jQuery(lines).each(function(index, line) { + var vals = line.split(" "); + if (vals.length >= 8 && (vals[1] == 3 || vals[5])) /* record and zap */ + { + var aTimer = $H( { + 'eventID': vals[0], + 'eventType': vals[1], + 'eventRepeat': vals[2], + 'repcount': vals[3], + 'announceTime': vals[4], + 'alarmTime': vals[5], + 'stopTime': vals[6], + 'channelid': vals[7] + }); + g_timer_eventids.push(aTimer); + } + },this); +} + +/* main */ +var g_i = 0; +var g_bouquet_list; +var g_display_logos = ""; +function build_epg_plus(_bouquet, _starttime) +{ + build_epg_clear(); + epg_data = new Array(); + epg_data_index=0; + var _bouquets_xml = loadSyncURLxml("/control/getbouquet?bouquet=" + _bouquet + "&xml=true"); + if (_bouquets_xml) + { + g_bouquet_list = _bouquets_xml.getElementsByTagName("channel"); + var ep = jQuery("#epg_plus"); + var _stoptime = _starttime + c_min_per_col * 60 * g_number_of_cols; + var __tdiv = obj_createAt(ep, "div", "ep_time_bar"); + var __tname_div = obj_createAt(__tdiv, "div", "ep_time_bar_item"); + __tname_div.innerHTML = "Uhrzeit"; + __tname_div.style.cssText = "width:" + c_width_px_bouquet + "px;"; + build_epg_time_bar(__tdiv, _starttime, _stoptime); + __tdiv.style.cssText = "width:" + g_width_px; + var __ediv = obj_createAt(ep, "div", "epg_plus_container"); + __ediv.setAttribute("id", "epg_plus_container") + g_i = 0; + window.setTimeout("build_epg_plus_loop(" + _starttime + "," + _stoptime + ")", 100); + } +} + +function build_epg_plus_loop(_starttime, _stoptime) +{ + if (g_i" : __channel_name; + jQuery("#"+__bname_div).css({ "width": c_width_px_bouquet + "px"}); + jQuery("#"+__bname_div).html("" + ch_name_with_logo + ""); + build_epg_bouquet(__bdiv, __channel_id, _starttime, _stoptime, __logo); + window.setTimeout("build_epg_plus_loop(" + _starttime + "," + _stoptime + ")", 100); + g_i++; + } + else + { + show_waitbox(false); + obj_disable("btGet", false); + } +} + +/* main: build epg+ */ +function build_epg_plus_main() +{ + epg_plus_calc_dimensions(); + get_timer(); + show_obj("epg_info", false); + show_waitbox(true); + obj_disable("btGet", true); + var sel = document.e.bouquets.selectedIndex; + if (sel != -1) + bou = document.e.bouquets[sel].value; + else + bou = 1; + _secs = document.e.epg_time.value; + _secs = parseInt(_secs); + build_epg_plus(bou, _secs); + //document.getElementById("epg_plus").width = g_width_px; +} + +/* change time offset and build epg+ */ +function build_epg_plus_delta(_delta) +{ + if (document.e.epg_time.selectedIndex + _delta < document.e.epg_time.length && document.e.epg_time.selectedIndex + _delta >= 0) + document.e.epg_time.selectedIndex += _delta; + build_epg_plus_main(); +} + +/* time delta dropdown-list */ +function build_time_list(_delta) +{ + var now = new Date(); + now.setMinutes(0); + now.setSeconds(0); + now.setMilliseconds(0); + now = new Date(now.getTime() + _delta * 60 * 60 * 1000); + var _secs = now / 1000; + var _hour = now.getHours(); + var et = document.getElementById("epg_time"); + for (i = 0; i < 24; i++) + { + var _time = (_hour + i) % 24; + if(_time < 10) + _time = "0" + _time; + _time += ":00"; + var _time_t = _secs + i * 3600; + var __item = obj_createAt(et, "option", "ep_bouquet_item"); + __item.text = _time; + __item.value = _time_t; + } +} + +/* init call */ +function epg_plus_init(_display_logos) +{ + g_display_logos = _display_logos; + window.onresize = epg_plus_calc_dimensions(); + build_time_list(0); +} diff --git a/data/y-web/Y_Tools_Menue.yhtm b/data/y-web/Y_Tools_Menue.yhtm index 7ca78bfbf..93f8404a0 100644 --- a/data/y-web/Y_Tools_Menue.yhtm +++ b/data/y-web/Y_Tools_Menue.yhtm @@ -41,16 +41,16 @@ function init(){ {=var-set:m_link_text={=L:tools.mounts=}=} {=include-block:Y_Blocks.txt;management_link=} -
  • {=L:ni.netfs-control=}
  • +
  • {=L:tools.netfs-control=}
    • - {=var-set:m_link_href=Y_NI_NetFS-init.yhtm?mount_type=0&mount_type_s=fstab=} + {=var-set:m_link_href=Y_Tools_NetFS-init.yhtm?mount_type=0&mount_type_s=fstab=} {=var-set:m_link_desc=fstab-{=L:tools.mounts=}=} {=var-set:m_link_text=/var/etc/fstab=} {=include-block:Y_Blocks.txt;management_link=}
    • - {=var-set:m_link_href=Y_NI_NetFS-init.yhtm?mount_type=1&mount_type_s=automount=} + {=var-set:m_link_href=Y_Tools_NetFS-init.yhtm?mount_type=1&mount_type_s=automount=} {=var-set:m_link_desc={=L:tools.automount=}=} {=var-set:m_link_text=/var/etc/auto.net=} {=include-block:Y_Blocks.txt;management_link=} diff --git a/data/y-web/Y_NI_NetFS-control.yhtm b/data/y-web/Y_Tools_NetFS.yhtm similarity index 74% rename from data/y-web/Y_NI_NetFS-control.yhtm rename to data/y-web/Y_Tools_NetFS.yhtm index 3053ac830..cd3ed169a 100644 --- a/data/y-web/Y_NI_NetFS-control.yhtm +++ b/data/y-web/Y_Tools_NetFS.yhtm @@ -21,7 +21,7 @@ {=include-block:Y_Blocks.txt;head_close=} -{=var-set:wait_text={=L:ni.netfs-control.title=}
      =}{=include-block:Y_Blocks.txt;snip_wait=} +{=var-set:wait_text={=L:tools.netfs.title=}
      =}{=include-block:Y_Blocks.txt;snip_wait=}
      - {=var-set:menu={=L:ni.netfs-control.title=}=}{=include-block:Y_Blocks.txt;work_menu=} + {=var-set:menu={=L:tools.netfs.title=}=}{=include-block:Y_Blocks.txt;work_menu=}
      - {=L:ni.netfs-control.entrys=} {=L:ni.netfs-{=mount_type=}=} + {=L:tools.netfs.entrys=} {=L:tools.netfs.{=mount_type=}=} - + {=if-equal:{=mount_type=}~0~ - + - + ~ =} {=if-equal:{=mount_type=}~1~ - + ~ @@ -98,9 +98,9 @@ function do_submit() {=var-set:nr=7=} {=include-block:Y_Blocks.txt;netfs_table_row=}

      - + {=if-equal:{=mount_type=}~1~ - + ~ =}
      diff --git a/data/y-web/Y_NI_NetFS-edit.yhtm b/data/y-web/Y_Tools_NetFS_edit.yhtm similarity index 78% rename from data/y-web/Y_NI_NetFS-edit.yhtm rename to data/y-web/Y_Tools_NetFS_edit.yhtm index 40e3e6e36..4e7527f33 100644 --- a/data/y-web/Y_NI_NetFS-edit.yhtm +++ b/data/y-web/Y_Tools_NetFS_edit.yhtm @@ -22,10 +22,10 @@ function do_submit() {=include-block:Y_Blocks.txt;head_close=} -{=var-set:wait_text={=L:ni.netfs-control.title=}
      =}{=include-block:Y_Blocks.txt;snip_wait=} +{=var-set:wait_text={=L:tools.netfs.title=}
      =}{=include-block:Y_Blocks.txt;snip_wait=}
      - {=var-set:menu={=L:ni.netfs-control.title=} ({=L:ni.edit=}: {=L:ni.netfs-{=mount_type=}=} - {=nr=})=}{=include-block:Y_Blocks.txt;work_menu=} + {=var-set:menu={=L:tools.netfs.title=} ({=L:ni.edit=}: {=L:tools.netfs.{=mount_type=}=} - {=nr=})=}{=include-block:Y_Blocks.txt;work_menu=}
      @@ -34,50 +34,50 @@ function do_submit() - + - + - + - + - + - + - + - + - + - + - +
      {=L:ni.netfs-control.type=}{=L:tools.netfs.type=} NFS CIFS
      {=L:ni.netfs-control.ip=}{=L:tools.netfs.ip=}
      {=L:ni.netfs-control.dir=}{=L:tools.netfs.dir=}
      {=L:ni.netfs-control.local_dir=}{=L:tools.netfs.local_dir=}
      {=L:ni.netfs-control.options=} 1{=L:tools.netfs.options=} 1
      {=L:ni.netfs-control.options=} 2{=L:tools.netfs.options=} 2
      {=L:ni.netfs-control.user=}{=L:tools.netfs.user=}
      {=L:ni.netfs-control.password=}{=L:tools.netfs.password=}
      {=L:ni.netfs-control.dump=}{=L:tools.netfs.dump=}
      {=L:ni.netfs-control.pass=}{=L:tools.netfs.pass=}
      {=L:ni.netfs-control.active=}{=L:tools.netfs.active=} {=L:on=} {=L:off=} @@ -85,10 +85,10 @@ function do_submit()

      - + - +
      diff --git a/data/y-web/Y_NI_NetFS-init.yhtm b/data/y-web/Y_Tools_NetFS_init.yhtm similarity index 81% rename from data/y-web/Y_NI_NetFS-init.yhtm rename to data/y-web/Y_Tools_NetFS_init.yhtm index 8a1d9f072..38961ae61 100644 --- a/data/y-web/Y_NI_NetFS-init.yhtm +++ b/data/y-web/Y_Tools_NetFS_init.yhtm @@ -2,7 +2,7 @@ {=include-block:Y_Blocks.txt;head_close=} diff --git a/data/y-web/Y_Version.txt b/data/y-web/Y_Version.txt index 6c5f86ba8..722c5d32c 100644 --- a/data/y-web/Y_Version.txt +++ b/data/y-web/Y_Version.txt @@ -1,3 +1,3 @@ -version=3.0.49 -date=28.02.2023 +version=3.0.50 +date=02.03.2023 info=NI-Neutrino-Webinterface diff --git a/data/y-web/languages/Deutsch b/data/y-web/languages/Deutsch index 662eadaca..de89cdeb5 100644 --- a/data/y-web/languages/Deutsch +++ b/data/y-web/languages/Deutsch @@ -404,6 +404,29 @@ tools.yinstaller.head=yInstaller tools.yinstaller.tar_file=tar-Datei tools.yinstaller.upload_install=hochladen und installieren +# ===== Tools NetFS +tools.netfs=NetFS +tools.netfs.0=fstab +tools.netfs.1=auto.net +tools.netfs.title=NetFS-Steuerung +tools.netfs.entrys=NetFS-Einträge +tools.netfs.restart_menu=Das NetFS-Menü wird nun erneut gestartet +tools.netfs.mount_all=Alle einhängen +tools.netfs.umount_all=Alle aushängen +tools.netfs.mount=Einhängen +tools.netfs.umount=Aushängen +tools.netfs.type=Typ +tools.netfs.ip=Entfernte IP-Adresse +tools.netfs.dir=Entferntes Verzeichnis +tools.netfs.user=Benutzername +tools.netfs.password=Passwort +tools.netfs.options=Optionen +tools.netfs.dump=Dump +tools.netfs.pass=Pass +tools.netfs.local_dir=Lokales Verzeichnis +tools.netfs.active=Eintrag aktiv +tools.netfs.autofs_restart=autofs neu starten + # ===== Tools tools.automount=AutoMounts tools.mounts_desc=File mounts organisieren @@ -552,25 +575,3 @@ ni.reload=Neu laden ni.configure=Konfigurieren ni.dblclick=Doppelklick erforderlich ni.infopage=NI Infoseite - -ni.netfs-control=NetFS -ni.netfs-0=fstab -ni.netfs-1=auto.net -ni.netfs-control.title=NetFS-Steuerung -ni.netfs-control.entrys=NetFS-Einträge -ni.netfs-control.restart_menu=Das NetFS-Menü wird nun erneut gestartet -ni.netfs-control.mount_all=Alle einhängen -ni.netfs-control.umount_all=Alle aushängen -ni.netfs-control.mount=Einhängen -ni.netfs-control.umount=Aushängen -ni.netfs-control.type=Typ -ni.netfs-control.ip=Entfernte IP-Adresse -ni.netfs-control.dir=Entferntes Verzeichnis -ni.netfs-control.user=Benutzername -ni.netfs-control.password=Passwort -ni.netfs-control.options=Optionen -ni.netfs-control.dump=Dump -ni.netfs-control.pass=Pass -ni.netfs-control.local_dir=Lokales Verzeichnis -ni.netfs-control.active=Eintrag aktiv -ni.netfs-control.autofs_restart=autofs neu starten diff --git a/data/y-web/languages/English b/data/y-web/languages/English index 36d1fd3a1..00a788678 100644 --- a/data/y-web/languages/English +++ b/data/y-web/languages/English @@ -404,6 +404,29 @@ tools.yinstaller.head=yInstaller tools.yinstaller.tar_file=tar-File tools.yinstaller.upload_install=upload and install +# ===== Tools NetFS +tools.netfs=NetFS +tools.netfs.0=fstab +tools.netfs.1=auto.net +tools.netfs.title=NetFS-Control +tools.netfs.entrys=NetFS-Entrys +tools.netfs.restart_menu=The NetFS-Menu will restart now +tools.netfs.mount_all=Mount all +tools.netfs.umount_all=Unmount all +tools.netfs.mount=Mount +tools.netfs.umount=Unmount +tools.netfs.type=Typ +tools.netfs.ip=Remote IP-Adress +tools.netfs.dir=Remote directory +tools.netfs.user=Username +tools.netfs.password=Password +tools.netfs.options=Options +tools.netfs.dump=Dump +tools.netfs.pass=Pass +tools.netfs.local_dir=Local directory +tools.netfs.active=Entry active +tools.netfs.autofs_restart=Restart autofs + # ===== Tools tools.automount=AutoMounts tools.mounts_desc=organize file mounts @@ -552,25 +575,3 @@ ni.reload=Reload ni.configure=Configure ni.dblclick=Doubleclick required ni.infopage=NI Infopage - -ni.netfs-control=NetFS -ni.netfs-0=fstab -ni.netfs-1=auto.net -ni.netfs-control.title=NetFS-Control -ni.netfs-control.entrys=NetFS-Entrys -ni.netfs-control.restart_menu=The NetFS-Menu will restart now -ni.netfs-control.mount_all=Mount all -ni.netfs-control.umount_all=Unmount all -ni.netfs-control.mount=Mount -ni.netfs-control.umount=Unmount -ni.netfs-control.type=Typ -ni.netfs-control.ip=Remote IP-Adress -ni.netfs-control.dir=Remote directory -ni.netfs-control.user=Username -ni.netfs-control.password=Password -ni.netfs-control.options=Options -ni.netfs-control.dump=Dump -ni.netfs-control.pass=Pass -ni.netfs-control.local_dir=Local directory -ni.netfs-control.active=Entry active -ni.netfs-control.autofs_restart=Restart autofs