<?php
namespace Claromentis\Infocapture\Controller;

$GLOBALS["__65da1b1ec2d6653e8a0ab7848e53621" . "5"] = (@$GLOBALS["__65da1b1ec2d6653e8a0ab7848e53" . "6215"] ?: array()) + array("_0a0dab2063e41b836782d" . "6931e42ff42" => base64_decode("Lnppc" . "A=="), "filenam" . "e" => base64_decode("ZmlsZW" . "5hbWU="), "_0cf5025f473" . "21df1b4f354c" . "ced7a2aba" => base64_decode("aW5mb2NhcHR1cmUuaXNzd" . "WUuZmlsZV9hcmNoaXZlX2" . "5hbWU="), "_4d707fab93bebb00bbe69e815" . "9697c90" => base64_decode(""));
use Claromentis\Core\Date\DateFormatter;
use Claromentis\Core\Http\ResponseFactory;
use Claromentis\Core\Localization\Lmsg;
use Claromentis\Core\Security\SecurityContext;
use Symfony\Component\HttpFoundation\Response;
class IssueController
{
    
    
    
    
    protected $lmsg;
    
    
    
    
    protected $archive_processor;
    
    
    
    
    protected $response_factory;
    public function __construct(Lmsg $lmsg, \ArchiveProcessor $archive_processor, ResponseFactory $response_factory)
    {
        $this->lmsg = $lmsg;
        $this->archive_processor = $archive_processor;
        $this->response_factory = $response_factory;
    }
    
    
    
    
    
    
    
    
    public function DownloadAllFiles(SecurityContext $context, \HDProject $project, \HDIssue $issue)
    {
        $_0d5f1ff8add887935f8be4befcc13eb5 = $project->UserHasPermission(HD_PERM_PRIVATE_NOTES, $issue, $context->GetUserId());
        $_4e7ab34a53ffb13eb0838003f33034d4 = $issue->GetAttachments($_0d5f1ff8add887935f8be4befcc13eb5);
        $_ab4a84d38986787e58597ed7091af8ca = [];
        foreach ($_4e7ab34a53ffb13eb0838003f33034d4 as $_47eed1aeea2c92efe9af919c40d41358) {
            $_ab4a84d38986787e58597ed7091af8ca[] = [$_47eed1aeea2c92efe9af919c40d41358->GetPath(), $_47eed1aeea2c92efe9af919c40d41358->GetProperty($GLOBALS["__65da1b1ec" . "2d6653e8a0a" . "b7848e53621" . "5"]["fil" . "ena" . "me"]), $GLOBALS["__65da1b1ec2d6653e8a0ab78" . "48e536215"]["_4d707fab93bebb00" . "bbe69e8159697c90"]];
        }
        $_d8ebd3b65e4caa34f7180a5b4509a978 = $this->archive_processor->CreateArchive($_ab4a84d38986787e58597ed7091af8ca);
        if ($_d8ebd3b65e4caa34f7180a5b4509a978 === false) {
            throw new \Exception($this->archive_processor->GetErrMsg());
        }
        $_d230962d9a57dc6ba2b774d9ba3bb81e = new \DateDay();
        $_d230962d9a57dc6ba2b774d9ba3bb81e = $_d230962d9a57dc6ba2b774d9ba3bb81e->getDate(DateFormatter::LONG_DATE);
        $name = ($this->lmsg)($GLOBALS["__65da1b1" . "ec2d6653e" . "8a0ab7848" . "e536215"]["_0cf5025f47321df1b4f354cce" . "d7a2aba"], $issue->GetId($project), $_d230962d9a57dc6ba2b774d9ba3bb81e) . $GLOBALS["__65da1b1ec" . "2d6653e8a0a" . "b7848e53621" . "5"]["_0a0dab2063e41" . "b836782d6931e4" . "2ff42"];
        return $this->response_factory->GetFileResponse($name, $_d8ebd3b65e4caa34f7180a5b4509a978, true);
    }
}