Merge pull request #112 from gradido/fix_lineendings

Fix lineendings
This commit is contained in:
einhornimmond 2021-03-31 12:28:17 +02:00 committed by GitHub
commit 242dfa7154
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
69 changed files with 8848 additions and 8669 deletions

View File

@ -16,6 +16,8 @@ services:
target: production
networks:
- external-net
depends_on:
- nginx
ports:
- 8080:8080
environment:

View File

@ -12,6 +12,8 @@
#include "../SingletonManager/EmailManager.h"
#include "../SingletonManager/SingletonTaskObserver.h"
#include "../tasks/PrepareEmailTask.h"
#include "../tasks/SendEmailTask.h"
#include "../tasks/SigningTransaction.h"
#include "../tasks/AuthenticatedEncryptionCreateKeyTask.h"
#include "../tasks/VerificationEmailResendTask.h"
@ -346,14 +348,12 @@ bool Session::createUser(const std::string& first_name, const std::string& last_
*/
//UniLib::controller::TaskPtr sendEmail(new SendEmailTask(message, ServerConfig::g_CPUScheduler, 1));
//Email(AutoPtr<controller::EmailVerificationCode> emailVerification, AutoPtr<controller::User> user, EmailType type);
auto em = EmailManager::getInstance();
em->addEmail(new model::Email(mEmailVerificationCodeObject, mNewUser, model::EMAIL_USER_VERIFICATION_CODE));
/*UniLib::controller::TaskPtr sendEmail(new SendEmailTask(new model::Email(mEmailVerificationCodeObject, mNewUser, model::EMAIL_USER_VERIFICATION_CODE), ServerConfig::g_CPUScheduler, 1));
UniLib::controller::TaskPtr sendEmail(new SendEmailTask(new model::Email(mEmailVerificationCodeObject, mNewUser, model::EMAIL_USER_VERIFICATION_CODE), ServerConfig::g_CPUScheduler, 1));
//sendEmail->setParentTaskPtrInArray(prepareEmail, 0);
sendEmail->setParentTaskPtrInArray(writeEmailVerification, 0);
sendEmail->setFinishCommand(new SessionStateUpdateCommand(SESSION_STATE_EMAIL_VERIFICATION_SEND, this));
sendEmail->scheduleTask(sendEmail);
*/
// write user into db
// generate and write email verification into db
// send email

View File

@ -0,0 +1,65 @@
#include "PrepareEmailTask.h"
#include "../lib/Profiler.h"
#include "../ServerConfig.h"
#include "../SingletonManager/ErrorManager.h"
#include "Poco/Net/SSLException.h"
PrepareEmailTask::PrepareEmailTask(UniLib::controller::CPUSheduler* cpuScheduler)
: UniLib::controller::CPUTask(cpuScheduler), mMailClientSession(nullptr)
{
}
PrepareEmailTask::~PrepareEmailTask()
{
if (mMailClientSession) {
delete mMailClientSession;
}
}
int PrepareEmailTask::run()
{
if (ServerConfig::g_disableEmail) return 0;
Profiler timeUsed;
mMailClientSession = new Poco::Net::SecureSMTPClientSession(ServerConfig::g_EmailAccount.url, ServerConfig::g_EmailAccount.port);
mMailClientSession->login();
try {
mMailClientSession->startTLS(ServerConfig::g_SSL_CLient_Context);
mMailClientSession->login(Poco::Net::SMTPClientSession::AUTH_LOGIN, ServerConfig::g_EmailAccount.username, ServerConfig::g_EmailAccount.password);
} catch(Poco::Net::SSLException& ex) {
printf("[PrepareEmailTask] ssl certificate error: %s\nPlease make sure you have cacert.pem (CA/root certificates) next to binary from https://curl.haxx.se/docs/caextract.html\n", ex.displayText().data());
return -1;
}
//printf("[PrepareEmailTask] time: %s\n", timeUsed.string().data());
/*
session.login();
session.startTLS(pContext);
if (!username.empty())
{
session.login(SMTPClientSession::AUTH_LOGIN, username, password);
}
session.sendMessage(message);
session.close();
*/
return 0;
}
int PrepareEmailTask::send(Poco::Net::MailMessage* message)
{
if (ServerConfig::g_disableEmail) return 0;
auto er = ErrorManager::getInstance();
try {
mMailClientSession->sendMessage(*message);
mMailClientSession->close();
}
catch (Poco::Exception& exc) {
er->addError(new ParamError("PrepareEmailTask::send", "error sending email", exc.displayText().data()));
printf("[PrepareEmailTask::%s] error sending email: %s\n", __FUNCTION__, exc.displayText().data());
return -1;
}
return 0;
}

View File

@ -0,0 +1,25 @@
#ifndef GRADIDO_LOGIN_SERVER_TASKS_PREPAIRE_EMAIL_TASK_INCLUDE
#define GRADIDO_LOGIN_SERVER_TASKS_PREPAIRE_EMAIL_TASK_INCLUDE
#include "CPUTask.h"
#include "Poco/Net/SecureSMTPClientSession.h"
class PrepareEmailTask : public UniLib::controller::CPUTask
{
public:
PrepareEmailTask(UniLib::controller::CPUSheduler* cpuScheduler);
virtual ~PrepareEmailTask();
virtual int run();
int send(Poco::Net::MailMessage* message);
virtual const char* getResourceType() const { return "PrepareEmailTask"; };
protected:
private:
Poco::Net::SecureSMTPClientSession* mMailClientSession;
};
#endif //GRADIDO_LOGIN_SERVER_TASKS_PREPAIRE_EMAIL_TASK_INCLUDE

View File

@ -1,4 +1,4 @@
#include "ProcessingTransaction.h"
#include "ProcessingTransaction.h"
#include <sodium.h>
#include "../model/TransactionCreation.h"

View File

@ -0,0 +1,64 @@
#include "SendEmailTask.h"
#include "PrepareEmailTask.h"
#include "../lib/Profiler.h"
#include "../SingletonManager/ErrorManager.h"
#include "../SingletonManager/EmailManager.h"
#include "../ServerConfig.h"
#include "Poco/Net/MediaType.h"
SendEmailTask::SendEmailTask(Poco::Net::MailMessage* mailMessage, UniLib::controller::CPUSheduler* cpuScheduler, size_t additionalTaskDependenceCount/* = 0*/)
: UniLib::controller::CPUTask(cpuScheduler, additionalTaskDependenceCount+1), mMailMessage(mailMessage), mEmail(nullptr)
{
}
SendEmailTask::SendEmailTask(model::Email*email, UniLib::controller::CPUSheduler* cpuScheduler, size_t additionalTaskDependenceCount/* = 0*/)
: UniLib::controller::CPUTask(cpuScheduler, additionalTaskDependenceCount), mMailMessage(nullptr), mEmail(email)
{
}
SendEmailTask::~SendEmailTask()
{
if (mMailMessage) {
delete mMailMessage;
mMailMessage = nullptr;
}
if (mEmail) {
delete mEmail;
mEmail = nullptr;
}
}
int SendEmailTask::run()
{
if(ServerConfig::g_disableEmail) return 0;
Profiler timeUsed;
auto er = ErrorManager::getInstance();
auto parent = getParent(0);
if (mMailMessage) {
if (strcmp(parent->getResourceType(), "PrepareEmailTask") != 0) {
er->addError(new Error("SendEmailTask", "first parent isn't PrepareEmailTask"));
er->sendErrorsAsEmail();
return -1;
}
PrepareEmailTask* prepare = (PrepareEmailTask*)&(*parent);
mMailMessage->setSender(ServerConfig::g_EmailAccount.sender);
if (prepare->send(mMailMessage)) {
er->sendErrorsAsEmail();
return -1;
}
}
else if (mEmail) {
auto em = EmailManager::getInstance();
em->addEmail(mEmail);
mEmail = nullptr;
}
//printf("[SendEmailTask] time: %s\n", timeUsed.string().data());
return 0;
}

View File

@ -0,0 +1,36 @@
#ifndef GRADIDO_LOGIN_SERVER_TASKS_SEND_EMAIL_TASK_INCLUDE
#define GRADIDO_LOGIN_SERVER_TASKS_SEND_EMAIL_TASK_INCLUDE
#include "CPUTask.h"
#include "Poco/Net/MailMessage.h"
#include "../model/email/Email.h"
/*
* @author: Dario Rekowski
*
* @date: 29.09.19
* @desc: Task for send an email, the first parent dependence pointer must be a prepare email task
*/
class SendEmailTask : public UniLib::controller::CPUTask
{
public:
SendEmailTask(Poco::Net::MailMessage* mailMessage, UniLib::controller::CPUSheduler* cpuScheduler, size_t additionalTaskDependenceCount = 0);
SendEmailTask(model::Email* email, UniLib::controller::CPUSheduler* cpuScheduler, size_t additionalTaskDependenceCount = 0);
virtual ~SendEmailTask();
virtual int run();
virtual const char* getResourceType() const { return "SendEmailTask"; };
protected:
private:
Poco::Net::MailMessage* mMailMessage;
model::Email* mEmail;
};
#endif //GRADIDO_LOGIN_SERVER_TASKS_SEND_EMAIL_TASK_INCLUDE

View File

@ -1,4 +1,5 @@
server {
listen 80 ;
@ -13,6 +14,15 @@ server {
root /var/www/cakephp/webroot;
index index.php;
location ~* \.(png|jpg|ico|webp)$ {
expires 30d;
}
location ~* \.(js|css) {
# expires 1d;
expires 1d;
}
location ~ \.php$ {
fastcgi_pass community-server:9000;
fastcgi_index index.php;
@ -59,34 +69,11 @@ server {
proxy_redirect off;
}
location /vue {
location /vue/sockjs-node {
rewrite /vue/(.*) /$1;
}
location ~* \.(png) {
expires 1d;
rewrite /vue/(.*) /$1;
}
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
#rewrite /vue/(.*) /$1 break;
proxy_pass http://frontend:8080;
proxy_redirect off;
}
location / {
try_files $uri $uri/ /index.php?$args;
}
# access_log /var/log/nginx/access.log main;
}