RoleEntitlementsEditView.js revision e26e5073e1266868172d72453c97f413fe2fb603
], function($, _, JSONEditor, AbstractView, eventManager, constants, cookieHelper, uiUtils, resourceDelegate, messagesManager, BootstrapDialog, conf, InlineScriptEditor, configDelegate) {
noBaseTemplate: true,
events: {
closeDialog: function(e) {
var _this = this,
dialogTitle = (assignmentName) ? $.t("templates.admin.RoleEntitlementsTemplate.editEntitlement",{entitlementName: assignmentName}) : $.t("templates.admin.RoleEntitlementsTemplate.addEntitlement"),
eventManager.sendEvent(constants.ROUTE_REQUEST, {routeName: "adminEditManagedObjectView", args: this.data.args});
onhide: function() {
buttons: [{
_.bind(function () {
this.addAttribute();
this.setJSONEditors();
this.setAttributeOperationsPopovers();
this.setLinkQualifers();
disable_edit_json: true,
disable_array_reorder: true,
disable_collapse: true,
schema:{},
return editor;
setJSONEditors: function() {
var emptyScript = {
globals: {},
addAttribute: function(e) {
e.preventDefault();
this.setAttributeOperationsPopovers();
deleteAttribute: function(e) {
var editorIndex = this.$el.find(".assignment-attributes .list-group-item").find(e.target).closest(".list-group-item").index();
e.preventDefault();
getAttributes: function() {
var attr = {};
return attr;
var invalid = false,
if(onAssignment) {
if(onUnassignment) {
resourceDelegate.updateResource(this.data.serviceUrl, this.data.role._id, this.data.role, _.bind(function() {
var msg = (this.data.newAssignment) ? "templates.admin.RoleEntitlementsTemplate.assignmentAddSuccess" : "templates.admin.RoleEntitlementsTemplate.assignmentSaveSuccess";
messagesManager.messages.addMessage({"message": $.t(msg,{ assignment: this.data.assignmentName })});
if(callback) {
callback();
invalid = true;
if(invalid) {
messagesManager.messages.addMessage({"type": "error","message": $.t("templates.admin.RoleEntitlementsTemplate.entitlementDuplicationError")});
doSave();
setAttributeOperationsPopovers: function() {
html: true,
var popup = $(this),
e.preventDefault();
if(addMapping) {
return mapping;
messagesManager.messages.addMessage({"message": $.t("templates.admin.RoleEntitlementsTemplate." + msg,{ assignmentName: this.data.assignmentName, mappingName: mappingName })});
addMapping: function(e) {
e.preventDefault();
removeMapping: function(e) {
e.preventDefault();
setLinkQualifers: function() {
persist: false,
return new RoleEntitlementsEditView();