Пример #1
0
$data = [];
if (!count($_FILES)) {
    $data = ["err" => true, "msg" => "There was an error with the file upload."];
} else {
    if (\FMA\Utility::stringStartsWith($_REQUEST["REQUEST_NAME"], "ADMIN_")) {
        $_REQUEST["REQUEST_NAME"] = str_replace("ADMIN_", "", $_REQUEST["REQUEST_NAME"]);
        if (!$_auth->getUser()->getPosition() || !$_auth->getUser()->getPosition()->isOfficer()) {
            $data = ["err" => true, "msg" => "You do not have permission to do that."];
        } else {
            if ($_REQUEST["DATA_TYPE"] == "UPLOAD_EVENT_ATTACHMENT") {
                $event_id = Utility::cleanInt($_POST["event_id"], 1);
                if (!$event_id) {
                    $data = ["err" => true, "msg" => "Invalid event ID."];
                    goto end;
                }
                $_event = \FMA\Calendar\Event::find($_pdo, $event_id);
                if (is_null($_event) || $_event->getCreator()->getChapterId() != $_auth->getUser()->getChapterId()) {
                    $data = ["err" => true, "msg" => "Invalid event ID."];
                    goto end;
                }
                try {
                    $_fs = \FMA\Config::getFileSystem();
                    $_uploader = new \FMA\File\Builder\EventFileBuilder($_pdo, $_fs, $_event);
                    $_file = $_uploader->create($_auth->getUser(), $_FILES["event_attachment"]);
                    $data = ["err" => false, "msg" => "", "file" => $_file->toArray()];
                    //TODO: Decide if an email should be sent here
                } catch (\FMA\Exception\UploadException $er) {
                    $data = array("err" => true, "msg" => $er->getMessage());
                }
            }
        }
Пример #2
0
 private function sendChapterMeetingEmail(\int $event_id)
 {
     $_event = Event::find($this->_pdo, $event_id);
     $this->_mailer->sendChapterMeetingEmail($_event, Config::getFileSystem());
 }