Project

General

Profile

1
//version compatibility: 1.0.0-SNAPSHOT
2

    
3
use openaire_admin
4

    
5
drop = false;
6
if(drop) {
7
	db.dropDatabase()
8
}
9

    
10
if(db.stats().collections == 0) {
11

    
12
	db.createCollection("community")
13
	db.createCollection("divHelpContent")
14
	db.createCollection("divId")
15
	db.createCollection("entity")
16
	db.createCollection("page")
17
	db.createCollection("pageHelpContent")
18

    
19
	db.entity.save({"pid" : "publication", "name" : "Publication"})
20
	db.entity.save({"pid" : "dataset", "name" : "Research Data"})
21
	db.entity.save({"pid" : "software", "name" : "Software"})
22
	db.entity.save({"pid" : "project", "name" : "Project"})
23
	db.entity.save({"pid" : "organization", "name" : "Organization"})
24
	db.entity.save({"pid" : "datasource", "name" : "Content Provider"})
25

    
26
	publicationId = db.entity.find( { pid: "publication" }).map( function(entity) { return entity._id.str; } ).toString()
27
	datasetId = db.entity.find( { pid: "dataset" }).map( function(entity) { return entity._id.str; } ).toString()
28
	softwareId = db.entity.find( { pid: "software" }).map( function(entity) { return entity._id.str; } ).toString()
29
	projectId = db.entity.find( { pid: "project" }).map( function(entity) { return entity._id.str; } ).toString()
30
	organizationId = db.entity.find( { pid: "organization" }).map( function(entity) { return entity._id.str; } ).toString()
31
	datasourceId = db.entity.find( { pid: "datasource" }).map( function(entity) { return entity._id.str; } ).toString()
32

    
33
	db.page.save({"name" : "Publication Landing", "route" : "/search/publication", "type" : "search", "entities" : [publicationId]})
34
	db.page.save({"name" : "Research Data Landing", "route" : "/search/dataset", "type" : "search", "entities" : [datasetId]})
35
	db.page.save({"name" : "Software Landing", "route" : "/search/software", "type" : "search", "entities" : [softwareId]})
36
	db.page.save({"name" : "Project Landing", "route" : "/search/project", "type" : "search", "entities" : [projectId]})
37
	db.page.save({"name" : "Organization Landing", "route" : "/search/organization", "type" : "search", "entities" : [organizationId]})
38
	db.page.save({"name" : "Content Provider Landing", "route" : "/search/dataprovider", "type" : "search", "entities" : [datasourceId]})
39
	db.page.save({"name" : "Project Report", "route" : "/project-report", "type" : "search", "entities" : [projectId]})
40

    
41
	db.page.save({"name" : "Search Find", "type" : "search", "entities" : [publicationId, datasetId, softwareId, projectId, organizationId, datasourceId], "route" : "/search/find"})
42

    
43
	db.page.save({"name" : "Search Publications", "route" : "/search/find/publications", "type" : "search", "entities" : [publicationId]})
44
	db.page.save({"name" : "Search Research Data ", "route" : "/search/find/datasets", "type" : "search", "entities" : [datasetId]})
45
	db.page.save({"name" : "Search Software", "route" : "/search/find/software", "type" : "search", "entities" : [softwareId]})
46
	db.page.save({"name" : "Search Projects", "route" : "/search/find/projects", "type" : "search", "entities" : [projectId]})
47
	db.page.save({"name" : "Search Organizations", "route" : "/search/find/organizations", "type" : "search", "entities" : [organizationId]})
48
	db.page.save({"name" : "Search Content Providers", "route" : "/search/find/dataproviders", "type" : "search", "entities" : [datasourceId]})
49

    
50
	db.page.save({"name" : "Advanced Search Publications", "route" : "/search/advanced/publications", "type" : "search", "entities" : [publicationId]})
51
	db.page.save({"name" : "Advanced Search Research Data ", "route" : "/search/advanced/datasets", "type" : "search", "entities" : [datasetId]})
52
	db.page.save({"name" : "Advanced Search Software", "route" : "/search/advanced/software", "type" : "search", "entities" : [softwareId]})
53
	db.page.save({"name" : "Advanced Search Projects", "route" : "/search/advanced/projects", "type" : "search", "entities" : [projectId]})
54
	db.page.save({"name" : "Advanced Search Organizations", "route" : "/search/advanced/organizations", "type" : "search", "entities" : [organizationId]})
55
	db.page.save({"name" : "Advanced Search Content Providers", "route" : "/search/advanced/dataproviders", "type" : "search", "entities" : [datasourceId]})
56

    
57
	db.page.save({"name" : "Search Journals", "route" : "/search/journals", "type" : "search", "entities" : [datasourceId]})
58
	db.page.save({"name" : "Search Entity Registries", "route" : "/search/entity-registries", "type" : "search", "entities" : [datasourceId]})
59
	db.page.save({"name" : "Search Compatible Content Providers", "route" : "/search/content-providers", "type" : "search", "entities" : [datasourceId]})
60
	db.page.save({"name" : "Search Journals - Table view ", "route" : "/search/journals-table", "type" : "search", "entities" : [datasourceId]})
61
	db.page.save({"name" : "Search Entity Registries - Table view", "route" : "/search/entity-registries-table", "type" : "search", "entities" : [datasourceId]})
62
	db.page.save({"name" : "Search Compatible Content Providers -Table view", "route" : "/search/content-providers-table", "type" : "search", "entities" : [datasourceId]})
63

    
64
	db.page.save({"name" : "Deposit Publications", "route" : "/participate/deposit-publications", "type" : "share", "entities" : [publicationId]})
65
	db.page.save({"name" : "Deposit Research Data", "route" : "/participate/deposit-datasets", "type" : "share", "entities" : [datasetId]})
66
	db.page.save({"name" : "Deposit Publications Results", "route" : "/participate/deposit-publications-result", "type" : "share", "entities" : [publicationId]})
67
	db.page.save({"name" : "Deposit Research Data Results", "route" : "/participate/deposit-datasets-result", "type" : "share","entities" : [datasetId]})
68
	db.page.save({"name" : "Deposit Research Data subject result", "route" : "/participate/deposit-subject-result", "type" : "share", "entities" : [datasetId]})
69

    
70
	db.page.save({"name" : "Link", "route" : "/participate/claim", "type" : "link", "entities" : [projectId]})
71
	db.page.save({"name" : "Direct Link", "route" : "/participate/direct-claim", "type" : "link", "entities" : []})
72
	db.page.save({"name" : "My claims", "route" : "/myclaims", "type" : "link", "entities" : []})
73
	db.page.save({"name" : "Administrator claims", "route" : "/claims", "type" : "link", "entities" : []})
74
	db.page.save({"name" : "Claims Project Manager", "route" : "/claims-project-manager", "type" : "link", "entities" : []})
75

    
76
	publicationLanding = db.page.find( { route: "/search/publication" }).map( function(page) { return page._id.str; } ).toString()
77
	datasetLanding = db.page.find( { route: "/search/dataset" }).map( function(page) { return page._id.str; } ).toString()
78
	softwareLanding = db.page.find( { route: "/search/software" }).map( function(page) { return page._id.str; } ).toString()
79
	projectLanding = db.page.find( { route: "/search/project" }).map( function(page) { return page._id.str; } ).toString()
80
	organizationLanding = db.page.find( { route: "/search/organization" }).map( function(page) { return page._id.str; } ).toString()
81
	dataproviderLanding = db.page.find( { route: "/search/dataprovider" }).map( function(page) { return page._id.str; } ).toString()
82
	projectReport = db.page.find( { route: "/project-report" }).map( function(page) { return page._id.str; } ).toString()
83

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

    
86
	searchPublications = db.page.find( { route: "/search/find/publications" }).map( function(page) { return page._id.str; } ).toString()
87
	searchDatasets = db.page.find( { route: "/search/find/datasets" }).map( function(page) { return page._id.str; } ).toString()
88
	searchSoftware = db.page.find( { route: "/search/find/software" }).map( function(page) { return page._id.str; } ).toString()
89
	searchProject = db.page.find( { route: "/search/find/projects" }).map( function(page) { return page._id.str; } ).toString()
90
	searchOrganization = db.page.find( { route: "/search/find/organizations" }).map( function(page) { return page._id.str; } ).toString()
91
	searchDataprovider = db.page.find( { route: "/search/find/dataproviders" }).map( function(page) { return page._id.str; } ).toString()
92

    
93
	advancedSearchPublications = db.page.find( { route: "/search/advanced/publications" }).map( function(page) { return page._id.str; } ).toString()
94
	advancedSearchDatasets = db.page.find( { route: "/search/advanced/datasets" }).map( function(page) { return page._id.str; } ).toString()
95
	advancedSearchSoftware = db.page.find( { route: "/search/advanced/software" }).map( function(page) { return page._id.str; } ).toString()
96
	advancedSearchProject = db.page.find( { route: "/search/advanced/projects" }).map( function(page) { return page._id.str; } ).toString()
97
	advancedSearchOrganization = db.page.find( { route: "/search/advanced/organizations" }).map( function(page) { return page._id.str; } ).toString()
98
	advancedSearchDataprovider = db.page.find( { route: "/search/advanced/dataproviders" }).map( function(page) { return page._id.str; } ).toString()
99

    
100
	searchJournals = db.page.find( { route: "/search/journals" }).map( function(page) { return page._id.str; } ).toString()
101
	searchEntityRegistries = db.page.find( { route: "/search/entity-registries" }).map( function(page) { return page._id.str; } ).toString()
102
	searchContentProviders = db.page.find( { route: "/search/content-providers" }).map( function(page) { return page._id.str; } ).toString()
103
	searchJournalsTable = db.page.find( { route: "/search/journals-table" }).map( function(page) { return page._id.str; } ).toString()
104
	searchEntityRegistriesTable = db.page.find( { route: "/search/entity-registries-table" }).map( function(page) { return page._id.str; } ).toString()
105
	searchContentProvidersTable = db.page.find( { route: "/search/content-providers-table" }).map( function(page) { return page._id.str; } ).toString()
106

    
107
	depositPublications = db.page.find( { route: "/participate/deposit-publications" }).map( function(page) { return page._id.str; } ).toString()
108
	depositDatasets = db.page.find( { route: "/participate/deposit-datasets" }).map( function(page) { return page._id.str; } ).toString()
109
	depositPublicationsResults = db.page.find( { route: "/participate/deposit-publications-result" }).map( function(page) { return page._id.str; } ).toString()
110
	depositDatasetsResults = db.page.find( { route: "/participate/deposit-datasets-result" }).map( function(page) { return page._id.str; } ).toString()
111
	depositDatasetSybjectResults = db.page.find( { route: "/participate/deposit-subject-result" }).map( function(page) { return page._id.str; } ).toString()
112

    
113
	link = db.page.find( { route: "/participate/claim" }).map( function(page) { return page._id.str; } ).toString()
114
	directLink = db.page.find( { route: "/participate/direct-claim" }).map( function(page) { return page._id.str; } ).toString()
115
	myClaims = db.page.find( { route: "/myclaims" }).map( function(page) { return page._id.str; } ).toString()
116
	administratorClaims = db.page.find( { route: "/claims" }).map( function(page) { return page._id.str; } ).toString()
117
	claimsProjectManager = db.page.find( { route: "/claims-project-manager" }).map( function(page) { return page._id.str; } ).toString()
118

    
119
	var community_pages = {}
120
	community_pages[publicationLanding] = true;
121
	community_pages[datasetLanding] = true;
122
	community_pages[softwareLanding] = true;
123
	community_pages[projectLanding] = true;
124
	community_pages[organizationLanding] = true;
125
	community_pages[dataproviderLanding] = true;
126
	community_pages[projectReport] = true;
127
	community_pages[searchFind] = true;
128
	community_pages[searchPublications] = true;
129
	community_pages[searchDatasets] = true;
130
	community_pages[searchSoftware] = true;
131
	community_pages[searchProject] = true;
132
	community_pages[searchOrganization] = true;	
133
	community_pages[searchDataprovider] = true;
134
	community_pages[advancedSearchPublications] = true;
135
	community_pages[advancedSearchDatasets] = true; 
136
	community_pages[advancedSearchSoftware] = true;
137
	community_pages[advancedSearchProject] = true;
138
	community_pages[advancedSearchOrganization] = true;
139
	community_pages[advancedSearchDataprovider] = true;
140
	community_pages[searchJournals] = true;
141
	community_pages[searchEntityRegistries] = true; 
142
	community_pages[searchContentProviders] = true;
143
	community_pages[searchJournalsTable] = true;
144
	community_pages[searchEntityRegistriesTable] = true;
145
	community_pages[searchContentProvidersTable] = true; 
146
	community_pages[depositPublications] = true;	
147
	community_pages[depositDatasets] = true;
148
	community_pages[depositPublicationsResults] = true;
149
	community_pages[depositDatasetsResults] = true;
150
	community_pages[depositDatasetSybjectResults] = true;
151
	community_pages[link] = true;
152
	community_pages[directLink] = true;
153
	community_pages[myClaims] = true;
154
	community_pages[administratorClaims] = true;
155
	community_pages[claimsProjectManager] = true;
156

    
157
	var community_entities = {}
158
	community_entities[publicationId] = true;
159
	community_entities[datasetId] = true;
160
	community_entities[softwareId] = true;
161
	community_entities[projectId] = true;
162
	community_entities[organizationId] = true;
163
	community_entities[datasourceId] = true;
164

    
165
	db.community.save({	"name" : "OpenAIRE", "pid" : "openaire", "pages" : community_pages, "entities" : community_entities})
166

    
167
	openaireCommunity = db.community.find( { pid: "openaire" }).map( function(community) { return community._id.str; } ).toString()
168

    
169
	db.divId.save({ "name" : "link-context-form", "pages" : [link, directLink], "community" : openaireCommunity})
170
	db.divId.save({ "name" : "link-project-form", "pages" : [link, directLink], "community" : openaireCommunity})
171
	db.divId.save({ "name" : "link-result-form", "pages" : [link, directLink], "community" : openaireCommunity})
172
	db.divId.save({ "name" : "link-result-bulk", "pages" : [link], "community" : openaireCommunity})
173
	db.divId.save({ "name" : "link-metadata", "pages" : [link, directLink], "community" : openaireCommunity})
174
}
(1-1/2)