HEX
Server: Apache/2.2.15 (CentOS)
System: Linux ip-10-0-2-146.eu-west-1.compute.internal 2.6.32-754.35.1.el6.centos.plus.x86_64 #1 SMP Sat Nov 7 11:33:42 UTC 2020 x86_64
User: root (0)
PHP: 5.6.40
Disabled: NONE
Upload Files
File: /www/exchange0old/exchange/admin/cron/upload_files_coleman_fix.php
<?php

$folders = explode(DIRECTORY_SEPARATOR, pathinfo(__FILE__, PATHINFO_DIRNAME));
array_pop($folders);
array_pop($folders);

include(implode(DIRECTORY_SEPARATOR, $folders) . '/Bin/init.php');
require_once(ROOT_FOLDER . 'Bin/Security.php');
include(ROOT_FOLDER . '/Bin/constants.php');
include_once(ROOT_FOLDER . 'Bin/Smarty.php');
include_once(ROOT_FOLDER . 'Bin/Template.php');
chdir(ROOT_FOLDER);

require_once(ROOT_FOLDER . "classes/Storage.php");
require_once(ROOT_FOLDER . "admin/classes/Model/trade_actions.php");

$db = Bin_Db::connect();
$selectInvoices = "SELECT * FROM invoice_master WHERE invoice_id >= 95683 AND invoice_id <= 95730";
$invoices = $db->query($selectInvoices)->getResultArray();
$selectOrganisation = "SELECT * FROM organisation_details WHERE organisation_id=1205";
$organisation = $db->query($selectOrganisation)->getFirstRow();
$trade = new Trade_actions();
foreach ($invoices as $invoice) {
    $matches = array();
    preg_match('/^CS*-0+(\d+)$/', trim($invoice['invoice_no']), $matches);
    $invoiceNumber = $matches[1];
    $pdfFiles = glob(ROOT_FOLDER . 'admin/cron/import' . DIRECTORY_SEPARATOR . '*00' . $invoiceNumber . '.pdf');
    if ($invoiceNumber and $pdfFiles) {
        $handle = fopen('php://memory', 'w');
        $source = fopen($pdfFiles[0], 'r');
        stream_copy_to_stream($source, $handle);
        rewind($handle);
        $content = stream_get_contents($handle);
        fclose($handle);

        $storage = Storage_Repository::etrByType(TYPE_CREDITOR);
        $fileName = $trade->generateAttachmentLocationCreditor(
            array_get($organisation, 'organisation_refrence_id'),
            'file_invoice',
            'pdf',
            array_get($organisation, 'user_id')
        );
        $storage->set($fileName, $content);
        $updateInvoice = "UPDATE invoice_documents SET invoice_document_path = '$fileName'
        WHERE invoice_id = " . $invoice['invoice_id'];
        $db->query($updateInvoice);
    } else {
        exit('error');
    }
}
echo count($invoices) . ' files updated';

// delete duplicate invoices
$deleteInvoices = "DELETE FROM invoice_master WHERE invoice_id IN(95681);";
$db->query($deleteInvoices);

// delete duplicate debtors
$deleteDebtors = "DELETE FROM debtors_detail WHERE debtors_detail.debtor_id IN(4782,4793);
DELETE FROM debtor_relation WHERE debtor_id IN(4782,4793)";
$db->query($deleteDebtors);