};
};
+### Initialize user manual
+my %manualpages = ();
+&General::readhash("${General::swroot}/main/manualpages", \%manualpages);
+### Load selected language and theme functions
require "${swroot}/langs/en.pl";
require "${swroot}/langs/${language}.pl";
eval `/bin/cat /srv/web/ipfire/html/themes/ipfire/include/functions.pl`;
return $string;
}
}
+
+# Get user manual URL for the specified configuration page, returns empty if no entry is configured
+sub get_manualpage_url() {
+ my ($cgi_page) = @_;
+
+ # Ensure base url is configured
+ return unless($manualpages{'BASE_URL'});
+
+ # Return URL
+ if($cgi_page && defined($manualpages{$cgi_page})) {
+ return "$manualpages{'BASE_URL'}/$manualpages{$cgi_page}";
+ }
+
+ # No manual page configured, return nothing
+ return;
+}
--- /dev/null
+# User manual base URL (without trailing slash)
+BASE_URL=https://wiki.ipfire.org
+
+# Assign manual page URL path to CGI file ([cgi basename]=[path/to/page])
+index=configuration/system/startpage
+pppsetup=configuration/system/dial
+qos=configuration/services/qos
print <<END
<div class="bigbox fixed">
<div id="main_inner" class="fixed">
- <h1>$title</h1>
+ <div id="main_header">
+ <h1>$title</h1>
+END
+;
+
+# Print user manual link
+my $manual_url = &Header::get_manualpage_url($scriptName);
+if($manual_url) {
+ print <<END
+ <span><a href="$manual_url" title="$Lang::tr{'online help en'}" target="_blank"><img src="/images/help-browser.png" alt="$Lang::tr{'online help en'}"></a></span>
+END
+;
+}
+
+print <<END
+ </div>
END
;
}