diff --git a/frontend/client/modules/crm/src/views/fields/ico.js b/frontend/client/modules/crm/src/views/fields/ico.js
index c30eaec4cf..fe29a3819d 100644
--- a/frontend/client/modules/crm/src/views/fields/ico.js
+++ b/frontend/client/modules/crm/src/views/fields/ico.js
@@ -25,7 +25,7 @@
* In accordance with Section 7(b) of the GNU General Public License version 3,
* these Appropriate Legal Notices must retain the display of the "EspoCRM" word.
************************************************************************/
-Espo.define('Crm:Views.Fields.Ico', 'Views.Fields.Base', function (Dep) {
+Espo.define('crm:views/fields/ico', 'views/fields/base', function (Dep) {
return Dep.extend({
@@ -36,7 +36,7 @@ Espo.define('Crm:Views.Fields.Ico', 'Views.Fields.Base', function (Dep) {
if (this.params.notRelationship) {
icoTpl = '';
} else {
- icoTpl = '';
+ icoTpl = '';
}
switch (this.model.name) {
diff --git a/frontend/client/modules/crm/src/views/record/row-actions/activities.js b/frontend/client/modules/crm/src/views/record/row-actions/activities.js
index dcc49619b3..d2e2c93038 100644
--- a/frontend/client/modules/crm/src/views/record/row-actions/activities.js
+++ b/frontend/client/modules/crm/src/views/record/row-actions/activities.js
@@ -32,7 +32,7 @@ Espo.define('crm:views/record/row-actions/activities', 'views/record/row-actions
getActionList: function () {
var list = [{
- action: 'viewRelated',
+ action: 'quickView',
label: 'View',
data: {
id: this.model.id
@@ -40,7 +40,7 @@ Espo.define('crm:views/record/row-actions/activities', 'views/record/row-actions
}];
if (this.options.acl.edit) {
list.push({
- action: 'editRelated',
+ action: 'quickEdit',
label: 'Edit',
data: {
id: this.model.id
diff --git a/frontend/client/modules/crm/src/views/record/row-actions/history.js b/frontend/client/modules/crm/src/views/record/row-actions/history.js
index c6c0c39648..599ff3c57d 100644
--- a/frontend/client/modules/crm/src/views/record/row-actions/history.js
+++ b/frontend/client/modules/crm/src/views/record/row-actions/history.js
@@ -26,13 +26,13 @@
* these Appropriate Legal Notices must retain the display of the "EspoCRM" word.
************************************************************************/
-Espo.define('Crm:Views.Record.RowActions.History', 'Views.Record.RowActions.Relationship', function (Dep) {
+Espo.define('crm:views/record/row-actions/history', 'views/record/row-actions/relationship', function (Dep) {
return Dep.extend({
getActionList: function () {
var list = [{
- action: 'viewRelated',
+ action: 'quickView',
label: 'View',
data: {
id: this.model.id
@@ -50,7 +50,7 @@ Espo.define('Crm:Views.Record.RowActions.History', 'Views.Record.RowActions.Rela
if (this.options.acl.edit) {
list = list.concat([
{
- action: 'editRelated',
+ action: 'quickEdit',
label: 'Edit',
data: {
id: this.model.id
diff --git a/frontend/client/modules/crm/src/views/record/row-actions/tasks.js b/frontend/client/modules/crm/src/views/record/row-actions/tasks.js
index db4d6cf144..1c2df400a2 100644
--- a/frontend/client/modules/crm/src/views/record/row-actions/tasks.js
+++ b/frontend/client/modules/crm/src/views/record/row-actions/tasks.js
@@ -32,7 +32,7 @@ Espo.define('crm:views/record/row-actions/tasks', 'views/record/row-actions/rela
getActionList: function () {
var list = [{
- action: 'viewRelated',
+ action: 'quickView',
label: 'View',
data: {
id: this.model.id
@@ -40,7 +40,7 @@ Espo.define('crm:views/record/row-actions/tasks', 'views/record/row-actions/rela
}];
if (this.options.acl.edit) {
list.push({
- action: 'editRelated',
+ action: 'quickEdit',
label: 'Edit',
data: {
id: this.model.id
diff --git a/frontend/client/res/templates/notifications/items/email-received.tpl b/frontend/client/res/templates/notifications/items/email-received.tpl
index 05b6aa403e..8d8a1db800 100644
--- a/frontend/client/res/templates/notifications/items/email-received.tpl
+++ b/frontend/client/res/templates/notifications/items/email-received.tpl
@@ -4,7 +4,7 @@
{{{avatar}}}
-
+
{{{message}}}
diff --git a/frontend/client/res/templates/stream/notes/email-received.tpl b/frontend/client/res/templates/stream/notes/email-received.tpl
index 096161a2f3..d4ddc0b409 100644
--- a/frontend/client/res/templates/stream/notes/email-received.tpl
+++ b/frontend/client/res/templates/stream/notes/email-received.tpl
@@ -13,7 +13,7 @@
{{{avatar}}}
-
+
{{{message}}}
diff --git a/frontend/client/res/templates/stream/notes/email-sent.tpl b/frontend/client/res/templates/stream/notes/email-sent.tpl
index 6921b31c69..26c06462ea 100644
--- a/frontend/client/res/templates/stream/notes/email-sent.tpl
+++ b/frontend/client/res/templates/stream/notes/email-sent.tpl
@@ -13,7 +13,7 @@
{{{avatar}}}
-
+
{{{message}}}
diff --git a/frontend/client/src/views/modal.js b/frontend/client/src/views/modal.js
index 95f5112ded..0198304b01 100644
--- a/frontend/client/src/views/modal.js
+++ b/frontend/client/src/views/modal.js
@@ -156,6 +156,7 @@ Espo.define('views/modal', 'view', function (Dep) {
},
actionCancel: function () {
+ this.trigger('cancel');
this.dialog.close();
},
diff --git a/frontend/client/src/views/modals/detail.js b/frontend/client/src/views/modals/detail.js
index 9895759d4b..db818bac67 100644
--- a/frontend/client/src/views/modals/detail.js
+++ b/frontend/client/src/views/modals/detail.js
@@ -72,7 +72,7 @@ Espo.define('views/modals/detail', 'views/modal', function (Dep) {
label: 'Close'
});
- if (this.model.collection && !this.navigateButtonsDisabled) {
+ if (this.model && this.model.collection && !this.navigateButtonsDisabled) {
this.buttonList.push({
name: 'previous',
html: '',
@@ -87,6 +87,9 @@ Espo.define('views/modals/detail', 'views/modal', function (Dep) {
pullLeft: true,
disabled: true
});
+ this.indexOfRecord = this.model.collection.indexOf(this.model);
+ } else {
+ this.navigateButtonsDisabled = true;
}
this.scope = this.scope || this.options.scope;
@@ -96,34 +99,27 @@ Espo.define('views/modals/detail', 'views/modal', function (Dep) {
this.sourceModel = this.model;
- if (this.model) {
- if (this.model.collection) {
- this.indexOfRecord = this.model.collection.indexOf(this.model);
- }
- }
-
this.getModelFactory().create(this.scope, function (model) {
if (!this.sourceModel) {
this.model = model;
- model.id = this.id;
- model.once('sync', function () {
- this.createRecord(model);
- }, this);
- model.fetch();
- } else {
- var collection = this.model.collection;
+ this.model.id = this.id;
- model = this.model = this.model.clone();
- model.collection = collection;
+ this.listenToOnce(this.model, 'sync', function () {
+ this.createRecordView();
+ }, this);
+ this.model.fetch();
+ } else {
+ this.model = this.sourceModel.clone();
+ this.model.collection = this.sourceModel.collection;
+
+ this.listenTo(this.model, 'change', function () {
+ this.sourceModel.set(this.model.getClonedAttributes());
+ }, this);
this.once('after:render', function () {
- model.fetch();
- });
- this.createRecord(model);
-
- this.listenTo(model, 'change', function () {
- this.sourceModel.set(model.getClonedAttributes());
+ this.model.fetch();
}, this);
+ this.createRecordView();
}
}, this);
},
@@ -156,7 +152,8 @@ Espo.define('views/modals/detail', 'views/modal', function (Dep) {
}
},
- createRecord: function (model, callback) {
+ createRecordView: function (callback) {
+ var model = this.model;
this.header = this.getLanguage().translate(this.scope, 'scopeNames');
if (model.get('name')) {
@@ -193,7 +190,7 @@ Espo.define('views/modals/detail', 'views/modal', function (Dep) {
this.$el.children(0).scrollTop(0);
}.bind(this), 50);
- if (!this.navigateButtonsEnabled) {
+ if (!this.navigateButtonsDisabled) {
this.controlNavigationButtons();
}
},
@@ -241,32 +238,30 @@ Espo.define('views/modals/detail', 'views/modal', function (Dep) {
switchToModelByIndex: function (indexOfRecord) {
if (!this.model.collection) return;
- var model = this.model.collection.at(indexOfRecord);
- if (!model) {
+
+ this.sourceModel = this.model.collection.at(indexOfRecord);
+
+ if (!this.sourceModel) {
throw new Error("Model is not found in collection by index.");
}
this.indexOfRecord = indexOfRecord;
- this.id = model.id;
- this.scope = model.name;
+ this.id = this.sourceModel.id;
+ this.scope = this.sourceModel.name;
- this.model = this.sourceModel = model;
-
- var collection = this.model.collection;
- this.model = this.model.clone();
- this.model.collection = collection;
-
- this.once('after:render', function () {
- this.model.fetch();
- }, this);
+ this.model = this.sourceModel.clone();
+ this.model.collection = this.sourceModel.collection;
this.listenTo(this.model, 'change', function () {
this.sourceModel.set(this.model.getClonedAttributes());
}, this);
+ this.once('after:render', function () {
+ this.model.fetch();
+ }, this);
- this.createRecord(this.model, function () {
+ this.createRecordView(function () {
this.reRender();
}.bind(this));
@@ -322,12 +317,16 @@ Espo.define('views/modals/detail', 'views/modal', function (Dep) {
this.close();
}, this);
- this.listenToOnce(view, 'after:save', function () {
- this.trigger('after:save');
+ this.listenToOnce(view, 'after:save', function (model) {
+ this.trigger('after:save', model);
+ }, this);
+
+ this.listenToOnce(view, 'cancel', function () {
+ this.trigger('after:edit-cancel');
}, this);
view.render();
- }.bind(this));
+ }, this);
},
actionFullForm: function () {
diff --git a/frontend/client/src/views/notifications/list.js b/frontend/client/src/views/notifications/list.js
index 9906b40dc0..a2a64b2beb 100644
--- a/frontend/client/src/views/notifications/list.js
+++ b/frontend/client/src/views/notifications/list.js
@@ -26,28 +26,10 @@
* these Appropriate Legal Notices must retain the display of the "EspoCRM" word.
************************************************************************/
-Espo.define('Views.Notifications.List', 'Views.Record.ListExpanded', function (Dep) {
+Espo.define('views/notifications/list', 'views/record/list-expanded', function (Dep) {
return Dep.extend({
- actionViewRecord: function (data) {
- var id = data.id;
- var scope = data.scope;
-
- var viewName = this.getMetadata().get('clientDefs.' + scope + '.modalViews.detail') || 'Modals.Detail';
-
- this.notify('Loading...');
- this.createView('quickDetail', viewName, {
- scope: scope,
- id: id
- }, function (view) {
- view.once('after:render', function () {
- Espo.Ui.notify(false);
- });
- view.render();
- }.bind(this));
- }
-
});
});
diff --git a/frontend/client/src/views/record/list.js b/frontend/client/src/views/record/list.js
index 900ab62818..c64bfe856e 100644
--- a/frontend/client/src/views/record/list.js
+++ b/frontend/client/src/views/record/list.js
@@ -904,28 +904,41 @@ Espo.define('views/record/list', 'view', function (Dep) {
var id = data.id;
if (!id) return;
- var scope = data.scope || this.scope;
+ var model = null;
+ if (this.collection) {
+ model = this.collection.get(id);
+ }
+ if (!data.scope && !model) {
+ return;
+ }
- var viewName = this.getMetadata().get('clientDefs.' + scope + '.modalViews.detail') || 'Modals.Detail';
+ var scope = data.scope || model.name || this.scope;
+
+ var viewName = this.getMetadata().get('clientDefs.' + scope + '.modalViews.detail') || 'views/modals/detail';
if (!this.quickDetailDisabled) {
this.notify('Loading...');
this.createView('modal', viewName, {
scope: scope,
- model: this.collection.get(id),
+ model: model,
id: id
}, function (view) {
- view.once('after:render', function () {
+ this.listenToOnce(view, 'after:render', function () {
Espo.Ui.notify(false);
});
view.render();
- view.once('after:save', function () {
- var model = this.collection.get(id);
+ this.listenToOnce(view, 'after:save', function (m) {
+ var model = this.collection.get(m.id);
if (model) {
- model.fetch();
+ model.set(m.getClonedAttributes());
+ this.actionQuickView({id: m.id, scope: model.name});
}
}, this);
- }.bind(this));
+
+ this.listenToOnce(view, 'after:edit-cancel', function () {
+ this.actionQuickView({id: view.model.id, scope: view.model.name});
+ }, this);
+ }, this);
} else {
this.getRouter().navigate('#' + scope + '/view/' + id, {trigger: true});
}
@@ -936,16 +949,24 @@ Espo.define('views/record/list', 'view', function (Dep) {
var id = data.id;
if (!id) return;
- var scope = data.scope || this.scope;
+ var model = null;
+ if (this.collection) {
+ model = this.collection.get(id);
+ }
+ if (!data.scope && !model) {
+ return;
+ }
- var viewName = this.getMetadata().get('clientDefs.' + scope + '.modalViews.edit') || 'Modals.Edit';
+ var scope = data.scope || model.name || this.scope;
+
+ var viewName = this.getMetadata().get('clientDefs.' + scope + '.modalViews.edit') || 'views/modals/edit';
if (!this.quickEditDisabled) {
this.notify('Loading...');
this.createView('modal', viewName, {
scope: scope,
id: id,
- model: this.collection.get(id),
+ model: model,
fullFormDisabled: data.noFullForm,
returnUrl: '#' + scope,
returnDispatchParams: {
@@ -962,14 +983,14 @@ Espo.define('views/record/list', 'view', function (Dep) {
view.render();
- this.listenToOnce(view, 'after:save', function () {
- var model = this.collection.get(id);
+ this.listenToOnce(view, 'after:save', function (m) {
+ var model = this.collection.get(m.id);
if (model) {
- model.fetch();
+ model.set(m.getClonedAttributes());
}
}, this);
- }.bind(this));
+ }, this);
} else {
this.getRouter().dispatch(scope, 'edit', {
id: id,
diff --git a/frontend/client/src/views/record/panels/bottom.js b/frontend/client/src/views/record/panels/bottom.js
index 03dff98821..d1b2e0cabb 100644
--- a/frontend/client/src/views/record/panels/bottom.js
+++ b/frontend/client/src/views/record/panels/bottom.js
@@ -127,25 +127,6 @@ Espo.define('views/record/panels/bottom', 'view', function (Dep) {
return this.actionList || [];
},
- actionViewRecord: function (data) {
- var id = data.id;
- var scope = data.scope;
-
- var viewName = this.getMetadata().get('clientDefs.' + scope + '.modalViews.detail') || 'Modals.Detail';
-
- this.notify('Loading...');
- this.createView('quickDetail', viewName, {
- scope: scope,
- id: id,
- model: this.collection.get(id),
- }, function (view) {
- view.once('after:render', function () {
- Espo.Ui.notify(false);
- });
- view.render();
- }.bind(this));
- },
-
getFieldViews: function () {
var fields = {};
diff --git a/frontend/client/src/views/record/panels/relationship.js b/frontend/client/src/views/record/panels/relationship.js
index 5e0b8b9426..c5375d6759 100644
--- a/frontend/client/src/views/record/panels/relationship.js
+++ b/frontend/client/src/views/record/panels/relationship.js
@@ -228,7 +228,7 @@ Espo.define('views/record/panels/relationship', ['views/record/panels/bottom', '
var id = data.id;
var scope = this.collection.get(id).name;
- var viewName = this.getMetadata().get('clientDefs.' + scope + '.modalViews.detail') || 'Modals.Detail';
+ var viewName = this.getMetadata().get('clientDefs.' + scope + '.modalViews.detail') || 'views/modals/detail';
this.notify('Loading...');
this.createView('quickDetail', viewName, {
@@ -250,7 +250,7 @@ Espo.define('views/record/panels/relationship', ['views/record/panels/bottom', '
var id = data.id;
var scope = this.collection.get(id).name;
- var viewName = this.getMetadata().get('clientDefs.' + scope + '.modalViews.edit') || 'Modals.Edit';
+ var viewName = this.getMetadata().get('clientDefs.' + scope + '.modalViews.edit') || 'views/modals/edit';
this.notify('Loading...');
this.createView('quickEdit', viewName, {
diff --git a/frontend/client/src/views/record/row-actions/relationship-edit-and-remove.js b/frontend/client/src/views/record/row-actions/relationship-edit-and-remove.js
index 742a89b056..33aab38158 100644
--- a/frontend/client/src/views/record/row-actions/relationship-edit-and-remove.js
+++ b/frontend/client/src/views/record/row-actions/relationship-edit-and-remove.js
@@ -34,7 +34,7 @@ Espo.define('views/record/row-actions/relationship-edit-and-remove', 'views/reco
if (this.options.acl.edit) {
return [
{
- action: 'editRelated',
+ action: 'quickEdit',
label: 'Edit',
data: {
id: this.model.id
diff --git a/frontend/client/src/views/record/row-actions/relationship-no-remove.js b/frontend/client/src/views/record/row-actions/relationship-no-remove.js
index 5dff2ad0ae..aa4aeec450 100644
--- a/frontend/client/src/views/record/row-actions/relationship-no-remove.js
+++ b/frontend/client/src/views/record/row-actions/relationship-no-remove.js
@@ -32,7 +32,7 @@ Espo.define('views/record/row-actions/relationship-no-remove', 'views/record/row
getActionList: function () {
var list = [{
- action: 'viewRelated',
+ action: 'quickView',
label: 'View',
data: {
id: this.model.id
@@ -41,7 +41,7 @@ Espo.define('views/record/row-actions/relationship-no-remove', 'views/record/row
if (this.options.acl.edit) {
list = list.concat([
{
- action: 'editRelated',
+ action: 'quickEdit',
label: 'Edit',
data: {
id: this.model.id
diff --git a/frontend/client/src/views/record/row-actions/relationship-no-unlink.js b/frontend/client/src/views/record/row-actions/relationship-no-unlink.js
index bc70d195d8..22fea24c76 100644
--- a/frontend/client/src/views/record/row-actions/relationship-no-unlink.js
+++ b/frontend/client/src/views/record/row-actions/relationship-no-unlink.js
@@ -26,13 +26,13 @@
* these Appropriate Legal Notices must retain the display of the "EspoCRM" word.
************************************************************************/
-Espo.define('Views.Record.RowActions.RelationshipNoUnlink', 'Views.Record.RowActions.Relationship', function (Dep) {
+Espo.define('views/record/row-actions/relationship-no-unlink', 'views/record/row-actions/relationship', function (Dep) {
return Dep.extend({
getActionList: function () {
var list = [{
- action: 'viewRelated',
+ action: 'quickView',
label: 'View',
data: {
id: this.model.id
@@ -41,7 +41,7 @@ Espo.define('Views.Record.RowActions.RelationshipNoUnlink', 'Views.Record.RowAct
if (this.options.acl.edit) {
list = list.concat([
{
- action: 'editRelated',
+ action: 'quickEdit',
label: 'Edit',
data: {
id: this.model.id
diff --git a/frontend/client/src/views/record/row-actions/relationship-remove-only.js b/frontend/client/src/views/record/row-actions/relationship-remove-only.js
index a4fa288fb8..3d99460f4f 100644
--- a/frontend/client/src/views/record/row-actions/relationship-remove-only.js
+++ b/frontend/client/src/views/record/row-actions/relationship-remove-only.js
@@ -26,7 +26,7 @@
* these Appropriate Legal Notices must retain the display of the "EspoCRM" word.
************************************************************************/
-Espo.define('Views.Record.RowActions.RelationshipRemoveOnly', 'Views.Record.RowActions.Relationship', function (Dep) {
+Espo.define('views/record/row-actions/relationship-remove-only', 'views/record/row-actions/relationship', function (Dep) {
return Dep.extend({
@@ -42,7 +42,7 @@ Espo.define('Views.Record.RowActions.RelationshipRemoveOnly', 'Views.Record.RowA
}
];
}
- },
+ }
});
diff --git a/frontend/client/src/views/record/row-actions/relationship-unlink-only.js b/frontend/client/src/views/record/row-actions/relationship-unlink-only.js
index 0e46fcfadf..ebfa953b1d 100644
--- a/frontend/client/src/views/record/row-actions/relationship-unlink-only.js
+++ b/frontend/client/src/views/record/row-actions/relationship-unlink-only.js
@@ -26,7 +26,7 @@
* these Appropriate Legal Notices must retain the display of the "EspoCRM" word.
************************************************************************/
-Espo.define('Views.Record.RowActions.RelationshipUnlinkOnly', 'Views.Record.RowActions.Relationship', function (Dep) {
+Espo.define('views/record/row-actions/relationship-unlink-only', 'views/record/row-actions/relationship', function (Dep) {
return Dep.extend({
diff --git a/frontend/client/src/views/record/row-actions/relationship-view-and-edit.js b/frontend/client/src/views/record/row-actions/relationship-view-and-edit.js
index a926a66f71..e064d4620e 100644
--- a/frontend/client/src/views/record/row-actions/relationship-view-and-edit.js
+++ b/frontend/client/src/views/record/row-actions/relationship-view-and-edit.js
@@ -26,13 +26,13 @@
* these Appropriate Legal Notices must retain the display of the "EspoCRM" word.
************************************************************************/
-Espo.define('Views.Record.RowActions.RelationshipViewAndEdit', 'Views.Record.RowActions.Relationship', function (Dep) {
+Espo.define('views/record/row-actions/relationship-view-and-edit', 'views/record/row-actions/relationship', function (Dep) {
return Dep.extend({
getActionList: function () {
var list = [{
- action: 'viewRelated',
+ action: 'quickView',
label: 'View',
data: {
id: this.model.id
@@ -40,7 +40,7 @@ Espo.define('Views.Record.RowActions.RelationshipViewAndEdit', 'Views.Record.Row
}];
if (this.options.acl.edit) {
list.push({
- action: 'editRelated',
+ action: 'quickEdit',
label: 'Edit',
data: {
id: this.model.id
diff --git a/frontend/client/src/views/record/row-actions/relationship-view-and-unlink.js b/frontend/client/src/views/record/row-actions/relationship-view-and-unlink.js
index bf08e9f1fa..525f933dbc 100644
--- a/frontend/client/src/views/record/row-actions/relationship-view-and-unlink.js
+++ b/frontend/client/src/views/record/row-actions/relationship-view-and-unlink.js
@@ -32,7 +32,7 @@ Espo.define('views/record/row-actions/relationship-view-and-unlink', 'views/reco
getActionList: function () {
var list = [{
- action: 'viewRelated',
+ action: 'quickView',
label: 'View',
data: {
id: this.model.id
diff --git a/frontend/client/src/views/record/row-actions/relationship.js b/frontend/client/src/views/record/row-actions/relationship.js
index e709bde9c7..f5a2c14ce5 100644
--- a/frontend/client/src/views/record/row-actions/relationship.js
+++ b/frontend/client/src/views/record/row-actions/relationship.js
@@ -26,13 +26,13 @@
* these Appropriate Legal Notices must retain the display of the "EspoCRM" word.
************************************************************************/
-Espo.define('Views.Record.RowActions.Relationship', 'Views.Record.RowActions.Default', function (Dep) {
+Espo.define('views/record/row-actions/relationship', 'views/record/row-actions/default', function (Dep) {
return Dep.extend({
getActionList: function () {
var list = [{
- action: 'viewRelated',
+ action: 'quickView',
label: 'View',
data: {
id: this.model.id
@@ -41,7 +41,7 @@ Espo.define('Views.Record.RowActions.Relationship', 'Views.Record.RowActions.Def
if (this.options.acl.edit) {
list = list.concat([
{
- action: 'editRelated',
+ action: 'quickEdit',
label: 'Edit',
data: {
id: this.model.id
diff --git a/frontend/client/src/views/record/row-actions/view-and-edit.js b/frontend/client/src/views/record/row-actions/view-and-edit.js
index 91934fc6d9..26f9338f88 100644
--- a/frontend/client/src/views/record/row-actions/view-and-edit.js
+++ b/frontend/client/src/views/record/row-actions/view-and-edit.js
@@ -26,7 +26,7 @@
* these Appropriate Legal Notices must retain the display of the "EspoCRM" word.
************************************************************************/
-Espo.define('Views.Record.RowActions.ViewAndEdit', 'Views.Record.RowActions.Default', function (Dep) {
+Espo.define('views/record/row-actions/view-and-edit', 'views/record/row-actions/default', function (Dep) {
return Dep.extend({
diff --git a/frontend/client/src/views/stream/record/list.js b/frontend/client/src/views/stream/record/list.js
index 1eaa3e8867..0ebc3b8e55 100644
--- a/frontend/client/src/views/stream/record/list.js
+++ b/frontend/client/src/views/stream/record/list.js
@@ -115,26 +115,6 @@ Espo.define('views/stream/record/list', 'views/record/list-expanded', function (
collection.fetchNew({
success: success,
});
- },
-
- actionViewRecord: function (data, e) {
- e.stopPropagation();
-
- var id = data.id;
- var scope = data.scope;
-
- var viewName = this.getMetadata().get('clientDefs.' + scope + '.modalViews.detail') || 'Modals.Detail';
-
- this.notify('Loading...');
- this.createView('modal', viewName, {
- scope: scope,
- id: id
- }, function (view) {
- view.once('after:render', function () {
- Espo.Ui.notify(false);
- });
- view.render();
- }.bind(this));
}
});
diff --git a/frontend/less/espo/custom.less b/frontend/less/espo/custom.less
index 0221c4037c..0197afacff 100644
--- a/frontend/less/espo/custom.less
+++ b/frontend/less/espo/custom.less
@@ -39,6 +39,11 @@ blockquote {
padding: @panel-padding @panel-padding @panel-padding;
}
+.modal-footer .btn.pull-left {
+ margin-left: 0;
+ margin-right: 0;
+}
+
.table thead > tr > th {
border-bottom: 1px solid @table-border-color;
font-weight: normal;