import {Email} from "./email";
import {Body} from "./body";
import {FormArray} from "@angular/forms";
import {properties} from "../../../../environments/environment";
export class Composer {
private static noteBodySize = "14px";
private static noteFontSize = "11px";
private static subjectPrefix = "[OpenAIRE-Connect] ";
private static closing = "OpenAIRE team";
private static openaireAddress = "www.openaire.eu
";
private static signature = Composer.closing + "
" + Composer.openaireAddress;
private static ifYouAreNotResponsible(mail): string {
return "If you are not responsible for this community, please "
+ "contact us. ";
}
private static manageNotificationSettings(communityId: string): string {
return "Click here to manage your notification settings. ";
}
private static youAreManagerOfTheCommunity(communityId: string, communityName: string): string {
return "You are receiving this e-mail as manager of the community "
+ "" + communityName + ". ";
}
public static composeEmailForNewManager(communityId: string, communityName: string): Email {
let email: Email = new Email();
email.subject = this.subjectPrefix + communityName + ": Welcome new manager";
email.body = "
Welcome to OpenAIRE Connect!
" + "You are receiving this e-mail as you were assigned as manager of the community " + communityName + " dashboard. "
+ "In order to access the administration section of your community you must first login using one of the available options. "
+ "
The administrative rights are associated to the e-mail address, that was used to send you this message."
+ " If you login with an account associated to a different email, please contact us"
+ " or your colleagues, that already have access to the administration tool, to update your e-mail.
"
+ "You can access the administration tool by clicking the \"Manage\" button that will be available in the top right corner of the dashboard."
+ "
" + this.ifYouAreNotResponsible(properties.admins[0]) + "
" + "
" + contactForm.message + "
" + "" + contactForm.message + "
" + "" + contactForm.message + "
" + "" + contactForm.description + "
" + "" + contactForm.description + "
" + "A user" + ((info.email)?(" with email " + info.email):"") + " has reported the following issue(s) for " + "" + info.name + "
A user" + ((info.email)?(" with email " + info.email):"") + " has reported the following "+typeName+" for " + "" + info.name + "
This is an automated message to let you know that your feedback has been successfully received. Our graph experts will get back to you as soon as possible.
There are updates in the managers list for \"" + communityName + "\" community.
"
+ "The list of managers is: ((__managers__))
"
+ this.youAreManagerOfTheCommunity(communityId, communityName)
+ this.ifYouAreNotResponsible(properties.admins[0])
+ "
"
+ this.manageNotificationSettings(communityId)
+ "
There is a new member ("+subscriberName+") for \"" + communityName + "\" community. Click " + "here to manage the members list.
" + this.signature + ""
+ this.youAreManagerOfTheCommunity(communityId, communityName)
+ "
"
+ this.manageNotificationSettings(communityId)
+ "
" + body.signature + fromMessageAndName + "
"
+ this.openaireAddress
+ "
You are invited to join '
+ communityTitle + ' dashboard.
';
if(communityId !== 'covid-19') {
defaultMainBody += 'The purpose of this dashboard is to gather, link & monitor the research results related to your community.
The community dashboard is part of the OpenAIRE-Connect ' + 'project.' + '
'; } else { defaultMainBody += 'This is a dashboard that gathers, links & monitors research results related COVID-19 (multi-disciplinary) from authoritative OA sources around the world. ' + 'We have a community of experts moderating and curating the content. ' + 'What you can do:
' + 'The community dashboard is part of the OpenAIRE-Connect project.
' } return {fromMessage: ", on behalf of ", fromName: fullname, paragraphs: defaultMainBody, signature: this.closing, note: ""}; } public static initializeInvitationsEmail(communityTitle: string) { let email: Email = new Email(); return {body: "", subject: this.subjectPrefix + communityTitle, recipients: []}; } public static composeEmailForMonitorDashboard(name: string, recipient: string, role: "manager" | "member") { let email: Email = new Email(); email.subject = 'OpenAIRE Monitor Dashboard | ' + name; email.body = this.composeMessageForMonitorDashboard(name, role); email.recipient = recipient; return email; } public static composeMessageForMonitorDashboard(name: string, role: "manager" | "member", user: string = null, invitation: any = null) { let pdppLink = 'http://catalogue.openaire.eu/files/Personal%20Data%20Protection%20Policy%20for%20OpenAIRE%20Services%20April%202022.pdf'; let message = 'Dear ((__user__)),
' + 'You have been invited to be a ' + role +' of the OpenAIRE Monitor Dashboard for the ' + name + '.
' + 'Click this URL and use the verification code below to accept the invitation.
' + 'The verification code is ((__code__)).
' + 'By logging in and using the service you accept and agree to the OpenAIRE personal data protection policy.
' + (role === "manager"? 'As a manager of the OpenAIRE Monitor Dashboard, you will have access to the administration part of the dashboard, ' + 'where you will be able to customize and manage the profile of the ' + name + '.
': 'As a member of the OpenAIRE Monitor Dashboard, you will have access to the restricted access areas of the profile for the ' + name + '.') + '
Please contact us at ' + properties.helpdeskEmail + ' if you have any questions or concerns.
' + 'Kind Regards
The OpenAIRE Team
Dear ((__user__)),
' + 'You have been invited to be a manager of the OpenAIRE Research Community Dashboard for the ' + name + '.
' + 'Click this URL and use the verification code below to accept the invitation.
' + 'The verification code is ((__code__)).
' + 'As a manager of the OpenAIRE Research Community Dashboard, you will have access to the administration part of the dashboard, ' + 'where you will be able to customize and manage the content of the ' + name + '.
' + 'Please contact us at ' + properties.helpdeskEmail + ' if you have any questions or concerns.
' + 'Kind Regards
The OpenAIRE Team