public function getPackageFields($vars = null)
 {
     Loader::loadHelpers($this, array("Html"));
     // Set any module fields
     $fields = new ModuleFields();
     $fields->setHtml("\n            <script type=\"text/javascript\">\n                \$(document).ready(function() {\n                    // Re-fetch module options\n                    \$('#type, #manageapps, #firewall').change(function() {\n                        fetchModuleOptions();\n                    });\n                });\n            </script>\n        ");
     // Fetch all packages available for the given server or server group
     $module_row = null;
     if (isset($vars->module_group) && $vars->module_group == "") {
         // Set a module row if one is given
         if (isset($vars->module_row) && $vars->module_row > 0) {
             $module_row = $this->getModuleRow($vars->module_row);
         } else {
             // Set the first module row of any that exist
             $rows = $this->getModuleRows();
             if (isset($rows[0])) {
                 $module_row = $rows[0];
             }
             unset($rows);
         }
     } else {
         // Set the first module row from the list of servers in the selected group
         $rows = $this->getModuleRows($vars->module_group);
         if (isset($rows[0])) {
             $module_row = $rows[0];
         }
         unset($rows);
     }
     $packages = array();
     $acls = array();
     if ($module_row) {
         $packages = $this->getPkgs($module_row);
         $acls = array('' => Language::_("tastycpanel.package.acl_default", true)) + $this->getAcls($module_row);
     }
     $package = $fields->label(Language::_("tastycpanel.package", true), "package_name");
     $package->attach($fields->fieldSelect("meta[package]", $packages, $this->Html->ifSet($vars->meta['package']), array('id' => "package_name")));
     $fields->setField($package);
     if ($module_row && $module_row->meta->username == "root") {
         $select_options = array('standard' => "Standard", 'reseller' => "Reseller");
         $typefield = $fields->label(Language::_("tastycpanel.package.type", true), "type");
         $typefield->attach($fields->fieldSelect("meta[type]", $select_options, $this->Html->ifSet($vars->meta['type']), array('id' => "type")));
         $fields->setField($typefield);
     } else {
         $typefield = $fields->fieldHidden("meta[type]", "standard");
         $fields->setField($typefield);
     }
     if ($vars->meta['type'] === "reseller") {
         $acl = $fields->label(Language::_("tastycpanel.package.acl", true), "acls");
         $acl->attach($fields->fieldSelect("meta[acls]", $acls, $this->Html->ifSet($vars->meta['acls']), array('id' => "acls")));
         $fields->setField($acl);
     }
     $select_options = array('true' => "Enable", 'false' => "Disable");
     $additionaldiskfield = $fields->label(Language::_("tastycpanel.additionaldisk", true), "additionaldisk");
     $additionaldiskfield->attach($fields->tooltip(Language::_("tastycpanel.additionaldisktip", true)));
     $additionaldiskfield->attach($fields->fieldSelect("meta[additionaldisk]", $select_options, $this->Html->ifSet($vars->meta['additionaldisk']), array('id' => "additionaldisk")));
     $fields->setField($additionaldiskfield);
     $additionalbandwidthfield = $fields->label(Language::_("tastycpanel.additionalbandwidth", true), "additionalbandwidth");
     $additionalbandwidthfield->attach($fields->tooltip(Language::_("tastycpanel.additionalbandwidthtip", true)));
     $additionalbandwidthfield->attach($fields->fieldSelect("meta[additionalbandwidth]", $select_options, $this->Html->ifSet($vars->meta['additionalbandwidth']), array('id' => "additionalbandwidth")));
     $fields->setField($additionalbandwidthfield);
     $accountusagefield = $fields->label(Language::_("tastycpanel.accountusage", true), "accountusage");
     $accountusagefield->attach($fields->fieldSelect("meta[accountusage]", $select_options, $this->Html->ifSet($vars->meta['accountusage']), array('id' => "accountusage")));
     $fields->setField($accountusagefield);
     $changepasswordfield = $fields->label(Language::_("tastycpanel.changepassword", true), "changepassword");
     $changepasswordfield->attach($fields->fieldSelect("meta[changepassword]", $select_options, $this->Html->ifSet($vars->meta['changepassword']), array('id' => "changepassword")));
     $fields->setField($changepasswordfield);
     $emailfield = $fields->label(Language::_("tastycpanel.email", true), "email");
     $emailfield->attach($fields->fieldSelect("meta[email]", $select_options, $this->Html->ifSet($vars->meta['email']), array('id' => "email")));
     $fields->setField($emailfield);
     $emailforwardersfield = $fields->label(Language::_("tastycpanel.emailforwarders", true), "emailforwarders");
     $emailforwardersfield->attach($fields->fieldSelect("meta[emailforwarders]", $select_options, $this->Html->ifSet($vars->meta['emailforwarders']), array('id' => "emailforwarders")));
     $fields->setField($emailforwardersfield);
     $ftpaccountsfield = $fields->label(Language::_("tastycpanel.ftpaccounts", true), "ftpaccounts");
     $ftpaccountsfield->attach($fields->fieldSelect("meta[ftpaccounts]", $select_options, $this->Html->ifSet($vars->meta['ftpaccounts']), array('id' => "ftpaccounts")));
     $fields->setField($ftpaccountsfield);
     $subdomainsfield = $fields->label(Language::_("tastycpanel.subdomains", true), "subdomains");
     $subdomainsfield->attach($fields->fieldSelect("meta[subdomains]", $select_options, $this->Html->ifSet($vars->meta['subdomains']), array('id' => "subdomains")));
     $fields->setField($subdomainsfield);
     $addondomainsfield = $fields->label(Language::_("tastycpanel.addondomains", true), "addondomains");
     $addondomainsfield->attach($fields->fieldSelect("meta[addondomains]", $select_options, $this->Html->ifSet($vars->meta['addondomains']), array('id' => "addondomains")));
     $fields->setField($addondomainsfield);
     $parkeddomainsfield = $fields->label(Language::_("tastycpanel.parkeddomains", true), "parkeddomains");
     $parkeddomainsfield->attach($fields->fieldSelect("meta[parkeddomains]", $select_options, $this->Html->ifSet($vars->meta['parkeddomains']), array('id' => "parkeddomains")));
     $fields->setField($parkeddomainsfield);
     $databasesfield = $fields->label(Language::_("tastycpanel.databases", true), "databases");
     $databasesfield->attach($fields->fieldSelect("meta[databases]", $select_options, $this->Html->ifSet($vars->meta['databases']), array('id' => "databases")));
     $fields->setField($databasesfield);
     $cronjobsfield = $fields->label(Language::_("tastycpanel.cronjobs", true), "cronjobs");
     $cronjobsfield->attach($fields->fieldSelect("meta[cronjobs]", $select_options, $this->Html->ifSet($vars->meta['cronjobs']), array('id' => "cronjobs")));
     $fields->setField($cronjobsfield);
     $backupsfield = $fields->label(Language::_("tastycpanel.backups", true), "backups");
     $backupsfield->attach($fields->fieldSelect("meta[backups]", $select_options, $this->Html->ifSet($vars->meta['backups']), array('id' => "backups")));
     $fields->setField($backupsfield);
     $ipblockerfield = $fields->label(Language::_("tastycpanel.ipblocker", true), "ipblocker");
     $ipblockerfield->attach($fields->fieldSelect("meta[ipblocker]", $select_options, $this->Html->ifSet($vars->meta['ipblocker']), array('id' => "ipblocker")));
     $fields->setField($ipblockerfield);
     $firewall = $fields->label(Language::_("tastycpanel.firewall_admin", true), "firewall");
     $firewall->attach($fields->fieldSelect("meta[firewall]", $select_options, $this->Html->ifSet($vars->meta['firewall']), array('id' => "firewall")));
     $fields->setField($firewall);
     if ($vars->meta['firewall'] === "true") {
         $firewall_options = array('show' => "Show & Allow Client To Enter The IP Address To Unblock it From CSF", 'hide' => "Use the Client's IP Address");
         $firewall_ad = $fields->label(Language::_("tastycpanel.firewall_ip", true), "firewall_ip");
         $firewall_ad->attach($fields->fieldSelect("meta[firewall_ip]", $firewall_options, $this->Html->ifSet($vars->meta['firewall_ip']), array('id' => "firewall_ip")));
         $fields->setField($firewall_ad);
     }
     $manage_select = array('false' => "Disable", 'softaculous' => "Softaculous", 'installatron' => "Installatron");
     $manageapps = $fields->label(Language::_("tastycpanel.manageapps", true), "manageapps");
     $manageapps->attach($fields->fieldSelect("meta[manageapps]", $manage_select, $this->Html->ifSet($vars->meta['manageapps']), array('id' => "manageapps")));
     $fields->setField($manageapps);
     if ($vars->meta['type'] === "reseller") {
         $whmfield = $fields->label(Language::_("tastycpanel.whm_login", true), "whm_login");
         $whmfield->attach($fields->fieldSelect("meta[whm_login]", $select_options, $this->Html->ifSet($vars->meta['whm_login']), array('id' => "whm_login")));
         $fields->setField($whmfield);
     }
     $cpanelfield = $fields->label(Language::_("tastycpanel.cpanel_login", true), "cpanel_login");
     $cpanelfield->attach($fields->fieldSelect("meta[cpanel_login]", $select_options, $this->Html->ifSet($vars->meta['cpanel_login']), array('id' => "cpanel_login")));
     $fields->setField($cpanelfield);
     $webmailfield = $fields->label(Language::_("tastycpanel.webmail_login", true), "webmail_login");
     $webmailfield->attach($fields->fieldSelect("meta[webmail_login]", $select_options, $this->Html->ifSet($vars->meta['webmail_login']), array('id' => "webmail_login")));
     $fields->setField($webmailfield);
     $phpmyadminfield = $fields->label(Language::_("tastycpanel.phpmyadmin_login", true), "phpmyadmin_login");
     $phpmyadminfield->attach($fields->fieldSelect("meta[phpmyadmin_login]", $select_options, $this->Html->ifSet($vars->meta['phpmyadmin_login']), array('id' => "phpmyadmin_login")));
     $fields->setField($phpmyadminfield);
     $filemanager_login = $fields->label(Language::_("tastycpanel.filemanager_login", true), "filemanager_login");
     $filemanager_login->attach($fields->fieldSelect("meta[filemanager_login]", $select_options, $this->Html->ifSet($vars->meta['filemanager_login']), array('id' => "filemanager_login")));
     $fields->setField($filemanager_login);
     return $fields;
 }
