Merge branch 'hotfix/4.0.5'

This commit is contained in:
yuri
2016-04-04 16:37:11 +03:00
24 changed files with 56 additions and 24 deletions
@@ -32,7 +32,8 @@
"view": "views/fields/assigned-user"
},
"teams": {
"type": "linkMultiple"
"type": "linkMultiple",
"view": "views/fields/teams"
}
},
"links": {
@@ -73,7 +73,8 @@
"view": "views/fields/assigned-user"
},
"teams": {
"type": "linkMultiple"
"type": "linkMultiple",
"view": "views/fields/teams"
}
},
"links": {
+14 -2
View File
@@ -320,9 +320,15 @@ class EntityManager
switch ($linkType) {
case 'oneToMany':
if ($this->getMetadata()->get('entityDefs.' . $entityForeign . '.field.' . $linkForeign)) {
if ($this->getMetadata()->get('entityDefs.' . $entityForeign . '.fields.' . $linkForeign)) {
throw new Conflict('Field ['.$entityForeign.'::'.$linkForeign.'] already exists.');
}
if ($this->getMetadata()->get('entityDefs.' . $entityForeign . '.fields.' . $linkForeign . 'Id')) {
throw new Conflict('Field ['.$entityForeign.'::'.$linkForeign.'Id] already exists.');
}
if ($this->getMetadata()->get('entityDefs.' . $entityForeign . '.fields.' . $linkForeign . 'Name')) {
throw new Conflict('Field ['.$entityForeign.'::'.$linkForeign.'Name] already exists.');
}
$dataLeft = array(
'fields' => array(
$link => array(
@@ -361,9 +367,15 @@ class EntityManager
);
break;
case 'manyToOne':
if ($this->getMetadata()->get('entityDefs.' . $entity . '.field.' . $link)) {
if ($this->getMetadata()->get('entityDefs.' . $entity . '.fields.' . $link)) {
throw new Conflict('Field ['.$entity.'::'.$link.'] already exists.');
}
if ($this->getMetadata()->get('entityDefs.' . $entity . '.fields.' . $link . 'Id')) {
throw new Conflict('Field ['.$entity.'::'.$link.'Id] already exists.');
}
if ($this->getMetadata()->get('entityDefs.' . $entity . '.fields.' . $link . 'Name')) {
throw new Conflict('Field ['.$entity.'::'.$link.'Name] already exists.');
}
$dataLeft = array(
'fields' => array(
$link => array(
@@ -140,7 +140,8 @@
"view": "views/fields/assigned-user"
},
"teams": {
"type": "linkMultiple"
"type": "linkMultiple",
"view": "views/fields/teams"
},
"targetLists": {
"type": "linkMultiple",
@@ -112,7 +112,8 @@
"view": "views/fields/assigned-user"
},
"teams": {
"type": "linkMultiple"
"type": "linkMultiple",
"view": "views/fields/teams"
}
},
"links": {
@@ -47,7 +47,8 @@
"view": "views/fields/assigned-user"
},
"teams": {
"type": "linkMultiple"
"type": "linkMultiple",
"view": "views/fields/teams"
},
"targetLists": {
"type": "linkMultiple",
@@ -76,7 +76,8 @@
"view": "views/fields/assigned-user"
},
"teams": {
"type": "linkMultiple"
"type": "linkMultiple",
"view": "views/fields/teams"
}
},
"links": {
@@ -156,7 +156,8 @@
"view": "views/fields/assigned-user"
},
"teams": {
"type": "linkMultiple"
"type": "linkMultiple",
"view": "views/fields/teams"
},
"targetLists": {
"type": "linkMultiple",
@@ -64,7 +64,8 @@
"view": "views/fields/assigned-user"
},
"teams": {
"type": "linkMultiple"
"type": "linkMultiple",
"view": "views/fields/teams"
},
"accounts": {
"type": "linkMultiple",
@@ -25,7 +25,8 @@
"readOnly": true
},
"teams": {
"type": "linkMultiple"
"type": "linkMultiple",
"view": "views/fields/teams"
},
"parent": {
"type": "link"
@@ -55,7 +55,8 @@
"views/fields/assigned-user"
},
"teams": {
"type": "linkMultiple"
"type": "linkMultiple",
"view": "views/fields/teams"
},
"categories": {
"type": "linkMultiple",
@@ -29,7 +29,8 @@
"required": true
},
"teams": {
"type": "linkMultiple"
"type": "linkMultiple",
"view": "views/fields/teams"
},
"parent": {
"type": "link"
@@ -115,7 +115,8 @@
"disabled": true
},
"teams": {
"type": "linkMultiple"
"type": "linkMultiple",
"view": "views/fields/teams"
},
"campaign": {
"type": "link",
@@ -107,7 +107,8 @@
"view": "views/fields/assigned-user"
},
"teams": {
"type": "linkMultiple"
"type": "linkMultiple",
"view": "views/fields/teams"
}
},
"links": {
@@ -94,7 +94,8 @@
"view": "views/fields/assigned-user"
},
"teams": {
"type": "linkMultiple"
"type": "linkMultiple",
"view": "views/fields/teams"
}
},
"links": {
@@ -86,7 +86,8 @@
"view": "views/fields/assigned-user"
},
"teams": {
"type": "linkMultiple"
"type": "linkMultiple",
"view": "views/fields/teams"
}
},
"links": {
@@ -36,7 +36,8 @@
"view": "views/fields/assigned-user"
},
"teams": {
"type": "linkMultiple"
"type": "linkMultiple",
"view": "views/fields/teams"
},
"campaigns": {
"type": "link"
@@ -85,7 +85,8 @@
"view": "views/fields/assigned-user"
},
"teams": {
"type": "linkMultiple"
"type": "linkMultiple",
"view": "views/fields/teams"
},
"attachments": {
"type": "attachmentMultiple",
@@ -320,6 +320,7 @@ class EmailAddress extends \Espo\Core\ORM\Repositories\RDB
".$pdo->quote($emailAddress->id).",
".$pdo->quote((int)($address === $primary))."
)
ON DUPLICATE KEY UPDATE deleted = 0, `primary` = ".$pdo->quote((int)($address === $primary))."
";
$sth = $pdo->prepare($query);
$sth->execute();
@@ -233,6 +233,7 @@ class PhoneNumber extends \Espo\Core\ORM\Repositories\RDB
".$pdo->quote($phoneNumber->id).",
".$pdo->quote((int)($number === $primary))."
)
ON DUPLICATE KEY UPDATE deleted = 0, `primary` = ".$pdo->quote((int)($number === $primary))."
";
$sth = $pdo->prepare($query);
$sth->execute();
@@ -44,6 +44,6 @@
"messages": {
"entityCreated": "Entity has been created",
"linkAlreadyExists": "Link name conflict.",
"linkConflict": "Link with the same name already exists."
"linkConflict": "Name conflict: link or field with the same name already exists."
}
}
@@ -206,7 +206,8 @@
"notStorable": true
},
"teams": {
"type": "linkMultiple"
"type": "linkMultiple",
"view": "views/fields/teams"
},
"users": {
"type": "linkMultiple",
@@ -338,7 +338,7 @@ Espo.define('views/admin/link-manager/modals/edit', ['views/modal', 'views/admin
if (view) {
view.disabled = true;
}
this.$el.find('.cell-' + name).css('visibility', 'hidden');
this.$el.find('.cell[data-name=' + name+']').css('visibility', 'hidden');
},
showField: function (name) {
@@ -346,7 +346,7 @@ Espo.define('views/admin/link-manager/modals/edit', ['views/modal', 'views/admin
if (view) {
view.disabled = false;
}
this.$el.find('.cell-' + name).css('visibility', 'visible');
this.$el.find('.cell[data-name=' + name+']').css('visibility', 'visible');
},
handleLinkTypeChange: function () {
+1 -1
View File
@@ -36,7 +36,7 @@ Espo.define('views/fields/user-with-avatar', 'views/fields/user', function (Dep)
data: function () {
var o = _.extend({}, Dep.prototype.data.call(this));
if (this.mode == 'detail' || this.mode == 'list') {
if (this.mode == 'detail') {
o.avatar = this.getAvatarHtml();
}
return o;