Revision 51561
Added by Myrto Koukouli about 6 years ago
modules/uoa-repository-dashboard-gui/trunk/app/pages/sources/sources-register/sr-data.component.html | ||
---|---|---|
4 | 4 |
<h1 class="uk-h2">Register your datasource</h1> |
5 | 5 |
|
6 | 6 |
<!-- TOP HELP CONTENT --> |
7 |
<!-- <help-content #topHelperContent [position]="'top'"
|
|
7 |
<help-content #topHelperContent [position]="'top'" |
|
8 | 8 |
[ngClass]="topHelperContent.isPresent()?'uk-margin-medium-top uk-margin-medium-bottom':'clear-style'"> |
9 |
</help-content>-->
|
|
9 |
</help-content> |
|
10 | 10 |
|
11 | 11 |
<div class="uk-container uk-margin-medium-top uk-margin-medium-bottom"> |
12 | 12 |
<div class="uk-grid"> |
13 | 13 |
|
14 | 14 |
<!-- LEFT HELP CONTENT --> |
15 |
<!-- <aside-help-content #leftHelperContent [position]="'left'"
|
|
15 |
<aside-help-content #leftHelperContent [position]="'left'" |
|
16 | 16 |
[ngClass]="leftHelperContent.isPresent()?'tm-sidebar uk-width-1-4@m uk-first-column':'clear-style'"> |
17 |
</aside-help-content>-->
|
|
17 |
</aside-help-content> |
|
18 | 18 |
|
19 | 19 |
<!-- MIDDLE --> |
20 | 20 |
<div class=" uk-width-expand@m"> |
... | ... | |
135 | 135 |
</div> |
136 | 136 |
</div> |
137 | 137 |
|
138 |
<!-- *** OLD HTML *** |
|
139 |
|
|
140 |
<div class="uk-grid uk-grid-stack"> |
|
141 |
<div class="uk-width-expand@m uk-first-column"> |
|
142 |
<div class="uk-margin-medium-bottom"> |
|
143 |
<h1 class="uk-article-title">Register your datasource</h1> |
|
144 |
</div> |
|
145 |
<div class="wizard"> |
|
146 |
<div class="wizardBreadcrumbs"> |
|
147 |
<div class="steps clearfix"> |
|
148 |
<div class="step active"> |
|
149 |
<div> |
|
150 |
Select repository |
|
151 |
<span></span> |
|
152 |
</div> |
|
153 |
</div> |
|
154 |
<div class="step {{step2}}"> |
|
155 |
<div> |
|
156 |
Enter information |
|
157 |
<span></span> |
|
158 |
</div> |
|
159 |
</div> |
|
160 |
<div class="step {{step3}}"> |
|
161 |
<div> |
|
162 |
Add interfaces |
|
163 |
<span></span> |
|
164 |
</div> |
|
165 |
</div> |
|
166 |
<div class="step {{step4}}"> |
|
167 |
<div> |
|
168 |
Finish |
|
169 |
<span></span> |
|
170 |
</div> |
|
171 |
</div> |
|
172 |
</div> |
|
173 |
</div> |
|
174 |
<div class="content"> |
|
175 |
<div> |
|
176 |
<div class="animated fadeInRight stepContent"> |
|
177 |
<div> |
|
178 |
<register-datasource-shareable *ngIf="showRepositories" |
|
179 |
#datasourcesByCountry |
|
180 |
[mode]="'re3data'" |
|
181 |
(emitRepoId)="getRepoId($event)"></register-datasource-shareable> |
|
182 |
|
|
183 |
<datasource-update-form *ngIf="showForm && repo" |
|
184 |
#updateDatasource |
|
185 |
[selectedRepo]="repo"></datasource-update-form> |
|
186 |
|
|
187 |
<div *ngIf="loadingMessage" class="loading-big"> |
|
188 |
<div class="loader-big" style="text-align: center; padding-top: 170px; color: rgb(47, 64, 80); font-weight: bold;"> |
|
189 |
{{ loadingMessage }} |
|
190 |
</div> |
|
191 |
<div class="whiteFilm"></div> |
|
192 |
</div> |
|
193 |
<div *ngIf="errorMessage" class="uk-alert uk-alert-danger">{{ errorMessage }}</div> |
|
194 |
<div *ngIf="showInterfaces && repoInterfaces"> |
|
195 |
<form [formGroup]="group"> |
|
196 |
<form-repeat [component]="updateDatasourceInterfaces" |
|
197 |
[parentGroup]="group" |
|
198 |
[description]="interfaceFormDesc" |
|
199 |
[name]="'repository-interfaces'" |
|
200 |
[data]="repoInterfaces" |
|
201 |
[otherData]="repo"> |
|
202 |
</form-repeat> |
|
203 |
</form> |
|
204 |
</div> |
|
205 |
<div *ngIf="showFinish" class="row openAIRECompliantLogoDownload"> |
|
206 |
<div class="col-lg-12"> |
|
207 |
<div class="col-md-12"> |
|
208 |
<div class="gwt-HTML"> |
|
209 |
<div class="openAIRECompliantLogo"> |
|
210 |
<h2 class="openAIRECompliantLogoMessage"> |
|
211 |
Congratulations! Your repository was successfully registered in OpenAIRE. You can download this logo to use in your site. |
|
212 |
</h2> |
|
213 |
<img src="assets/imgs/3_0ValidatedLogo.png" alt="OpenAireCompliant"> |
|
214 |
</div> |
|
215 |
</div> |
|
216 |
<a> |
|
217 |
Download |
|
218 |
<i class="fa fa-download" style=""></i> |
|
219 |
</a> |
|
220 |
</div> |
|
221 |
</div> |
|
222 |
</div> |
|
223 |
</div> |
|
224 |
</div> |
|
225 |
</div> |
|
226 |
</div> |
|
227 |
<div class="wizardActions"> |
|
228 |
<button *ngIf="!showRepositories" class="uk-button uk-button-grey-light" type="button" (click)="moveBackAStep()"> |
|
229 |
<i class="fa fa-angle-double-left"></i> |
|
230 |
Back |
|
231 |
</button> |
|
232 |
<button *ngIf="!showFinish" class="uk-button uk-button-grey-light" type="button" (click)="moveAStep()"> |
|
233 |
Next |
|
234 |
<i class="fa fa-angle-double-right"></i> |
|
235 |
</button> |
|
236 |
</div> |
|
237 |
</div> |
|
238 |
</div> |
|
239 |
<div class="tm-sidebar uk-width-1-4@m"> |
|
240 |
<div> |
|
241 |
<div class="uk-card uk-card-body uk-card-default sidemenu"> |
|
242 |
<h3 class="el-title uk-h3 uk-heading-bullet">Info</h3> |
|
243 |
<p class="small"> |
|
244 |
Use the form on the right to add your repository or journal in OpenAIRE. If you want to find more information about this process |
|
245 |
<!– TARGET FILE MISSING! jsps/manuals/user-manual.pdf –> |
|
246 |
<a target="_blank" href="#">click here</a> |
|
247 |
. |
|
248 |
</p> |
|
249 |
<div class="uk-alert uk-alert-default small"> |
|
250 |
The official repository/journal administrator (his/her email address being retrieved from the OAI-PMH verb |
|
251 |
<b>Identify</b> |
|
252 |
) will be contacted and informed about registration request. So please make sure that you are either this person or have access to the email address, or that you have notified them. |
|
253 |
</div> |
|
254 |
<p class="small"> |
|
255 |
For any problems or questions please contact the |
|
256 |
<a class="external" target="_blank" href="https://www.openaire.eu/support/helpdesk" > |
|
257 |
OpenAIRE helpdesk |
|
258 |
</a> |
|
259 |
. |
|
260 |
</p> |
|
261 |
</div> |
|
262 |
</div> |
|
263 |
</div> |
|
264 |
</div> |
|
265 |
--> |
modules/uoa-repository-dashboard-gui/trunk/app/pages/sources/sources-forms/datasource-interface-form.component.ts | ||
---|---|---|
62 | 62 |
if (this.data && this.data.length) { |
63 | 63 |
this.currentInterface = this.data[0]; |
64 | 64 |
this.patchData.next({ |
65 |
baseUrl: this.data[0].baseUrl,
|
|
65 |
baseUrl: decodeURIComponent(this.data[0].baseUrl),
|
|
66 | 66 |
selectValidationSet: '', |
67 | 67 |
customValidationSet: '', |
68 | 68 |
compatibilityLevel:this.data[0].desiredCompatibilityLevel |
... | ... | |
190 | 190 |
this.loadingMessage = formSubmitting; |
191 | 191 |
this.currentInterface.baseUrl = baseUrl; |
192 | 192 |
this.currentInterface.accessSet = valset; |
193 |
this.currentInterface.accessParams['set'] = valset; |
|
193 | 194 |
this.currentInterface.desiredCompatibilityLevel = compLvl; |
194 | 195 |
this.currentInterface.compliance = compLvl; |
195 | 196 |
this.currentInterface.typology = this.currentRepository.datasourceClass; |
... | ... | |
220 | 221 |
this.currentInterface = new RepositoryInterface(); |
221 | 222 |
this.currentInterface.baseUrl = encodeURIComponent(baseUrl); |
222 | 223 |
this.currentInterface.accessSet = valset; |
224 |
this.currentInterface.accessParams = {'set': valset}; |
|
223 | 225 |
this.currentInterface.desiredCompatibilityLevel = compLvl; |
224 | 226 |
this.currentInterface.compliance = compLvl; |
225 | 227 |
this.currentInterface.typology = this.currentRepository.datasourceClass; |
modules/uoa-repository-dashboard-gui/trunk/app/pages/sources/sources-forms/datasource-update-form.component.html | ||
---|---|---|
12 | 12 |
Basic information |
13 | 13 |
</h4> |
14 | 14 |
</div> |
15 |
<form-inline [description]="softwarePlatformDesc"> |
|
15 |
<form-inline [description]="softwarePlatformDesc" [valid]="updateGroup.get('softwarePlatform').valid || !formSubmitted">
|
|
16 | 16 |
<select formControlName="softwarePlatform" class="form-control"> |
17 | 17 |
<!-- <option value="" selected>[Other] (enter name below)</option> RESTORE AFTER getTypologies begins to work--> |
18 | 18 |
<option *ngFor="let platform of typologies" value="{{ platform.value }}">{{ platform.name }}</option> |
19 | 19 |
</select> |
20 | 20 |
</form-inline> |
21 |
<form-inline [description]="platformNameDesc"> |
|
21 |
<form-inline [description]="platformNameDesc" [valid]="updateGroup.get('platformName').valid || !formSubmitted">
|
|
22 | 22 |
<span *ngIf="updateGroup.get('platformName').touched && updateGroup.get('platformName').value" |
23 | 23 |
class="help-block inline" |
24 |
style="margin-top: 0px; margin-bottom: 0px; padding-left: 10px;">This value will be used as the platform for your repository</span>
|
|
24 |
style="margin-top: 0px; margin-bottom: 0px; ">This value will be used as the platform for your repository</span> |
|
25 | 25 |
<input formControlName="platformName" class="form-control" style="" type="text"> |
26 | 26 |
</form-inline> |
27 | 27 |
<form-inline [description]="officialNameDesc" > |
28 | 28 |
<input formControlName="officialName" class="form-control" style="" type="text"> |
29 | 29 |
</form-inline> |
30 | 30 |
<div *ngIf="selectedRepo.datasourceType == 'journal'"> |
31 |
<form-inline [description]="issnDesc" [valid]="updateGroup.get('issn').valid"> |
|
31 |
<form-inline [description]="issnDesc" [valid]="updateGroup.get('issn').valid || !formSubmitted">
|
|
32 | 32 |
<span *ngIf="updateGroup.get('issn').invalid && updateGroup.get('issn').touched && updateGroup.get('issn').dirty" |
33 |
class="help-block inline" |
|
34 |
style="margin-top: 0px; margin-bottom: 0px; padding-left: 10px;">Issn needs to be of the form: "1111-1111"</span>
|
|
33 |
class="help-block inline uk-text-danger"
|
|
34 |
style="margin-top: 0px; margin-bottom: 0px; ">Issn needs to be of the form: "1111-1111"</span> |
|
35 | 35 |
<input formControlName="issn" class="form-control" type="text" (focus)="updateGroup.get('issn').markAsUntouched()" (blur)="updateGroup.get('issn').updateValueAndValidity()"> |
36 | 36 |
</form-inline> |
37 | 37 |
<form-inline [description]="eissnDesc" [valid]="updateGroup.get('eissn').valid"> |
38 | 38 |
<span *ngIf="updateGroup.get('eissn').invalid && updateGroup.get('eissn').touched && updateGroup.get('eissn').dirty" |
39 |
class="help-block inline" |
|
40 |
style="margin-top: 0px; margin-bottom: 0px; padding-left: 10px;">Eissn needs to be of the form: "1111-1111"</span>
|
|
39 |
class="help-block inline uk-text-danger"
|
|
40 |
style="margin-top: 0px; margin-bottom: 0px; ">Eissn needs to be of the form: "1111-1111"</span> |
|
41 | 41 |
<input formControlName="eissn"class="form-control" type="text" (focus)="updateGroup.get('eissn').markAsUntouched()" (blur)="updateGroup.get('eissn').updateValueAndValidity()"> |
42 | 42 |
</form-inline> |
43 | 43 |
<form-inline [description]="lissnDesc" [valid]="updateGroup.get('lissn').valid"> |
44 | 44 |
<span *ngIf="updateGroup.get('lissn').invalid && updateGroup.get('lissn').touched && updateGroup.get('lissn').dirty" |
45 |
class="help-block inline" |
|
46 |
style="margin-top: 0px; margin-bottom: 0px; padding-left: 10px;">Lissn needs to be of the form: "1111-1111"</span>
|
|
45 |
class="help-block inline uk-text-danger"
|
|
46 |
style="margin-top: 0px; margin-bottom: 0px;">Lissn needs to be of the form: "1111-1111"</span> |
|
47 | 47 |
<input formControlName="lissn"class="form-control" type="text" (focus)="updateGroup.get('lissn').markAsUntouched()" (blur)="updateGroup.get('lissn').updateValueAndValidity()"> |
48 | 48 |
</form-inline> |
49 | 49 |
</div> |
50 |
<form-inline [description]="repoDescriptionDesc"> |
|
50 |
<form-inline [description]="repoDescriptionDesc" [valid]="updateGroup.get('repoDescription').valid || !formSubmitted">
|
|
51 | 51 |
<textarea formControlName="repoDescription" class="form-control"></textarea> |
52 | 52 |
</form-inline> |
53 |
<form-inline [description]="countryDesc"> |
|
53 |
<form-inline [description]="countryDesc" [valid]="updateGroup.get('country') || !formSubmitted">
|
|
54 | 54 |
<select formControlName="country" class="form-control"> |
55 | 55 |
<option value="">-- none selected --</option> |
56 | 56 |
<option *ngFor="let country of countries" value="{{country.code}}" title="{{country.name}}">{{ country.name }}</option> |
57 | 57 |
</select> |
58 | 58 |
</form-inline> |
59 |
<form-inline [description]="longtitudeDesc" [valid]="updateGroup.get('longtitude').valid"> |
|
59 |
<form-inline [description]="longtitudeDesc" [valid]="updateGroup.get('longtitude').valid || !formSubmitted">
|
|
60 | 60 |
<span *ngIf="updateGroup.get('longtitude').invalid && updateGroup.get('longtitude').touched && updateGroup.get('longtitude').dirty" |
61 | 61 |
class="help-block inline" |
62 |
style="margin-top: 0px; margin-bottom: 0px; padding-left: 10px;">Invalid Longtitude</span>
|
|
62 |
style="margin-top: 0px; margin-bottom: 0px; ">Invalid Longtitude</span> |
|
63 | 63 |
<input formControlName="longtitude" class="form-control" type="number" step="0.05" (focus)="updateGroup.get('longtitude').markAsUntouched()" (blur)="updateGroup.get('longtitude').updateValueAndValidity()"> |
64 | 64 |
</form-inline> |
65 |
<form-inline [description]="latitudeDesc" [valid]="updateGroup.get('latitude').valid"> |
|
65 |
<form-inline [description]="latitudeDesc" [valid]="updateGroup.get('latitude').valid || !formSubmitted">
|
|
66 | 66 |
<span *ngIf="updateGroup.get('latitude').invalid && updateGroup.get('latitude').touched && updateGroup.get('latitude').dirty" |
67 | 67 |
class="help-block inline" |
68 |
style="margin-top: 0px; margin-bottom: 0px; padding-left: 10px;">Invalid Latitude</span>
|
|
68 |
style="margin-top: 0px; margin-bottom: 0px; ">Invalid Latitude</span> |
|
69 | 69 |
<input formControlName="latitude" class="form-control" type="number" step="0.05" (focus)="updateGroup.get('latitude').markAsUntouched()" (blur)="updateGroup.get('latitude').updateValueAndValidity()"> |
70 | 70 |
</form-inline> |
71 |
<form-inline [description]="websiteUrlDesc"> |
|
72 |
<input formControlName="websiteUrl" class="form-control" type="text"> |
|
71 |
<form-inline [description]="websiteUrlDesc" [valid]="updateGroup.get('websiteUrl').valid || !formSubmitted"> |
|
72 |
<span *ngIf="updateGroup.get('websiteUrl').invalid && updateGroup.get('websiteUrl').touched && updateGroup.get('websiteUrl').dirty" |
|
73 |
class="help-block inline uk-text-danger" |
|
74 |
style="margin-top: 0px; margin-bottom: 0px; ">You need to enter a valid url</span> |
|
75 |
<input formControlName="websiteUrl" class="form-control" type="text" |
|
76 |
(focus)="updateGroup.get('websiteUrl').markAsUntouched()" |
|
77 |
(blur)="updateGroup.get('websiteUrl').updateValueAndValidity()"> |
|
73 | 78 |
</form-inline> |
74 |
<form-inline [description]="institutionNameDesc"> |
|
79 |
<form-inline [description]="institutionNameDesc" [valid]="updateGroup.get('institutionName').valid || !formSubmitted">
|
|
75 | 80 |
<input formControlName="institutionName" class="form-control" type="text"> |
76 | 81 |
</form-inline> |
77 | 82 |
<h4 class="uk-h4 uk-text-primary uk-scrollspy-inview uk-animation-slide-top-medium" |
78 | 83 |
uk-scrollspy-class="">Extra Information</h4> |
79 |
<form-inline [description]="englishNameDesc" [valid]="updateGroup.get('englishName').valid"> |
|
84 |
<form-inline [description]="englishNameDesc" [valid]="updateGroup.get('englishName').valid || !formSubmitted">
|
|
80 | 85 |
<input formControlName="englishName" class="form-control" type="text"> |
81 | 86 |
</form-inline> |
82 | 87 |
<form-inline [description]="logoUrlDesc" [valid]="updateGroup.get('logoUrl').valid"> |
83 |
<input formControlName="logoUrl" class="form-control" type="text"> |
|
88 |
<span *ngIf="updateGroup.get('logoUrl').invalid && updateGroup.get('logoUrl').touched && updateGroup.get('logoUrl').dirty" |
|
89 |
class="help-block inline uk-text-danger" |
|
90 |
style="margin-top: 0px; margin-bottom: 0px; ">The url you entered is not valid</span> |
|
91 |
<input formControlName="logoUrl" class="form-control" type="text" |
|
92 |
(focus)="updateGroup.get('logoUrl').markAsUntouched()" |
|
93 |
(blur)="updateGroup.get('logoUrl').updateValueAndValidity()"> |
|
84 | 94 |
<div class="comment fontItalic"> |
85 | 95 |
Please make sure that the maximum size of the uploaded image is width=360px, height=240px |
86 | 96 |
</div> |
87 | 97 |
</form-inline> |
88 |
<form-inline [description]="timezoneDesc" [valid]="updateGroup.get('timezone').valid"> |
|
98 |
<form-inline [description]="timezoneDesc" [valid]="updateGroup.get('timezone').valid || !formSubmitted">
|
|
89 | 99 |
<select formControlName="timezone" class="form-control"> |
90 | 100 |
<option value="">-- none selected --</option> |
91 | 101 |
<option *ngFor="let timezone of timezones" value="{{ timezone.offset }}">{{ timezone.name }}</option> |
92 | 102 |
</select> |
93 | 103 |
</form-inline> |
94 |
<form-inline [description]="datasourceTypeDesc" [valid]="updateGroup.get('datasourceType').valid"> |
|
104 |
<form-inline [description]="datasourceTypeDesc" [valid]="updateGroup.get('datasourceType').valid || !formSubmitted">
|
|
95 | 105 |
<select formControlName="datasourceType" class="form-control"> |
96 | 106 |
<option value="">-- none selected --</option> |
97 | 107 |
<option *ngFor="let key of classCodes" value="{{key}}">{{ datasourceClasses[key] }}</option> |
... | ... | |
99 | 109 |
</form-inline> |
100 | 110 |
<h4 class="uk-h4 uk-text-primary uk-scrollspy-inview uk-animation-slide-top-medium" |
101 | 111 |
uk-scrollspy-class="">Administrator & contact information</h4> |
102 |
<form-inline [description]="adminEmailDesc" [valid]="updateGroup.get('adminEmail').valid"> |
|
112 |
<form-inline [description]="adminEmailDesc" [valid]="updateGroup.get('adminEmail').valid || !formSubmitted">
|
|
103 | 113 |
<span *ngIf="updateGroup.get('adminEmail').invalid && updateGroup.get('adminEmail').touched && updateGroup.get('adminEmail').dirty" |
104 | 114 |
class="help-block inline" |
105 |
style="margin-top: 0px; margin-bottom: 0px; padding-left: 10px;">You need to enter a valid email address</span>
|
|
115 |
style="margin-top: 0px; margin-bottom: 0px; ">You need to enter a valid email address</span> |
|
106 | 116 |
<input formControlName="adminEmail" class="form-control" type="text" (focus)="updateGroup.get('adminEmail').markAsUntouched()" (blur)="updateGroup.get('adminEmail').updateValueAndValidity()"> |
107 | 117 |
</form-inline> |
108 | 118 |
<div *ngIf="showButton" class="form-group"> |
modules/uoa-repository-dashboard-gui/trunk/app/pages/sources/sources-forms/datasource-create-form.component.html | ||
---|---|---|
12 | 12 |
</div> |
13 | 13 |
<div *ngIf="errorMessage" class="uk-alert uk-alert-danger">{{ errorMessage }}</div> |
14 | 14 |
<div *ngIf="successMessage" class="uk-alert uk-alert-success">{{ successMessage }}</div> |
15 |
<form-inline [description]="softwarePlatformDesc" [valid]="group.get('softwarePlatform').valid"> |
|
15 |
<form-inline [description]="softwarePlatformDesc" [valid]="group.get('softwarePlatform').valid || !formSubmitted">
|
|
16 | 16 |
<select formControlName="softwarePlatform" class="form-control"> |
17 | 17 |
<option *ngFor="let platform of typologies" value="{{ platform.value }}">{{ platform.name }}</option> |
18 | 18 |
</select> |
19 | 19 |
</form-inline> |
20 |
<form-inline [description]="officialNameDesc" [valid]="group.get('officialName').valid"> |
|
20 |
<form-inline [description]="officialNameDesc" [valid]="group.get('officialName').valid || !formSubmitted">
|
|
21 | 21 |
<input formControlName="officialName" class="form-control" type="text"> |
22 | 22 |
</form-inline> |
23 | 23 |
<div *ngIf="mode == 'journal'"> |
24 |
<form-inline [description]="issnDesc" [valid]="group.get('issn').valid"> |
|
24 |
<form-inline [description]="issnDesc" [valid]="group.get('issn').valid || !formSubmitted">
|
|
25 | 25 |
<span *ngIf="group.get('issn').invalid && group.get('issn').touched && group.get('issn').dirty" |
26 |
class="help-block inline" |
|
26 |
class="help-block inline uk-text-danger"
|
|
27 | 27 |
style="margin-top: 0px; margin-bottom: 0px; padding-left: 10px;">Issn needs to be of the form: "1111-1111"</span> |
28 | 28 |
<input formControlName="issn" class="form-control" type="text" (focus)="group.get('issn').markAsUntouched()" (blur)="group.get('issn').updateValueAndValidity()"> |
29 | 29 |
</form-inline> |
30 | 30 |
<form-inline [description]="eissnDesc" [valid]="group.get('eissn').valid"> |
31 | 31 |
<span *ngIf="group.get('eissn').invalid && group.get('eissn').touched && group.get('eissn').dirty" |
32 |
class="help-block inline" |
|
32 |
class="help-block inline uk-text-danger"
|
|
33 | 33 |
style="margin-top: 0px; margin-bottom: 0px; padding-left: 10px;">Eissn needs to be of the form: "1111-1111"</span> |
34 | 34 |
<input formControlName="eissn"class="form-control" type="text" (focus)="group.get('eissn').markAsUntouched()" (blur)="group.get('eissn').updateValueAndValidity()"> |
35 | 35 |
</form-inline> |
36 | 36 |
<form-inline [description]="lissnDesc" [valid]="group.get('lissn').valid"> |
37 | 37 |
<span *ngIf="group.get('lissn').invalid && group.get('lissn').touched && group.get('lissn').dirty" |
38 |
class="help-block inline" |
|
38 |
class="help-block inline uk-text-danger"
|
|
39 | 39 |
style="margin-top: 0px; margin-bottom: 0px; padding-left: 10px;">Lissn needs to be of the form: "1111-1111"</span> |
40 | 40 |
<input formControlName="lissn"class="form-control" type="text" (focus)="group.get('lissn').markAsUntouched()" (blur)="group.get('lissn').updateValueAndValidity()"> |
41 | 41 |
</form-inline> |
42 | 42 |
</div> |
43 |
<form-inline [description]="repoDescriptionDesc" [valid]="group.get('repoDescription').valid"> |
|
43 |
<form-inline [description]="repoDescriptionDesc" [valid]="group.get('repoDescription').valid || !formSubmitted">
|
|
44 | 44 |
<textarea formControlName="repoDescription" class="form-control"></textarea> |
45 | 45 |
</form-inline> |
46 |
<form-inline [description]="countryDesc" [valid]="group.get('country').valid"> |
|
46 |
<form-inline [description]="countryDesc" [valid]="group.get('country').valid || !formSubmitted">
|
|
47 | 47 |
<select formControlName="country" class="form-control"> |
48 | 48 |
<option value="">-- none selected --</option> |
49 | 49 |
<option *ngFor="let country of countries" value="{{ country.code }}">{{ country.name }}</option> |
50 | 50 |
</select> |
51 | 51 |
</form-inline> |
52 |
<form-inline [description]="longtitudeDesc" [valid]="group.get('longtitude').valid"> |
|
52 |
<form-inline [description]="longtitudeDesc" [valid]="group.get('longtitude').valid || !formSubmitted">
|
|
53 | 53 |
<span *ngIf="group.get('longtitude').invalid && group.get('longtitude').touched && group.get('longtitude').dirty" |
54 | 54 |
class="help-block inline" |
55 |
style="margin-top: 0px; margin-bottom: 0px; padding-left: 10px;">Invalid Longtitude</span> |
|
56 |
<input formControlName="longtitude" class="form-control" type="text" (focus)="group.get('longtitude').markAsUntouched()" (blur)="group.get('longtitude').updateValueAndValidity()"> |
|
55 |
style="margin-top: 0px; margin-bottom: 0px; ">Invalid Longtitude</span> |
|
56 |
<input formControlName="longtitude" class="form-control" type="text" |
|
57 |
(focus)="group.get('longtitude').markAsUntouched()" |
|
58 |
(blur)="group.get('longtitude').updateValueAndValidity()"> |
|
57 | 59 |
</form-inline> |
58 |
<form-inline [description]="latitudeDesc" [valid]="group.get('latitude').valid"> |
|
60 |
<form-inline [description]="latitudeDesc" [valid]="group.get('latitude').valid || !formSubmitted">
|
|
59 | 61 |
<span *ngIf="group.get('latitude').invalid && group.get('latitude').touched && group.get('latitude').dirty" |
60 | 62 |
class="help-block inline" |
61 |
style="margin-top: 0px; margin-bottom: 0px; padding-left: 10px;">Invalid Latitude</span>
|
|
63 |
style="margin-top: 0px; margin-bottom: 0px; ">Invalid Latitude</span> |
|
62 | 64 |
<input formControlName="latitude" class="form-control" type="text" (focus)="group.get('latitude').markAsUntouched()" (blur)="group.get('latitude').updateValueAndValidity()"> |
63 | 65 |
</form-inline> |
64 |
<form-inline [description]="websiteUrlDesc" [valid]="group.get('websiteUrl').valid"> |
|
65 |
<input formControlName="websiteUrl" class="form-control" type="text"> |
|
66 |
<form-inline [description]="websiteUrlDesc" [valid]="group.get('websiteUrl').valid || !formSubmitted"> |
|
67 |
<span *ngIf="group.get('websiteUrl').invalid && group.get('websiteUrl').touched && group.get('websiteUrl').dirty" |
|
68 |
class="help-block inline uk-text-danger" |
|
69 |
style="margin-top: 0px; margin-bottom: 0px; ">You need to enter a valid url</span> |
|
70 |
<input formControlName="websiteUrl" class="form-control" type="text" |
|
71 |
(focus)="group.get('websiteUrl').markAsUntouched()" |
|
72 |
(blur)="group.get('websiteUrl').updateValueAndValidity()"> |
|
66 | 73 |
</form-inline> |
67 |
<form-inline [description]="institutionNameDesc" [valid]="group.get('institutionName').valid"> |
|
74 |
<form-inline [description]="institutionNameDesc" [valid]="group.get('institutionName').valid || !formSubmitted">
|
|
68 | 75 |
<input formControlName="institutionName" class="form-control" type="text"> |
69 | 76 |
</form-inline> |
70 | 77 |
<h4 class="uk-h4 uk-text-primary uk-scrollspy-inview uk-animation-slide-top-medium" |
71 | 78 |
uk-scrollspy-class="">Extra Information</h4> |
72 |
<form-inline [description]="englishNameDesc" [valid]="group.get('englishName').valid"> |
|
79 |
<form-inline [description]="englishNameDesc" [valid]="group.get('englishName').valid || !formSubmitted">
|
|
73 | 80 |
<input formControlName="englishName" class="form-control" type="text" > |
74 | 81 |
</form-inline> |
75 | 82 |
<form-inline [description]="logoUrlDesc" [valid]="group.get('logoUrl').valid"> |
76 |
<input formControlName="logoUrl" class="form-control" type="text"> |
|
83 |
<span *ngIf="group.get('logoUrl').invalid && group.get('logoUrl').touched && group.get('logoUrl').dirty" |
|
84 |
class="help-block inline uk-text-danger" |
|
85 |
style="margin-top: 0px; margin-bottom: 0px; ">The url you entered is not valid</span> |
|
86 |
<input formControlName="logoUrl" class="form-control" type="text" |
|
87 |
(focus)="group.get('logoUrl').markAsUntouched()" |
|
88 |
(blur)="group.get('logoUrl').updateValueAndValidity()"> |
|
77 | 89 |
<div class="comment fontItalic"> |
78 | 90 |
Please make sure that the maximum size of the uploaded image is width=360px, height=240px |
79 | 91 |
</div> |
80 | 92 |
</form-inline> |
81 |
<form-inline [description]="timezoneDesc" [valid]="group.get('timezone').valid"> |
|
93 |
<form-inline [description]="timezoneDesc" [valid]="group.get('timezone').valid || !formSubmitted">
|
|
82 | 94 |
<select formControlName="timezone" class="form-control"> |
83 | 95 |
<option value="">-- none selected --</option> |
84 | 96 |
<option *ngFor="let timezone of timezones" value="{{ timezone.offset }}">{{ timezone.name }}</option> |
85 | 97 |
</select> |
86 | 98 |
</form-inline> |
87 |
<form-inline [description]="datasourceTypeDesc" [valid]="group.get('datasourceType').valid"> |
|
99 |
<form-inline [description]="datasourceTypeDesc" [valid]="group.get('datasourceType').valid || !formSubmitted">
|
|
88 | 100 |
<select formControlName="datasourceType" class="form-control"> |
89 | 101 |
<option value="">-- none selected --</option> |
90 | 102 |
<option *ngFor="let key of classCodes" value="{{key}}">{{ datasourceClasses[key] }}</option> |
... | ... | |
93 | 105 |
</form-inline> |
94 | 106 |
<h4 class="uk-h4 uk-text-primary uk-scrollspy-inview uk-animation-slide-top-medium" |
95 | 107 |
uk-scrollspy-class="">Administrator & contact information</h4> |
96 |
<form-inline [description]="adminEmailDesc" [valid]="group.get('adminEmail').valid"> |
|
108 |
<form-inline [description]="adminEmailDesc" [valid]="group.get('adminEmail').valid || !formSubmitted">
|
|
97 | 109 |
<span *ngIf="group.get('adminEmail').invalid && group.get('adminEmail').touched && group.get('adminEmail').dirty" |
98 | 110 |
class="help-block inline" |
99 |
style="margin-top: 0px; margin-bottom: 0px; padding-left: 10px;">You need to enter a valid email address</span>
|
|
111 |
style="margin-top: 0px; margin-bottom: 0px; ">You need to enter a valid email address</span> |
|
100 | 112 |
<input formControlName="adminEmail" class="form-control" type="text" |
101 | 113 |
(focus)="group.get('adminEmail').markAsUntouched()" |
102 | 114 |
(blur)="group.get('adminEmail').updateValueAndValidity()"> |
modules/uoa-repository-dashboard-gui/trunk/app/shared/topmenu/topmenu.component.html | ||
---|---|---|
97 | 97 |
<div class="uk-container uk-container-expand"> |
98 | 98 |
<nav class="uk-navbar" uk-navbar="{"align":"left"}"> |
99 | 99 |
<div class="uk-navbar-left"> |
100 |
<a [routerLink]="['/dashboard']" class="uk-logo uk-navbar-item">
|
|
100 |
<a [routerLink]="['landing']" class="uk-logo uk-navbar-item">
|
|
101 | 101 |
<img src="assets/imgs/OA_PROVIDE_B.png" alt="OpenAIRE" class="uk-responsive-height"> |
102 | 102 |
</a> |
103 | 103 |
</div> |
104 | 104 |
|
105 | 105 |
<!-- THERE WAS COMMENTED SCRIPT HERE - CHECK REPOSITORYMANAGER.HTML --> |
106 | 106 |
|
107 |
<div class="uk-navbar-center" *ngIf="getIsUserLoggedIn()"> |
|
107 |
<div class="uk-navbar-center" *ngIf="getIsUserLoggedIn()" >
|
|
108 | 108 |
|
109 | 109 |
<ul class="uk-navbar-nav"> |
110 | 110 |
<li class="uk-parent" [routerLinkActive]="['uk-active']"> |
... | ... | |
194 | 194 |
<div class="uk-navbar-dropdown-grid uk-child-width-1-1 uk-grid uk-grid-stack" uk-grid=""> |
195 | 195 |
<div class="uk-first-column"> |
196 | 196 |
<ul class="uk-nav uk-navbar-dropdown-nav"> |
197 |
<ul *ngIf="isUserAdmin()" class="uk-nav uk-navbar-dropdown-nav">
|
|
197 |
<ul *ngIf="getIsUserAdmin()" class="uk-nav uk-navbar-dropdown-nav">
|
|
198 | 198 |
<li class="uk-nav-header" style="display: block;">Admin</li> |
199 | 199 |
<li style="display: block"><a [routerLink]="['/admin','help-texts']">Help Texts</a></li> |
200 | 200 |
<li style="display: block" class="uk-margin-small-bottom"><a [routerLink]="['/admin','metrics']">Metrics</a></li> |
... | ... | |
212 | 212 |
</div> |
213 | 213 |
</div> |
214 | 214 |
|
215 |
<!-- hidden="hidden" DOESN'T WORK! --> |
|
216 | 215 |
<div class="uk-sticky-placeholder" style="height: 84px; margin: 0px;" hidden="hidden"></div> |
217 | 216 |
</div> |
218 | 217 |
|
modules/uoa-repository-dashboard-gui/trunk/app/shared/reusablecomponents/forms/my-group.interface.ts | ||
---|---|---|
124 | 124 |
selector : 'form-inline', |
125 | 125 |
template : ` |
126 | 126 |
<div class="form-group"> |
127 |
<label class="control-label" *ngIf="description.label != ''" [ngClass]="{'required' : description.mandatory==true}" title="{{ description.desc }}"> |
|
127 |
<label class="control-label" *ngIf="description.label != ''" [ngClass]="{'required' : description.mandatory==true, 'uk-text-danger' : valid == false}" title="{{ description.desc }}">
|
|
128 | 128 |
{{ description.label }} |
129 | 129 |
</label> |
130 | 130 |
<ng-content></ng-content> |
modules/uoa-repository-dashboard-gui/trunk/webpack.config.js | ||
---|---|---|
98 | 98 |
"process.env": { |
99 | 99 |
PRODUCTION: JSON.stringify(false), |
100 | 100 |
API_ENDPOINT: JSON.stringify(process.env.API_ENDPOINT || "http://aleka.athenarc.gr:8380/repomanager-service-dev"), |
101 |
FAQ_ENDPOINT: JSON.stringify(process.env.FAQ_ENDPOINT || "http://aleka.athenarc.gr:5555"), |
|
101 |
FAQ_ENDPOINT: JSON.stringify(process.env.FAQ_ENDPOINT || "http://aleka.athenarc.gr:5555/api"),
|
|
102 | 102 |
WORKFLOW_API_ENDPOINT: JSON.stringify(process.env.WORKFLOW_API_ENDPOINT || "http://aleka.athenarc.gr:3000"), |
103 | 103 |
AAI_ENDPOINT: JSON.stringify(process.env.AAI_ENDPOINT || "http://aleka.athenarc.gr:8380/repomanager-service-dev/openid_connect_login") |
104 | 104 |
} |
... | ... | |
126 | 126 |
"process.env": { |
127 | 127 |
PRODUCTION: JSON.stringify(true), |
128 | 128 |
API_ENDPOINT: JSON.stringify("http://aleka.athenarc.gr:8380/repomanager-service-dev"), |
129 |
FAQ_ENDPOINT: JSON.stringify("http://aleka.athenarc.gr:5555"), |
|
129 |
FAQ_ENDPOINT: JSON.stringify("http://aleka.athenarc.gr:5555/api"),
|
|
130 | 130 |
WORKFLOW_API_ENDPOINT: JSON.stringify("http://aleka.athenarc.gr:3000"), |
131 | 131 |
AAI_ENDPOINT: JSON.stringify("http://aleka.athenarc.gr:8380/repomanager-service-dev/openid_connect_login") |
132 | 132 |
} |
modules/uoa-repository-dashboard-gui/trunk/app/pages/sources/sources-forms/datasource-update-form.component.ts | ||
---|---|---|
62 | 62 |
|
63 | 63 |
@Input() showButton: boolean; |
64 | 64 |
|
65 |
formSubmitted:boolean = false; |
|
65 | 66 |
updateGroup: FormGroup; |
66 | 67 |
readonly updateGroupDefinition = { |
67 | 68 |
softwarePlatform : '', |
... | ... | |
74 | 75 |
country : ['', Validators.required], |
75 | 76 |
longtitude : ['', [Validators.required, Validators.min(-180), Validators.max(180)] ], |
76 | 77 |
latitude : ['', [Validators.required, Validators.min(-90), Validators.max(90)] ], |
77 |
websiteUrl : ['', [Validators.required] ], |
|
78 |
websiteUrl : ['', [Validators.required, Validators.pattern('^(http:\\/\\/www\\.|https:\\/\\/www\\.|http:\\/\\/|https:\\/\\/)?[a-z0-9]+([\\-\\.]{1}[a-z0-9]+)*\\.[a-z]{2,5}(:[0-9]{1,5})?(\\/.*)?$')] ],
|
|
78 | 79 |
institutionName : ['', Validators.required], |
79 | 80 |
englishName: ['', Validators.required], |
80 |
logoUrl: [''], |
|
81 |
logoUrl: ['', Validators.pattern('^(http:\\/\\/www\\.|https:\\/\\/www\\.|http:\\/\\/|https:\\/\\/)?[a-z0-9]+([\\-\\.]{1}[a-z0-9]+)*\\.[a-z]{2,5}(:[0-9]{1,5})?(\\/.*)?$') ],
|
|
81 | 82 |
timezone: ['', Validators.required], |
82 | 83 |
datasourceType: ['', Validators.required], |
83 | 84 |
adminEmail: ['', [Validators.required, Validators.email]] |
... | ... | |
165 | 166 |
this.updateGroup.get('websiteUrl').disable(); |
166 | 167 |
this.updateGroup.get('institutionName').disable(); |
167 | 168 |
if (this.selectedRepo.datasourceType == 'journal') { |
169 |
|
|
170 |
this.updateGroup.get('issn').setValidators([Validators.required, Validators.pattern('^\\d\\d\\d\\d[-]\\d\\d\\d\\d$')]); |
|
171 |
|
|
168 | 172 |
let ssnToShow = this.selectedRepo.issn.slice(0, 4)+ '-' + this.selectedRepo.issn.toString().slice(4); |
169 | 173 |
this.updateGroup.get('issn').setValue(ssnToShow); |
170 |
if (this.selectedRepo.eissn) { |
|
174 |
|
|
175 |
if (this.selectedRepo.eissn.trim().length) { |
|
171 | 176 |
ssnToShow = this.selectedRepo.eissn.slice(0, 4)+ '-' + this.selectedRepo.eissn.toString().slice(4); |
172 | 177 |
this.updateGroup.get('eissn').setValue(ssnToShow); |
173 | 178 |
} |
174 |
if (this.selectedRepo.eissn) { |
|
179 |
|
|
180 |
if (this.selectedRepo.lissn.trim().length) { |
|
175 | 181 |
ssnToShow = this.selectedRepo.lissn.slice(0, 4)+ '-' + this.selectedRepo.lissn.toString().slice(4); |
176 | 182 |
this.updateGroup.get('lissn').setValue(ssnToShow); |
177 | 183 |
} |
184 |
|
|
178 | 185 |
this.updateGroup.get('issn').disable(); |
179 | 186 |
this.updateGroup.get('eissn').disable(); |
180 | 187 |
this.updateGroup.get('lissn').disable(); |
... | ... | |
246 | 253 |
} |
247 | 254 |
|
248 | 255 |
updateRepo() { |
256 |
this.formSubmitted = true; |
|
249 | 257 |
this.errorMessage = ''; |
250 | 258 |
this.successMessage = ''; |
251 | 259 |
|
... | ... | |
343 | 351 |
export function checkPlatform(c: AbstractControl) { |
344 | 352 |
if ( c.get('softwarePlatform').value || c.get('platformName').value ) |
345 | 353 |
return null; |
354 |
markPlatformAsRequired(c); |
|
346 | 355 |
return 'invalid'; |
347 | 356 |
} |
357 |
|
|
358 |
export function markPlatformAsRequired(c: AbstractControl) { |
|
359 |
c.get('platformName').setValidators([Validators.required]); |
|
360 |
} |
modules/uoa-repository-dashboard-gui/trunk/app/pages/sources/sources-forms/datasource-create-form.component.ts | ||
---|---|---|
56 | 56 |
|
57 | 57 |
@Output() emittedInfo: EventEmitter<Repository> = new EventEmitter(); |
58 | 58 |
|
59 |
formSubmitted: boolean = false; |
|
59 | 60 |
group: FormGroup; |
60 | 61 |
readonly groupDefinition = { |
61 |
softwarePlatform : '',
|
|
62 |
softwarePlatform : ['', Validators.required],
|
|
62 | 63 |
officialName : ['', Validators.required], |
63 | 64 |
issn : ['', [Validators.pattern('^\\d\\d\\d\\d[-]\\d\\d\\d\\d$')] ], |
64 | 65 |
eissn : ['', Validators.pattern('^\\d\\d\\d\\d[-]\\d\\d\\d\\d$') ], |
... | ... | |
67 | 68 |
country : ['', Validators.required], |
68 | 69 |
longtitude : ['', [Validators.required, Validators.min(-180), Validators.max(180)] ], |
69 | 70 |
latitude : ['', [Validators.required, Validators.min(-90), Validators.max(90)] ], |
70 |
websiteUrl : ['', [Validators.required] ], |
|
71 |
websiteUrl : ['', [Validators.required, Validators.pattern('^(http:\\/\\/www\\.|https:\\/\\/www\\.|http:\\/\\/|https:\\/\\/)?[a-z0-9]+([\\-\\.]{1}[a-z0-9]+)*\\.[a-z]{2,5}(:[0-9]{1,5})?(\\/.*)?$')] ],
|
|
71 | 72 |
institutionName : ['', Validators.required], |
72 | 73 |
englishName: ['', Validators.required], |
73 |
logoUrl: [''], |
|
74 |
logoUrl: ['', Validators.pattern('^(http:\\/\\/www\\.|https:\\/\\/www\\.|http:\\/\\/|https:\\/\\/)?[a-z0-9]+([\\-\\.]{1}[a-z0-9]+)*\\.[a-z]{2,5}(:[0-9]{1,5})?(\\/.*)?$') ],
|
|
74 | 75 |
timezone: ['', Validators.required], |
75 | 76 |
datasourceType: ['', Validators.required], |
76 | 77 |
adminEmail: ['', [Validators.required, Validators.email] ] |
... | ... | |
114 | 115 |
}*/ |
115 | 116 |
console.log(this.mode); |
116 | 117 |
this.group = this.fb.group(this.groupDefinition); |
118 |
if (this.mode == 'journal') { |
|
119 |
this.group.get('issn').setValidators([Validators.required, Validators.pattern('^\\d\\d\\d\\d[-]\\d\\d\\d\\d$')]); |
|
120 |
} |
|
117 | 121 |
this.getTypologies(); |
118 | 122 |
this.getTimezones(); |
119 | 123 |
this.getCountries(); |
... | ... | |
168 | 172 |
} |
169 | 173 |
|
170 | 174 |
registerDatasource() { |
175 |
this.formSubmitted = true; |
|
171 | 176 |
this.errorMessage = ''; |
172 | 177 |
this.successMessage = ''; |
173 | 178 |
|
modules/uoa-repository-dashboard-gui/trunk/app/pages/sources/sources-update.component.html | ||
---|---|---|
3 | 3 |
<h1 class="uk-h2">Manage your datasources</h1> |
4 | 4 |
|
5 | 5 |
<!-- TOP HELP CONTENT --> |
6 |
<!-- <help-content #topHelperContent [position]="'top'"
|
|
6 |
<help-content #topHelperContent [position]="'top'" |
|
7 | 7 |
[ngClass]="topHelperContent.isPresent()?'uk-margin-medium-top uk-margin-medium-bottom':'clear-style'"> |
8 |
</help-content>-->
|
|
8 |
</help-content> |
|
9 | 9 |
|
10 | 10 |
<div class="uk-container uk-margin-medium-top uk-margin-medium-bottom"> |
11 | 11 |
<div class="uk-grid"> |
12 | 12 |
|
13 | 13 |
<!-- LEFT HELP CONTENT --> |
14 |
<!-- <aside-help-content #leftHelperContent [position]="'left'"
|
|
14 |
<aside-help-content #leftHelperContent [position]="'left'" |
|
15 | 15 |
[ngClass]="leftHelperContent.isPresent()?'tm-sidebar uk-width-1-4@m uk-first-column':'clear-style'"> |
16 |
</aside-help-content>-->
|
|
16 |
</aside-help-content> |
|
17 | 17 |
|
18 | 18 |
<!-- MIDDLE --> |
19 | 19 |
<div class=" uk-width-expand@m"> |
... | ... | |
58 | 58 |
</div> |
59 | 59 |
</div> |
60 | 60 |
|
61 |
|
|
62 |
|
|
63 |
|
|
64 |
<!-- *** OLD HTML *** |
|
65 |
|
|
66 |
|
|
67 |
<div class="uk-grid-margin uk-grid uk-grid-stack"> |
|
68 |
<aside-help-content #rightHelperContent [position]="'left'" |
|
69 |
[ngClass]="rightHelperContent.isPresent()?'tm-sidebar uk-width-1-4@m uk-first-column':'clear-style'"> |
|
70 |
</aside-help-content> |
|
71 |
<div class="uk-width-expand@m uk-first-column"> |
|
72 |
<div class="uk-margin-medium-bottom"> |
|
73 |
<h1 class="uk-article-title">Manage your datasources</h1> |
|
74 |
</div> |
|
75 |
<help-content #topHelperContent [position]="'top'" |
|
76 |
[ngClass]="topHelperContent.isPresent()?'uk-margin-medium-top uk-margin-medium-bottom':'clear-style'"> |
|
77 |
</help-content> |
|
78 |
<div class=""> |
|
79 |
<repository-tiles [parent]="'sourcesUpdate'"></repository-tiles> |
|
80 |
<div class="row openAIRECompliantLogoDownload"> |
|
81 |
<div class="col-lg-12"> |
|
82 |
<div class="col-md-12"> |
|
83 |
<div> |
|
84 |
<div class="openAIRECompliantLogo"> |
|
85 |
<h2 class="openAIRECompliantLogoMessage"> |
|
86 |
Congratulations! Your repository was successfully registered in OpenAIRE. You can download this logo to use in your site. |
|
87 |
</h2> |
|
88 |
<img src="assets/imgs/3_0ValidatedLogo.png" alt="OpenAireCompliant"> |
|
89 |
</div> |
|
90 |
</div> |
|
91 |
<a> |
|
92 |
Download |
|
93 |
<i class="fa fa-download" style=""></i> |
|
94 |
</a> |
|
95 |
</div> |
|
96 |
</div> |
|
97 |
</div> |
|
98 |
</div> |
|
99 |
</div> |
|
100 |
<aside-help-content #rightHelperContent [position]="'right'" |
|
101 |
[ngClass]="rightHelperContent.isPresent()?'tm-sidebar uk-width-1-4@m uk-first-column':'clear-style'"> |
|
102 |
</aside-help-content> |
|
103 |
<help-content #topHelperContent [position]="'bottom'" |
|
104 |
[ngClass]="topHelperContent.isPresent()?'uk-margin-medium-top uk-margin-medium-bottom':'clear-style'"> |
|
105 |
</help-content> |
|
106 |
</div> |
|
107 |
--> |
modules/uoa-repository-dashboard-gui/trunk/app/pages/sources/sources-register.component.html | ||
---|---|---|
4 | 4 |
<h1 class="uk-h2">Register your datasource</h1> |
5 | 5 |
|
6 | 6 |
<!-- TOP HELP CONTENT --> |
7 |
<!-- <help-content #topHelperContent [position]="'top'"
|
|
7 |
<help-content #topHelperContent [position]="'top'" |
|
8 | 8 |
[ngClass]="topHelperContent.isPresent()?'uk-margin-medium-top uk-margin-medium-bottom':'clear-style'"> |
9 |
</help-content>-->
|
|
9 |
</help-content> |
|
10 | 10 |
|
11 | 11 |
<div class="uk-container uk-margin-medium-top uk-margin-medium-bottom"> |
12 | 12 |
<div class="uk-grid"> |
13 | 13 |
|
14 | 14 |
<!-- LEFT HELP CONTENT --> |
15 |
<!-- <aside-help-content #leftHelperContent [position]="'left'"
|
|
15 |
<aside-help-content #leftHelperContent [position]="'left'" |
|
16 | 16 |
[ngClass]="leftHelperContent.isPresent()?'tm-sidebar uk-width-1-4@m uk-first-column':'clear-style'"> |
17 |
</aside-help-content>-->
|
|
17 |
</aside-help-content> |
|
18 | 18 |
|
19 | 19 |
<!-- MIDDLE --> |
20 | 20 |
<div class=" uk-width-expand@m"> |
... | ... | |
114 | 114 |
|
115 | 115 |
|
116 | 116 |
<!-- BOTTOM HELP CONTENT --> |
117 |
<!-- <help-content #bottomHelperContent [position]="'bottom'"
|
|
117 |
<help-content #bottomHelperContent [position]="'bottom'" |
|
118 | 118 |
[ngClass]="bottomHelperContent.isPresent()?'uk-margin-medium-top uk-margin-medium-bottom':'clear-style'"> |
119 |
</help-content>-->
|
|
119 |
</help-content> |
|
120 | 120 |
|
121 | 121 |
|
122 | 122 |
</div> |
123 | 123 |
</div> |
124 | 124 |
|
125 |
|
|
126 |
<!-- *** OLD HTML *** |
|
127 |
<div class="uk-grid-margin uk-grid uk-grid-stack"> |
|
128 |
<div class="uk-width-expand@m uk-first-column"> |
|
129 |
<div class="uk-margin-medium-bottom"> |
|
130 |
<h1 class="uk-article-title">Register your datasource</h1> |
|
131 |
</div> |
|
132 |
<div> |
|
133 |
<div class="uk-margin uk-grid repositoryTypeSelection" uk-grid=""> |
|
134 |
<div class="uk-width-expand@m uk-width-1-2@s uk-grid-item-match uk-first-column"> |
|
135 |
<div class="uk-text-center uk-card uk-card-default uk-card-hover uk-scrollspy-inview uk-animation-slide-top-medium" uk-scrollspy-class=""> |
|
136 |
<a routerLink="literature" class="el-link uk-position-cover uk-margin-remove-adjacent"></a> |
|
137 |
<div class="uk-card-media-top"> |
|
138 |
<img class="el-image" src="assets/imgs/Literature_repos_square.png" alt="" style="width: 100%;"> |
|
139 |
</div> |
|
140 |
<div class="uk-card-body"> |
|
141 |
<h3 class="el-title uk-margin uk-card-title uk-margin-remove-adjacent uk-margin-small-bottom"> |
|
142 |
Make sure your repository is already registered in OpenDOAR, the authoritative directory of institutional and thematic OA repositories. |
|
143 |
</h3> |
|
144 |
<div class="el-meta uk-margin uk-text-meta" style="z-index:9999; position:relative;"> |
|
145 |
<a href="http://www.opendoar.org" target="_blank"> |
|
146 |
List provided by |
|
147 |
<br> |
|
148 |
OpenDOAR<i class="fa fa-external-link" style="margin-left: 3px !important;"></i> |
|
149 |
</a> |
|
150 |
</div> |
|
151 |
</div> |
|
152 |
</div> |
|
153 |
</div> |
|
154 |
<div class="uk-width-expand@m uk-width-1-2@s uk-grid-item-match"> |
|
155 |
<div class="uk-margin uk-text-center uk-card uk-card-default uk-card-hover uk-scrollspy-inview uk-animation-slide-top-medium" uk-scrollspy-class="" data-id="" style=""> |
|
156 |
<a routerLink="data" class="el-link uk-position-cover uk-margin-remove-adjacent" href=""></a> |
|
157 |
<div class="uk-card-media-top"> |
|
158 |
<img class="el-image" src="assets/imgs/Data_repos_sqare.png" alt="" style="width:100%;"> |
|
159 |
</div> |
|
160 |
<div class="uk-card-body"> |
|
161 |
<h3 class="el-title uk-margin uk-card-title uk-margin-remove-adjacent uk-margin-small-bottom" > |
|
162 |
Make sure your data repository is registered in Re3Data, the global registry of research data repositories from different academic disciplines. |
|
163 |
</h3> |
|
164 |
<div class="el-meta uk-margin uk-text-meta" style="z-index:9999; position:relative;"> |
|
165 |
<a href="http://www.re3data.org" target="_blank"> |
|
166 |
List provided by |
|
167 |
<br> |
|
168 |
Re3data<i class="fa fa-external-link" style="margin-left: 3px !important;"></i> |
|
169 |
</a> |
|
170 |
</div> |
|
171 |
</div> |
|
172 |
</div> |
|
173 |
</div> |
|
174 |
<div class="uk-width-expand@m uk-width-1-2@s uk-grid-item-match"> |
|
175 |
<div class="uk-margin uk-text-center uk-card uk-card-default uk-card-hover uk-scrollspy-inview uk-animation-slide-top-medium" uk-scrollspy-class="" data-id="" style=""> |
|
176 |
<a routerLink="journal" class="el-link uk-position-cover uk-margin-remove-adjacent"></a> |
|
177 |
<div class="uk-card-media-top"> |
|
178 |
<img class="el-image" src="assets/imgs/OAJournals_square.png" alt="" style="width:100%;"> |
|
179 |
</div> |
|
180 |
<div class="uk-card-body"> |
|
181 |
<h3 class="el-title uk-margin uk-card-title uk-margin-remove-adjacent uk-margin-small-bottom"> |
|
182 |
Make sure that your Open Access Journal is compatible with the OpenAIRE literature Guidelines. |
|
183 |
</h3> |
|
184 |
<div class="el-meta uk-margin uk-text-meta" style="z-index:9999; position:relative;"> |
|
185 |
<a href="https://www.openaire.eu/helpdesk/" target="_blank"> |
|
186 |
For any questions please contact the OpenAIRE helpdesk. |
|
187 |
<i class="fa fa-external-link" style="margin-left: 3px !important;"></i> |
|
188 |
</a> |
|
189 |
</div> |
|
190 |
</div> |
|
191 |
</div> |
|
192 |
</div> |
|
193 |
<div class="uk-width-expand@m uk-width-1-2@s uk-grid-item-match"> |
|
194 |
<div class="uk-margin uk-text-center uk-card uk-card-default uk-card-hover uk-scrollspy-inview uk-animation-slide-top-medium" uk-scrollspy-class="" data-id="" style=""> |
|
195 |
<a routerLink="aggregator" class="el-link uk-position-cover uk-margin-remove-adjacent"></a> |
|
196 |
<div class="uk-card-media-top"> |
|
197 |
<img class="el-image" src="assets/imgs/Icons_Aggregators_square.png" alt="" style="width:100%;"> |
|
198 |
</div> |
|
199 |
<div class="uk-card-body"> |
|
200 |
<h3 class="el-title uk-margin uk-card-title uk-margin-remove-adjacent uk-margin-small-bottom"> |
|
201 |
Make sure that your publications aggregator is compatible with the OpenAIRE literature Guidelines. |
|
202 |
</h3> |
|
203 |
<div class="el-meta uk-margin uk-text-meta" style="z-index:9999; position:relative;"> |
|
204 |
<a href="http://www.re3data.org" target="_blank"> |
|
205 |
For any questions please contact the OpenAIRE helpdesk. |
|
206 |
<i class="fa fa-external-link" style="margin-left: 3px !important;"></i> |
|
207 |
</a> |
|
208 |
</div> |
|
209 |
</div> |
|
210 |
</div> |
|
211 |
</div> |
|
212 |
</div> |
|
213 |
</div> |
|
214 |
</div> |
|
215 |
<!–<div class="tm-sidebar uk-width-1-4@m uk-first-column"> |
|
216 |
<div class="gwt-HTML"> |
|
217 |
<div class="uk-card uk-card-body uk-card-default sidemenu"> |
|
218 |
<h3>Info / Help</h3> |
|
219 |
<p> |
|
220 |
The OpenAIRE services provide you with an easy way to register your content provider, literature or data repository, OA Journal into the OpenAIRE network. Please join! |
|
221 |
</p> |
|
222 |
<p> |
|
223 |
1) Make your repository, CRIS or journal OpenAIRE compatible by implementing the OpenAIRE |
|
224 |
<a href="https://guidelines.openaire.eu/en/latest/" target="_blank">Guidelines</a> |
|
225 |
. |
|
226 |
</p> |
|
227 |
<p> |
|
228 |
2) After you have made some progress in implementing the guidelines you should run a Compatibility test using the validator tool. |
|
229 |
</p> |
|
230 |
<p> |
|
231 |
3) Register your literature repository in OpenDOAR or your data repositoriy in Re3Data (this step does not apply for journals or CRIS). |
|
232 |
</p> |
|
233 |
</div> |
|
234 |
</div> |
|
235 |
</div>–> |
|
236 |
<aside-help-content #rightHelperContent [position]="'right'" |
|
237 |
[ngClass]="rightHelperContent.isPresent()?'tm-sidebar uk-width-1-4@m uk-first-column':'clear-style'"> |
|
238 |
</aside-help-content> |
|
239 |
</div> |
|
240 |
--> |
modules/uoa-repository-dashboard-gui/trunk/app/pages/sources/sources-update-repo.component.html | ||
---|---|---|
2 | 2 |
<div class="uk-width-1-1@m uk-first-column"> |
3 | 3 |
|
4 | 4 |
<!-- TOP HELP CONTENT --> |
5 |
<!-- <help-content #topHelperContent [position]="'top'"
|
|
5 |
<help-content #topHelperContent [position]="'top'" |
|
6 | 6 |
[ngClass]="topHelperContent.isPresent()?'uk-margin-medium-top uk-margin-medium-bottom':'clear-style'"> |
7 |
</help-content>-->
|
|
7 |
</help-content> |
|
8 | 8 |
|
9 | 9 |
<div class="uk-container uk-margin-medium-top uk-margin-medium-bottom"> |
10 | 10 |
<div class="uk-grid"> |
11 | 11 |
|
12 | 12 |
<!-- LEFT HELP CONTENT --> |
13 |
<!-- <aside-help-content #leftHelperContent [position]="'left'"
|
|
13 |
<aside-help-content #leftHelperContent [position]="'left'" |
|
14 | 14 |
[ngClass]="leftHelperContent.isPresent()?'tm-sidebar uk-width-1-4@m uk-first-column':'clear-style'"> |
15 |
</aside-help-content>-->
|
|
15 |
</aside-help-content> |
|
16 | 16 |
|
17 | 17 |
<!-- MIDDLE --> |
18 | 18 |
<div class=" uk-width-expand@m"> |
... | ... | |
89 | 89 |
</div> |
90 | 90 |
</div> |
91 | 91 |
|
92 |
<!-- *** OLD HTML *** |
|
93 |
|
|
94 |
<div class="uk-grid uk-grid-stack"> |
|
95 |
<div class="uk-width-expand@m uk-first-column"> |
|
96 |
<div *ngIf="loadingMessage" class="loading-big"> |
|
97 |
<div class="loader-big" style="text-align: center; padding-top: 170px; color: rgb(47, 64, 80); font-weight: bold;"> |
|
98 |
{{ loadingMessage }} |
|
99 |
</div> |
|
100 |
<div class="whiteFilm"></div> |
|
101 |
</div> |
|
102 |
<div *ngIf="errorMessage" class="uk-alert uk-alert-danger">{{ errorMessage }}</div> |
|
103 |
<div *ngIf="repo" class="uk-margin-medium-bottom"> |
|
104 |
<h1 class="uk-article-title"> |
|
105 |
<a id="updateLogoURL" (click)="datasourceUpdateForm.updateLogoUrl(repo.logoUrl)"> |
|
106 |
<img *ngIf="!logoURL" src="/assets/imgs/yourLogoHere.jpg" style="margin-right: 15px; margin-top:-8px" width="60"> |
|
107 |
<img *ngIf="logoURL" src="{{ logoURL }}" style="margin-right: 15px; margin-top:-8px" width="60"> |
|
108 |
</a> |
|
109 |
{{ repo.officialName }} |
|
110 |
</h1> |
|
111 |
</div> |
|
112 |
<div *ngIf="repo"> |
|
113 |
<div> |
|
114 |
<ul class="uk-margin el-nav uk-tab" uk-switcher="connect: .uk-switcher"> |
|
115 |
<li routerLinkActive="uk-active"> |
|
116 |
<a href="#">Update Information</a> |
|
117 |
</li> |
|
118 |
<li routerLinkActive="uk-active"> |
|
119 |
<a href="#">Update Interfaces</a> |
|
120 |
</li> |
|
121 |
</ul> |
|
122 |
<ul class="uk-switcher"> |
|
123 |
<li class="el-item"> |
|
124 |
<div> |
|
125 |
<datasource-update-form #datasourceUpdateForm |
|
126 |
[selectedRepo]="repo" |
|
127 |
[showButton]=true |
|
128 |
(emittedUrl)="getNewLogoUrl($event)"></datasource-update-form> |
|
129 |
</div> |
|
130 |
</li> |
|
131 |
<li class="el-item"> |
|
132 |
<div *ngIf="repo && repoInterfaces" class="uk-width-1-1@m uk-first-column"> |
|
133 |
<form [formGroup]="group"> |
|
134 |
<form-repeat [component]="updateDatasourceInterfaces" |
|
135 |
[parentGroup]="group" |
|
136 |
[description]="interfaceFormDesc" |
|
137 |
[name]="'datasource-interface-form'" |
|
138 |
[data]="repoInterfaces" |
|
139 |
[otherData]="repo"> |
|
140 |
</form-repeat> |
|
141 |
</form> |
|
142 |
</div> |
|
143 |
</li> |
|
144 |
</ul> |
|
145 |
</div> |
|
146 |
</div> |
|
147 |
</div> |
|
148 |
<!– <div class="tm-sidebar uk-width-1-4@m"> |
|
149 |
<div> |
|
150 |
<div class="uk-card uk-card-body uk-card-default sidemenu"><h3>Info / Help</h3> |
|
151 |
<p>You have access to edit the following repository listed on the left. Fields marked with * are mandatory. |
|
152 |
Hover over each field to find more information about it.</p> |
|
153 |
<p>The official repository administrator (his/her email address being retrieved from the OAI-PMH verb Identify) will be contacted and informed about the update request. |
|
154 |
So please make sure that you are either this person or have access to the email address, or that you have notified them.</p> |
|
155 |
<p>For any problems or questions please contact the <a href="https://www.openaire.eu/support/helpdesk" target="_blank">OpenAIRE helpdesk</a>.</p> |
|
156 |
</div> |
|
157 |
</div> |
|
158 |
</div>–> |
|
159 |
<aside-help-content #rightHelperContent [position]="'right'" |
|
160 |
[ngClass]="rightHelperContent.isPresent()?'tm-sidebar uk-width-1-4@m uk-first-column':'clear-style'"> |
|
161 |
</aside-help-content> |
|
162 |
</div> |
|
163 |
--> |
modules/uoa-repository-dashboard-gui/trunk/app/pages/metrics/metrics-show.component.html | ||
---|---|---|
10 | 10 |
<h1 class="uk-h2">Metrics</h1> |
11 | 11 |
|
12 | 12 |
<!-- TOP HELP CONTENT --> |
13 |
<!-- <help-content #topHelperContent [position]="'top'"
|
|
13 |
<help-content #topHelperContent [position]="'top'" |
|
14 | 14 |
[ngClass]="topHelperContent.isPresent()?'uk-margin-medium-top uk-margin-medium-bottom':'clear-style'"> |
15 |
</help-content>-->
|
|
15 |
</help-content> |
|
16 | 16 |
|
17 | 17 |
<div class="uk-container uk-margin-medium-top uk-margin-medium-bottom"> |
18 | 18 |
<div class="uk-grid"> |
19 | 19 |
|
20 | 20 |
<!-- LEFT HELP CONTENT --> |
21 |
<!-- <aside-help-content #leftHelperContent [position]="'left'"
|
|
21 |
<aside-help-content #leftHelperContent [position]="'left'" |
|
22 | 22 |
[ngClass]="leftHelperContent.isPresent()?'tm-sidebar uk-width-1-4@m uk-first-column':'clear-style'"> |
23 |
</aside-help-content>-->
|
|
23 |
</aside-help-content> |
|
24 | 24 |
|
25 | 25 |
<!-- MIDDLE --> |
26 | 26 |
<div class=" uk-width-expand@m"> |
... | ... | |
90 | 90 |
</div> |
91 | 91 |
</div> |
92 | 92 |
|
93 |
|
|
94 |
<!-- *** OLD HTML *** |
|
95 |
|
|
96 |
<div id="contentWrapper" |
|
97 |
class="tm-main uk-section uk-section-default" |
|
98 |
uk-height-viewport="expand: true" |
|
99 |
style="box-sizing: border-box;" > |
|
100 |
|
|
101 |
<!– MARGIN-TOP –> |
|
102 |
<div class="uk-sticky-placeholder" style="height: 84px; margin: 0px;" aria-hidden="true"></div> |
|
103 |
|
|
104 |
<div> |
|
105 |
<div class="uk-container"> |
|
106 |
<div class="uk-grid uk-grid-stack"> |
|
107 |
<div class="uk-width-expand@m uk-first-column"> |
|
108 |
<div class="gwt-HTML uk-margin-medium-bottom"> |
|
109 |
<h1 class="uk-article-title">Metrics</h1> |
|
110 |
</div> |
|
111 |
<div *ngIf="errorMessage" class="uk-alert uk-alert-danger">{{ errorMessage }}</div> |
|
112 |
<div *ngIf="loadingMessage" class="loading-big"> |
|
113 |
<div class="loader-big" style="text-align: center; padding-top: 170px; color: rgb(47, 64, 80); font-weight: bold;"> |
|
114 |
{{ loadingMessage }} |
|
115 |
</div> |
|
116 |
<div class="whiteFilm"></div> |
|
117 |
</div> |
|
118 |
<div *ngIf="repoMetrics"> |
|
119 |
<div class="uk-margin-medium-bottom"> |
|
120 |
<div> |
|
121 |
<div class="uk-child-width-1-3@m uk-grid-small uk-grid-match uk-grid" uk-grid=""> |
|
122 |
<div class="metrics-openaire uk-first-column"> |
|
123 |
<div class="uk-tile uk-tile-default uk-padding-small"> |
|
124 |
<div class="uk-text-center"> {{ pageViews }}</div> |
|
125 |
<div class="uk-text-center"> views in OpenAIRE</div> |
|
126 |
</div> |
|
127 |
</div> |
|
128 |
<div class="metrics-views"> |
|
129 |
<div class="uk-tile uk-tile-muted uk-padding-small"> |
|
130 |
<div class="uk-text-center"> {{ totalViews }} |
|
131 |
<span *ngIf="repoMetrics.metricsNumbers.total_openaire_views">( {{ repoMetrics.metricsNumbers.total_openaire_views }} from OpenAIRE )</span> |
|
132 |
</div> |
|
133 |
<div class="uk-text-center">views in local repository</div> |
|
134 |
</div> |
|
135 |
</div> |
|
136 |
<div class="metrics-downloads"> |
|
137 |
<div class="uk-tile uk-tile-primary uk-padding-small"> |
|
138 |
<div class="uk-text-center"> {{ totalDownloads }} |
|
139 |
<span *ngIf="repoMetrics.metricsNumbers.total_openaire_downloads">( {{ repoMetrics.metricsNumbers.total_openaire_downloads }} from OpenAIRE )</span></div> |
|
140 |
<div class="uk-text-center">downloads in local repository</div> |
|
141 |
</div> |
|
142 |
</div> |
|
143 |
</div> |
|
144 |
</div> |
|
145 |
</div> |
|
146 |
<div class="uk-text-center uk-card uk-card-default uk-card-hover uk-scrollspy-inview uk-animation-slide-top-medium uk-margin-bottom uk-padding"> |
|
147 |
<iframe class="statsFrame" [src]="viewsUrl"></iframe> |
|
148 |
</div> |
|
149 |
<div class="uk-text-center uk-card uk-card-default uk-card-hover uk-scrollspy-inview uk-animation-slide-top-medium uk-margin-bottom uk-padding"> |
|
150 |
<iframe class="statsFrame" [src]="downloadsUrl"></iframe> |
|
151 |
</div> |
|
152 |
</div> |
|
153 |
</div> |
|
154 |
<div class="tm-sidebar uk-width-1-4@m"> |
|
155 |
<div> |
|
156 |
<div class="uk-card uk-card-body uk-card-default sidemenu"> |
|
157 |
<h3>Info</h3> |
|
158 |
<p>This page provides you with information about views and downloads of items in your datasource.</p> |
|
159 |
<p>The indicators are:</p> |
|
160 |
<ul> |
|
161 |
<li> |
|
162 |
<strong>views</strong> |
|
163 |
of your datasource items |
|
164 |
<strong> in the OpenAIRE portal</strong> |
|
165 |
</li> |
|
166 |
<li> |
|
167 |
<strong>views of items</strong> |
|
168 |
tracked from your datasource |
|
169 |
</li> |
|
170 |
<li> |
|
171 |
<strong>number of downloads</strong> |
|
172 |
tracked from your datasource |
|
173 |
</li> |
|
174 |
</ul> |
|
175 |
</div> |
|
176 |
</div> |
|
177 |
</div> |
|
178 |
</div> |
|
179 |
</div> |
|
180 |
</div> |
|
181 |
</div> |
|
182 |
--> |
modules/uoa-repository-dashboard-gui/trunk/app/pages/metrics/metrics-instructions.component.html | ||
---|---|---|
10 | 10 |
<h1 class="uk-h2">Metrics Configuration & Software Details</h1> |
11 | 11 |
|
12 | 12 |
<!-- TOP HELP CONTENT --> |
13 |
<!-- <help-content #topHelperContent [position]="'top'"
|
|
13 |
<help-content #topHelperContent [position]="'top'" |
|
14 | 14 |
[ngClass]="topHelperContent.isPresent()?'uk-margin-medium-top uk-margin-medium-bottom':'clear-style'"> |
15 |
</help-content>-->
|
|
15 |
</help-content> |
|
16 | 16 |
|
17 | 17 |
<div class="uk-container uk-margin-medium-top uk-margin-medium-bottom"> |
18 | 18 |
<div class="uk-grid"> |
19 | 19 |
|
20 | 20 |
<!-- LEFT HELP CONTENT --> |
21 |
<!-- <aside-help-content #leftHelperContent [position]="'left'"
|
|
21 |
<aside-help-content #leftHelperContent [position]="'left'" |
|
22 | 22 |
[ngClass]="leftHelperContent.isPresent()?'tm-sidebar uk-width-1-4@m uk-first-column':'clear-style'"> |
23 |
</aside-help-content>-->
|
|
23 |
</aside-help-content> |
|
24 | 24 |
|
25 | 25 |
<!-- MIDDLE --> |
26 | 26 |
<div class=" uk-width-expand@m"> |
... | ... | |
81 | 81 |
</div> |
82 | 82 |
</div> |
83 | 83 |
|
84 |
<!-- *** OLD HTML *** |
|
85 |
|
|
86 |
<div id="contentWrapper" |
|
87 |
class="tm-main uk-section uk-section-default" |
|
88 |
uk-height-viewport="expand: true" |
|
89 |
style="box-sizing: border-box;" > |
|
90 |
|
|
91 |
<!– MARGIN-TOP –> |
|
92 |
<div class="uk-sticky-placeholder" style="height: 84px; margin: 0px;" aria-hidden="true"></div> |
|
93 |
|
|
94 |
<div> |
|
95 |
<div class="uk-container"> |
|
96 |
<div class="uk-grid uk-grid-stack"> |
|
97 |
<div class="uk-width-expand@m uk-first-column"> |
|
98 |
<div class="gwt-HTML uk-margin-medium-bottom"> |
|
99 |
<h1 class="uk-article-title">Metrics Configuration & Software Details</h1> |
|
100 |
</div> |
|
101 |
<div class=""> |
|
102 |
<div> |
|
103 |
<div *ngIf="errorMessage" class="uk-alert uk-alert-danger">{{ errorMessage }}</div> |
|
104 |
<div *ngIf="piwik"> |
|
105 |
<p> |
|
106 |
OpenAIRE’s usage statistic service uses the <i>Piwik Open Source Analytics platform</i> (piwik.org) to track usage activity. When <i>metrics</i> |
|
107 |
are enabled for a repository, two unique identifiers are generated - a piwik-ID that associates the repository with its usage events in Piwik |
|
108 |
and an authentication-ID that allows to track usage activity on the Piwik platform. Metadata views and item downloads are tracked and automatically sent to Piwik. Statistics are generated using the COUNTER Code of practice directives. |
|
109 |
</p> |
|
110 |
<p> |
|
111 |
OpenAIRE's usage statistics service tracking code exploits Piwik’s API. In order to make the tracking of usage events from repositories more robust, it was necessary to implement repository platform specific patches and plugins starting with DSpace and EPrints. The code is maintained on Github: |
|
112 |
</p> |
|
113 |
<ul> |
|
114 |
<li>as a patch for various versions of DSpace |
|
115 |
(<a href="https://github.com/openaire/OpenAIRE-Piwik-DSpace">https://github.com/dimitrispie/OpenAIRE-Piwik-DSpace</a>)</li> |
|
116 |
<li>as an Eprints plugin for version 3 |
|
117 |
(<a href="https://github.com/openaire/EPrints-OAPiwik">https://github.com/dimitrispie/EPrints-OAPiwik</a>)</li> |
|
118 |
</ul> |
|
119 |
<p> |
|
120 |
To configure your repository to allow tracking in Piwik platform, please change the configuration files with the following parameters and values, generated for your site: |
|
121 |
</p> |
|
122 |
<dl class="uk-description-list"> |
|
123 |
<dt>PiwikID</dt> |
|
124 |
<dd>{{ piwik.siteId }}</dd> |
|
125 |
<dt>AuthenticationToken</dt> |
|
126 |
<dd>{{ piwik.authenticationToken }}</dd> |
|
127 |
</dl> |
|
128 |
<p> |
|
129 |
Details for the configuration files are given in the README of the tracking code. |
|
130 |
</p> |
|
131 |
<div class="uk-alert uk-alert-info"> |
|
132 |
<strong>NOTE</strong> |
|
133 |
- You will be informed by e-mail that the installation of the tracking code has been validated and when the usage statistics will be available. |
|
134 |
</div> |
|
135 |
</div> |
|
136 |
</div> |
|
137 |
</div> |
|
138 |
</div> |
|
139 |
<!–<div class="tm-sidebar uk-width-1-4@m"> |
|
140 |
<div> |
|
141 |
<div class="uk-card uk-card-body uk-card-default sidemenu"> |
|
142 |
<h3>Info / Tracking setup</h3> |
|
143 |
<p></p> |
|
144 |
</div> |
|
145 |
</div> |
|
146 |
</div>–> |
|
147 |
<aside-help-content #rightHelperContent [position]="'right'" |
|
148 |
[ngClass]="rightHelperContent.isPresent()?'tm-sidebar uk-width-1-4@m uk-first-column':'clear-style'"> |
|
149 |
</aside-help-content> |
|
150 |
</div> |
|
151 |
</div> |
|
152 |
</div> |
|
153 |
</div> |
|
154 |
--> |
modules/uoa-repository-dashboard-gui/trunk/app/pages/compatibility/compatibility-monitor.component.html | ||
---|---|---|
4 | 4 |
<h1 class="uk-h2">Monitor</h1> |
5 | 5 |
|
6 | 6 |
<!-- TOP HELP CONTENT --> |
7 |
<!-- <help-content #topHelperContent [position]="'top'"
|
|
7 |
<help-content #topHelperContent [position]="'top'" |
|
8 | 8 |
[ngClass]="topHelperContent.isPresent()?'uk-margin-medium-top uk-margin-medium-bottom':'clear-style'"> |
9 |
</help-content>-->
|
|
9 |
</help-content> |
|
10 | 10 |
|
11 | 11 |
<div class="uk-container uk-margin-medium-top uk-margin-medium-bottom"> |
12 | 12 |
<div class="uk-grid"> |
13 | 13 |
|
14 | 14 |
<!-- LEFT HELP CONTENT --> |
15 |
<!-- <aside-help-content #leftHelperContent [position]="'left'"
|
|
15 |
<aside-help-content #leftHelperContent [position]="'left'" |
|
16 | 16 |
[ngClass]="leftHelperContent.isPresent()?'tm-sidebar uk-width-1-4@m uk-first-column':'clear-style'"> |
17 |
</aside-help-content>-->
|
|
17 |
</aside-help-content> |
|
18 | 18 |
|
19 | 19 |
<!-- MIDDLE --> |
20 | 20 |
<div class=" uk-width-expand@m"> |
... | ... | |
40 | 40 |
|
41 | 41 |
</div> |
42 | 42 |
</div> |
43 |
|
|
44 |
|
|
45 |
<!-- *** OLD HTML *** |
|
46 |
|
|
47 |
<div class="uk-grid uk-grid-stack"> |
|
48 |
<div class="uk-width-expand@m uk-first-column"> |
|
49 |
<div class="uk-margin-medium-bottom"> |
|
50 |
<h1 class="uk-article-title">Monitor</h1> |
|
51 |
</div> |
|
52 |
<repository-tiles [parent]="'compatibilityMonitor'"></repository-tiles> |
|
53 |
</div> |
|
54 |
</div> |
|
55 |
--> |
modules/uoa-repository-dashboard-gui/trunk/app/pages/compatibility/compatibility-validation-results.component.html | ||
---|---|---|
4 | 4 |
<h1 class="uk-h2">Validation results for</h1> |
5 | 5 |
|
6 | 6 |
<!-- TOP HELP CONTENT --> |
7 |
<!-- <help-content #topHelperContent [position]="'top'"
|
|
7 |
<help-content #topHelperContent [position]="'top'" |
|
8 | 8 |
[ngClass]="topHelperContent.isPresent()?'uk-margin-medium-top uk-margin-medium-bottom':'clear-style'"> |
9 |
</help-content>-->
|
|
9 |
</help-content> |
|
10 | 10 |
|
11 | 11 |
<div class="uk-container uk-margin-medium-top uk-margin-medium-bottom"> |
12 | 12 |
<div class="uk-grid"> |
13 | 13 |
|
14 | 14 |
<!-- LEFT HELP CONTENT --> |
15 |
<!-- <aside-help-content #leftHelperContent [position]="'left'"
|
|
15 |
<aside-help-content #leftHelperContent [position]="'left'" |
|
16 | 16 |
[ngClass]="leftHelperContent.isPresent()?'tm-sidebar uk-width-1-4@m uk-first-column':'clear-style'"> |
17 |
</aside-help-content>-->
|
|
17 |
</aside-help-content> |
|
18 | 18 |
|
19 | 19 |
<!-- MIDDLE --> |
20 | 20 |
<div class=" uk-width-expand@m"> |
... | ... | |
254 | 254 |
</div> |
255 | 255 |
</confirmation-dialog> |
256 | 256 |
|
257 |
|
|
258 |
<!-- *** OLD HTML *** |
|
259 |
|
|
260 |
<div class="uk-grid uk-grid-stack"> |
|
261 |
<div class="uk-width-expand@m uk-first-column"> |
|
262 |
<div class="uk-margin-medium-bottom"> |
|
263 |
<h1 class="uk-article-title">Validation results for</h1> |
|
264 |
</div> |
|
265 |
<div> |
|
266 |
<div *ngIf="errorMessage" class="uk-alert uk-alert-danger">{{ errorMessage }}</div> |
|
267 |
<div *ngIf="loadingMessage" class="loading-big"> |
|
268 |
<div class="loader-big" style="text-align: center; padding-top: 170px; color: rgb(47, 64, 80); font-weight: bold;"> |
|
269 |
{{ loadingMessage }} |
|
270 |
</div> |
|
271 |
<div class="whiteFilm"></div> |
|
272 |
</div> |
|
273 |
<div *ngIf="jobSummary"> |
|
274 |
<div> |
|
275 |
<div> |
|
276 |
<h4 class="uk-h4 uk-text-primary uk-scrollspy-inview uk-animation-slide-top-medium" |
|
277 |
uk-scrollspy-class=""><span>{{jobSummary.baseUrl}}</span></h4> |
|
278 |
<div class="uk-margin-small">by {{jobSummary.userEmail}}</div> |
|
279 |
</div> |
|
280 |
</div> |
|
281 |
<div> |
|
282 |
<div> |
|
283 |
<hr class="uk-scrollspy-inview uk-animation-slide-bottom-small" uk-scrollspy-class=""> |
|
284 |
<div> |
|
285 |
<span>{{ jobSummary.jobType }}</span> |
|
286 |
| |
|
287 |
<span>{{ jobSummary.guidelinesShortName }}</span> |
|
288 |
| |
|
289 |
<span>Validation set: {{ jobSummary.validationSet }}</span> |
|
290 |
</div> |
|
291 |
<div> |
|
292 |
<span>Started: {{ jobSummary.started }}</span> |
|
293 |
, |
|
294 |
<span>Ended: {{ jobSummary.ended }}</span> |
|
295 |
, |
|
296 |
<span>Duration: {{ jobSummary.duration }}</span> |
|
297 |
</div> |
|
298 |
<div style="font-size: 120%;"> |
|
299 |
<span>Records tested: {{ jobSummary.recordsTested }}</span> |
|
300 |
</div> |
|
301 |
<div> |
|
302 |
<span class="uk-label uk-margin-right">Score for content: {{ jobSummary.contentJobScore }}</span> |
|
303 |
<span class="uk-label">Score for usage: {{ jobSummary.usageJobScore }}</span> |
|
304 |
</div> |
|
305 |
<hr class="uk-scrollspy-inview uk-animation-slide-bottom-small" uk-scrollspy-class=""> |
|
306 |
</div> |
|
307 |
</div> |
|
308 |
<div> |
|
309 |
<ul class="uk-margin el-nav uk-tab" uk-switcher="connect: .uk-switcher"> |
|
310 |
<li routerLinkActive="uk-active"> |
|
311 |
<a href="#">for Content</a> |
|
312 |
</li> |
|
313 |
<li routerLinkActive="uk-active"> |
|
314 |
<a href="#">for Usage</a> |
|
315 |
</li> |
|
316 |
</ul> |
|
317 |
<ul class="uk-switcher"> |
|
318 |
<li class="el-item"> |
|
319 |
<div class="uk-grid-margin uk-grid uk-grid-stack"> |
|
320 |
<div class="uk-width-1-1@m uk-first-column"> |
|
321 |
<div class="uk-overflow-auto uk-scrollspy-inview uk-animation-slide-top-medium"> |
|
322 |
<div *ngIf="noContent" class="uk-alert">{{ noContent }}</div> |
|
323 |
<div> |
|
324 |
<table class="uk-table uk-table-striped uk-table-middle rules-table"> |
|
325 |
<thead> |
|
326 |
<tr> |
|
327 |
<th>Rule Name</th> |
|
328 |
<th class="uk-text-nowrap">Rule Description</th> |
|
329 |
<th class="uk-text-nowrap">Rule Weight</th> |
|
330 |
<th class="uk-text-nowrap"># of records</th> |
|
331 |
<th class="uk-text-nowrap">Status</th> |
|
332 |
</tr> |
|
333 |
</thead> |
|
334 |
<tbody> |
|
335 |
<tr *ngFor="let contentRule of contentResults" class="el-item"> |
|
336 |
<td class="uk-table-shrink"> |
|
337 |
<div class="el-title">{{ contentRule.name }}</div> |
|
338 |
</td> |
|
339 |
<td class="uk-table-shrink"> |
|
340 |
<div class="el-title" [innerHtml]="contentRule.description"> |
|
341 |
</div> |
|
342 |
</td> |
|
343 |
<td class="uk-table-shrink"> |
|
344 |
<div class="el-title">{{ contentRule.weight }}</div> |
|
345 |
</td> |
|
346 |
<td class="uk-table-shrink"> |
|
347 |
<div class="el-title">{{ contentRule.successes }}</div> |
|
348 |
</td> |
|
349 |
<td class="uk-table-shrink"> |
|
350 |
<div *ngIf="!contentRule.hasErrors" class="el-title"> |
|
351 |
<span uk-icon="icon: check" style="color: #4b991f" class="uk-icon"> |
|
352 |
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="check" ratio="1"> |
|
353 |
<polyline fill="none" stroke="#000" stroke-width="1.1" points="4,10 8,15 17,4"></polyline> |
|
354 |
</svg> |
|
355 |
</span> |
|
356 |
</div> |
|
357 |
<div *ngIf="contentRule.hasErrors && contentRule.mandatory"> |
|
358 |
<span uk-icon="icon: close" style="color: #cd242b" class="uk-icon"> |
|
359 |
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="close" ratio="1"> |
|
360 |
<path fill="none" stroke="#000" stroke-width="1.06" d="M16,16 L4,4"></path> |
|
361 |
<path fill="none" stroke="#000" stroke-width="1.06" d="M16,4 L4,16"></path> |
|
362 |
</svg> |
|
363 |
</span> |
|
364 |
<a class="errorlink viewErrors uk-display-block" (click)="viewErrors(contentRule)"><span>View Errors</span></a> |
|
365 |
</div> |
|
366 |
<div *ngIf="contentRule.hasErrors && !contentRule.mandatory"> |
|
367 |
<span uk-icon="icon: warning" style="color: #e9d60d" class="uk-icon"> |
|
368 |
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="warning" ratio="1"> |
|
369 |
<circle cx="10" cy="14" r="1"></circle> |
|
370 |
<circle fill="none" stroke="#000" stroke-width="1.1" cx="10" cy="10" r="9"></circle> |
|
371 |
<path d="M10.97,7.72 C10.85,9.54 10.56,11.29 10.56,11.29 C10.51,11.87 10.27,12 9.99,12 C9.69,12 9.49,11.87 9.43,11.29 C9.43,11.29 9.16,9.54 9.03,7.72 C8.96,6.54 9.03,6 9.03,6 C9.03,5.45 9.46,5.02 9.99,5 C10.53,5.01 10.97,5.44 10.97,6 C10.97,6 11.04,6.54 10.97,7.72 L10.97,7.72 Z"></path> |
|
372 |
</svg> |
|
373 |
</span> |
|
374 |
<a class="warninglink viewErrors uk-display-block" (click)="viewErrors(contentRule)"><span>View Warnings</span></a> |
|
375 |
</div> |
|
376 |
</td> |
|
377 |
</tr> |
|
378 |
</tbody> |
|
379 |
</table> |
|
380 |
</div> |
|
381 |
</div> |
|
382 |
</div> |
|
383 |
</div> |
|
384 |
</li> |
|
385 |
<li class="el-item"> |
|
386 |
<div class="uk-grid-margin uk-grid uk-grid-stack"> |
|
387 |
<div class="uk-width-1-1@m uk-first-column"> |
|
388 |
<div class="uk-overflow-auto uk-scrollspy-inview uk-animation-slide-top-medium"> |
|
389 |
<div *ngIf="noUsage" class="uk-alert">{{ noUsage }}</div> |
|
390 |
<div> |
|
391 |
<table class="uk-table uk-table-striped uk-table-middle rules-table"> |
|
392 |
<thead> |
|
393 |
<tr> |
|
394 |
<th>Rule Name</th> |
|
395 |
<th class="uk-text-nowrap">Rule Description</th> |
|
396 |
<th class="uk-text-nowrap">Rule Weight</th> |
|
397 |
<th class="uk-text-nowrap"># of records</th> |
|
398 |
<th class="uk-text-nowrap">Status</th> |
|
399 |
</tr> |
|
400 |
</thead> |
|
401 |
<tbody> |
|
402 |
<tr *ngFor="let usageRule of usageResults" class="el-item"> |
|
403 |
<td class="uk-table-shrink"> |
|
404 |
<div class="el-title">{{ usageRule.name }}</div> |
|
405 |
</td> |
|
406 |
<td class="uk-table-shrink"> |
|
407 |
<div class="el-title" [innerHtml]="usageRule.description"> |
|
408 |
</div> |
|
409 |
</td> |
|
410 |
<td class="uk-table-shrink"> |
|
411 |
<div class="el-title">{{ usageRule.weight }}</div> |
|
412 |
</td> |
|
413 |
<td class="uk-table-shrink"> |
|
414 |
<div class="el-title">{{ usageRule.successes }}</div> |
|
415 |
</td> |
|
416 |
<td class="uk-table-shrink"> |
|
417 |
<div *ngIf="!usageRule.hasErrors" class="el-title"> |
|
418 |
<span uk-icon="icon: check" style="color: #4b991f" class="uk-icon"> |
|
419 |
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="check" ratio="1"> |
|
420 |
<polyline fill="none" stroke="#000" stroke-width="1.1" points="4,10 8,15 17,4"></polyline> |
|
421 |
</svg> |
|
422 |
</span> |
|
423 |
</div> |
|
424 |
<div *ngIf="usageRule.hasErrors && usageRule.mandatory"> |
|
425 |
<span uk-icon="icon: close" style="color: #cd242b" class="uk-icon"> |
|
426 |
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="close" ratio="1"> |
|
427 |
<path fill="none" stroke="#000" stroke-width="1.06" d="M16,16 L4,4"></path> |
|
428 |
<path fill="none" stroke="#000" stroke-width="1.06" d="M16,4 L4,16"></path> |
|
429 |
</svg> |
|
430 |
</span> |
|
431 |
<a class="errorlink viewErrors uk-display-block" (click)="viewErrors(usageRule)"><span>View Errors</span></a> |
|
432 |
</div> |
|
433 |
<div *ngIf="usageRule.hasErrors && !usageRule.mandatory"> |
|
434 |
<span uk-icon="icon: warning" style="color: #e9d60d" class="uk-icon"> |
|
435 |
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="warning" ratio="1"> |
|
436 |
<circle cx="10" cy="14" r="1"></circle> |
|
437 |
<circle fill="none" stroke="#000" stroke-width="1.1" cx="10" cy="10" r="9"></circle> |
|
438 |
<path d="M10.97,7.72 C10.85,9.54 10.56,11.29 10.56,11.29 C10.51,11.87 10.27,12 9.99,12 C9.69,12 9.49,11.87 9.43,11.29 C9.43,11.29 9.16,9.54 9.03,7.72 C8.96,6.54 9.03,6 9.03,6 C9.03,5.45 9.46,5.02 9.99,5 C10.53,5.01 10.97,5.44 10.97,6 C10.97,6 11.04,6.54 10.97,7.72 L10.97,7.72 Z"></path> |
|
439 |
</svg> |
|
440 |
</span> |
|
441 |
<a class="warninglink viewErrors uk-display-block" (click)="viewErrors(usageRule)"><span>View Warnings</span></a> |
|
442 |
</div> |
|
443 |
</td> |
|
444 |
</tr> |
|
445 |
</tbody> |
|
446 |
</table> |
|
447 |
</div> |
|
448 |
</div> |
|
449 |
</div> |
|
450 |
</div> |
|
451 |
</li> |
|
452 |
</ul> |
|
453 |
</div> |
|
454 |
</div> |
|
455 |
</div> |
|
456 |
</div> |
|
457 |
</div> |
|
458 |
--> |
modules/uoa-repository-dashboard-gui/trunk/app/pages/compatibility/compatibility-validation-history.component.html | ||
---|---|---|
4 | 4 |
<h1 class="uk-h2">Previous validations</h1> |
5 | 5 |
|
6 | 6 |
<!-- TOP HELP CONTENT --> |
7 |
<!-- <help-content #topHelperContent [position]="'top'"
|
|
8 |
[ngClass]="topHelperContent.isPresent()?'uk-margin-medium-top uk-margin-medium-bottom':'clear-style'">
|
|
9 |
</help-content>-->
|
|
7 |
<help-content #topHelperContent [position]="'top'" |
|
8 |
[ngClass]="topHelperContent.isPresent()?'uk-margin-medium-top uk-margin-medium-bottom':'clear-style'"> |
|
9 |
</help-content>
|
|
10 | 10 |
|
11 | 11 |
<div class="uk-container uk-margin-medium-top uk-margin-medium-bottom"> |
12 | 12 |
<div class="uk-grid"> |
13 | 13 |
|
14 | 14 |
<!-- LEFT HELP CONTENT --> |
15 |
<!-- <aside-help-content #leftHelperContent [position]="'left'"
|
|
16 |
[ngClass]="leftHelperContent.isPresent()?'tm-sidebar uk-width-1-4@m uk-first-column':'clear-style'">
|
|
17 |
</aside-help-content>-->
|
|
15 |
<aside-help-content #leftHelperContent [position]="'left'" |
|
16 |
[ngClass]="leftHelperContent.isPresent()?'tm-sidebar uk-width-1-4@m uk-first-column':'clear-style'"> |
|
17 |
</aside-help-content>
|
|
18 | 18 |
|
Also available in: Unified diff
added inline validation messages to create-update repository forms