Revision 51030
Added by Panagiotis Kanakakis about 6 years ago
modules/uoa-repository-manager-gui/branches/aai/src/main/java/eu/dnetlib/repo/manager/client/NavigationManager.java | ||
---|---|---|
32 | 32 |
|
33 | 33 |
//TODO use role instead of email |
34 | 34 |
if(RepositoryManager.currentUserRole.equals("admin")) { |
35 |
Document.get().getElementById("adminMenuHeader").getStyle().setDisplay(Style.Display.BLOCK); |
|
36 |
Document.get().getElementById("adminMenuHelpTexts").getStyle().setDisplay(Style.Display.BLOCK); |
|
37 |
Document.get().getElementById("adminMenuMetrics").getStyle().setDisplay(Style.Display.BLOCK); |
|
38 |
|
|
35 | 39 |
Document.get().getElementById("admin1").getStyle().setDisplay(Style.Display.BLOCK); |
36 |
Document.get().getElementById("admin2").getStyle().setDisplay(Style.Display.BLOCK); |
|
37 | 40 |
} else { |
41 |
Document.get().getElementById("adminMenuHeader").getStyle().setDisplay(Style.Display.NONE); |
|
42 |
Document.get().getElementById("adminMenuHelpTexts").getStyle().setDisplay(Style.Display.NONE); |
|
43 |
Document.get().getElementById("adminMenuMetrics").getStyle().setDisplay(Style.Display.NONE); |
|
44 |
|
|
38 | 45 |
Document.get().getElementById("admin1").getStyle().setDisplay(Style.Display.NONE); |
39 |
Document.get().getElementById("admin2").getStyle().setDisplay(Style.Display.NONE); |
|
40 | 46 |
} |
41 | 47 |
|
42 | 48 |
RepositoryManager.previousToken = RepositoryManager.currentToken; |
modules/uoa-repository-manager-gui/branches/aai/src/main/java/eu/dnetlib/repo/manager/server/services/RepositoryServiceImpl.java | ||
---|---|---|
1 | 1 |
package eu.dnetlib.repo.manager.server.services; |
2 | 2 |
|
3 |
import com.fasterxml.jackson.databind.DeserializationConfig; |
|
4 | 3 |
import com.fasterxml.jackson.databind.ObjectMapper; |
5 |
import com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException; |
|
6 |
import com.unboundid.util.Base64; |
|
7 | 4 |
import eu.dnetlib.domain.data.PiwikInfo; |
8 | 5 |
import eu.dnetlib.domain.data.Repository; |
9 | 6 |
import eu.dnetlib.domain.data.RepositoryInterface; |
... | ... | |
13 | 10 |
import eu.dnetlib.repo.manager.client.services.RepositoryService; |
14 | 11 |
import eu.dnetlib.repo.manager.server.utils.EmailUtils; |
15 | 12 |
import eu.dnetlib.repo.manager.server.utils.LocalVocabularies; |
16 |
import eu.dnetlib.domain.data.PiwikInfo; |
|
17 | 13 |
import eu.dnetlib.repo.manager.service.controllers.RepositoryApi; |
18 | 14 |
import eu.dnetlib.repo.manager.shared.*; |
19 | 15 |
import eu.dnetlib.repos.RepoApi; |
... | ... | |
23 | 19 |
import org.apache.commons.lang.WordUtils; |
24 | 20 |
import org.apache.log4j.Logger; |
25 | 21 |
import org.json.JSONException; |
26 |
import org.json.JSONObject; |
|
27 | 22 |
import org.springframework.beans.factory.annotation.Autowired; |
28 | 23 |
import org.springframework.beans.factory.annotation.Value; |
29 | 24 |
import org.springframework.core.ParameterizedTypeReference; |
... | ... | |
41 | 36 |
import java.io.IOException; |
42 | 37 |
import java.io.UnsupportedEncodingException; |
43 | 38 |
import java.net.URLEncoder; |
44 |
import java.text.Normalizer; |
|
45 | 39 |
import java.util.*; |
46 | 40 |
import java.util.concurrent.ConcurrentHashMap; |
47 | 41 |
import java.net.URL; |
... | ... | |
722 | 716 |
|
723 | 717 |
return null; |
724 | 718 |
} |
719 |
|
|
720 |
@Override |
|
721 |
public Aggregations getRepositoryAggregations(String repoId) throws Exception { |
|
722 |
return repositoryApi.getRepositoryAggregations(repoId); |
|
723 |
} |
|
725 | 724 |
} |
modules/uoa-repository-manager-gui/branches/aai/src/main/java/eu/dnetlib/repo/manager/server/services/BrokerServiceImpl.java | ||
---|---|---|
9 | 9 |
import eu.dnetlib.repo.manager.service.controllers.RepositoryApi; |
10 | 10 |
import eu.dnetlib.repo.manager.shared.BrokerException; |
11 | 11 |
import eu.dnetlib.repo.manager.shared.RepositoryServiceException; |
12 |
import eu.dnetlib.repo.manager.shared.Term; |
|
12 | 13 |
import eu.dnetlib.repo.manager.shared.Tuple; |
13 | 14 |
import eu.dnetlib.repo.manager.shared.broker.*; |
14 | 15 |
import eu.dnetlib.repos.RepoApi; |
... | ... | |
165 | 166 |
} |
166 | 167 |
|
167 | 168 |
@Override |
168 |
public Map<String, List<SimpleSubscriptionDesc>> getSubscriptionsOfUser(String userEmail) throws BrokerException { |
|
169 |
return brokerApi.getSubscriptionsOfUser(userEmail); |
|
169 |
public Map<String, List<SimpleSubscriptionDesc>> getSimpleSubscriptionsOfUser(String userEmail) throws BrokerException {
|
|
170 |
return brokerApi.getSimpleSubscriptionsOfUser(userEmail);
|
|
170 | 171 |
} |
171 | 172 |
|
172 | 173 |
@Override |
... | ... | |
191 | 192 |
} |
192 | 193 |
} |
193 | 194 |
|
195 |
public Map<String,Term> getDnetTopics() throws BrokerException { |
|
196 |
return brokerApi.getDnetTopics(); |
|
197 |
} |
|
198 |
|
|
194 | 199 |
/** |
195 | 200 |
* Helper class to aggregate the datasources topic sizes by datasource name. |
196 | 201 |
* |
... | ... | |
224 | 229 |
|
225 | 230 |
return entries; |
226 | 231 |
} |
232 |
|
|
233 |
@Override |
|
234 |
public EventsPage getNotificationsBySubscriptionId(String subscriptionId,String page,String size) throws BrokerException { |
|
235 |
return brokerApi.getNotificationsBySubscriptionId(subscriptionId,page,size); |
|
236 |
} |
|
237 |
|
|
238 |
@Override |
|
239 |
public Map<String, List<Subscription>> getSubscriptionsOfUser(String userEmail) throws BrokerException { |
|
240 |
return brokerApi.getSubscriptionsOfUser(userEmail); |
|
241 |
} |
|
242 |
|
|
227 | 243 |
} |
modules/uoa-repository-manager-gui/branches/aai/src/main/java/eu/dnetlib/repo/manager/shared/broker/NotificationMode.java | ||
---|---|---|
6 | 6 |
* Created by stefanos on 10-Mar-17. |
7 | 7 |
*/ |
8 | 8 |
public enum NotificationMode implements IsSerializable { |
9 |
MOCK, EMAIL
|
|
9 |
|
|
10 | 10 |
} |
modules/uoa-repository-manager-gui/branches/aai/src/main/java/eu/dnetlib/repo/manager/shared/Term.java | ||
---|---|---|
1 |
package eu.dnetlib.repo.manager.shared; |
|
2 |
|
|
3 |
import com.google.gwt.user.client.rpc.IsSerializable; |
|
4 |
|
|
5 |
/** |
|
6 |
* Created by panagiotis on 15/1/2018. |
|
7 |
*/ |
|
8 |
public class Term implements IsSerializable { |
|
9 |
|
|
10 |
public String englishName; |
|
11 |
public String nativeName; |
|
12 |
public String encoding; |
|
13 |
public String code; |
|
14 |
|
|
15 |
public Term() { |
|
16 |
} |
|
17 |
|
|
18 |
public Term(String englishName, String nativeName, String encoding, String code) { |
|
19 |
this.englishName = englishName; |
|
20 |
this.nativeName = nativeName; |
|
21 |
this.encoding = encoding; |
|
22 |
this.code = code; |
|
23 |
} |
|
24 |
|
|
25 |
public String getEnglishName() { |
|
26 |
return englishName; |
|
27 |
} |
|
28 |
|
|
29 |
public void setEnglishName(String englishName) { |
|
30 |
this.englishName = englishName; |
|
31 |
} |
|
32 |
|
|
33 |
public String getNativeName() { |
|
34 |
return nativeName; |
|
35 |
} |
|
36 |
|
|
37 |
public void setNativeName(String nativeName) { |
|
38 |
this.nativeName = nativeName; |
|
39 |
} |
|
40 |
|
|
41 |
public String getEncoding() { |
|
42 |
return encoding; |
|
43 |
} |
|
44 |
|
|
45 |
public void setEncoding(String encoding) { |
|
46 |
this.encoding = encoding; |
|
47 |
} |
|
48 |
|
|
49 |
public String getCode() { |
|
50 |
return code; |
|
51 |
} |
|
52 |
|
|
53 |
public void setCode(String code) { |
|
54 |
this.code = code; |
|
55 |
} |
|
56 |
} |
modules/uoa-repository-manager-gui/branches/aai/src/main/java/eu/dnetlib/repo/manager/shared/Aggregations.java | ||
---|---|---|
1 |
package eu.dnetlib.repo.manager.shared; |
|
2 |
|
|
3 |
import com.google.gwt.user.client.rpc.IsSerializable; |
|
4 |
|
|
5 |
import java.util.ArrayList; |
|
6 |
import java.util.List; |
|
7 |
|
|
8 |
public class Aggregations implements IsSerializable{ |
|
9 |
|
|
10 |
private List<AggregationDetails> aggregationHistory = new ArrayList<>(); |
|
11 |
private AggregationDetails lastCollection; |
|
12 |
private AggregationDetails lastTransformation; |
|
13 |
|
|
14 |
public Aggregations() { |
|
15 |
} |
|
16 |
|
|
17 |
public List<AggregationDetails> getAggregationHistory() { |
|
18 |
return aggregationHistory; |
|
19 |
} |
|
20 |
|
|
21 |
public void setAggregationHistory(List<AggregationDetails> aggregationHistory) { |
|
22 |
this.aggregationHistory = aggregationHistory; |
|
23 |
} |
|
24 |
|
|
25 |
public AggregationDetails getLastCollection() { |
|
26 |
return lastCollection; |
|
27 |
} |
|
28 |
|
|
29 |
public void setLastCollection(AggregationDetails lastCollection) { |
|
30 |
this.lastCollection = lastCollection; |
|
31 |
} |
|
32 |
|
|
33 |
public AggregationDetails getLastTransformation() { |
|
34 |
return lastTransformation; |
|
35 |
} |
|
36 |
|
|
37 |
public void setLastTransformation(AggregationDetails lastTransformation) { |
|
38 |
this.lastTransformation = lastTransformation; |
|
39 |
} |
|
40 |
} |
modules/uoa-repository-manager-gui/branches/aai/src/main/java/eu/dnetlib/repo/manager/shared/AggregationDetails.java | ||
---|---|---|
1 |
package eu.dnetlib.repo.manager.shared; |
|
2 |
|
|
3 |
import com.google.gwt.user.client.rpc.IsSerializable; |
|
4 |
|
|
5 |
import java.util.Date; |
|
6 |
|
|
7 |
public class AggregationDetails implements IsSerializable{ |
|
8 |
|
|
9 |
|
|
10 |
private String aggregationStage; |
|
11 |
private Date date; |
|
12 |
private int numberOfRecords; |
|
13 |
private String collectionMode; |
|
14 |
|
|
15 |
public AggregationDetails() { |
|
16 |
} |
|
17 |
|
|
18 |
public String getAggregationStage() { |
|
19 |
return aggregationStage; |
|
20 |
} |
|
21 |
|
|
22 |
public String getCollectionMode() { |
|
23 |
return collectionMode; |
|
24 |
} |
|
25 |
|
|
26 |
public void setCollectionMode(String collectionMode) { |
|
27 |
this.collectionMode = collectionMode; |
|
28 |
} |
|
29 |
|
|
30 |
public void setAggregationStage(String aggregationStage) { |
|
31 |
this.aggregationStage = aggregationStage; |
|
32 |
} |
|
33 |
|
|
34 |
public Date getDate() { |
|
35 |
return date; |
|
36 |
} |
|
37 |
|
|
38 |
public void setDate(Date date) { |
|
39 |
this.date = date; |
|
40 |
} |
|
41 |
|
|
42 |
public int getNumberOfRecords() { |
|
43 |
return numberOfRecords; |
|
44 |
} |
|
45 |
|
|
46 |
public void setNumberOfRecords(int numberOfRecords) { |
|
47 |
this.numberOfRecords = numberOfRecords; |
|
48 |
} |
|
49 |
} |
modules/uoa-repository-manager-gui/branches/aai/src/main/java/eu/dnetlib/repo/manager/client/browsehistory/ViewJobDetailsWidget.java | ||
---|---|---|
41 | 41 |
private String parentToken = ""; |
42 | 42 |
private String restToken = ""; |
43 | 43 |
|
44 |
private HTML title = new HTML(); |
|
44 | 45 |
private FlowPanel viewJobDetailsBoxContent = new FlowPanel(); |
45 | 46 |
|
46 | 47 |
private Alert errorAlert = new Alert(); |
... | ... | |
59 | 60 |
|
60 | 61 |
super(); |
61 | 62 |
|
62 |
HTML title = new HTML("<h1 class=\"uk-article-title\">Job details</h1>"); |
|
63 |
|
|
63 | 64 |
title.addStyleName("uk-margin-medium-bottom"); |
64 | 65 |
contentPanel.add(title); |
66 |
// HTML title = new HTML("<h1 class=\"uk-article-title\">Validation results for</h1>"); |
|
67 |
// title.addStyleName("uk-margin-medium-bottom"); |
|
68 |
// contentPanel.add(title); |
|
65 | 69 |
|
66 | 70 |
contentPanel.add(viewJobDetailsBoxContent); |
67 | 71 |
|
... | ... | |
111 | 115 |
|
112 | 116 |
ViewJobDetailsWidget.this.storedJob = storedJob; |
113 | 117 |
|
118 |
// title.setHTML("<h1 class=\"uk-article-title\">Validation results for " + storedJob.getOfficialName() + "</h1>"); |
|
119 |
title.setHTML("<h1 class=\"uk-article-title\">Validation results for</h1>"); |
|
120 |
|
|
114 | 121 |
viewJobDetailsBoxContent.removeStyleName("loading-big"); |
115 | 122 |
viewJobDetailsBoxContent.remove(loadingWheel); |
116 | 123 |
|
... | ... | |
140 | 147 |
|
141 | 148 |
String content = "<h4 class=\"uk-h4 uk-text-primary uk-scrollspy-inview uk-animation-slide-top-medium\"" + |
142 | 149 |
"uk-scrollspy-class=\"\"><span>" + storedJob.getBaseUrl() + "</span></h4>" + |
143 |
"<div class=\"uk-margin\">by " + storedJob.getUserEmail() + "</div>"; |
|
150 |
"<div class=\"uk-margin-small\">by " + storedJob.getUserEmail() + "</div>";
|
|
144 | 151 |
|
145 | 152 |
|
146 | 153 |
generalInfoItem.add(new HTML(content)); |
... | ... | |
152 | 159 |
FlowPanel generalInfoTags = new FlowPanel(); |
153 | 160 |
|
154 | 161 |
String content = "<hr class=\"uk-scrollspy-inview uk-animation-slide-bottom-small\" uk-scrollspy-class=\"\">" + |
155 |
"<div class=\"tags\">" + |
|
156 |
"<span class=\"label label-primary\">" + storedJob.getJobType() + "</span>" + |
|
157 |
"<span class=\"label label-primary\">" + storedJob.getGuidelinesShortName() + "</span>" + |
|
158 |
"<span class=\"label label-primary\">Validation set: " + storedJob.getValidationSet() + "</span>" + |
|
159 |
"<span class=\"label label-primary\">Started: " + storedJob.getStarted() + "</span>" + |
|
160 |
"<span class=\"label label-primary\">Ended: " + storedJob.getEnded() + "</span>" + |
|
161 |
"<span class=\"label label-primary\">Duration: " + storedJob.getDuration() + "</span>" + |
|
162 |
"<span class=\"label label-primary\">Records tested: " + storedJob.getRecordsTested() + "</span>" + |
|
163 |
"<span class=\"label label-primary\">Score for content: " + storedJob.getContentJobScore() + "</span>" + |
|
162 |
"<div>" + |
|
163 |
"<span class=\"\">" + storedJob.getJobType() + "</span> | " + |
|
164 |
"<span class=\"\">" + storedJob.getGuidelinesShortName() + "</span> | " + |
|
165 |
"<span class=\"\">Validation set: " + storedJob.getValidationSet() + "</span>" + |
|
166 |
"</div>" + |
|
167 |
"<div>" + |
|
168 |
"<span class=\"\">Started: " + storedJob.getStarted() + "</span>, " + |
|
169 |
"<span class=\"\">Ended: " + storedJob.getEnded() + "</span>, " + |
|
170 |
"<span class=\"\">Duration: " + storedJob.getDuration() + "</span>" + |
|
171 |
"</div>" + |
|
172 |
"<div style=\"font-size: 120%\">" + |
|
173 |
"<span class=\"\">Records tested: " + storedJob.getRecordsTested() + "</span>" + |
|
174 |
"</div>" + |
|
175 |
"<div>" + |
|
176 |
"<span class=\"label label-primary uk-margin-right\">Score for content: " + storedJob.getContentJobScore() + "</span>" + |
|
164 | 177 |
"<span class=\"label label-primary\">Score for usage: " + storedJob.getUsageJobScore() + "</span>" + |
165 | 178 |
"</div>" + |
166 | 179 |
"<hr class=\"uk-scrollspy-inview uk-animation-slide-bottom-small\" uk-scrollspy-class=\"\">"; |
... | ... | |
253 | 266 |
String content = "<table class=\"uk-table uk-table-striped uk-table-middle rules-table\">" + |
254 | 267 |
"<thead><tr><th>Rule Name</th><th class=\"uk-text-nowrap\">Rule Description</th>" + |
255 | 268 |
"<th class=\"uk-text-nowrap\">Rule Weight</th><th class=\"uk-text-nowrap\"># of records</th>" + |
256 |
"<th class=\"uk-text-nowrap\">Success</th></tr></thead>";
|
|
269 |
"<th class=\"uk-text-nowrap\">Status</th></tr></thead>";
|
|
257 | 270 |
|
258 | 271 |
content += "<tbody>"; |
259 | 272 |
|
... | ... | |
283 | 296 |
"<td class=\"uk-table-shrink\">\n"; |
284 | 297 |
|
285 | 298 |
if (jobResults.get(i).isHasErrors() && jobResults.get(i).isMandatory()) { |
286 |
content += "<img src=\"img/icon_colours-x.jpg\" alt=\"Error\" class=\"el-image uk-preserve-width\" width=\"20\">" + |
|
299 |
|
|
300 |
content += "<span uk-icon=\"icon: close\" style=\"color: #cd242b\"></span>" + |
|
287 | 301 |
"<a href=\"javascript:;\" class=\"errorlink viewErrors uk-display-block\" id=\"" + jobResults.get(i).getType() + "#" + i + "\"><span>View Errors</span></a>"; |
302 |
// content += "<img src=\"img/icon_colours-x.jpg\" alt=\"Error\" class=\"el-image uk-preserve-width\" width=\"20\">" + |
|
303 |
// "<a href=\"javascript:;\" class=\"errorlink viewErrors uk-display-block\" id=\"" + jobResults.get(i).getType() + "#" + i + "\"><span>View Errors</span></a>"; |
|
304 |
|
|
288 | 305 |
} else if (jobResults.get(i).isHasErrors() && !jobResults.get(i).isMandatory()) { |
289 |
content += "<img src=\"img/icon_colours-warning.jpg\" alt=\"Warning\" class=\"el-image uk-preserve-width\" width=\"20\">" + |
|
306 |
|
|
307 |
content += "<span uk-icon=\"icon: warning\" style=\"color: #e9d60d\"></span>" + |
|
290 | 308 |
"<a href=\"javascript:;\" class=\"warninglink viewErrors uk-display-block\" id=\"" + jobResults.get(i).getType() + "#" + i + "\"><span>View Warnings</span></a>"; |
309 |
// content += "<img src=\"img/icon_colours-warning.jpg\" alt=\"Warning\" class=\"el-image uk-preserve-width\" width=\"20\">" + |
|
310 |
// "<a href=\"javascript:;\" class=\"warninglink viewErrors uk-display-block\" id=\"" + jobResults.get(i).getType() + "#" + i + "\"><span>View Warnings</span></a>"; |
|
311 |
|
|
291 | 312 |
} else |
292 |
content += "<img src=\"img/icon_colours-check.jpg\" alt=\"Success\" class=\"el-image uk-preserve-width\" width=\"20\">"; |
|
313 |
content += "<span uk-icon=\"icon: check\" style=\"color: #4b991f\"></span>" ; |
|
314 |
// content += "<img src=\"img/icon_colours-check.jpg\" alt=\"Success\" class=\"el-image uk-preserve-width\" width=\"20\">"; |
|
293 | 315 |
|
294 | 316 |
content += "</td>" + |
295 | 317 |
"</tr>"; |
modules/uoa-repository-manager-gui/branches/aai/src/main/java/eu/dnetlib/repo/manager/client/browsehistory/BrowseHistoryWidget.java | ||
---|---|---|
8 | 8 |
import com.google.gwt.event.dom.client.ClickHandler; |
9 | 9 |
import com.google.gwt.query.client.Function; |
10 | 10 |
import com.google.gwt.user.client.Event; |
11 |
import com.google.gwt.user.client.Window; |
|
11 | 12 |
import com.google.gwt.user.client.rpc.AsyncCallback; |
12 | 13 |
import com.google.gwt.user.client.ui.FlowPanel; |
13 | 14 |
import com.google.gwt.user.client.ui.HTML; |
... | ... | |
304 | 305 |
updateContents(jobsOfUser.getJobs()); |
305 | 306 |
drawPager(bottomPagerPanel); |
306 | 307 |
// drawBottomPager(); |
308 |
|
|
309 |
Window.scrollTo(0, 0); |
|
307 | 310 |
} |
308 | 311 |
}); |
309 | 312 |
} |
... | ... | |
678 | 681 |
|
679 | 682 |
contents += "<td class=\"uk-table-shrink\" rowspan=\"2\"><div class=\"el-link actions\" href=\"#\">" + |
680 | 683 |
"<div class=\"viewDetailsLinkWrapper\"><a href=\"#" + parentToken + "/" + storedJob.getId() + "\" id=\"" + storedJob.getId() + |
681 |
"#viewDetails\" class=\"viewDetails\">View Results<i class=\"fa fa-info\"></i><i class=\"fa fa-angle-right\"></i></a></div>" + |
|
682 |
"<div><a id=\"" + storedJob.getId() + "#resubmit\" class=\"uk-button uk-button-primary resubmitJob\"><i></i>Resubmit</a></div>" + |
|
684 |
"#viewDetails\" class=\"viewDetails\">View Results<i class=\"fa fa-angle-right\"></i></a></div>" + |
|
685 |
"<div><a id=\"" + storedJob.getId() + "#resubmit\" class=\"resubmitJob\">Resubmit<i class=\"fa fa-repeat\" aria-hidden=\"true\"></i>" + |
|
686 |
"</a></div>" + |
|
683 | 687 |
"</div></td>"; |
684 | 688 |
|
685 | 689 |
if(storedJob.getValidationStatus().equals(Constants.VALIDATION_JOB_STATUS_SUCCESSFUL)) |
686 | 690 |
contents += "<td class=\"uk-table-shrink\" rowspan=\"2\"><input width=\"20\" type=\"image\" height=\"20\" " + |
687 |
"title=\"Successfull\" src=\"icon_colours-check.jpg\"></td>"; |
|
691 |
"title=\"Successfull\" src=\"img/icon_colours-check.jpg\"></td>";
|
|
688 | 692 |
else if(storedJob.getValidationStatus().equals(Constants.VALIDATION_JOB_STATUS_FAILED)) |
689 | 693 |
contents += "<td class=\"uk-table-shrink\" rowspan=\"2\"><input width=\"20\" type=\"image\" height=\"20\" " + |
690 |
"title=\"Successfull\" src=\"icon_colours-x.jpg\"></td>"; |
|
694 |
"title=\"Successfull\" src=\"img/icon_colours-x.jpg\"></td>"; |
|
695 |
else if(storedJob.getValidationStatus().equals(Constants.VALIDATION_JOB_STATUS_ONGOING)) |
|
696 |
contents += "<td class=\"uk-table-shrink\" rowspan=\"2\"><input width=\"20\" type=\"image\" height=\"20\" " + |
|
697 |
"title=\"Ongoing\" src=\"img/icon_colours-question.jpg\"></td>"; |
|
691 | 698 |
// else |
692 | 699 |
// contents += "<td rowspan=\"2\"><input width=\"20\" type=\"image\" height=\"20\" " + |
693 | 700 |
// "title=\"Successfull\" src=\"img/check-icon.png\"></td>"; |
modules/uoa-repository-manager-gui/branches/aai/src/main/java/eu/dnetlib/repo/manager/client/services/RepositoryService.java | ||
---|---|---|
7 | 7 |
import eu.dnetlib.domain.data.RepositoryInterface; |
8 | 8 |
import eu.dnetlib.domain.functionality.UserProfile; |
9 | 9 |
import eu.dnetlib.repo.manager.shared.*; |
10 |
import org.json.JSONException; |
|
10 | 11 |
|
11 | 12 |
import java.util.List; |
12 | 13 |
import java.util.Map; |
... | ... | |
66 | 67 |
void markPiwikSiteAsValidated(String repositoryId) throws RepositoryServiceException; |
67 | 68 |
|
68 | 69 |
MetricsInfo getMetricsInfoForRepository(String repoId) throws RepositoryServiceException; |
70 |
|
|
71 |
|
|
72 |
Aggregations getRepositoryAggregations(String repoId) throws Exception; |
|
69 | 73 |
} |
modules/uoa-repository-manager-gui/branches/aai/src/main/java/eu/dnetlib/repo/manager/client/datasources/update/UpdateRepositoryWidget.java | ||
---|---|---|
2 | 2 |
|
3 | 3 |
import com.google.gwt.core.client.GWT; |
4 | 4 |
import com.google.gwt.dom.client.Document; |
5 |
import com.google.gwt.event.dom.client.ClickEvent; |
|
6 |
import com.google.gwt.event.dom.client.ClickHandler; |
|
7 |
import com.google.gwt.query.client.Function; |
|
8 |
import com.google.gwt.user.client.Event; |
|
9 |
import com.google.gwt.user.client.Window; |
|
5 | 10 |
import com.google.gwt.user.client.rpc.AsyncCallback; |
6 | 11 |
import com.google.gwt.user.client.ui.FlowPanel; |
7 | 12 |
import com.google.gwt.user.client.ui.HTML; |
8 | 13 |
import com.google.gwt.user.client.ui.Widget; |
9 | 14 |
import eu.dnetlib.domain.data.Repository; |
15 |
import eu.dnetlib.domain.functionality.validator.JobResultEntry; |
|
10 | 16 |
import eu.dnetlib.gwt.client.help.HelpService; |
11 | 17 |
import eu.dnetlib.gwt.client.help.HelpServiceAsync; |
12 | 18 |
import eu.dnetlib.repo.manager.client.AbstractRepositoryManagerWidget; |
13 | 19 |
import eu.dnetlib.repo.manager.client.HelpCallback; |
14 | 20 |
import eu.dnetlib.repo.manager.client.RepositoryManager; |
15 | 21 |
import eu.dnetlib.repo.manager.client.RepositoryManagerWidget; |
22 |
import eu.dnetlib.repo.manager.client.enrichcontent.EventsSubscriptionForm; |
|
16 | 23 |
import eu.dnetlib.repo.manager.client.services.RepositoryService; |
17 | 24 |
import eu.dnetlib.repo.manager.client.services.RepositoryServiceAsync; |
25 |
import eu.dnetlib.repo.manager.client.widgets.*; |
|
18 | 26 |
import eu.dnetlib.repo.manager.shared.DatasourceVocabularies; |
19 |
import org.gwtbootstrap3.client.ui.Alert; |
|
27 |
import eu.dnetlib.repo.manager.shared.broker.OpenaireSubscription; |
|
28 |
import eu.dnetlib.repo.manager.shared.broker.Subscription; |
|
29 |
import org.gwtbootstrap3.client.ui.*; |
|
30 |
import org.gwtbootstrap3.client.ui.TextBox; |
|
20 | 31 |
import org.gwtbootstrap3.client.ui.constants.AlertType; |
32 |
import org.gwtbootstrap3.client.ui.constants.ButtonType; |
|
33 |
import org.gwtbootstrap3.client.ui.constants.ModalBackdrop; |
|
21 | 34 |
|
35 |
import static com.google.gwt.query.client.GQuery.$; |
|
36 |
|
|
22 | 37 |
/** |
23 | 38 |
* Created by stefania on 1/14/16. |
24 | 39 |
*/ |
... | ... | |
27 | 42 |
private String parentToken = ""; |
28 | 43 |
private String restToken = ""; |
29 | 44 |
|
45 |
private static HTML title = new HTML(); |
|
30 | 46 |
private FlowPanel updateRepositoryBoxContent = new FlowPanel(); |
31 | 47 |
|
32 | 48 |
private Alert errorAlert = new Alert(); |
49 |
private Alert successAlert = new Alert(); |
|
33 | 50 |
|
34 | 51 |
private RepositoryServiceAsync repositoryService = GWT.create(RepositoryService.class); |
35 | 52 |
private static HelpServiceAsync helpService = GWT.create(HelpService.class); |
36 | 53 |
|
37 | 54 |
public UpdateRepositoryWidget() { |
38 | 55 |
|
39 |
HTML title = new HTML("<h1 class=\"uk-article-title\">Update your datasource</h1>"); |
|
40 | 56 |
title.addStyleName("uk-margin-medium-bottom"); |
41 | 57 |
contentPanel.add(title); |
42 | 58 |
|
... | ... | |
45 | 61 |
errorAlert.setVisible(false); |
46 | 62 |
updateRepositoryBoxContent.add(errorAlert); |
47 | 63 |
|
64 |
successAlert.setType(AlertType.SUCCESS); |
|
65 |
successAlert.setDismissable(false); |
|
66 |
successAlert.setVisible(false); |
|
67 |
updateRepositoryBoxContent.add(successAlert); |
|
68 |
|
|
48 | 69 |
contentPanel.add(updateRepositoryBoxContent); |
49 | 70 |
} |
50 | 71 |
|
... | ... | |
52 | 73 |
public void clear() { |
53 | 74 |
updateRepositoryBoxContent.clear(); |
54 | 75 |
errorAlert.setVisible(false); |
76 |
successAlert.setVisible(false); |
|
55 | 77 |
gridPanel.remove(helpPanel); |
56 | 78 |
} |
57 | 79 |
|
... | ... | |
60 | 82 |
|
61 | 83 |
Document.get().getElementById("headerNoTransparent").removeClassName("tm-header-transparent"); |
62 | 84 |
updateRepositoryBoxContent.add(errorAlert); |
85 |
updateRepositoryBoxContent.add(successAlert); |
|
63 | 86 |
|
64 | 87 |
final HTML loadingWheel = new HTML("<div class=\"loader-big\" style=\"text-align: center; padding-top: 170px; " + |
65 | 88 |
"color: rgb(47, 64, 80); font-weight: bold;\">Retrieving repository...</div>" + |
... | ... | |
84 | 107 |
@Override |
85 | 108 |
public void onSuccess(final Repository repository) { |
86 | 109 |
|
110 |
String logoURLSource = ""; |
|
111 |
if(repository.getLogoUrl()==null || repository.getLogoUrl().isEmpty()) |
|
112 |
logoURLSource = "img/yourLogoHere.jpg"; |
|
113 |
else |
|
114 |
logoURLSource = repository.getLogoUrl(); |
|
115 |
|
|
116 |
title.setHTML("<h1 class=\"uk-article-title\">" + |
|
117 |
"<a id=\"updateLogoURL\" href=\"javascript:;\">" + |
|
118 |
"<img src=\"" + logoURLSource + "\" alt=\"[Repo Logo]\" width=\"60px\" style=\"margin-right: 15px; margin-top:-8px\"></a>" + |
|
119 |
repository.getOfficialName() + "</h1>"); |
|
120 |
|
|
87 | 121 |
// RepositoryManager.pageHeader.clear(); |
88 | 122 |
// |
89 | 123 |
// String logoURLSource = ""; |
... | ... | |
122 | 156 |
UpdateRepositoryForm updateRepositoryForm = |
123 | 157 |
new UpdateRepositoryForm(repository.getDatasourceType(), datasourceVocabularies, repository); |
124 | 158 |
updateRepositoryBoxContent.add(updateRepositoryForm.asWidget()); |
159 |
|
|
160 |
addHandlers(repository); |
|
125 | 161 |
} |
126 | 162 |
}); |
127 | 163 |
} |
... | ... | |
138 | 174 |
public void afterAdditionToRootPanel() { |
139 | 175 |
|
140 | 176 |
} |
177 |
|
|
178 |
private void addHandlers(final Repository repository) { |
|
179 |
|
|
180 |
$("#updateLogoURL").click(new Function() { |
|
181 |
|
|
182 |
public boolean f(Event e) { |
|
183 |
|
|
184 |
errorAlert.setVisible(false); |
|
185 |
successAlert.setVisible(false); |
|
186 |
|
|
187 |
openModalToEnterLogoURL(repository); |
|
188 |
|
|
189 |
return true; |
|
190 |
} |
|
191 |
}); |
|
192 |
} |
|
193 |
|
|
194 |
private void openModalToEnterLogoURL(final Repository repository) { |
|
195 |
|
|
196 |
final Modal updateLogoURLModal = new Modal(); |
|
197 |
updateLogoURLModal.setDataBackdrop(ModalBackdrop.STATIC); |
|
198 |
|
|
199 |
FlowPanel modalContent = new FlowPanel(); |
|
200 |
|
|
201 |
HTML title = new HTML("<h2 class=\"uk-modal-title\">Update Logo URL</h2>\n"); |
|
202 |
modalContent.add(title); |
|
203 |
|
|
204 |
Form logoURLForm = new Form(); |
|
205 |
|
|
206 |
final TextBox logoURLTextBox = new TextBox(); |
|
207 |
if(repository.getLogoUrl()==null || repository.getLogoUrl().isEmpty()) |
|
208 |
logoURLTextBox.setPlaceholder("Logo URL"); |
|
209 |
else |
|
210 |
logoURLTextBox.setValue(repository.getLogoUrl()); |
|
211 |
|
|
212 |
logoURLForm.addStyleName("uk-margin uk-grid"); |
|
213 |
|
|
214 |
FlowPanel logoURLTextBoxWrapper = new FlowPanel(); |
|
215 |
logoURLTextBoxWrapper.addStyleName("uk-width-1-1"); |
|
216 |
logoURLTextBoxWrapper.add(logoURLTextBox); |
|
217 |
logoURLForm.add(logoURLTextBoxWrapper); |
|
218 |
|
|
219 |
modalContent.add(logoURLForm); |
|
220 |
|
|
221 |
FlowPanel actionButtons = new FlowPanel(); |
|
222 |
actionButtons.addStyleName("uk-text-right uk-margin-bottom"); |
|
223 |
modalContent.add(actionButtons); |
|
224 |
|
|
225 |
Button no = new Button("Cancel"); |
|
226 |
no.addStyleName("uk-button uk-button-default"); |
|
227 |
no.addClickHandler(new ClickHandler() { |
|
228 |
@Override |
|
229 |
public void onClick(ClickEvent event) { |
|
230 |
updateLogoURLModal.hide(); |
|
231 |
updateLogoURLModal.removeFromParent(); |
|
232 |
} |
|
233 |
}); |
|
234 |
actionButtons.add(no); |
|
235 |
|
|
236 |
Button yes = new Button("Update"); |
|
237 |
yes.addStyleName("uk-button uk-button-primary"); |
|
238 |
yes.addClickHandler(new ClickHandler() { |
|
239 |
@Override |
|
240 |
public void onClick(ClickEvent event) { |
|
241 |
|
|
242 |
repository.setLogoUrl(logoURLTextBox.getValue().trim()); |
|
243 |
repositoryService.updateRepositoryInformation(repository, new AsyncCallback<Void>() { |
|
244 |
|
|
245 |
@Override |
|
246 |
public void onFailure(Throwable throwable) { |
|
247 |
|
|
248 |
errorAlert.setText("System error updating logo URL"); |
|
249 |
errorAlert.setVisible(true); |
|
250 |
|
|
251 |
updateLogoURLModal.hide(); |
|
252 |
updateLogoURLModal.removeFromParent(); |
|
253 |
} |
|
254 |
|
|
255 |
@Override |
|
256 |
public void onSuccess(Void aVoid) { |
|
257 |
|
|
258 |
successAlert.setVisible(true); |
|
259 |
successAlert.setText("Logo updated successfully"); |
|
260 |
|
|
261 |
String logoURLSource = ""; |
|
262 |
if(repository.getLogoUrl()==null || repository.getLogoUrl().isEmpty()) |
|
263 |
logoURLSource = "img/yourLogoHere.jpg"; |
|
264 |
else |
|
265 |
logoURLSource = repository.getLogoUrl(); |
|
266 |
|
|
267 |
UpdateRepositoryWidget.title.setHTML("<h1 class=\"uk-article-title\">" + |
|
268 |
"<a id=\"updateLogoURL\" href=\"javascript:;\">" + |
|
269 |
"<img src=\"" + logoURLSource + "\" alt=\"[Repo Logo]\" width=\"60px\" style=\"margin-right: 15px; margin-top:-8px\"></a>" + |
|
270 |
repository.getOfficialName() + "</h1>"); |
|
271 |
|
|
272 |
addHandlers(repository); |
|
273 |
|
|
274 |
updateLogoURLModal.hide(); |
|
275 |
updateLogoURLModal.removeFromParent(); |
|
276 |
} |
|
277 |
}); |
|
278 |
} |
|
279 |
}); |
|
280 |
actionButtons.add(yes); |
|
281 |
|
|
282 |
ModalBody modalBody = new ModalBody(); |
|
283 |
modalBody.add(modalContent); |
|
284 |
updateLogoURLModal.add(modalBody); |
|
285 |
updateLogoURLModal.getElement().getChild(0).getChild(0).getChild(0).removeFromParent(); |
|
286 |
|
|
287 |
updateLogoURLModal.show(); |
|
288 |
} |
|
141 | 289 |
} |
modules/uoa-repository-manager-gui/branches/aai/src/main/java/eu/dnetlib/repo/manager/client/services/BrokerService.java | ||
---|---|---|
3 | 3 |
import com.google.gwt.user.client.rpc.RemoteService; |
4 | 4 |
import com.google.gwt.user.client.rpc.RemoteServiceRelativePath; |
5 | 5 |
import eu.dnetlib.repo.manager.shared.BrokerException; |
6 |
import eu.dnetlib.repo.manager.shared.Term; |
|
6 | 7 |
import eu.dnetlib.repo.manager.shared.broker.*; |
7 | 8 |
import org.json.JSONException; |
8 | 9 |
|
... | ... | |
23 | 24 |
|
24 | 25 |
DatasourcesBroker getDatasourcesOfUser(String userEmail, boolean includeShared, boolean includeByOthers) throws BrokerException; |
25 | 26 |
|
26 |
Map<String, List<SimpleSubscriptionDesc>> getSubscriptionsOfUser(String userEmail) throws BrokerException; |
|
27 |
Map<String, List<SimpleSubscriptionDesc>> getSimpleSubscriptionsOfUser(String userEmail) throws BrokerException;
|
|
27 | 28 |
|
29 |
Map<String, List<Subscription>> getSubscriptionsOfUser(String userEmail) throws BrokerException; |
|
30 |
|
|
28 | 31 |
Subscription subscribe(OpenaireSubscription obj) throws BrokerException; |
29 | 32 |
|
30 | 33 |
void unsubscribe(String subscriptionId) throws BrokerException; |
... | ... | |
32 | 35 |
void unsubscribe(List<String> subscriptionIds) throws BrokerException; |
33 | 36 |
|
34 | 37 |
Subscription getSubscription(String subscriptionId) throws BrokerException; |
38 |
|
|
39 |
Map<String,Term> getDnetTopics() throws BrokerException; |
|
40 |
|
|
41 |
EventsPage getNotificationsBySubscriptionId(String subscriptionId, String page, String size) throws BrokerException; |
|
35 | 42 |
} |
modules/uoa-repository-manager-gui/branches/aai/src/main/resources/eu/dnetlib/repo/manager/server/springContext-repo-manager.properties | ||
---|---|---|
1 |
# the address where validator is running and is accessible from the rest of the web |
|
2 |
services.repo-manager.baseUrl = http://${container.hostname}:${container.port}/${container.context} |
|
1 |
## the address where validator is running and is accessible from the rest of the web |
|
2 |
#services.repo-manager.baseUrl = http://${container.hostname}:${container.port}/${container.context} |
|
3 |
# |
|
4 |
## base address for soap web services |
|
5 |
#transport.soap.baseAddress = http://${container.hostname}:${container.port}/${container.context} |
|
6 |
# |
|
7 |
#transport.soap.force.local.address = false |
|
8 |
# |
|
9 |
## the email of the administrator |
|
10 |
## he will receive all the automatic bug reports and feedback created |
|
11 |
#services.repo-manager.adminEmail = nikonas@di.uoa.gr |
|
12 |
# |
|
13 |
## if set to true, getRepositories will return dummy repositories |
|
14 |
#services.repo-manager.repository.testing.mode = false |
|
15 |
# |
|
16 |
#services.repo-manager.deploy.environment = development |
|
17 |
# |
|
18 |
## the mailhost for the mail service |
|
19 |
#services.validator.mail.host = smtp.gmail.com |
|
20 |
## the port where the mail service is running |
|
21 |
#services.validator.mail.port = 465 |
|
22 |
## the address that appears in the from field in the mails send by the validator |
|
23 |
#services.validator.mail.fromAddress = no-reply@openaire.eu |
|
24 |
## the reply-to field value in the mails send by the validator |
|
25 |
#services.validator.mail.replyToAddress = no-reply@openaire.eu |
|
26 |
## the username of the account used to login in the mail server |
|
27 |
#services.validator.mail.username = test.openaire@gmail.com |
|
28 |
## the password of the account used to login in the mail server |
|
29 |
#services.validator.mail.password = ^($*@$)*!$ |
|
30 |
## if authentication should take place |
|
31 |
## if set to false username and password is not needed |
|
32 |
#services.validator.mail.authenticate = true |
|
33 |
## is set to yes then all mails will not be sent to their targets but to the address specified in services.validator.mail.overrideEmail |
|
34 |
#services.validator.mail.override = false |
|
35 |
## if set to true then no mails are send, they are only logged as a debug message |
|
36 |
#services.validator.mail.logonly = false |
|
37 |
## the mode used for the mails send by the validator |
|
38 |
#services.validator.mail.mode = ssl |
|
39 |
## used by eu.dnetlib.utils.MailLibrary to control debuggin messages |
|
40 |
#services.validator.mail.debug = false |
|
41 |
## if services.validator.mail.override is true then all mails will be send only to this address |
|
42 |
#services.validator.mail.overrideEmail = nikonas@di.uoa.gr |
|
43 |
## a comma-seperated list of address that will receive all mails about validations and repo registrations |
|
44 |
#services.validator.mail.specialRecipients = nikonas@di.uoa.gr |
|
45 |
# |
|
46 |
## a comma-seperated list of addresses that have the ability to register repos without the need for validation and registration |
|
47 |
#services.validator.repoRegistration.override = nikonas@di.uoa.gr |
|
48 |
# |
|
49 |
# |
|
50 |
#repomanager.db.driverClassName = org.postgresql.Driver |
|
51 |
#repomanager.db.url = jdbc:postgresql://194.177.192.119:5432/repomanager |
|
52 |
#repomanager.db.username = dnet |
|
53 |
#repomanager.db.password = dnetPwd |
|
54 |
# |
|
55 |
#services.repomanager.analyticsURL = https://analytics.openaire.eu/addsite.php? |
|
56 |
# |
|
57 |
#services.repomanager.usageStatisticsDiagramsBaseURL = https://beta.openaire.eu/stats3/ |
|
58 |
#services.repomanager.usageStatisticsNumbersBaseURL = https://beta.services.openaire.eu/usagestats/datasources/ |
|
59 |
#services.repomanager.usagestats.adminEmail = repositoryusagestats@openaire.eu |
|
3 | 60 |
|
4 |
# base address for soap web services |
|
5 |
transport.soap.baseAddress = http://${container.hostname}:${container.port}/${container.context} |
|
6 |
|
|
7 |
transport.soap.force.local.address = false |
|
8 |
|
|
9 |
# the email of the administrator |
|
10 |
# he will receive all the automatic bug reports and feedback created |
|
11 |
services.repo-manager.adminEmail = nikonas@di.uoa.gr |
|
12 |
|
|
13 |
# if set to true, getRepositories will return dummy repositories |
|
14 |
services.repo-manager.repository.testing.mode = false |
|
15 |
|
|
16 |
services.repo-manager.deploy.environment = development |
|
17 |
|
|
18 |
# the mailhost for the mail service |
|
19 |
services.validator.mail.host = smtp.gmail.com |
|
20 |
# the port where the mail service is running |
|
21 |
services.validator.mail.port = 465 |
|
22 |
# the address that appears in the from field in the mails send by the validator |
|
23 |
services.validator.mail.fromAddress = no-reply@openaire.eu |
|
24 |
# the reply-to field value in the mails send by the validator |
|
25 |
services.validator.mail.replyToAddress = no-reply@openaire.eu |
|
26 |
# the username of the account used to login in the mail server |
|
27 |
services.validator.mail.username = test.openaire@gmail.com |
|
28 |
# the password of the account used to login in the mail server |
|
29 |
services.validator.mail.password = ^($*@$)*!$ |
|
30 |
# if authentication should take place |
|
31 |
# if set to false username and password is not needed |
|
32 |
services.validator.mail.authenticate = true |
|
33 |
# is set to yes then all mails will not be sent to their targets but to the address specified in services.validator.mail.overrideEmail |
|
34 |
services.validator.mail.override = false |
|
35 |
# if set to true then no mails are send, they are only logged as a debug message |
|
36 |
services.validator.mail.logonly = false |
|
37 |
# the mode used for the mails send by the validator |
|
38 |
services.validator.mail.mode = ssl |
|
39 |
# used by eu.dnetlib.utils.MailLibrary to control debuggin messages |
|
40 |
services.validator.mail.debug = false |
|
41 |
# if services.validator.mail.override is true then all mails will be send only to this address |
|
42 |
services.validator.mail.overrideEmail = nikonas@di.uoa.gr |
|
43 |
# a comma-seperated list of address that will receive all mails about validations and repo registrations |
|
44 |
services.validator.mail.specialRecipients = nikonas@di.uoa.gr |
|
45 |
|
|
46 |
# a comma-seperated list of addresses that have the ability to register repos without the need for validation and registration |
|
47 |
services.validator.repoRegistration.override = nikonas@di.uoa.gr |
|
48 |
|
|
49 |
|
|
50 |
repomanager.db.driverClassName = org.postgresql.Driver |
|
51 |
repomanager.db.url = jdbc:postgresql://194.177.192.119:5432/repomanager |
|
52 |
repomanager.db.username = dnet |
|
53 |
repomanager.db.password = dnetPwd |
|
54 |
|
|
55 |
services.repomanager.analyticsURL = https://analytics.openaire.eu/addsite.php? |
|
56 |
|
|
57 |
services.repomanager.usageStatisticsDiagramsBaseURL = https://beta.openaire.eu/stats3/ |
|
58 |
services.repomanager.usageStatisticsNumbersBaseURL = https://beta.services.openaire.eu/usagestats/datasources/ |
|
59 |
services.repomanager.usagestats.adminEmail = repositoryusagestats@openaire.eu |
|
60 |
|
|
61 | 61 |
oidc.issuer = https://aai.openminted.eu/oidc/ |
62 | 62 |
oidc.id = 24e83176-1312-4ba3-bc0b-ffeebea1603e |
63 | 63 |
oidc.secret = U_gLOupYu2trYIOwfxGgZkkZoOHG_zGfaViOUsXcZ7qVQuF1rcJeQYKIDX1TY3z27CIoHaqq9ht2rmAiUmBRYQ |
64 |
webapp.home = http://localhost:8380/uoa-repository-manager-gui/openid_connect_login |
|
65 |
webapp.front=http://localhost:8380/uoa-repository-manager-gui/#dashboard |
|
64 |
webapp.home = http://beta.services.openaire.eu:8380/provider-user-management/openid_connect_login |
|
65 |
webapp.front=http://localhost:8380/repomanager-aai/#dashboard |
modules/uoa-repository-manager-gui/branches/aai/src/main/java/eu/dnetlib/repo/manager/client/validator/test/SelectRepositoryOrJournalWidget.java | ||
---|---|---|
26 | 26 |
|
27 | 27 |
private Form baseURLForm = new Form(); |
28 | 28 |
|
29 |
private RadioButton chooseExistingBaseURLRadio = new RadioButton("baseURLRadio", "Choose existing base URL", false);
|
|
29 |
private RadioButton chooseExistingBaseURLRadio = new RadioButton("baseURLRadio", "Select base URL from one of your registered repositories", false);
|
|
30 | 30 |
private ListBox existingBaseURLsListBox = new ListBox(); |
31 |
private RadioButton addManuallyRadio = new RadioButton("baseURLRadio", "or enter one manually", false);
|
|
31 |
private RadioButton addManuallyRadio = new RadioButton("baseURLRadio", "or enter new", false);
|
|
32 | 32 |
private TextBox baseURLTextBox = new TextBox(); |
33 | 33 |
|
34 | 34 |
public SelectRepositoryOrJournalWidget(List<String> repositoryURLs) { |
modules/uoa-repository-manager-gui/branches/aai/src/main/java/eu/dnetlib/repo/manager/client/validator/test/SelectRepositoryTypeWidget.java | ||
---|---|---|
69 | 69 |
|
70 | 70 |
String content = ""; |
71 | 71 |
|
72 |
content += "<div class=\"uk-margin uk-grid\" uk-grid=\"\">\n" + |
|
72 |
content += "<div class=\"uk-margin uk-grid repositoryTypeSelection\" uk-grid=\"\">\n" +
|
|
73 | 73 |
"\t<div class=\"uk-width-expand@m uk-width-1-3@s uk-grid-item-match uk-first-column\">\n" + |
74 | 74 |
" \t<div class=\"uk-text-center uk-card uk-card-default uk-card-hover uk-scrollspy-inview uk-animation-slide-top-medium\" uk-scrollspy-class=\"\" data-id=\"page#38\" style=\"\">\n" + |
75 | 75 |
" \t<a href=\"#validate/literature\" class=\"el-link uk-position-cover uk-margin-remove-adjacent\"></a>\n" + |
... | ... | |
77 | 77 |
" <img src=\"img/Literature_repos_wide.png\" class=\"el-image\" alt=\"\" style=\"width: 100%\">\n" + |
78 | 78 |
" </div> \n" + |
79 | 79 |
" <div class=\"uk-card-body\">\n" + |
80 |
" <h3 class=\"el-title uk-margin uk-card-title uk-margin-remove-adjacent uk-margin-small-bottom\">Validate Literature Repository</h3>\n" +
|
|
81 |
"\t\t\t\t<div class=\"el-meta uk-margin uk-text-meta\">Lorem ipsum dolor sit amet, consectetur adipiscing elit...</div>\n" + |
|
80 |
" <h3 class=\"el-title uk-margin uk-card-title uk-margin-remove-adjacent uk-margin-small-bottom\">Run compatibility test against the OpenAIRE literature guidelines.</h3>\n" +
|
|
81 |
// "\t\t\t\t<div class=\"el-meta uk-margin uk-text-meta\">Lorem ipsum dolor sit amet, consectetur adipiscing elit...</div>\n" +
|
|
82 | 82 |
" </div>\n" + |
83 | 83 |
"\t\t</div>\n" + |
84 | 84 |
"\t</div>\n" + |
... | ... | |
90 | 90 |
" <img src=\"img/Data_repos_wide.png\" class=\"el-image\" alt=\"\" style=\"width: 100%\">\n" + |
91 | 91 |
" </div> \n" + |
92 | 92 |
" <div class=\"uk-card-body\">\n" + |
93 |
" <h3 class=\"el-title uk-margin uk-card-title uk-margin-remove-adjacent uk-margin-small-bottom\">Validate Data Repository</h3>\n" +
|
|
94 |
"\t\t\t\t<div class=\"el-meta uk-margin uk-text-meta\">Lorem ipsum dolor sit amet, consectetur adipiscing elit...</div>\n" + |
|
93 |
" <h3 class=\"el-title uk-margin uk-card-title uk-margin-remove-adjacent uk-margin-small-bottom\">Run compatibility test against the OpenAIRE Guidelines for Data Archives.</h3>\n" +
|
|
94 |
// "\t\t\t\t<div class=\"el-meta uk-margin uk-text-meta\">Lorem ipsum dolor sit amet, consectetur adipiscing elit...</div>\n" +
|
|
95 | 95 |
" </div>\n" + |
96 | 96 |
"\t\t</div>\n" + |
97 | 97 |
"\t</div>\n" + |
... | ... | |
102 | 102 |
" \t<img src=\"img/CRIS_wide.png\" class=\"el-image\" alt=\"\" style=\"width: 100%\">\n" + |
103 | 103 |
" </div> \n" + |
104 | 104 |
" <div class=\"uk-card-body\">\n" + |
105 |
" <h3 class=\"el-title uk-margin uk-card-title uk-margin-remove-adjacent uk-margin-small-bottom\">Validate Cris Repository</h3>\n" +
|
|
106 |
"\t\t\t\t<div class=\"el-meta uk-margin uk-text-meta\">Lorem ipsum dolor sit amet, consectetur adipiscing elit...</div>\n" + |
|
105 |
" <h3 class=\"el-title uk-margin uk-card-title uk-margin-remove-adjacent uk-margin-small-bottom\">Run compatibility test against the OpenAIRE Guidelines for CRIS Managers based on CERIF-XML.</h3>\n" +
|
|
106 |
// "\t\t\t\t<div class=\"el-meta uk-margin uk-text-meta\">Lorem ipsum dolor sit amet, consectetur adipiscing elit...</div>\n" +
|
|
107 | 107 |
" </div>\n" + |
108 | 108 |
"\t\t</div>\n" + |
109 | 109 |
"\t</div>\n" + |
modules/uoa-repository-manager-gui/branches/aai/src/main/webapp/RepositoryManager.html | ||
---|---|---|
47 | 47 |
integrity="sha256-hwg4gsxgFZhOsEEamdOYGBf13FyQuiTwlAQgxVSNgt4=" crossorigin="anonymous"></script> |
48 | 48 |
<script src="uikit-3/js/uikit.min.js"></script> |
49 | 49 |
|
50 |
<script src="uikit-3/js/uikit-icons.min.js"></script> |
|
51 |
|
|
50 | 52 |
<script src="js/theme.js"></script> |
51 | 53 |
|
52 | 54 |
<link rel="icon" type="image/png" href="img/favicon.ico"> |
... | ... | |
428 | 430 |
|
429 | 431 |
<ul class="uk-navbar-nav"> |
430 | 432 |
<li class="uk-parent"> |
431 |
<a class="loginLink" href="/uoa-repository-manager-gui/openid_connect_login">
|
|
433 |
<a class="loginLink" href="/repomanager-aai/openid_connect_login">
|
|
432 | 434 |
<span class="uk-margin-small-right uk-icon"><svg height="20" ratio="1" viewBox="0 0 20 20" width="20" xmlns="http://www.w3.org/2000/svg"><circle cx="9.9" cy="6.4" fill="none" r="4.4" stroke="#000" stroke-width="1.1"></circle><path d="M1.5,19 C2.3,14.5 5.8,11.2 10,11.2 C14.2,11.2 17.7,14.6 18.5,19.2" fill="none" stroke="#000" stroke-width="1.1"></path></svg> |
433 | 435 |
</span> |
434 | 436 |
Sign in | Register |
... | ... | |
1370 | 1372 |
<div> |
1371 | 1373 |
<div class="uk-panel" id="module-0"> |
1372 | 1374 |
<ul class="uk-nav uk-nav-default"> |
1373 |
<li class="uk-nav-header uk-parent"><a href="#dashboard">Home</a>
|
|
1375 |
<li class="uk-nav-header uk-parent"><a href="#dashboard">Dashboard</a>
|
|
1374 | 1376 |
</li> |
1375 | 1377 |
<li class="uk-nav-header uk-parent">Sources |
1376 | 1378 |
<ul class="uk-nav-sub"> |
... | ... | |
1388 | 1390 |
<a href="#validate">Validate</a> |
1389 | 1391 |
</li> |
1390 | 1392 |
<li> |
1391 |
<a href="#browseHistory">Browse History</a>
|
|
1393 |
<a href="#browseHistory">Validation History</a>
|
|
1392 | 1394 |
</li> |
1393 | 1395 |
<li> |
1394 |
<a href="#monitor">Monitor</a> |
|
1396 |
<a href="#monitor">Collection Monitor</a>
|
|
1395 | 1397 |
</li> |
1396 | 1398 |
</ul> |
1397 | 1399 |
</li> |
... | ... | |
1492 | 1494 |
</div> |
1493 | 1495 |
<div class="uk-navbar-center"> |
1494 | 1496 |
<ul class="uk-navbar-nav"> |
1495 |
<li class=""><a href="#dashboard" class="" aria-expanded="false">Home</a>
|
|
1497 |
<li class=""><a href="#dashboard" class="" aria-expanded="false">Dashboard</a>
|
|
1496 | 1498 |
</li> |
1497 | 1499 |
<li class="uk-parent"><a href="#" class="" aria-expanded="false">Sources</a> |
1498 | 1500 |
|
... | ... | |
1525 | 1527 |
<a href="#validate">Validate</a> |
1526 | 1528 |
</li> |
1527 | 1529 |
<li> |
1528 |
<a href="#browseHistory">Browse History</a>
|
|
1530 |
<a href="#browseHistory">Validation History</a>
|
|
1529 | 1531 |
</li> |
1530 | 1532 |
<li> |
1531 |
<a href="#monitor">Monitor</a> |
|
1533 |
<a href="#monitor">Collection Monitor</a>
|
|
1532 | 1534 |
</li> |
1533 | 1535 |
</ul> |
1534 | 1536 |
</div> |
... | ... | |
1556 | 1558 |
</li> |
1557 | 1559 |
<li class=""><a href="#getImpact" class="" aria-expanded="false">Metrics</a> |
1558 | 1560 |
</li> |
1559 |
<li id="admin2" class="uk-parent adminMenu" style="display: none;"><a href="#" class="" aria-expanded="false">Admin</a>
|
|
1561 |
<!--<li id="admin2" class="uk-parent adminMenu" style="display: none;"><a href="#" class="" aria-expanded="false">Admin</a>-->
|
|
1560 | 1562 |
|
1561 |
<div class="uk-navbar-dropdown uk-navbar-dropdown-bottom-left"
|
|
1562 |
style="top: 80px; left: 0px;">
|
|
1563 |
<div class="uk-navbar-dropdown-grid uk-child-width-1-1 uk-grid uk-grid-stack"
|
|
1564 |
uk-grid="">
|
|
1565 |
<div class="uk-first-column">
|
|
1566 |
<ul class="uk-nav uk-navbar-dropdown-nav">
|
|
1567 |
<li class="helpAdminMenu">
|
|
1568 |
<a href="#admin/helpTexts">Help Texts</a>
|
|
1569 |
</li>
|
|
1570 |
<li class="metricsAdminMenu">
|
|
1571 |
<a href="#admin/metrics">Metrics</a>
|
|
1572 |
</li>
|
|
1573 |
</ul>
|
|
1574 |
</div>
|
|
1575 |
</div>
|
|
1576 |
</div>
|
|
1577 |
</li>
|
|
1563 |
<!--<div class="uk-navbar-dropdown uk-navbar-dropdown-bottom-left"-->
|
|
1564 |
<!--style="top: 80px; left: 0px;">-->
|
|
1565 |
<!--<div class="uk-navbar-dropdown-grid uk-child-width-1-1 uk-grid uk-grid-stack"-->
|
|
1566 |
<!--uk-grid="">-->
|
|
1567 |
<!--<div class="uk-first-column">-->
|
|
1568 |
<!--<ul class="uk-nav uk-navbar-dropdown-nav">-->
|
|
1569 |
<!--<li class="helpAdminMenu">-->
|
|
1570 |
<!--<a href="#admin/helpTexts">Help Texts</a>-->
|
|
1571 |
<!--</li>-->
|
|
1572 |
<!--<li class="metricsAdminMenu">-->
|
|
1573 |
<!--<a href="#admin/metrics">Metrics</a>-->
|
|
1574 |
<!--</li>-->
|
|
1575 |
<!--</ul>-->
|
|
1576 |
<!--</div>-->
|
|
1577 |
<!--</div>-->
|
|
1578 |
<!--</div>-->
|
|
1579 |
<!--</li>-->
|
|
1578 | 1580 |
</ul> |
1579 | 1581 |
|
1580 | 1582 |
</div> |
... | ... | |
1591 | 1593 |
<div class="uk-navbar-dropdown-grid uk-child-width-1-1 uk-grid uk-grid-stack" uk-grid=""> |
1592 | 1594 |
<div class="uk-first-column"> |
1593 | 1595 |
<ul class="uk-nav uk-navbar-dropdown-nav"> |
1594 |
<li><a class="logoutLink loginLink" href="#landing">Log out</a></li> |
|
1596 |
<li id="adminMenuHeader" class="uk-nav-header">Admin</li> |
|
1597 |
<li id="adminMenuHelpTexts"> |
|
1598 |
<a href="#admin/helpTexts">Help Texts</a> |
|
1599 |
</li> |
|
1600 |
<li id="adminMenuMetrics" class="uk-margin-small-bottom"> |
|
1601 |
<a href="#admin/metrics">Metrics</a> |
|
1602 |
</li> |
|
1603 |
<li> |
|
1604 |
<a class="logoutLink loginLink" href="#landing">Log out</a> |
|
1605 |
</li> |
|
1595 | 1606 |
</ul> |
1596 | 1607 |
</div> |
1597 | 1608 |
</div> |
modules/uoa-repository-manager-gui/branches/aai/src/main/java/eu/dnetlib/repo/manager/client/validator/test/SelectParametersWidget.java | ||
---|---|---|
57 | 57 |
selectParametersWidgetPanel.addStyleName("uk-margin-top"); |
58 | 58 |
|
59 | 59 |
// RECORDS |
60 |
recordsLabel.setHTML("<label>Number of records</label>"); |
|
60 |
recordsLabel.setHTML("<label>Number of records to validate</label>");
|
|
61 | 61 |
|
62 | 62 |
recordsPanel.addStyleName("marginBottom20"); |
63 | 63 |
recordsPanel.add(recordsLabel); |
... | ... | |
110 | 110 |
setsForm.add(setsListBox); |
111 | 111 |
|
112 | 112 |
// XPATH |
113 |
xPathLabel.setHTML("<label>Would you like to group your results by a specific record's field?</label>");
|
|
113 |
xPathLabel.setHTML("<label>Would you like to group your results by a specific field?</label>"); |
|
114 | 114 |
|
115 | 115 |
xPathPanel.addStyleName("xPathPanel marginBottom20"); |
116 | 116 |
xPathPanel.add(xPathLabel); |
modules/uoa-repository-manager-gui/branches/aai/src/main/java/eu/dnetlib/repo/manager/client/validator/test/ValidationWizardCompleteWidget.java | ||
---|---|---|
25 | 25 |
// contentPanel.addStyleName("success"); |
26 | 26 |
|
27 | 27 |
HTML html = new HTML(); |
28 |
html.setHTML("<div class=\"success\"><i class=\"fa fa-check-circle\"></i><h3>Validation has begun " + |
|
29 |
"successfully!</h3></div>"); |
|
28 |
html.setHTML("<div class=\"success\"><i class=\"fa fa-check-circle\"></i><h3>Validation has begun</h3></div>"); |
|
30 | 29 |
|
31 | 30 |
contentPanel.add(html); |
32 | 31 |
|
modules/uoa-repository-manager-gui/branches/aai/src/main/java/eu/dnetlib/repo/manager/client/validator/test/SelectGuidelinesWidget.java | ||
---|---|---|
87 | 87 |
counter++; |
88 | 88 |
} |
89 | 89 |
|
90 |
showAdvanced.setText("Show Advanced");
|
|
90 |
showAdvanced.setText("Show Content and Usage Rules");
|
|
91 | 91 |
showAdvanced.setIcon(IconType.ANGLE_DOWN); |
92 | 92 |
showAdvanced.setIconPosition(IconPosition.LEFT); |
93 | 93 |
showAdvanced.addStyleName("showAdvanced"); |
... | ... | |
97 | 97 |
public void onClick(ClickEvent event) { |
98 | 98 |
if(areRulesShown) { |
99 | 99 |
areRulesShown = false; |
100 |
showAdvanced.setText("Show Advanced");
|
|
100 |
showAdvanced.setText("Show Content and Usage Rules");
|
|
101 | 101 |
showAdvanced.setIcon(IconType.ANGLE_DOWN); |
102 | 102 |
selectGuidelinesWidgetPanel.remove(selectRulesPanel); |
103 | 103 |
} else { |
104 | 104 |
areRulesShown = true; |
105 |
showAdvanced.setText("Hide Advanced");
|
|
105 |
showAdvanced.setText("Hide Content and Usage Rules");
|
|
106 | 106 |
showAdvanced.setIcon(IconType.ANGLE_UP); |
107 | 107 |
selectGuidelinesWidgetPanel.add(selectRulesPanel); |
108 | 108 |
} |
modules/uoa-repository-manager-gui/branches/aai/src/main/java/eu/dnetlib/repo/manager/client/monitor/AggregationHistoryTimeline.java | ||
---|---|---|
1 |
package eu.dnetlib.repo.manager.client.monitor; |
|
2 |
|
|
3 |
import com.google.gwt.i18n.client.DateTimeFormat; |
|
4 |
import com.google.gwt.user.client.ui.FlowPanel; |
|
5 |
import com.google.gwt.user.client.ui.HTML; |
|
6 |
import com.google.gwt.user.client.ui.IsWidget; |
|
7 |
import com.google.gwt.user.client.ui.Widget; |
|
8 |
import eu.dnetlib.repo.manager.shared.AggregationDetails; |
|
9 |
|
|
10 |
import java.util.List; |
|
11 |
|
|
12 |
/** |
|
13 |
* Created by stefania on 1/16/18. |
|
14 |
*/ |
|
15 |
public class AggregationHistoryTimeline implements IsWidget { |
|
16 |
|
|
17 |
private FlowPanel aggregationHistoryPanel = new FlowPanel(); |
|
18 |
|
|
19 |
private DateTimeFormat dtf = DateTimeFormat.getFormat("yyyy-MM-dd"); |
|
20 |
|
|
21 |
public AggregationHistoryTimeline(List<AggregationDetails> aggregationHistory) { |
|
22 |
|
|
23 |
aggregationHistoryPanel.addStyleName("uk-width-1-1@m"); |
|
24 |
|
|
25 |
FlowPanel section = new FlowPanel(); |
|
26 |
section.addStyleName("section md-bg-blue-grey-700"); |
|
27 |
aggregationHistoryPanel.add(section); |
|
28 |
|
|
29 |
FlowPanel container = new FlowPanel(); |
|
30 |
container.addStyleName("uk-container uk-container-center"); |
|
31 |
section.add(container); |
|
32 |
|
|
33 |
FlowPanel timeline = new FlowPanel(); |
|
34 |
timeline.addStyleName("al_timeline"); |
|
35 |
container.add(timeline); |
|
36 |
|
|
37 |
for(AggregationDetails aggregationDetails: aggregationHistory) { |
|
38 |
|
|
39 |
FlowPanel timelineBlock = new FlowPanel(); |
|
40 |
timelineBlock.addStyleName("al_timeline_block versionChange"); |
|
41 |
|
|
42 |
FlowPanel timelineImage = new FlowPanel(); |
|
43 |
timelineImage.addStyleName("al_timeline_image uk-scrollspy-init-inview uk-scrollspy-inview uk-animation-scale-up"); |
|
44 |
timelineBlock.add(timelineImage); |
|
45 |
|
|
46 |
FlowPanel timelineContent = new FlowPanel(); |
|
47 |
timelineContent.addStyleName("al_timeline_content uk-scrollspy-init-inview uk-scrollspy-inview uk-animation-slide-left"); |
|
48 |
timelineBlock.add(timelineContent); |
|
49 |
|
|
50 |
String content = ""; |
|
51 |
|
|
52 |
if(aggregationDetails.getDate()!=null) |
|
53 |
content += "<h3>" + dtf.format(aggregationDetails.getDate()) + "</h3>"; |
|
54 |
|
|
55 |
if(aggregationDetails.getAggregationStage()!=null) |
|
56 |
content += "<p>Aggregation stage - " + aggregationDetails.getAggregationStage() + "</p>"; |
|
57 |
|
|
58 |
if(aggregationDetails.getCollectionMode()!=null) |
|
59 |
content += "<p>Collection mode - " + aggregationDetails.getCollectionMode() + "</p>"; |
|
60 |
|
|
61 |
content += "<p>Number of records - " + aggregationDetails.getNumberOfRecords() + "</p>"; |
|
62 |
// "<a class=\"md-btn md-btn-primary\" href=\"#\">View version details</a>" ; |
|
63 |
timelineContent.add(new HTML(content)); |
|
64 |
|
|
65 |
timeline.add(timelineBlock); |
|
66 |
} |
|
67 |
|
|
68 |
// String timelineContent = "<div _ngcontent-c5=\"\" class=\"uk-width-1-1@m\">\n" + |
|
69 |
// "<section _ngcontent-c5=\"\" class=\"section md-bg-blue-grey-700\">\n" + |
|
70 |
// " <div _ngcontent-c5=\"\" class=\"uk-container uk-container-center\">\n" + |
|
71 |
// " <div _ngcontent-c5=\"\" class=\"al_timeline\">\n" + |
|
72 |
// " <div _ngcontent-c5=\"\" class=\"al_timeline_block versionChange\">\n" + |
|
73 |
// " <div _ngcontent-c5=\"\" class=\"al_timeline_image uk-scrollspy-init-inview uk-scrollspy-inview uk-animation-scale-up\">\n" + |
|
74 |
// " </div>\n" + |
|
75 |
// " <div _ngcontent-c5=\"\" class=\"al_timeline_content uk-scrollspy-init-inview uk-scrollspy-inview uk-animation-slide-left\">\n" + |
|
76 |
// " <h3 _ngcontent-c5=\"\">Version 3</h3>\n" + |
|
77 |
// " <p _ngcontent-c5=\"\">Updated to this version on 08/08/17 by Antonis Lempesis</p>\n" + |
|
78 |
// " <a _ngcontent-c5=\"\" class=\"md-btn md-btn-primary\" href=\"#\">View version details</a>\n" + |
|
79 |
// " </div>\n" + |
|
80 |
// " </div>\n" + |
|
81 |
// " <div _ngcontent-c5=\"\" class=\"al_timeline_block update\">\n" + |
|
82 |
// " <div _ngcontent-c5=\"\" class=\"al_timeline_image uk-scrollspy-init-inview uk-scrollspy-inview uk-animation-scale-up\">\n" + |
|
83 |
// " </div>\n" + |
|
84 |
// " <div _ngcontent-c5=\"\" class=\"al_timeline_content uk-scrollspy-init-inview uk-scrollspy-inview uk-animation-slide-right\">\n" + |
|
85 |
// " <h3 _ngcontent-c5=\"\">Updated</h3>\n" + |
|
86 |
// " <p _ngcontent-c5=\"\">on 07/06/17 by George Papastefanatos</p>\n" + |
|
87 |
// " </div>\n" + |
|
88 |
// " </div>\n" + |
|
89 |
// " <div _ngcontent-c5=\"\" class=\"al_timeline_block update\">\n" + |
|
90 |
// " <div _ngcontent-c5=\"\" class=\"al_timeline_image uk-scrollspy-init-inview uk-scrollspy-inview uk-animation-scale-up\">\n" + |
|
91 |
// " </div>\n" + |
|
92 |
// " <div _ngcontent-c5=\"\" class=\"al_timeline_content uk-scrollspy-init-inview uk-scrollspy-inview uk-animation-slide-right\">\n" + |
|
93 |
// " <h3 _ngcontent-c5=\"\">Updated</h3>\n" + |
|
94 |
// " <p _ngcontent-c5=\"\">on 05/06/17 by Antonis Lempesis</p>\n" + |
|
95 |
// " </div>\n" + |
|
96 |
// " </div>\n" + |
|
97 |
// " <div _ngcontent-c5=\"\" class=\"al_timeline_block versionChange\">\n" + |
|
98 |
// " <div _ngcontent-c5=\"\" class=\"al_timeline_image uk-scrollspy-init-inview uk-scrollspy-inview uk-animation-scale-up\">\n" + |
|
99 |
// " </div>\n" + |
|
100 |
// " <div _ngcontent-c5=\"\" class=\"al_timeline_content uk-scrollspy-init-inview uk-scrollspy-inview uk-animation-slide-right\">\n" + |
|
101 |
// " <h3 _ngcontent-c5=\"\">Version 2</h3>\n" + |
|
102 |
// " <p _ngcontent-c5=\"\">Updated to this version by Stefania Martziou</p>\n" + |
|
103 |
// " <a _ngcontent-c5=\"\" class=\"md-btn md-btn-primary\" href=\"#\">View version details</a>\n" + |
|
104 |
// " </div>\n" + |
|
105 |
// " </div>\n" + |
|
106 |
// " <div _ngcontent-c5=\"\" class=\"al_timeline_block update\">\n" + |
|
107 |
// " <div _ngcontent-c5=\"\" class=\"al_timeline_image uk-scrollspy-init-inview uk-scrollspy-inview uk-animation-scale-up\">\n" + |
|
108 |
// " </div>\n" + |
|
109 |
// " <div _ngcontent-c5=\"\" class=\"al_timeline_content uk-scrollspy-init-inview uk-scrollspy-inview uk-animation-slide-right\">\n" + |
|
110 |
// " <h3 _ngcontent-c5=\"\">Updated</h3>\n" + |
|
111 |
// " <p _ngcontent-c5=\"\">on 07/06/17 by George Papastefanatos</p>\n" + |
|
112 |
// " </div>\n" + |
|
113 |
// " </div>\n" + |
|
114 |
// " <div _ngcontent-c5=\"\" class=\"al_timeline_block update\">\n" + |
|
115 |
// " <div _ngcontent-c5=\"\" class=\"al_timeline_image uk-scrollspy-init-inview uk-scrollspy-inview uk-animation-scale-up\">\n" + |
|
116 |
// " </div>\n" + |
|
117 |
// " <div _ngcontent-c5=\"\" class=\"al_timeline_content uk-scrollspy-init-inview uk-scrollspy-inview uk-animation-slide-right\">\n" + |
|
118 |
// " <h3 _ngcontent-c5=\"\">Updated</h3>\n" + |
|
119 |
// " <p _ngcontent-c5=\"\">on 07/06/17 by Panagiotis Lampropoulos</p>\n" + |
|
120 |
// " </div>\n" + |
|
121 |
// " </div>\n" + |
|
122 |
// " <div _ngcontent-c5=\"\" class=\"al_timeline_block update\">\n" + |
|
123 |
// " <div _ngcontent-c5=\"\" class=\"al_timeline_image uk-scrollspy-init-inview uk-scrollspy-inview uk-animation-scale-up\">\n" + |
|
124 |
// " </div>\n" + |
|
125 |
// " <div _ngcontent-c5=\"\" class=\"al_timeline_content uk-scrollspy-init-inview uk-scrollspy-inview uk-animation-slide-left\">\n" + |
|
126 |
// " <h3 _ngcontent-c5=\"\">Updated</h3>\n" + |
|
127 |
// " <p _ngcontent-c5=\"\">on 07/06/17 by Stefania Martziou</p>\n" + |
|
128 |
// " </div>\n" + |
|
129 |
// " </div>\n" + |
|
130 |
// " <div _ngcontent-c5=\"\" class=\"al_timeline_block versionChange\">\n" + |
|
131 |
// " <div _ngcontent-c5=\"\" class=\"al_timeline_image\">\n" + |
|
132 |
// " </div>\n" + |
|
133 |
// " <div _ngcontent-c5=\"\" class=\"al_timeline_content\">\n" + |
|
134 |
// " <h3 _ngcontent-c5=\"\">Version 1</h3>\n" + |
|
135 |
// " <p _ngcontent-c5=\"\">Updated to this version on 01/01/2017 by George Papastefanatos</p>\n" + |
|
136 |
// " <a _ngcontent-c5=\"\" class=\"md-btn md-btn-primary\" href=\"#\">View version details</a>\n" + |
|
137 |
// " </div>\n" + |
|
138 |
// " </div>\n" + |
|
139 |
// " </div>\n" + |
|
140 |
// " </div>\n" + |
|
141 |
// " </section>\n" + |
|
142 |
// "\n" + |
|
143 |
// "\n" + |
|
144 |
// " </div>"; |
|
145 |
// |
|
146 |
// HTML timeline = new HTML(timelineContent); |
|
147 |
// |
|
148 |
// aggregationHistoryPanel.add(timeline); |
|
149 |
|
|
150 |
} |
|
151 |
|
|
152 |
@Override |
|
153 |
public Widget asWidget() { |
|
154 |
return aggregationHistoryPanel; |
|
155 |
} |
|
156 |
} |
modules/uoa-repository-manager-gui/branches/aai/src/main/java/eu/dnetlib/repo/manager/client/monitor/CollectionMonitorWidget.java | ||
---|---|---|
1 |
package eu.dnetlib.repo.manager.client.monitor; |
|
2 |
|
|
3 |
import com.google.gwt.core.client.GWT; |
|
4 |
import com.google.gwt.dom.client.Document; |
|
5 |
import com.google.gwt.user.client.Window; |
|
6 |
import com.google.gwt.user.client.rpc.AsyncCallback; |
|
7 |
import com.google.gwt.user.client.ui.FlowPanel; |
|
8 |
import com.google.gwt.user.client.ui.HTML; |
|
9 |
import eu.dnetlib.domain.data.Repository; |
|
10 |
import eu.dnetlib.gwt.client.help.HelpService; |
|
11 |
import eu.dnetlib.gwt.client.help.HelpServiceAsync; |
|
12 |
import eu.dnetlib.repo.manager.client.AbstractRepositoryManagerWidget; |
|
13 |
import eu.dnetlib.repo.manager.client.HelpCallback; |
|
14 |
import eu.dnetlib.repo.manager.client.RepositoryManagerWidget; |
|
15 |
import eu.dnetlib.repo.manager.client.services.RepositoryService; |
|
16 |
import eu.dnetlib.repo.manager.client.services.RepositoryServiceAsync; |
|
17 |
import eu.dnetlib.repo.manager.shared.Aggregations; |
|
18 |
import org.gwtbootstrap3.client.ui.Alert; |
|
19 |
import org.gwtbootstrap3.client.ui.constants.AlertType; |
|
20 |
|
|
21 |
/** |
|
22 |
* Created by stefania on 1/16/18. |
|
23 |
*/ |
|
24 |
public class CollectionMonitorWidget extends AbstractRepositoryManagerWidget implements RepositoryManagerWidget { |
|
25 |
|
|
26 |
private String parentToken = ""; |
|
27 |
private String restToken = ""; |
|
28 |
|
|
29 |
private Alert errorAlert = new Alert(); |
|
30 |
|
|
31 |
private HTML title = new HTML(); |
|
32 |
private FlowPanel monitorContent = new FlowPanel(); |
|
33 |
|
|
34 |
private static HelpServiceAsync helpService = GWT.create(HelpService.class); |
|
35 |
private RepositoryServiceAsync repositoryService = GWT.create(RepositoryService.class); |
|
36 |
|
|
37 |
public CollectionMonitorWidget() { |
|
38 |
|
|
39 |
super(); |
|
40 |
|
|
41 |
title.addStyleName("uk-margin-medium-bottom"); |
|
42 |
contentPanel.add(title); |
|
43 |
|
|
44 |
errorAlert.setType(AlertType.DANGER); |
|
45 |
errorAlert.setDismissable(false); |
|
46 |
errorAlert.setVisible(false); |
|
47 |
contentPanel.add(errorAlert); |
|
48 |
|
|
49 |
contentPanel.add(monitorContent); |
|
50 |
} |
|
51 |
|
|
52 |
@Override |
|
53 |
public void clear() { |
|
54 |
|
|
55 |
monitorContent.clear(); |
|
56 |
errorAlert.setVisible(false); |
|
57 |
gridPanel.remove(helpPanel); |
|
58 |
} |
|
59 |
|
|
60 |
@Override |
|
61 |
public void reload() { |
|
62 |
|
|
63 |
errorAlert.setVisible(false); |
|
64 |
|
|
65 |
Document.get().getElementById("headerNoTransparent").removeClassName("tm-header-transparent"); |
|
66 |
|
|
67 |
helpService.getHelpById(parentToken, new HelpCallback(helpPanel, gridPanel)); |
|
68 |
|
|
69 |
final HTML loadingWheel = new HTML("<div class=\"loader-big\" style=\"text-align: center; padding-top: 170px; " + |
|
70 |
"color: rgb(47, 64, 80); font-weight: bold;\">Retrieving repository info...</div>" + |
|
71 |
"<div class=\"whiteFilm\"></div>"); |
|
72 |
monitorContent.addStyleName("loading-big"); |
|
73 |
monitorContent.add(loadingWheel); |
|
74 |
|
|
75 |
repositoryService.getRepository(restToken, new AsyncCallback<Repository>() { |
|
76 |
|
|
77 |
@Override |
|
78 |
public void onFailure(Throwable throwable) { |
|
79 |
|
|
80 |
monitorContent.removeStyleName("loading-big"); |
|
81 |
monitorContent.remove(loadingWheel); |
|
82 |
|
|
83 |
Alert errorAlert = new Alert(); |
|
84 |
errorAlert.setType(AlertType.DANGER); |
|
85 |
errorAlert.setText("System error retrieving repository info."); |
|
86 |
errorAlert.setDismissable(false); |
|
87 |
monitorContent.add(errorAlert); |
|
88 |
} |
|
89 |
|
|
90 |
@Override |
|
91 |
public void onSuccess(Repository repository) { |
|
92 |
|
|
93 |
title.setHTML("<h1 class=\"uk-article-title\">Aggregation history for " + repository.getOfficialName() + "</h1>"); |
|
94 |
|
|
95 |
repositoryService.getRepositoryAggregations(restToken, new AsyncCallback<Aggregations>() { |
|
96 |
|
|
97 |
@Override |
|
98 |
public void onFailure(Throwable throwable) { |
|
99 |
|
|
100 |
monitorContent.removeStyleName("loading-big"); |
|
101 |
monitorContent.remove(loadingWheel); |
|
102 |
|
|
103 |
Alert errorAlert = new Alert(); |
|
104 |
errorAlert.setType(AlertType.DANGER); |
|
105 |
errorAlert.setText("System error retrieving repository aggregation history."); |
|
106 |
errorAlert.setDismissable(false); |
|
107 |
monitorContent.add(errorAlert); |
|
108 |
} |
|
109 |
|
|
110 |
@Override |
|
111 |
public void onSuccess(Aggregations aggregations) { |
|
112 |
|
|
113 |
monitorContent.removeStyleName("loading-big"); |
|
114 |
monitorContent.remove(loadingWheel); |
|
115 |
|
|
116 |
if(aggregations==null || aggregations.getAggregationHistory()==null |
|
117 |
|| aggregations.getAggregationHistory().isEmpty()) { |
|
118 |
HTML message = new HTML("<div>There is no aggregation history for this repository at the moment</div>"); |
|
119 |
monitorContent.add(message); |
|
120 |
} else { |
|
121 |
AggregationHistoryTimeline aggregationHistoryTimeline = new AggregationHistoryTimeline(aggregations.getAggregationHistory()); |
|
122 |
monitorContent.add(aggregationHistoryTimeline.asWidget()); |
|
123 |
} |
|
124 |
} |
|
125 |
}); |
|
126 |
} |
|
127 |
}); |
|
128 |
} |
|
129 |
|
|
130 |
@Override |
|
131 |
public void setToken(String parentToken, String rest) { |
|
132 |
this.parentToken = parentToken; |
|
133 |
this.restToken = rest; |
|
134 |
} |
|
135 |
|
|
136 |
@Override |
|
137 |
public void afterAdditionToRootPanel() { |
|
138 |
|
|
139 |
} |
|
140 |
} |
modules/uoa-repository-manager-gui/branches/aai/src/main/java/eu/dnetlib/repo/manager/client/monitor/MonitorController.java | ||
---|---|---|
9 | 9 |
public class MonitorController extends TokenController { |
10 | 10 |
|
11 | 11 |
private MonitorWidget monitorWidget = new MonitorWidget(); |
12 |
private CollectionMonitorWidget collectionMonitorWidget = new CollectionMonitorWidget(); |
|
12 | 13 |
|
13 | 14 |
private static MonitorController instance = null; |
14 | 15 |
|
... | ... | |
25 | 26 |
if (rest == null) |
26 | 27 |
redrawWidget(contentPanel, monitorWidget, parent, rest); |
27 | 28 |
else { |
28 |
// redrawWidget(contentPanel, viewJobDetailsWidget, parent, rest);
|
|
29 |
redrawWidget(contentPanel, collectionMonitorWidget, parent, rest);
|
|
29 | 30 |
} |
30 | 31 |
} |
31 | 32 |
|
modules/uoa-repository-manager-gui/branches/aai/src/main/java/eu/dnetlib/repo/manager/client/monitor/MonitorWidget.java | ||
---|---|---|
2 | 2 |
|
3 | 3 |
import com.google.gwt.core.client.GWT; |
4 | 4 |
import com.google.gwt.dom.client.Document; |
5 |
import com.google.gwt.user.client.rpc.AsyncCallback; |
|
5 | 6 |
import com.google.gwt.user.client.ui.FlowPanel; |
6 | 7 |
import com.google.gwt.user.client.ui.HTML; |
7 | 8 |
import eu.dnetlib.gwt.client.help.HelpService; |
8 | 9 |
import eu.dnetlib.gwt.client.help.HelpServiceAsync; |
9 | 10 |
import eu.dnetlib.repo.manager.client.AbstractRepositoryManagerWidget; |
10 | 11 |
import eu.dnetlib.repo.manager.client.HelpCallback; |
12 |
import eu.dnetlib.repo.manager.client.RepositoryManager; |
|
11 | 13 |
import eu.dnetlib.repo.manager.client.RepositoryManagerWidget; |
12 | 14 |
import eu.dnetlib.repo.manager.client.services.RepositoryService; |
13 | 15 |
import eu.dnetlib.repo.manager.client.services.RepositoryServiceAsync; |
16 |
import eu.dnetlib.repo.manager.client.widgets.ListOrGridViewOfDatasourcesWidget; |
|
17 |
import eu.dnetlib.repo.manager.client.widgets.OpenAIRECompliantLogoDownloadWidget; |
|
18 |
import eu.dnetlib.repo.manager.shared.DatasourcesCollection; |
|
14 | 19 |
import org.gwtbootstrap3.client.ui.Alert; |
15 | 20 |
import org.gwtbootstrap3.client.ui.constants.AlertType; |
16 | 21 |
|
... | ... | |
61 | 66 |
|
62 | 67 |
helpService.getHelpById(parentToken, new HelpCallback(helpPanel, gridPanel)); |
63 | 68 |
|
64 |
HTML comingSoon = new HTML("Coming soon..."); |
|
65 |
monitorContent.add(comingSoon); |
|
69 |
final HTML loadingWheel = new HTML("<div class=\"loader-big\" style=\"text-align: center; padding-top: 170px; " + |
|
70 |
"color: rgb(47, 64, 80); font-weight: bold;\">Retrieving repositories...</div>" + |
|
71 |
"<div class=\"whiteFilm\"></div>"); |
|
72 |
monitorContent.addStyleName("loading-big"); |
|
73 |
monitorContent.add(loadingWheel); |
|
66 | 74 |
|
67 |
// final HTML loadingWheel = new HTML("<div class=\"loader-big\" style=\"text-align: center; padding-top: 170px; " + |
|
68 |
// "color: rgb(47, 64, 80); font-weight: bold;\">Retrieving repositories...</div>" + |
|
69 |
// "<div class=\"whiteFilm\"></div>"); |
|
70 |
// getImpactContent.addStyleName("loading-big"); |
|
71 |
// getImpactContent.add(loadingWheel); |
|
75 |
repositoryService.getRepositoriesOfUser(RepositoryManager.currentUser.getEmail(), true, false, |
|
76 |
new AsyncCallback<DatasourcesCollection>() { |
Also available in: Unified diff
1. Properties file changes.
2. Aggregation details / aggregation object add.
3. Other changes from stef