serviceAddon.php 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. <?php
  2. if (!defined("WHMCS")) {
  3. die("This file cannot be accessed directly");
  4. }
  5. function serviceAddon_CreateAccount(array $params) {
  6. $emailTemplates = serviceAddonGetEmailTemplates($params);
  7. if($params['Create_Mail'] > 0) {
  8. $result = localAPI('SendEmail', ['name' => $emailTemplates[$params['Create_Mail']]]);
  9. }
  10. logModuleCall(
  11. 'iServiceAddon',
  12. __FUNCTION__,
  13. $emailTemplates[$params['Create_Mail']],
  14. 'Debug',
  15. $result
  16. );
  17. return 'success';
  18. }
  19. function serviceAddon_SuspendAccount(array $params) {
  20. return 'success';
  21. }
  22. function serviceAddon_UnsuspendAccount(array $params) {
  23. return 'success';
  24. }
  25. function serviceAddon_TerminateAccount(array $params) {
  26. return 'success';
  27. }
  28. function serviceAddon_ChangePackage(array $params) {
  29. return 'success';
  30. }
  31. function serviceAddon_TestConnection(array $params) {
  32. return 'success';
  33. }
  34. function serviceAddon_UsageUpdate(array $params) {
  35. return 'success';
  36. }
  37. function serviceAddon_ConfigOptions(array $params) {
  38. $emailTemplates = serviceAddonGetEmailTemplates($params);
  39. $configOptions = array(
  40. "Create_Mail" => [
  41. "Type" => "dropdown", # Dropdown Choice of Options
  42. "Options" => $emailTemplates,
  43. "Description" => "E-Mail Template auswählen",
  44. "Default" => "option1"
  45. ],
  46. "Suspend_Mail" => [
  47. "Type" => "dropdown", # Dropdown Choice of Options
  48. "Options" => $emailTemplates,
  49. "Description" => "E-Mail Template auswählen",
  50. "Default" => "option1"
  51. ],
  52. "Unsuspend_Mail" => [
  53. "Type" => "dropdown", # Dropdown Choice of Options
  54. "Options" => $emailTemplates,
  55. "Description" => "E-Mail Template auswählen",
  56. "Default" => "option1"
  57. ],
  58. "ChangePackage_Mail" => [
  59. "Type" => "dropdown", # Dropdown Choice of Options
  60. "Options" => $emailTemplates,
  61. "Description" => "E-Mail Template auswählen",
  62. "Default" => "option1"
  63. ],
  64. "Terminate_Mail" => [
  65. "Type" => "dropdown", # Dropdown Choice of Options
  66. "Options" => $emailTemplates,
  67. "Description" => "E-Mail Template auswählen",
  68. "Default" => "option1"
  69. ],
  70. );
  71. return $configOptions;
  72. }
  73. function serviceAddon_MetaData() {
  74. }
  75. function serviceAddon_AdminCustomButtonArray($params) {
  76. }
  77. function serviceAddon_AdminServicesTabFields($params) {
  78. }
  79. function serviceAddon_ClientArea($params) {
  80. return array(
  81. 'tabOverviewReplacementTemplate' => 'templates/clientarea',
  82. 'vars' => array(
  83. 'test1' => 'hello',
  84. 'test2' => 'world',
  85. ),
  86. );
  87. };
  88. function serviceAddonGetEmailTemplates($params) {
  89. $response = localAPI('GetEmailTemplates');
  90. $emailTemplates = array('none');
  91. foreach ($response['emailtemplates']['emailtemplate'] as $emailTemplate) {
  92. if ($emailTemplate['custom'] == 1) {
  93. $emailTemplates[$emailTemplate['id']] = $emailTemplate['name'];
  94. }
  95. }
  96. return $emailTemplates;
  97. }