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
}
22
function initializeEntitiesPagesDivIds(){
23
print("\n\n Initialize entities, pages & divIds \n\n")
24
	db.entity.save({"pid" : "publication", "name" : "Publication"})
25
	db.entity.save({"pid" : "dataset", "name" : "Research Data"})
26
	db.entity.save({"pid" : "software", "name" : "Software"})
27
	db.entity.save({"pid" : "orp", "name" : "Other Research Products"});
28
	db.entity.save({"pid" : "project", "name" : "Project"})
29
	db.entity.save({"pid" : "organization", "name" : "Organization"})
30
	db.entity.save({"pid" : "datasource", "name" : "Content Provider"})
31

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    
255
    db.statistics.save(statistics);
256

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

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

    
266
    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>';
267
    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>';
268
    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> ';
269
    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> ';
270
    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>';
271

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

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

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

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

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

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

    
305
	for (var i = 0; i < communities.length; i++) {
306
 		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>'})
307
 		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>'})
308
	}
309
}
310

    
311
use openaire_admin;
312

    
313
dropDB();
314
createCollections();
315
initializeEntitiesPagesDivIds();
316
createAllCommunities();
317
addDefaultHtmlToHtmlPages();
(2-2/4)