예제 #2
0
 /**
  * Returns all fields to display to an admin attempting to edit a service with the module
  *
  * /DONE/
  */
 public function getAdminEditFields($package, $vars = null)
 {
     Loader::loadHelpers($this, array("Html", "Form"));
     // Fetch the module row available for this package
     $module_row = $this->getModuleRowByServer(isset($package->module_row) ? $package->module_row : 0, isset($package->module_group) ? $package->module_group : "");
     $fields = new ModuleFields();
     // Create hostname label
     // $hostname = $fields->label(Language::_("Proxmoxv2.service_field.Proxmoxv2_hostname", true), "hostname");
     // $hostname->attach($fields->fieldText("hostname", $this->Html->ifSet($vars->options['hostname']) , array('id'=>"hostname", 'placeholder'=>"server.yourdomain.com" )));
     // $fields->setField($hostname);
     // Create vmid label
     $vmid = $fields->label(Language::_("Proxmoxv2.service_field.Proxmoxv2_vmid", true) . Language::_("Proxmoxv2.!tooltip.vmid", true), "vmid");
     $vmid->attach($fields->fieldText("vmid", $this->Html->ifSet($vars->vmid), array('id' => "vmid")));
     $fields->setField($vmid);
     // Edit vmid in local mode, and set javascript field toggles
     $this->Form->setOutput(true);
     $fields->setHtml("\n\t\t\t<script type=\"text/javascript\">\n\t\t\t\t\$(document).ready(function() {\n\t\t\t\t/*\n\t\t\t\t\t\$('input[name=\"vmid\"]').prop('disabled', true);\n\n\t\t\t\t\t//show it when the checkbox is clicked\n\t\t\t\t\t\$('input[id=\"use_module_module\"]').on('click', function () {\n\t\t\t\t\t\tif (\$(this).prop('checked')) {\n\t\t\t\t\t\t\t\$('input[name=\"vmid\"]').prop('disabled', true);\t\t\t\t\t\t\t\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\$('input[name=\"vmid\"]').prop('disabled', false);\n\t\t\t\t\t\t}\n\t\t\t\t\t});\t\n\t\t\t\t*/\n\t\t\t\t});\t\t\t\t\n\t\t\t</script>\n\t\t");
     return $fields;
 }
