createSearchField() {
return null;
diff --git a/mycollab-mobile/src/main/java/com/mycollab/mobile/module/crm/view/cases/CaseReadFormFieldFactory.java b/mycollab-mobile/src/main/java/com/mycollab/mobile/module/crm/view/cases/CaseReadFormFieldFactory.java
index ab8b0728a9..a6a6806b6b 100644
--- a/mycollab-mobile/src/main/java/com/mycollab/mobile/module/crm/view/cases/CaseReadFormFieldFactory.java
+++ b/mycollab-mobile/src/main/java/com/mycollab/mobile/module/crm/view/cases/CaseReadFormFieldFactory.java
@@ -16,9 +16,15 @@
*/
package com.mycollab.mobile.module.crm.view.cases;
+import com.hp.gagawa.java.elements.A;
+import com.hp.gagawa.java.elements.Div;
+import com.mycollab.html.DivLessFormatter;
+import com.mycollab.module.crm.CrmLinkBuilder;
+import com.mycollab.module.crm.CrmTypeConstants;
import com.mycollab.module.crm.domain.CaseWithBLOBs;
import com.mycollab.module.crm.domain.SimpleCase;
import com.mycollab.module.crm.i18n.OptionI18nEnum.*;
+import com.mycollab.module.crm.ui.CrmAssetsManager;
import com.mycollab.vaadin.ui.AbstractBeanFieldGroupViewFieldFactory;
import com.mycollab.vaadin.ui.GenericBeanForm;
import com.mycollab.vaadin.ui.UIConstants;
@@ -26,6 +32,7 @@
import com.mycollab.vaadin.ui.field.EmailViewField;
import com.mycollab.vaadin.ui.field.I18nFormViewField;
import com.mycollab.vaadin.ui.field.RichTextViewField;
+import com.vaadin.shared.ui.label.ContentMode;
import com.vaadin.ui.Field;
/**
@@ -44,7 +51,13 @@ protected Field> onCreateField(Object propertyId) {
final SimpleCase cases = attachForm.getBean();
if (propertyId.equals("accountid")) {
- return new DefaultViewField(cases.getAccountName());
+ if (cases.getAccountid() != null) {
+ A accountLink = new A(CrmLinkBuilder.generateAccountPreviewLinkFull(cases.getAccountid()))
+ .appendText(cases.getAccountName());
+ Div accountDiv = new Div().appendText(CrmAssetsManager.getAsset(CrmTypeConstants
+ .ACCOUNT).getHtml()).appendChild(DivLessFormatter.EMPTY_SPACE(), accountLink);
+ return new DefaultViewField(accountDiv.write(), ContentMode.HTML);
+ }
} else if (propertyId.equals("email")) {
return new EmailViewField(cases.getEmail());
} else if (propertyId.equals("assignuser")) {
diff --git a/mycollab-mobile/src/main/java/com/mycollab/mobile/module/crm/view/cases/CaseReadViewImpl.java b/mycollab-mobile/src/main/java/com/mycollab/mobile/module/crm/view/cases/CaseReadViewImpl.java
index e75501ef98..8d06f8d290 100644
--- a/mycollab-mobile/src/main/java/com/mycollab/mobile/module/crm/view/cases/CaseReadViewImpl.java
+++ b/mycollab-mobile/src/main/java/com/mycollab/mobile/module/crm/view/cases/CaseReadViewImpl.java
@@ -14,22 +14,6 @@
* You should have received a copy of the GNU General Public License
* along with mycollab-mobile. If not, see .
*/
-/**
- * This file is part of mycollab-mobile.
- *
- * mycollab-mobile is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * mycollab-mobile is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with mycollab-mobile. If not, see .
- */
package com.mycollab.mobile.module.crm.view.cases;
import com.mycollab.common.i18n.GenericI18Enum;
diff --git a/mycollab-mobile/src/main/java/com/mycollab/mobile/module/crm/view/contact/ContactReadFormFieldFactory.java b/mycollab-mobile/src/main/java/com/mycollab/mobile/module/crm/view/contact/ContactReadFormFieldFactory.java
index b9788eaaf2..e71af434e9 100644
--- a/mycollab-mobile/src/main/java/com/mycollab/mobile/module/crm/view/contact/ContactReadFormFieldFactory.java
+++ b/mycollab-mobile/src/main/java/com/mycollab/mobile/module/crm/view/contact/ContactReadFormFieldFactory.java
@@ -16,10 +16,16 @@
*/
package com.mycollab.mobile.module.crm.view.contact;
+import com.hp.gagawa.java.elements.A;
+import com.hp.gagawa.java.elements.Div;
import com.mycollab.common.i18n.GenericI18Enum;
+import com.mycollab.html.DivLessFormatter;
+import com.mycollab.module.crm.CrmLinkBuilder;
+import com.mycollab.module.crm.CrmTypeConstants;
import com.mycollab.module.crm.domain.Contact;
import com.mycollab.module.crm.domain.SimpleContact;
import com.mycollab.module.crm.i18n.OptionI18nEnum.OpportunityLeadSource;
+import com.mycollab.module.crm.ui.CrmAssetsManager;
import com.mycollab.vaadin.UserUIContext;
import com.mycollab.vaadin.ui.AbstractBeanFieldGroupViewFieldFactory;
import com.mycollab.vaadin.ui.GenericBeanForm;
@@ -28,6 +34,7 @@
import com.mycollab.vaadin.ui.field.DefaultViewField;
import com.mycollab.vaadin.ui.field.EmailViewField;
import com.mycollab.vaadin.ui.field.I18nFormViewField;
+import com.vaadin.shared.ui.label.ContentMode;
import com.vaadin.ui.Field;
/**
@@ -44,21 +51,27 @@ class ContactReadFormFieldFactory extends AbstractBeanFieldGroupViewFieldFactory
@Override
protected Field> onCreateField(Object propertyId) {
SimpleContact contact = attachForm.getBean();
- if (propertyId.equals("accountid")) {
- return new DefaultViewField(contact.getAccountName());
- } else if (propertyId.equals("email")) {
+ if (Contact.Field.accountid.equalTo(propertyId)) {
+ if (contact.getAccountid() != null) {
+ A accountLink = new A(CrmLinkBuilder.generateAccountPreviewLinkFull(contact.getAccountid()))
+ .appendText(contact.getAccountName());
+ Div accountDiv = new Div().appendText(CrmAssetsManager.getAsset(CrmTypeConstants
+ .ACCOUNT).getHtml()).appendChild(DivLessFormatter.EMPTY_SPACE(), accountLink);
+ return new DefaultViewField(accountDiv.write(), ContentMode.HTML);
+ }
+ } else if (Contact.Field.email.equalTo(propertyId)) {
return new EmailViewField(contact.getEmail());
- } else if (propertyId.equals("assignuser")) {
+ } else if (Contact.Field.assignuser.equalTo(propertyId)) {
return new DefaultViewField(contact.getAssignUserFullName());
- } else if (propertyId.equals("iscallable")) {
+ } else if (Contact.Field.iscallable.equalTo(propertyId)) {
if (Boolean.FALSE.equals(contact.getIscallable())) {
return new DefaultViewField(UserUIContext.getMessage(GenericI18Enum.BUTTON_NO));
} else {
return new DefaultViewField(UserUIContext.getMessage(GenericI18Enum.BUTTON_YES));
}
- } else if (propertyId.equals("birthday")) {
+ } else if (Contact.Field.birthday.equalTo(propertyId)) {
return new DefaultViewField(UserUIContext.formatDate(contact.getBirthday()));
- } else if (propertyId.equals("firstname")) {
+ } else if (Contact.Field.firstname.equalTo(propertyId)) {
return new DefaultViewField(contact.getFirstname());
} else if (Contact.Field.leadsource.equalTo(propertyId)) {
return new I18nFormViewField(contact.getLeadsource(), OpportunityLeadSource.class).withStyleName(UIConstants.FIELD_NOTE);
diff --git a/mycollab-mobile/src/main/java/com/mycollab/mobile/module/crm/view/contact/ContactReadViewImpl.java b/mycollab-mobile/src/main/java/com/mycollab/mobile/module/crm/view/contact/ContactReadViewImpl.java
index 53f0aa41c7..64cdc5b093 100644
--- a/mycollab-mobile/src/main/java/com/mycollab/mobile/module/crm/view/contact/ContactReadViewImpl.java
+++ b/mycollab-mobile/src/main/java/com/mycollab/mobile/module/crm/view/contact/ContactReadViewImpl.java
@@ -14,53 +14,6 @@
* You should have received a copy of the GNU General Public License
* along with mycollab-mobile. If not, see .
*/
-/**
- * This file is part of mycollab-mobile.
- *
- * mycollab-mobile is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * mycollab-mobile is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with mycollab-mobile. If not, see .
- *
- * This file is part of mycollab-mobile.
- *
- * mycollab-mobile is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * mycollab-mobile is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with mycollab-mobile. If not, see .
- */
-/**
- * This file is part of mycollab-mobile.
- *
- * mycollab-mobile is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * mycollab-mobile is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with mycollab-mobile. If not, see .
- */
package com.mycollab.mobile.module.crm.view.contact;
import com.mycollab.common.i18n.GenericI18Enum;
diff --git a/mycollab-mobile/src/main/java/com/mycollab/mobile/module/crm/view/opportunity/OpportunityReadFormFieldFactory.java b/mycollab-mobile/src/main/java/com/mycollab/mobile/module/crm/view/opportunity/OpportunityReadFormFieldFactory.java
index 04ee0abc57..a5b58db6f3 100644
--- a/mycollab-mobile/src/main/java/com/mycollab/mobile/module/crm/view/opportunity/OpportunityReadFormFieldFactory.java
+++ b/mycollab-mobile/src/main/java/com/mycollab/mobile/module/crm/view/opportunity/OpportunityReadFormFieldFactory.java
@@ -20,17 +20,25 @@
* @author MyCollab Ltd.
* @since 4.1
*/
+
+import com.hp.gagawa.java.elements.A;
+import com.hp.gagawa.java.elements.Div;
+import com.mycollab.html.DivLessFormatter;
+import com.mycollab.module.crm.CrmLinkBuilder;
+import com.mycollab.module.crm.CrmTypeConstants;
import com.mycollab.module.crm.domain.Opportunity;
import com.mycollab.module.crm.domain.SimpleOpportunity;
import com.mycollab.module.crm.i18n.OptionI18nEnum.OpportunityLeadSource;
import com.mycollab.module.crm.i18n.OptionI18nEnum.OpportunitySalesStage;
import com.mycollab.module.crm.i18n.OptionI18nEnum.OpportunityType;
+import com.mycollab.module.crm.ui.CrmAssetsManager;
import com.mycollab.vaadin.UserUIContext;
import com.mycollab.vaadin.ui.AbstractBeanFieldGroupViewFieldFactory;
import com.mycollab.vaadin.ui.GenericBeanForm;
import com.mycollab.vaadin.ui.UIConstants;
import com.mycollab.vaadin.ui.field.DefaultViewField;
import com.mycollab.vaadin.ui.field.I18nFormViewField;
+import com.vaadin.shared.ui.label.ContentMode;
import com.vaadin.ui.Field;
class OpportunityReadFormFieldFactory extends AbstractBeanFieldGroupViewFieldFactory {
@@ -46,9 +54,21 @@ protected Field> onCreateField(Object propertyId) {
final SimpleOpportunity opportunity = attachForm.getBean();
if (propertyId.equals("accountid")) {
- field = new DefaultViewField(opportunity.getAccountName());
+ if (opportunity.getAccountid() != null) {
+ A accountLink = new A(CrmLinkBuilder.generateAccountPreviewLinkFull(opportunity.getAccountid()))
+ .appendText(opportunity.getAccountName());
+ Div accountDiv = new Div().appendText(CrmAssetsManager.getAsset(CrmTypeConstants
+ .ACCOUNT).getHtml()).appendChild(DivLessFormatter.EMPTY_SPACE(), accountLink);
+ field = new DefaultViewField(accountDiv.write(), ContentMode.HTML);
+ }
} else if (propertyId.equals("campaignid")) {
- field = new DefaultViewField(opportunity.getCampaignName());
+ if (opportunity.getCampaignid() != null) {
+ A campaignLink = new A(CrmLinkBuilder.generateCampaignPreviewLinkFull(opportunity.getAccountid()))
+ .appendText(opportunity.getCampaignName());
+ Div campaignDiv = new Div().appendText(CrmAssetsManager.getAsset(CrmTypeConstants
+ .CAMPAIGN).getHtml()).appendChild(DivLessFormatter.EMPTY_SPACE(), campaignLink);
+ field = new DefaultViewField(campaignDiv.write(), ContentMode.HTML);
+ }
} else if (propertyId.equals("assignuser")) {
field = new DefaultViewField(opportunity.getAssignUserFullName());
} else if (propertyId.equals("expectedcloseddate")) {
diff --git a/mycollab-mobile/src/main/java/com/mycollab/mobile/module/crm/view/opportunity/OpportunityReadViewImpl.java b/mycollab-mobile/src/main/java/com/mycollab/mobile/module/crm/view/opportunity/OpportunityReadViewImpl.java
index 030691b3ba..46444f0d07 100644
--- a/mycollab-mobile/src/main/java/com/mycollab/mobile/module/crm/view/opportunity/OpportunityReadViewImpl.java
+++ b/mycollab-mobile/src/main/java/com/mycollab/mobile/module/crm/view/opportunity/OpportunityReadViewImpl.java
@@ -14,22 +14,6 @@
* You should have received a copy of the GNU General Public License
* along with mycollab-mobile. If not, see .
*/
-/**
- * This file is part of mycollab-mobile.
- *
- * mycollab-mobile is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * mycollab-mobile is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with mycollab-mobile. If not, see .
- */
package com.mycollab.mobile.module.crm.view.opportunity;
import com.mycollab.common.i18n.GenericI18Enum;
diff --git a/mycollab-parent-community/pom.xml b/mycollab-parent-community/pom.xml
index 7b20065107..6ed31266f0 100644
--- a/mycollab-parent-community/pom.xml
+++ b/mycollab-parent-community/pom.xml
@@ -6,7 +6,7 @@
mycollab-parent-community
com.mycollab
mycollab-parent-community
- 5.4.9
+ 5.4.10
pom
3.3.0
@@ -17,11 +17,11 @@
1.8
1.7.25
3.1.0
- 7.7.9
+ 7.7.10
9.3.12.v20160915
5.1.42
4.12
- 2.15.2
+ 2.15.3
2.8.6
2.9.9
2.12
@@ -97,7 +97,7 @@
org.apache.commons
commons-lang3
- 3.5
+ 3.6
@@ -273,7 +273,7 @@
com.zaxxer
HikariCP
- 2.6.2
+ 2.6.3
diff --git a/mycollab-reporting/pom.xml b/mycollab-reporting/pom.xml
index 84da67368f..efe18d78fe 100644
--- a/mycollab-reporting/pom.xml
+++ b/mycollab-reporting/pom.xml
@@ -7,7 +7,7 @@
com.mycollab
mycollab-parent-community
- 5.4.9
+ 5.4.10
../mycollab-parent-community/pom.xml
jar
diff --git a/mycollab-scheduler-community/pom.xml b/mycollab-scheduler-community/pom.xml
index 3200ab0879..6c3e8927a5 100644
--- a/mycollab-scheduler-community/pom.xml
+++ b/mycollab-scheduler-community/pom.xml
@@ -7,7 +7,7 @@
com.mycollab
mycollab-parent-community
- 5.4.9
+ 5.4.10
../mycollab-parent-community/pom.xml
jar
diff --git a/mycollab-scheduler/pom.xml b/mycollab-scheduler/pom.xml
index 17c9b4c479..ab5680450c 100644
--- a/mycollab-scheduler/pom.xml
+++ b/mycollab-scheduler/pom.xml
@@ -7,7 +7,7 @@
com.mycollab
mycollab-parent-community
- 5.4.9
+ 5.4.10
../mycollab-parent-community/pom.xml
jar
diff --git a/mycollab-server-runner/pom.xml b/mycollab-server-runner/pom.xml
index 00383aeb8d..08ab97c764 100644
--- a/mycollab-server-runner/pom.xml
+++ b/mycollab-server-runner/pom.xml
@@ -7,7 +7,7 @@
com.mycollab
mycollab-parent-community
- 5.4.9
+ 5.4.10
../mycollab-parent-community/pom.xml
jar
diff --git a/mycollab-services-community/pom.xml b/mycollab-services-community/pom.xml
index 70b066a28f..ebf2eaf663 100644
--- a/mycollab-services-community/pom.xml
+++ b/mycollab-services-community/pom.xml
@@ -7,7 +7,7 @@
com.mycollab
mycollab-parent-community
- 5.4.9
+ 5.4.10
../mycollab-parent-community/pom.xml
jar
diff --git a/mycollab-services/pom.xml b/mycollab-services/pom.xml
index 8d788bedd9..619b1840c9 100644
--- a/mycollab-services/pom.xml
+++ b/mycollab-services/pom.xml
@@ -7,7 +7,7 @@
com.mycollab
mycollab-parent-community
- 5.4.9
+ 5.4.10
../mycollab-parent-community/pom.xml
jar
diff --git a/mycollab-servlet/pom.xml b/mycollab-servlet/pom.xml
index 7b9a3ca217..649702d5a9 100644
--- a/mycollab-servlet/pom.xml
+++ b/mycollab-servlet/pom.xml
@@ -7,7 +7,7 @@
com.mycollab
mycollab-parent-community
- 5.4.9
+ 5.4.10
../mycollab-parent-community/pom.xml
jar
diff --git a/mycollab-test/pom.xml b/mycollab-test/pom.xml
index d1d673ffd5..7dca9bfa7a 100644
--- a/mycollab-test/pom.xml
+++ b/mycollab-test/pom.xml
@@ -7,7 +7,7 @@
com.mycollab
mycollab-parent-community
- 5.4.9
+ 5.4.10
../mycollab-parent-community/pom.xml
jar
@@ -81,7 +81,7 @@
org.mockito
mockito-core
- 2.8.9
+ 2.8.47
diff --git a/mycollab-ui/pom.xml b/mycollab-ui/pom.xml
index 969be43aab..81fa67be0d 100644
--- a/mycollab-ui/pom.xml
+++ b/mycollab-ui/pom.xml
@@ -7,7 +7,7 @@
com.mycollab
mycollab-parent-community
- 5.4.9
+ 5.4.10
../mycollab-parent-community/pom.xml
jar
diff --git a/mycollab-web-community/pom.xml b/mycollab-web-community/pom.xml
index 4ed992cccb..eb9a7b6764 100644
--- a/mycollab-web-community/pom.xml
+++ b/mycollab-web-community/pom.xml
@@ -7,7 +7,7 @@
com.mycollab
mycollab-parent-community
- 5.4.9
+ 5.4.10
../mycollab-parent-community/pom.xml
jar
diff --git a/mycollab-web/pom.xml b/mycollab-web/pom.xml
index fd49812b2e..9eeeb8bcd1 100644
--- a/mycollab-web/pom.xml
+++ b/mycollab-web/pom.xml
@@ -7,7 +7,7 @@
com.mycollab
mycollab-parent-community
- 5.4.9
+ 5.4.10
../mycollab-parent-community/pom.xml
jar
diff --git a/mycollab-web/src/main/java/com/mycollab/vaadin/web/ui/table/AbstractPagedBeanTable.java b/mycollab-web/src/main/java/com/mycollab/vaadin/web/ui/table/AbstractPagedBeanTable.java
index 880b93a792..703071beac 100644
--- a/mycollab-web/src/main/java/com/mycollab/vaadin/web/ui/table/AbstractPagedBeanTable.java
+++ b/mycollab-web/src/main/java/com/mycollab/vaadin/web/ui/table/AbstractPagedBeanTable.java
@@ -124,8 +124,8 @@ public void setDisplayColumns(List viewFields) {
}
private void displayTableColumns() {
- List visibleColumnsCol = new ArrayList<>();
- List columnHeadersCol = new ArrayList<>();
+ Set visibleColumnsCol = new LinkedHashSet<>();
+ Set columnHeadersCol = new LinkedHashSet<>();
if (requiredColumn != null) {
visibleColumnsCol.add(requiredColumn.getField());