use of cz.metacentrum.perun.webgui.json.JsonCallbackEvents in project perun by CESNET.
the class AddAdmin method addSecurityTeamAdminGroup.
/**
* Attempts to add a new admin group to SecurityTeam, it first tests the values and then submits them.
*
* @param securityTeam where we want to add admin
* @param group Group to be admin
*/
public void addSecurityTeamAdminGroup(final SecurityTeam securityTeam, final Group group) {
// store group id to user id to used unified check method
this.userId = (group != null) ? group.getId() : 0;
this.entityId = (securityTeam != null) ? securityTeam.getId() : 0;
this.entity = PerunEntity.SECURITY_TEAM;
// test arguments
if (!this.testAdding()) {
return;
}
// new events
JsonCallbackEvents newEvents = new JsonCallbackEvents() {
public void onError(PerunError error) {
session.getUiElements().setLogErrorText("Adding group " + group.getShortName() + " as manager failed.");
// custom events
events.onError(error);
}
public void onFinished(JavaScriptObject jso) {
session.getUiElements().setLogSuccessText("Group " + group.getShortName() + " added as manager of " + securityTeam.getName());
events.onFinished(jso);
}
public void onLoadingStart() {
events.onLoadingStart();
}
};
// sending data
JsonPostClient jspc = new JsonPostClient(newEvents);
jspc.sendData(SECURITY_JSON_URL, prepareJSONObjectForGroup());
}
use of cz.metacentrum.perun.webgui.json.JsonCallbackEvents in project perun by CESNET.
the class AddAdmin method addGroupAdminGroup.
/**
* Attempts to add a new admin group to Group, it first tests the values and then submits them.
*
* @param groupToAddAdminTo where we want to add admin
* @param group Group to be admin
*/
public void addGroupAdminGroup(final Group groupToAddAdminTo, final Group group) {
// store group id to user id to used unified check method
this.userId = (group != null) ? group.getId() : 0;
this.entityId = (groupToAddAdminTo != null) ? groupToAddAdminTo.getId() : 0;
this.entity = PerunEntity.GROUP;
// test arguments
if (!this.testAdding()) {
return;
}
// new events
JsonCallbackEvents newEvents = new JsonCallbackEvents() {
public void onError(PerunError error) {
session.getUiElements().setLogErrorText("Adding group " + group.getShortName() + " as manager failed.");
// custom events
events.onError(error);
}
public void onFinished(JavaScriptObject jso) {
session.getUiElements().setLogSuccessText("Group " + group.getShortName() + " added as manager of " + groupToAddAdminTo.getName());
events.onFinished(jso);
}
public void onLoadingStart() {
events.onLoadingStart();
}
};
// sending data
JsonPostClient jspc = new JsonPostClient(newEvents);
jspc.sendData(GROUP_JSON_URL, prepareJSONObjectForGroup());
}
use of cz.metacentrum.perun.webgui.json.JsonCallbackEvents in project perun by CESNET.
the class AddAdmin method addFacilityAdminGroup.
/**
* Attempts to add a new admin group to Facility, it first tests the values and then submits them.
*
* @param facility where we want to add admin
* @param group Group to be admin
*/
public void addFacilityAdminGroup(final Facility facility, final Group group) {
// store group id to user id to used unified check method
this.userId = (group != null) ? group.getId() : 0;
this.entityId = (facility != null) ? facility.getId() : 0;
this.entity = PerunEntity.FACILITY;
// test arguments
if (!this.testAdding()) {
return;
}
// new events
JsonCallbackEvents newEvents = new JsonCallbackEvents() {
public void onError(PerunError error) {
session.getUiElements().setLogErrorText("Adding group " + group.getShortName() + " as manager failed.");
// custom events
events.onError(error);
}
public void onFinished(JavaScriptObject jso) {
session.getUiElements().setLogSuccessText("Group " + group.getShortName() + " added as manager of " + facility.getName());
events.onFinished(jso);
}
public void onLoadingStart() {
events.onLoadingStart();
}
};
// sending data
JsonPostClient jspc = new JsonPostClient(newEvents);
jspc.sendData(FACILITY_JSON_URL, prepareJSONObjectForGroup());
}
use of cz.metacentrum.perun.webgui.json.JsonCallbackEvents in project perun by CESNET.
the class CreateAuthorship method createAuthorship.
/**
* Attempts to create a new Authorship, it first tests the values and then submits them.
*
* @param pubId ID of publication
* @param userId ID of user
*/
public void createAuthorship(final int pubId, final int userId) {
this.userId = userId;
this.pubId = pubId;
// test arguments
if (!this.testCreating()) {
return;
}
// json object
JSONObject jsonQuery = prepareJSONObject();
// local events
JsonCallbackEvents newEvents = new JsonCallbackEvents() {
public void onError(PerunError error) {
session.getUiElements().setLogErrorText("Adding Author: " + userId + " for publication: " + pubId + " failed.");
events.onError(error);
}
public void onFinished(JavaScriptObject jso) {
session.getUiElements().setLogSuccessText("Author: " + userId + " successfully added for publication: " + pubId);
events.onFinished(jso);
}
public void onLoadingStart() {
events.onLoadingStart();
}
};
// create request
JsonPostClient request = new JsonPostClient(newEvents);
request.sendData(JSON_URL, jsonQuery);
}
use of cz.metacentrum.perun.webgui.json.JsonCallbackEvents in project perun by CESNET.
the class DeleteAuthorship method deleteAuthorship.
/**
* Attempts to delete Authorship, it first tests the values and then submits them.
*
* @param publicationId
* @param userId
*/
public void deleteAuthorship(final int publicationId, final int userId) {
this.publicationId = publicationId;
this.userId = userId;
// test arguments
if (!this.testDeleting()) {
return;
}
// json object
JSONObject jsonQuery = prepareJSONObject();
// local events
JsonCallbackEvents newEvents = new JsonCallbackEvents() {
public void onError(PerunError error) {
session.getUiElements().setLogErrorText("Removing author " + userId + " from publication: " + publicationId + " failed.");
events.onError(error);
}
public void onFinished(JavaScriptObject jso) {
session.getUiElements().setLogSuccessText("Author " + userId + " removed from publication: " + publicationId);
events.onFinished(jso);
}
public void onLoadingStart() {
events.onLoadingStart();
}
};
// create request
JsonPostClient request = new JsonPostClient(newEvents);
request.sendData(JSON_URL, jsonQuery);
}
Aggregations