예제 #3
0
 /**
  * Returns all fields to display to a client attempting to add a service with the module
  *
  * @param stdClass $package A stdClass object representing the selected package
  * @param $vars stdClass A stdClass object representing a set of post fields
  * @return ModuleFields A ModuleFields object, containg the fields to render as well as any additional HTML markup to include
  */
 public function getClientAddFields($package, $vars = null)
 {
     //return $this->makeAddFields($package, $vars);
     Loader::loadHelpers($this, array("Form", "Html"));
     //We are just going to get domain name we want SSL for
     $fields = new ModuleFields();
     $fields->setHtml("\n\t\t\t<script type=\"text/javascript\">\n                \$(document).ready(function() {\n                    \$('#gogetssl_fqdn').change(function() {\n\t\t\t\t\t\tvar form = \$(this).closest('form');\n\t\t\t\t\t\t\$(form).append('<input type=\"hidden\" name=\"refresh_fields\" value=\"true\">');\n\t\t\t\t\t\t\$(form).submit();\n\t\t\t\t\t});\n                });\n\t\t\t</script>\n\t\t");
     $gogetssl_fqdn = $fields->label(Language::_("GoGetSSLv2.service_field.gogetssl_fqdn", true), "gogetssl_fqdn");
     $gogetssl_fqdn->attach($fields->fieldText("gogetssl_fqdn", $this->Html->ifSet($vars->gogetssl_fqdn), array('id' => "gogetssl_fqdn")));
     $fields->setField($gogetssl_fqdn);
     unset($gogetssl_fqdn);
     return $fields;
 }
 public function getAdminAddFields($package, $vars = null)
 {
     Loader::loadHelpers($this, array("Html"));
     $fields = new ModuleFields();
     $fields->setHtml("\n       \t\t\t<script type=\"text/javascript\" =>\n    \$(function() {\n       \$(\"#use_module_module\").removeAttr(\"disabled\");\n      \t\t\t\t});\n\t\t\t</script>\n    ");
     if ($package->meta->type != "reseller") {
         // Create domain label
         $domain = $fields->label(Language::_("tastyinterworx.service_field.domain", true), "domain");
         // Create domain field and attach to domain label
         $domain->attach($fields->fieldText("domain", $this->Html->ifSet($vars->domain), array('id' => "domain")));
         // Set the label as a field
         $fields->setField($domain);
     } else {
         // Set a field for reseller ID
         $reseller_id = $fields->label(Language::_("tastyinterworx.service_field.reseller_id", true), "reseller_id");
         // Create domain field and attach to domain label
         $reseller_id->attach($fields->fieldText("reseller_id", $this->Html->ifSet($vars->reseller_id), array('id' => "reseller_id")));
         $tooltip = $fields->tooltip(Language::_("tastyinterworx.service_field.tooltip.reseller_id", true));
         $reseller_id->attach($tooltip);
         // Set the label as a field
         $fields->setField($reseller_id);
     }
     // Create email label
     $email = $fields->label(Language::_("tastyinterworx.service_field.email", true), "email");
     // Create email field and attach to email label
     $email->attach($fields->fieldText("email", $this->Html->ifSet($vars->email), array('id' => "email")));
     // Add tooltip
     $tooltip = $fields->tooltip(Language::_("tastyinterworx.service_field.tooltip.email", true));
     $email->attach($tooltip);
     // Set the label as a field
     $fields->setField($email);
     // Create username label
     $username = $fields->label(Language::_("tastyinterworx.service_field.username", true), "username");
     // Create username field and attach to username label
     $username->attach($fields->fieldText("username", $this->Html->ifSet($vars->username), array('id' => "username")));
     // Add tooltip
     $tooltip = $fields->tooltip(Language::_("tastyinterworx.service_field.tooltip.username", true));
     $username->attach($tooltip);
     // Set the label as a field
     $fields->setField($username);
     // Create password label
     $password = $fields->label(Language::_("tastyinterworx.service_field.password", true), "password");
     // Create password field and attach to password label
     $password->attach($fields->fieldPassword("password", array('id' => "password", 'value' => $this->Html->ifSet($vars->password))));
     // Add tooltip
     $tooltip = $fields->tooltip(Language::_("tastyinterworx.service_field.tooltip.password", true));
     $password->attach($tooltip);
     // Set the label as a field
     $fields->setField($password);
     // Create confirm_password label
     $confirm_password = $fields->label(Language::_("tastyinterworx.service_field.confirm_password", true), "confirm_password");
     // Create password field and attach to password label
     $confirm_password->attach($fields->fieldPassword("confirm_password", array('id' => "confirm_password", 'value' => $this->Html->ifSet($vars->password))));
     // Add tooltip
     $confirm_password->attach($tooltip);
     // Set the label as a field
     $fields->setField($confirm_password);
     return $fields;
 }
