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; }
/** * 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; }
/** * 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; }
/** * 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; }
/** * 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; }