dbprefs_cmn.pm 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. #####################################################
  2. # dbprefs_cmn.pm
  3. #
  4. # These routines handle the globalprefs and domains
  5. # tables.
  6. #
  7. # See COPYING for licensing information.
  8. #
  9. #####################################################
  10. # Perl modules
  11. use strict;
  12. #####################################################
  13. # return the list of preference names
  14. #####################################################
  15. sub prefscmnlist {
  16. return (
  17. 'RESTRICTED_USERS', 'ADD_SELF', 'DELETE_SELF',
  18. 'SEND_URL', 'REQUIRE_EMAIL', 'NO_ROBOTS',
  19. 'ALLOW_CHANGE_PASS',
  20. 'ALLOW_CHANGE_HOSTNAME', 'ALLOW_CHANGE_DOMAIN',
  21. 'ALLOW_WILD', 'ALLOW_MX', 'ALLOW_AUTO_URL',
  22. 'SHOW_DOMAINLIST', 'PAGE_TIMEOUT', 'SERVER_KEY'
  23. );
  24. }
  25. #############################################################
  26. # set uninitialised fields to default value
  27. #############################################################
  28. sub prefscmndflt {
  29. my $pref = shift;
  30. prefscmndfltset($pref, 'RESTRICTED_USERS', 'www,ftp,mail,ns?,dyn');
  31. prefscmndfltset($pref, 'ADD_SELF', 'NO');
  32. prefscmndfltset($pref, 'SEND_URL', 'NO');
  33. prefscmndfltset($pref, 'DELETE_SELF', 'YES');
  34. prefscmndfltset($pref, 'REQUIRE_EMAIL', 'YES');
  35. prefscmndfltset($pref, 'NO_ROBOTS', 'NO');
  36. prefscmndfltset($pref, 'ALLOW_CHANGE_PASS', 'YES');
  37. prefscmndfltset($pref, 'ALLOW_CHANGE_HOSTNAME', 'NO');
  38. prefscmndfltset($pref, 'ALLOW_CHANGE_DOMAIN', 'NO');
  39. prefscmndfltset($pref, 'ALLOW_WILD', 'NO');
  40. prefscmndfltset($pref, 'ALLOW_MX', 'NO');
  41. prefscmndfltset($pref, 'ALLOW_AUTO_URL', 'NO');
  42. prefscmndfltset($pref, 'SHOW_DOMAINLIST', 'YES');
  43. prefscmndfltset($pref, 'PAGE_TIMEOUT', '');
  44. prefscmndfltset($pref, 'SERVER_KEY', '');
  45. # generate and save server key if needed
  46. if (!$$pref{'SERVER_KEY'}) {
  47. $$pref{'SERVER_KEY'} = randomsalt();
  48. updateprefs($pref);
  49. writelog("Generated server key");
  50. }
  51. }
  52. sub prefscmndfltset {
  53. my $pref = shift;
  54. my $param = shift;
  55. my $value = shift;
  56. $$pref{$param} = $value if ! defined $$pref{$param};
  57. }
  58. #####################################################
  59. # must return 1
  60. #####################################################
  61. 1;