function createXMLFile($convertedData)
{
    if (file_exists($convertedData['newFileLocation'] . ".xml")) {
        logFileBasic("File Created previously  = " . $convertedData['newFileLocation'], $convertedData['rowNumber']);
    } else {
        if (file_exists($convertedData['newFileLocation'])) {
            $fileName = $convertedData['newFileLocation'] . ".xml";
            $myfile = fopen($fileName, "w") or die("Unable to open file!");
            $dateTime = getDatetimeNow();
            $txt = '
        <?xml version="1.0" encoding="UTF-8"?>
        <!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
        <properties>
          <entry key="type">cm:content</entry>
          <entry key="aspects">mqp:buildingRecord</entry>

          <!-- Common Properties -->

          <!-- Name -->
          <entry key="cm:title">' . $convertedData['finalTitle'] . '</entry>
          <!-- Description -->
          <entry key="cm:description">' . $convertedData['fileNameWithoutType'] . ' - From Alchemy - Migrated 2016</entry>
          <!-- Created -->
          <entry key="created">' . $dateTime . '</entry>

          <!-- Property Properties -->

          <!-- Building -->
          <entry key="mqp:building">' . $convertedData['building'] . '</entry>

          <!-- Discipline -->
          <entry key="mqp:discipline">' . $convertedData['discipline'] . '</entry>

          <!-- Year -->
          <entry key="mqp:docYear">' . $convertedData['year'] . '</entry>

          <!-- Primary Type -->
          <entry key="mqp:docType">' . $convertedData['type1'] . '</entry>

          <!-- Subtype -->
          <entry key="mqp:subType1">' . $convertedData['type2'] . '</entry>

          <!-- Subtype 2 -->
          <entry key="mqp:subType2"></entry>

        </properties>
      ';
            fwrite($myfile, $txt);
            fclose($myfile);
            //pp("File Created and Ready for viewing = ".$fileName);
            logFileBasic("File Created and Ready for viewing = " . $fileName, $convertedData['rowNumber']);
        } else {
            logFileBasic("PDF file does not exist = " . $convertedData['newFileLocation'], $convertedData['rowNumber']);
        }
    }
}
Esempio n. 2
0
<?php 
// STEP 1. Setup private key
// =========================
// Tuleb juurde lisada!!!
$private_key = openssl_pkey_get_private("");
//Getting the right current date format for bank
function getDatetimeNow()
{
    $dt = new DateTime("now", new DateTimeZone('Europe/Helsinki'));
    return $dt->format('Y-m-d\\TH:i:s\\+0200');
}
// STEP 2. Define payment information
// ==================================
// Pangatüübiks on Ipizza Testpank - enda kohalikus sereveris jooksutamiseks muuta väärtused enda
// loodud pangaserveri järgi
$fields = array("VK_SERVICE" => "1011", "VK_VERSION" => "008", "VK_SND_ID" => "uid100023", "VK_STAMP" => "12345", "VK_AMOUNT" => "150", "VK_CURR" => "EUR", "VK_ACC" => "EE871600161234567892", "VK_NAME" => "P2Pkuulutused", "VK_REF" => "1234561", "VK_LANG" => "EST", "VK_MSG" => "Makse reklaami eest", "VK_RETURN" => 'http' . '://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) . '/recieve', "VK_CANCEL" => 'http' . '://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) . '/notrecieved', "VK_DATETIME" => getDatetimeNow(), "VK_ENCODING" => "utf-8");
// STEP 3. Generate data to be signed
// ==================================
// Data to be signed is in the form of XXXYYYYY where XXX is 3 char
// zero padded length of the value and YYY the value itself
// NB! Ipizza Testpank expects symbol count, not byte count with UTF-8,
// so use `mb_strlen` instead of `strlen` to detect the length of a string
// Genereerime tehingu väärtustest signatuuri
$data = str_pad(mb_strlen($fields["VK_SERVICE"], "UTF-8"), 3, "0", STR_PAD_LEFT) . $fields["VK_SERVICE"] . str_pad(mb_strlen($fields["VK_VERSION"], "UTF-8"), 3, "0", STR_PAD_LEFT) . $fields["VK_VERSION"] . str_pad(mb_strlen($fields["VK_SND_ID"], "UTF-8"), 3, "0", STR_PAD_LEFT) . $fields["VK_SND_ID"] . str_pad(mb_strlen($fields["VK_STAMP"], "UTF-8"), 3, "0", STR_PAD_LEFT) . $fields["VK_STAMP"] . str_pad(mb_strlen($fields["VK_AMOUNT"], "UTF-8"), 3, "0", STR_PAD_LEFT) . $fields["VK_AMOUNT"] . str_pad(mb_strlen($fields["VK_CURR"], "UTF-8"), 3, "0", STR_PAD_LEFT) . $fields["VK_CURR"] . str_pad(mb_strlen($fields["VK_ACC"], "UTF-8"), 3, "0", STR_PAD_LEFT) . $fields["VK_ACC"] . str_pad(mb_strlen($fields["VK_NAME"], "UTF-8"), 3, "0", STR_PAD_LEFT) . $fields["VK_NAME"] . str_pad(mb_strlen($fields["VK_REF"], "UTF-8"), 3, "0", STR_PAD_LEFT) . $fields["VK_REF"] . str_pad(mb_strlen($fields["VK_MSG"], "UTF-8"), 3, "0", STR_PAD_LEFT) . $fields["VK_MSG"] . str_pad(mb_strlen($fields["VK_RETURN"], "UTF-8"), 3, "0", STR_PAD_LEFT) . $fields["VK_RETURN"] . str_pad(mb_strlen($fields["VK_CANCEL"], "UTF-8"), 3, "0", STR_PAD_LEFT) . $fields["VK_CANCEL"] . str_pad(mb_strlen($fields["VK_DATETIME"], "UTF-8"), 3, "0", STR_PAD_LEFT) . $fields["VK_DATETIME"];
/* 2016-03-26T19:41:27+0200 */
/* $data = "0041011003008009uid10002300512345003150003EUR020EE871600161234567892013P2Pkuulutused0071234561011Torso Tiger069http://localhost:8080/project/wkQ9zaaYO9ENSyrw?payment_action=success068http://localhost:8080/project/wkQ9zaaYO9ENSyrw?payment_action=cancel0242016-03-26T19:41:27+0200"; */
// STEP 4. Sign the data with RSA-SHA1 to generate MAC code
// ========================================================
openssl_sign($data, $signature, $private_key, OPENSSL_ALGO_SHA1);
/* TncZRh0s9kLC1fq+RyQxt1eXlppSCu9BXP7xYvw5ijHAeswmtjBg0D1P+sGyYBMdKdCRgDK6fbPbX6tk6oQc8ng5j2PUSjznsRZcIZbKIQmXlXXIxyIURdfD5YdbN5ulkV9BsffwFO4fmbTY9NAeT4hSw3YV8qhMxjOzBmlbPgYVLotu9eAnxMzjTQ9k37fqzZsStpdVUCmUoyUjoeGLXOJvSWQ7R9UyoZlP7lXPFsMUPBGbIiLH1TRAUostSmEo9YZwTj/9k0m7+hE+6Qx5mQ5IEnDlpnuD1Hmm6edrYF6cGDVJQzBwKJqbRVNuDZFO9LQrG4JfepgXokLvIv9jpw== */
$fields["VK_MAC"] = base64_encode($signature);