예제 #5
0
 /**
  * Returns all fields used when adding/editing a package, including any
  * javascript to execute when the page is rendered with these fields.
  *
  * @param $vars stdClass A stdClass object representing a set of post fields
  * @return ModuleFields A ModuleFields object, containg the fields to render as well as any additional HTML markup to include
  */
 public function getPackageFields($vars = null)
 {
     Loader::loadHelpers($this, array("Html"));
     $fields = new ModuleFields();
     $fields->setHtml("\n\t\t\t<script type=\"text/javascript\">\n\t\t\t\t\$(document).ready(function() {\n\t\t\t\t\t// Set whether to show or hide the ACL option\n\t\t\t\t\t\$('#cpanel_acl').closest('li').hide();\n\t\t\t\t\tif (\$('input[name=\"meta[type]\"]:checked').val() == 'reseller')\n\t\t\t\t\t\t\$('#cpanel_acl').closest('li').show();\n\t\t\t\t\t\$('input[name=\"meta[type]\"]').change(function() {\n\t\t\t\t\t\tif (\$(this).val() == 'reseller')\n\t\t\t\t\t\t\t\$('#cpanel_acl').closest('li').show();\n\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\$('#cpanel_acl').closest('li').hide();\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t</script>\n\t\t");
     $row = $this->getCorrectModuleRow($vars);
     $api = $this->getApiByMeta($row->meta);
     if (!isset($this->ArrayHelper)) {
         $this->ArrayHelper = $this->DataStructure->create("Array");
     }
     $packages = array("" => Language::_('Cpe.label.defaultpackage', true));
     $acls = array("" => Language::_('Cpe.label.default', true));
     if ($row) {
         $pkglist = $api->listpkgs()->getResponse();
         $aclslist = $api->listacls()->getResponse();
         //Generate a list with all ACLS
         $keys = (array) $this->Json->decode($api->listacls())->acls;
         $acls = array("" => Language::_('Cpe.label.default', true));
         foreach ($keys as $key => $value) {
             $acls[$key] = $key;
         }
         //$fields->setHtml($this->debug($acls));
         $packages = array("" => Language::_('Cpe.label.defaultpackage', true)) + $this->ArrayHelper->numericToKey($pkglist->package, "name", "name");
     }
     $fields->setHtml(Language::_('Cpe.misc.packageaddhint', true));
     // Set the cPanel package as a selectable option
     $package = $fields->label(Language::_('Cpe.label.package', true), "cpanel_package");
     $package->attach($fields->fieldSelect("meta[package]", $packages, $this->Html->ifSet($vars->meta['package']), array('id' => "cpanel_package")));
     $fields->setField($package);
     $usernamefield = $fields->label(Language::_('Cpe.label.usernamefield', true), "cpanel_usernamefield");
     $usernamefield->attach($fields->fieldSelect("meta[usernamefield]", array("true" => Language::_('Cpe.label.enable', true), "false" => Language::_('Cpe.label.disable', true)), $this->Html->ifSet($vars->meta['usernamefield'])));
     $fields->setField($usernamefield);
     $passwordfield = $fields->label(Language::_('Cpe.label.passwordfield', true), "cpanel_passwordfield");
     $passwordfield->attach($fields->fieldSelect("meta[passwordfield]", array("true" => Language::_('Cpe.label.enable', true), "false" => Language::_('Cpe.label.disable', true)), $this->Html->ifSet($vars->meta['passwordfield'])));
     $fields->setField($passwordfield);
     $quota = $fields->label(Language::_('Cpe.label.webquota', true), "cpanel_quota");
     $quota->attach($fields->fieldText("meta[webquota]", $this->Html->ifSet($vars->meta['webquota']), array("style" => "width: 75px;")));
     $quota->attach($fields->tooltip(Language::_('Cpe.tooltip.quota', true)));
     $fields->setField($quota);
     $bw = $fields->label(Language::_('Cpe.label.bandwidth', true), "cpanel_bw");
     $bw->attach($fields->fieldText("meta[bandwidth]", $this->Html->ifSet($vars->meta['bandwidth']), array("style" => "width: 75px;")));
     $bw->attach($fields->tooltip(Language::_('Cpe.bandwidth.tooltip')));
     $fields->setField($bw);
     $shell = $fields->label(Language::_('Cpe.label.shellacc', true), "cpanel_shell");
     $shell->attach($fields->fieldCheckbox("meta[shellaccess]", 1, $this->Html->ifSet($vars->meta['shellaccess'], false)));
     $fields->setField($shell);
     $cgi = $fields->label(Language::_('Cpe.label.cgiacc', true), "cpanel_cgi");
     $cgi->attach($fields->fieldCheckbox("meta[cgi]", 1, $this->Html->ifSet($vars->meta['cgi'], false)));
     $fields->setField($cgi);
     $frontpageext = $fields->label(Language::_('Cpe.label.frontpageext', true), "cpanel_fpe");
     $frontpageext->attach($fields->fieldCheckbox("meta[frontpageext]", 1, $this->Html->ifSet($vars->meta['frontpageext'], false)));
     $fields->setField($frontpageext);
     $cptheme = $fields->label(Language::_('Cpe.label.cptheme', true), "cpanel_theme");
     $cptheme->attach($fields->fieldText("meta[cptheme]", $this->Html->ifSet($vars->meta['cptheme']), array("style" => "width: 75px;")));
     $fields->setField($cptheme);
     $maxftp = $fields->label(Language::_('Cpe.label.maxftp', true), "cpanel_maxftp");
     $maxftp->attach($fields->fieldText("meta[maxftp]", $this->Html->ifSet($vars->meta['maxftp']), array("style" => "width: 75px;")));
     $fields->setField($maxftp);
     $maxsql = $fields->label(Language::_('Cpe.label.maxsql', true), "cpanel_maxsql");
     $maxsql->attach($fields->fieldText("meta[maxsql]", $this->Html->ifSet($vars->meta['maxsql']), array("style" => "width: 75px;")));
     $fields->setField($maxsql);
     $maxpop = $fields->label(Language::_('Cpe.label.maxpop', true), "cpanel_maxpop");
     $maxpop->attach($fields->fieldText("meta[maxpop]", $this->Html->ifSet($vars->meta['maxpop']), array("style" => "width: 75px;")));
     $fields->setField($maxpop);
     $dedicatedip = $fields->label(Language::_('Cpe.label.dedip', true), "cpanel_dedicatedip");
     $dedicatedip->attach($fields->fieldCheckbox("meta[dedicatedip]", 1, $this->Html->ifSet($vars->meta['dedicatedip'], false)));
     $fields->setField($dedicatedip);
     $maxdb = $fields->label(Language::_('Cpe.label.maxsql', true), "cpanel_maxdatabases");
     $maxdb->attach($fields->fieldText("meta[maxdatabases]", $this->Html->ifSet($vars->meta['maxdatabases']), array("style" => "width: 75px;")));
     $fields->setField($maxdb);
     $maxsubdomains = $fields->label(Language::_('Cpe.label.maxsub', true), "cpanel_maxsubdomains");
     $maxsubdomains->attach($fields->fieldText("meta[maxsubdomains]", $this->Html->ifSet($vars->meta['maxsubdomains']), array("style" => "width: 75px;")));
     $fields->setField($maxsubdomains);
     $maxparkeddomains = $fields->label(Language::_('Cpe.label.maxpark', true), "cpanel_maxparkeddomains");
     $maxparkeddomains->attach($fields->fieldText("meta[maxparkeddomains]", $this->Html->ifSet($vars->meta['maxparkeddomains']), array("style" => "width: 75px;")));
     $fields->setField($maxparkeddomains);
     $maxaddondomains = $fields->label(Language::_('Cpe.label.maxaddon', true), "cpanel_maxaddondomains");
     $maxaddondomains->attach($fields->fieldText("meta[maxaddondomains]", $this->Html->ifSet($vars->meta['maxaddondomains']), array("style" => "width: 75px;")));
     $fields->setField($maxaddondomains);
     $type = $fields->label(Language::_('Cpe.label.type', true), "cpanel_type");
     $type->attach($fields->fieldSelect("meta[type]", array("standard" => "standard", "reseller" => "reseller"), $this->Html->ifSet($vars->meta['type'])));
     $fields->setField($type);
     $diskreseller = $fields->label(Language::_('Cpe.label.diskreseller', true), "cpanel_diskreseller");
     $diskreseller->attach($fields->fieldText("meta[diskreseller]", $this->Html->ifSet($vars->meta['diskreseller']), array("style" => "width: 75px;")));
     $diskreseller->attach($fields->tooltip(Language::_('Cpe.tooltip.quota', true)));
     $fields->setField($diskreseller);
     $bandreseller = $fields->label(Language::_('Cpe.label.bandreseller', true), "cpanel_bandreseller");
     $bandreseller->attach($fields->fieldText("meta[bandreseller]", $this->Html->ifSet($vars->meta['bandreseller']), array("style" => "width: 75px;")));
     $bandreseller->attach($fields->tooltip(Language::_('Cpe.tooltip.quota', true)));
     $fields->setField($bandreseller);
     // Set the cPanel package as a selectable option
     $acl = $fields->label(Language::_('Cpe.label.acl', true), "cpanel_acl");
     $acl->attach($fields->fieldSelect("meta[acl]", $acls, $this->Html->ifSet($vars->meta['acl']), array('id' => "cpanel_acl")));
     $fields->setField($acl);
     // Enable/Disable Sections
     $dashboard = $fields->label(Language::_('Cpe.dashboard', true), "cpanel_dashboard");
     $dashboard->attach($fields->fieldSelect("meta[dashboard]", array("true" => Language::_('Cpe.label.enable', true), "false" => Language::_('Cpe.label.disable', true)), $this->Html->ifSet($vars->meta['dashboard'])));
     $fields->setField($dashboard);
     $details = $fields->label(Language::_('Cpe.details', true), "cpanel_details");
     $details->attach($fields->fieldSelect("meta[details]", array("true" => Language::_('Cpe.label.enable', true), "false" => Language::_('Cpe.label.disable', true)), $this->Html->ifSet($vars->meta['details'])));
     $fields->setField($details);
     $statistics = $fields->label(Language::_('Cpe.stats', true), "cpanel_statistics");
     $statistics->attach($fields->fieldSelect("meta[statistics]", array("true" => Language::_('Cpe.label.enable', true), "false" => Language::_('Cpe.label.disable', true)), $this->Html->ifSet($vars->meta['statistics'])));
     $fields->setField($statistics);
     $changepass = $fields->label(Language::_('Cpe.changepass', true), "cpanel_changepass");
     $changepass->attach($fields->fieldSelect("meta[changepass]", array("true" => Language::_('Cpe.label.enable', true), "false" => Language::_('Cpe.label.disable', true)), $this->Html->ifSet($vars->meta['changepass'])));
     $fields->setField($changepass);
     $ftpaccounts = $fields->label(Language::_('Cpe.ftp', true), "cpanel_ftpaccounts");
     $ftpaccounts->attach($fields->fieldSelect("meta[ftpaccounts]", array("true" => Language::_('Cpe.label.enable', true), "false" => Language::_('Cpe.label.disable', true)), $this->Html->ifSet($vars->meta['ftpaccounts'])));
     $fields->setField($ftpaccounts);
     $webdisk = $fields->label(Language::_('Cpe.webdisk', true), "cpanel_webdisk");
     $webdisk->attach($fields->fieldSelect("meta[webdisk]", array("true" => Language::_('Cpe.label.enable', true), "false" => Language::_('Cpe.label.disable', true)), $this->Html->ifSet($vars->meta['webdisk'])));
     $fields->setField($webdisk);
     $backups = $fields->label(Language::_('Cpe.backups', true), "cpanel_backups");
     $backups->attach($fields->fieldSelect("meta[backups]", array("true" => Language::_('Cpe.label.enable', true), "false" => Language::_('Cpe.label.disable', true)), $this->Html->ifSet($vars->meta['backups'])));
     $fields->setField($backups);
     $databases = $fields->label(Language::_('Cpe.databases', true), "cpanel_databases");
     $databases->attach($fields->fieldSelect("meta[databases]", array("true" => Language::_('Cpe.label.enable', true), "false" => Language::_('Cpe.label.disable', true)), $this->Html->ifSet($vars->meta['databases'])));
     $fields->setField($databases);
     $remotedatabase = $fields->label(Language::_('Cpe.remotedatabase', true), "cpanel_remotedatabase");
     $remotedatabase->attach($fields->fieldSelect("meta[remotedatabase]", array("true" => Language::_('Cpe.label.enable', true), "false" => Language::_('Cpe.label.disable', true)), $this->Html->ifSet($vars->meta['remotedatabase'])));
     $fields->setField($remotedatabase);
     $emails = $fields->label(Language::_('Cpe.emails', true), "cpanel_emails");
     $emails->attach($fields->fieldSelect("meta[emails]", array("true" => Language::_('Cpe.label.enable', true), "false" => Language::_('Cpe.label.disable', true)), $this->Html->ifSet($vars->meta['emails'])));
     $fields->setField($emails);
     $emailforwarder = $fields->label(Language::_('Cpe.emailforwarder', true), "cpanel_emailforwarder");
     $emailforwarder->attach($fields->fieldSelect("meta[emailforwarder]", array("true" => Language::_('Cpe.label.enable', true), "false" => Language::_('Cpe.label.disable', true)), $this->Html->ifSet($vars->meta['emailforwarder'])));
     $fields->setField($emailforwarder);
     $subdomains = $fields->label(Language::_('Cpe.subdomains', true), "cpanel_subdomains");
     $subdomains->attach($fields->fieldSelect("meta[subdomains]", array("true" => Language::_('Cpe.label.enable', true), "false" => Language::_('Cpe.label.disable', true)), $this->Html->ifSet($vars->meta['subdomains'])));
     $fields->setField($subdomains);
     $parkeddomains = $fields->label(Language::_('Cpe.parkeddomains', true), "cpanel_parkeddomains");
     $parkeddomains->attach($fields->fieldSelect("meta[parkeddomains]", array("true" => Language::_('Cpe.label.enable', true), "false" => Language::_('Cpe.label.disable', true)), $this->Html->ifSet($vars->meta['subdomains'])));
     $fields->setField($parkeddomains);
     $addondomains = $fields->label(Language::_('Cpe.addondomains', true), "cpanel_addondomains");
     $addondomains->attach($fields->fieldSelect("meta[addondomains]", array("true" => Language::_('Cpe.label.enable', true), "false" => Language::_('Cpe.label.disable', true)), $this->Html->ifSet($vars->meta['addondomains'])));
     $fields->setField($addondomains);
     $dnszone = $fields->label(Language::_('Cpe.dns_zone', true), "cpanel_dnszone");
     $dnszone->attach($fields->fieldSelect("meta[dnszone]", array("true" => Language::_('Cpe.label.enable', true), "false" => Language::_('Cpe.label.disable', true)), $this->Html->ifSet($vars->meta['dnszone'])));
     $fields->setField($dnszone);
     $cron = $fields->label(Language::_('Cpe.cron', true), "cpanel_cron");
     $cron->attach($fields->fieldSelect("meta[cron]", array("true" => Language::_('Cpe.label.enable', true), "false" => Language::_('Cpe.label.disable', true)), $this->Html->ifSet($vars->meta['cron'])));
     $fields->setField($cron);
     $blockip = $fields->label(Language::_('Cpe.blockip', true), "cpanel_blockip");
     $blockip->attach($fields->fieldSelect("meta[blockip]", array("true" => Language::_('Cpe.label.enable', true), "false" => Language::_('Cpe.label.disable', true)), $this->Html->ifSet($vars->meta['blockip'])));
     $fields->setField($blockip);
     $ssh = $fields->label(Language::_('Cpe.ssh', true), "cpanel_ssh");
     $ssh->attach($fields->fieldSelect("meta[ssh]", array("true" => Language::_('Cpe.label.enable', true), "false" => Language::_('Cpe.label.disable', true)), $this->Html->ifSet($vars->meta['ssh'])));
     $fields->setField($ssh);
     $ssl = $fields->label(Language::_('Cpe.ssl', true), "cpanel_ssl");
     $ssl->attach($fields->fieldSelect("meta[ssl]", array("true" => Language::_('Cpe.label.enable', true), "false" => Language::_('Cpe.label.disable', true)), $this->Html->ifSet($vars->meta['ssl'])));
     $fields->setField($ssl);
     $softaculous = $fields->label(Language::_('Cpe.softaculous', true), "cpanel_softaculous");
     $softaculous->attach($fields->fieldSelect("meta[softaculous]", array("true" => Language::_('Cpe.label.enable', true), "false" => Language::_('Cpe.label.disable', true)), $this->Html->ifSet($vars->meta['softaculous'])));
     $fields->setField($softaculous);
     $loginto = $fields->label(Language::_('Cpe.loginto', true), "cpanel_loginto");
     $loginto->attach($fields->fieldSelect("meta[loginto]", array("true" => Language::_('Cpe.label.enable', true), "false" => Language::_('Cpe.label.disable', true)), $this->Html->ifSet($vars->meta['loginto'])));
     $fields->setField($loginto);
     return $fields;
 }
