setup-options.php 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. <?php
  2. /**
  3. * FormIt
  4. *
  5. * Copyright 2019 by Sterc <modx@sterc.nl>
  6. */
  7. $package = 'FormIt';
  8. $settings = [[
  9. 'key' => 'user_name',
  10. 'value' => '',
  11. 'name' => 'Name'
  12. ], [
  13. 'key' => 'user_email',
  14. 'value' => '',
  15. 'name' => 'Email address'
  16. ]];
  17. switch ($options[xPDOTransport::PACKAGE_ACTION]) {
  18. case xPDOTransport::ACTION_INSTALL:
  19. case xPDOTransport::ACTION_UPGRADE:
  20. foreach ($settings as $key => $value) {
  21. $setting = $modx->getObject('modSystemSetting', [
  22. 'key' => strtolower($package) . '.' . $value['key']
  23. ]);
  24. if ($setting) {
  25. $settings[$key]['value'] = $setting->get('value');
  26. }
  27. }
  28. break;
  29. case xPDOTransport::ACTION_UNINSTALL:
  30. break;
  31. }
  32. /* Hide default setuptoptions text */
  33. $output[] = '<style type="text/css">
  34. #modx-setupoptions-panel { display: none; }
  35. </style>
  36. <script>
  37. var setupTitle = "FormIt installation - a MODX Extra by Sterc";
  38. document.getElementsByClassName("x-window-header-text")[0].innerHTML = setupTitle;
  39. </script>
  40. <h2>Get free priority updates</h2>
  41. <p>Enter your name and email address below to receive priority updates about our extras.
  42. Be the first to know about updates and new features.
  43. <i><b>It is NOT required to enter your name and email to use this extra.</b></i></p>';
  44. foreach ($settings as $setting) {
  45. $str = '<label for="'. $setting['key'] .'">'. $setting['name'] .' (optional)</label>';
  46. $str .= '<input type="text" name="'. $setting['key'] .'"';
  47. $str .= ' id="'. $setting['key'] .'" width="300" value="'. $setting['value'] .'" />';
  48. $output[] = $str;
  49. }
  50. return implode('<br /><br />', $output);