From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jon Murphy To: development@lists.ipfire.org Subject: Re: Development Digest, Vol 100, Issue 34 Date: Sat, 16 May 2020 11:08:01 -0500 Message-ID: <70EFA11E-3381-408E-95D4-EBE9811E701E@gmail.com> In-Reply-To: MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============4426373265124527036==" List-Id: --===============4426373265124527036== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Tim, Is this the help link for each WebGUI page? This will help all of us newbies= big time. Its no fun being lost and not knowing where to look for instant h= elp. Big "thank you!" Jon > ---------------------------------------------------------------------- >=20 > Message: 1 > Date: Fri, 15 May 2020 22:39:49 +0100 > From: Tim FitzGeorge > To: development(a)lists.ipfire.org > Subject: [PATCH 0/3] Help for GUI > Message-ID: <20200515213952.15127-1-ipfr(a)tfitzgeorge.me.uk> >=20 > Add per-page help link to GUI. > The link is extracted from the menu file and added to the menu. > Currently only implemented for 'ipfire' and 'ipfire-rounded' themes. >=20 > Tim FitzGeorge (3): > Help for GUI - ipfire theme code > Help for GUI - Help links > Help for GUI - help link style >=20 > config/menu/10-system.menu | 11 +++++++ > config/menu/20-status.menu | 13 ++++++++ > config/menu/30-network.menu | 20 +++++++++-- > config/menu/40-services.menu | 6 ++++ > config/menu/50-firewall.menu | 8 ++++- > config/menu/60-ipfire.menu | 1 + > config/menu/70-log.menu | 33 ++++++++++++------- > config/menu/EX-apcupsd.menu | 1 + > config/menu/EX-guardian.menu | 1 + > config/menu/EX-mpfire.menu | 1 + > config/menu/EX-samba.menu | 1 + > config/menu/EX-tor.menu | 1 + > config/menu/EX-wlanap.menu | 1 + > html/html/themes/ipfire/include/css/style.css | 8 +++++ > html/html/themes/ipfire/include/functions.pl | 19 +++++++++-- > 15 files changed, 107 insertions(+), 18 deletions(-) >=20 > -- > 2.26.1 >=20 >=20 >=20 > ------------------------------ >=20 > Message: 2 > Date: Fri, 15 May 2020 22:39:50 +0100 > From: Tim FitzGeorge > To: development(a)lists.ipfire.org > Subject: [PATCH 1/3] Help for GUI - ipfire theme code > Message-ID: <20200515213952.15127-2-ipfr(a)tfitzgeorge.me.uk> >=20 > Extracts help key from menu hash when building menus and adds help > link to the menu. >=20 > Signed-off-by: Tim FitzGeorge > --- > html/html/themes/ipfire/include/functions.pl | 19 ++++++++++++++++--- > 1 file changed, 16 insertions(+), 3 deletions(-) >=20 > diff --git a/html/html/themes/ipfire/include/functions.pl b/html/html/theme= s/ipfire/include/functions.pl > index 9aec77497..6eb56c628 100644 > --- a/html/html/themes/ipfire/include/functions.pl > +++ b/html/html/themes/ipfire/include/functions.pl > @@ -39,6 +39,8 @@ require "${General::swroot}/lang.pl"; > # @param submenu entries > sub showsubmenu() { > my $submenus =3D shift; > + my $uri =3D shift; > + my $help; > =09 > print "
    "; > foreach my $item (sort keys %$submenus) { > @@ -54,16 +56,26 @@ sub showsubmenu() { > } > print ''.$submenus->{$item}->{'caption'}.''; >=20 > + if (exists $submenus->{$item}->{'help'} and $link eq $uri) { > + $help =3D $submenus->{$item}->{'help'}; > + } > + > &showsubmenu($subsubmenus) if ($subsubmenus); > print ''; > } > - print "