예제 #6
0
 /**
  * Returns all fields used when adding/editing a package, including any
  * javascript to execute when the page is rendered with these fields.
  *
  * @param $vars stdClass A stdClass object representing a set of post fields
  * @return ModuleFields A ModuleFields object, containg the fields to render as well as any additional HTML markup to include
  */
 public function getPackageFields($vars = null)
 {
     Loader::loadHelpers($this, array("Html"));
     $fields = new ModuleFields();
     $fields->setHtml("\n\t\t\t<script type=\"text/javascript\">\n\t\t\t\t\$(document).ready(function() {\n\t\t\t\t\t// Set whether to show or hide the ACL option\n\t\t\t\t\t\$('#cpanel_acl').closest('li').hide();\n\t\t\t\t\tif (\$('input[name=\"meta[type]\"]:checked').val() == 'reseller')\n\t\t\t\t\t\t\$('#cpanel_acl').closest('li').show();\n\t\t\t\t\t\$('input[name=\"meta[type]\"]').change(function() {\n\t\t\t\t\t\tif (\$(this).val() == 'reseller')\n\t\t\t\t\t\t\t\$('#cpanel_acl').closest('li').show();\n\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\$('#cpanel_acl').closest('li').hide();\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t</script>\n\t\t");
     $row = $this->getCorrectModuleRow($vars);
     $api = $this->getApiByMeta($row->meta);
     if (!isset($this->ArrayHelper)) {
         $this->ArrayHelper = $this->DataStructure->create("Array");
     }
     $packages = array("" => Language::_('Cpe.label.defaultpackage', true));
     $acls = array("" => Language::_('Cpe.label.default', true));
     if ($row) {
         $pkglist = $api->listpkgs()->getResponse();
         $aclslist = $api->listacls()->getResponse();
         //Generate a list with all ACLS
         $keys = (array) $this->Json->decode($api->listacls())->acls;
         $acls = array("" => Language::_('Cpe.label.default', true));
         foreach ($keys as $key => $value) {
             $acls[$key] = $key;
         }
         //$fields->setHtml($this->debug($acls));
         $packages = array("" => Language::_('Cpe.label.defaultpackage', true)) + $this->ArrayHelper->numericToKey($pkglist->package, "name", "name");
     }
     $fields->setHtml(Language::_('Cpe.misc.packageaddhint', true));
     // Set the cPanel package as a selectable option
     $package = $fields->label(Language::_('Cpe.label.package', true), "cpanel_package");
     $package->attach($fields->fieldSelect("meta[package]", $packages, $this->Html->ifSet($vars->meta['package']), array('id' => "cpanel_package")));
     $fields->setField($package);
     $quota = $fields->label(Language::_('Cpe.label.webquota', true), "cpanel_quota");
     $quota->attach($fields->fieldText("meta[webquota]", $this->Html->ifSet($vars->meta['webquota']), array("style" => "width: 75px;")));
     $quota->attach($fields->tooltip(Language::_('Cpe.tooltip.quota', true)));
     $fields->setField($quota);
     $bw = $fields->label(Language::_('Cpe.label.bandwidth', true), "cpanel_bw");
     $bw->attach($fields->fieldText("meta[bandwidth]", $this->Html->ifSet($vars->meta['bandwidth']), array("style" => "width: 75px;")));
     $bw->attach($fields->tooltip(Language::_('Cpe.bandwidth.tooltip')));
     $fields->setField($bw);
     $shell = $fields->label(Language::_('Cpe.label.shellacc', true), "cpanel_shell");
     $shell->attach($fields->fieldCheckbox("meta[shellaccess]", 1, $this->Html->ifSet($vars->meta['shellaccess'], false)));
     $fields->setField($shell);
     $cgi = $fields->label(Language::_('Cpe.label.cgiacc', true), "cpanel_cgi");
     $cgi->attach($fields->fieldCheckbox("meta[cgi]", 1, $this->Html->ifSet($vars->meta['cgi'], false)));
     $fields->setField($cgi);
     $frontpageext = $fields->label(Language::_('Cpe.label.frontpageext', true), "cpanel_fpe");
     $frontpageext->attach($fields->fieldCheckbox("meta[frontpageext]", 1, $this->Html->ifSet($vars->meta['frontpageext'], false)));
     $fields->setField($frontpageext);
     $cptheme = $fields->label(Language::_('Cpe.label.cptheme', true), "cpanel_theme");
     $cptheme->attach($fields->fieldText("meta[cptheme]", $this->Html->ifSet($vars->meta['cptheme']), array("style" => "width: 75px;")));
     $fields->setField($cptheme);
     $maxftp = $fields->label(Language::_('Cpe.label.maxftp', true), "cpanel_maxftp");
     $maxftp->attach($fields->fieldText("meta[maxftp]", $this->Html->ifSet($vars->meta['maxftp']), array("style" => "width: 75px;")));
     $fields->setField($maxftp);
     $maxsql = $fields->label(Language::_('Cpe.label.maxsql', true), "cpanel_maxsql");
     $maxsql->attach($fields->fieldText("meta[maxsql]", $this->Html->ifSet($vars->meta['maxsql']), array("style" => "width: 75px;")));
     $fields->setField($maxsql);
     $maxpop = $fields->label(Language::_('Cpe.label.maxpop', true), "cpanel_maxpop");
     $maxpop->attach($fields->fieldText("meta[maxpop]", $this->Html->ifSet($vars->meta['maxpop']), array("style" => "width: 75px;")));
     $fields->setField($maxpop);
     $dedicatedip = $fields->label(Language::_('Cpe.label.dedip', true), "cpanel_dedicatedip");
     $dedicatedip->attach($fields->fieldCheckbox("meta[dedicatedip]", 1, $this->Html->ifSet($vars->meta['dedicatedip'], false)));
     $fields->setField($dedicatedip);
     $maxdb = $fields->label("Max SQL Databases", "cpanel_maxdatabases");
     $maxdb->attach($fields->fieldText("meta[maxdatabases]", $this->Html->ifSet($vars->meta['maxdatabases']), array("style" => "width: 75px;")));
     $fields->setField($maxdb);
     $maxsubdomains = $fields->label(Language::_('Cpe.label.maxsub', true), "cpanel_maxsubdomains");
     $maxsubdomains->attach($fields->fieldText("meta[maxsubdomains]", $this->Html->ifSet($vars->meta['maxsubdomains']), array("style" => "width: 75px;")));
     $fields->setField($maxsubdomains);
     $maxparkeddomains = $fields->label(Language::_('Cpe.label.maxpark', true), "cpanel_maxparkeddomains");
     $maxparkeddomains->attach($fields->fieldText("meta[maxparkeddomains]", $this->Html->ifSet($vars->meta['maxparkeddomains']), array("style" => "width: 75px;")));
     $fields->setField($maxparkeddomains);
     $maxaddondomains = $fields->label(Language::_('Cpe.label.maxaddon', true), "cpanel_maxaddondomains");
     $maxaddondomains->attach($fields->fieldText("meta[maxaddondomains]", $this->Html->ifSet($vars->meta['maxaddondomains']), array("style" => "width: 75px;")));
     $fields->setField($maxaddondomains);
     $type = $fields->label(Language::_('Cpe.label.type', true), "cpanel_type");
     $type->attach($fields->fieldSelect("meta[type]", array("standard" => "standard", "reseller" => "reseller"), $this->Html->ifSet($vars->meta['type'])));
     $fields->setField($type);
     // Set the cPanel package as a selectable option
     $acl = $fields->label(Language::_('Cpe.label.acl', true), "cpanel_acl");
     $acl->attach($fields->fieldSelect("meta[acl]", $acls, $this->Html->ifSet($vars->meta['acl']), array('id' => "cpanel_acl")));
     $fields->setField($acl);
     return $fields;
 }