validate()) { basket::extractForm($form); message::success(t("Basket Module Configured!")); } } else { basket::populateForm($form); } $view = new Admin_View("admin.html"); $view->content = new View("admin_configure.html"); $view->content->form = $form; print $view; } /** * the index page of the user homes admin */ public function templates() { $form = basket::get_template_form(); if (request::method() == "post") { access::verify_csrf(); if ($form->validate()) { basket::extractTemplateForm($form); message::success(t("Basket Module Configured!")); } } else { basket::populateTemplateForm($form); } $view = new Admin_View("admin.html"); $view->content = new View("admin_templates.html"); $view->content->form = $form; print $view; } public function paypal_encrypt_wizard_step1() { $view = new Admin_View("admin.html"); $view->content = new View("pew1.html"); $view->content->form = self::keyGenerationForm(); print $view; } public function paypal_encrypt_wizard_step2() { access::verify_csrf(); $form = self::keyGenerationForm(); if (!$form->validate()) { self::paypal_encrypt_wizard_step1(); return; } $ssldir = str_replace('\\','/',VARPATH.'certificate'); $ssldir= rtrim($ssldir, '/').'/'; if ( ! is_dir($ssldir)) { // Create the upload directory mkdir($ssldir, 0777, TRUE); } $prkeyfile = $ssldir . "myprvkey.pem"; $pubcertfile = $ssldir . "mypubcert.pem"; $certreqfile = $ssldir . "mycertreq.pem"; $dn = array("countryName" => $form->encrypt->countryName->value, "stateOrProvinceName" => $form->encrypt->stateOrProvinceName->value, "localityName" => $form->encrypt->localityName->value, "organizationName" => $form->encrypt->organizationName->value, "organizationalUnitName" => $form->encrypt->organizationalUnitName->value, "commonName" => $form->encrypt->commonName->value, "emailAddress" => $form->encrypt->emailAddress->value); $privkeypass = $form->encrypt->privKeyPass->value; $numberofdays = 365; $config = array( "private_key_bits" => 1024 ); $privkey = openssl_pkey_new($config); $csr = openssl_csr_new($dn, $privkey); $sscert = openssl_csr_sign($csr, null, $privkey, $numberofdays); openssl_x509_export($sscert, $publickey); openssl_pkey_export($privkey, $privatekey, $privkeypass); openssl_csr_export($csr, $csrStr); openssl_x509_export_to_file($sscert, $pubcertfile); openssl_pkey_export_to_file ($privkey, $prkeyfile, $privkeypass); openssl_csr_export_to_file($csr, $certreqfile); //echo "Your Public Certificate has been saved to " . $pubcertfile . "

"; //echo "Your Private Key has been saved to " . $prkeyfile . "

"; //echo "Your Certificate Request has been saved to " . $certreqfile . "

"; //echo $privatekey; // Will hold the exported PriKey //echo $publickey; // Will hold the exported PubKey //echo $csrStr; // Will hold the exported Certificate } private function keyGenerationForm() { $form = new Forge("admin/configure/paypal_encrypt_wizard_step2", "", "post", array("id" => "generateKeys", "name" =>"generateKeys")); $group = $form->group("encrypt")->label(t("Key Generation Details")); $group->input("countryName")->label(t("Country Name"))->id("countryName"); $group->input("stateOrProvinceName")->label(t("State or Province Name"))->id("stateOrProvinceName"); $group->input("localityName")->label(t("Locality Name"))->id("localityName"); $group->input("organizationName")->label(t("Organization Name"))->id("organizationName"); $group->input("organizationalUnitName")->label(t("Organizational Unit Name"))->id("organizationalUnitName"); $group->input("commonName")->label(t("Common Name"))->id("commonName"); $group->input("emailAddress")->label(t("E-Mail Address"))->id("emailAddress"); $group->input("privKeyPass")->label(t("Private Key Pass"))->id("privkeypass"); return $form; } }