Project

General

Profile

1
//version compatibility: 1.1.1-SNAPSHOT
2
print("here");
3

    
4
function dropDB(){
5
print("\n\n Drop DB\n\n")
6
	db.dropDatabase()
7
}
8
function createCollections(){
9
print("\n\n Create Collections \n\n")
10
	db.createCollection("community")
11
	db.createCollection("layout")
12
	db.createCollection("divHelpContent")
13
	db.createCollection("divId")
14
	db.createCollection("entity")
15
	db.createCollection("page")
16
	db.createCollection("pageHelpContent")
17
	db.createCollection("statistics")
18
	db.createCollection("communitySubscribers")
19
	db.createCollection("htmlPageContent")
20
	db.createCollection("notifications")
21
	db,createCollection("subscriber")
22
}
23
function initializeEntitiesPagesDivIds(){
24
print("\n\n Initialize entities, pages & divIds \n\n")
25
	db.entity.save({"pid" : "publication", "name" : "Publication"})
26
	db.entity.save({"pid" : "dataset", "name" : "Research Data"})
27
	db.entity.save({"pid" : "software", "name" : "Software"})
28
	db.entity.save({"pid" : "orp", "name" : "Other Research Products"});
29
	db.entity.save({"pid" : "project", "name" : "Project"})
30
	db.entity.save({"pid" : "organization", "name" : "Organization"})
31
	db.entity.save({"pid" : "datasource", "name" : "Content Provider"})
32

    
33
	publicationId = db.entity.find( { pid: "publication" }).map( function(entity) { return entity._id.str; } ).toString()
34
	datasetId = db.entity.find( { pid: "dataset" }).map( function(entity) { return entity._id.str; } ).toString()
35
	softwareId = db.entity.find( { pid: "software" }).map( function(entity) { return entity._id.str; } ).toString()
36
	orpId = db.entity.find( { pid: "orp" }).map( function(entity) { return entity._id.str; } ).toString();
37
	projectId = db.entity.find( { pid: "project" }).map( function(entity) { return entity._id.str; } ).toString()
38
	organizationId = db.entity.find( { pid: "organization" }).map( function(entity) { return entity._id.str; } ).toString()
39
	datasourceId = db.entity.find( { pid: "datasource" }).map( function(entity) { return entity._id.str; } ).toString()
40

    
41
	db.page.save({"name" : "Publication Landing", "route" : "/search/publication", "type" : "landing", "connect":true,"openaire":true,"entities" : [publicationId]})
42
	db.page.save({"name" : "Research Data Landing", "route" : "/search/dataset", "type" : "landing", "connect":true,"openaire":true,"entities" : [datasetId]})
43
	db.page.save({"name" : "Software Landing", "route" : "/search/software", "type" : "landing", "connect":true,"openaire":true,"entities" : [softwareId]})
44
	db.page.save({"name" : "Other Research Products Landing", "route" : "/search/other", "type" : "landing", "connect":true,"openaire":true,"entities" : [orpId]});
45
	db.page.save({"name" : "Project Landing", "route" : "/search/project", "type" : "landing", "connect":true,"openaire":true,"entities" : [projectId]})
46
	db.page.save({"name" : "Organization Landing", "route" : "/search/organization", "type" : "landing", "connect":true,"openaire":true,"entities" : [organizationId]})
47
	db.page.save({"name" : "Content Provider Landing", "route" : "/search/dataprovider", "type" : "landing", "connect":true,"openaire":true,"entities" : [datasourceId]})
48
	db.page.save({"name" : "Project Report", "route" : "/project-report", "type" : "landing", "connect":false,"openaire":true,"entities" : [projectId]})
49

    
50
	db.page.save({"name" : "Search Find", "type" : "search", "connect":false,"openaire":true,"entities" : [], "route" : "/search/find"})
51

    
52
	db.page.save({"name" : "Search Publications", "route" : "/search/find/publications", "type" : "search", "connect":true,"openaire":true,"entities" : [publicationId]})
53
	db.page.save({"name" : "Search Research Data", "route" : "/search/find/datasets", "type" : "search", "connect":true,"openaire":true,"entities" : [datasetId]})
54
	db.page.save({"name" : "Search Software", "route" : "/search/find/software", "type" : "search", "connect":true,"openaire":true,"entities" : [softwareId]})
55
	db.page.save({"name" : "Search Other Research Products", "route" : "/search/find/other", "type" : "search", "connect":true,"openaire":true,"entities" : [orpId]});
56
	db.page.save({"name" : "Search Projects", "route" : "/search/find/projects", "type" : "search", "connect":true,"openaire":true,"entities" : [projectId]})
57
	db.page.save({"name" : "Search Organizations", "route" : "/search/find/organizations", "type" : "search", "connect":false,"openaire":true,"entities" : [organizationId]})
58
	db.page.save({"name" : "Search Content Providers", "route" : "/search/find/dataproviders", "type" : "search", "connect":true,"openaire":true,"entities" : [datasourceId]})
59

    
60
	db.page.save({"name" : "Advanced Search Publications", "route" : "/search/advanced/publications", "type" : "search", "connect":true,"openaire":true,"entities" : [publicationId]})
61
	db.page.save({"name" : "Advanced Search Research Data ", "route" : "/search/advanced/datasets", "type" : "search", "connect":true,"openaire":true,"entities" : [datasetId]})
62
	db.page.save({"name" : "Advanced Search Software", "route" : "/search/advanced/software", "type" : "search", "connect":true,"openaire":true,"entities" : [softwareId]})
63
	db.page.save({"name" : "Advanced Search Other Research Products", "route" : "/search/advanced/other", "type" : "search", "connect":true,"openaire":true,"entities" : [orpId]});
64
	db.page.save({"name" : "Advanced Search Projects", "route" : "/search/advanced/projects", "type" : "search", "connect":false,"openaire":true,"entities" : [projectId]})
65
	db.page.save({"name" : "Advanced Search Organizations", "route" : "/search/advanced/organizations", "type" : "search", "connect":false,"openaire":true,"entities" : [organizationId]})
66
	db.page.save({"name" : "Advanced Search Content Providers", "route" : "/search/advanced/dataproviders", "type" : "search", "connect":false,"openaire":true,"entities" : [datasourceId]})
67

    
68
	db.page.save({"name" : "Search Journals", "route" : "/search/journals", "type" : "search", "connect":false,"openaire":true,"entities" : [datasourceId]})
69
	db.page.save({"name" : "Search Entity Registries", "route" : "/search/entity-registries", "type" : "search", "connect":false,"openaire":true,"entities" : [datasourceId]})
70
	db.page.save({"name" : "Search Compatible Content Providers", "route" : "/search/content-providers", "type" : "search", "connect":false,"openaire":true,"entities" : [datasourceId]})
71
	db.page.save({"name" : "Search Journals - Table view", "route" : "/search/journals-table", "type" : "search", "connect":false,"openaire":true,"entities" : [datasourceId]})
72
	db.page.save({"name" : "Search Entity Registries - Table view", "route" : "/search/entity-registries-table", "type" : "search", "connect":false,"openaire":true,"entities" : [datasourceId]})
73
	db.page.save({"name" : "Search Compatible Content Providers -Table view", "route" : "/search/content-providers-table", "type" : "search", "connect":false,"openaire":true,"entities" : [datasourceId]})
74

    
75
	db.page.save({"name" : "Deposit Publications", "route" : "/participate/deposit-publications", "type" : "share", "connect":true,"openaire":true,"entities" : [publicationId]})
76
	db.page.save({"name" : "Deposit Research Data", "route" : "/participate/deposit-datasets", "type" : "share", "connect":true,"openaire":true,"entities" : [datasetId]})
77
	db.page.save({"name" : "Deposit Publications Results", "route" : "/participate/deposit-publications-result", "type" : "share", "connect":true,"openaire":true,"entities" : [publicationId]})
78
	db.page.save({"name" : "Deposit Research Data Results", "route" : "/participate/deposit-datasets-result", "type" : "share", "connect":true,"openaire":true,"entities" : [datasetId]})
79
	db.page.save({"name" : "Deposit Research Data subject result", "route" : "/participate/deposit-subject-result", "type" : "share", "connect":true,"openaire":true,"entities" : [datasetId]})
80
	db.page.save({"name" : "Share in Zenodo", "route" : "/participate/share-zenodo", "type" : "share", "connect":true,"openaire":false,"entities" : []})
81

    
82
	db.page.save({"name" : "Link", "route" : "/participate/claim", "type" : "link", "connect":true,"openaire":true,"entities" : [projectId]})
83
	db.page.save({"name" : "Direct Link", "route" : "/participate/direct-claim", "type" : "link", "connect":true,"openaire":true,"entities" : []})
84
	db.page.save({"name" : "My claims", "route" : "/myclaims", "type" : "link", "connect":true,"openaire":true,"entities" : []})
85
	db.page.save({"name" : "Administrator claims", "route" : "/claims", "type" : "link", "connect":true,"openaire":true,"entities" : []})
86
	db.page.save({"name" : "Claims Project Manager", "route" : "/claims-project-manager", "type" : "link", "connect":false,"openaire":true,"entities" : []})
87

    
88
	db.page.save({"name" : "Monitor", "route" : "/monitor", "type" : "other", "connect":true,"openaire":false,"entities" : []})
89

    
90
	db.page.save({"name" : "About", "route" : "/about", "type" : "html", "connect":true,"openaire":false,"entities" : []})
91
	db.page.save({"name" : "Organizations", "route" : "/organizations", "type" : "html", "connect":true,"openaire":false,"entities" : []})
92

    
93
    link = db.page.find( { route: "/participate/claim" }).map( function(page) { return page._id.str; } ).toString()
94
	directLink = db.page.find( { route: "/participate/direct-claim" }).map( function(page) { return page._id.str; } ).toString()
95

    
96
	db.divId.save({ "name" : "link-context-form", "pages" : [link, directLink]})
97
    db.divId.save({ "name" : "link-project-form", "pages" : [link, directLink]})
98
    db.divId.save({ "name" : "link-result-form", "pages" : [link, directLink]})
99
    db.divId.save({ "name" : "link-result-bulk", "pages" : [link]})
100
    db.divId.save({ "name" : "link-metadata", "pages" : [link, directLink]})
101
}
102
function createCommunity(name,communityPid){
103
    var communitySaved =  db.community.find( { pid: communityPid }).map( function(community) { return community._id.str; } ).toString()
104
    if(communitySaved){
105
        print("\n\n Community \'"+name +"\' exists\n\n");
106
        return ;
107
    }
108
    print("\n\n Create community \n\n");
109
    print("Name:"+name);
110
    print("communityPid:"+communityPid);
111

    
112
	publicationLanding = db.page.find( { route: "/search/publication" }).map( function(page) { return page._id.str; } ).toString()
113
	datasetLanding = db.page.find( { route: "/search/dataset" }).map( function(page) { return page._id.str; } ).toString()
114
	softwareLanding = db.page.find( { route: "/search/software" }).map( function(page) { return page._id.str; } ).toString()
115
	orpLanding = db.page.find( { route: "/search/other" }).map( function(page) { return page._id.str; } ).toString();
116
	projectLanding = db.page.find( { route: "/search/project" }).map( function(page) { return page._id.str; } ).toString()
117
	organizationLanding = db.page.find( { route: "/search/organization" }).map( function(page) { return page._id.str; } ).toString()
118
	dataproviderLanding = db.page.find( { route: "/search/dataprovider" }).map( function(page) { return page._id.str; } ).toString()
119
	projectReport = db.page.find( { route: "/project-report" }).map( function(page) { return page._id.str; } ).toString()
120

    
121
	searchFind = db.page.find( { route: "/search/find" }).map( function(page) { return page._id.str; } ).toString()
122

    
123
	searchPublications = db.page.find( { route: "/search/find/publications" }).map( function(page) { return page._id.str; } ).toString()
124
	searchDatasets = db.page.find( { route: "/search/find/datasets" }).map( function(page) { return page._id.str; } ).toString()
125
	searchSoftware = db.page.find( { route: "/search/find/software" }).map( function(page) { return page._id.str; } ).toString()
126
	searchOrp = db.page.find( { route: "/search/find/other" }).map( function(page) { return page._id.str; } ).toString();
127
	searchProject = db.page.find( { route: "/search/find/projects" }).map( function(page) { return page._id.str; } ).toString()
128
	searchOrganization = db.page.find( { route: "/search/find/organizations" }).map( function(page) { return page._id.str; } ).toString()
129
	searchDataprovider = db.page.find( { route: "/search/find/dataproviders" }).map( function(page) { return page._id.str; } ).toString()
130

    
131
	advancedSearchPublications = db.page.find( { route: "/search/advanced/publications" }).map( function(page) { return page._id.str; } ).toString()
132
	advancedSearchDatasets = db.page.find( { route: "/search/advanced/datasets" }).map( function(page) { return page._id.str; } ).toString()
133
	advancedSearchSoftware = db.page.find( { route: "/search/advanced/software" }).map( function(page) { return page._id.str; } ).toString()
134
	advancedSearchOrp = db.page.find( { route: "/search/advanced/other" }).map( function(page) { return page._id.str; } ).toString();
135
	advancedSearchProject = db.page.find( { route: "/search/advanced/projects" }).map( function(page) { return page._id.str; } ).toString()
136
	advancedSearchOrganization = db.page.find( { route: "/search/advanced/organizations" }).map( function(page) { return page._id.str; } ).toString()
137
	advancedSearchDataprovider = db.page.find( { route: "/search/advanced/dataproviders" }).map( function(page) { return page._id.str; } ).toString()
138

    
139
	searchJournals = db.page.find( { route: "/search/journals" }).map( function(page) { return page._id.str; } ).toString()
140
	searchEntityRegistries = db.page.find( { route: "/search/entity-registries" }).map( function(page) { return page._id.str; } ).toString()
141
	searchContentProviders = db.page.find( { route: "/search/content-providers" }).map( function(page) { return page._id.str; } ).toString()
142
	searchJournalsTable = db.page.find( { route: "/search/journals-table" }).map( function(page) { return page._id.str; } ).toString()
143
	searchEntityRegistriesTable = db.page.find( { route: "/search/entity-registries-table" }).map( function(page) { return page._id.str; } ).toString()
144
	searchContentProvidersTable = db.page.find( { route: "/search/content-providers-table" }).map( function(page) { return page._id.str; } ).toString()
145

    
146
	depositPublications = db.page.find( { route: "/participate/deposit-publications" }).map( function(page) { return page._id.str; } ).toString()
147
	depositDatasets = db.page.find( { route: "/participate/deposit-datasets" }).map( function(page) { return page._id.str; } ).toString()
148
	depositPublicationsResults = db.page.find( { route: "/participate/deposit-publications-result" }).map( function(page) { return page._id.str; } ).toString()
149
	depositDatasetsResults = db.page.find( { route: "/participate/deposit-datasets-result" }).map( function(page) { return page._id.str; } ).toString()
150
	depositDatasetSybjectResults = db.page.find( { route: "/participate/deposit-subject-result" }).map( function(page) { return page._id.str; } ).toString()
151
    shareInZenodo = db.page.find( { route: "/participate/share-zenodo" }).map( function(page) { return page._id.str; } ).toString();
152

    
153
	link = db.page.find( { route: "/participate/claim" }).map( function(page) { return page._id.str; } ).toString()
154
	directLink = db.page.find( { route: "/participate/direct-claim" }).map( function(page) { return page._id.str; } ).toString()
155
	myClaims = db.page.find( { route: "/myclaims" }).map( function(page) { return page._id.str; } ).toString()
156
	administratorClaims = db.page.find( { route: "/claims" }).map( function(page) { return page._id.str; } ).toString()
157
	claimsProjectManager = db.page.find( { route: "/claims-project-manager" }).map( function(page) { return page._id.str; } ).toString()
158

    
159
	monitor = db.page.find( { route: "/monitor" }).map( function(page) { return page._id.str; } ).toString()
160

    
161
	about = db.page.find( { route: "/about" }).map( function(page) { return page._id.str; } ).toString()
162
	organizations = db.page.find( { route: "/organizations" }).map( function(page) { return page._id.str; } ).toString()
163

    
164
	var community_pages = {}
165
	community_pages[publicationLanding] = true;
166
	community_pages[datasetLanding] = true;
167
	community_pages[softwareLanding] = true;
168
	community_pages[orpLanding] = true;
169
	community_pages[projectLanding] = true;
170
	community_pages[organizationLanding] = true;
171
	community_pages[dataproviderLanding] = true;
172
	community_pages[projectReport] = true;
173
	community_pages[searchFind] = true;
174
	community_pages[searchPublications] = true;
175
	community_pages[searchDatasets] = true;
176
	community_pages[searchSoftware] = true;
177
	community_pages[searchOrp] = true;
178
	community_pages[searchProject] = true;
179
	community_pages[searchOrganization] = true;
180
	community_pages[searchDataprovider] = true;
181
	community_pages[advancedSearchPublications] = true;
182
	community_pages[advancedSearchDatasets] = true;
183
	community_pages[advancedSearchSoftware] = true;
184
	community_pages[advancedSearchOrp] = true;
185
	community_pages[advancedSearchProject] = true;
186
	community_pages[advancedSearchOrganization] = true;
187
	community_pages[advancedSearchDataprovider] = true;
188
	community_pages[searchJournals] = true;
189
	community_pages[searchEntityRegistries] = true;
190
	community_pages[searchContentProviders] = true;
191
	community_pages[searchJournalsTable] = true;
192
	community_pages[searchEntityRegistriesTable] = true;
193
	community_pages[searchContentProvidersTable] = true;
194
	community_pages[depositPublications] = true;
195
	community_pages[depositDatasets] = true;
196
	community_pages[depositPublicationsResults] = true;
197
	community_pages[depositDatasetsResults] = true;
198
	community_pages[depositDatasetSybjectResults] = true;
199
	community_pages[shareInZenodo] = true;
200
	community_pages[link] = true;
201
	community_pages[directLink] = true;
202
	community_pages[myClaims] = true;
203
	community_pages[administratorClaims] = true;
204
	community_pages[claimsProjectManager] = true;
205
	community_pages[monitor] = true;
206
	community_pages[about] = false;
207
	community_pages[organizations] = false;
208

    
209
	publicationId = db.entity.find( { pid: "publication" }).map( function(entity) { return entity._id.str; } ).toString()
210
	datasetId = db.entity.find( { pid: "dataset" }).map( function(entity) { return entity._id.str; } ).toString()
211
	softwareId = db.entity.find( { pid: "software" }).map( function(entity) { return entity._id.str; } ).toString()
212
	orpId = db.entity.find( { pid: "orp" }).map( function(entity) { return entity._id.str; } ).toString();
213
	projectId = db.entity.find( { pid: "project" }).map( function(entity) { return entity._id.str; } ).toString()
214
	organizationId = db.entity.find( { pid: "organization" }).map( function(entity) { return entity._id.str; } ).toString()
215
	datasourceId = db.entity.find( { pid: "datasource" }).map( function(entity) { return entity._id.str; } ).toString();
216
	print("PAges:"+publicationId);
217
	var community_entities = {}
218
	community_entities[publicationId] = true;
219
	community_entities[datasetId] = true;
220
	community_entities[softwareId] = true;
221
	community_entities[orpId] = true;
222
	community_entities[projectId] = true;
223
	community_entities[organizationId] = true;
224
	community_entities[datasourceId] = true;
225
	var layoutId = db.layout.insertOne({"color": "#EBB13E"}).insertedId.str;
226
	print("Layout:" + layoutId);
227
 	db.community.save({	"name" : name,
228
		"pid" : communityPid, "pages" : community_pages, "entities" : community_entities, "layout": layoutId})
229

    
230
	openaireCommunity = db.community.find( { pid: communityPid }).map( function(community) { return community._id.str; } ).toString()
231

    
232
    var numbers_map = {};
233
        numbers_map["total"] = { "showInMonitor" : true, "showInDashboard" : false };
234
        numbers_map["project"] = { "showInMonitor" : true, "showInDashboard" : false };
235
        numbers_map["open"] = { "showInMonitor" : true, "showInDashboard" : false };
236
        numbers_map["closed"] = { "showInMonitor" : true, "showInDashboard" : false };
237
        numbers_map["embargo"] = { "showInMonitor" : true, "showInDashboard" : false };
238
        numbers_map["restricted"] = { "showInMonitor" : true, "showInDashboard" : false };
239
    var numbers = {"map":numbers_map};
240
    var charts_map = {};
241
        charts_map["timeline"] = { "showInMonitor" : true, "showInDashboard" : false };
242
        charts_map["graph"] = { "showInMonitor" : true, "showInDashboard" : false };
243
        charts_map["projectTable"] = { "showInMonitor" : true, "showInDashboard" : false };
244
        charts_map["projectColumn"] = { "showInMonitor" : true, "showInDashboard" : false };
245
        charts_map["projectPie"] = { "showInMonitor" : true, "showInDashboard" : false };
246
    var charts = {"map":charts_map};
247

    
248
	var statistics_entities = {"charts":charts,"numbers":numbers}
249
	var entities = {};
250
	entities["publication"]=statistics_entities;
251
	entities["dataset"]=statistics_entities;
252
	entities["software"]=statistics_entities;
253
    entities["orp"]=statistics_entities;
254
	var statistics = {"pid" : communityPid, "entities" : entities};
255

    
256
    db.statistics.save(statistics);
257

    
258
    var subscribers = [];
259
    db.communitySubscribers.save({ "pid" : communityPid, "subscribers" : subscribers})
260

    
261
    link_context_form = db.divId.find( { name: "link-context-form" }).map( function(divId) { return divId._id.str; } ).toString();
262
    link_project_form = db.divId.find( { name: "link-project-form" }).map( function(divId) { return divId._id.str; } ).toString();
263
    link_result_form = db.divId.find( { name: "link-result-form" }).map( function(divId) { return divId._id.str; } ).toString();
264
    link_result_bulk = db.divId.find( { name: "link-result-bulk" }).map( function(divId) { return divId._id.str; } ).toString();
265
    link_metadata = db.divId.find( { name: "link-metadata" }).map( function(divId) { return divId._id.str; } ).toString();
266

    
267
    link_context_form_content = '<div> <div><span class="uk-text-bold"><span uk-icon="icon: info">&nbsp;</span> Information:</span> Select a research community and/or a category and search for a community concept, or browse to the community tree through the categories</div> </div>';
268
    link_project_form_content = '<div> <div><span class="uk-text-bold"><span uk-icon="icon: info">&nbsp;</span> Information:</span> Search for projects using project name or grant id. Limit results filtering by funder.</div> </div>';
269
    link_result_form_content = '<div> <div><span class="uk-text-bold"><span uk-icon="icon: info">&nbsp;</span> Information:</span></div> Search for research results in OpenAIRE information space, Datacite, CrossRef or ORCID. <div class="uk-text-small">Use keywords, DOI (more than one - space separated), author&#39;s ORCID</div> </div> ';
270
    link_result_bulk_content = '<div> <div><span class="uk-text-bold"><span uk-icon="icon: info">&nbsp;</span> Information:</span> Upload a csv file containing a list of DOIs. For each DOI found in the file, metadata will be fetched from CrossRef or Datacite and will be added to your selected research results.</div> <div class="uk-margin-top uk-text-small"><span class="uk-text-bold">CSV format:</span> <ul class="uk-list"> <li>The format of CSV file should be &quot;DOI&quot;,&quot;ACCESS_MODE&quot;,&quot;DATE&quot;.</li> <li>The value &quot;DOI&quot; is required</li> <li>Access mode column should have values: &quot;OPEN&quot;,&quot;CLOSED&quot; or &quot;EMBARGO&quot;.</li> <li>Date column valid format is YYYY-MM-DD and is required when access mode has value EMBARGO.</li> <li>In case access mode is not available default value is &quot;OPEN&quot;.</li> </ul> </div> </div> ';
271
    link_metadata_content = '<div> <div><span class="uk-text-bold"><span uk-icon="icon: info">&nbsp;</span> Information:</span> Manage access mode &amp; type of selected research results. For OpenAIRE this functionality isn&#39;t available.</div> </div>';
272

    
273
    communityID = db.community.find({ "pid" : communityPid}).map( function(community) { return community._id.str.toString(); } );
274

    
275
    db.divHelpContent.save({ "divId" : link_context_form, "community" : communityID, "content" : link_context_form_content, "isActive" : false });
276
    db.divHelpContent.save({ "divId" : link_project_form, "community" : communityID, "content" : link_project_form_content, "isActive" : false });
277
    db.divHelpContent.save({ "divId" : link_result_form, "community" : communityID, "content" : link_result_form_content, "isActive" : true });
278
    db.divHelpContent.save({ "divId" : link_result_bulk, "community" : communityID, "content" : link_result_bulk_content, "isActive" : true });
279
    db.divHelpContent.save({ "divId" : link_metadata, "community" : communityID, "content" : link_metadata_content, "isActive" : false });
280

    
281
print("\n\n Done \n\n");
282

    
283
}
284
function createAllCommunities(){
285
    createCommunity("OpenAIRE","openaire");
286
    createCommunity("EGI Federation","egi");
287
    createCommunity("SDSN - Greece ","ee");
288
    createCommunity("Fisheries and Aquaculture Management","fam");
289
    createCommunity("Instruct-ERIC","instruct");
290
    createCommunity("Elixir","elixir-gr");
291
    createCommunity("European Marine Science","mes");
292
    createCommunity("EC post-grant Open Access Pilot","oa-pg");
293
    createCommunity("Neuroinformatics","ni");
294
    createCommunity("Research Data Alliance","rda");
295
    createCommunity("Digital Humanities and Cultural Heritage","dh-ch");
296
	createCommunity("AGINFRA","aginfra");
297
	createCommunity("Clarin","clarin");
298
	createCommunity("DARIAH EU", "dariah");
299
}
300

    
301
function addDefaultHtmlToHtmlPages() {
302
	about = db.page.find( { route: "/about" }).map( function(page) { return page._id.str; } ).toString()
303
	organizations = db.page.find( { route: "/organizations" }).map( function(page) { return page._id.str; } ).toString()
304

    
305
	communities = db.community.find().map( function(community) { return community._id.str.toString(); } );
306

    
307
	for (var i = 0; i < communities.length; i++) {
308
 		db.htmlPageContent.save({"page" : about, "community" : communities[i], "content" : '<div><div class="uk-article-title custom-article-title"> About the community </div> <p> This is an introductory text. To be updated... </p> </div>'})
309
 		db.htmlPageContent.save({"page" : organizations, "community" : communities[i], "content" : '<div><div class="uk-article-title custom-article-title"> Organizations related to the community </div> <p> This is an introductory text. Here follows the list of organizations... </p> <div class="uk-child-width-1-3@m uk-text-center uk-grid-match " uk-grid > <div class="uk-card uk-card-default uk-margin-bottom uk-padding-remove"> <div class="uk-card-media-top"> <img src="https://upload.wikimedia.org/wikipedia/el/2/2b/Logo_uoa_blue.png" alt="" class="uk-height-small uk-responsive-height "> </div> <div class="uk-card-body"> <h3 class="uk-card-title"> <a class="wk-link-reset" href="https://www.uoa.gr/">University of Athens</a> </h3> </div> </div> <div class="uk-card uk-card-default uk-margin-bottom uk-padding-remove"> <div class="uk-card-media-top"> <img src="https://pbs.twimg.com/profile_images/631127495933165569/ElbqhHK0_400x400.jpg" alt="" class="uk-height-small uk-responsive-height "> </div> <div class="uk-card-body"> <h3 class="uk-card-title"> <a class="wk-link-reset" href="https://www.athena-innovation.gr/en">Athena Research & Innovation center</a> </h3> </div> </div> <div class="uk-card uk-card-default uk-margin-bottom uk-padding-remove"> <div class="uk-card-media-top"> <img src="" alt="Logo 1" class="uk-height-small uk-responsive-height "> </div> <div class="uk-card-body"> <h3 class="uk-card-title"> <a class="wk-link-reset" href="">Organization 1</a> </h3> </div> </div> <div class="uk-card uk-card-default uk-margin-bottom uk-padding-remove"> <div class="uk-card-media-top"> <img src="" alt="Logo 2" class="uk-height-small uk-responsive-height "> </div> <div class="uk-card-body"> <h3 class="uk-card-title"> <a class="wk-link-reset" href="">Organization 2</a> </h3> </div> </div> <div class="uk-card uk-card-default uk-margin-bottom uk-padding-remove"> <div class="uk-card-media-top"> <img src="" alt="Logo 3" class="uk-height-small uk-responsive-height "> </div> <div class="uk-card-body"> <h3 class="uk-card-title"> <a class="wk-link-reset" href="">Organization 3</a> </h3> </div> </div> </div></div>'})
310
	}
311
}
312

    
313
use openaire_admin;
314

    
315
dropDB();
316
createCollections();
317
initializeEntitiesPagesDivIds();
318
createAllCommunities();
319
addDefaultHtmlToHtmlPages();
(2-2/4)