1. <?php
  2. #!/usr/bin/perl
  3.  
  4. use lib "/usr/lib/smoothwall";
  5. use header qw( :standard );
  6. use smoothd qw( message );
  7. use filtering qw( :standard );
  8. use Shell qw(ln);
  9.  
  10. my %filtersettings;
  11. my $dgconfigdir = "/etc/dansguardian";
  12.  
  13. &getcgihash(%dgavconfig);
  14. if ($dgavconfig{"ACTION"} eq $tr{'save'}) {
  15. &readhash("${swroot}/filtering/settings", %filtersettings);
  16. $filtersettings{'DGAV_SIMPLE_TYPE'} = $dgavconfig{'TYPE'};
  17. &writehash("${swroot}/filtering/settings", %filtersettings);
  18. unlink("$dgconfigdir/dansguardianf1.conf");
  19. ln("-s", "$dgconfigdir/simple/$dgavconfig{'TYPE'}/dansguardianf_$dgavconfig{'TYPE'}.conf", "$dgconfigdir/dansguardianf1.conf");
  20. my $status = message("dgrestart");
  21.  
  22. }
  23.  
  24.  
  25. &showhttpheaders();
  26.  
  27. my @default_types = ('default', 'child', 'preteen', 'teen', 'adult');
  28. if ( -"$dgconfigdir/simple/custom" ) {
  29. push (@default_types, "custom");
  30. }
  31. if ( -"$dgconfigdir/simple/advanced" ) {
  32. push (@default_types, "advanced");
  33. }
  34.  
  35. &readhash("${swroot}/filtering/settings", %filtersettings);
  36.  
  37. if ($filtersettings{'DGAV_ADVANCED'} eq "on") {
  38. # redir to adv settings page
  39. }
  40.  
  41.  
  42. &openpage('Filtering', 1, '', 'filtering');
  43. &alertbox($errormessage);
  44. print "<form action=dgav.cgi method=post>\n";
  45.  
  46.  
  47. &openbox('Dansguardian Configuration');
  48.  
  49. print <<END
  50. <P>
  51. <TABLE WIDTH='80%' ALIGN='CENTER'>
  52. <TD>Selected Filtering Profile</TD>
  53. <TD>
  54. <SELECT NAME='TYPE'>
  55. ;
  56. foreach my $option (@default_types) {
  57. my $selected;
  58. if ($filtersettings{'DGAV_SIMPLE_TYPE'} eq $option) {
  59. $selected = "SELECTED";
  60. }
  61. else {
  62. undef $selected;
  63. }
  64. my $translation = "dgav-" . $option;
  65. print "<OPTION VALUE='$option' $selected>$tr{$translation}";
  66. }
  67. print <<END
  68. </SELECT>
  69. </TD>
  70. </table>
  71. <P>
  72. ;
  73.  
  74.  
  75. &closebox();
  76.  
  77. print <<END
  78. <DIV ALIGN='CENTER'>
  79. <TABLE WIDTH='80%'>
  80. <TR>
  81. <td align='CENTER'><input type=submit name="ACTION" value=&#092;"$tr{'save'}\"></TD>
  82. </TR>
  83. </TABLE>
  84. </DIV>
  85. <P>
  86. </form>
  87. ;
  88.  
  89.  
  90. &closepage();
  91. ?>


Jak mozna by bylo dodac kolejna opcje do "my @default_types = ('default', 'child', 'preteen', 'teen', 'adult');"

te opcje pojawjaja sie w drop down menu generowanym przez kod w ponizszej czesci skryptu

Ma ktos jakies idee wiem ze to cgi moze kto s bedzie miec pojecie