" > + print ""; > + > + return $help; > } >=20 > ###########################################################################= #### > # > # print menu html elements > sub showmenu() { > + $uri =3D shift; > + my $help =3D ''; > + my $subhelp; > + > print '
'; >=20 > if ($settings{'SPEED'} ne 'off') { > @@ -82,10 +94,11 @@ EOF > next if (!is_menu_visible($link) or $link eq ''); > print '
  • '.$menu->{$k1}->{'capti= on'}.''; > my $submenus =3D $menu->{$k1}->{'subMenu'}; > - &showsubmenu($submenus) if ($submenus); > + $help .=3D &showsubmenu($submenus, $uri) if ($submenus); > print "
  • "; > } >=20 > + print '
  • ?
  • ' if ($help); > print "
    "; > } >=20 > @@ -168,7 +181,7 @@ print < END > ; >=20 > -&showmenu() if ($suppressMenu !=3D 1); > +&showmenu( $URI[0] ) if ($suppressMenu !=3D 1); >=20 > print <
    > --=20 > 2.26.1 >=20 >=20 >=20 > ------------------------------ >=20 > Message: 3 > Date: Fri, 15 May 2020 22:39:52 +0100 > From: Tim FitzGeorge > To: development(a)lists.ipfire.org > Subject: [PATCH 3/3] Help for GUI - help link style > Message-ID: <20200515213952.15127-4-ipfr(a)tfitzgeorge.me.uk> >=20 > Signed-off-by: Tim FitzGeorge > --- > html/html/themes/ipfire/include/css/style.css | 8 ++++++++ > 1 file changed, 8 insertions(+) >=20 > diff --git a/html/html/themes/ipfire/include/css/style.css b/html/html/them= es/ipfire/include/css/style.css > index 9421fc111..7c2ec8577 100644 > --- a/html/html/themes/ipfire/include/css/style.css > +++ b/html/html/themes/ipfire/include/css/style.css > @@ -261,6 +261,14 @@ input.text { > background: #dddddd; > } >=20 > +#cssmenu .help { > + padding: 0px 6px; > + border: solid; > + border-width: thin; > + border-radius: 10px; > + line-height: 20px; > +} > + > /* This decorates all tables with class=3D"tbl" */ >=20 > table { > --=20 > 2.26.1 >=20 >=20 >=20 > ------------------------------ >=20 > Message: 4 > Date: Fri, 15 May 2020 22:39:51 +0100 > From: Tim FitzGeorge > To: development(a)lists.ipfire.org > Subject: [PATCH 2/3] Help for GUI - Help links > Message-ID: <20200515213952.15127-3-ipfr(a)tfitzgeorge.me.uk> >=20 > Signed-off-by: Tim FitzGeorge > --- > config/menu/10-system.menu | 11 +++++++++++ > config/menu/20-status.menu | 13 +++++++++++++ > config/menu/30-network.menu | 20 +++++++++++++++++--- > config/menu/40-services.menu | 6 ++++++ > config/menu/50-firewall.menu | 8 +++++++- > config/menu/60-ipfire.menu | 1 + > config/menu/70-log.menu | 33 ++++++++++++++++++++++----------- > config/menu/EX-apcupsd.menu | 1 + > config/menu/EX-guardian.menu | 1 + > config/menu/EX-mpfire.menu | 1 + > config/menu/EX-samba.menu | 1 + > config/menu/EX-tor.menu | 1 + > config/menu/EX-wlanap.menu | 1 + > 13 files changed, 83 insertions(+), 15 deletions(-) >=20 > diff --git a/config/menu/10-system.menu b/config/menu/10-system.menu > index b142bfbac..176621b41 100644 > --- a/config/menu/10-system.menu > +++ b/config/menu/10-system.menu > @@ -3,63 +3,74 @@ > 'uri' =3D> '/cgi-bin/index.cgi', > 'title' =3D> "$Lang::tr{'alt home'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/system/startpage' > }; > $subsystem->{'20.dialup'} =3D { > 'caption' =3D> $Lang::tr{'alt dialup'}, > 'uri' =3D> '/cgi-bin/pppsetup.cgi', > 'title' =3D> "$Lang::tr{'alt dialup'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/system/dial' > }; > $subsystem->{'21.wlan'} =3D { > 'caption' =3D> $Lang::tr{'wlan client'}, > 'uri' =3D> '/cgi-bin/wirelessclient.cgi', > 'title' =3D> "$Lang::tr{'wlan client'}", > 'enabled' =3D> 0, > + 'help' =3D> 'configuration/system/wlanclient' > }; > $subsystem->{'22.dma'} =3D {'caption' =3D> $Lang::tr{'email settings'}, > 'uri' =3D> '/cgi-bin/mail.cgi', > 'title' =3D> "$Lang::tr{'email settings'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/system/mail_service' > }; > $subsystem->{'30.ssh'} =3D { > 'caption' =3D> $Lang::tr{'ssh access'}, > 'uri' =3D> '/cgi-bin/remote.cgi', > 'title' =3D> "$Lang::tr{'ssh access'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/system/ssh' > }; > $subsystem->{'40.gui'} =3D { > 'caption' =3D> $Lang::tr{'gui settings'}, > 'uri' =3D> '/cgi-bin/gui.cgi', > 'title' =3D> "$Lang::tr{'gui settings'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/system/userinterface' > }; > $subsystem->{'40.backup'} =3D { > 'caption' =3D> $Lang::tr{'backup'}, > 'uri' =3D> '/cgi-bin/backup.cgi', > 'title' =3D> "$Lang::tr{'backup'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/system/backup' > }; > $subsystem->{'41.fireinfo'} =3D { > 'caption' =3D> $Lang::tr{'system information'}, > 'uri' =3D> '/cgi-bin/fireinfo.cgi', > 'title' =3D> "$Lang::tr{'system information'}", > 'enabled' =3D> 1, > + 'help' =3D> 'fireinfo' > }; > $subsystem->{'42.hwvuln'} =3D { > 'caption' =3D> $Lang::tr{'hardware vulnerabilities'}, > 'uri' =3D> '/cgi-bin/vulnerabilities.cgi', > 'title' =3D> "$Lang::tr{'hardware vulnerabilities'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/system/vulnerabilties' > }; > $subsystem->{'43.shutdown'} =3D { > 'caption' =3D> $Lang::tr{'shutdown'}, > 'uri' =3D> '/cgi-bin/shutdown.cgi', > 'title' =3D> "$Lang::tr{'shutdown'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/system/shutdown' > }; > $subsystem->{'99.credits'} =3D { > 'caption' =3D> $Lang::tr{'credits'}, > 'uri' =3D> '/cgi-bin/credits.cgi', > 'title' =3D> "$Lang::tr{'credits'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/system/credits' > }; > diff --git a/config/menu/20-status.menu b/config/menu/20-status.menu > index 2bcf0d5e8..38944b447 100644 > --- a/config/menu/20-status.menu > +++ b/config/menu/20-status.menu > @@ -3,48 +3,56 @@ > 'uri' =3D> '/cgi-bin/system.cgi', > 'title' =3D> "$Lang::tr{'system'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/status/system' > }; > $substatus->{'20.memory'} =3D { > 'caption' =3D> $Lang::tr{'memory'}, > 'uri' =3D> '/cgi-bin/memory.cgi', > 'title' =3D> "$Lang::tr{'memory'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/status/memory' > }; > $substatus->{'30.services'} =3D { > 'caption' =3D> $Lang::tr{'services'}, > 'uri' =3D> '/cgi-bin/services.cgi', > 'title' =3D> "$Lang::tr{'services'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/status/services' > }; > $substatus->{'40.media'} =3D { > 'caption' =3D> $Lang::tr{'media'}, > 'uri' =3D> '/cgi-bin/media.cgi', > 'title' =3D> "$Lang::tr{'media'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/status/drives' > }; > $substatus->{'50.networkred'} =3D { > 'caption' =3D> "$Lang::tr{'network red'}", > 'uri' =3D> '/cgi-bin/netexternal.cgi', > 'title' =3D> "$Lang::tr{'network red'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/status/network_ext' > }; > $substatus->{'51.networkinternal'} =3D { > 'caption' =3D> "$Lang::tr{'network internal'}", > 'uri' =3D> '/cgi-bin/netinternal.cgi', > 'title' =3D> "$Lang::tr{'network internal'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/status/network_int' > }; > $substatus->{'52.networkother'} =3D { > 'caption' =3D> "$Lang::tr{'network other'}", > 'uri' =3D> '/cgi-bin/netother.cgi', > 'title' =3D> "$Lang::tr{'network other'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/status/network_other' > }; > $substatus->{'53.networkovpn'} =3D { > 'caption' =3D> "$Lang::tr{'vpn statistic rw'}", > 'uri' =3D> '/cgi-bin/netovpnrw.cgi', > 'title' =3D> "$Lang::tr{'vpn statistic rw'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/status/network_ovpnrw' > }; > $substatus->{'54.networkovpnsrv'} =3D { > 'caption' =3D> "$Lang::tr{'vpn statistic n2n'}", > @@ -57,24 +65,28 @@ > 'uri' =3D> '/cgi-bin/hardwaregraphs.cgi', > 'title' =3D> "$Lang::tr{'hardware graphs'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/status/hardware_diagrams' > }; > $substatus->{'61.entropy'} =3D { > 'caption' =3D> "$Lang::tr{'entropy'}", > 'uri' =3D> '/cgi-bin/entropy.cgi', > 'title' =3D> "$Lang::tr{'entropy graphs'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/status/entropy' > }; > $substatus->{'71.connections'} =3D { > 'caption' =3D> $Lang::tr{'connections'}, > 'uri' =3D> '/cgi-bin/connections.cgi', > 'title' =3D> "$Lang::tr{'connections'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/status/connections' > }; > $substatus->{'72.nettraf'} =3D { > 'caption' =3D> $Lang::tr{'sstraffic'}, > 'uri' =3D> '/cgi-bin/traffic.cgi', > 'title' =3D> "$Lang::tr{'sstraffic'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/status/nettraffic' > }; > $substatus->{'73.qos'} =3D { > 'caption' =3D> $Lang::tr{'qos graphs'}, > @@ -96,4 +108,5 @@ > 'uri' =3D> '/cgi-bin/mdstat.cgi', > 'title' =3D> 'Mdstat', > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/status/mdstat' > }; > diff --git a/config/menu/30-network.menu b/config/menu/30-network.menu > index 19571a870..6b1e8edf6 100644 > --- a/config/menu/30-network.menu > +++ b/config/menu/30-network.menu > @@ -1,83 +1,97 @@ > $subnetwork->{'10.netconf'} =3D {'caption' =3D> "$Lang::tr{'net config'= }", > 'uri' =3D> '/cgi-bin/netconfig.cgi', > 'title' =3D> "$Lang::tr{'net config'}", > - 'enabled' =3D> 0, > + 'enabled' =3D> 0 > }; > $subnetwork->{'11.zoneconf'} =3D {'caption' =3D> "$Lang::tr{'zoneconf titl= e'}", > 'uri' =3D> '/cgi-bin/zoneconf.cgi', > 'title' =3D> "$Lang::tr{'zoneconf title'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/network/zoneconf' > }; > $subnetwork->{'12.dns'} =3D { > 'caption' =3D> $Lang::tr{'dns title'}, > 'uri' =3D> '/cgi-bin/dns.cgi', > 'title' =3D> "$Lang::tr{'dns title'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/network/dns' > }; > $subnetwork->{'20.proxy'} =3D {'caption' =3D> "$Lang::tr{'web proxy'}", > 'uri' =3D> '/cgi-bin/proxy.cgi', > 'title' =3D> "$Lang::tr{'web proxy'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/network/proxy/wui_conf' > }; > $subnetwork->{'21.urlfilter'} =3D {'caption' =3D> $Lang::tr{'url filter= '}, > 'uri' =3D> '/cgi-bin/urlfilter.cgi', > 'title' =3D> $Lang::tr{'url filter'}, > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/network/url-filter' > }; > $subnetwork->{'22.updxlrator'} =3D {'caption' =3D> $Lang::tr{'update ac= celerator'}, > 'uri' =3D> '/cgi-bin/updatexlrator.cgi', > 'title' =3D> $Lang::tr{'update accelerator'}, > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/network/update-booster' > }; > $subnetwork->{'30.dhcp'} =3D {'caption' =3D> $Lang::tr{'dhcp server'}, > 'uri' =3D> '/cgi-bin/dhcp.cgi', > 'title' =3D> "$Lang::tr{'dhcp server'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/network/dhcp' > }; > $subnetwork->{'32.captive'} =3D {'caption' =3D> $Lang::tr{'Captive'}, > 'uri' =3D> '/cgi-bin/captive.cgi', > 'title' =3D> $Lang::tr{'Captive'}, > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/network/captive' > }; > $subnetwork->{'40.scheduler'} =3D { > 'caption' =3D> $Lang::tr{'connscheduler'}, > 'uri' =3D> '/cgi-bin/connscheduler.cgi', > 'title' =3D> "$Lang::tr{'connscheduler'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/network/connectionscheduler' > }; > $subnetwork->{'50.hosts'} =3D { > 'caption' =3D> $Lang::tr{'edit hosts'}, > 'uri' =3D> '/cgi-bin/hosts.cgi', > 'title' =3D> "$Lang::tr{'edit hosts'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/network/hosts' > }; > $subnetwork->{'52.dnsforward'} =3D { > 'caption' =3D> $Lang::tr{'dnsforward'}, > 'uri' =3D> '/cgi-bin/dnsforward.cgi', > 'title' =3D> "$Lang::tr{'dnsforward'}", > - 'enabled' =3D> 1 > + 'enabled' =3D> 1, > + 'help' =3D> 'configuration/network/dnsfo= rward' > }; > $subnetwork->{'60.routes'} =3D { > 'caption' =3D> $Lang::tr{'static routes'}, > 'uri' =3D> '/cgi-bin/routing.cgi', > 'title' =3D> "$Lang::tr{'static routes'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/network/static' > }; > $subnetwork->{'70.aliases'} =3D { > 'caption' =3D> $Lang::tr{'aliases'}, > 'uri' =3D> '/cgi-bin/aliases.cgi', > 'title' =3D> "$Lang::tr{'aliases'}", > - 'enabled' =3D> `grep "RED_TYPE=3DSTATIC" /var/ipfire/ethernet/settin= gs`, > + 'help' =3D> 'configuration/network/aliases', > + 'enabled' =3D> `grep "RED_TYPE=3DSTATIC" /var/ipfire/ethernet/settin= gs` > }; > $subnetwork->{'80.macadressmenu'} =3D { > 'caption' =3D> $Lang::tr{'mac address menu'}, > 'uri' =3D> '/cgi-bin/mac.cgi', > 'title' =3D> "$Lang::tr{'mac address menu'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/network/mac-address' > }; > $subnetwork->{'90.wakeonlan'} =3D { > 'caption' =3D> $Lang::tr{'WakeOnLan'}, > 'uri' =3D> '/cgi-bin/wakeonlan.cgi', > 'title' =3D> "$Lang::tr{'WakeOnLan'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/network/wake-on-lan' > }; > diff --git a/config/menu/40-services.menu b/config/menu/40-services.menu > index 83ce3bc1f..bb363cbae 100644 > --- a/config/menu/40-services.menu > +++ b/config/menu/40-services.menu > @@ -3,30 +3,36 @@ > 'uri' =3D> '/cgi-bin/vpnmain.cgi', > 'title' =3D> "$Lang::tr{'virtual private networking'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/services/ipsec' > }; > $subservices->{'20.openvpn'} =3D { > 'caption' =3D> 'OpenVPN', > 'uri' =3D> '/cgi-bin/ovpnmain.cgi', > 'title' =3D> "$Lang::tr{'virtual private networking'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/services/openvpn' > }; > $subservices->{'30.dyndns'} =3D {'caption' =3D> $Lang::tr{'dynamic dns'= }, > 'uri' =3D> '/cgi-bin/ddns.cgi', > 'title' =3D> "$Lang::tr{'dynamic dns'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/services/dyndns' > }; > $subservices->{'40.time'} =3D {'caption' =3D> $Lang::tr{'time server'}, > 'uri' =3D> '/cgi-bin/time.cgi', > 'title' =3D> "$Lang::tr{'time server'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/services/ntp' > }; > $subservices->{'50.qos'} =3D {'caption' =3D> 'Quality of Service', > 'uri' =3D> '/cgi-bin/qos.cgi', > 'title' =3D> "Quality of Service", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/services/qos' > }; > $subservices->{'70.extrahd'} =3D {'caption' =3D> "ExtraHD", > 'enabled' =3D> 1, > 'uri' =3D> '/cgi-bin/extrahd.cgi', > 'title' =3D> "ExtraHD", > + 'help' =3D> 'configuration/services/extrahd' > }; > diff --git a/config/menu/50-firewall.menu b/config/menu/50-firewall.menu > index 5ec1f67fc..07dfd4732 100644 > --- a/config/menu/50-firewall.menu > +++ b/config/menu/50-firewall.menu > @@ -3,6 +3,7 @@ > 'uri' =3D> '/cgi-bin/firewall.cgi', > 'title' =3D> "$Lang::tr{'firewall rules'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/firewall/rules' > }; > $subfirewall->{'20.fwhost'} =3D { > 'caption' =3D> $Lang::tr{'fwhost menu'}, > @@ -15,29 +16,33 @@ > 'uri' =3D> '/cgi-bin/optionsfw.cgi', > 'title' =3D> "$Lang::tr{'options fw'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/firewall/options' > }; > $subfirewall->{'40.ids'} =3D {'caption' =3D> $Lang::tr{'intrusion dete= ction'}, > 'uri' =3D> '/cgi-bin/ids.cgi', > 'title' =3D> "$Lang::tr{'intrusion detectio= n system'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/firewall/ips' > }; > $subfirewall->{'50.p2p'} =3D { > 'caption' =3D> $Lang::tr{'p2p block'}, > 'uri' =3D> '/cgi-bin/p2p-block.cgi', > 'title' =3D> "P2P-Block", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/firewall/p2p-block' > }; > $subfirewall->{'60.geoipblock'} =3D { > 'caption' =3D> $Lang::tr{'geoipblock'}, > 'uri' =3D> '/cgi-bin/geoip-block.cgi', > 'title' =3D> $Lang::tr{'geoipblock'}, > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/firewall/geoip-block' > }; > $subfirewall->{'70.wireless'} =3D { > 'caption' =3D> $Lang::tr{'blue access'}, > 'uri' =3D> '/cgi-bin/wireless.cgi', > 'title' =3D> "$Lang::tr{'blue access'}", > - 'enabled' =3D> 1, > + 'enabled' =3D> 1 > }; > $subfirewall->{'80.upnp'} =3D { > 'caption' =3D> 'UPnP', > @@ -50,4 +55,5 @@ > 'uri' =3D> '/cgi-bin/iptables.cgi', > 'title' =3D> "$Lang::tr{'ipts'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/firewall/iptables' > }; > diff --git a/config/menu/60-ipfire.menu b/config/menu/60-ipfire.menu > index 8b4c13950..87ce7f506 100644 > --- a/config/menu/60-ipfire.menu > +++ b/config/menu/60-ipfire.menu > @@ -2,6 +2,7 @@ > 'uri' =3D> '/cgi-bin/pakfire.cgi', > 'title' =3D> "Pakfire", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/ipfire/pakfire' > }; > $subipfire->{'99.help'} =3D {'caption' =3D> $Lang::tr{'help'}, > 'uri' =3D> '/cgi-bin/help.cgi', > diff --git a/config/menu/70-log.menu b/config/menu/70-log.menu > index 2fa0e426e..97931d3b8 100644 > --- a/config/menu/70-log.menu > +++ b/config/menu/70-log.menu > @@ -1,59 +1,69 @@ > $sublogs->{'10.summary'} =3D {'caption' =3D> $Lang::tr{'log summary'}, > 'uri' =3D> '/cgi-bin/logs.cgi/summary.dat', > 'title' =3D> "$Lang::tr{'log summary'}", > - 'enabled' =3D> 1 > + 'enabled' =3D> 1, > + 'help' =3D> 'configuration/logs/summary' > }; > $sublogs->{'20.settings'} =3D {'caption' =3D> $Lang::tr{'log settings'}, > 'uri' =3D> '/cgi-bin/logs.cgi/config.dat', > 'title' =3D> "$Lang::tr{'log settings'}", > - 'enabled' =3D> 1 > + 'enabled' =3D> 1, > + 'help' =3D> 'configuration/logs/logsettings' > }; > $sublogs->{'30.proxy'} =3D {'caption' =3D> $Lang::tr{'proxy logs'}, > 'uri' =3D> '/cgi-bin/logs.cgi/proxylog.dat', > 'title' =3D> "$Lang::tr{'proxy logs'}", > - 'enabled' =3D> 1 > + 'enabled' =3D> 1, > + 'help' =3D> 'configuration/logs/proxy' > }; > $sublogs->{'31.calamaris'} =3D {'caption' =3D> $Lang::tr{'calamaris pro= xy reports'}, > 'uri' =3D> '/cgi-bin/logs.cgi/calamaris.dat', > 'title' =3D> "$Lang::tr{'calamaris proxy reports'}", > - 'enabled' =3D> 1 > + 'enabled' =3D> 1, > + 'help' =3D> 'configuration/logs/proxyreports' > }; > $sublogs->{'40.firewall'} =3D {'caption' =3D> $Lang::tr{'firewall logs'= }, > 'uri' =3D> '/cgi-bin/logs.cgi/firewalllog.dat', > 'title' =3D> "$Lang::tr{'firewall logs'}", > - 'enabled' =3D> 1 > + 'enabled' =3D> 1, > + 'help' =3D> 'configuration/logs/firewall' > }; > $sublogs->{'41.firewallip'} =3D {'caption' =3D> $Lang::tr{'firewall log= s ip'}, > 'uri' =3D> '/cgi-bin/logs.cgi/firewalllogip.dat', > 'title' =3D> "$Lang::tr{'firewall logs ip'}", > - 'enabled' =3D> 1 > + 'enabled' =3D> 1, > + 'help' =3D> 'configuration/logs/firewall-ip' > }; > $sublogs->{'42.firewallport'} =3D {'caption' =3D> $Lang::tr{'firewall l= ogs port'}, > 'uri' =3D> '/cgi-bin/logs.cgi/firewalllogport.dat', > 'title' =3D> "$Lang::tr{'firewall logs port'}", > - 'enabled' =3D> 1 > + 'enabled' =3D> 1, > + 'help' =3D> 'configuration/logs/firewall-port' > }; > $sublogs->{'43.firewallcountry'} =3D {'caption' =3D> $Lang::tr{'firewal= l logs country'}, > 'uri' =3D> '/cgi-bin/logs.cgi/firewalllogcountry.dat', > 'title' =3D> "$Lang::tr{'firewall logs country'}", > - 'enabled' =3D> 1 > + 'enabled' =3D> 1, > + 'help' =3D> 'configuration/logs/firewall-country' > }; > $sublogs->{'50.ids'} =3D {'caption' =3D> $Lang::tr{'ids logs'}, > 'uri' =3D> '/cgi-bin/logs.cgi/ids.dat', > 'title' =3D> "$Lang::tr{'ids logs'}", > - 'enabled' =3D> 1 > + 'enabled' =3D> 1, > + 'help' =3D> 'configuration/logs/ids' > }; > $sublogs->{'55.ovpnclients'} =3D { > 'caption' =3D> $Lang::tr{'ovpn rw connection log'}, > 'uri' =3D> '/cgi-bin/logs.cgi/ovpnclients.dat', > 'title' =3D> "$Lang::tr{'ovpn rw connection log'}", > - 'enabled' =3D> 1, > + 'enabled' =3D> 1 > }; > $sublogs->{'60.urlfilter'} =3D { > 'caption' =3D> $Lang::tr{'urlfilter logs'}, > 'uri' =3D> '/cgi-bin/logs.cgi/urlfilter.dat', > 'title' =3D> "$Lang::tr{'urlfilter log'}", > 'enabled' =3D> 1, > + 'help' =3D> 'configuration/logs/url-filter' > }; > $sublogs->{'70.openvpn'} =3D {'caption' =3D> $Lang::tr{'openvpn log'}, > 'uri' =3D> '/cgi-bin/logs.cgi/openvpn.dat', > @@ -63,7 +73,8 @@ > $sublogs->{'80.system'} =3D {'caption' =3D> $Lang::tr{'system logs'}, > 'uri' =3D> '/cgi-bin/logs.cgi/log.dat', > 'title' =3D> "$Lang::tr{'system logs'}", > - 'enabled' =3D> 1 > + 'enabled' =3D> 1, > + 'help' =3D> 'configuration/logs/system' > }; > $sublogs->{'90.userlog'} =3D {'caption' =3D> $Lang::tr{'user proxy logs= '}, > 'uri' =3D> '/cgi-bin/logs.cgi/userlog.dat', > diff --git a/config/menu/EX-apcupsd.menu b/config/menu/EX-apcupsd.menu > index 5f01dce33..70553c8a5 100644 > --- a/config/menu/EX-apcupsd.menu > +++ b/config/menu/EX-apcupsd.menu > @@ -2,4 +2,5 @@ > 'uri' =3D> '/cgi-bin/upsstats.cgi', > 'title' =3D> $Lang::tr{'apcupsd'}, > 'enabled' =3D> 1, > + 'help' =3D> 'addons/apcupsd' > }; > diff --git a/config/menu/EX-guardian.menu b/config/menu/EX-guardian.menu > index 89cda9d35..159b54486 100644 > --- a/config/menu/EX-guardian.menu > +++ b/config/menu/EX-guardian.menu > @@ -3,4 +3,5 @@ $subservices->{'65.guardian'} =3D { > 'uri' =3D> '/cgi-bin/guardian.cgi', > 'title' =3D> "$Lang::tr{'guardian'}", > 'enabled' =3D> '1', > + 'help' =3D> 'addons/guardian' > }; > diff --git a/config/menu/EX-mpfire.menu b/config/menu/EX-mpfire.menu > index afba4dbde..583e7eca0 100644 > --- a/config/menu/EX-mpfire.menu > +++ b/config/menu/EX-mpfire.menu > @@ -2,4 +2,5 @@ > 'uri' =3D> '/cgi-bin/mpfire.cgi', > 'title' =3D> $Lang::tr{'mpfire'}, > 'enabled' =3D> 1, > + 'help' =3D> 'addons/mpfire' > }; > diff --git a/config/menu/EX-samba.menu b/config/menu/EX-samba.menu > index 6a9a1ae71..30bcb0c8b 100644 > --- a/config/menu/EX-samba.menu > +++ b/config/menu/EX-samba.menu > @@ -2,4 +2,5 @@ > 'uri' =3D> '/cgi-bin/samba.cgi', > 'title' =3D> $Lang::tr{'samba'}, > 'enabled' =3D> 1, > + 'help' =3D> 'addons/samba' > }; > diff --git a/config/menu/EX-tor.menu b/config/menu/EX-tor.menu > index 00ddffe8d..aec5b4354 100644 > --- a/config/menu/EX-tor.menu > +++ b/config/menu/EX-tor.menu > @@ -3,4 +3,5 @@ $subipfire->{'50.tor'} =3D { > 'uri' =3D> '/cgi-bin/tor.cgi', > 'title' =3D> $Lang::tr{'tor'}, > 'enabled' =3D> 1, > + 'help' =3D> 'addons/tor' > }; > diff --git a/config/menu/EX-wlanap.menu b/config/menu/EX-wlanap.menu > index 95b653052..cc131a209 100644 > --- a/config/menu/EX-wlanap.menu > +++ b/config/menu/EX-wlanap.menu > @@ -2,4 +2,5 @@ > 'uri' =3D> '/cgi-bin/wlanap.cgi', > 'title' =3D> WLanAP, > 'enabled' =3D> 1, > + 'help' =3D> 'addons/wireless' > }; > -- > 2.26.1 >=20 --===============4426373265124527036==--